Jump to content
Nokioteca Forum

Winfile 1.05.2 By Memory! Filemanager Con Tantissime Funzioni


memoryn70
 Share

Recommended Posts

Multi-Bitmap (MBM) Plugin 1.00beta

Ecco qui una piccola revisione del plugin...

INSTALLAZIONE

Copiare il file mbm_mod.py nella cartella di winfile

C:\\System\\Apps\\Winfile\\ o E:\\System\\Apps\\Winfile\\

Copiare il file mbma.py in

C:\\System\\Apps\\Winfile\\Plugins\\FileOpen\\ o E:\\System\\Apps\\Winfile\\Plugins\\FileOpen\\

Per il momento per visualizzare un file mbm con il plugin la sua estensione deve essere mbma e non mbm.

(Questo "bug" non è causato dal plugin)

Changelog da 0.9beta a 1.0beta:

Plugin meno pesante e più veloce:

L'immagine numero ... viene estratta solo quando necessario

Rimossa doppie importazioni moduli nel file mbm_mod.py

Aggiunto il dettaglio del file mbm (Numero immagini Dimensione data/ora)

Cambiata esensione (semplice rinominazione):

nella versione precedente:

image001.png

image002.png

nella versione attuale:

image001.bmp

image002.bmp

MBM_Plugin.rar

Modificato da Snake87
Link to comment
Condividi su altri siti

Molto bene! Ho già visto la discussione qualche giorno fa ma ho avuto molto da fare.

Bene per quanto riguarda i bug di WinFile ne ho già risolti alcuni...per il bug dei plugin risolvo in WinFile...

P.S: per vedere le immagini, usa mini_viewer() (praticamente è l'accesso diretto alla classe del visualizzatore)

Poi devo risolvere il problema della directory corrente (es scorrimento foto in zip) ma non ci vuole molto

Bravo comunque ;)

P.S2: avevo visto alcuni bug non gravi (tipo continua a ridisegnare tutto mentre sta impostando la lista...) ma devo ancora vedere la nuova versione! Più tardi poi ti dico tutto :thumbs:

EDIT: ho in mente di aggiungere una cartella fatta apposta per caricare le librerie aggiuntive (es: mbm_mod.py). Tipo Plugins\Modules cosi è tutto più ordinato e non va in conflitto con niente...

Ah piccola cosa...plugins.stop_module(1,s.restore) metti 0 anziché 1 (non deve riscansionare i file, tanto non modifica niente)

EDIT2: , ntpath

path=ntpath

del ntpath

Questa roba puoi tranquillamente cancellarla...usa os.path ;) (come vedo hai fatto)

Oltretutto poi path lo vai pure a sovrascrivere qui path=os.path.join(u"D:\\MBM\\",file) ;)

Modificato da memoryn70
Link to comment
Condividi su altri siti

Ciao memory, innanzitutto grazie per le segnalazioni, ho corretto i bug che hai scritto.

Per il punto del visualizzatore immagini. Puoi postare il source della classe mini_viewer() o come accedere ai suoi metodi/funzioni (i loro nomi)?

EDIT: Problema metodi/funzioni mini_viewer() risolto, ho usato il debugger che scirve sul txt e scritto print dir(WinFile.mini_viewer) per visualizzarne l'elenco (chissa perchè non ci ho pensato subito...:lol:)

Il testing l'ho quasi finito, fine settimana prossima posto tutta la lista. (Tra bug e suggerimenti vari è abbastanza lunga)

PS: Più avanti, appena risolti i bug del plugin mbm ne rilascerò uno per i file aif, già fatto e funzionante (praticamente è quasi uguale al plugin mbm, cambia la classe della lettura file e praticamente niente altro)

Ah, intanto ecco la nuova beta, con molti cambiamenti:

Multi-Bitmap Plugin by Snake87 v1.0beta2

Visualizza le immagini contenute nei file mbm (Multi-Bitmap)

INSTALLAZIONE

Copiare il file mbma.py in

C:\\System\\Apps\\Winfile\\Plugins\\FileOpen\\

o

E:\\System\\Apps\\Winfile\\Plugins\\FileOpen\\

CONSIGLIO:

