Altra versione ALPHA!
Ho fatto svariate modifiche, e sistemato altrettante cose, anche se non si vedono a livello di uso. Una delle cose che ho fatto, è stata quella di distribuire in modo più congruo tutte le funzioni e le classi statiche, raggruppandole anche in una sorta di schema logico. Chi leggerà il codice, vedrà anche una replica delle funzioni base di Gambas, che ho adattato in classi statiche, e che ho modificato per rispondere correttamente ad alcune funzioni interne di pgDesigner. Lo scopo principale di questa cosa, è quello di concentrare il più possibile le chiamate in punti nevralgici, in modo da rendere più semplice (apparentemente) eventuali modifiche.
Ad ogni, faccio un riassunto degli aggiornamenti in questa release:
- # NEW: Aggiunta la possibilità di esportare il progetto su file CSV.
- # NEW: Aggiunta una finestra di dialogo, contenente alcune utility, tra cui: la visualizzazione della configurazione corrente, l'elenco dei progetti aperti e relative configurazioni, la codifica/decodifica usata per salvare/leggere i dati codificati dai file di progetto. Quest'ultima è utile per la correzione manuale dei dati nei file progetto.
- # UPD: La lingua di default viene ora determinata dalla impostazione di sistema, o dal parametro LANG; la finestra di selezione della lingua viene visualizzata solo se risulta impossibile determinare queste condizioni.
- # UPD: Aggiunta la lettura da database della definizione UNIQUE per gli indici in SQLite.
- # UPD: Miglioramenti nelle funzioni HTML.
- # UPD: Il modulo di lancio dell'applicazione è stato modificato. All'avvio l'applicazione viene impostata automaticamente con il linguaggio di sistema, se presente, altrimenti verrà visualizzata la finestra di configurazione. Sono previsti due tipi di parametro: "LANG=", seguito dall'identificativo di lingua (es. "it_IT.UTF-8"), con cui è possibile definire da riga di comando la lingua corrente (in caso di errore, o incongruenza, verrà impostata la lingua di default); "FILE=", seguito dal nome del file progetto (path compresa, e tutto senza spazi in mezzo), che sostituisce la precedente logica di caricamento automatico dei file di progetto (questo parametro può essere definito più volte a riga di comando, per ogni file che si desidera caricare alla partenza del programma).
- # UPD: Aggiornamento delle traduzioni. Nel tempo libero, ho cercato di procedere nelle traduzioni dei testi, nelle lingue che erano previste dalla vecchia versione, ma questa sarà sempre una cosa che necessiterà di interventi da chi conosce le lingue meglio di me e del traduttore software che stò usando... (spero che qualcuno recepisca il messaggio...)
- # UPD: Le procedure di report sono state aggiornate e migliorate (questo comprende anche il nuovo CVS).
- # UPD: Le procedure di lettura/scrittura dei file progetto sono state aggiornate e migliorate.
- # UPD: La procedura di conversione dei file progetto è stata aggiornata e corretta (...forse...).
- # UPD: A causa di alcune implementazioni nella libreria xml di Gambas (in effetti, dopo aver capito che la libreria ha dei problemi con certe strutture...), i file progetto sono stati modificati. E' opportuno, quindi, eseguire la procedura di conversione dei progetti, presente nel menù Strumenti. Pro divulgazione: la logica attuale con cui è stata costruita la libreria gb.xml, al momento non riesce a capire la chiusura dei tag, se questa viene fatta subito dopo la dichiarazione di eventuali attributi (es. ), per cui è necessario che la costruzione di file xml avvenga in questo modo: ; lo spacchettamento del tag provoca la comparsa di un item "#text", che corrisponde all'eventuale testo che compare tra l'apertura e la chiusura del tag.
- # UPD: Le funzioni di disegno degli oggetti sono state riorganizzate e migliorate. Chissà, forse un giorno gestirò tutto in OpenGL...
- # NDA: A causa della difficoltà, con SQLite, di determinare completamente la struttura dei campi di tabella, nel driver è stata utilizzata una shell al programma "sqlite" (o "sqlite3" per la versione 3). Sulla base di questa modifica, è necessario che per l'accesso ai database SQLite, sul sistema sia presente questa utility, che di norma viene installata da tutte le distribuzioni Linux.
- # NDA: A causa di un problema, di cui non si è ancora appreso il motivo, il caricamento in MySQL, delle informazioni riguardanti i campi di tabella di tipo "longtext", può essere effettuato solo tramire utente "root"; con altri utenti, il contenuto stranamente non viene caricato... In pratica, il problema che mi aveva assillato in questo periodo, non era causato da Gambas, bensì da MySQL; spero di avere un riscontro positivo ...
- # NDA: Programma compilato con la versione 2.10.2 di Gambas (ultimissima!). In realtà le modifiche delle ultime 2/3 versione, non hanno condizionato il programma, per cui credo che sia sufficiente ricompilarlo.
P.S.: attendo sempre qualche volontario che si faccia avanti per aiutarmi... :-)
Ciao!