È meglio (durante l'apertura dei file mbm) tenere la visualizzazione nel normale senso di winfile, altrimenti il calo di velocità è dell'ordine del 500% +o-.

NOTE:

Se avevate installato una versione vecchia (0.9beta o 1.0beta), una volta installata questa versione potete rimuovere il file

C:\\System\\Apps\\Winfile\\mbm_mod.py

o

E:\\System\\Apps\\Winfile\\mbm_mod.py

Per il momento per visualizzare un file mbm con il plugin la sua estensione deve essere mbma e non mbm.

-----------------------------------------

CHANGELOG

-----------------------------------------

Changelog da 1.0beta a 1.0beta2:

- Risolti alcuni bug

- Sostituito il messaggio iniziale lettura file mbm in corso con una progressbar che indica la percentuale di caricamento del file mbm

- Ottimizzato leggermente il codice

* Il codice del file mbm_mod è stato integrato nel plugin quindi ora non è necessario installare il file mbm_mod.py ma solo il file mbma.py

* Rimossa doppia importazione del modulo os (una era nel file mbm_mod.py e l'altra nel file mbma.py)

- Aggiunte funzioni

* Estrai -> File Singolo

* Estrai -> Tutti

* Tipo compressione:

Ovviamente è riferito all'estrazione, è possibile scegliere se salvare i file in formato png o jpg, il formato di salvataggio viene salvato in un file dat.

Come impostazione di default (al primo avvio) l'immagine viene salvata in png.

- Associati i seguenti tasti:

* Tasto 2 -> Estrai -> File Singolo

* Tasto 8 -> Estrai -> Tutti

* Tasto 6 -> Tipo compressione

* Tasto 5 -> Dettagli Multi-Bitmap

Changelog da 0.9beta a 1.0beta:

- Plugin meno pesante e più veloce:

* L'immagine numero ... viene estratta solo quando necessario

* Rimossa doppie importazioni moduli nel file mbm_mod.py

- Aggiunto il dettaglio del file mbm (Numero immagini Dimensione data/ora)

- Cambiata estensione dei file temporanei (semplice rinominazione da png a bmp)

Versione 0.9beta

- Prima versione del plugin

BUG CONOSCIUTI:

- Se si apre una immagine all'interno del file mbm, e poi si preme 3(successivo) o 1(precedente) e nella cartella dove è situato il file mbm è presente una immagine, viene visualizzata quella immagine, altrimenti, se non ci sono immagini non succede niente.

- Continuando ad aprire e chiudere una immagine, si perdono 70 KB di RAM ogni volta ("Bug" non causato dal plugin)

MBM_PLUGIN.zip

Modificato da Snake87
Link to comment
Condividi su altri siti

Complimenti Snake, non ho ancora testato il plugin, ma lo farò presto (anche se sembra sia a un buon punto, e con giusto pochi problemini)! :)

Riguardo il mio plugin sono riuscito a completare la parte riguardante la lettura del titolo di una pagina web (ho testato molto e funziona correttemente, ho fatto in modo che segnali a schermo in caso di mancaza di questa informazione). Inutile per ora postare questo plugin praticamente inutile.

Per renderlo più appetitoso avevo pensato alla semplice lettura del testo contenuto nella pagina (saltando liste[anche se le liste non mi sembrano difficili da creare, vedremo], immagini, formattazioni varie, div, p, ecc..), ma sto ancora pensando al modo migliore.*

Inoltre voi avreste consigli da darmi per avere altre informazioni riguardo un file HTML? Ci ho pensato a lungo, ma a quanto pare non rimane molto..

*In poche parole ho pensato che si tratta di sostituire i <br> con un semplice \n ed eliminare tutti i caratteri compresi tra < e > (naturalmente includendo anche due simboli)...se avete qualcosa da suggerirmi ben venga, io intanto ci sto pensando da un po'! Grazie!

Link to comment
Condividi su altri siti

Ciao Memory per quanto riguarda l'uso del mini_viewer ho provato, e ci sono riuscito in parte creando una classe derivata da mini_viewer() [class mod_viewer(mini_viewer):]

quello che non so come fare è:

quando cambio immagine ad upgradare tutto (nome, informazioni) ecc...

che metodo devo usare?

PS: io ho fatto cosí:

self.file=NomeNuovaImmagine

self.carica_immagine()

Per maggiore chiarezza allego il file py

Per Giuppe92:

Grazie..

C'è anche il tag <br/> scritto in questo modo che porta a capo il testo...

Potresti aggiungere la lettura delle descrizioni tipo:

<meta name="description" content="La piu grande risorsa italiana dedicata ai cellulari Nokia. Temi, trucchi, programmi, giochi, tutorial, aggiornamenti firmware e molto altro sul mondo Symbian">

Le keywords:

<meta name="keywords" content="temi, trucchi, firmware, programmi, giochi, N95, N73, N80, N96, N70, E65, java, memoria, certificato, forum, GPS, symbian, tutorial">

Tipo contenuto:

<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />

Linguaggio pagina:

<meta http-equiv="content-language" content="IT">

Data creazione:

<meta name="creation_Date" content="01/12/2005">

che però non sono presenti in tutte le pagine web.

Poi non bisogna contare ovviamente (per scrivere il testo come dicevi) il testo contenuto in alcuni tag tipo

<style>

<script>

ed ovviamente il testo commentato <!-- -->

Per adesso non mi viene in mente altro.

mbma.zip

Modificato da Snake87
Link to comment
Condividi su altri siti

Per Giuppe92:

Grazie..

C'è anche il tag <br/> scritto in questo modo che porta a capo il testo...

Potresti aggiungere la lettura delle descrizioni tipo:

<meta name="description" content="La piu grande risorsa italiana dedicata ai cellulari Nokia. Temi, trucchi, programmi, giochi, tutorial, aggiornamenti firmware e molto altro sul mondo Symbian">

Le keywords:

<meta name="keywords" content="temi, trucchi, firmware, programmi, giochi, N95, N73, N80, N96, N70, E65, java, memoria, certificato, forum, GPS, symbian, tutorial">

Tipo contenuto:

<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />

Linguaggio pagina:

<meta http-equiv="content-language" content="IT">

Data creazione:

<meta name="creation_Date" content="01/12/2005">

che però non sono presenti in tutte le pagine web.

Poi non bisogna contare ovviamente (per scrivere il testo come dicevi) il testo contenuto in alcuni tag tipo

<style>

<script>

ed ovviamente il testo commentato <!-- -->

Per adesso non mi viene in mente altro.

Ok le prime informazioni non dovrebbero esserci grandi problemi nel leggerle...anche nel caso in cui non ci fossero! :D

Ovviamente il tag <br> può essere scritto in varie forse come dicevi!

Avevo dimentiucato della presenza però di quei tag che vanno a introdurre foglio di stile, script e commento...intanto adesso penso a leggere quelle informazioni, così posto qualcosa, poi continuiamo con la lettura della pagina intera.

Link to comment
Condividi su altri siti

Ciao!

Ottimo lavoro Snake e Giuppe :mumble:

Sono contento che vi cimentate a fare qualche plugin...

Beh allora per le immagini in WinFile 1.04 ho messo la possibilità di passare alla classe l'argomento directory, cosi poi prima estrai tutte le immagini in una directory e poi si potranno scorrere normalmente :) Ora comunque guardo il tuo lavoro...

Quindi direi che puoi aspettare a fare la versione finale (che sarà contenuta nella release ufficiale)

EDIT: ah sto mettendo a posto il plugin per i sis....

EDIT 2: bene ho visto come volevi sistemare...uhm l'idea è buona anche perché ho visto che hai abbandonato la scompressione totale all'inizio. Quindi ora ti posto le funzioni next e previous (nota che sono della nuova versione,dove ho implementato il giro a fine immagini (tipo 10/10 torna a 1 se si preme avanti), ma vanno bene anche sulla vecchia). Come puoi vedere era difficile immaginarsi come funzionavano hehe

Ah nota che se vuoi selezionare l'elemento, automaticamente la classe al callback passa: 1)Stato ui precedente 2)Nome file Quindi aggiungi a restore (in fondo)... anche:

if to_elem: ListBox.select_item(to_elem)

e rimuovi questo ( ripristina già lui, nello stato ui ci sono: menu, tasti, etichette ecc...)

	ListBox.cbind()
s.keys()

	def next(s):
	if not s.images_in_dir: return
	if s.index>=len(s.images_in_dir)-1:
		s.index=0
	else:
		s.index+=1
	s.caricato=0
	s.file=s.images_in_dir[s.index]
	s.name=os.path.split(s.file)[1]
	e32.ao_sleep(0,s.carica_immagine)
	s.create_image()
	s.redraw_img((),0) #Mi hai fatto venire in mente che quelle parentesi non servono più, dato che il canvas ora in WinFile è gestito solo nella classe ui;)

def previous(s):
	if not s.images_in_dir: return
	if s.index==0:
		s.index=len(s.images_in_dir)-1
	else:
		s.index-=1
	s.caricato=0
	s.file=s.images_in_dir[s.index]
	s.name=os.path.split(s.file)[1]
	e32.ao_sleep(0,s.carica_immagine)
	s.create_image()
	s.redraw_img((),0)

EDIT 3: trovo molto più pulito che hai aggiunto direttamente la classe mbm_file :) Ottimo...

EDIT 4: hai citato il landscape...per informazione puoi usare ui.landscape (0->Normale, 1/2 land)

Modificato da memoryn70
Link to comment
Condividi su altri siti

Scusa memory, nei vostri codici trovo sempre quando si tratta di fare il redraw:

if len(ListBox.elements): ListBox.select_item(0)
else: ListBox.redrawlist()

Qual è l'utilità? Il redraw funziona anche senza condizione!

Cmq il plugin è quasi pronto, volevo solamente aggiungere la visualizzazione in un pop_up del testo in caso di click, infatti per esempio la descrption è spesso lunga così come i jeyword. Penso di riuscire a cavarmela da solo! ;)

Link to comment
Condividi su altri siti

Ciao!

Ottimo lavoro Snake e Giuppe ;)

Sono contento che vi cimentate a fare qualche plugin...

Beh allora per le immagini in WinFile 1.04 ho messo la possibilità di passare alla classe l'argomento directory, cosi poi prima estrai tutte le immagini in una directory e poi si potranno scorrere normalmente ;) Ora comunque guardo il tuo lavoro...

Quindi direi che puoi aspettare a fare la versione finale (che sarà contenuta nella release ufficiale)

EDIT: ah sto mettendo a posto il plugin per i sis....

EDIT 2: bene ho visto come volevi sistemare...uhm l'idea è buona anche perché ho visto che hai abbandonato la scompressione totale all'inizio. Quindi ora ti posto le funzioni next e previous (nota che sono della nuova versione,dove ho implementato il giro a fine immagini (tipo 10/10 torna a 1 se si preme avanti), ma vanno bene anche sulla vecchia). Come puoi vedere era difficile immaginarsi come funzionavano hehe

Ah nota che se vuoi selezionare l'elemento, automaticamente la classe al callback passa: 1)Stato ui precedente 2)Nome file Quindi aggiungi a restore (in fondo)... anche:

if to_elem: ListBox.select_item(to_elem)

e rimuovi questo ( ripristina già lui, nello stato ui ci sono: menu, tasti, etichette ecc...)

	ListBox.cbind()
s.keys()

	def next(s):
	if not s.images_in_dir: return
	if s.index>=len(s.images_in_dir)-1:
		s.index=0
	else:
		s.index+=1
	s.caricato=0
	s.file=s.images_in_dir[s.index]
	s.name=os.path.split(s.file)[1]
	e32.ao_sleep(0,s.carica_immagine)
	s.create_image()
	s.redraw_img((),0) #Mi hai fatto venire in mente che quelle parentesi non servono più, dato che il canvas ora in WinFile è gestito solo nella classe ui;)

def previous(s):
	if not s.images_in_dir: return
	if s.index==0:
		s.index=len(s.images_in_dir)-1
	else:
		s.index-=1
	s.caricato=0
	s.file=s.images_in_dir[s.index]
	s.name=os.path.split(s.file)[1]
	e32.ao_sleep(0,s.carica_immagine)
	s.create_image()
	s.redraw_img((),0)

EDIT 3: trovo molto più pulito che hai aggiunto direttamente la classe mbm_file ;) Ottimo...

EDIT 4: hai citato il landscape...per informazione puoi usare ui.landscape (0->Normale, 1/2 land)

Allora:

Innanzitutto complimenti per l'ottimo anzi di più...:) lavoro che stai svolgendo, ed anche per il plugin sis, che secondo me è molto utile.

Per quanto riguarda i suggerimenti, la sostituzione di questo

ListBox.cbind()
s.keys()

con questo:

if to_elem: ListBox.select_item(to_elem)

l'ho sostituito con:

ListBox.select_item(ListBox.current())

altrimenti io apro image001 vado avanti fino image020 e se esco da image viewer mi ritorna la listbox su image001 e non su image020

Un'altra cosa inserendo questo (ovviamente opporunamente modificato) non si caricavano le info e il nome immagine:

s.caricato=0
s.file=s.images_in_dir[s.index]
s.name=os.path.split(s.file)[1]
e32.ao_sleep(0,s.carica_immagine)
s.create_image()
s.redraw_img((),0)

Per sistemare ho dovuto spostare la posizione di s.caricato in questo punto:

s.file=s.images_in_dir[s.index]
s.name=os.path.split(s.file)[1]
e32.ao_sleep(0,s.carica_immagine)
s.caricato=0
s.create_image()
s.redraw_img((),0)

Presumo perche in s.carica_immagine ci sia s.caricato=1

C'è un piccola problema con landscape:

#bakland=ui.landscape
#ui.landscape=0
#ui.landscape=bakland

per vederlo basta togliere i commenti a queste linee all'interno del file py ed aprire un file mbma (con lo schermo in landscape)

Se ho lo schermo in landscape ed apro il plugin l'immagine si gira in senso normale, ma non è altro che l'immagine in landscape girata, quindi straborda a destra e in basso non viene refreshata.

mbma.zip

Modificato da Snake87
Link to comment
Condividi su altri siti

Posterò il mio plugin a brevissimo, penso domani pomeriggio, con la calma. Sembra funzionare correttamente, anche se cmq dei test da parte vostra possono aiutarmi!Non ho ancora integrato per ovvi motivi la lettura del testo della pagina.

Legge correttamente:

- Titolo;

- Descrizione;

- Keywords;

- Data;

Ho fatto in modo che se qualcuno di questi non fosse presente aggiunge nella lista che la funzione get mi ritorna la string "Error ecc.." invece del'informazione corretta. In questo modo però non compare mai il messaggio di nodate, come si può fare per farlo apparire? Inoltre mi sapreste rispondere alla precedente domanda (nella pagina precedente)?

ToDo:

- Salvataggio su file esterno (.txt) delle informazioni

- Lettura del testo e stampa a schermo senza formattazione (nel caso in cui riuscissi a integrare questa funzione si potrebbe fare in modo che al posto della lista venga subito stampato lo schermo e da Opzioni poi si possano visualizzare le varie info, se presenti)

Bugs riscontrati:

- Se premo 0 nella selection list mi compare la freccia di selezione (occhio memory, appare anche nei tuoi plugins, e non serve a nulla, anche perchè si sovrappone al testo e appare male, se sai come risolvere [credo di si] ti ringrazierei!)

- Evitare di dover per forza impostare sul tasto di selezione destro la direzione superiore per far in modo che se ci si trova dentro il plugin si possa tornare al filemanager invece di dover chiudere il programma: a quanto pare ListBox.left_cb= lambda: plugins.stop_module(0, s.restore) non funziona (o forse sono io che non lo utilizzo bene)

Infine scusate la mia lentezza, ma tra scuola e impegni vari, e considerando che posso scrivere codice solamente dal cellulare sono molto rallentato! :axehead:

EDIT: Aggiunto il plugin! ;) Vi ricordo che qualsiasi bug va segnalato qui!

html.rar

Modificato da giuppe92
Link to comment
Condividi su altri siti

Posterò il mio plugin a brevissimo, penso domani pomeriggio, con la calma. Sembra funzionare correttamente, anche se cmq dei test da parte vostra possono aiutarmi!Non ho ancora integrato per ovvi motivi la lettura del testo della pagina.

Legge correttamente:

- Titolo;

- Descrizione;

- Keywords;

- Data;

Ho fatto in modo che se qualcuno di questi non fosse presente aggiunge nella lista che la funzione get mi ritorna la string "Error ecc.." invece del'informazione corretta. In questo modo però non compare mai il messaggio di nodate, come si può fare per farlo apparire? Inoltre mi sapreste rispondere alla precedente domanda (nella pagina precedente)?

ToDo:

- Salvataggio su file esterno (.txt) delle informazioni

- Lettura del testo e stampa a schermo senza formattazione (nel caso in cui riuscissi a integrare questa funzione si potrebbe fare in modo che al posto della lista venga subito stampato lo schermo e da Opzioni poi si possano visualizzare le varie info, se presenti)

Bugs riscontrati:

- Se premo 0 nella selection list mi compare la freccia di selezione (occhio memory, appare anche nei tuoi plugins, e non serve a nulla, anche perchè si sovrappone al testo e appare male, se sai come risolvere [credo di si] ti ringrazierei!)

- Evitare di dover per forza impostare sul tasto di selezione destro la direzione superiore per far in modo che se ci si trova dentro il plugin si possa tornare al filemanager invece di dover chiudere il programma: a quanto pare ListBox.left_cb= lambda: plugins.stop_module(0, s.restore) non funziona (o forse sono io che non lo utilizzo bene)

Infine scusate la mia lentezza, ma tra scuola e impegni vari, e considerando che posso scrivere codice solamente dal cellulare sono molto rallentato! :lol:

Bene..vedo che vi cimentate nei plugin hehe

Comunque per le faccende legate alla gestione dei plugin sto sistemando (ma negli ultimi giorni non ho fatto niente....)

Per i bugs metto un metodo alla classe ListBox tipo: allow_multi_selection=1 per impostare o no la multi selezione (ah ricordo che ListBox.selected contiene la lista degli indici degli elementi selezionati)

ListBox.left_cb serve per impostare il parametro alla listbox (alla pressione del tasto sinistro, avviene quella funzione)

Mentre se vuoi impostare il tasto destro per uscire

		ui.left_key=[callback,u""]
	ui.right_key=[callback,u""]

Modificato da memoryn70
Link to comment
Condividi su altri siti

Per i bugs metto un metodo alla classe ListBox tipo: allow_multi_selection=1 per impostare o no la multi selezione (ah ricordo che ListBox.selected contiene la lista degli indici degli elementi selezionati)

Ok ottimo, così siamo a posto! :shifty:

ListBox.left_cb serve per impostare il parametro alla listbox (alla pressione del tasto sinistro, avviene quella funzione)

Mentre se vuoi impostare il tasto destro per uscire

		ui.left_key=[callback,u""]
	ui.right_key=[callback,u""]

Si ho capito, ma questo a cosa serve non ho ben inteso:?

		ui.left_key=[callback,u""]
	ui.right_key=[callback,u""]

Modificato da giuppe92
Link to comment
Condividi su altri siti

Ok ottimo, così siamo a posto! :shifty:

Si ho capito, ma questo a cosa serve non ho ben inteso:?

		ui.left_key=[callback,u""]
	ui.right_key=[callback,u""]

Serve ad impostare i softkeys :D (come volevi fare tu...)

@snake: ho visto che se tu estrai mbm, "uscendo" dal plugin non si ricaricano i file e non si vede la cartella estratta. Per questo metti 1 nella funzione stop_plugin

Link to comment
Condividi su altri siti

Serve ad impostare i softkeys :blink: (come volevi fare tu...)

@snake: ho visto che se tu estrai mbm, "uscendo" dal plugin non si ricaricano i file e non si vede la cartella estratta. Per questo metti 1 nella funzione stop_plugin

...Grazie per l'ennesima correzione...

Adesso ritengo opportuno rilascare la versione 1.0 del plugin mbm... (ha pochissimi cambiamenti rispetto alla versione di test che ho postato l'altro giorno).

Se ci sono bug segnalatelo pure...

In questi giorni appena ho un po' di tempo sistemo il plugin AIF e rilascerò una beta iniziale.

Multi-Bitmap Plugin by Snake87 v1.0

Visualizza le immagini contenute nei file mbm (Multi-Bitmap)

INSTALLAZIONE

Copiare il file mbma.py in

C:\\System\\Apps\\Winfile\\Plugins\\FileOpen\\

o

E:\\System\\Apps\\Winfile\\Plugins\\FileOpen\\

Per il momento per visualizzare un file mbm con il plugin la sua estensione deve essere mbma e non mbm.

-----------------------------------------

CHANGELOG

-----------------------------------------

Changelog dalla 1.0beta2 alla 1.0:

- Aggiunta progress bar alla rimozione dei file temporanei

- Sistemato il bug del tasto 3(Successivo) e 1(Precente)

- Durante l'apertura del file, se WinFile è in landscape non impiegherà più il 500% in più, in quanto lo schermo torna alla modalità normale, carica il file e poi ritorna in landscape.

- Alcuni bugfix

Changelog da 1.0beta a 1.0beta2:

- Risolti alcuni bug

- Sostituito il messaggio iniziale lettura file mbm in corso con una progressbar che indica la percentuale di caricamento del file mbm

- Ottimizzato leggermente il codice

* Il codice del file mbm_mod è stato integrato nel plugin quindi ora non è necessario installare il file mbm_mod.py ma solo il file mbma.py

* Rimossa doppia importazione del modulo os (una era nel file mbm_mod.py e l'altra nel file mbma.py)

- Aggiunte funzioni

* Estrai -> File Singolo

* Estrai -> Tutti

* Tipo compressione:

Ovviamente è riferito all'estrazione, è possibile scegliere se salvare i file in formato png o jpg, il formato di salvataggio viene salvato in un file dat.

Come impostazione di default (al primo avvio) l'immagine viene salvata in png.

- Associati i seguenti tasti:

* Tasto 2 -> Estrai -> File Singolo

* Tasto 8 -> Estrai -> Tutti

* Tasto 6 -> Tipo compressione

* Tasto 5 -> Dettagli Multi-Bitmap

Changelog da 0.9beta a 1.0beta:

- Plugin meno pesante e più veloce:

* L'immagine numero ... viene estratta solo quando necessario

* Rimossa doppie importazioni moduli nel file mbm_mod.py

- Aggiunto il dettaglio del file mbm (Numero immagini Dimensione data/ora)

- Cambiata estensione dei file temporanei (semplice rinominazione da png a bmp)

Versione 0.9beta

- Prima versione del plugin

BUG CONOSCIUTI:

- Continuando ad aprire e chiudere una immagine, si perdono 70 KB di RAM ogni volta ("Bug" non causato dal plugin). Usando le funzioni precedente e successivo dell'image viewer questa perdita di ram non accade.

Ringrazio memoryN70 per i consigli, la documentazione delle classi da utilizzare e l'aiuto nella risoluzione di alcuni bug.

MBM_Plugin_1.0.zip

Modificato da Snake87
Link to comment
Condividi su altri siti

;)

@snake: ottimo! Direi che il plugin sarà allegato alla versione prossima...

@giuppe: carino :) Solo non capisco perché molti usano ancora il modulo string...è deprecato (uhm come si dice deprecated in italiano :lol:)! Le stesse funzioni si possono usare direttamente, tipo: "WinFile".find("Wi")...nei cicli inoltre la chiamata diretta senza passare da string dovrebbe giovare molto ;)

EDIT:

volevo anche dire che titolo,description,keywords,date=info[0],info[1],info[2],info[3] puoi semplicemente sostituire con titolo,description,keywords,date=info ;)

Ah poi volevo chiederi a cosa serve la t in 'rt' come modalità di apertura del file...(io sapevo b o + ma nn t...)

EDIT2: carino il metodo di usare a metà una classe, cambiando alcune funzioni! Non lo sapevo ;)

EDIT3: come workaround per togliere la selezione potete fare ui.unbind(EKey0)...

EDIT4: ho cambiato la priorità dei metodi di apertura dei file, oltre che aver tolto alcuni try che potevano rendere difficile il debug. Cosi ora i plugin hanno la priorità max e si risolve il bug del plugin mbm. Ovviamente è tutto modificabile dall'utente tramite apri con, che ha la priorità massima.

Priorità avvio di un file (se il metodo non è disponibile per il file passa al successivo):

1) .app & .exe avviati senza nessun altro controllo

2) apertura con apri con

3) apertura tramite plugins

4) apertura tramite visualizzatori interni

5) apertura tramite sistema

Ovviamente le cose cambiano se:

-si avvia con metodo "Apri da sistema": apre direttamente da sistema

-si avvia con metodo "Apri internamente": apre il file tramite un plugin (priorità max) o visualizzatore interno

Modificato da memoryn70
Link to comment
Condividi su altri siti

@giuppe: carino :) Solo non capisco perché molti usano ancora il modulo string...è deprecato (uhm come si dice deprecated in italiano <_<)! Le stesse funzioni si possono usare direttamente, tipo: "WinFile".find("Wi")...nei cicli inoltre la chiamata diretta senza passare da string dovrebbe giovare molto ;)

Consente anche la ricerca di testo a partire da un certo numero di caratteri? Se si la sintassi qual è? La stessa di string?

EDIT:

volevo anche dire che titolo,description,keywords,date=info[0],info[1],info[2],info[3] puoi semplicemente sostituire con titolo,description,keywords,date=info ;)

Ah poi volevo chiederi a cosa serve la t in 'rt' come modalità di apertura del file...(io sapevo b o + ma nn t...)

Ottimo non sapevo per la lettura della! ^_^

Guarda devo essere sincero ma rt non so cosa abbia di diverso, infatti avevo già degli script nel cell che usavano rt e ho preso da li! Ti chiedo un favore: Quali sono i vari metodi e se mi sapresi dire le differenze! Grazie :)

EDIT2: carino il metodo di usare a metà una classe, cambiando alcune funzioni! Non lo sapevo ;)

Ehm, a cosa ti riferisci di preciso?

EDIT3: come workaround per togliere la selezione potete fare ui.unbind(EKey0)...

Perfect, sistemo o cmq aspetto la nuova versione!

Infine bene per quanto riguarda la priorità! Dai, continua/iamo così! :)

Link to comment
Condividi su altri siti

:incazzato:

EDIT:

volevo anche dire che titolo,description,keywords,date=info[0],info[1],info[2],info[3] puoi semplicemente sostituire con titolo,description,keywords,date=info :incazzato:

Ah poi volevo chiederi a cosa serve la t in 'rt' come modalità di apertura del file...(io sapevo b o + ma nn t...)

Se non mi sbaglio cambia il metodo di apertura del file...

t sta per text

b sta per binary

quindi apre il file come file di testo.

EDIT2: carino il metodo di usare a metà una classe, cambiando alcune funzioni! Non lo sapevo ^_^

C'è sempre qualcosa di nuovo che si impara.. ;)

EDIT3: come workaround per togliere la selezione potete fare ui.unbind(EKey0)...

Bella questa appena ho tempo la provo.

Link to comment
Condividi su altri siti

Giuppe ho visto che nel tuo plugin c'è un errore...ListBox.left_cb=lambda: plugins.stop_module(0,s.restore) ma la funzione restore non esiste!

Quindi se rilasci prima un'altra versione bene altrimenti correggo io..

P.S: changelog versione 1.04 fino ad ora...

* Bug fix e aggiustamenti (correzzione problemi):

-Ora il volume del player non diminuisce ad ogni sua chiusura

-Sistemate alcune cose nei task: aggiornando si riseleziona il task che era selezionato (se esiste ancora), risolti bug sull'uid in caso di accenti,

la funzioni chiudi e termina erano invertite (ora se si fa chiudi su winfile infatti prima salva le impostazioni e fa l'effetto)

-Grave problema nella copia dei file risolto: ora dovrebbe realmente funzionare in ogni occasione

-Se ora si apre un immagine con nome accentato, viene trovato il corretto indice

-Bug risolto: se non riesce a caricare i colori dal theme_prop.ini a seguito della mancanza di theme.dat, ora WinFile si avvia lo stesso

-Tolti try/except nella funzione di avvio di un file: risulterà cosi più facile il debug

-Ora i componenti dei temi non sono case-sensitive (es: UI.zip oppure ui.ZIP)

-Cambiato l'ordine di priorità del metodo di avvio dei file

* Funzionalità aggiunte:

-I plugin possono essere ora nominati così (multiestensioni): es. zip,jar,dta.py -> Apre file zip,jar,dta (jar/dta sono archivi zip rinominati)

-Aggiunta la possibilità di modificare le immagini (tramite applicazione del telefono)

-Mentre si scorrono le immagini viene mostrato: n. immagine corrente/totali e una volta arrivati alla fine, ricomincia da capo lo scorrimento

-Aggiunti nuovi plugin: mbm (by snake87), sis (by Memory) e html (by Giuppe)

* Plugins changelog:

* zip,jar,dta

-Alla chiusura viene eseguita la pulizia dei file temporanei

-La directory temporanea ha una parte di nome che dipende dall'ora: meno rischio (già difficile prima) di incompatibilità

-L'estrazione di un singolo elemento funziona anche con cartelle

-Quando si apre un file per la seconda volta, se è ancora presente nella cartella temporanea, non lo riestrae

-Buffer estrazione aumentato: dovrebbe essere un po più veloce

-ToDo: aggiungere metodo per l'estrazione di file molto grossi (che non si possono leggere in ram)

* sis

-Aggiunta la visualizzazione delle informazioni sull'installer

-Codice ottimizzato, rimosse molte cose inutili, range sostituiti con xrange

-Estrazione dei file

-Alcuni bug risolti

-Dimensione files visualizzata

-Gli elementi sono ora messi in ordine alfabetico con le directory all'inizio

* skn [release]

-Aggiunta la funzione di ridenominazione del nome

-Alcune cose sistemate

Priorità avvio di un file (se il metodo non è disponibile per il file passa al successivo):

1) .app & .exe avviati senza nessun altro controllo

2) apertura con apri con

3) apertura tramite plugins

4) apertura tramite visualizzatori interni

5) apertura tramite sistema

Ovviamente le cose cambiano se:

-si avvia con metodo "Apri da sistema": apre direttamente da sistema

-si avvia con metodo "Apri internamente": apre il file tramite un plugin (priorità max) o visualizzatore interno

EDIT: si esatto indica il metodo di apertura (tra l'altro su symbian non influisce niente b o t...sul pc si ed è molto importante se si lavora con file binari)

Comunque esiste:

w/r scrittura/lettura insieme a:

+ avanzato (tipo permette il seek nel write; r+ lettura e scrittura senza che cancella il file)

Modificato da memoryn70
Link to comment
Condividi su altri siti

Please sign in to comment

You will be able to leave a comment after signing in



Accedi Ora
 Share

×
×
  • Crea Nuovo...

Informazione Importante

Questo sito utilizza i cookie per analisi, contenuti personalizzati e pubblicità. Continuando la navigazione, accetti l'utilizzo dei cookie da parte nostra | Privacy Policy