From d1298ebfb271ff4939b26197e64d028a5d9d9070 Mon Sep 17 00:00:00 2001 From: andrea Date: Mon, 5 Feb 1996 19:00:53 +0000 Subject: [PATCH] Aggiunta documentazione in linea git-svn-id: svn://10.65.10.50/trunk@2562 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- include/applicat.cpp | 15 ++- include/applicat.h | 36 +++--- include/archives.cpp | 76 ++++++++++-- include/archives.h | 28 ++++- include/array.cpp | 122 +++++++++++++------- include/array.h | 82 +++++++------ include/assoc.cpp | 68 ++++++----- include/assoc.h | 46 ++++---- include/brwapp.cpp | 2 - include/brwapp.h | 4 +- include/checks.cpp | 14 ++- include/checks.h | 10 +- include/confapp.cpp | 12 +- include/confapp.h | 18 +-- include/config.cpp | 27 ++++- include/config.h | 20 ++-- include/controls.cpp | 17 ++- include/controls.h | 20 ++-- include/date.cpp | 20 +++- include/date.h | 41 +++++-- include/execp.cpp | 5 + include/execp.h | 15 ++- include/expr.h | 100 ++++++++++------ include/files.cpp | 27 ++++- include/files.h | 49 +++++--- include/form.cpp | 49 +++++++- include/form.h | 133 +++++++++++---------- include/golem.h | 57 ++++++++- include/isam.cpp | 49 +++++++- include/isam.h | 149 +++++++++++++----------- include/mailbox.cpp | 7 +- include/mailbox.h | 37 +++--- include/mask.cpp | 67 +++++++++-- include/mask.h | 56 +++++---- include/maskfld.cpp | 35 +++++- include/maskfld.h | 205 ++++++++++++++++++++------------- include/msksheet.cpp | 68 ++++++----- include/msksheet.h | 22 ++-- include/object.h | 69 +++++++---- include/prefix.cpp | 33 +++++- include/prefix.h | 20 ++-- include/printapp.cpp | 26 ++++- include/printapp.h | 85 +++++++------- include/printer.cpp | 23 +++- include/printer.h | 267 +++++++++++++++++++++++++------------------ include/printwin.cpp | 4 + include/printwin.h | 41 ++++--- include/progind.cpp | 4 +- include/progind.h | 24 ++-- include/real.cpp | 177 ++++++++++++++++++++++++---- include/real.h | 79 ++++++++----- include/rectypes.h | 13 ++- include/relapp.cpp | 21 +++- include/relapp.h | 64 +++++------ include/relation.cpp | 87 +++++++++++--- include/relation.h | 123 ++++++++++---------- include/scanner.cpp | 6 +- include/scanner.h | 13 ++- include/sheet.cpp | 18 ++- include/sheet.h | 61 +++++----- include/sort.h | 8 +- include/stack.h | 6 +- include/stdtypes.cpp | 10 +- include/stdtypes.h | 19 ++- include/strings.cpp | 72 ++++++++++-- include/strings.h | 45 ++++++-- include/tabapp.h | 8 +- include/tabutil.h | 8 +- include/text.cpp | 31 +++-- include/text.h | 67 ++++++----- include/utility.cpp | 28 +++++ include/utility.h | 5 +- include/validate.cpp | 6 +- include/viswin.cpp | 41 ++++++- include/viswin.h | 144 +++++++++++------------ include/window.cpp | 50 ++++++-- include/window.h | 51 ++++++--- include/xvtility.cpp | 60 +++++++++- 78 files changed, 2534 insertions(+), 1191 deletions(-) diff --git a/include/applicat.cpp b/include/applicat.cpp index 1d538786f..6cd331cf9 100755 --- a/include/applicat.cpp +++ b/include/applicat.cpp @@ -26,7 +26,6 @@ #define BITTEST(w,p) (((w) & (0x0001 << (p))) != 0) -// @doc EXTERNAL /////////////////////////////////////////////////////////// // Metodi di accesso globali all'applicazione corrente @@ -34,6 +33,8 @@ HIDDEN TApplication* _application = NULL; +// @doc EXTERNAL + // @func Ritorna l'applicazione in corso // // @rdesc Ritorna il reference all'applicazione in corso @@ -43,6 +44,8 @@ TApplication& main_app() return *_application; } +// @doc INTERNAL + // @func Controlla se si sta eseguendo xvt // // @rdesc Ritorna i seguenti valori: @@ -52,6 +55,7 @@ TApplication& main_app() bool xvt_running() { return _application != NULL; } + /////////////////////////////////////////////////////////// // Gestione dello sfondo della finestra principale /////////////////////////////////////////////////////////// @@ -389,6 +393,7 @@ void TApplication::set_perms() } } +// @doc EXTERNAL // @mfunc Legge il parametro /uUTENTE e lo toglie dalla lista void TApplication::check_parameters( @@ -418,6 +423,7 @@ void TApplication::check_parameters( #endif } +// @doc EXTERNAL // @mfunc Fa partire l'applicazione void TApplication::run( @@ -512,6 +518,7 @@ void TApplication::uncheck_menu_item(MENU_TAG item) xvt_menu_update(TASK_WIN); } +// @doc EXTERNAL // @mfunc Permette di abilitare/disabilitare una voce di menu' void TApplication::enable_menu_item( @@ -616,6 +623,7 @@ bool TApplication::set_firm(long newfirm) return TRUE; } +// @doc INTERNAL // @mfunc Gestisce le voci di configurazione // @@ -676,6 +684,7 @@ bool TApplication::config() return ok; } +// @doc INTERNAL // @mfunc Cambia il cursore del mouse void TApplication::set_cursor( bool w) // @parm Indica il tipo di cursore da utilizzare: @@ -700,9 +709,11 @@ void TApplication::set_cursor( } } +// @doc EXTERNAL + // @mfunc Controlla se al programma corrente e' concesso cambiare ditta da menu. // -// @rdesc Ritoran i seguenti valori: +// @rdesc Ritorna i seguenti valori: // // @flag TRUE | Se e' abilitata la voce di menu' per il cambio della ditta // @flag FALSE | Se non e' possibile cambiare ditta da menu' diff --git a/include/applicat.h b/include/applicat.h index a8a315e90..c817f07d4 100755 --- a/include/applicat.h +++ b/include/applicat.h @@ -9,7 +9,6 @@ #include #endif -// @doc EXTERNAL #define MSG_AI "AI" // message auto_insert (relapp) #define MSG_FS "FS" // message filtered start (relapp) @@ -18,44 +17,45 @@ #define CHK_DONGLE 0 // dongle authorization checks #define CHK_USER 1 // user authorization checks +// @doc EXTERNAL // @class TApplication | Classe per la gestione di tutte le applicazioni PRASSI class TApplication // @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Identificatore del menu' legato all'applicazione + // @cmember:(INTERNAL) Identificatore del menu' legato all'applicazione int _bar; - // @cmember Numero di argomenti passati all'applicazione + // @cmember:(INTERNAL) Numero di argomenti passati all'applicazione int __argc; - // @cmember Array di argomenti passati all'applicazione + // @cmember:(INTERNAL) Array di argomenti passati all'applicazione const char** __argv; - // @cmember Array di autorizzazione concessa della chiavi + // @cmember:(INTERNAL) Array di autorizzazione concessa della chiavi TBit_array _dongle_aut; - // @cmember Array di autorizzazione concessa all'utente + // @cmember:(INTERNAL) Array di autorizzazione concessa all'utente TBit_array _user_aut; - // @cmember Nome dell'applicazione + // @cmember:(INTERNAL) Nome dell'applicazione TString80 _name; - // @cmember Titolo della finestra + // @cmember:(INTERNAL) Titolo della finestra TString80 _title; - // @cmember Codice della ditta + // @cmember:(INTERNAL) Codice della ditta long _savefirm; - // @cmember Indica se e' stata creata con successo + // @cmember:(INTERNAL) Indica se e' stata creata con successo bool _create_ok; - // @cmember Handle del modulo del programma di cui si sta attendendo la fine + // @cmember:(INTERNAL) Handle del modulo del programma di cui si sta attendendo la fine word _waiting; - // @cmember Termine dell'applicazione + // @cmember:(INTERNAL) Termine dell'applicazione void terminate(); - // @cmember Cambia il cursore del mouse + // @cmember:(INTERNAL) Cambia il cursore del mouse void set_cursor(bool w); - // @cmember Gestisce le voci di configurazione + // @cmember:(INTERNAL) Gestisce le voci di configurazione bool config(); - // @cmember About box: risposta alla opzione Informazioni del menu File + // @cmember:(INTERNAL) About box: risposta alla opzione Informazioni del menu File void about() const; // @access Protected Member @@ -92,7 +92,7 @@ protected: // @cmember Setta i permessi di utilizzo dei moduli void set_perms(); - + // @access Public Member public: // @cmember Modifca la barra dei menu' inserendo la

@@ -101,8 +101,6 @@ public: // @cmember Fa partire l'applicazione void run(int argc, char* argv[], const char* name); - // @comm Queste funzioni possono essere ridefinite da ogni applicazione - // // @cmember Ritorna l'identificatore della classe virtual word class_id() const { return CLASS_APPLICATION; } diff --git a/include/archives.cpp b/include/archives.cpp index 7898d2089..7d753b6d5 100755 --- a/include/archives.cpp +++ b/include/archives.cpp @@ -37,8 +37,20 @@ public: // TArchive /////////////////////////////////////////////////////////// +// @doc EXTERNAL -FILE* TArchive::ask_disk(TFilename& name, int disk, char floppy, bool lettura) const +// @mfunc Funzione per richiedere all'utente il dischetto e per controllare la +// corretta sequenza dei dischetti da inserire +// +// @rdesc Ritorna il puntatore al file presente (o meno) sul dischetto +FILE* TArchive::ask_disk( + TFilename& name, // @parm Nome del file da creare/cercare su disco + int disk, // @parm Numero progressivo del set + char floppy, // @parm Drive sul quale effettuare l'operazione (A, B, C, ...) + bool lettura) const // @parm Indica il modo di apertura del file: + // + // @flag TRUE | Apre il file in lettura + // @flag FALSE | Apre il file in scrittura { TFilename prev(name); prev.ext(format("%03d", disk-1)); // File precedente @@ -111,9 +123,15 @@ int TArchive::build_backup_list(long firm, TString_array& fl) const return fl.items(); } +// @doc EXTERNAL -// Costruisce la lista delle directory da scompattare -int TArchive::build_restore_list(long firm, char floppy, TString_array& fl) const +// @mfunc Costruisce la lista delle directory da scompattare +// +// @rdesc Ritorna il numero di direttori da ripristinare +int TArchive::build_restore_list( + long firm, // @parm Ditta di cui effettuare il salvataggio + char floppy, // @parm Floppy su cui effettuare il backup + TString_array& fl) const // @parm Nomi dei direttori da ripristinare { if (firm < 0) // Crea lista automaticamente { @@ -144,8 +162,15 @@ int TArchive::build_restore_list(long firm, char floppy, TString_array& fl) cons return fl.items(); } +// @doc EXTERNAL -bool TArchive::fsplit(const char* filename, char floppy, const char* desc) const +// @mfunc Spezza il file in modo da farlo stare sul dischetto +// +// @rdesc Ritorna se e' riuscito a spezzare il file +bool TArchive::fsplit( + const char* filename, // @parm Nome del file da spezare + char floppy, // @parm Floppy su cui scaricare il file + const char* desc) const // @parm Descrizione dell'archivio { const TFilename from(filename); // File da splittare @@ -237,8 +262,14 @@ bool TArchive::fsplit(const char* filename, char floppy, const char* desc) const return ok; } +// @doc EXTERNAL -bool TArchive::fbuild(const char* filename, char floppy) const +// @mfunc Ricostruisce il file spezzato +// +// @rdesc Ritorna se e' riuscito a ricostruire il file +bool TArchive::fbuild( + const char* filename, // @parm Nome del file da ricostrutire + char floppy) const // @parm Floppy da cui recupare i pezzi del file { const TFilename work(filename); @@ -320,7 +351,23 @@ bool TArchive::fbuild(const char* filename, char floppy) const return ok; } -bool TArchive::backup(const char* dir, char floppy, const char* desc, bool pr_set) +// @doc EXTERNAL + +// @mfunc Effettua il backup della ditta o della directory +// +// @rdesc Ritorna il risultato dell'operazione +bool TArchive::backup( + const char* dir, // @parm Directory di cui effettuare il backup + char floppy, // @parm Floppy su cui effettuare il backup + const char* desc, // @parm Descrizione da assegnare al backup + bool pr_set) // @parm Se TRUE setta il prefix come vuoto (default TRUE) + // @parm long | firm | Ditta di cui effettuare il backup + +// @syntax bool backup(const char* dir, char floppy, const char* desc, bool pr_set); +// @syntax bool backup(long firm, char floppy, const char* desc, bool pr_set); + +// @comm Il parametro

e' utilizzato per evitare errori di riaperture di files. + { const TString16 old(prefix().name()); if (pr_set) @@ -376,7 +423,22 @@ bool TArchive::backup(long firm, char floppy, const char* desc, bool pr_set) return ok; } -bool TArchive::restore(const char* dir, char floppy, bool tmp, bool pr_set) +// @doc EXTERNAL + +// @mfunc Effettua il restore della ditta o dell directory +// +// @rdesc Ritorna il risultato dell'operazione +bool TArchive::restore( + const char* dir, // @parm Directory di cui effettuare il restore + char floppy, // @parm Floppy da cui leggere i dati + bool tmp, // @parm Directory temporanea da utilizzare + bool pr_set) // @parm Se TRUE setta il prefix come vuoto (default TRUE) + +// @syntax bool restore(const char* dir, char floppy, bool temp, bool pr_set); +// @syntax bool restore(long firm, char floppy, bool temp, bool pr_set); + +// @comm Il parametro

e' utilizzato per evitare errori di riaperture di files. + { TFilename work; if (tmp) diff --git a/include/archives.h b/include/archives.h index 36b318cfe..315f75f46 100755 --- a/include/archives.h +++ b/include/archives.h @@ -15,29 +15,55 @@ class ALArchive; +// @doc EXTERNAL + +// @class TArchive | Classe per effettuare compressione e archiviazione di dati +// +// @base public | TObject class TArchive : public TObject + +// @author:(INTERNAL) Angelo + +// @access:(INTERNAL) Private Member { + // @ccost:(INTERNAL) BUFSIZE | 4096*7 | Dimensione del buffer di lettura/scrittura su dischetto enum { BUFSIZE = 4096*7 }; + // @cmember:(INTERNAL) Oggetto per la gestione di archivi (vedi ) ALArchive* _arc; +// @access Protected Member protected: + // @cmember NON IMPLEMENTATA KEY query() const; + // @cmember Funzione per richiedere all'utente il dischetto e per controllare la + // corretta sequenza dei dischetti da inserire FILE* ask_disk(TFilename& name, int disk, char floppy, bool lettura) const; + // @cmember Ritorna la dimensione del file

long fsize(FILE* f) const; + // @cmember Spezza il file in modo da farlo stare sul dischetto bool fsplit(const char* filename, char floppy, const char* desc = "") const; + // @cmember Ricostruisce il file spezzato bool fbuild(const char* filename, char floppy) const; - + + // @cmember Ricostruisce la lista dei file contenuti nel backup int build_backup_list(long firm, TString_array& fl) const; + // @cmember Costruisce la lista delle directory da scompattare int build_restore_list(long firm, char floppy, TString_array& fl) const; +// @access Public Member public: + // @cmember Effettua il backup della directory bool backup(const char* dir, char floppy, const char* desc, bool pr_set=TRUE); + // @cmember Effettua il backup della ditta bool backup(long firm, char floppy, const char* desc, bool pr_set=TRUE); + // @cmember Effettua il restore della directory bool restore(const char* dir, char floppy, bool temp, bool pr_set=TRUE); + // @cmember Effettua il restore della ditta bool restore(long firm, char floppy, bool temp, bool pr_set=TRUE); + // @cmember Interrompe le operazioni void stop_job(); }; diff --git a/include/array.cpp b/include/array.cpp index b6cc3454f..adfa4241d 100755 --- a/include/array.cpp +++ b/include/array.cpp @@ -114,7 +114,7 @@ TObject* TArray::pred_item( ) -// @doc INTERNAL +// @doc EXTERNAL // @mfunc Modifica la dimensione dell'array. void TArray::resize( @@ -145,8 +145,12 @@ void TArray::resize( } // @doc EXTERNAL -// + // @mfunc Rimuove uno o tutti (default) gli elementi +// @rdesc Ritorna uno dei seguenti parametri: +// +// @flag TRUE | Se l'operazione e' riuscita con successo +// @flag FALSE | Se il numero di elementi e' rimasto invariato bool TArray::destroy( int index, // @parm Numero dell'elemento da eliminare (default -1) bool pack) // @parm Se true richiama la funzione per compattare gli elementi dell'array (default FALSE) @@ -156,11 +160,7 @@ bool TArray::destroy( // Nel caso il parametro pack sia TRUE permette di rendere contigui // tutti gli elementi diversi da NULL tramite la chiamata alla funzione // . - // - // @rdesc Ritorna uno dei seguenti parametri: - // - // @flag TRUE | Se l'operazione e' riuscita con successo - // @flag FALSE | Se il numero di elementi e' rimasto invariato + { const int old = _items; @@ -235,6 +235,8 @@ word TArray::class_id() const return CLASS_ARRAY; } +// @doc EXTERNAL + // @mfunc Stampa un array void TArray::print_on( ostream& out) const // @parm indica l'output sul quale reindirizzare la stampa (funzione standard del C++) @@ -255,15 +257,16 @@ void TArray::print_on( out << endl; } } - + +// @doc EXTERNAL + // @mfunc Controlla se si tratta di un oggetto valido -bool TArray::ok() const - -// @rdesc Ritorna uno dei seguenti parametri: // +// @rdesc Ritorna uno dei seguenti parametri: // @flag TRUE | Se l'array contiene degli elementi // @flag FALSE | Se l'array e' vuoto -// +bool TArray::ok() const + // @comm Controlla se la dimensione dell'array e' uguale a 0 e se esistono // degli elementi diversi da NULL @@ -271,7 +274,12 @@ bool TArray::ok() const return(size() != 0 && (_data != NULL)); } +// @doc EXTERNAL + // @mfunc Aggiunge un oggetto ad un array. +// +// @rdesc La funzione ritorna la posizione nella quale e' stato aggiunto +// l'oggetto. int TArray::add( TObject *object, // @parm Oggetto da aggiungere nell'array int index) // @parm Posizione in cui aggiungere l'oggetto @@ -289,9 +297,6 @@ int TArray::add( // ATTENZIONE: Nel caso si passi l'oggetto per indirizzo deve // essere definita la funzione . // - // @rdesc La funzione ritorna la posizione nella quale e' stato aggiunto - // l'oggetto. - // // @xref { if (index < 0) for (index = _next; index < size() && _data[index]; index++); @@ -325,7 +330,11 @@ int TArray::add( return index; } +// @doc EXTERNAL + // @mfunc Inserisce un elemento dell'array nella posizione index +// +// @rdesc La funzione ritorna la posizione nella quale e' stato inserito l'oggetto. int TArray::insert( TObject *object, // @parm Oggetto da inserire nell'array int index) // @parm Posizione in cui inserire l'oggetto @@ -341,8 +350,6 @@ int TArray::insert( // ATTENZIONE: Nel caso si passi l'oggetto per indirizzo deve // essere definita la funzione . // - // @rdesc La funzione ritorna la posizione nella quale e' stato inserito l'oggetto. - // // @xref { if (objptr(index)) @@ -368,13 +375,17 @@ int TArray::insert(const TObject& object, int index) return insert(objptr, index); } +// @doc EXTERNAL + // @mfunc Elimina l'elemento nella posizione index dell'array +// +// @rdesc Ritorna l'elemento dell'array eliminato senza farne la delete TObject* TArray::remove( int index, // @parm Indica la posizione dell'elemento da eliminare bool dopack) // @parm Indica se si vuole richiamare la funzione // (default FALSE) per spostare gli elementi successivi dell'array - // @rdesc Ritorna l'elemento dell'array eliminato senza farne la delete + { CHECKD(index >= 0, "Can't remove array item ", index); @@ -404,9 +415,13 @@ void TArray::swap(int i1, int i2) if (o2) add(o2, i1); } +// @doc EXTERNAL + // @mfunc Cerca il prossimo oggetto dell'array -int TArray::succ(int i) const +// // @rdesc Ritorna l'indice del prossimo elemento trovato o size() se non esiste +int TArray::succ(int i) const + { CHECKD(i >= -1, "Bad array index ", i); for (i++; i < size(); i++) @@ -414,9 +429,13 @@ int TArray::succ(int i) const return i; } +// @doc EXTERNAL + // @mfunc Cerca il precedente oggetto dell'array -int TArray::pred(int i) const +// // @rdesc Ritorna l'indice dell'elemento precedente o -1 se non esiste +int TArray::pred(int i) const + { CHECKD(i <= size(), "Bad array index ", i); for (i--; i >= 0; i--) @@ -424,20 +443,30 @@ int TArray::pred(int i) const return i; } +// @doc EXTERNAL + // @mfunc Cerca il primo oggetto dell'array -int TArray::first() const +// // @rdesc Ritorna l'indice del primo elemento trovato o size() se l'array e' vuoto +int TArray::first() const + { return succ(-1); } +// @doc EXTERNAL + // @mfunc Cerca l'ultimo oggetto dell'array -int TArray::last() const +// // @rdesc Ritorna l'indice dell'ultimo elemento trovato o -1 se l'array e' vuoto +int TArray::last() const + { return pred(size()); } +// @doc EXTERNAL + // @mfunc Rende contigui tutti gli elementi non nulli void TArray::pack() @@ -460,6 +489,8 @@ void TArray::pack() _next = next; } +// @doc INTERNAL + // @func Funzione per permettere il confonto tra 2 oggetti. // // @rdesc Ritorna i seguenti valori @@ -483,6 +514,8 @@ static int sortable_compare( return s1->compare(*s2); } +// @doc EXTERNAL + // @mfunc Ordina i TObject secondo il criterio definito in void TArray::sort( COMPARE_FUNCTION compare) // @parm Funzione indicante il criterio di ordinamento (default TSortable) @@ -506,8 +539,8 @@ TBit_array::TBit_array(long size) : _bit(NULL), _size(0) if (size) resize(index(size)); } -// @doc INTERNAL -// +// @doc EXTERNAL + // @mfunc Copia nell'array l'elemento passato come parametro void TBit_array::copy( const TBit_array& ba) // @parm Oggetto da copiare nell'array @@ -552,7 +585,7 @@ void TBit_array::reset() } // Certified 99% -// @doc INTERNAL +// @doc EXTERNAL // // @mfunc Modifica la dimensione dell'array. void TBit_array::resize( @@ -577,7 +610,6 @@ void TBit_array::resize( } } - bool TBit_array::operator[] (long n) const { const word i = index(n); @@ -622,12 +654,12 @@ void TBit_array::not(long n) // Certified 90% // @doc EXTERNAL -// + // @mfunc Ritorna il numero di 1 presenti nell'array +// +// @rdesc Numero di 1 trovati. long TBit_array::ones() const -// @rdesc Numero di 1 trovati. -// // @comm Passa tutto l'array di bit e conta quanti degli elementi presenti sono // settati ad 1. // @@ -648,15 +680,15 @@ long TBit_array::ones() const // Certified 90% // @doc EXTERNAL -// -// @mfunc Ritorna la posizione dell'ultimo 1 nell'array -long TBit_array::last_one() const -// @rdesc Ritorna i seguenti valori: +// @mfunc Ritorna la posizione dell'ultimo 1 nell'array // +// @rdesc Ritorna i seguenti valori: // @flag >0 | Posizione nella quale si trova l'ultimo 1 // @flag -1 | Se non sono presenti bit settati ad 1 -// + +long TBit_array::last_one() const + // @comm Cerca all'interno dell'array di bit la posizione dell'ultimo bit // settato ad 1 // @@ -675,14 +707,17 @@ long TBit_array::last_one() const } // Certified 90% -// @mfunc Ritorna la posizione del primo 1 nell'array -long TBit_array::first_one() const +// @doc EXTERNAL +// @mfunc Ritorna la posizione del primo 1 nell'array +// // @rdesc Ritorna i seguenti valori: // // @flag >0 | Posizione nella quale si trova il primo 1 // @flag -1 | Se non sono presenti bit settati ad 1 -// + +long TBit_array::first_one() const + // @comm Cerca all'interno dell'array di bit la posizione del primo bit // settato ad 1 // @@ -700,16 +735,17 @@ long TBit_array::first_one() const return -1; } -// @doc INTERNAL -// -// @mfunc Controlla se si tratta di un oggetto valido -bool TBit_array::ok() const +// @doc EXTERNAL +// @mfunc Controlla se si tratta di un oggetto valido +// // @rdesc Ritorna uno dei seguenti parametri: // // @flag TRUE | Se l'array contiene degli elementi // @flag FALSE | Se l'array e' vuoto -// +bool TBit_array::ok() const + + // @comm Controlla se la dimensione dell'array e' maggiore di 0 e se esistono // degli elementi diversi da NULL { @@ -724,7 +760,7 @@ void TBit_array::set(const char* numbers) if (isdigit(*n)) set(atol(n)); } -// @doc INTERNAL +// @doc EXTERNAL // // @mfunc Stampa un array void TBit_array::print_on( diff --git a/include/array.h b/include/array.h index 603efb966..2ee3f2be9 100755 --- a/include/array.h +++ b/include/array.h @@ -16,29 +16,30 @@ typedef (*COMPARE_FUNCTION)(const TObject**, const TObject**); // @doc EXTERNAL -// + // @type CONDITION_FUNCTION | Prototipo funzione di ricerca/filtro // per i derivati di da passare ai metodi dei - typedef bool (*CONDITION_FUNCTION) ( const TObject& ); // @doc EXTERNAL -// + // @type OPERATION_FUNCTION | Prototipo funzione attuatore // da passare ai metodi sort dei - typedef void (*OPERATION_FUNCTION) ( const TObject& ); +// @doc EXTERNAL + // @class TContainer | Generico contenitore ad accesso casuale (con indice) // @base public | TObject - class TContainer : public TObject { - - // @access Private Member -private: +// @author:(INTERNAL) Matteo + +// @access:(INTERNAL) Private Member +private: + // @cmember:(INTERNAL) Ultima condizione di ricerca/firltro (vedi ) CONDITION_FUNCTION _last_condition; // @access Public Member @@ -55,7 +56,10 @@ public: // @cmember Ritorna numero di oggetti nel container virtual long objects( ) pure; + // @cmember Cerca il successivo elemento che soddisfa la virtual void for_each( OPERATION_FUNCTION ); + // @cmember Cerca il successivo elemento che soddisfa la + // per ogni elemento di virtual void for_each_that( OPERATION_FUNCTION, CONDITION_FUNCTION = NULL ); // @cmember Ritorna il puntatore al primo oggetto che soddisfa la condizione @@ -68,31 +72,37 @@ public: virtual TObject* pred_that( ); // @cmember Ritorna il numero di elementi che soddisfano la condizione virtual long count( CONDITION_FUNCTION = NULL ); - TObject* operator++ (){ return succ_item( ); }; - TObject* operator-- (){ return pred_item( ); }; + // @cmember Operatore di incremento di un elemento + TObject* operator++ () + { return succ_item( ); }; + // @cmember Operatore di dencremento di un elemento + TObject* operator-- () + { return pred_item( ); }; }; - +// @doc EXTERNAL // @class TArray | Classe per la definizione degli array // // @base public | TObject class TArray : public TContainer + +// @author:(INTERNAL) Guido + +// @access:(INTERNAL) Private Member { - // @access Private Member - - // @cmember Array di puntatori ad oggetti + // @cmember:(INTERNAL) Array di puntatori ad oggetti TObject** _data; - // @cmember Dimensione dell'array + // @cmember:(INTERNAL) Dimensione dell'array int _size; - // @cmember Numero di elementi presenti nell'array + // @cmember:(INTERNAL) Numero di elementi presenti nell'array int _items; - // @cmember Prossimo elemento libero nell'array + // @cmember:(INTERNAL) Prossimo elemento libero nell'array int _next; - // @cmember Indice per la scansione sequenziale + // @cmember:(INTERNAL) Indice per la scansione sequenziale int _scanindex; // @access Protected Member @@ -127,17 +137,19 @@ public: // @cmember Ritorna numero di oggetti nell'array virtual long objects( ) { return _items; } - + + // @cmember Ritorna numero di oggetti nell'array virtual int items( ) const { return _items; } - + + // @cmember Ritorna il primo elemento dell'array virtual TObject* first_item( ); - + // @cmember Ritorna l'ultimo elemento dell'array virtual TObject* last_item( ); - + // @cmember Ritorna il successivo elemento dell'array virtual TObject* succ_item( ); - + // @cmember Ritorna il precedente elemento dell'array virtual TObject* pred_item( ); // @cmember Ritorna l'indice del primo oggetto @@ -191,19 +203,23 @@ inline TObject& TArray::operator[] (int index) const #endif return *o; } + +// @doc EXTERNAL + // @class TBit_array | Come la classe ma i suoi elementi sono bit; // questo permette di costruire array piu' piccoli rispetto // alla classe TArray. // // @base public | TObject class TBit_array : public TObject + +// @author:(INTERNAL) Guido + +// @access:(INTERNAL) Private Member { - - // @access Private Member - - // @cmember dimensione dell'array + // @cmember:(INTERNAL) dimensione dell'array word _size; - // @cmember bit in cui sono contenuti i dati + // @cmember:(INTERNAL) bit in cui sono contenuti i dati byte* _bit; // @access Protected Member @@ -217,10 +233,12 @@ protected: void resize(word size); // @cmember Copia nell'array l'elemento passato come parametro void copy(const TBit_array& ba); - // @cmember Ritorna il numero del byte contenente il bit n - word index(long n) const { return word(n >> 3); } - // @cmember Ritorna la posizione del bit n all'interno del byte - byte mask(long n) const { return 1 << (n & 0x7); } + // @cmember Ritorna il numero del byte contenente il bit

+ word index(long n) const + { return word(n >> 3); } + // @cmember Ritorna la posizione del bit

all'interno del byte + byte mask(long n) const + { return 1 << (n & 0x7); } // @access Public Member public: diff --git a/include/assoc.cpp b/include/assoc.cpp index cc282eeed..bc7827f8b 100755 --- a/include/assoc.cpp +++ b/include/assoc.cpp @@ -1,8 +1,12 @@ #include -// @doc EXTERNAL +// @doc EXTERNAL // @mfunc Cerca l'oggetto con chiave

+// +// @rdesc Ritorna l'oggetto corrispondente alla chiave passate come parametro. +// Il parametro

assume il valore TRUE se si tratta di un +// nuovo oggetto. THash_object* TAssoc_array::_lookup( const char* k, // @parm Chiave da cercare bool& isnew, // @parm Viene asseganto TRUE se si tratta di una nuova chiave @@ -12,10 +16,6 @@ THash_object* TAssoc_array::_lookup( // nel caso non venga trovato

ritorna TRUE (si tratta di un // oggetto nuovo) e viene inserito nella tabella se il parametro

// e' settato a TRUE. - // - // @rdesc Ritorna l'oggetto corrispondente alla chiave passate come parametro. - // Il parametro

assume il valore TRUE se si tratta di un - // nuovo oggetto. { const TFixed_string key(k); const word hv = key.hash() % HASH_SIZE; @@ -112,7 +112,10 @@ TObject* TAssoc_array::pred_item( ) return (o == NULL || o->_obj == NULL) ? NULL : o->_obj; } +// @doc EXTERNAL + // @mfunc Aggiunge un oggetto all'array. +// @rdesc Ritorna TRUE se esisteva gia' un elemento con la stessa chiave bool TAssoc_array::add( const char* key, // @parm Chiave d'ordinamento TObject* obj, // @parm Ogetto da inserire (default=NULL) @@ -131,8 +134,6 @@ bool TAssoc_array::add( // Nel caso l'oggetto da aggiungere venga passato per indirizzo // la funzione aggiunge una copia dell'oggetto e quindi deve essere // definita - // - // @rdesc Ritorna TRUE se esisteva gia' un elemento con la stessa chiave { bool isnew = FALSE; @@ -157,16 +158,18 @@ bool TAssoc_array::add(const char* key, const TObject& obj, bool force) return add(key,obj.dup(),force); } +// @doc EXTERNAL + // @mfunc Elimina un oggetto. +// @rdesc Ritorna il risultato dell'operazione +// +// @flag TRUE | Eliminazione avvenuta +// @flag FALSE | L'oggetto non e' stato trovato bool TAssoc_array::remove( const char* k) // @parm Chiave dell'oggetto da eliminare - // @comm Cerca nella tabella hash l'oggetto con chiave

e lo elimina. - // - // @rdesc Ritorna il risultato dell'operazione - // - // @flag TRUE | Eliminazione avvenuta - // @flag FALSE | L'oggetto non e' stato trovato +// @comm Cerca nella tabella hash l'oggetto con chiave

e lo elimina. + { const TFixed_string key(k); const word hv = key.hash() % HASH_SIZE; @@ -186,16 +189,18 @@ bool TAssoc_array::remove( return FALSE; } +// @doc EXTERNAL + // @mfunc Trova l'oggetto indicizzato +// +// @rdesc Ritorna l'oggetto cercato. Se l'oggetto non viene trovato +// ritorna un errore TObject& TAssoc_array::find( const char* key) // @parm Chiave dell'oggetto da trovare // @comm Cerca l'oggetto indicizzato con chiave

. Viene controllato se // non c'e' (normalmente si usa operator[key]) - // - // @rdesc Ritorna l'oggetto cercato. Se l'oggetto non viene trovato - // ritorna un errore { /* Guy ruined this bool isnew = FALSE; @@ -209,11 +214,13 @@ TObject& TAssoc_array::find( return *o; } +// @doc EXTERNAL + // @mfunc Ritorna l'oggetto con chiave

+// @rdesc Se l'oggetto esiste ne ritorna il puntatore, altrimenti ritorna NULL TObject* TAssoc_array::objptr( const char* key) // @parm Chiave dell'oggetto da ritornare - // @rdesc Se l'oggetto esiste ne ritorna il puntatore, altrimenti ritorna NULL { bool isnew = FALSE; THash_object* o = _lookup(key,isnew); @@ -222,14 +229,17 @@ TObject* TAssoc_array::objptr( return NULL; } +// @doc EXTERNAL + // @mfunc Controlla l'esistenza di una chiave +// +// @rdesc Ritorna il risultato della ricerca +// +// @flag TRUE | Se la chiave esiste +// @flag FALSE | Se la chiave non esiste bool TAssoc_array::is_key( const char* key) // @parm Chiave da cercarne l'esistenza - // @rdesc Ritorna il risultato della ricerca - // - // @flag TRUE | Se la chiave esiste - // @flag FALSE | Se la chiave non esiste { bool isnew = FALSE; const THash_object* o = _lookup(key, isnew); @@ -237,13 +247,15 @@ bool TAssoc_array::is_key( return TRUE; } +// @doc EXTERNAL + // @mfunc Ritorna solo l'oggetto +// +// @rdesc Ritorna il puntatore all'oggetto (se diverso da NULL), altrimenti +// ritorna error object TObject* TAssoc_array::get() - // @rdesc Ritorna il puntatore all'oggetto (se diverso da NULL), altrimenti - // ritorna error object - // - // @xref +// @xref { const TArray* arr = &_data[_row]; @@ -261,14 +273,16 @@ TObject* TAssoc_array::get() return (o == NULL || o->_obj == NULL) ? &error : o->_obj; } +// @doc EXTERNAL + // @mfunc Ritorna l'oggetto e la relativa chiave +// +// @rdesc Se l'oggetto esiste ne ritorna il puntatore, altrimenti ritorna NULL THash_object* TAssoc_array::get_hashobj() // @comm Se l'oggetto viene trovato viene richiamata la funzione // // - // @rdesc Se l'oggetto esiste ne ritorna il puntatore, altrimenti ritorna NULL - // // @xref { const TArray* arr = &_data[_row]; diff --git a/include/assoc.h b/include/assoc.h index e3ca37874..d386ebe37 100755 --- a/include/assoc.h +++ b/include/assoc.h @@ -5,21 +5,24 @@ #include #endif -// @doc EXTERNAL -// +// @doc INTERNAL + // @class THash_object | Classe per la definizione degli elementi di una tabella hash. // // @base public | TObject class THash_object : public TObject + +// @author:(INTERNAL) Guido + { // @cfriend TAssoc_array - friend class TAssoc_array; + friend class TAssoc_array; + + // @access:(INTERNAL) Private Member - // @access Private Member - - // @cmember Chiave d'ordinamento + // @cmember:(INTERNAL) Chiave d'ordinamento TString _key; - // @cmember Oggetto della tabella da ordinare + // @cmember:(INTERNAL) Oggetto della tabella da ordinare TObject* _obj; // @access Public Member @@ -41,27 +44,30 @@ public: }; +// @doc EXTERNAL + // @class TAssoc_array | Tabella hash di oggetti generici // // @base public |TObject class TAssoc_array : public TContainer + +// @author:(INTERNAL) Guido + +//@access:(INTERNAL) Private Member { - - //@access Private Member - - // @ccost HASH_SIZE | 113 | Dimensione della tabella hash + // @ccost:(INTERNAL) HASH_SIZE | 113 | Dimensione della tabella hash enum { HASH_SIZE = 113 }; - // @cmember Numero di oggetti contenuti nella tabella + // @cmember:(INTERNAL) Numero di oggetti contenuti nella tabella word _cnt; - // @cmember Numero di righe della tabella hash + // @cmember:(INTERNAL) Numero di righe della tabella hash word _row; - // @cmember Numero di colonne della tabella hash + // @cmember:(INTERNAL) Numero di colonne della tabella hash word _col; - // @cmember Numero di righe della tabella hash per i metodi _item + // @cmember:(INTERNAL) Numero di righe della tabella hash per i metodi _item int _rowitem; - // @cmember Numero di colonne della tabella hash per i metodi _item + // @cmember:(INTERNAL) Numero di colonne della tabella hash per i metodi _item int _colitem; - // @cmember Array contenente i dati veri e propri + // @cmember:(INTERNAL) Array contenente i dati veri e propri TArray _data[HASH_SIZE]; // @access Protected member @@ -126,15 +132,15 @@ public: void restart() { _row = 0; _col = 0; } - // mette chiavi e opzionalmente valori (come stringa) nel - // TString_array passato + // @cmember Mette chiavi e opzionalmente valori (come stringa) nel passato int get_keys(TString_array& kl, bool add_values = FALSE); // @cmember Costruttore TAssoc_array() : _cnt(0), _row(0), _col(0) {} // @cmember Distruttore - virtual ~TAssoc_array() { destroy(); } + virtual ~TAssoc_array() + { destroy(); } }; #endif diff --git a/include/brwapp.cpp b/include/brwapp.cpp index 61cfb8f3e..df1b2a53c 100755 --- a/include/brwapp.cpp +++ b/include/brwapp.cpp @@ -1,5 +1,3 @@ -// $Id: brwapp.cpp,v 1.4 1995-04-21 10:47:17 nik Exp $ - #include #include #include diff --git a/include/brwapp.h b/include/brwapp.h index a212dfb15..ee6c79e89 100755 --- a/include/brwapp.h +++ b/include/brwapp.h @@ -12,12 +12,12 @@ // @base public | TRelation_application class TBrowse_application : public TRelation_application -// @author(:INTERNAL) Nicola +// @author:(INTERNAL) Nicola { // @access Protected Member protected: - // @cmember Ciclo principale + // @cmember:(INTERNAL) Ciclo principale virtual bool main_loop(); // @access Public Member diff --git a/include/checks.cpp b/include/checks.cpp index 6fb1b1edd..c98efc43f 100755 --- a/include/checks.cpp +++ b/include/checks.cpp @@ -26,14 +26,11 @@ // @doc EXTERNAL - // @msg fatal_box | Crea una finestra di ERRORE FATALE con il relativo messaggio int fatal_box( const char* fmt, ...) // @parm Messaggio da stampare nella finestra // (il formato e' come nella printf del C) - - // @comm Se si opera in ambiente Windows crea la finestra con il bottone OK // Il programma viene interrotto al momento in cui si e' verificato // l'errore. @@ -62,6 +59,7 @@ int fatal_box( return 0; } +// @doc EXTERNAL // @msg error_box | Crea una finestra di ERRORE con il relativo messaggio int error_box( @@ -90,11 +88,12 @@ int error_box( return 0; } +// @doc EXTERNAL // @msg warning_box | Crea una finestra di ATTENZIONE con il relativo messaggio int warning_box( const char* fmt, // @parm Messaggio da stampare nella finestra - ...) // @parmvar Uno o piu' parametri corrispondenti ai codici in

+ ...) // @parmvar Uno o piu' parametri corrispondenti ai codici in

// @comm Se si opera in ambiente Windows crea la finestra con il bottone OK // e l'icona punto di domanda. @@ -112,6 +111,7 @@ int warning_box( return 0; } +// @doc EXTERNAL // @msg message_box | Crea una finestra di INFORMAZIONE con relativo il messaggio int message_box( @@ -132,6 +132,7 @@ int message_box( return 0; } +// @doc EXTERNAL // @msg sorry_box | Crea una finestra di SCUSE con il relativo messaggio int sorry_box( @@ -152,6 +153,7 @@ int sorry_box( return 0; } +// @doc EXTERNAL // @msg yesno_box | Crea una finestra di RICHIESTA con il relativo messaggio int yesno_box( @@ -181,6 +183,7 @@ int yesno_box( #endif } +// @doc EXTERNAL // @msg yesnofatal_box | Crea una finestra di RICHIESTA con il relativo // messaggio, ma permette di terminare il programma @@ -213,6 +216,7 @@ int yesnofatal_box( return FALSE; } +// @doc EXTERNAL // @msg yesnocancel_box | Crea una finestra di RICHIESTA con il relativo messaggio int yesnocancel_box( @@ -251,6 +255,8 @@ int yesnocancel_box( #endif } +// @doc EXTERNAL + // @msg __trace | Permette di mandare dei messaggi nel file trace.log int __trace( const char* fmt, // @parm Messaggio da stampare diff --git a/include/checks.h b/include/checks.h index 6a37dc892..14ac70ca1 100755 --- a/include/checks.h +++ b/include/checks.h @@ -33,8 +33,10 @@ extern "C" { // Utilizzata in fase di debug (definire il simbolo DBG in compilazione). // // @xref + +// @doc EXTERNAL - // @msg CHECKS | Macro che richiama una per stampare messaggi a video +// @msg CHECKS | Macro che richiama una per stampare messaggi a video #define CHECKS(p, m, s0) ( (p) ? (void)0 : (void) fatal_box( \ "Check failed in %s, line %d:\n\r%s%s", \ __FILE__, __LINE__, m, s0) ) @@ -47,8 +49,10 @@ extern "C" { // Utilizzata in fase di debug (definire il simbolo DBG in compilazione). // // @xref + +// @doc EXTERNAL - // @msg CHECKD | Macro che richiama una per stampare messaggi a video +// @msg CHECKD | Macro che richiama una per stampare messaggi a video #define CHECKD(p, m, d0) ( (p) ? (void)0 : (void) fatal_box( \ "Check failed in %s, line %d:\n%s%d", \ __FILE__, __LINE__, m, d0) ) @@ -73,6 +77,8 @@ extern "C" { // Utilizzata in fase di debug (definire il simbolo TRC in compilazione) #ifdef TRC +// @doc EXTERNAL + // @msg TRACE | Macro che richiama la funzione #define TRACE __trace #else diff --git a/include/confapp.cpp b/include/confapp.cpp index 87c8c85c7..8e6b89502 100755 --- a/include/confapp.cpp +++ b/include/confapp.cpp @@ -6,8 +6,6 @@ #define comunque -// @doc EXTERNAL - bool TConfig_application::create() { TApplication::create(); @@ -145,6 +143,8 @@ bool TConfig_application::postprocess_config (TMask& mask, TConfig& config) return TRUE; } +// @doc EXTERNAL + // @mfunc Simile alla , ma viene usata // dalla maschera principale. // @@ -154,12 +154,12 @@ bool TConfig_application::postprocess_config (TMask& mask, TConfig& config) // @flag FALSE | Se la modifica non viene accettata bool TConfig_application::postprocess_config_changed( const char* par, // @parm Paragrafo in corso di editing - const char* var, // @parm vedi TApplication!!! - const char* oldv, // @parm vedi TApplication!!! - const char* newv) // @parm vedi TApplication!!! + const char* var, // @parm vedi + const char* oldv, // @parm vedi + const char* newv) // @parm vedi // @comm Rispetto alla le viene passato in piu' il paragrafo -// in corso di editing. E' chiamata per ogni parametro modificato +// in corso di editing. E' chiamata per ogni parametro modificato. { return TRUE; diff --git a/include/confapp.h b/include/confapp.h index e1a619a89..71a72dc92 100755 --- a/include/confapp.h +++ b/include/confapp.h @@ -41,23 +41,23 @@ class TConfig_application : public TApplication // che agisce come la . // La voce Scelta parametri di rimane come prima. -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Array di paragrafi da editare + // @cmember:(INTERNAL) Array di paragrafi da editare TArray _paragraphs; - // @cmember Numero del file di configurazione da modificare + // @cmember:(INTERNAL) Numero del file di configurazione da modificare int _which_config; - // @cmember Ultima voce di menu' selezionata + // @cmember:(INTERNAL) Ultima voce di menu' selezionata MENU_TAG _last_choice; - // @cmember Crea la finestra principale (vedi ) + // @cmember:(INTERNAL) Crea la finestra principale (vedi ) virtual bool create(); - // @cmember Rimuove l'applicazione (vedi ) + // @cmember:(INTERNAL) Rimuove l'applicazione (vedi ) virtual bool destroy(); - // @cmember Controlla il menu' (vedi ) + // @cmember:(INTERNAL) Controlla il menu' (vedi ) virtual bool menu(MENU_TAG); - // @cmember Permette di modificare la configurazione del paragrafo

+ // @cmember:(INTERNAL) Permette di modificare la configurazione del paragrafo

void do_config(int m); // @access Protected Member @@ -75,7 +75,7 @@ protected: virtual bool postprocess_config (TMask& mask, TConfig& config); // @cmember Simile alla , ma viene usata - // dalla maschera principale. + // dalla maschera principale. virtual bool postprocess_config_changed (const char* par, const char* var, const char* oldv, const char* newv); // @access Public Member diff --git a/include/config.cpp b/include/config.cpp index bdf6d46c5..5cab3017b 100755 --- a/include/config.cpp +++ b/include/config.cpp @@ -14,7 +14,7 @@ extern "C" int rename(const char*, const char*); }; -// @doc INTERNAL +// @doc EXTERNAL // @mfunc Legge i dati del paragrafo // @@ -63,6 +63,8 @@ bool TConfig::_read_paragraph() return itwas; } +// @doc EXTERNAL + // @mfunc Scrive i dati del paragrafo void TConfig::_write_paragraph( ofstream& out) // @parm Indirizzo dell'utput sul quale scrivere il paragrafo @@ -125,8 +127,6 @@ void TConfig::_write_file() remove(temp); // Cancella file temporaneo } -// @doc EXTERNAL - void TConfig::set_paragraph(const char* section) { if (section != NULL && section != _paragraph) @@ -138,6 +138,8 @@ void TConfig::set_paragraph(const char* section) } } +// @doc EXTERNAL + // @mfunc Controlla se esite una variabile nel paragrafo attivo // // @rdesc Ritorna i seguenti valori: @@ -161,6 +163,8 @@ bool TConfig::exist( return _data.is_key(var); } +// @doc EXTERNAL + // @mfunc Ritorna il valore della variabile nella sezione corrente o in // quella specificata // @@ -203,6 +207,8 @@ TString& TConfig::get( return s; } +// @doc EXTERNAL + // @mfunc Ritorna il valore della variabile nella sezione corrente o in // quella specificata // @@ -230,6 +236,9 @@ long TConfig::get_long( return def; } + +// @doc EXTERNAL + // @mfunc Ritorna il valore della variabile nella sezione corrente o in // quella specificata // @@ -257,6 +266,7 @@ char TConfig::get_char( return def; } +// @doc EXTERNAL // @mfunc Ritorna il valore della variabile nella sezione corrente o in // quella specificata @@ -281,6 +291,7 @@ int TConfig::get_int( return (int)get_long(var, section, index, def); } +// @doc EXTERNAL // @mfunc Ritorna il valore della variabile nella sezione corrente o in // quella specificata @@ -319,6 +330,8 @@ HIDDEN void RGB_COLOR(COLOR c, int& r, int& g, int& b) b = int(c) & 0xFF; } +// @doc EXTERNAL + // @mfunc Ritorna il valore del colore settato nella variabile nella // sezione corrente o in quella specificata COLOR TConfig::get_color( @@ -351,6 +364,8 @@ COLOR TConfig::get_color( return def; } +// @doc EXTERNAL + // @mfunc Setta la variabile nella sezione corrente o specificata // // @rdesc Ritorna i seguenti valori: @@ -396,6 +411,8 @@ bool TConfig::set(const char* var, long value, const char* section, return set(var,t,section,force,index); } +// @doc EXTERNAL + // @mfunc Ritorna quanti elementi dell'array nominato sono presenti nella // sezione indicata. word TConfig::items( @@ -416,7 +433,7 @@ word TConfig::items( return cnt; } -// @doc INTERNAL +// @doc EXTERNAL // @mfunc Inizializza il paragrafo leggendo dal file i dati void TConfig::init( @@ -478,8 +495,6 @@ int TConfig::list_variables(TString_array& vl, bool value, const char* section) } -// @doc EXTERNAL - TConfig::TConfig(int which_config, const char* paragraph) { switch (which_config) diff --git a/include/config.h b/include/config.h index ea2f88427..5a010449b 100755 --- a/include/config.h +++ b/include/config.h @@ -9,8 +9,6 @@ #include #endif -// @doc EXTERNAL - class ofstream; // questo sara' il principale, per ora non c'e' @@ -28,12 +26,15 @@ class ofstream; // file parametri golem #define CONFIG_GOLEM 6 +// @doc EXTERNAL + // @class TConfig | Classe per la gestione dei file di configurazione in formato // Windows // // @base public | TObject class TConfig : public TObject -{ + +// @author:(INTERNAL) Villa // @comm Sono definite alcune costanti per l'individuazione immediata di // alcuni file particolari e di frequente uso. Tali file sono: @@ -47,17 +48,18 @@ class TConfig : public TObject // @flag CONFIG_STAMPE | File parametri stampe // @flag CONFIG_GOLEM | File parametri golem - // @access Private Member + // @access:(INTERNAL) Private Member +{ - // @cmember Contenuto del paragrafo + // @cmember:(INTERNAL) Contenuto del paragrafo TAssoc_array _data; - // @cmember Nome del file di configurazione + // @cmember:(INTERNAL) Nome del file di configurazione TFilename _file; - // @cmember Indica se il file??? e' presente (TRUE se esiste) + // @cmember:(INTERNAL) Indica se il paragrafo e' stato modificato (TRUE se esiste) bool _dirty; - // @cmember Indica se il paragrafo e' presente (TRUE se esiste) + // @cmember:(INTERNAL) Indica se il paragrafo e' presente (TRUE se esiste) bool _ispresent; - // @cmember Nome del paragrafo attivo + // @cmember:(INTERNAL) Nome del paragrafo attivo TString _paragraph; // @access Protected Member diff --git a/include/controls.cpp b/include/controls.cpp index 7b7657897..cace2809e 100755 --- a/include/controls.cpp +++ b/include/controls.cpp @@ -17,8 +17,6 @@ extern "C" #define STRICT #include -// @doc INTERNAL - /////////////////////////////////////////////////////////// // TPicture_array /////////////////////////////////////////////////////////// @@ -138,6 +136,8 @@ void xvt_draw_rect(WINDOW win, const RCT& rect, COLOR lt, COLOR rb, short depth) } } +// @doc INTERNAL + // @mfunc Crea il controllo void TControl::create( short left, // @parm Coordinata X di posizionamento (in pixel) @@ -303,6 +303,8 @@ long XVT_CALLCONV1 TControl::handler(WINDOW win, EVENT* ep) return 0L; } +// @doc INTERNAL + // @mfunc Abilita/disabilita il controllo void TControl::enable( bool on) // @parm Operazione da svolgere sul controllo: @@ -317,6 +319,8 @@ void TControl::enable( } } +// @doc INTERNAL + // @mfunc Setta se il controllo debba avere un check void TControl::check( bool on) // @parm Puo' assumere i seguenti valori: @@ -975,6 +979,8 @@ void TCheckbox::update() const // User functions /////////////////////////////////////////////////////////// +// @doc INTERNAL + // @func Permette di creare un Checkbox // // @rdesc Ritorna l'handle del controllo creato @@ -1000,6 +1006,8 @@ WINDOW xvt_create_checkbox( return cb->win(); } +// @doc INTERNAL + // @func Permette di creare un Radiobutton // // @rdesc Ritorna l'handle del controllo creato @@ -1025,6 +1033,7 @@ WINDOW xvt_create_radiobutton( return cb->win(); } +// @doc INTERNAL // @func Permette di creare un qualsiasi Bottone premibile // @@ -1067,6 +1076,7 @@ WINDOW xvt_create_pushbutton( return pb->win(); } +// @doc INTERNAL // @func Permette di creare un campo di solo Testo // @@ -1091,6 +1101,7 @@ WINDOW xvt_create_text( return cb->win(); } +// @doc INTERNAL // @func Permette di creare un Groupbox // @@ -1115,6 +1126,8 @@ WINDOW xvt_create_groupbox( return cb->win(); } +// @doc INTERNAL + // @func Dealloca le bitmab utilizzate per i controlli void free_controls_bmp() { diff --git a/include/controls.h b/include/controls.h index 1a1526675..811f06459 100755 --- a/include/controls.h +++ b/include/controls.h @@ -57,26 +57,26 @@ void free_controls_bmp(); class TControl // @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Handle del controllo creato + // @cmember:(INTERNAL) Handle del controllo creato WINDOW _win; - // @cmember Iedntificatore assegnato al cotrollo + // @cmember:(INTERNAL) Iedntificatore assegnato al cotrollo short _id; - // @cmember Prompt del controllo + // @cmember:(INTERNAL) Prompt del controllo TString _caption; - // @cmember Colore di foreground del controllo + // @cmember:(INTERNAL) Colore di foreground del controllo COLOR _color; - // @cmember Colore di background del controllo + // @cmember:(INTERNAL) Colore di background del controllo COLOR _backcolor; - // @cmember Indica se il controllo e' disabilitato + // @cmember:(INTERNAL) Indica se il controllo e' disabilitato bool _disabled : 1; - // @cmember Indica se il controllo ha un check + // @cmember:(INTERNAL) Indica se il controllo ha un check bool _checked : 1; - // @cmember Indica se il controllo ha il focus + // @cmember:(INTERNAL) Indica se il controllo ha il focus bool _focused : 1; - // @cmember Indica varie cose a seconda del tipo di controllo she si sta utilizzando + // @cmember:(INTERNAL) Indica varie cose a seconda del tipo di controllo she si sta utilizzando bool _multiple : 1; // @access Protected Member diff --git a/include/date.cpp b/include/date.cpp index 1f6f55d00..596b0f015 100755 --- a/include/date.cpp +++ b/include/date.cpp @@ -20,8 +20,6 @@ // Utility functions /////////////////////////////////////////////////////////// -// @doc EXTERNAL - HIDDEN TDate __tmp_date; HIDDEN char __date_tmp_string[128]; HIDDEN const byte _days_in_month[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; @@ -229,6 +227,8 @@ void TDate::read_from(istream& in) _val = d._val; } +// @doc EXTERNAL + // @mfunc Ritorna la data in formato di stringa (anche in formato ANSI) // // @rdesc Se si tratta di una data valida ritorna la stringa secondo il @@ -455,6 +455,7 @@ bool TDate::ok() const return _val > 0; } +// @doc EXTERNAL // @func TDate& | operator + | Incrementa la data di un certo numero di giorni TDate& operator +( @@ -479,6 +480,7 @@ TDate& operator +(const long nday, const TDate& b) return __tmp_date; } +// @doc EXTERNAL // @func TDate& | operator - | Decrementa la data di un certo numero di giorni TDate& operator -( @@ -490,6 +492,8 @@ TDate& operator -( return __tmp_date; } +// @doc EXTERNAL + // @func TDate& | operator - | Calcola la differenza tra due date long operator -( const TDate& a, // @parm Data da decrementare @@ -499,6 +503,8 @@ long operator -( return diff; } +// @doc EXTERNAL + // @func Scambia la data

con la data

void swap( TDate& a, // @parm Prima data da scambiare @@ -510,6 +516,7 @@ void swap( a = __tmp_date; } +// @doc EXTERNAL // @func Ritorna la data piu' piccola tra

e

const TDate& fnc_min( @@ -521,6 +528,8 @@ const TDate& fnc_min( else return b; } +// @doc EXTERNAL + // @func Ritorna la data piu' grande tra

e

const TDate& fnc_max( const TDate& a, // @parm Prima data da confrontare @@ -553,8 +562,9 @@ TFormatted_date::TFormatted_date(const TFormatted_date& d) set_format(d._format); } -// @mfunc Permette di stabilire il criterio di formattazione delle date +// @doc EXTERNAL +// @mfunc Permette di stabilire il criterio di formattazione delle date void TFormatted_date::set_format( const char* f) // @parm Stringa di 5 caratteri che indica il formato della data @@ -604,6 +614,8 @@ const char* TFormatted_date::string() const // Utility functions /////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @func Converte un numero da 1 a 12 nel corrispondente mese const char* itom( byte m) // @parm Numero del mese da convertire in parole (da 1 a 12) @@ -620,6 +632,8 @@ const char* itom( return nomi[(m-1) % 12]; } +// @doc EXTERNAL + // @func Ritorna il nome del giorno (1-7) const char* itow( byte d) // @parm Numero del giorna da convertire in parole (da 1 a 7) diff --git a/include/date.h b/include/date.h index 95640365d..23b5e28be 100755 --- a/include/date.h +++ b/include/date.h @@ -20,6 +20,8 @@ enum TDate_order { g_date, // @emem Solo Giorno ma_date }; // @emem Mese-Anno +// @doc EXTERNAL + // @enum TDate_mgafmt | Criterio col quale visualizzare le date enum TDate_mgafmt { ANSI = -1, // @emem Formato ANSI @@ -30,14 +32,19 @@ enum TDate_mgafmt { quarter = 7, // @emem Formato trimestrale def = 99 }; // @emem Formato standard +// @doc EXTERNAL + // @class TDate | Classe per la gestione delle date // // @base public | TObject class TDate : public TObject -{ - // @access Private Member - // @cmember Valore data in formato packed +// @author:(INTERNAL) Guido + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Valore data in formato packed long _val; // @access Protected Member @@ -63,9 +70,9 @@ protected: public: // @cmember Ritorna la data in formato di stringa (anche in formato ANSI) char* string(TDate_mgafmt year = full, char sep = '-', TDate_mgafmt day = full, TDate_mgafmt month = full, TDate_order ord = gma_date) const ; - // @cmember Trasforma la data da odierna ??? a ??? + // @cmember Trasforma la data da formato data a numero giuliano long date2julian() const; - // @cmember Trasforma la data da ??? a ??? + // @cmember Trasforma la data da numero giulizno a fomato data long julian2date(long julian) const; // @cmember Ritorna il giorno @@ -140,14 +147,20 @@ public: TDate(int day, int month, int year); }; + +// @doc EXTERNAL + // @class TFormatted_date | Classe per la definizione di date con un formato // // @base public | TDate class TFormatted_date : public TDate -{ - // @access Private Member - // @cmember Formato per tutti i pezzettini +// @author:(INTERNAL) Guido + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Formato per tutti i pezzettini char _format[5]; // @access Public Member @@ -180,6 +193,8 @@ TDate& operator +(const long nday, const TDate& b) ; TDate& operator -(const TDate& a, long nday) ; long operator -(const TDate& a, const TDate& b) ; +// @doc EXTERNAL + // @func inline bool | operator | Controlla se una data e' minore di un'altra // // @rdesc Ritorna i seguenti valori @@ -191,6 +206,8 @@ inline bool operator <( const TDate& b) // @parm Secondo data da confrontare { return a._val < b._val;} +// @doc EXTERNAL + // @func inline bool | operator | Controlla se una data e' maggiore di un'altra // // @rdesc Ritorna i seguenti valori @@ -202,6 +219,8 @@ inline bool operator >( const TDate& b) // @parm Secondo data da confrontare { return a._val > b._val;} +// @doc EXTERNAL + // @func inline bool | operator = | Controlla se una data e' minore o ugaule ad un'altra // // @rdesc Ritorna i seguenti valori @@ -213,6 +232,8 @@ inline bool operator <=( const TDate& b) // @parm Secondo data da confrontare { return a._val <= b._val;} +// @doc EXTERNAL + // @func inline bool | operator = | Controlla se una data e' maggiore o uguale ad un'altra // // @rdesc Ritorna i seguenti valori @@ -224,6 +245,8 @@ inline bool operator >=( const TDate& b) // @parm Secondo data da confrontare { return a._val >= b._val;} +// @doc EXTERNAL + // @func inline bool | operator == | Controlla se 2 date sono uguali // // @rdesc Ritorna i seguenti valori @@ -235,6 +258,8 @@ inline bool operator ==( const TDate& b) // @parm Secondo data da confrontare { return a._val == b._val;} +// @doc EXTERNAL + // @func inline bool | operator != | Controlla se 2 date sono diverse // // @rdesc Ritorna i seguenti valori diff --git a/include/execp.cpp b/include/execp.cpp index a774ec35c..11dc231f6 100755 --- a/include/execp.cpp +++ b/include/execp.cpp @@ -42,7 +42,12 @@ bool TExternal_app::can_run() const #endif } + +// @doc EXTERNAL + // @mfunc Esegue il processo +// +// @rdesc Ritorna il codice di uscita del processo (-1 in caso di errore). int TExternal_app::run( bool async, // @parm Per eseguire il processo in parallelo (default FALSE) bool utente) // @parm Permette di inserire il nome dell'utente nella riga diff --git a/include/execp.h b/include/execp.h index 91b63d62a..d1509e4d2 100755 --- a/include/execp.h +++ b/include/execp.h @@ -12,20 +12,23 @@ // @base public | TObject class TExternal_app : public TObject +// @author:(INTERNAL) Villa + // @comm Gli oggetti eseguiti dalla presente classe possono essere eseguiti // in background in tutti gli ambienti, oppure in modo sincrono. // Non sono implementate linee di comando; si suppone che l'utente // utilizzi la mailbox per questo. -{ - // @access Private Member - // @cmember Nome dell'applicazione (deve essere allocata dall'utente) +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Nome dell'applicazione (deve essere allocata dall'utente) const char* _path; - // @cmember Ultimo errore (codice dell'errore) + // @cmember:(INTERNAL) Ultimo errore (codice dell'errore) int _error; - // @cmember Ultimo exit code + // @cmember:(INTERNAL) Ultimo exit code int _exitcode; - // @cmember Numero di chiamate + // @cmember:(INTERNAL) Numero di chiamate int _count; // @access Public Member diff --git a/include/expr.h b/include/expr.h index 366175009..754e94c5c 100755 --- a/include/expr.h +++ b/include/expr.h @@ -55,22 +55,28 @@ enum TCodesym { _round, // @emem Arrotondamento _ansi } ; // @emem Data in ansi - // @enum TTypeesp | Tipi di espressioni definiti +// @doc INTERNAL + + // @enum TTypeexp | Tipi di espressioni definiti enum TTypeexp { _numexpr, // @emem Espressione numerica _strexpr } ; // @emem Espressione in lettere + +// @doc INTERNAL // @class TValue | Classe per la definizione dei valori che possono essere assunti // dai termini di una espressione o il valore dell'espressione stessa // // @base public | TObject class TValue : public TObject + +// @author:(INTERNAL) Sandro { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Valore real + // @cmember:(INTERNAL) Valore real real _r; - // @cmember Valore in formato stringa + // @cmember:(INTERNAL) Valore in formato stringa TString _s; // @access Public Member @@ -115,17 +121,22 @@ extern TValue nulltvalue; #undef extern +// @doc INTERNAL + // @class TCode | Classe per la ridefinizione di una espressione in // notazione polacca inversa (RPN) // // @base public | TObject class TCode : public TObject -{ - // @access Private Member - // @cmember Simbolo-istruzione-codice +// @author:(INTERNAL) Sandro + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Simbolo-istruzione-codice TCodesym _sym; - // @cmember Valore + // @cmember:(INTERNAL) Valore TValue _val; // @access Public Member @@ -138,7 +149,7 @@ public: // @cmember Ritorna il simbolo TCodesym getsym() const { return _sym;} - // @cmember Ritorna il valore come real + // @cmember Ritorna il valore come const real& number() const { return _val.number();} // @cmember Ritorna il valore come stringa @@ -148,6 +159,7 @@ public: // @cmember Costruttore, inizializza simbolo con "invalid", valore a nullvalue TCode() {set(_invalid);} + // @cmember Costruttore TCode(TCodesym sym, const TValue& val = nulltvalue) // @cmember Costruttore, inizializza simbolo con

e valore con

{ set(sym, val);} @@ -156,19 +168,24 @@ public: {} }; +// @doc INTERNAL + // @class TCodearray | Classe per la definizione di un array di istruzioni da valutare // passo per passo in una espressione // // @base public | TObject class TCodearray : public TObject -{ - // @access Private Member - // @cmember Numero di istruzioni +// @author:(INTERNAL) Sandro + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Numero di istruzioni int _last; - // @cmember Puntatore all'istruzione corrente (Istruction pointer) + // @cmember:(INTERNAL) Puntatore all'istruzione corrente (Istruction pointer) int _ip; - // @cmember Array + // @cmember:(INTERNAL) Array TArray _rpn; // @access Public Member @@ -197,23 +214,26 @@ public: {} }; +// @doc INTERNAL + // @class TVar | Classe per la definizione delle variabile delle espressioni // // @base public | TObject class TVar : public TObject -{ - // @access Private Member - // @cmember Nome della variabile +// @author:(INTERNAL) Sandro + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Nome della variabile TString _name; - // @cmember Valore assegnato alla variabile + // @cmember:(INTERNAL) Valore assegnato alla variabile TValue _val; // @access Public Member public: - // #DES Operatore = tra vari oggetti - // #FPUB // @cmember Assegnamento di una stringa all'oggetto Tval const char* operator =(const char* val) { _val.set(val); return val;} @@ -236,7 +256,7 @@ public: const char* getname() const { return _name;} - // @cmember Ritorna _val (un TValue) + // @cmember Ritorna iv valore assgnato alla variabile (un ) operator TValue&() { return _val;} // @cmember Ritorna il valore real della variabile @@ -260,17 +280,22 @@ public: {} }; +// @doc INTERNAL + // @class TVararray | Classe per la definizione di un array di variabili da // valutare nell'esspressione // // @base public | TObject class TVararray : public TObject -{ - // @access Private Member - // @cmember Numero di variabili +// @author:(INTERNAL) Sandro + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Numero di variabili int _last; - // @cmember Array + // @cmember:(INTERNAL) Array TArray _array; // @access Public Member @@ -326,20 +351,23 @@ public: // // @base public | TObject class TExpression : public TObject -{ - // @access Provate Member - // @cmember Array di codice +// @author:(INTERNAL) Sandro + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Array di codice TCodearray _code; - // @cmember Array di variabili + // @cmember:(INTERNAL) Array di variabili TVararray _var; - // @cmember Valore dell'espressione + // @cmember:(INTERNAL) Valore dell'espressione TValue _val; - // @cmember TRUE se l'espressione e' stata modificata + // @cmember:(INTERNAL) TRUE se l'espressione e' stata modificata bool _dirty; - // @cmember Tipo dell'espressione + // @cmember:(INTERNAL) Tipo dell'espressione TTypeexp _type; - // @cmember Stringa originale + // @cmember:(INTERNAL) Stringa originale TString _original; // @access Protected Member @@ -362,7 +390,7 @@ protected: // TObject // @cmember Stampa l'espressione su

(serve per implementare l'insertore) virtual void print_on(ostream& out) const ; - // @access Protected Member + // @access Public Member public: // @cmember operator const | real& | | Ritorna il valore real dell'espressione operator const real&(); @@ -379,8 +407,8 @@ public: // @cmember Ritorna il tipo dell'espressione const TTypeexp type() const { return _type; } - TCodearray& code() const - // @cmember Ritorna l'array del codice + // @cmember Ritorna l'array del codice + TCodearray& code() const { return (TCodearray&)_code; } // @cmember Ritorna l'array di variabili const TVararray& vars() const diff --git a/include/files.cpp b/include/files.cpp index f974c449b..6bd3c3f81 100755 --- a/include/files.cpp +++ b/include/files.cpp @@ -17,8 +17,6 @@ #define BLOCKLEN 512 #define INVFLD 255 -// @doc EXTERNAL - HIDDEN char _files_tmp_string[128]; TFile::TFile (int lenrec, int base) @@ -40,6 +38,8 @@ TFile::~TFile () delete _file; } +// @doc EXTERNAL + // @mfunc Apre il file specificato void TFile::open ( const char *name, // @parm Nome del file da aprire @@ -56,6 +56,8 @@ bool TFile::verify (const char *name) return _file->IOR == NOERR; } +// @doc EXTERNAL + // @mfunc Crea il file specificato void TFile::create ( const char *name, // @parm Nome del file da creare @@ -86,6 +88,8 @@ void TFile::unlink (const char *name) CDelete (_file, (char *) name); } +// @doc EXTERNAL + // @mfunc Legge un record dal file void TFile::read ( char *record, // @parm Record letto @@ -98,6 +102,8 @@ void TFile::read ( CRead (_file, record, recnum, lock); } +// @doc EXTERNAL + // @mfunc Scrive un record sul file void TFile::write ( char *record, // @parm Record da scrivere @@ -229,6 +235,8 @@ void TDir::set (const char *name, const RecNoType eod, const RecNoType flag, con strncpy (_dir->FCalc, calc, sizeof (_dir->FCalc)); } +// @doc EXTERNAL + // @mfunc Aggiorna l'oggetto TDir con i parametri del file void TDir::get ( int nfile, // @parm Numero del file con cui aggiornare l'oggetto @@ -247,6 +255,8 @@ void TDir::get ( _com = _dir->SysName[0] != '$'; } +// @doc EXTERNAL + // @mfunc Aggiorna il file indicato con i parametri passati void TDir::put ( int nfile, // @parm Numero del file da aggiornare @@ -269,7 +279,14 @@ void TDir::zero () zerofdes (_dir); } -int TDir::items (TDirtype dirtype) const + +// @doc EXTERNAL + +// @mfunc Ritorna il numero di file presenti nella directory

+// +// @rdesc Ritorna il numero di file presenti +int TDir::items ( + TDirtype dirtype) const // @parm Directory della quale contare i file { FileDes f; @@ -315,6 +332,8 @@ TTrec & TTrec::operator = (const TTrec & b) return *this; } +// @doc EXTERNAL + // @mfunc Assegna all'oggetto TTrec il tracciato record del file indicato void TTrec::get ( int nfile, // @parm Numero del file da cui estrarre il tracciato record @@ -327,6 +346,8 @@ void TTrec::get ( _num = nfile; } +// @doc EXTERNAL + // @mfunc Setta il file indicato con il tracciato record dell'oggetto void TTrec::put ( int nfile, // @parm Numero del file di cui settare il tracciato record diff --git a/include/files.h b/include/files.h index 3b614806a..56228a23e 100755 --- a/include/files.h +++ b/include/files.h @@ -24,14 +24,17 @@ // // @base public | TObject class TFile : public TObject -{ - // @access Private Member - // @cmember Descrittore del file +// @author:(INTERNAL) Sandro + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Descrittore del file SecDef* _file; - // @cmember Lunghezza del record + // @cmember:(INTERNAL) Lunghezza del record int _len; - // @cmember Offset iniziale del file in settori + // @cmember:(INTERNAL) Offset iniziale del file in settori int _base; // @access Public Member @@ -63,7 +66,9 @@ public: // @cmember Controlla che non vi siano errori nel file aperto (TRUE se tutto normale) bool ok() const { return status() == NOERR; } - bool error() const { return status() != NOERR; } + // @cmember Controlla se vi sono errori nel file aperto (TRUE se non ci sono errori) + bool error() const + { return status() != NOERR; } // @cmember Costruttore TFile(int lenrec = 0, int base = 0); @@ -71,18 +76,24 @@ public: virtual ~TFile(); }; + +// @doc EXTERNAL + // @class TDir | Classe per la gestione del file "dir.gen" // // @base public | TObject class TDir : public TObject -{ - // @access Private Member - // @cmember Descrittore del file +// @author:(INTERNAL) Sandro + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Descrittore del file FileDes* _dir; - // @cmember Numero di file presenti + // @cmember:(INTERNAL) Numero di file presenti int _num; - // @cmember Appartenenza al direttorio comune (TRUE) o a quello della ditta + // @cmember:(INTERNAL) Appartenenza al direttorio comune (TRUE) o a quello della ditta bool _com; // @access Public Member @@ -126,6 +137,7 @@ public: // @cmember Ritorna il numero di file presenti int num() const { return _num;} + // @cmember Ritorna il numero di file presenti nella directory

int items(TDirtype dirtype = _nordir) const; // @cmember Ritorna il descrittore del file "dir.gen" FileDes* filedesc() const @@ -152,16 +164,22 @@ public: virtual ~TDir(); }; + +// @doc EXTERNAL + // @class TTrec | Classe per le gestione dei tracciati record dei file // // @base public | TSortable class TTrec : public TSortable -{ - // @access Private Member - // @cmember Descrittore del tracciato record +// @author:(INTERNAL) Sandro + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Descrittore del tracciato record RecDes* _rec; - // @cmember Numero del file di appartenenza + // @cmember:(INTERNAL) Numero del file di appartenenza int _num; // @access Protected Member @@ -184,6 +202,7 @@ public: // @cmember Ritorna il numero del file int num() const { return _num;} + // @cmember Ritorna il numero del campo

int field(const char* fieldname) const; // @cmember Ritorna il descrittore del tracciato record RecDes* rec() const diff --git a/include/form.cpp b/include/form.cpp index 292c10884..4ab5c9ffb 100755 --- a/include/form.cpp +++ b/include/form.cpp @@ -39,7 +39,6 @@ HIDDEN const int frm_id = 113; // Utility functions /////////////////////////////////////////////////////////// -// @doc EXTERNAL // Current form (edit, print) HIDDEN TForm* _cur_form = NULL; @@ -64,12 +63,16 @@ HIDDEN TMask& special_mask() return *_special_mask; } + +// @doc INTERNAL + // @func Funzione che converte dalla notazione carattere al corrispondente // enum // // @rdesc Ritorna il corrispondente pagetype char2page( char c) // @parm Notazione carattere del tipo di pagina + { pagetype pt; switch(c) @@ -577,6 +580,8 @@ void TForm_item::print_on(TRectype& prof) } } +// @doc EXTERNAL + // @mfunc Abilita/Disabilita il campo void TForm_item::enable( bool on) // @parm Operazione da svolgere sul campo: @@ -635,6 +640,8 @@ TToken_string& TForm_item::message(int m) return *t; } +// @doc EXTERNAL + // @mfunc Manda il messaggio al campo

void TForm_item::send_message( const TString& cmd, // @parm Messaggio di comando @@ -2196,6 +2203,8 @@ bool TPrint_section::update() return ok; } +// @doc EXTERNAL + // @mfunc Legge dal record

altezza e offset prima colonna della sezione // // @rdesc Ritorna se i valori letti hanno modificato quelli attuali @@ -2548,6 +2557,8 @@ bool TPrint_section::detail_field_notify (TSheet_field& s, int r, KEY k) return TRUE; } +// @doc EXTERNAL + // @mfunc Esegue l'edit della sezione di stampa // // @rdesc Ritorna TRUE se e' stata modificata effettivamente @@ -3007,6 +3018,8 @@ void TForm::print_general(ostream& out) const out << "END\n" << endl; } +// @doc EXTERNAL + // @mfunc Controlla se esiste una sezione di stampa // // @rdesc Ritorna la trovata o creata @@ -3069,6 +3082,9 @@ TPrint_section& TForm::section(char s, word pagenum) return section(s, pt); } + +// @doc EXTERNAL + // @mfunc Rilegge la sezione specificata // // @rdesc Ritorna se ce l'ha fatta @@ -3139,6 +3155,8 @@ bool TForm::reread( // TForm /////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @mfunc Cambia il formato di tutte le date nel form // // @rdesc Ritorna sempre TRUE @@ -3168,6 +3186,8 @@ bool TForm::ps_change_date_format( return TRUE; } +// @doc EXTERNAL + // @mfunc Cambia il formato di tutti i numeri nel form // // @rdesc Ritorna sempre TRUE @@ -3225,6 +3245,8 @@ void TForm::change_number_format(int w, int dec, const char* p) if ((ps = exist(secs[sc], char2page(ptyp[pt]), FALSE)) != NULL) ps_change_number_format(*ps, w, dec, p); } + +// @doc EXTERNAL // @mfunc Effettua l'update della sezione grafica background // @@ -3247,11 +3269,13 @@ word TForm::set_background( return len; } +// @doc EXTERNAL + // @mfunc Effettua l'update della sezione header // // @rdesc Ritorna l'altezza dell'header settato word TForm::set_header( - word p, // @parm !!! + word p, // @parm Numero pagina bool u) // @parm Indica se cambiare l'eventuale header corrente!!! // @xref @@ -3274,11 +3298,13 @@ word TForm::set_header( return head.height(); } +// @doc EXTERNAL + // @mfunc Effettua l'update della sezione body // // @rdesc Ritorna l'altezza del body settato word TForm::set_body( - word p, // @parm !!! + word p, // @parm Numero pagina bool u) // @parm Indica se cambiare l'eventuale body corrente!!! // @xref @@ -3299,11 +3325,13 @@ word TForm::set_body( return body.height(); } +// @doc EXTERNAL + // @mfunc Effettua l'update della sezione footer // // @rdesc Ritorna l'altezza del footer settato word TForm::set_footer( - word p, // @parm !!! + word p, // @parm Numero pagina bool u) // @parm Indica se cambiare l'eventuale footer corrente!!! // @xref @@ -3343,6 +3371,7 @@ void TForm::footer_handler(TPrinter& p) form().set_header(page+1, FALSE); } +// @doc EXTERNAL // @mfunc Ritorna il numero di pagina correntemente in stampa // @@ -3355,6 +3384,8 @@ word TForm::page( return _lastpage ? 0 : p.getcurrentpage(); } +// @doc EXTERNAL + // @mfunc Effettua il posizionamento manuale del modulo void TForm::arrange_form() @@ -3436,6 +3467,8 @@ long TForm::records() const return r; } +// @doc EXTERNAL + // @mfunc Genera automaticamente la sezione grafica con colonne fincate // // @rdesc Ritorna FALSE se non c'e' il body per quella pagina @@ -3525,6 +3558,8 @@ bool TForm::genera_fincatura( return TRUE; } +// @doc EXTERNAL + // @mfunc Genera le righe di intestazione colonna alla riga indicata, vale per COLUMNWISE // // @rdesc Ritorna FALSE se non esiste body (o non e' COLUMNWISE) o se non esiste l'header @@ -3631,6 +3666,8 @@ void TForm::remove_examples(char sez, pagetype p) } */ +// @doc EXTERNAL + // @mfunc Stampa gli items da

a

// // @rdesc Ritorna se ha effettuato correttamente la stampa @@ -3812,6 +3849,8 @@ word TForm::height(word page) return h; } +// @doc EXTERNAL + // @mfunc Legge un profilo // // @rdesc Ritorna se e' riuscito nell'operazione: @@ -3971,6 +4010,8 @@ void TForm::init() _background_mode = printer().isgraphics() ? graphics : testo; } +// @doc EXTERNAL + // @mfunc Carica il form dal file specificato void TForm::read( const char* name, // @parm Nome del profilo di stampa da leggere diff --git a/include/form.h b/include/form.h index 20aeac745..6984cf190 100755 --- a/include/form.h +++ b/include/form.h @@ -37,6 +37,8 @@ enum pagetype { first_page, // @emem Prima pagina last_page }; // @emem Ultima pagina +// @doc INTERNAL + // @enum bkg_mode | Tipo di background presente nella stampa enum bkg_mode { none, // @emem Nessuno sfondo @@ -53,6 +55,8 @@ class TPrint_section; const int MAXCOLUMNS = 32; +// @doc EXTERNAL + // @class TForm | Classe per la descrizione dei formati di stampa // // @base public | TObject @@ -60,7 +64,6 @@ class TForm : public TObject // @author:(INTERNAL) Guido, Angelo, Villa -// @access Private Member { // @cfriend TForm_editor friend class TForm_editor; @@ -68,76 +71,78 @@ class TForm : public TObject friend class TForm_EC_editor; // @cfriend TPrint_section friend class TPrint_section; + + // @access:(INTERNAL) Private Member - // @cmember Tipo di sfondo da applicare alla stampa (vedi ) + // @cmember:(INTERNAL) Tipo di sfondo da applicare alla stampa (vedi ) bkg_mode _background_mode; - // @cmember Nome del profilo di stampa + // @cmember:(INTERNAL) Nome del profilo di stampa TString _name; - // @cmember Codice del profilo di stampa + // @cmember:(INTERNAL) Codice del profilo di stampa TString _code; - // @cmember Nome del font da utilizzare + // @cmember:(INTERNAL) Nome del font da utilizzare TString _fontname; - // @cmember Domensione del font da utilizzare + // @cmember:(INTERNAL) Dimensione del font da utilizzare int _fontsize; - // @cmember Maschera per la sezione + // @cmember:(INTERNAL) Maschera per la sezione TString _section_mask; - //@cmember Offset X valido per tutte le sezioni + //@cmember:(INTERNAL) Offset X valido per tutte le sezioni int _x; - //@cmember Offset Y valido per tutte le sezioni + //@cmember:(INTERNAL) Offset Y valido per tutte le sezioni int _y; - // @cmember Carattere utilizzato per il posizionamento dei moduli + // @cmember:(INTERNAL) Carattere utilizzato per il posizionamento dei moduli char _char_to_pos; - // @cmember Coordinata X del posizionamento iniziale + // @cmember:(INTERNAL) Coordinata X del posizionamento iniziale int _ipx; - // @cmember Coordinata Y del posizionamento iniziale + // @cmember:(INTERNAL) Coordinata Y del posizionamento iniziale int _ipy; - // @cmember Coordinata X del posizionamento finale (la riga e' la stessa) + // @cmember:(INTERNAL) Coordinata X del posizionamento finale (la riga e' la stessa) int _fpx; - // @cmember Flag per ragistrare i parametri (font ed offset) + // @cmember:(INTERNAL) Flag per ragistrare i parametri (font ed offset) bool _dirty; - // @cmember Relazione corrente (puo' essere NULL), vedi + // @cmember:(INTERNAL) Relazione corrente (puo' essere NULL), vedi TRelation* _relation; - // @cmember Cursore corrente (puo' essere NULL), vedi + // @cmember:(INTERNAL) Cursore corrente (puo' essere NULL), vedi TCursor* _cursor; - // @cmember per la gestione della relazione corrente + // @cmember:(INTERNAL) per la gestione della relazione corrente TRelation_description* _rel_desc; - // @cmember Array di headers + // @cmember:(INTERNAL) Array di headers TArray _head; - // @cmember Array di bodies + // @cmember:(INTERNAL) Array di bodies TArray _body; - // @cmember Array di footers + // @cmember:(INTERNAL) Array di footers TArray _foot; - // @cmember Array di sfondi grafici + // @cmember:(INTERNAL) Array di sfondi grafici TArray _back; - // @cmember Indica se si sta stampando l'ultima pagina + // @cmember:(INTERNAL) Indica se si sta stampando l'ultima pagina bool _lastpage; - // @cmember Indica se si tratta di un nuovo form + // @cmember:(INTERNAL) Indica se si tratta di un nuovo form bool _isnew; - // @cmember Indica se si tratta di form di base (.frm file) + // @cmember:(INTERNAL) Indica se si tratta di form di base (.frm file) bool _isbase; - // @cmember Indica se effettuare il posizionamento manuale dei moduli + // @cmember:(INTERNAL) Indica se effettuare il posizionamento manuale dei moduli bool _arrange; - // @cmember Permessi di Edit + // @cmember:(INTERNAL) Permessi di Edit int _editlevel; - // @cmember Descrizione del formato + // @cmember:(INTERNAL) Descrizione del formato TString _desc; - // @cmember Array di caratteri di fincatura + // @cmember:(INTERNAL) Array di caratteri di fincatura char _fink[11]; - // @cmember Handler di default della testata di stampa + // @cmember:(INTERNAL) Handler di default della testata di stampa static void header_handler(TPrinter& p); - // @cmember Handler di default del piede di stampa + // @cmember:(INTERNAL) Handler di default del piede di stampa static void footer_handler(TPrinter& p); - // @cmember Ritorna l'array di caratteri di fincatura + // @cmember:(INTERNAL) Ritorna l'array di caratteri di fincatura const char* get_fincatura() { return _fink; } - // @cmember Setta l'array di caratteri di fincatura + // @cmember:(INTERNAL) Setta l'array di caratteri di fincatura void set_fincatura(const char* s); // @access Protected Member @@ -160,7 +165,7 @@ protected: // (3 e' una pagina dispari qualsiasi) TPrint_section& section(char s, word page = 3); - // @cmember Ritorna l'altezaa della pagina

la prima di default + // @cmember Ritorna l'altezza della pagina

la prima di default word height(word page = 1); // @cmember Stampa la sezione

@@ -343,13 +348,17 @@ public: }; +// @doc INTERNAL + // @class TForm_flags | Classe per la gestione dei flag di una // // @base public | TObject class TForm_flags : public TObject -// @access Protected Member +// @author:(INTERNAL) Guido, Angelo, Villa + { +// @access Public Member public: // @cmember Indica se il campo e' automagico (determina da solo il suo valore // alla partenza della maschera) @@ -398,6 +407,8 @@ public: bool update(const char* s); }; +// @doc EXTERNAL + // @class TPrint_section | Classe per la gestione della stampa di una sezione di // // @base public | TArray @@ -405,45 +416,45 @@ class TPrint_section : public TArray // @author:(INTERNAL) Guido, Angelo, Villa -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Maschera di edit della sezione corrente + // @cmember:(INTERNAL) Maschera di edit della sezione corrente static TMask* _msk; - // @cmember Altezza della sezione + // @cmember:(INTERNAL) Altezza della sezione word _height; - // @cmember Offset prima colonna + // @cmember:(INTERNAL) Offset prima colonna word _ofspc; - // @cmember Offset verticale intestazione colonna + // @cmember:(INTERNAL) Offset verticale intestazione colonna word _ofsvr; - // @cmember Numero di colonne se COLUMNWISE + // @cmember:(INTERNAL) Numero di colonne se COLUMNWISE word _nfld; - // @cmember Flag di modifica parametri + // @cmember:(INTERNAL) Flag di modifica parametri bool _dirty; - // @cmember Specifica la sezione COLUMNWISE + // @cmember:(INTERNAL) Specifica la sezione COLUMNWISE bool _columnwise; - // @cmember Indica se si tratta di una sezione temporanea (da non salvare) + // @cmember:(INTERNAL) Indica se si tratta di una sezione temporanea (da non salvare) bool _temp; - // @cmember a cui appartiene la sezione + // @cmember:(INTERNAL) a cui appartiene la sezione TForm* _form; - // @cmember Tipo della sezione da stampare (

=header,

=body + // @cmember:(INTERNAL) Tipo della sezione da stampare (

=header,

=body //

=footer,

=background) char _sec_type; - // @cmember Posizione della pagina da stampare (vedi ) + // @cmember:(INTERNAL) Posizione della pagina da stampare (vedi ) pagetype _page_type; - // @cmember Indica se si tratta di una sottosezione + // @cmember:(INTERNAL) Indica se si tratta di una sottosezione bool _subsection; - // @cmember Lista dei campi da stampare + // @cmember:(INTERNAL) Lista dei campi da stampare TArray _item; - // @cmember Numero di ripetizione eseguite + // @cmember:(INTERNAL) Numero di ripetizione eseguite int _repeat_count; - // @cmember Offset delle colonne se COLUMNWISE + // @cmember:(INTERNAL) Offset delle colonne se COLUMNWISE int _tab[MAXCOLUMNS]; - // @cmember Fa una copia della print_section + // @cmember:(INTERNAL) Fa una copia della print_section const TPrint_section& copy(const TPrint_section& ps); // @access Protected Member @@ -471,7 +482,7 @@ public: { return *_form; } // @cmember Ritorna la lista dei campi da stampare - TArray& field_array() + TArray& field_array() { return _item; } // @cmember Ritorna l'

-esimo campo da stampare TForm_item& field(int n) const @@ -570,6 +581,9 @@ public: virtual ~TPrint_section(); }; + +// @doc EXTERNAL + // @class TForm_item | Classe per la definizione per ogni campo del // // @base public | TObject @@ -577,20 +591,22 @@ class TForm_item : public TObject // @author:(INTERNAL) Guido, Angelo, Villa -// @access Private Member + { // @cfriend TPrint_section friend class TPrint_section; + + // @access:(INTERNAL) Private Member - // @cmember Sezione da stampare (vedi ) + // @cmember:(INTERNAL) Sezione da stampare (vedi ) TPrint_section* _section; - // @cmember Flag del campo (vedi ) + // @cmember:(INTERNAL) Flag del campo (vedi ) TForm_flags _flag; - // @cmember Gruppi a cui appartiene il campo + // @cmember:(INTERNAL) Gruppi a cui appartiene il campo TBit_array _group; - // @cmember Special attribuiti al campo (vedi ) + // @cmember:(INTERNAL) Special attribuiti al campo (vedi ) TAssoc_array _special; - // @cmember Indica se si tratta di un campo temporaneo (da non salvare) + // @cmember:(INTERNAL) Indica se si tratta di un campo temporaneo (da non salvare) bool _temp; // @access Protected Member @@ -681,6 +697,7 @@ public: { return _flag.memo; } // virtual short& x() { return _x; }; + // @cmember Setta la ccordinata X (in caratteri) del campo virtual void set_x(short x) {_x=x;} diff --git a/include/golem.h b/include/golem.h index d13dca697..fd55970fc 100755 --- a/include/golem.h +++ b/include/golem.h @@ -13,57 +13,108 @@ class TConfig; class TRelation; #endif -// Generic Object Linking & Embedding Mechanism +// @doc EXTERNAL +// @class TGolem | Classe per le gestione del Generic Object Linking & Embedding Mechanism +// +// @base public | TSortable class TGolem : public TSortable + +// @author:(INTERNAL) Guido + +// @access:(INTERNAL) Private Member { + // @cmember:(INTERNAL) Numero di GOLEM costruiti fin'ora static long _count; + // @cmember:(INTERNAL) di appoggio per leggere i paramentri static TConfig* _config; + // @cmember:(INTERNAL) Nome del file di config static TFilename* _path; + // @cmember:(INTERNAL) dei GOLEM static TRelation* _golem; + // @cmember:(INTERNAL) Nome della classe del GOLEM TString16 _class; + // @cmember:(INTERNAL) Identificatore del GOLEM long _id; +// @access Protected Member protected: + // @cmember Ritorna il path completo dell'oggetto inserito.

verifica se esiste const TFilename& path(bool test = FALSE) const; + // @cmember Ritorna l'estensione del GOLEM const char* ext() const; + // @cmember Ritorna il di appoggio per leggere i paramentri TConfig& config() const; + // @cmember Genera il prossimo identificatore libero long new_id() const; protected:// TSortable + // @cmember Confronta due GOLEM (vedi ) virtual int compare(const TSortable& o) const; +// @access Public Member public: // TObject + // @cmember Ritorna il nome della classe virtual const char* class_name() const; + // @cmember Ritorna l'identificatore della classe virtual word class_id() const; + // @cmember Ritorna se si tratta di un oggetto valido virtual bool ok() const; public: + // @cmember Ritorna l'identificatore dell'icona del GOLEM virtual short icon() const; + // @cmember Chiama il programma di moifica del GOLEM virtual bool edit(); + // @cmember Mostra il dialog box di selezione del file virtual bool import(); - long id() const { return _id; } + // @cmember Ritorna l'identificatore del GOLEM + long id() const + { return _id; } + // @cmember Costruttore TGolem(const char* cls, long id); + // @cmember Distruttore virtual ~TGolem(); }; +// @doc EXTERNAL +// @class TDDE | Classe per la gestione del DDE +// +// @base public | TWindow class TDDE : public TWindow + +// @comm Attualmente utilizzato all'avvio di PRASSI per comunicare al Program Manager il nome +// dell'utente in modo da comunicarlo a tutti i programmi PRASSI avviati in seguito. + +// @author:(INTERNAL) Guido + +// @access:(INTERNAL) Private Member { + // @cmember:(INTERNAL) Handle della finestra Windows word _hwnd; + // @cmember:(INTERNAL) Handle della finestra del server DDE word _server; + // @cmember:(INTERNAL) Puntatore alla funzione di gestione dei messaggi long _old_hook; +// @access Public Member public: - void set_server(word s) { _server = s; } + void set_server(word s) + { _server = s; } + // @cmember Stabilisce il collegamento dell'

per i

indicati bool initiate(const char* app, const char* topic); + // @cmember Esegue il comando

bool execute(const char* cmd) const; + // @cmember Chiude la connessione void terminate(); + // @cmember Costruttore TDDE(); + // @cmember Distruttore virtual ~TDDE(); }; diff --git a/include/isam.cpp b/include/isam.cpp index 2cd3c30da..ebc33ea2a 100755 --- a/include/isam.cpp +++ b/include/isam.cpp @@ -60,14 +60,14 @@ HIDDEN void UNKNOWN_FIELD(int num, const char* name) HIDDEN bool __autoload = TRUE; -// @doc EXTERNAL + //////////////////////////////////////////////////////////////////////////////////////////////////// // Funzioni implementate per la gestione file dati tramite Codebase //////////////////////////////////////////////////////////////////////////////////////////////////// // Inizio(@) - +// @doc INTERNAL // @func Ritorna una Token_string con in nome dell'indice void get_idx_names( @@ -382,6 +382,8 @@ HIDDEN int delkeys(isfdptr fd, char* record,long recno) //////////////////////////////////////////////////////////////////////////////////////////////////// // Fine(@) +// @doc EXTERNAL + // @func Setta il valore della variabile

void set_autoload_new_files( bool on) // @parm Valore da assegnare @@ -1183,6 +1185,7 @@ void TBaseisamfile::indexoff() { } +// @doc EXTERNAL // @mfunc Apre il file isam di base con lock // @@ -1310,12 +1313,24 @@ int TBaseisamfile::is_valid() // TLocalisamfile /////////////////////////////////////////////////////////// -// Attenzione linkrecinst puo' valere 0, 1, 2. -// Se vale 2 significa che si sta costruendo un file temporaneo -// per cui linkrecinst va' considerato FALSE +// @doc EXTERNAL -TLocalisamfile::TLocalisamfile(int logicnum, bool linkrecinst) +// @mfunc Costruttore +// +// @rdesc Ritorna l'oggetto +TLocalisamfile::TLocalisamfile( + int logicnum, // @parm Numero del logico del file + bool linkrecinst) // @parm Puo assumere i valori: + // + // @flag 0 | Istanzio un nuovo file fisico (default) + // @flag 1 | Utilizza, se possibile, un file gia' esistente + // @flag 2 | Crea un file temporaneo : TBaseisamfile(logicnum, linkrecinst == TRUE) + +// @comm ATTENZIONE:

puo' valere 0, 1, 2. +// Se vale 2 significa che si sta costruendo un file temporaneo +// per cui linkrecinst va' considerato FALSE + { if (linkrecinst <= TRUE) { @@ -1435,6 +1450,8 @@ TIsamfile::~TIsamfile() } +// @doc EXTERNAL + // @mfunc Aggiorna i flags associati al file // // @rdesc Ritorna NOERR se e' riuscita ad eseguiore l'operazione, altrimenti ritorna il numero @@ -1527,6 +1544,8 @@ TIsamtempfile::~TIsamtempfile() close(); } +// @doc EXTERNAL + // @mfunc Apre il file // // @rdesc Ritorna NOERR se e' riuscita ad aprire il file, altrimenti ritorna il numero di errore @@ -1713,6 +1732,9 @@ long TSystemisamfile::size(TRecnotype eox) } #ifndef FOXPRO + +// @doc INTERNAL + // @mfunc Esegue la conversione del file // // @rdesc Ritorna il rusultato dell'operazione @@ -1756,6 +1778,8 @@ bool TSystemisamfile::exec_convapp( return TRUE; } +// @doc INTERNAL + // @mfunc Recupera le conversioni logiche da effettuare sul file // // @rdesc Ritorna TRUE se occorre effettuare la conversione sul file @@ -1811,6 +1835,8 @@ void TSystemisamfile::makelc(TRectype& rec) } } +// @doc EXTERNAL + // @mfunc Esegue la conversione del tracciato record del file // // @rdesc Ritorna il risulato della conversione, altrimenti il codice di errore generato @@ -1963,6 +1989,8 @@ int TSystemisamfile::update( return err; } +// @doc EXTERNAL + // @mfunc Rimuove fisicamente i record cancellati // // @rdesc Ritorna NOERR se l'operazione di compattamento e' riuscita, altrimenti il codice di @@ -1988,6 +2016,8 @@ int TSystemisamfile::packfile( return err; } +// @doc EXTERNAL + // @mfunc Rimuove fisicamente gli indici cancellati // // @rdesc Ritorna NOERR se l'operazione di compattamento e' riuscita, altrimenti il codice di @@ -2032,6 +2062,8 @@ int TSystemisamfile::pack(bool vis) return err; } +// @doc EXTERNAL + // @mfunc Importa un file ascii // // @rdesc Ritorna NOERR se l'operazione di lettura e' riuscita, altrimenti il codice di @@ -2224,6 +2256,8 @@ int TSystemisamfile::load( return err; } +// @doc EXTERNAL + // @mfunc Esporta VERSO un file ascii. // // @rdesc Ritorna NOERR se l'operazione di esportazione e' riuscita, altrimenti il codice di @@ -2469,6 +2503,8 @@ const char* TRectype::last_key_field(int key) const return rf.Name; } +// @doc EXTERNAL + // @mfunc Confronta le chiavi di due record // // @rdesc Ritorna il risultato di una : @@ -2715,6 +2751,7 @@ bool TRectype::get_bool(const char* fieldname) const return FALSE; } +// @doc EXTERNAL // @mfunc Ritorna il contenuto di un campo memo // diff --git a/include/isam.h b/include/isam.h index f2d7b7bf8..135a94232 100755 --- a/include/isam.h +++ b/include/isam.h @@ -54,7 +54,7 @@ const int MAX_KEYS = 8; class TLocalisamfile; class TRectype; -// @doc EXTERNAL +// @doc INTERNAL // @class TMemo_info | Classe per la definizione dei campi Memo // @@ -62,15 +62,15 @@ class TRectype; class TMemo_info : public TObject // @author:(INTERNAL) Sandro { -// @access Private Member +// @access:(INTERNAL) Private Member - // @cmember Campi memo modificati + // @cmember:(INTERNAL) Campi memo modificati TBit_array _dirty; - // @cmember Array di stringhe contenteti i campi memo + // @cmember:(INTERNAL) Array di stringhe contenteti i campi memo TString_array _data; - // @cmember Numero di record sul file dati + // @cmember:(INTERNAL) Numero di record sul file dati TRecnotype _recno; - // @cmember Record che possiede il campo memo + // @cmember:(INTERNAL) Record che possiede il campo memo const TRectype * _owner; // @access Protected Member @@ -110,6 +110,8 @@ public: }; +// @doc EXTERNAL + // @class TRectype | Classe per la definizione del tipo di record del file // // @base public | TSortable @@ -129,21 +131,21 @@ class TRectype : public TSortable // @cfriend TIsamtempfile friend class TIsamtempfile; -// @access Private Member +// @access:(INTERNAL) Private Member - // @cmember Puntatore all'inizio inizio del record + // @cmember:(INTERNAL) Puntatore all'inizio inizio del record char* _rec; - // @cmember Numero logico del record + // @cmember:(INTERNAL) Numero logico del record int _logicnum; - // @cmember Lunghezza del record + // @cmember:(INTERNAL) Lunghezza del record int _length; - // @cmember Indica se il record e' vuoto + // @cmember:(INTERNAL) Indica se il record e' vuoto bool _isempty; - // @cmember Indentificatore della tabella + // @cmember:(INTERNAL) Indentificatore della tabella char _tab[5]; - // @cmember Campo "COD" della tabella + // @cmember:(INTERNAL) Campo "COD" della tabella TRecfield * _cod; - // @cmember Puntatore alla classe contenente i campi memo + // @cmember:(INTERNAL) Puntatore alla classe contenente i campi memo TMemo_info * _memoinfo; // @access Protected Member @@ -225,7 +227,7 @@ public: // @cmember Ritorna il contenuto del campo

(non tipizzata) const char* get_str(const char* fieldname) const ; #ifndef FOXPRO - // @cmember Riotna il reference al contenuto del campo

+ // @cmember Ritorna il reference al contenuto del campo

const TString& get(const char* fieldname) const ; // @cmember Ritorna il contenuto del campo

in formato int int get_int(const char* fieldname) const ; @@ -328,6 +330,7 @@ public: }; +// @doc EXTERNAL // @class TBaseisamfile | Classe per la definizione del file isam di base // @@ -336,33 +339,7 @@ class TBaseisamfile : public TObject // @author:(INTERNAL) Sandro -// @access Private Member { - // @cmember Descrittore del file isam - isdef* _isamfile; - // @cmember Numero logico del record corrente - int _logicnum; - // @cmember Ultimo errore - int _lasterr; - // @cmember Permette di sapere se rimuovere il record alla fine - bool _delrec; - // @cmember Permette di sapere se rimuovere il record alla fine dalla lista interna di record - bool _delopenrec; - // @cmember Puntatore a record corrente - TRectype* _current; - // @cmember UNUSED - TFile _hf; - // @cmember UNUSED - TFile _hfhd; - // @cmember Indica se il file e' archivio storico - bool _historicfile; - // @cmember UNUSED - TRecnotype _lasthf; - // @cmember Record corrente - TRecnotype _recno; - // @cmember Indica se il file possiede dei campi memo - bool _has_memo; - // @cfriend TRectype friend class TRectype; // @cfriend TLocalisamfile @@ -374,22 +351,51 @@ class TBaseisamfile : public TObject // @cfriend TRecfield friend class TRecfield; // friend class TCursor; - // friend TRecnotype __buildcursor(TFilecursor* tic, TRecnotype rp); // friend TRecnotype __filtercursor(TFilecursor* tic); // friend bool __evalcondition(TBaseisamfile* i,TString& condition); // friend void __readrec(TFilecursor* tic); + + // @access:(INTERNAL) Private Member + + // @cmember:(INTERNAL) Descrittore del file isam + isdef* _isamfile; + // @cmember:(INTERNAL) Numero logico del record corrente + int _logicnum; + // @cmember:(INTERNAL) Ultimo errore + int _lasterr; + // @cmember:(INTERNAL) Permette di sapere se rimuovere il record alla fine + bool _delrec; + // @cmember:(INTERNAL) Permette di sapere se rimuovere il record alla fine dalla lista interna di record + bool _delopenrec; + // @cmember:(INTERNAL) Puntatore a record corrente + TRectype* _current; + // @cmember:(INTERNAL) UNUSED + TFile _hf; + // @cmember:(INTERNAL) UNUSED + TFile _hfhd; + // @cmember:(INTERNAL) Indica se il file e' archivio storico + bool _historicfile; + // @cmember:(INTERNAL) UNUSED + TRecnotype _lasthf; + // @cmember:(INTERNAL) Record corrente + TRecnotype _recno; + // @cmember:(INTERNAL) Indica se il file possiede dei campi memo + bool _has_memo; + + + - // @cmember UNUSED + // @cmember:(INTERNAL) UNUSED int gethr(TRectype& rec, TDate& atdate); - // @cmember Ritorna NOERR + // @cmember:(INTERNAL) Ritorna NOERR int addhr(const TRectype& rec, TDate& atdate); - // @cmember Ritorna NOERR + // @cmember:(INTERNAL) Ritorna NOERR int rewhr(const TRectype& rec, TDate& atdate); - // @cmember Ritorna NOERR + // @cmember:(INTERNAL) Ritorna NOERR int delhr(const TRectype& rec, TDate& atdate); -// access Protected Member +// @access Protected Member protected: // @cmember Ritorna il descrittore del file isam isdef** ptrfilehnd() const @@ -603,6 +609,8 @@ public: virtual ~TBaseisamfile(); }; +// @doc EXTERNAL + // @class TIsamfile | Classe per la definizione delle operazione sul file isam // // @base public | TBaseisamfile @@ -627,6 +635,8 @@ public: virtual ~TIsamfile(); }; +// @doc EXTERNAL + // @class TSystemisamfile | Classe per la definizione delle funzione per la creazione di un file // di isam // @@ -636,18 +646,18 @@ class TSystemisamfile : public TIsamfile // @author:(INTERNAL) Sandro { -// @access Private Memebr +// @access:(INTERNAL) Private Memebr - // @cmember Array di campi che descrivono il record del file + // @cmember:(INTERNAL) Array di campi che descrivono il record del file TArray _flds; - // @cmember Array di espressione + // @cmember:(INTERNAL) Array di espressione TArray _exps; - // @cmember Recupera le conversioni logiche da effettuare sul file + // @cmember:(INTERNAL) Recupera le conversioni logiche da effettuare sul file bool getlcf(long flev); - // @cmember Esegue la conversione del file + // @cmember:(INTERNAL) Esegue la conversione del file bool exec_convapp(long flev, const bool before); - // @cmember Esegue la conversione sui record del file (utilizzando le espressione definite + // @cmember:(INTERNAL) Esegue la conversione sui record del file (utilizzando le espressione definite // in fconv.ini) void makelc(TRectype& rec); @@ -683,6 +693,8 @@ public: {} }; +// @doc EXTERNAL + // @class TLocalisamfile | Classe per la definizione di un isam file // // @base public | TBaseisamfile @@ -690,11 +702,11 @@ class TLocalisamfile : public TBaseisamfile // @author:(INTERNAL) Sandro { -// @access Private Member +// @access:(INTERNAL) Private Member - // @cmember Indica se il file e' stato aperto come Localisamfile + // @cmember:(INTERNAL) Indica se il file e' stato aperto come Localisamfile bool _was_open; - // @cmember Vecchia chiave se il file e' gia' aperto + // @cmember:(INTERNAL) Vecchia chiave se il file e' gia' aperto int _oldkey; // @access Protected Member @@ -726,6 +738,8 @@ public: }; +// @doc EXTERNAL + // @class TIsamtempfile | Classe per la definizione del file isam temporaneo // // @base public | TLocalisamfile @@ -734,9 +748,9 @@ class TIsamtempfile : public TLocalisamfile // @author:(INTERNAL) Sandro { -// @access Private Member +// @access:(INTERNAL) Private Member - //@cmember Indica se cancellare il file in chiusura + //@cmember:(INTERNAL) Indica se cancellare il file in chiusura bool _autodel; // @access Protected Member @@ -757,6 +771,7 @@ public: virtual ~TIsamtempfile(); }; +// @doc EXTERNAL // @class TRec_array | Classe per la definizione un array di record // @@ -776,22 +791,24 @@ public: // @base public | TObject class TRecfield : public TObject -// @access Private Member +// @author:(INTERNAL) Guido + +// @access:(INTERNAL) Private Member { - // @cmember Nome del campo + // @cmember:(INTERNAL) Nome del campo char _name[12]; - // @cmember Puntatore a inizio record + // @cmember:(INTERNAL) Puntatore a inizio record TRectype* _rec; - // @cmember Puntatore a inizio campo + // @cmember:(INTERNAL) Puntatore a inizio campo char* _p; - // @cmember Lunghezza del campo + // @cmember:(INTERNAL) Lunghezza del campo byte _len; - // @cmember Numero di decimali del campo + // @cmember:(INTERNAL) Numero di decimali del campo byte _dec; - // @cmember Tipo del campo + // @cmember:(INTERNAL) Tipo del campo byte _type; - // @cmember Setta il campo

-esimo con i valori di

-esimo + // @cmember:(INTERNAL) Setta il campo

-esimo con i valori di

-esimo void set(int from, int to); // @access Public Member diff --git a/include/mailbox.cpp b/include/mailbox.cpp index c164bb59e..b8f54c225 100755 --- a/include/mailbox.cpp +++ b/include/mailbox.cpp @@ -8,8 +8,6 @@ #define DEF_MSGS_CAPACITY 50 #define MAX_TXT_LEN 200 -// @doc EXTERNAL - TMessage::TMessage(const char* to, const char* sub, const char* text, const char* from) { @@ -79,6 +77,8 @@ TMessage* TMailbox::next_read() return this->get(_cnt++); } +// @doc EXTERNAL + // @mfunc Ritorna il prossimo messaggio TMessage* TMailbox::next( bool read) // @parm Indica se il messaggio deve essere tra quelli @@ -92,6 +92,8 @@ TMessage* TMailbox::next( return m; } +// @doc EXTERNAL + // @mfunc Ritorna il prossimo messaggio con lo stesso oggetto TMessage* TMailbox::next_s( char* s, // @parm Oggetto del messaggio da ritornare @@ -120,6 +122,7 @@ TMessage* TMailbox::next_s( return this->get(_cnt); } +// @doc EXTERNAL // @mfunc Ritorna il prossimo messaggio con lo stesso mandante TMessage* TMailbox::next_f( diff --git a/include/mailbox.h b/include/mailbox.h index bae60268f..75c195c72 100755 --- a/include/mailbox.h +++ b/include/mailbox.h @@ -15,21 +15,25 @@ // // @base public | TObject class TMessage : public TObject + +// @author:(INTERNAL) Guido + + { // @cfriend TMailbox - friend class TMailbox; + friend class TMailbox; - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Applicazione che lancia il messaggio + // @cmember:(INTERNAL) Applicazione che lancia il messaggio TString16 _from; - // @cmember Applicazione che deve ricevere il messaggio + // @cmember:(INTERNAL) Applicazione che deve ricevere il messaggio TString16 _to; - // @cmember Oggetto del messaggio + // @cmember:(INTERNAL) Oggetto del messaggio TString80 _subject; - // @cmember Testo del messaggio + // @cmember:(INTERNAL) Testo del messaggio TString _text; - // @cmember Flag di controllo del messaggio + // @cmember:(INTERNAL) Flag di controllo del messaggio byte _flags; // #cmember Numero (non si sa cosa faccia) // int _number; @@ -85,20 +89,23 @@ public: // // @base public | TObject class TMailbox : public TObject -{ - // @access Private Member - // @cmember Nome del file che contiene i messaggi +// @author:(INTERNAL) Villa + +// @access:(INTERNAL) Private Member +{ + + // @cmember:(INTERNAL) Nome del file che contiene i messaggi TFilename _path; - // @cmember Array di messaggi ricevuti + // @cmember:(INTERNAL) Array di messaggi ricevuti TArray _msgs; - // @cmember Numero dell'ultimo messaggio letto + // @cmember:(INTERNAL) Numero dell'ultimo messaggio letto int _lastread; - // @cmember Numero di messaggi in attesa di lettura + // @cmember:(INTERNAL) Numero di messaggi in attesa di lettura int n_new; - // @cmember Posizione nel file dell'ultimo messaggio letto + // @cmember:(INTERNAL) Posizione nel file dell'ultimo messaggio letto long _lastpos; - // @cmember Indice dei messaggi letti e non letti + // @cmember:(INTERNAL) Indice dei messaggi letti e non letti int _cnt; // @access Protected Member diff --git a/include/mask.cpp b/include/mask.cpp index 3c9e037d4..07708805d 100755 --- a/include/mask.cpp +++ b/include/mask.cpp @@ -23,6 +23,8 @@ extern unsigned long _alloc_count; HIDDEN bool moving_focus = FALSE; +// @doc EXTERNAL + // @mfunc Controlla se e' possibile dare il focus alla finestra

// // @rdesc Ritorna la possibilita' di lasciare il focus @@ -237,7 +239,7 @@ TMask::TMask(const char* title, int pages, int cols, int rows, int xpos, add_buttons(); } -// @doc INTERNAL +// @doc EXTERNAL // @mfunc Legge la maschera da file void TMask::read_mask( @@ -457,6 +459,8 @@ void TMask::load_checks() const } } +// @doc EXTERNAL + // @mfunc Abilita/disabilita una pagina e tutte le successive void TMask::enable_page( byte page, // @parm Pagina da abilitare/disabilitare @@ -585,6 +589,7 @@ void TMask::get_mask_fields() } } +// @doc EXTERNAL // @mfunc Converte un identificatore di campo nella sua posizione // @@ -666,6 +671,7 @@ int TMask::find_field_win(WINDOW win) const return 0; } +// @doc EXTERNAL // @mfunc Setta il focus al campo la cui finestra e'

void TMask::set_focus_win( @@ -691,6 +697,8 @@ int TMask::find_parent_page(const TMask_field& f) const return MAX_PAGES; // Toolbar button } +// @doc EXTERNAL + // @mfunc Ritorna il prossimo campo attivabile // // @rdesc Riorna il numero del campo cercato @@ -755,6 +763,7 @@ void TMask::set_focus() f.highlight(); } +// @doc EXTERNAL // @mfunc Muove il focus al prossimo o al precedente controllo valido void TMask::move_focus_field( @@ -790,6 +799,8 @@ void TMask::move_focus_field( set_focus(); } +// @doc EXTERNAL + // @mfunc Forza la chiusura della maschera // // @rdesc Ritorna il risultato dell'operazione: @@ -847,6 +858,8 @@ bool TMask::stop_run( return TWindow::stop_run(key); } +// @doc EXTERNAL + // @mfunc Assegna una azione al tasto non standard // // @rdesc Ritrna se e' stto effetuato una azione: @@ -968,6 +981,8 @@ TMask_field* TMask::parse_field(TScanner& scanner) return NULL; } +// @doc EXTERNAL + // @mfunc Legge la pagina dal file // // @rdesc Ritorna l'handle della finestra creata @@ -1046,6 +1061,8 @@ WINDOW TMask::read_page( return w; } +// @doc EXTERNAL + // @mfunc Ritorna la posizione del primo campo attivo nella direzione specificata // // @rdesc Ritorna il primo campo attivo @@ -1090,6 +1107,7 @@ bool TMask::check_current_page() return TRUE; } +// @doc EXTERNAL // @mfunc Mostra la prossima/precedente pagina void TMask::next_page( @@ -1193,7 +1211,7 @@ TDate TMask::get_date(short fld_id) const return TDate(s); } - +// @doc EXTERNAL // @mfunc Setta il campo con un valore void TMask::set( @@ -1234,6 +1252,8 @@ void TMask::set(short fld_id, const TDate& d, bool hit) set(fld_id, d.string(), hit); } +// @doc EXTERNAL + // @mfunc Permette di attivare/disattivare tutta la pagina void TMask::activate( bool on) // @parm Indica l'operazione da svolgere sul campo: @@ -1246,6 +1266,8 @@ void TMask::activate( xvt_vobj_set_visible(toolwin(), on); } +// @doc EXTERNAL + // @mfunc Abilita/disabilita un campo void TMask::enable( short fld_id, // @parm Identificatore del campo da abilitare (-1 tutti i campi) @@ -1289,6 +1311,8 @@ byte TMask::num_keys() const return max; } +// @doc EXTERNAL + // @mfunc Abilita/disabilita i campi di una chiave sulla maschera void TMask::enable_key( byte key, // @parm Chiave di cui abilitare il campo @@ -1311,6 +1335,7 @@ void TMask::enable_key( } } +// @doc EXTERNAL // @mfunc Ritorna il l'identificatore di un campo della chiave

// @@ -1362,6 +1387,8 @@ bool TMask::key_valid(int key) const return TRUE; } +// @doc EXTERNAL + // @mfunc Permette di mostrare/nascondere un campo void TMask::show( short fld_id, // @parm Campo da mostrare/nascondere (default -1) @@ -1386,7 +1413,7 @@ void TMask::show( else field(fld_id).show(on); } - +// @doc EXTERNAL // @mfunc Rimette lo stato di default del campo void TMask::show_default( @@ -1459,6 +1486,7 @@ void TMask::on_idle() } } +// @doc EXTERNAL // @mfunc Permette di mandare un tasto ad un campo void TMask::send_key( @@ -1505,6 +1533,8 @@ void TMask::send_key( } } +// @doc EXTERNAL + // @mfunc Permette di mandare un handler ad controllo o ad una maschera void TMask::set_handler( short fld_id, // @parm Identificatere del campo che deve ricevere l'handler @@ -1527,6 +1557,7 @@ void TMask::set_handler(MASK_HANDLER handler) _handler = handler; } +// @doc EXTERNAL // @mfunc Aggiunge runtime un campo testo alla maschera // @@ -1548,6 +1579,8 @@ WINDOW TMask::add_static ( return f->win(); } +// @doc EXTERNAL + // @mfunc Aggiunge runtime un campo stringa alla maschera // // @rdesc Ritorna l'handle del campo creato @@ -1570,6 +1603,8 @@ WINDOW TMask::add_string ( return f->win(); } +// @doc EXTERNAL + // @mfunc Aggiunge runtime un campo lista alla maschera // // @rdesc Ritorna l'handle del campo creato @@ -1594,9 +1629,11 @@ WINDOW TMask::add_list ( return f->win(); } - // @mfunc Aggiunge runtime un campo boolean alla maschera - // - // @rdesc Ritorna il descrittore del campo aggiunto +// @doc EXTERNAL + +// @mfunc Aggiunge runtime un campo boolean alla maschera +// +// @rdesc Ritorna il descrittore del campo aggiunto WINDOW TMask::add_boolean ( short id, // @parm Numero identificatore del campo da aggiungere int page, // @parm Pagina nel quale aggiungere il campo @@ -1614,6 +1651,8 @@ WINDOW TMask::add_boolean ( return f->win(); } +// @doc EXTERNAL + // @mfunc Aggiunge runtime un campo zoom alla maschera // // @rdesc Ritorna l'handle del campo creato @@ -1636,6 +1675,8 @@ WINDOW TMask::add_zoom ( return f->win(); } +// @doc EXTERNAL + // @mfunc Aggiunge runtime un campo numerico alla maschera // // @rdesc Ritorna l'handle del campo creato @@ -1658,6 +1699,8 @@ WINDOW TMask::add_number ( return f->win(); } +// @doc EXTERNAL + // @mfunc Aggiunge runtime un campo data alla maschera // // @rdesc Ritorna l'handle del campo creato @@ -1678,6 +1721,8 @@ WINDOW TMask::add_date ( return f->win(); } +// @doc EXTERNAL + // @mfunc Aggiunge runtime un campo bottone alla maschera // // @rdesc Ritorna l'handle del campo creato @@ -1700,6 +1745,7 @@ WINDOW TMask::add_button ( return f->win(); } +// @doc EXTERNAL // @mfunc Aggiunge runtime un campo radio button alla maschera // @@ -1725,6 +1771,8 @@ WINDOW TMask::add_radio( return ((TMask_field*)f)->win(); } +// @doc EXTERNAL + // @mfunc Aggiunge runtime un campo memo alla maschera // // @rdesc Ritorna l'handle del campo creato @@ -1747,6 +1795,8 @@ WINDOW TMask::add_memo( return ((TMask_field*)f)->win(); } +// @doc EXTERNAL + // @mfunc Permette di salvare il file di salvataggio // // @rdesc Ritorna il risultato dell'operazione: @@ -1775,9 +1825,10 @@ bool TMask::save( } +// @doc EXTERNAL + // @mfunc Permette di leggere il file di salvataggio // - // @rdesc Ritorna il risultato dell'operazione: // // @flag TRUE | Se l'operazione e' avvenuta corretamente @@ -1827,6 +1878,8 @@ void TMask::set_caption(const char* c) } +// @doc EXTERNAL + // @mfunc Setta il valore attuale della valuta void TMask::set_exchange( bool show_value, // @parm Indica se il deve essere visibile l'importo in valuta diff --git a/include/mask.h b/include/mask.h index 998339931..06398c140 100755 --- a/include/mask.h +++ b/include/mask.h @@ -13,9 +13,12 @@ class TSheet_field; // @doc EXTERNAL -// @type MASK_HANDLER | Funzione per gestire i tasti speciali all'interno di una maschera. +// @type MASK_HANDLER | Prototipo funzione per gestire i tasti speciali all'interno di una maschera. typedef bool (*MASK_HANDLER)(TMask& mask, KEY key); + +// @doc EXTERNAL + // @enum Modalita' di utilizzo della maschera corrente enum TMaskmode { NO_MODE, // @emem Nessun modo @@ -25,6 +28,9 @@ enum TMaskmode { MODE_QUERY, // @emem Modalita' di richiesta chiave MODE_QUERYINS }; // @emem Modalita' di richiesta chiave e inserimento dati + +// @doc EXTERNAL + // @class TMask | Classe per la gestione delle maschere video // // @base public | TWindow @@ -32,62 +38,62 @@ class TMask : public TWindow { // @author:(INTERNAL) Guido - // @access Private Member + // @access:(INTERNAL) Private Member - // @ccost MAX_PAGES | 12 | Massimo numero di pagine nella maschera + // @ccost:(INTERNAL) MAX_PAGES | 12 | Massimo numero di pagine nella maschera enum { MAX_PAGES = 12 }; - // @cmember Windows delle pagine + // @cmember:(INTERNAL) Windows delle pagine WINDOW _pagewin[MAX_PAGES+1]; - // @cmember Windows per pgup/pgdn + // @cmember:(INTERNAL) Windows per pgup/pgdn WINDOW _pagepag[MAX_PAGES]; - // @cmember Windows di numeri pagina + // @cmember:(INTERNAL) Windows di numeri pagina WINDOW _pagetag[MAX_PAGES]; - // @cmember Numero di pagine della maschera + // @cmember:(INTERNAL) Numero di pagine della maschera int _pages; - // @cmember Pagina corrente + // @cmember:(INTERNAL) Pagina corrente int _page; - // @cmember Controlla le pagine abilitate + // @cmember:(INTERNAL) Controlla le pagine abilitate TBit_array _enabled; - // @cmember Modalita' di utilizzo della maschera + // @cmember:(INTERNAL) Modalita' di utilizzo della maschera int _mode; - // @cmember Numero di campi della maschera + // @cmember:(INTERNAL) Numero di campi della maschera TArray _field; - // @cmember Primo controllo che deve ricevere il focus + // @cmember:(INTERNAL) Primo controllo che deve ricevere il focus int _first_focus; - // @cmember Controllo che possiede il focus + // @cmember:(INTERNAL) Controllo che possiede il focus int _focus; - // @cmember Controllo che deve ricevere il focus + // @cmember:(INTERNAL) Controllo che deve ricevere il focus int _next_fld; - // @cmember Numero di sheet contenuti nella maschera + // @cmember:(INTERNAL) Numero di sheet contenuti nella maschera int _sheets; - // @cmember Puntatore allo sheet che contiene la maschera (puo' essere NULL) + // @cmember:(INTERNAL) Puntatore allo sheet che contiene la maschera (puo' essere NULL) TSheet_field* _sheet; - // @cmember Handler per gestire i tasti speciali nelle maschere + // @cmember:(INTERNAL) Handler per gestire i tasti speciali nelle maschere MASK_HANDLER _handler; - // @cmember Nome del file sorgente contenente la maschera + // @cmember:(INTERNAL) Nome del file sorgente contenente la maschera TFilename _source_file; - // @cmember Nome del file di salvataggio in cui sono scaricati i valori della maschera + // @cmember:(INTERNAL) Nome del file di salvataggio in cui sono scaricati i valori della maschera TFilename _workfile; - // @cmember Ultimo offset letto nel file di salvataggio + // @cmember:(INTERNAL) Ultimo offset letto nel file di salvataggio long _lastpos; - // @cmember Cambio attuale per i cambi in valuta + // @cmember:(INTERNAL) Cambio attuale per i cambi in valuta real _exchange; - // @cmember Controlla se la maschera deve fare i controlli iniziali di validita' dei campi + // @cmember:(INTERNAL) Controlla se la maschera deve fare i controlli iniziali di validita' dei campi bool _should_check; - // @cmember Tempo totale di caricamento della maschera + // @cmember:(INTERNAL) Tempo totale di caricamento della maschera long _total_time; - // @cmember Tempo di compilazione della maschera + // @cmember:(INTERNAL) Tempo di compilazione della maschera long _build_time; - // @cmember Tempo di inizializzazione della maschera + // @cmember:(INTERNAL) Tempo di inizializzazione della maschera long _init_time; // @access Protected Member diff --git a/include/maskfld.cpp b/include/maskfld.cpp index 47ff697e3..87c1c93b9 100755 --- a/include/maskfld.cpp +++ b/include/maskfld.cpp @@ -23,8 +23,6 @@ HIDDEN TString256 fpark; -// @doc EXTERNAL - /////////////////////////////////////////////////////////// // Field Flags /////////////////////////////////////////////////////////// @@ -146,6 +144,7 @@ short TMask_field::atodlg(const char* s) const return d; } +// @doc EXTERNAL // @mfunc Costruisce il campo void TMask_field::construct( @@ -305,6 +304,8 @@ long TMask_field::default_flags() const } // Certified 100% +// @doc EXTERNAL + // @mfunc Crea la finestra del controllo // // @rdesc Ritorna la finestra creata @@ -334,6 +335,8 @@ WINDOW TMask_field::parent() const // Certified 90% +// @doc EXTERNAL + // @mfunc Crea il prompt del controllo // // @rdesc Ritorna la lunghezza del prompt creato @@ -394,6 +397,8 @@ void TMask_field::create(WINDOW parent) // Certified 100% +// @doc EXTERNAL + // @mfunc Abilita/disabilita il campo (lo rende scrivibile) void TMask_field::enable( bool on) // @parm Operazione da svolgere: @@ -419,6 +424,8 @@ void TMask_field::enable_default() // Certified 100% +// @doc EXTERNAL + // @mfunc Permette di rendere visibile/invisibile un campo void TMask_field::show( bool on) // @parm Operazione da svolgere: @@ -500,6 +507,7 @@ void TMask_field::set_field_data(const char*) const char* TMask_field::get_field_data() const { return NULL; } +// @doc EXTERNAL // @mfunc Permette di dare la stessa formattazione del campo della maschera // @@ -867,6 +875,7 @@ bool TMask_field::on_hit() return TRUE; } +// @doc EXTERNAL // @mfunc Permette di spedire il check // @@ -1000,6 +1009,8 @@ void TMask_field::set_focus() const HIDDEN char* const _msg = &__tmp_string[512]; #define build_msg() va_list argptr;va_start(argptr,fmt);vsprintf(_msg,fmt,argptr);va_end(argptr) +// @doc EXTERNAL + // @mfunc Crea una error-box relativo al campo (chiama ) // // @rdesc Ritorna sempre FALSE @@ -1035,6 +1046,8 @@ bool TMask_field::message_box(const char* fmt, ...) const return FALSE; } +// @doc EXTERNAL + // @mfunc Crea una warning-box relativo al campo (chiama ) // // @rdesc Ritorna sempre FALSE @@ -1430,13 +1443,15 @@ int TBrowse::inputs() return inp; } +// @doc INTERNAL + // @mfunc Ritorna il numero di campi non vuoti e non filtrati // // @rdesc Numero di campi non vuoti e non filtrati int TBrowse::do_input( - bool filter) // @parm ?? + bool filter) // @parm Indica se effettuare il filtro sulla selezione - // @comm Questa funzione serve ai TCursor_sheet + // @comm Questa funzione serve ai { int ne = 0; if (_inp_id.empty()) return ne; @@ -2224,6 +2239,7 @@ const char* TEdit_field::picture_data(const char* data, bool video) const return fpark; } +// @doc EXTERNAL // @mfunc Chiama l' eventuale funzione di validazione // @@ -2259,6 +2275,8 @@ bool TEdit_field::on_hit() return TRUE; } +// @doc EXTERNAL + // @mfunc Mostra un messaggio di errore di default per il campo // // @rdesc Ritorna sempre FALSE @@ -2434,6 +2452,8 @@ bool TEdit_field::check(CheckTime t) return ok; } +// @doc EXTERNAL + // @mfunc Permette di abilitare/disabilitare un check di un campo void TEdit_field::enable_check( bool on) // @parm Operazione da svolgere @@ -2719,7 +2739,7 @@ void TDate_field::set_window_data(const char* data) TEdit_field::set_window_data(d.string()); } - +// @doc EXTERNAL // @mfunc Permette di formattare la data secondo i flag correnti // @@ -3176,6 +3196,8 @@ int TList_field::items() const return _codes.items(); } +// @doc EXTERNAL + // @mfunc Aggiunge delle voci al list sheet void TList_field::add_item( const char* s) // @parm Voci da aggiungere @@ -3250,6 +3272,7 @@ void TList_field::add_list() set_field_data(init); } +// @doc EXTERNAL // @mfunc Sostituisce alle voci correnti quelle passate come parametri void TList_field::replace_items( @@ -3562,6 +3585,8 @@ void TRadio_field::show(bool on) _flags.shown = on; } +// @doc EXTERNAL + // @mfunc Sposta il focus dal radio button // // @rdesc Ritorna TRUE se il focus ha lasciato il radio button diff --git a/include/maskfld.h b/include/maskfld.h index f102ac27a..0acdfe3a1 100755 --- a/include/maskfld.h +++ b/include/maskfld.h @@ -22,9 +22,11 @@ class TArray_sheet; // __SHEET_H // @doc EXTERNAL -// @type CONTROL_HANDLER | Funzione per gestire i tasti speciali all'interno di un controllo +// @type CONTROL_HANDLER | Prototipo funzione per gestire i tasti speciali all'interno di un controllo typedef bool (*CONTROL_HANDLER)(TMask_field& field, KEY key); +// @doc EXTERNAL + // @enum Tipo di check da eseguire su un controllo enum CheckType { CHECK_NONE, // @emem Nessun controllo @@ -33,36 +35,42 @@ enum CheckType { CHECK_SEARCH // @emem Controlla se il campo c'e' ma non da' nessuna segnalazione se e' errato }; +// @doc EXTERNAL + // @enum Momento di richiesta del check enum CheckTime { RUNNING_CHECK, // @emem Check chiamato mentra la maschera sta andando STARTING_CHECK, // @emem Check chiamato al caricamento della maschera FINAL_CHECK }; // @emem Check chiamato quando la maschera si sta fermando +// @doc EXTERNAL + // @class TMask_field | Classe per la definizione delle operazioni sui campi di // una maschera // // @base public | TObject class TMask_field : public TObject // @author:(INTERNAL)Guido + + { // @cfriend TMask - friend class TMask; + friend class TMask; + +// @access:(INTERNAL) Private Member - // @access Private Member - - // @cmember Maschera all'interno del quale e' contenuto il campo + // @cmember:(INTERNAL) Maschera all'interno del quale e' contenuto il campo TMask* _mask; - // @cmember Messaggio di help del campo + // @cmember:(INTERNAL) Messaggio di help del campo TString _help; - // @cmember Campo corrispondente sul file + // @cmember:(INTERNAL) Campo corrispondente sul file TFieldref* _field; - // @cmember Chiave al quale appartiene il campo + // @cmember:(INTERNAL) Chiave al quale appartiene il campo TBit_array _keys; - // @cmember Gruppo al quale appartiene il campo + // @cmember:(INTERNAL) Gruppo al quale appartiene il campo TBit_array _groups; - // @cmember Stringa definibile dall'utilizzatore della classe da utilizzare a piacimento + // @cmember:(INTERNAL) Stringa definibile dall'utilizzatore della classe da utilizzare a piacimento TToken_string _userdata; // @access Protected Member @@ -94,9 +102,9 @@ protected: TArray _validate_parms; // @cmember Warning da segnalare in caso di dato errato del campo TString _warning; - // @cmember Massaggi da mandare in caso di modifica del controllo + // @cmember Messaggi da mandare in caso di modifica del controllo TArray _message; - + // @cmember | _flags | | Flag indicante lo stato del campo struct TField_Flags { @@ -383,10 +391,39 @@ public: virtual ~TMask_field(); }; +// @doc EXTERNAL + +// @struct TField_Flags | Flag indicante il settaggio del campo +// @comm ATTENZIONE: Questa struttura e' definita ed utilizzata unicamente nella classe +// +// @field bool | automagic: 1 | Indica se il campo e' automagic +// @field bool | dirty: 2 | Indica se il campo e' stato modificato +// @field bool | enabled: 1 | Indica se il campo e' editabile +// @field bool | enable_default: 1 | Indica se il campo e' abilitato di default +// @field bool | firm: 1 | Indica se il campo appartiene alla ditta corrente +// @field bool | focusdirty: 1 | Indica se il campo e' stato modificat mentre aveva il focus +// @field bool | ghost: 1 | Indica se il campo e' ghost +// @field bool | password: 1 | Indica che e' un campo password (no si vede quello che scrivi) +// @field bool | persistent: 1 | Indica se il valore del campo deve rimanere anche quando viene ricaricata la maschera +// @field bool | rightjust: 1 | Indica se il campo e' allineato a destra +// @field bool | roman: 1 | Indica se il campo contiene un numero romano +// @field bool | shown: 1 | Indica se il campo e' visibile +// @field bool | show_default: 1 | Indica se il campo e' visibile di default +// @field bool | trim: 1 | Indica se bisogna fare il trim della stringa (vedi ) +// @field bool | uppercase: 1 | Indica se il campo e' maiuscolo +// @field bool | exchange: 1 | Indica se si tratta di un cambio valuta +// @field bool | zerofilled: 1 | Indica se il campo e' zerofilled +// @field bool | pipeallowed: 1 | Indica se il campo e' pipeallowed +// @field void | TField_Flags() | Costruttore +// @field char | update(const char*) | Aggiorna i bit della struttura secondo i valori letti da file + +// @doc EXTERNAL + // @class TEdit_field | Classe per la definizione dei campi editabili // // @base public | TMask_field class TEdit_field : public TMask_field + { // @cfriend TBrowse friend class TBrowse; @@ -504,39 +541,42 @@ public: // TBrowse /////////////////////////////////////////////////////////// +// @doc INTERNAL + // @class TBrowse | Classe per la definizione dei campi con ricerca class TBrowse +// @author:(INTERNAL) Guido { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Campo che possiode lo sheet + // @cmember:(INTERNAL) Campo che possiode lo sheet TEdit_field* _fld; - // @cmember Relazione della ricerca + // @cmember:(INTERNAL) Relazione della ricerca TRelation* _relation; - // @cmember Cursore sulla relazione + // @cmember:(INTERNAL) Cursore sulla relazione TCursor* _cursor; - // @cmember Comando da eseguire alla pressione del tasto Gestione + // @cmember:(INTERNAL) Comando da eseguire alla pressione del tasto Gestione TString _insert; - // @cmember Filtro sul cursore + // @cmember:(INTERNAL) Filtro sul cursore TString _filter; - // @cmember Record selezionato + // @cmember:(INTERNAL) Record selezionato long _rec; - // @cmember Indica se e' presente un campo secondario nella ricerca + // @cmember:(INTERNAL) Indica se e' presente un campo secondario nella ricerca bool _secondary; - // @cmember Indica se sul campo e' gia' stao effettuato il check + // @cmember:(INTERNAL) Indica se sul campo e' gia' stao effettuato il check bool _checked; - // @cmember Testata della maschera di ricerca + // @cmember:(INTERNAL) Testata della maschera di ricerca TToken_string _head; - // @cmember Item della maschera di ricerca + // @cmember:(INTERNAL) Item della maschera di ricerca TToken_string _items; - // @cmember Campi di input sulla maschera + // @cmember:(INTERNAL) Campi di input sulla maschera TToken_string _inp_id; - // @cmember Campi di input sul file + // @cmember:(INTERNAL) Campi di input sul file TToken_string _inp_fn; - // @cmember Campi di output sulla maschera + // @cmember:(INTERNAL) Campi di output sulla maschera TToken_string _out_id; - // @cmember Campi di output sul file + // @cmember:(INTERNAL) Campi di output sul file TToken_string _out_fn; // @access Protected Member @@ -623,21 +663,24 @@ public: // TList_sheet /////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @class TList_sheet | Classe per la gestione dei list sheet class TList_sheet +// @author:(INTERNAL) Guido { - // @access Private Memeber + // @access:(INTERNAL) Private Memeber - // @cmember Campo che possiede lo sheet + // @cmember:(INTERNAL) Campo che possiede lo sheet TEdit_field* _fld; - // @cmember Sheet con i dati + // @cmember:(INTERNAL) Sheet con i dati TArray_sheet* _sheet; - // @cmember Numero di righe dello sheet + // @cmember:(INTERNAL) Numero di righe dello sheet int _row; - // @cmember Campi di input sulla maschera + // @cmember:(INTERNAL) Campi di input sulla maschera TToken_string _inp_id; - // @cmember Campi di output sulla maschera + // @cmember:(INTERNAL) Campi di output sulla maschera TToken_string _out_id; // @access Protected Member @@ -678,14 +721,17 @@ public: KEY run(); }; -//@class TReal_field | Classe per la gestione dei campi di numeri reali +// @doc EXTERNAL + +// @class TReal_field | Classe per la gestione dei campi di numeri reali // // @base public | TEdit_field class TReal_field : public TEdit_field +// @author:(INTERNAL) Guido { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Numero di decimeali del campo + // @cmember:(INTERNAL) Numero di decimeali del campo int _decimals; // @access Protected Member @@ -728,10 +774,14 @@ public: TReal_field(TMask* mask); }; -//@class TDate_field | Classe per la gestione dei campi data +// @doc EXTERNAL + +// @class TDate_field | Classe per la gestione dei campi data // // @base public | TEdit_field class TDate_field : public TEdit_field + +// @author:(INTERNAL) Guido { // @access Protected Member protected: @@ -762,10 +812,14 @@ public: TDate_field(TMask* mask); }; +// @doc EXTERNAL + // @class TBoolean_field | Classe per la gestione dei campi boolean (check box) // // @base public | TMask_field class TBoolean_field : public TMask_field + +// @author:(INTERNAL) Guido { // @access Protected Member protected: @@ -802,11 +856,13 @@ public: TBoolean_field(TMask* mask); }; +// @doc EXTERNAL // @class TList_field | Classe per la gestione dei campi lista (list box) // // @base public | TMask_field class TList_field : public TMask_field +// @author:(INTERNAL) Guido { // @access Private Member @@ -872,20 +928,23 @@ public: int items() const; }; +// @doc EXTERNAL + // @class TRadio_field | Classe per la gestione dei campi lista (list box) // // @base public | TList_field class TRadio_field : public TList_field +// @author:(INTERNAL) Guido { - // @access Provate Member + // @access:(INTERNAL) Private Member - // @ccost MAX_RADIO | 8 | Numero massimo di opzioni di un radio button + // @ccost:(INTERNAL) MAX_RADIO | 8 | Numero massimo di opzioni di un radio button enum { MAX_RADIO = 8 }; - // @cmember Numero di opzioni presenti nel radio button + // @cmember:(INTERNAL) Numero di opzioni presenti nel radio button int _nitems; - // @cmember Numero della voce attiva nel radio button + // @cmember:(INTERNAL) Numero della voce attiva nel radio button int _active_item; - // @cmember Finestre delle righe del radiobutton + // @cmember:(INTERNAL) Finestre delle righe del radiobutton WINDOW _radio_ctl_win[MAX_RADIO]; // @access Protected Member @@ -922,16 +981,20 @@ public: bool move_focus(int d); }; +// @doc EXTERNAL + // @class TButton_field | Classe per la gestione dei campi bottone // // @base public | TMask_field class TButton_field : public TMask_field -{ - // @access Private Member - // @cmember Valore della combinazione di tasti che sostituisce il bottone +// @author:(INTERNAL) Guido +{ + // @access:(INTERNAL) Private Member + + // @cmember:(INTERNAL) Valore della combinazione di tasti che sostituisce il bottone KEY _virtual_key; - // @cmember Tasto generato quando viene premuto il bottone che si sta gestendo + // @cmember:(INTERNAL) Tasto generato quando viene premuto il bottone che si sta gestendo KEY _exit_key; // @access Protected Member @@ -965,11 +1028,13 @@ public: { return _exit_key; } }; +// @doc EXTERNAL // @class TGroup_field | Classe per la gestione del disegno dei group box // // @base public | TMask_field class TGroup_field : public TMask_field +// @author:(INTERNAL) Guido { // @access Protected Member protected: @@ -990,16 +1055,19 @@ public: TGroup_field(TMask* mask); }; +// @doc EXTERNAL // @class TMemo_field | Classe per la gestione dei campi memo // // @base public | TMask_field class TMemo_field : public TMask_field +// @author:(INTERNAL) Guido { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Oggetto text che contiene il valore del campo memo + // @cmember:(INTERNAL) Oggetto text che contiene il valore del campo memo TXEDIT _te; + // @cmember:(INTERNAL) Contenuto del campo memo TToken_string _data; // @access Protected Member @@ -1043,23 +1111,25 @@ public: virtual ~TMemo_field(); }; -// @class TZoom_field | Come edit filed ma zooma per l'editing dei campi memo +// @doc EXTERNAL + +// @class TZoom_field | Come ma zooma per l'editing dei campi memo // // @base public | TEdit_field class TZoom_field : public TEdit_field +// @author:(INTERNAL) Guido { - // @access Private Member + // @access:(INTERNAL) Private Member + + // @cmember:(INTERNAL) ??? TToken_string _memo; - // @cmember Finestra del bottone per lo zoom del campo + // @cmember:(INTERNAL) Finestra del bottone per lo zoom del campo WINDOW _buttonzoom; - // @access Protected Member protected: - - // @cmember Ritorna l'identificatore della classe virtual word class_id() const { return CLASS_ZOOM_FIELD; }; @@ -1073,8 +1143,9 @@ protected: virtual const char* get_window_data() const; // @cmember Scrive il valore del campo virtual void set_field_data(const char* data); - // @cmember Legge il valore del campo + // @cmember Legge il valore del campo virtual const char* get_field_data() const; + // @cmember ??? void set_first_line( const char * c ); // @cmember Crea il controllo @@ -1104,27 +1175,3 @@ public: #endif // __MASKFLD_H -// @struct TField_Flags | ATTENZIONE: questa struttura e' deifnita nella calsse . -// Serve per definire i flegs di settaggio di un campo -// -// @field bool | automagic | TRUE se il campo e' automagic (campi data e numero che assumono data -// odierna e anno corrente nel caso non venga inserito nessun valore) -// @field bool | dirty | TRUE se il campo e' stato modificato durante l' esecuzione della maschera -// @field bool | enabled | TRUE se il campo e' editabile -// @field bool | enable_default | TRUE se il campo e' abilitato di default -// @field bool | firm | TRUE se il campo contiene la ditta corrente -// @field bool | focusdirty | TRUE se il campo e' stato modificato mentre il campo aveva il focus -// @field bool | ghost | TRUE se si tratta di un campo fantasma -// @field bool | password | Campo password (you write but you don't see anything) -// @field bool | persistent | Campo persistente (non si cancella mai) -// @field bool | rightjust | TRUE se il campo deve essere giustificato a destra -// @field bool | roman | TRUE se il campo e' un numero romano -// @field bool | shown | TRUE se il campo e' visibile -// @field bool | show_default | TRUE se il campo e' visibile di default -// @field bool | trim | TRUE se occorre fare la trim su una stringa (vedi e -// ) -// @field bool | uppercase | TRUE se il campo e' maiuscolo -// @field bool | exchange | TRUE se il campo e' in valuta -// @field bool | zerofilled | TRUE se il campo -// @field void | TField_Flags() | Costruttore -// @field char | update(const char*) | Aggiorna i bit della struttura secondo i valori letti da file diff --git a/include/msksheet.cpp b/include/msksheet.cpp index 20313b8f4..6f0bae717 100755 --- a/include/msksheet.cpp +++ b/include/msksheet.cpp @@ -27,66 +27,65 @@ class TSpreadsheet : public TWindow // @cfriend TSheet_field friend class TSheet_field; - // @access Private Member + // @access:(INTERNAL) Private Member enum { - // @ccost ITF_CID | 0 | Identifica l'interfaccia dello spreadsheet + // @ccost:(INTERNAL) ITF_CID | 0 | Identifica l'interfaccia dello spreadsheet ITF_CID = 0, - // @ccost LIST_CID | 1 | Identifica il contenuto dello spreadsheet + // @ccost:(INTERNAL) LIST_CID | 1 | Identifica il contenuto dello spreadsheet LIST_CID = 1 }; - // @cmember Array di TToken_strings contenenti le righe + // @cmember:(INTERNAL) Array di TToken_strings contenenti le righe TString_array _str; - // @cmember Array delle colonne disattivate (solo visualizzazione) + // @cmember:(INTERNAL) Array delle colonne disattivate (solo visualizzazione) TBit_array _column_disabled; - // @cmember Array dell celle disattivate (solo visualizzazione) + // @cmember:(INTERNAL) Array dell celle disattivate (solo visualizzazione) TArray _disabled; - // @cmember Maschera in cui e' contenuto lo spreadsheet + // @cmember:(INTERNAL) Maschera in cui e' contenuto lo spreadsheet TMask _mask; - // @cmember Numero di colonne presenti nello spreadsheet + // @cmember:(INTERNAL) Numero di colonne presenti nello spreadsheet int _columns; - // @cmember Trucco per evitare che lo sheet prenda il focus tutte le volte che parte la maschera + // @cmember:(INTERNAL) Trucco per evitare che lo sheet prenda il focus tutte le volte che parte la maschera bool _firstfocus; - // @cmember Indica se e' attivo lo spreadsheet + // @cmember:(INTERNAL) Indica se e' attivo lo spreadsheet bool _active; - // @cmember Puntatore al contenuto dello spreadsheet + // @cmember:(INTERNAL) Puntatore al contenuto dello spreadsheet XI_OBJ *_list; - // @cmember Puntatore all'interfaccia dello spreadsheet + // @cmember:(INTERNAL) Puntatore all'interfaccia dello spreadsheet XI_OBJ *_itf; - - // @cmember Funzione per la gestione di una riga dello sheet (vedi ) + // @cmember:(INTERNAL) Funzione per la gestione di una riga dello sheet (vedi ) SPREADSHEET_NOTIFY _notify; - // @cmember Funzione per l'apertura della maschera di edit della riga + // @cmember:(INTERNAL) Funzione per l'apertura della maschera di edit della riga // (vedi ) SPREADSHEET_GETMASK _getmask; - // @cmember Campo che possiede lo spreadsheet + // @cmember:(INTERNAL) Campo che possiede lo spreadsheet TSheet_field* _owner; - // @cmember Campo corrente che si sta editando + // @cmember:(INTERNAL) Campo corrente che si sta editando TMask_field* _edit_field; - // @cmember Coordinata della riga della cella corrente + // @cmember:(INTERNAL) Coordinata della riga della cella corrente int _cur_row; - // @cmember Numero del record sul file al quale fa riferimento la cella corrente + // @cmember:(INTERNAL) Numero del record sul file al quale fa riferimento la cella corrente int _cur_rec; - // @cmember Coordinata della colonna della cella corrente + // @cmember:(INTERNAL) Coordinata della colonna della cella corrente int _cur_col; - // @cmember Indica se la riga corrente e' stat modificata + // @cmember:(INTERNAL) Indica se la riga corrente e' stat modificata bool _row_dirty; - // @cmember Indica se la cella corrente e' stat modificata + // @cmember:(INTERNAL) Indica se la cella corrente e' stat modificata bool _cell_dirty; - // @cmember Permette di gestire i check OFF_ROW e OFF_CELL + // @cmember:(INTERNAL) Permette di gestire i check OFF_ROW e OFF_CELL bool _check_enabled; - // @cmember Numero della riga che necessita aggiornamento (vengono aggiornate + // @cmember:(INTERNAL) Numero della riga che necessita aggiornamento (vengono aggiornate // nella ) int _needs_update; - // @cmember Inizializza lo spreadsheet + // @cmember:(INTERNAL) Inizializza lo spreadsheet void init(); - // @cmember Funzione che intercetta gli eventi dello spreadsheet + // @cmember:(INTERNAL) Funzione che intercetta gli eventi dello spreadsheet friend void XVT_CALLCONV1 xiev_handler(XI_OBJ *itf, XI_EVENT *xiev); // @access Protected Member @@ -243,8 +242,6 @@ public: virtual ~TSpreadsheet(); }; -// @doc EXTERNAL - // Certified 100% void TSpreadsheet::init() { @@ -259,6 +256,7 @@ void TSpreadsheet::init() first = FALSE; } +// @doc INTERNAL // @mfunc Costruttore TSpreadsheet::TSpreadsheet( @@ -654,6 +652,7 @@ void TSpreadsheet::set_focus_cell(int riga, int colonna) } } +// @doc INTERNAL // @mfunc Inserisce un record in una posizione stabilita // @@ -696,6 +695,7 @@ int TSpreadsheet::insert( return r; } +// @doc INTERNAL // @mfunc Elimina una riga // @@ -737,6 +737,7 @@ bool TSpreadsheet::destroy( return ok; } +// @doc INTERNAL // @mfunc Modifica a video la riga void TSpreadsheet::update( @@ -1304,6 +1305,8 @@ void TSpreadsheet::on_idle() } } +// @doc INTERNAL + // @mfunc Cerca la colonna col XI_OBJ* TSpreadsheet::find_column( int col) const // @parm Indice o identificatore colonna @@ -1526,6 +1529,8 @@ void TSpreadsheet::mask2str(int rec) // Certified 50% +// @doc INTERNAL + // @mfunc Permette di abilitare/disabilitare una singola cella void TSpreadsheet::enable_cell( int row, // @parm Riga della cella da abilitare/disabilitare @@ -1563,6 +1568,8 @@ void TSpreadsheet::enable_cell( } } +// @doc INTERNAL + // @mfunc Permette di abilitare/disabiltare una colonna void TSpreadsheet::enable_column( int col, // @parm Numero della colonna da abilitare/disabilitare @@ -1684,6 +1691,8 @@ void TSpreadsheet::set_column_justify(int col, bool right) } // Certified 99% +// @doc INTERNAL + // @mfunc Controlla se una cella o un'intera riga e' disabilitata // // @rdesc Se column e' minore di zero si considera l'intera riga @@ -1967,6 +1976,8 @@ int TSheet_field::first_empty() const } +// @doc EXTERNAL + // @mfunc Ritorna nuova riga dello spreadshhet // // @rdesc Ritorna la stringa letta @@ -1989,6 +2000,7 @@ TToken_string& TSheet_field::row( return _sheet->row(n); } +// @doc EXTERNAL // @mfunc Forza l'aggiornamento dei dati della riga sullo schermo void TSheet_field::force_update( diff --git a/include/msksheet.h b/include/msksheet.h index b3241ffca..c4cad2f54 100755 --- a/include/msksheet.h +++ b/include/msksheet.h @@ -7,14 +7,21 @@ #define K_ROWEDIT ( K_CTRL + 'I' ) -// @doc EXTERNAL + class TSheet_field; -// @type SPREADSHEET_NOTIFY | Gestisce l'ingresso, l'uscita e la modifica da una riga dello sheet +// @doc EXTERNAL + +// @type SPREADSHEET_NOTIFY | Prototipo funzione che gestisce l'ingresso, l'uscita e la modifica da una riga dello sheet typedef bool (*SPREADSHEET_NOTIFY)(TSheet_field& s, int r, KEY k); -// @type SPREADSHEET_GETMASK | Ritorna una maschera di edit diversa a seconda della riga + +// @doc EXTERNAL + +// @type SPREADSHEET_GETMASK | Prototipo funzione che ritorna una maschera di edit diversa a seconda della riga typedef TMask* (*SPREADSHEET_GETMASK)( int numriga, TMask& fullmask, bool destroy ); +// @doc EXTERNAL + // @class TSheet_field | Classe per la gestione dei campi di uno spreadsheet // // @base public | TMask_field @@ -22,15 +29,16 @@ class TSheet_field : public TMask_field { // @author:(INTERNAL) Guido + // @cfriend TSpreadsheet friend class TSpreadsheet; - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Spreadsheet di apprtenenza dei campi + // @cmember:(INTERNAL) Spreadsheet di apprtenenza dei campi TSpreadsheet* _sheet; - // @cmember Intestazione di tutte le colonne + // @cmember:(INTERNAL) Intestazione di tutte le colonne TToken_string _head; - // @cmember Indica se aggiungere a fondo dello spreadsheet o nella riga in cui ti trovi + // @cmember:(INTERNAL) Indica se aggiungere a fondo dello spreadsheet o nella riga in cui ti trovi bool _append; // @access Protected Member diff --git a/include/object.h b/include/object.h index 545cfa90b..f84e50a1c 100755 --- a/include/object.h +++ b/include/object.h @@ -22,9 +22,10 @@ ////////////////////////////////////////////////////////////////////////////// // @doc EXTERNAL -// + // @class TObject | Classe base per la definizione della gerarchia degli oggetti class TObject +// @author:(INTERNAL) Guido { // @access Public Member public: @@ -54,10 +55,13 @@ public: // Error Object ////////////////////////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @class TError_Object | Classe per poter ritornare un oggetto sempre errato (ok() == false) // // @base public | TObject class TError_Object : public TObject +// @author:(INTERNAL) Guido { // @access Public Member public: @@ -75,10 +79,13 @@ public: ////////////////////////////////////////////////////////////////////////////// // Error Object ////////////////////////////////////////////////////////////////////////////// + + // @class TSortable | Classe per la comparazione degli oggetti // // @base public | TObject class TSortable : public TObject +// @author:(INTERNAL) Guido { // @access Public Memebr public: @@ -99,24 +106,31 @@ public: // inline functions ////////////////////////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @func inline ostream& | operator | Permette di reindirizzare l'oggeto per la stampa + +// @rdesc Ritorna l'output sul quale e' stata reindirizzata la stampa inline ostream& operator <<( ostream& out, // @parm Indica l'output sul quale stampare l'oggetto const TObject& obj) // @parm Oggetto da stampare - // @rdesc Ritorna l'output sul quale e' stata reindirizzata la stampa + { obj.print_on(out); return out; } + +// @doc EXTERNAL + // @func inline istream& | operator | Permette di leggere l'oggetto +// +// @rdesc Ritorna l'input dal quale e' stato letto l'oggetto inline istream& operator >>( istream& in, // @parm Input da cui leggere l'oggetto TObject& obj) // @parm Indirizzo in cui posizionare l'oggetto letto - // @rdesc Ritorna l'input dal quale e' stato letto l'oggetto - // // @comm Legge dall'input passato come parametro l'oggetto, nel caso si tratti // di un oggetto on valido viene dato un messaggio di errore. { @@ -125,6 +139,8 @@ inline istream& operator >>( return in; } +// @doc EXTERNAL + // @func inline bool | operator == | Controlla se 2 oggetti sono uguali // // @rdesc Ritorna i seguenti valori @@ -143,16 +159,18 @@ inline bool operator ==( return res == 0 || res == UNDEFINED; } +// @doc EXTERNAL + // @func inline bool | operator | Controlla se un oggetto e' maggiore dell'altro +// +// @rdesc Ritorna i seguenti valori: +// +// @flag TRUE | Se

e' maggiore di

+// @flag FALSE | Se

e' maggiore o uguale a

inline bool operator >( const TSortable& a, // @parm Primo oggetto da confrontare const TSortable& b) // @parm Secondo oggetto da confrontare - // @rdesc Ritorna i seguenti valori - // - // @flag TRUE | Se

e' maggiore di

- // @flag FALSE | Se

e' maggiore o uguale a

- // // @comm Controlla se l'oggetti passato come primo parametro e' maggiore del // secondo utilizzando il criterio di comparazione previsto per l'oggetto. { @@ -160,16 +178,17 @@ inline bool operator >( return res > 0 || res == UNDEFINED; } -// @func inline bool | operator | Controlla se un oggetto e' minore dell'altro -inline bool operator <( - const TSortable& a, // @parm Primo oggetto da confrontare - const TSortable& b) // @parm Secondo oggetto da confrontare +// @doc EXTERNAL +// @func inline bool | operator | Controlla se un oggetto e' minore dell'altro // @rdesc Ritorna i seguenti valori // // @flag TRUE | Se

e' minore di

// @flag FALSE | Se

e' minore o uguale a

- // +inline bool operator <( + const TSortable& a, // @parm Primo oggetto da confrontare + const TSortable& b) // @parm Secondo oggetto da confrontare + // @comm Controlla se l'oggetti passato come primo parametro e' minore del // secondo utilizzando il criterio di comparazione previsto per l'oggetto. { @@ -177,15 +196,17 @@ inline bool operator <( return res < 0 || res == UNDEFINED; } +// @doc EXTERNAL + // @func inline bool | operator = | Controlla se un oggetto e' maggiore o uguale all'altro +// @rdesc Ritorna i seguenti valori +// +// @flag TRUE | Se

e' maggiore o uguale a

+// @flag FALSE | Se

e' maggiore

inline bool operator >=( const TSortable& a, // @parm Primo oggetto da confrontare const TSortable& b) // @parm Secondo oggetto da confrontare - // @rdesc Ritorna i seguenti valori - // - // @flag TRUE | Se

e' maggiore o uguale a

- // @flag FALSE | Se

e' maggiore

// // @comm Controlla se l'oggetti passato come primo parametro e' maggiore o uguale al // secondo utilizzando il criterio di comparazione previsto per l'oggetto. @@ -194,16 +215,17 @@ inline bool operator >=( return res >= 0 || res == UNDEFINED; } -// @func inline bool | operator = | Controlla se un oggetto e' minore o uguale all'altro -inline bool operator <=( - const TSortable& a, // @parm Primo oggetto da confrontare - const TSortable& b) // @parm Secondo oggetto da confrontare +// @doc EXTERNAL +// @func inline bool | operator = | Controlla se un oggetto e' minore o uguale all'altro // @rdesc Ritorna i seguenti valori // // @flag TRUE | Se

e' minore o uguale a

// @flag FALSE | Se

e' minore

- // +inline bool operator <=( + const TSortable& a, // @parm Primo oggetto da confrontare + const TSortable& b) // @parm Secondo oggetto da confrontare + // @comm Controlla se l'oggetti passato come primo parametro e' minore o uguale al // secondo utilizzando il criterio di comparazione previsto per l'oggetto. { @@ -211,6 +233,7 @@ inline bool operator <=( return res <= 0 || res == UNDEFINED; } +// @doc EXTERNAL // @func inline bool | operator != | Controlla se 2 oggetti sono diversi // diff --git a/include/prefix.cpp b/include/prefix.cpp index 4288b4092..836acb4b3 100755 --- a/include/prefix.cpp +++ b/include/prefix.cpp @@ -27,11 +27,21 @@ extern int get_error(int); HIDDEN TString16 _user; HIDDEN TPrefix* _prefhndl = NULL; +// @doc EXTERNAL + +// @func Ritorna il nome dell'utente attuale +// +// @rdesc Ritorno il nome dell'utente attuale TString& user() { return _user; } +// @doc EXTERNAL + +// @func Inizializza (crea) un nuovo file "prefix.txt" +// +// @rdesc Ritorna l'oggetto creato TPrefix& prefix_init() { CHECK(_prefhndl == NULL, "Can't create two prefix objects"); @@ -39,12 +49,20 @@ TPrefix& prefix_init() return *_prefhndl; } +// @doc EXTERNAL + +// @func Legge il file "prefix.txt" +// +// @rdesc Ritorna l'oggetto letto TPrefix& prefix() { CHECK(_prefhndl, "Can't access null prefix"); return *_prefhndl; } +// @doc EXTERNAL + +// @func Distrugge l'oggett in memoria void prefix_destroy() { delete _prefhndl; @@ -158,6 +176,8 @@ HIDDEN void openall(bool changestudy, TBit_array& excl, int oldmax, TBit_array& } } +// @doc EXTERNAL + // @mfunc Riapre tutti gli archivi della ditta attiva void TPrefix::reopen() const @@ -175,6 +195,7 @@ void TPrefix::reopen() const } } +// @doc EXTERNAL // @mfunc Setta la ditta corrente void TPrefix::set( @@ -186,7 +207,7 @@ void TPrefix::set( // // @flag NULL | Chiude tutti i files // @flag COM | Apre il direttorio con i dati comuni - // @flga DEF | Riapre la ditta indicata nel file prefix.txt + // @flag DEF | Riapre la ditta indicata nel file prefix.txt // @flag codice ditta | Apre la ditta indicata { if (name == NULL) @@ -318,6 +339,7 @@ bool TPrefix::set_codditta(long codditta, bool force) return FALSE; } +// @doc EXTERNAL // @mfunc Ritorna la descrizione del file passato const char* TPrefix::description( @@ -371,9 +393,14 @@ const char* TPrefix::description(int cod) const } -// Restituisce il nome di una directory dati // Certified 90% -const char* firm2dir(long codditta) +// @doc EXTERNAL + +// @func Converte il numero di una ditta nella sua directory dati +// +// @rdesc Restituisce il nome di una directory dati +const char* firm2dir( + long codditta) // @parm Codice ditta da convertire { TFixed_string dir(__tmp_string, 256); switch (codditta) diff --git a/include/prefix.h b/include/prefix.h index a59937c86..d1693bc57 100755 --- a/include/prefix.h +++ b/include/prefix.h @@ -13,29 +13,31 @@ #include #endif +// @doc EXTERNAL + // @class TPrefix | Classe contenente le informazioni sulla ditta correntemente in uso // // @base public | TObject class TPrefix : public TObject -// @author:(INTERNAL) Alex-Guido +// @author:(INTERNAL) Sandro-Guido { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Contenuto del file "prefix.txt" + // @cmember:(INTERNAL) Contenuto del file "prefix.txt" TString _prefix; - // @cmember Array di flag di apertura dei file (dir.gen) + // @cmember:(INTERNAL) Array di flag di apertura dei file (dir.gen) int* _dirfl; - // @cmember Array di flag di apertura dei file (trc.gen) + // @cmember:(INTERNAL) Array di flag di apertura dei file (trc.gen) int* _recfl; - // @cmember Livello degli archivi + // @cmember:(INTERNAL) Livello degli archivi long _filelevel; - // @cmember Numero di files esitenti + // @cmember:(INTERNAL) Numero di files esitenti int _items; - // @cmember Puntatore alla lista dei file (dir.gen) + // @cmember:(INTERNAL) Puntatore alla lista dei file (dir.gen) SecDef* _fdir; - // @cmember Puntatore alla lista dei record (trc.gen) + // @cmember:(INTERNAL) Puntatore alla lista dei record (trc.gen) SecDef* _rdir; // @access Protected Member diff --git a/include/printapp.cpp b/include/printapp.cpp index 3bb39f251..e34cd8863 100755 --- a/include/printapp.cpp +++ b/include/printapp.cpp @@ -11,8 +11,6 @@ #include #include -// @doc EXTERNAL - TLocalisamfile *fff; const char* const printf_types = "dDiIuUoOxXfeEgGcCnNsSpPrRtTaA"; @@ -161,6 +159,8 @@ void TPrint_application::_reset_tree(link_item * head) } } +// @doc INTERNAL + // @mfunc Cerca per il nodo

dove agganciarsi per rispettare la relazione // // @rdesc Ritorna il nodo a cui agganciarsi @@ -184,6 +184,8 @@ link_item *TPrint_application::_look_print_node ( return NULL; } +// @doc EXTERNAL + // @mfunc Setta un segnalibro nell'anteprima di stampa // // @rdesc Ritorna il numero identificatore il segnalibro creato @@ -205,6 +207,8 @@ void TPrint_application::add_file (const char *tab, int from) add_file(TTable::name2log (tab), from); } +// @doc EXTERNAL + // @mfunc Aggiunge un file del cursore nell'albero di stampa void TPrint_application::add_file ( int file, // @parm Numero logico del file da aggiungere @@ -245,6 +249,8 @@ void TPrint_application::add_file ( static char tb[120]; +// @doc EXTERNAL + // @mfunc Permette di trovare un link ipertestuale // // @rdesc Ritorna l'ID del link ipertestuale trovato (-1 se non viene trovato) @@ -265,6 +271,8 @@ int TPrint_application::find_link( return -1; } +// @doc EXTERNAL + // @mfunc Permette di abilitare determinati colori come indicatori di legame ipertestuale // // @rdesc Ritorna l'ID del link ipertestuale di cui sono stati abilitati i colori @@ -309,6 +317,8 @@ void TPrint_application::disable_link (char fg, char bg) } } +// @doc EXTERNAL + // @mfunc Abilita/disabilita più link per la void TPrint_application::set_multiple_link ( bool on) // @parm Indica se effettuare il link con tutti gli elementi selezioanti della riga @@ -352,6 +362,7 @@ void TPrint_application::_pp_footer (TPrinter &) new TPrintrow ((TPrintrow &) (prapp._footer)[i])); } +// @doc EXTERNAL // @mfunc Permette di stampare sullo sfondo e per variarne gli attributi void TPrint_application::set_background ( @@ -462,6 +473,8 @@ TCursor* TPrint_application::get_cursor (int c) return (TCursor *) & _cursors[c]; } +// @doc EXTERNAL + // @mfunc Aggiunge un cursore alla classe // // @rdesc Ritorna l'identificatore del cursore aggiunto @@ -505,6 +518,8 @@ void TPrint_application::reset_print () _print_defined = FALSE; } +// @doc EXTERNAL + // @mfunc Permette di definire l'header della stampa void TPrint_application::set_header ( int r, // @parm Numero della riga nella quale stampare l'header @@ -527,6 +542,8 @@ void TPrint_application::set_header ( pp->put (__tmp_string); } +// @doc EXTERNAL + // @mfunc Permette di definire il footer della stampa void TPrint_application::set_footer ( int r, // @parm Numero della riga nella quale stampare il footer @@ -582,6 +599,8 @@ void TPrint_application::merge_export_file(const char* file, bool header, bool d } } +// @doc EXTERNAL + // @mfunc Permette di settare una riga di stampa void TPrint_application::set_row ( int r, // @parm Numero della riga da settare @@ -976,6 +995,8 @@ void TPrint_application::set_row ( va_end (params); } +// @doc EXTERNAL + // @mfunc Setta i valori di traduzione dei campi void TPrint_application::set_translation ( int lognum, // @parm Numero logido del file condenete il campo da tradurre @@ -1123,6 +1144,7 @@ bool TPrint_application::print_tree (link_item * head) return go; } +// @doc INTERNAL // @mfunc Stampa un singolo record // diff --git a/include/printapp.h b/include/printapp.h index b2ab9011b..6b6c5cf80 100755 --- a/include/printapp.h +++ b/include/printapp.h @@ -16,13 +16,14 @@ // compatibility #define TPrintapp TPrint_application -// @doc EXTERNAL +// @doc INTERNAL // @enum print_action enum print_action { REPEAT_PAGE, // @emem Ripeta la stampa dell'ultima pagina NEXT_PAGE }; // @emem Stampa la prossima pagina +// @doc EXTERNAL // @func funzione per il passaggio delle informazioni alla // @@ -49,6 +50,8 @@ const char* FLD( const char* FLD(const char* tabname, const char* f, int from = -1, int to = -1); +// @doc EXTERNAL + // @struct link_item | Definisce il file a cui si riferisce il link da effettuare sulla stampa struct link_item { int _logicnum; // @field Numero logico del link (default l) @@ -64,6 +67,8 @@ const char* FLD( class TProgind; +// @doc EXTERNAL + // @class TPrint_application | Classe per la definizione delle applicazioni per la stampa // // @base public | TApplication @@ -129,94 +134,94 @@ class TPrint_application : public TApplication // Tutti i parametri relativi al progress indicator // vengono settati da funzioni apposite (vedi oltre) -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Descrittore delle righe + // @cmember:(INTERNAL) Descrittore delle righe TArray _rows; - // @cmember Array di cursroi + // @cmember:(INTERNAL) Array di cursroi TArray _cursors; - // @cmember Cursore corrente + // @cmember:(INTERNAL) Cursore corrente TCursor* _cur; - // @cmember Tabella di traduzione dei campi + // @cmember:(INTERNAL) Tabella di traduzione dei campi TArray _transtab; - // @cmember Header delle linee + // @cmember:(INTERNAL) Header delle linee TArray _header; - // @cmember Footer delle linee + // @cmember:(INTERNAL) Footer delle linee TArray _footer; - // @cmember Riga corrente di stampa + // @cmember:(INTERNAL) Riga corrente di stampa int _currow; - // @cmember Stile corrente di stampa + // @cmember:(INTERNAL) Stile corrente di stampa TPrintstyle _curstyle; - // @cmember Indica se effettuare il form feed automatico dopo ogni pagina + // @cmember:(INTERNAL) Indica se effettuare il form feed automatico dopo ogni pagina bool _auto_ff; - // @cmember Messaggio di attesa per la classe + // @cmember:(INTERNAL) Messaggio di attesa per la classe const char* _wmess; - // @cmember Indica se attivare barra per la classe + // @cmember:(INTERNAL) Indica se attivare barra per la classe bool _wbar; - // @cmember Indica se abilitare o disabilitare il bottone Annulla + // @cmember:(INTERNAL) Indica se abilitare o disabilitare il bottone Annulla bool _wcancel; - // @cmember Numero minimo di item per mostrare la barra di attesa + // @cmember:(INTERNAL) Numero minimo di item per mostrare la barra di attesa int _wthr; - // @cmember Nome del file di configurazione per la stampante + // @cmember:(INTERNAL) Nome del file di configurazione per la stampante const char* _confpr; - // @cmember Carattere di riempimento per campi vuoti + // @cmember:(INTERNAL) Carattere di riempimento per campi vuoti char _fillchar; - // @cmember Funzioni per la stampa automatica delle relazioni + // @cmember:(INTERNAL) Funzioni per la stampa automatica delle relazioni link_item* _pr_tree; - // @cmember Numero massimo di righe + // @cmember:(INTERNAL) Numero massimo di righe int _maxrow; - // @cmember Identificatore del file corrente + // @cmember:(INTERNAL) Identificatore del file corrente int _cur_file; - // @cmember Indica se è stat definita la stampante + // @cmember:(INTERNAL) Indica se è stat definita la stampante bool _print_defined; - // @cmember Indica se forzare la presenza della barra di attesa anche nella stampe a video + // @cmember:(INTERNAL) Indica se forzare la presenza della barra di attesa anche nella stampe a video bool _force_progind; - // @cmember Indica se forzare la rilettura delle + // @cmember:(INTERNAL) Indica se forzare la rilettura delle bool _force_setpage; - // @cmember Indica se stampare il valore 0 per i campi vuoti + // @cmember:(INTERNAL) Indica se stampare il valore 0 per i campi vuoti bool _print_zero; - // @cmember Barra di attesa + // @cmember:(INTERNAL) Barra di attesa TProgind* _prind; - // @cmember Picture default per i reali + // @cmember:(INTERNAL) Picture default per i reali const char* _picture; - // @cmember Ultima scelta di menù + // @cmember:(INTERNAL) Ultima scelta di menù MENU_TAG _last_choice; - // @cmember Numero di copie da stampare + // @cmember:(INTERNAL) Numero di copie da stampare int _ncopies; - // @cmember Indica se si volgia ripetere la stampa + // @cmember:(INTERNAL) Indica se si volgia ripetere la stampa bool _repeat_print; - // @cmember Indica se la stampa e' stata interrotta + // @cmember:(INTERNAL) Indica se la stampa e' stata interrotta bool _cancelled; - // @cmember Setta la stampante + // @cmember:(INTERNAL) Setta la stampante void set_printer() { printer().set(); } - // @cmember Stampa un singolo record + // @cmember:(INTERNAL) Stampa un singolo record bool print_one(int file); - // @cmember Permette di stampare tutti i campi record cercando nell'albero i file corrispondenti + // @cmember:(INTERNAL) Permette di stampare tutti i campi record cercando nell'albero i file corrispondenti bool print_tree(link_item* head); - // @cmember Metahandlers per controllare l'header quando si usa la + // @cmember:(INTERNAL) Metahandlers per controllare l'header quando si usa la // ; servono per controllare handlers di altre classi e chiamano // virtuali di . static void _pp_header(TPrinter& pr); - // @cmember Metahandlers per controllare il footer quando si usa la + // @cmember:(INTERNAL) Metahandlers per controllare il footer quando si usa la // ; servono per controllare handlers di altre classi e chiamano // virtuali di . static void _pp_footer(TPrinter& pr); - // @cmember Metahandlers per controllare i links quando si usa la + // @cmember:(INTERNAL) Metahandlers per controllare i links quando si usa la // ; servono per controllare handlers di altre classi e chiamano // virtuali di . static void _pp_link(int id, const char* s); - // @cmember Cerca per il nodo

dove agganciarsi per rispettare la relazione + // @cmember:(INTERNAL) Cerca per il nodo

dove agganciarsi per rispettare la relazione link_item* _look_print_node(link_item* head, int logicnum); - // @cmember Annulla l'alebero a partire dal nodo

+ // @cmember:(INTERNAL) Annulla l'alebero a partire dal nodo

void _reset_tree(link_item* head); - // @cmember Crea la finestra (vedi ) + // @cmember:(INTERNAL) Crea la finestra (vedi ) virtual bool create(); - // @cmember Distrugge la finestra + // @cmember:(INTERNAL) Distrugge la finestra virtual bool destroy(); // @access Protected Member diff --git a/include/printer.cpp b/include/printer.cpp index b4d694d4b..45f72b333 100755 --- a/include/printer.cpp +++ b/include/printer.cpp @@ -31,8 +31,6 @@ HIDDEN TPrinter* _printer = NULL; -// @doc EXTERNAL - TPrinter& printer() { if (_printer == NULL) @@ -522,6 +520,8 @@ bool printers_on_key(TMask_field & f, KEY key); // fv support structs for config +// @doc INTERNAL + // @mfunc Legge la descrizione della stampante dal file // // @rdesc Ritorna il risultato dell'operazione: @@ -893,6 +893,8 @@ PRINT_RCD* TPrinter::get_printrcd(int *size) #if XVT_OS == XVT_OS_WIN +// @doc EXTERNAL + // @mfunc Setta le caratteristiche della stampante leggendole da

void TPrinter::set_win_formlen( WINDOW prwin) // @parm Finestra effettiva di stampa (default NULL_WIN) @@ -1097,6 +1099,8 @@ TToken_string& TPrinter::getprinternames () return _printer_names; } +// @doc EXTERNAL + // @mfunc Legge la configurazione della stampante void TPrinter::read_configuration( const char* parag) // parm Nome del file di configurazione della stampante (default NULL) @@ -1305,6 +1309,8 @@ TPrintrow *TPrinter::getfooterline (int linetoget) return ((TPrintrow *) _footer.objptr (linetoget)); } +// @doc EXTERNAL + // @mfunc Setta il contenuto di una line dell'header void TPrinter::setheaderline ( int linetoset, // @parm Numero della linea da settare @@ -1327,6 +1333,8 @@ void TPrinter::setheaderline (int linetoset, const TPrintrow & line) setheaderline (linetoset, p); } +// @doc EXTERNAL + // @mfunc Setta il contenuto di una line dell'header void TPrinter::setfooterline ( int linetoset, // @parm Numero della linea da settare @@ -1359,6 +1367,8 @@ void TPrinter::resetfooter () // _footersize = 0; } +// @doc EXTERNAL + // @mfunc Metodo base per la stampa // // @rdesc Ritorna il risulato della stampa: @@ -1469,6 +1479,8 @@ word TPrinter::rows_left() const return left; } +// @doc EXTERNAL + // @mfunc Permette di stampare una riga // // @rdesc Ritorna il risultato della stampa: @@ -1534,6 +1546,8 @@ bool TPrinter::printfooter() return ok; } +// @doc EXTERNAL + // @mfunc Permette di saltare alcune righe dalla posizione corrente // // @rdesc Ritorna il risulato dell'operazione: @@ -1552,6 +1566,8 @@ bool TPrinter::skip( return jump(jumpline); } +// @doc EXTERNAL + // @mfunc Permette di saltare alla riga indicata // // @rdesc Ritorna il risultato dell'operazione @@ -1904,6 +1920,8 @@ bool TPrinter::set() } +// @doc EXTERNAL + // @mfunc Inserisce un file di export fatto da un'altra printer void TPrinter::merge_export_file( const char* file, @@ -1926,6 +1944,7 @@ void TPrinter::merge_export_file( } } +// @doc EXTERNAL // @mfunc Crea un segnalibro // diff --git a/include/printer.h b/include/printer.h index 039c228b0..6e261c330 100755 --- a/include/printer.h +++ b/include/printer.h @@ -25,6 +25,8 @@ enum TPrintstyle italicstyle = 4 // @emem Stile corsivo }; +// @doc EXTERNAL + // @enum TPrtype | Indica il tipo di stampante da utilizzare per la stampa enum TPrtype { @@ -37,12 +39,16 @@ enum TPrtype export = 6 // @emem Esporatzione di stampa }; +// @doc EXTERNAL + +// @enum TGraphic_shape | Indica la forma grafica da utilizzare per la stampa enum TGraphic_shape { - line, - box + line, // @emem Disgna una linea + box // @emem Disgna un box }; +// @doc EXTERNAL // @class TPrintrow | Classe per la definizione della stampa di una riga // @@ -51,25 +57,25 @@ class TPrintrow : public TObject // @author:(INTERNAL) Villa -// @access Private Member +// @access:(INTERNAL) Private Member { - // @ccost MAXSTR | 256 | Lunghezza massima della riga da stampare + // @ccost:(INTERNAL) MAXSTR | 256 | Lunghezza massima della riga da stampare enum { MAXSTR = 256 }; - // @cmember Stringa da stampare nella riga + // @cmember:(INTERNAL) Stringa da stampare nella riga TString256 _row; - // @cmember Attributi carattere dei caratteri + // @cmember:(INTERNAL) Attributi carattere dei caratteri char _attr[MAXSTR]; - // @cmember Attributi colore dei caratteri + // @cmember:(INTERNAL) Attributi colore dei caratteri int _cols[MAXSTR]; - // @cmember Inizio delle nuove posizioni di tabulazione + // @cmember:(INTERNAL) Inizio delle nuove posizioni di tabulazione TBit_array _tab; - // @cmember Attributo carattere corrente + // @cmember:(INTERNAL) Attributo carattere corrente TPrintstyle _currentstyle; - // @cmember Attributo colore corrente + // @cmember:(INTERNAL) Attributo colore corrente int _currentcolor; - // @cmember Ultima posizione di stampa + // @cmember:(INTERNAL) Ultima posizione di stampa int _lastpos; // @access Public Member @@ -120,6 +126,8 @@ public: { return _lastpos; } }; +// @doc INTERNAL + // @class PrinterDef | Classe per la definizione delle stampanti da utilizzare // // @base public | TObject @@ -127,28 +135,29 @@ class PrinterDef : public TObject // @author:(INTERNAL) Villa -// @access Private Member { // @cfriend TPrinter friend class TPrinter; + + // @access:(INTERNAL) Private Member - // @cmember Nome del file della stampante + // @cmember:(INTERNAL) Nome del file della stampante TString _printername; - // @cmember Tipo di stampante da utilizzare (0=diretta,1=locale,2=spool) + // @cmember:(INTERNAL) Tipo di stampante da utilizzare (0=diretta,1=locale,2=spool) TString _printertype; - // @cmember Filtro pèer la pipe '' (solo per unix + // @cmember:(INTERNAL) Filtro pèer la pipe '' (solo per unix TString _filtername; - // @cmember Nome del device di stampa + // @cmember:(INTERNAL) Nome del device di stampa TString _devicename; - // @cmember Codici attributo per la stampante corrente + // @cmember:(INTERNAL) Codici attributo per la stampante corrente char _atstr[4][10]; - // @cmember Codici di stampa + // @cmember:(INTERNAL) Codici di stampa TString_array _codes; - // @cmember Nome dei codici di stampa + // @cmember:(INTERNAL) Nome dei codici di stampa TString_array _names; - // @cmember Codice del formfeed per la stampante corrente + // @cmember:(INTERNAL) Codice del formfeed per la stampante corrente TString _ffcode; - // @cmember Codice del new line per la stampante corrente + // @cmember:(INTERNAL) Codice del new line per la stampante corrente TString _nlcode; // @access Public Member @@ -168,6 +177,8 @@ public: {} }; +// @doc INTERNAL + // @class BkDef | Classe per la definizione dei bookmark in anteprima di stampa // // @base public | TObject @@ -201,140 +212,146 @@ public: class TPrinter; class TPrint_intersector; -// @type PRINTSECTIONHANDLER | Funzione definita dall'utente chiamata all'inizio della stampa +// @doc EXTERNAL + +// @type PRINTSECTIONHANDLER | Prototipo funzione definita dall'utente chiamata all'inizio della stampa // dell'header o del footer typedef void (*PRINTSECTIONHANDLER)(TPrinter& printer); -// @type LINKHANDLER | Funzione definita dall'utente per la gestione del link + +// @doc EXTERNAL + +// @type LINKHANDLER | Prototipo funzione definita dall'utente per la gestione del link typedef void (*LINKHANDLER)(int, const char*); class TViswin; +// @doc EXTERNAL + // @class TPrinter | Classe per la definzione delle operazioni sulla stampante // // @base public | TObject class TPrinter : public TObject // @author:(INTERNAL) Villa -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Puntatore al file di configurazione + // @cmember:(INTERNAL) Puntatore al file di configurazione FILE* _cnfptr; - // @cmember Puntatore al file della stampante + // @cmember:(INTERNAL) Puntatore al file della stampante FILE* _fp; - // @cmember Puntatore al file di visualizzaizone + // @cmember:(INTERNAL) Puntatore al file di visualizzaizone TViswin* _vf; - // @cmember Testo da stampare + // @cmember:(INTERNAL) Testo da stampare TTextfile _txt; - // @cmember Nome del file di esportazione + // @cmember:(INTERNAL) Nome del file di esportazione TFilename _exportfile; - // @cmember Dimensione dell'header + // @cmember:(INTERNAL) Dimensione dell'header int _headersize; - // @cmember Dimensione del footer + // @cmember:(INTERNAL) Dimensione del footer int _footersize; - // @cmember Contenuto dell'header + // @cmember:(INTERNAL) Contenuto dell'header TArray _header; - // @cmember Contenuto del footer + // @cmember:(INTERNAL) Contenuto del footer TArray _footer; - // @cmember Descrizione delle stampanti + // @cmember:(INTERNAL) Descrizione delle stampanti TArray _printers; - // @cmember Indice corrente della stampante + // @cmember:(INTERNAL) Indice corrente della stampante int _curprn; - // @cmember Codice corrente della stampante + // @cmember:(INTERNAL) Codice corrente della stampante int _curcode; - // @cmember Lunghezza della pagina logica + // @cmember:(INTERNAL) Lunghezza della pagina logica int _formlen; - // @cmember Larghezza della pagina logica + // @cmember:(INTERNAL) Larghezza della pagina logica int _formwidth; - // @cmember Prossima riga da stampare + // @cmember:(INTERNAL) Prossima riga da stampare int _currentrow; - // @cmember Nome del font per la stampa + // @cmember:(INTERNAL) Nome del font per la stampa TString80 _fontname; - // @cmember Dimensione del font per la stampa + // @cmember:(INTERNAL) Dimensione del font per la stampa int _ch_size; - // @cmember Pagina logica contenente la prossima riga da stampare + // @cmember:(INTERNAL) Pagina logica contenente la prossima riga da stampare word _currentpage; - // @cmember Prima pagina da stampare (normalmente 0) + // @cmember:(INTERNAL) Prima pagina da stampare (normalmente 0) word _frompage; - // @cmember Ultima pagina da stampare (normalmente USHRT_MAX) + // @cmember:(INTERNAL) Ultima pagina da stampare (normalmente USHRT_MAX) word _topage; - // @cmember Indica la stampa di un form feed dopo ogni footer + // @cmember:(INTERNAL) Indica la stampa di un form feed dopo ogni footer bool _hwformfeed; - // @cmember Indica il tipo di output selezionato dall'utente per la stampa + // @cmember:(INTERNAL) Indica il tipo di output selezionato dall'utente per la stampa TPrtype _printertype; - // @cmember Indica se la stampante e' inizializzata + // @cmember:(INTERNAL) Indica se la stampante e' inizializzata bool _isopen; - // @cmember Data di stampa + // @cmember:(INTERNAL) Data di stampa TDate _date; - // @cmember Nome del file per la stampa su disco + // @cmember:(INTERNAL) Nome del file per la stampa su disco TFilename _printerfile; - // @cmember Array di nomi dei link + // @cmember:(INTERNAL) Array di nomi dei link TArray _linksdescr; - // @cmember Array di nomi di segnalibri + // @cmember:(INTERNAL) Array di nomi di segnalibri TArray _bookmarks; - // @cmember Indica se e' attivo il link multiplo (vedi ) + // @cmember:(INTERNAL) Indica se e' attivo il link multiplo (vedi ) bool _multiple_link; - // @cmember Nome del paragrafo di configurazione + // @cmember:(INTERNAL) Nome del paragrafo di configurazione TString _config; - // @cmember Array di stringhe per la desccrizione del background + // @cmember:(INTERNAL) Array di stringhe per la desccrizione del background TString_array _background; - // @cmember Nomi dei file delle immagini da stampare + // @cmember:(INTERNAL) Nomi dei file delle immagini da stampare TString_array _image_names; - // @cmember Stringa contenente i @codes per il disegno dello sfondo + // @cmember:(INTERNAL) Stringa contenente i @codes per il disegno dello sfondo const char* _bg_desc; - // @cmember Nomi delle stampanti utilizzabile + // @cmember:(INTERNAL) Nomi delle stampanti utilizzabile TToken_string _printer_names; - // @cmember Indica se la stampante e' abilitata a trattare grafica + // @cmember:(INTERNAL) Indica se la stampante e' abilitata a trattare grafica bool _isgraphics; - // @cmember Indica se la stampante e' stata momentaneamente interrotta + // @cmember:(INTERNAL) Indica se la stampante e' stata momentaneamente interrotta bool _frozen; - // @cmember Numero di copie da fare + // @cmember:(INTERNAL) Numero di copie da fare int _ncopies; - // @cmember Descrizione completa dello stato della stampante + // @cmember:(INTERNAL) Descrizione completa dello stato della stampante PRINT_RCD* _print_rcd; - // @cmember Dimensione del record per la descrizione completa dello stato della stampante + // @cmember:(INTERNAL) Dimensione del record per la descrizione completa dello stato della stampante int _print_rcd_size; - // @cmember Numero di linee per pollice + // @cmember:(INTERNAL) Numero di linee per pollice int _lines_per_inch; - // @cmember Offset verticale in pixels + // @cmember:(INTERNAL) Offset verticale in pixels int _vert_offset; - // @cmember Offset orizzontale in pixels + // @cmember:(INTERNAL) Offset orizzontale in pixels int _horz_offset; - // @cmember Offset verticale in linee (in caratteri) + // @cmember:(INTERNAL) Offset verticale in linee (in caratteri) int _l_offset; - // @cmember Offset orizzontale in colonne (in caratteri) + // @cmember:(INTERNAL) Offset orizzontale in colonne (in caratteri) int _c_offset; - // @cmember Definizione dell stampa in punti per linea + // @cmember:(INTERNAL) Definizione dell stampa in punti per linea int _dots_per_line; - // @cmember Setta

con il profilo della stampante + // @cmember:(INTERNAL) Setta

con il profilo della stampante void _get_windows_printer_names(TToken_string& t); - // @cmember Indica se si tratta di copia multipla + // @cmember:(INTERNAL) Indica se si tratta di copia multipla bool _multiple_copies; - // @cmember Indica se occorre esportare l'header di stampa + // @cmember:(INTERNAL) Indica se occorre esportare l'header di stampa bool _export_header; - // @cmember Lunghezza dell'header di stampa da esportare + // @cmember:(INTERNAL) Lunghezza dell'header di stampa da esportare int _export_header_len; - // @cmember Handler dell'header + // @cmember:(INTERNAL) Handler dell'header PRINTSECTIONHANDLER _headerhandler; - // @cmember Handler del footer + // @cmember:(INTERNAL) Handler del footer PRINTSECTIONHANDLER _footerhandler; - // @cmember Header del link ipertestuale + // @cmember:(INTERNAL) Header del link ipertestuale LINKHANDLER _linkhandler; - - // @cmember caratteri per fincatura + // @cmember:(INTERNAL) Caratteri per fincatura char _fink[11]; - // @cmember fincatore per modo testo + // @cmember:(INTERNAL) Fincatore per modo testo TPrint_intersector* _finker; @@ -500,22 +517,47 @@ public: // @cmember Indica se attivato il link multiplo bool ismultiplelink() { return _multiple_link; } - - const char* get_fincatura() { return _fink; } - void set_fincatura(const char* s) { strncpy(_fink, s, sizeof(_fink)); } - // caratteri fincazione - char f_topleft() const { return _fink[0]; } - char f_topmiddle() const { return _fink[1]; } - char f_topright() const { return _fink[2]; } - char f_botleft() const { return _fink[3]; } - char f_botmiddle() const { return _fink[4]; } - char f_botright() const { return _fink[5]; } - char f_centerleft() const { return _fink[6]; } - char f_centermiddle() const { return _fink[7]; } - char f_centerright() const { return _fink[8]; } - char f_horizontal() const { return _fink[9]; } - char f_vertical() const { return _fink[10]; } + // @cmember Ritorna i caratteri di fincatura + const char* get_fincatura() + { return _fink; } + // @cmember Setta i caratteri di fincatura + void set_fincatura(const char* s) + { strncpy(_fink, s, sizeof(_fink)); } + + // @cmember Ritorna il carattere di fincatura alto-sinistra + char f_topleft() const + { return _fink[0]; } + // @cmember Ritorna il carattere di fincatura alto-centro + char f_topmiddle() const + { return _fink[1]; } + // @cmember Ritorna il carattere di fincatura alto-destra + char f_topright() const + { return _fink[2]; } + // @cmember Ritorna il carattere di fincatura basso-sinistra + char f_botleft() const + { return _fink[3]; } + // @cmember Ritorna il carattere di fincatura basso-centro + char f_botmiddle() const + { return _fink[4]; } + // @cmember Ritorna il carattere di fincatura basso-destra + char f_botright() const + { return _fink[5]; } + // @cmember Ritorna il carattere di fincatura centro-sinistra + char f_centerleft() const + { return _fink[6]; } + // @cmember Ritorna il carattere di fincatura centro-centro + char f_centermiddle() const + { return _fink[7]; } + // @cmember Ritorna il carattere di fincatura centro-destra + char f_centerright() const + { return _fink[8]; } + // @cmember Ritorna il carattere di fincatura orizzontale + char f_horizontal() const + { return _fink[9]; } + // @cmember Ritorna il carattere di fincatura verticale + char f_vertical() const + { return _fink[10]; } // @cmember Permette di saltare alcune righe dalla posizione corrente @@ -631,6 +673,7 @@ public: bool is_generic() { return (_dots_per_line == 1); } }; +// @doc EXTERNAL // @class TFile_printer | Classe per la definizione delle operazini per la stampa su file // @@ -638,39 +681,39 @@ public: class TFile_printer : public TPrinter // @author:(INTERNAL) Nicola -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Dimensione del file + // @cmember:(INTERNAL) Dimensione del file long _size; - // @cmember Disco al quale appertiene il file + // @cmember:(INTERNAL) Disco al quale appertiene il file const char * _drive; - // @cmember Numero progressivo volume + // @cmember:(INTERNAL) Numero progressivo volume int _volume; - // @cmember Numero di record per disco + // @cmember:(INTERNAL) Numero di record per disco int _num_rec_volume; - // @cmember Numero di record per inizio e fine volume + // @cmember:(INTERNAL) Numero di record per inizio e fine volume int _num_rec_testa_coda; - // @cmember Numero di record per inizio volume + // @cmember:(INTERNAL) Numero di record per inizio volume int _num_rec_inizio; - // @cmember Numero di record per coda volume + // @cmember:(INTERNAL) Numero di record per coda volume int _num_rec_fine; - // @cmember Lunghezza del record + // @cmember:(INTERNAL) Lunghezza del record int _len_rec; - // @cmember Array di tipi record + // @cmember:(INTERNAL) Array di tipi record TArray _record; - // @cmember Indica se il file sui dischetti deve avere un nome NON modificabile dall'utente + // @cmember:(INTERNAL) Indica se il file sui dischetti deve avere un nome NON modificabile dall'utente bool _nome_file_fissato; - // @cmember Indica se l'etichetta dei dischetti deve essere fissa + // @cmember:(INTERNAL) Indica se l'etichetta dei dischetti deve essere fissa bool _label_fissata; - // @cmember Indica se il disco deve essere formattato prima di fare la stampa + // @cmember:(INTERNAL) Indica se il disco deve essere formattato prima di fare la stampa bool _formatta; - // @cmember File da generare sui dischetti + // @cmember:(INTERNAL) File da generare sui dischetti const char* _file; - // @cmember Etichetta da scrivere sui dischetti + // @cmember:(INTERNAL) Etichetta da scrivere sui dischetti const char* _label; - // @cmember Array dei file temporanei generati + // @cmember:(INTERNAL) Array dei file temporanei generati TArray _tmp_files; - // @cmember Puntatore al file creato + // @cmember:(INTERNAL) Puntatore al file creato FILE* _fd; // bool scrivi_volume(); @@ -764,11 +807,13 @@ public: virtual ~TFile_printer(); }; +// @doc EXTERNAL + // @func Ritorna la stampante corrente // // @rdesc Ritorna l'identificatore della stamapnte corrente TPrinter& printer(); -// @func Distrugge la stampante corrente +// @func Distrugge l'oggetto della stampante corrente void printer_destroy(); diff --git a/include/printwin.cpp b/include/printwin.cpp index 4f2c0b9c6..600a4196f 100755 --- a/include/printwin.cpp +++ b/include/printwin.cpp @@ -220,6 +220,8 @@ void TPrintwin::paint_row(long j) } } +// @doc INTERNAL + // @mfunc Permette di stampare un rettangolo a video // // @rdesc Ritorna se e' riuscito a stampare in una unica pagina @@ -242,6 +244,8 @@ bool TPrintwin::print_band( return j+k < _txt.lines(); } +// @doc INTERNAL + // @mfunc Inizia la stampa // // @rdesc Ritorna se viene interrotta la stampa: diff --git a/include/printwin.h b/include/printwin.h index 1baac806a..baab5c0a0 100755 --- a/include/printwin.h +++ b/include/printwin.h @@ -13,8 +13,7 @@ #include #endif -// @doc EXTERNAL - +// @doc INTERNAL // @class TPrintwin | Classe per la implementazione di una finestra XVT per la stampa: // scrivendoci su tutto l'output va sulla stampante corrente. @@ -26,47 +25,47 @@ class TPrintwin : public TWindow // @access Private Member { - // @cmember Indica se la stampa e' stata interrotta + // @cmember:(INTERNAL) Indica se la stampa e' stata interrotta bool _aborted; - // @cmember Descrizione completa dello stato della stampante + // @cmember:(INTERNAL) Descrizione completa dello stato della stampante PRINT_RCD* _printrcd; - // @cmember Lunghezza del modulo di stampa + // @cmember:(INTERNAL) Lunghezza del modulo di stampa int _formlen; - // @cmember Larghezza del modulo di stampa + // @cmember:(INTERNAL) Larghezza del modulo di stampa int _formwidth; - // @cmember Lunghezza reale (vale per stampanti Generico/Solo testo) del modulo di stampa + // @cmember:(INTERNAL) Lunghezza reale (vale per stampanti Generico/Solo testo) del modulo di stampa int _realformlen; - // @cmember L'intero background della pagina (vedi ) + // @cmember:(INTERNAL) L'intero background della pagina (vedi ) TArray* _bg; - // @cmember TText da stampare + // @cmember:(INTERNAL) TText da stampare TTextfile& _txt; - // @cmember Array di immagini di stampare nel modulo sotto al testo + // @cmember:(INTERNAL) Array di immagini di stampare nel modulo sotto al testo TArray _images; - // @cmember Distanza in pixel tra una riga e la successiva + // @cmember:(INTERNAL) Distanza in pixel tra una riga e la successiva int _lead; - // @cmember Numero di pixel dalla linea base al limite superiore del font + // @cmember:(INTERNAL) Numero di pixel dalla linea base al limite superiore del font int _ascent; - // @cmember Numero di pixel dalla linea base al limite inferiore del font + // @cmember:(INTERNAL) Numero di pixel dalla linea base al limite inferiore del font int _descent; - // @cmember Dimensione dell'offset orizzontale + // @cmember:(INTERNAL) Dimensione dell'offset orizzontale int _hofs; - // @cmember Dimensione dell'offset verticale + // @cmember:(INTERNAL) Dimensione dell'offset verticale int _vofs; - // @cmember Altre caratteristihce del font (vedi XVT) + // @cmember:(INTERNAL) Altre caratteristihce del font (vedi XVT) int _chary; - // @cmember Dimensione del font di stampa + // @cmember:(INTERNAL) Dimensione del font di stampa int _char_size; - // @cmember Altre caratteristihce del font (vedi XVT) + // @cmember:(INTERNAL) Altre caratteristihce del font (vedi XVT) bool _inited; - // @cmember Permette di disegnare lo sfondo della riga

-esima + // @cmember:(INTERNAL) Permette di disegnare lo sfondo della riga

-esima void paint_background(long j); - // @cmember Permette di disegnare la riga

-esima + // @cmember:(INTERNAL) Permette di disegnare la riga

-esima void paint_row(long j); - // @cmember Permette di disegnare la parte di finestra per la pagina

+ // @cmember:(INTERNAL) Permette di disegnare la parte di finestra per la pagina

bool print_band(int page, RCT&); // @access Public Member diff --git a/include/progind.cpp b/include/progind.cpp index 5715a9d89..422391f94 100755 --- a/include/progind.cpp +++ b/include/progind.cpp @@ -1,8 +1,6 @@ #include #include -// @doc EXTERNAL - const char* const CANCEL_TEXT = "Annulla"; const char* const TITLE_TEXT = "Attesa"; @@ -55,6 +53,8 @@ TIndwin::TIndwin(long max, const char* txt, bool cancel, bool bar, int div) do_events(); } +// @doc EXTERNAL + // @mfunc Setta il testo della finestra void TIndwin::set_text( const char* t) // @parm Testo della finestra diff --git a/include/progind.h b/include/progind.h index e8841d315..4f1c5d354 100755 --- a/include/progind.h +++ b/include/progind.h @@ -18,21 +18,21 @@ class TIndwin : public TWindow // @author:(INTERNAL) Villa { - // @access Private Member + // @access:(INTERNAL) Private Member enum { - // @ccost IND_CANCELLED | 0x01 | Controlla se e' stato premuto il tasto "Annulla" + // @ccost:(INTERNAL) IND_CANCELLED | 0x01 | Controlla se e' stato premuto il tasto "Annulla" IND_CANCELLED = 0x01, - // @ccost IND_FINISHED | 0x02 | Controlla se l'operazione e' terminata + // @ccost:(INTERNAL) IND_FINISHED | 0x02 | Controlla se l'operazione e' terminata IND_FINISHED= 0x02 }; - // @cmember Testo da inserire nella finestra + // @cmember:(INTERNAL) Testo da inserire nella finestra WINDOW _text; - // @cmember Bottone "Annulla" + // @cmember:(INTERNAL) Bottone "Annulla" WINDOW _cancel; - // @cmember Movimento della barra e percentuale + // @cmember:(INTERNAL) Movimento della barra e percentuale WINDOW _bar; - // @cmember Flage che indica quali operazioni sono state effettuate + // @cmember:(INTERNAL) Flag che indica quali operazioni sono state effettuate byte _flags; // @access Protected Member @@ -81,6 +81,8 @@ public: virtual ~TIndwin(); }; +// @doc EXTERNAL + // @class TProgind | Classe per la gestione della barra di attesa di una applicazione // // @base public | TIndwin @@ -105,6 +107,8 @@ public: {} }; +// @doc EXTERNAL + // @class TTimerind | Classe per la definizione di una barra d'attesa gestita // dal tempo e non dallo stato dell'applicazione // @@ -112,11 +116,11 @@ public: class TTimerind : public TIndwin // @author:(INTERNAL) Villa { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Intervallo di tempo + // @cmember:(INTERNAL) Intervallo di tempo int _interval; - // @cmember Indice di tempo + // @cmember:(INTERNAL) Indice di tempo static long _timer_id; // @access Protected Member diff --git a/include/real.cpp b/include/real.cpp index 27879ed1b..220a4de36 100755 --- a/include/real.cpp +++ b/include/real.cpp @@ -11,8 +11,6 @@ const real ZERO (0.0); #include #include -// @doc EXTERNAL - real::real () : _dec(0.0) { } @@ -78,6 +76,9 @@ real& real::operator /= (long double b) return *this; } + +// @doc EXTERNAL + // @mfunc Ritorna il segno del reale // // @rdesc Ritorna i seguenti valori: @@ -103,6 +104,8 @@ long real::integer () const } // Certified 91% +// @doc EXTERNAL + // @mfunc Trasforma un reale in stringa // // @rdesc Ritorna la stringa nella lunghezza richiesta @@ -166,6 +169,8 @@ HIDDEN long double ipow10(int pow) return n; } +// @doc EXTERNAL + // @mfunc real& | real | round | Arrotonda al numero di decimali passati real& real::round ( int prec) // @parm Numero di decimali a cui arrotondare il numero (default 0) @@ -219,6 +224,8 @@ real& real::trunc(int prec) } +// @doc EXTERNAL + // @func Scambia il numero reale

con il numero real

void swap ( real& a, // @parm Primo numero da scambiare @@ -304,8 +311,6 @@ extern "C" HIDDEN real __tmp_real; -// @doc EXTERNAL - real::real () { dzero (ptr ()); @@ -415,6 +420,8 @@ bool real::is_zero () const return diszero (ptr ()); } +// @doc EXTERNAL + // @mfunc Ritorna il segno del reale // // @rdesc Ritorna i seguenti valori: @@ -442,6 +449,8 @@ long real::integer () const } // Certified 91% +// @doc EXTERNAL + // @mfunc Trasforma un reale in stringa // // @rdesc Ritorna la stringa nella lunghezza richiesta @@ -483,6 +492,7 @@ char *real::string ( return __string; } +// @doc EXTERNAL // @func ostream& | operator | Permette di reindirizzare il numero // reale per la stampa @@ -496,6 +506,7 @@ ostream & operator << ( return out << a.string (); } +// @doc EXTERNAL // @func istream& | operator | Permette di leggere un numero reale // @@ -516,6 +527,7 @@ int real ::precision () return dprec (ptr ()); } +// @doc EXTERNAL // @mfunc real& | real | round | Arrotonda al numero di decimali passati real & real ::round ( @@ -568,6 +580,8 @@ real & real ::trunc (int prec) return *this; } +// @doc EXTERNAL + // @func real | operator + | Somma due numeri reali // // @rdesc Ritorna il valore della somma @@ -598,6 +612,8 @@ real operator + (const real & a, double b) return __tmp_real += b; } +// @doc EXTERNAL + // @func real | operator - | Sottrae due numeri reali // // @rdesc Ritorna il valore della sottrazione @@ -630,6 +646,8 @@ real operator - (const real & a, double b) return __tmp_real; } +// @doc EXTERNAL + // @func real | operator * | Moltiplica due numeri reali // // @rdesc Ritorna il valore della moltiplicazione @@ -661,6 +679,8 @@ real operator *(const real & a, double b) return __tmp_real; } +// @doc EXTERNAL + // @func real | operator / | Divide due numeri reali // // @rdesc Ritorna il valore della divisione @@ -693,6 +713,7 @@ real operator / (const real & a, double b) return __tmp_real; } +// @doc EXTERNAL // @func bool | operator | Controlla se un reale e' maggiore di un altro // @@ -718,6 +739,8 @@ bool operator > (double a, const real & b) return a > n; } +// @doc EXTERNAL + // @func bool | operator | Controlla se un reale e' minore di un altro // // @rdesc Ritorna i seguenti valori @@ -744,6 +767,8 @@ bool operator < (double a, const real & b) return a < n; } +// @doc EXTERNAL + // @func bool | operator = | Controlla se un reale e' maggiore o uguale ad // un altro // @@ -771,6 +796,8 @@ bool operator >= (double a, const real & b) return a >= n; } +// @doc EXTERNAL + // @func bool | operator = | Controlla se un reale e' minore o uguale ad // un altro // @@ -797,6 +824,7 @@ bool operator <= (double a, const real & b) return a <= n; } +// @doc EXTERNAL // @func bool | operator == | Controlla se un reale e' uguale ad un altro // @@ -820,6 +848,8 @@ bool operator == (double a, const real & b) return a == n; } +// @doc EXTERNAL + // @func bool | operator != | Controlla se 2 reali dono diversi // // @rdesc Ritorna i seguenti valori @@ -843,12 +873,17 @@ bool operator != (double a, const real & b) return a != n; } +// @doc EXTERNAL + // @func real | operator % | Ritorna il modulo di due numeri // // @rdesc Ritorna il resto della divisione tra due numeri real operator % ( - const real& a, // @parm Primo membro della divisione + const real& a, // @parm Primo membro della divisione const real& b) // @parm Secondo membro della divisione + +// @syntax long double operator%(const real& a, const real& b) +// @syntax real operator % (const real& a, const real& b) { const long l = b.integer(); @@ -856,6 +891,8 @@ real operator % ( return __tmp_real; } +// @doc EXTERNAL + // @func Scambia il numero reale

con il numero real

void swap ( real & a, // @parm Primo numero da scambiare @@ -865,118 +902,205 @@ void swap ( SwapDecimal (a.ptr (), b.ptr ()); } +// @doc EXTERNAL + // @func Ritorna il numero reale piu' piccolo tra

e

const real& fnc_min ( const real & a, // @parm Primo numero da confrontare const real & b) // @parm Secondo numero da confrontare + // @parm long double | a | Primo numero da confrontare + // @parm long double | b | Secondo numero da confrontare + +// @syntax const real& fnc_min (const real & a, const real & b) +// @syntax inline long double fnc_min(long double a, long double b) + { dmin (__tmp_real.ptr (), a.ptr (), b.ptr ()); return __tmp_real; } +// @doc EXTERNAL // @func Ritorna il numero reale piu' grande tra

e

const real& fnc_max ( const real & a, // @parm Primo numero da confrontare const real & b) // @parm Secondo numero da confrontare + // @parm long double | a | Primo numero da confrontare + // @parm long double | b | Secondo numero da confrontare + +// @syntax const real& fnc_max (const real & a, const real & b) +// @syntax inline long double fnc_max(long double a, long double b) { dmax (__tmp_real.ptr (), a.ptr (), b.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Ritorna la radice quadrata del numero real sqrt ( const real & a) // @parm Numero del quale calcolare la radice + // @parm long double | a | Numero del quale calcolare la radice + +// @syntax real sqrt (const real) +// @syntax long double sqrt(long double) { dsqrt (__tmp_real.ptr (), a.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Ritorna il quadarato del numero real sqr ( const real & a) // @parm Numero del quale calcolare il quadrato - + // @parm long double | a | Numero del quale calcolare il quadrato + +// @syntax real sqr (const real) +// @syntax long double sqr(long double) + { dmul (__tmp_real.ptr (), a.ptr (), a.ptr ()); return __tmp_real; } -// @func Calcola 10 a potenza

-real exp10 (const real & a) +// @doc EXTERNAL +// @func Calcola 10 a potenza

+real exp10 ( + const real & a) // @parm Esponente al quale elevare + // @parm long double | a | Esponente al quale elevare + +// @syntax real exp10 (const real) +// @syntax long double exp10 (long double) + + { dalog (__tmp_real.ptr (), a.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Calcola l'elevamento a potenza

del numero

-real pow (const real & a, const real & b) +real pow ( + const real & a, // @parm Numero da elevare a potenza + const real & b) // @parm Esponente + // @parm long double | a | Numero da elevare a potenza + // @parm long double | b | Esponente + +// @syntax real pow (const real & a, const real & b) +// @syntax long double pow(long double a, long double b) { dpow (__tmp_real.ptr (), a.ptr (), b.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Calcola e (nepero) elevato ad

-real exp (const real & a) +real exp ( + const real & a) // @parm Esponente + // @parm long double | a | Esponente + +// @syntax real exp (const real & a) +// @syntax long double exp(long double a) { dexp (__tmp_real.ptr (), a.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Calcola il logaritmo in base 10 del numero real log10 ( const real & a) // @parm Numero del quale calcolare il logaritmo + // @parm long double | a | Numero del quale calcolare il logaritmo + +// @syntax real log10 (const real & a) +// @syntax long double log10(long double a) { dlog (__tmp_real.ptr (), a.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Calcoa il logaritmo naturale (base e) del numero real log ( const real & a) // @parm Numero del quale calcolare il logaritmo + // @parm long double | a | Numero del quale calcolare il logaritmo + +// @syntax real log (const real & a) +// @syntax long double log(long double a) { dln (__tmp_real.ptr (), a.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Calcola il seno dell'angolo real sin ( const real & a) // @parm Angolo passato in radianti + // @parm long double | a | Angolo passato in radianti + +// @syntax real sin (const real & a) +// @syntax long double sin (long double a) { dsin (__tmp_real.ptr (), a.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Calcola il coseno dell'angolo real cos ( - const real & a) // @parm Angolo passato in radianti + const real & a) // @parm Angolo passato in radianti + // @parm long double | a | Angolo passato in radianti + +// @syntax real cos (const real & a) +// @syntax long double cos (long double a) + { dcos (__tmp_real.ptr (), a.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Calcola la tangente dell'angolo real tan ( const real & a) // @parm Angolo passato in radianti + // @parm long double | a | Angolo passato in radianti + +// @syntax real tan (const real & a) +// @syntax long double tan (long double a) + { dtan (__tmp_real.ptr (), a.ptr ()); return __tmp_real; } +// @doc EXTERNAL + // @func Ritorna il valore assoluto di un numero real abs ( - const real & a) // @parm Numero del quale si vuole conoscere il valore - // assoluto + const real & a) // @parm Numero del quale si vuole conoscere il valore assoluto + // @parm long double | a | Numero del quale si vuole conoscere il valore assoluto + +// @syntax real abs (const real & a) +// @syntax long double abs(long double a) { dabs (__tmp_real.ptr (), a.ptr ()); @@ -1313,12 +1437,13 @@ real TDistrib::get () return r; } +// @doc EXTERNAL + // @mfunc Inizializza l'oggetto void TDistrib::init ( const real & r, // @parm Importo da dividere - bool zap) // @parm Permette di cancellare le percenutali immesse - // (default FALSE) - + bool zap) // @parm Permette di cancellare le percenutali immesse (default FALSE) + // @comm Se

e' vero cancella tutte le percentuali immesse, altrimenti // cambia solo il totale { @@ -1353,6 +1478,8 @@ real TGeneric_distrib::get () return r; } +// @doc EXTERNAL + // @mfunc Inizializza l'oggetto void TGeneric_distrib::init ( const real & r, // @parm Importo da dividere @@ -1444,13 +1571,17 @@ const TImporto& TImporto::swap_section() } -// Normalizza l'importo al parametro s -// Valore Azione -// A Forza la sezione Avere -// D Forza la sezione Dare -// < 0 Forza il segno negativo -// >=0 Forza il segno positivo -const TImporto& TImporto::normalize(char s) +// @doc EXTERNAL + +// @mfunc Normalizza il segno o la sezione in base al parametro s +const TImporto& TImporto::normalize( + char s) // @parm Tipo di normalizzazione da effettuare: + // + // @flag A | Forza la sezione Avere + // @flag D | Forza la sezione Dare + // @flag 0 | Forza il segno negativo + // @flag =0 | Forza il segno positivo + { bool ex = FALSE; switch (s) diff --git a/include/real.h b/include/real.h index e111d4069..7b5ad5ccc 100755 --- a/include/real.h +++ b/include/real.h @@ -13,10 +13,15 @@ // // @base public | TObject class real : public TObject -{ - // @access Private Member - // @cmember Numero reale +// @comm Questa classe utilizza i long double definiti per Visual C++. Esiste un'altra classe +// real: per accedere scegliere il tasto successivo () dalla barra deo bottoni + +// @author:(INTERNAL) Guido +{ + // @access:(INTERNAL) Private Member + + // @cmember:(INTERNAL) Numero reale long double _dec; // @access Protected Member @@ -31,7 +36,9 @@ protected: // @access Public Member public: - operator long double () const { return _dec; } + // @cmember long double | operator long double | | Ritorna il numero reale + operator long double () const + { return _dec; } // @cmember Trasforma un numero dal formato inglese (decimali con punto) in // formato italiano (decimali con virgola) @@ -70,6 +77,7 @@ public: real& operator = (const real& a); // @cmember Assegna un reale real& operator =(long double a); + // @cmember Aggiunge ad un reale il valore passato (passato per indirizzo) real& operator +=(long double a); // @cmember Sottrae ad un reale il valore passato (passato per indirizzo) real& operator -=(long double b); @@ -96,7 +104,7 @@ public: {} }; -inline long double fnc_min(long double a, long double b) { return a < b ? a : b; } +inline long double fnc_min(long double a, long double b){ return a < b ? a : b; } inline long double fnc_max(long double a, long double b) { return a > b ? a : b; } long double operator%(const real& a, const real& b); @@ -126,14 +134,19 @@ long double abs(long double a) ; // @doc EXTERNAL -// @class real | Classe per la gestione dei numeri reali +// @class real (per GREENLEAF) | Classe per la gestione dei numeri reali // // @base public | TObject class real : public TObject -{ - // @access Private Member - // @cmember Numero reale +// @comm Questa classe utilizza i DEC definiti per GREENLEAF. Esiste un'altra classe +// real: per accedere scegliere il tasto precedente () dalla barra deo bottoni + +// @author:(INTERNAL) Guido +{ + // @access:(INTERNAL) Private Member + + // @cmember:(INTERNAL) Numero reale DEC _dec; // @access Protected Member @@ -286,26 +299,30 @@ real abs(const real& a) ; extern const real ZERO; -// @class TDistrib | Classe per dividere un real in varie sue percentuali +// @doc EXTERNAL + +// @class TDistrib | Classe per dividere un in varie sue percentuali // in modo che la loro somma dia sempre il real di partenza // // @base public | TObject class TDistrib : public TObject + +// @author:(INTERNAL) Guido { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Totale da ripartire + // @cmember:(INTERNAL) Totale da ripartire real _tot; - // @cmember Progressivo gia' distribuito + // @cmember:(INTERNAL) Progressivo gia' distribuito real _prog; - // @cmember Pronto per essere usato (tutti gli add() fatti) + // @cmember:(INTERNAL) Pronto per essere usato (tutti gli fatti) bool _ready; - // @cmember Percentuali da distribuire + // @cmember:(INTERNAL) Percentuali da distribuire TArray _slices; - // @cmember Indice delle percentuali aggiunte o estratte + // @cmember:(INTERNAL) Indice delle percentuali aggiunte o estratte int _current; - // @cmember Precisione + // @cmember:(INTERNAL) Precisione int _decs; // @access Public Member @@ -340,6 +357,8 @@ public: {} }; +// @doc EXTERNAL + // @class TGeneric_distrib | Classe per dividere un real in parti fissate // in modo che la loro somma dia sempre il real di partenza // @@ -348,19 +367,19 @@ public: class TGeneric_distrib : public TObject { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Totale da ripartire + // @cmember:(INTERNAL) Totale da ripartire real _tot; - // @cmember Totale parti da distribuire + // @cmember:(INTERNAL) Totale parti da distribuire real _totslices; - // @cmember Pronto per essere usato (tutti gli add() fatti) + // @cmember:(INTERNAL) Pronto per essere usato (tutti gli add() fatti) bool _ready; - // @cmember Percentuali da distribuire + // @cmember:(INTERNAL) Percentuali da distribuire TArray _slices; - // @cmember Indice delle percentuali aggiunte o estratte + // @cmember:(INTERNAL) Indice delle percentuali aggiunte o estratte int _current; - // @cmember Precisione + // @cmember:(INTERNAL) Precisione int _decs; // @access Public Member @@ -372,7 +391,8 @@ public: virtual real get(); // @cmember Inizializza il numero di decimali - void set_dec(int decs) { _decs = decs;} + void set_dec(int decs) + { _decs = decs;} // @cmember Inizializza l'oggetto void init(const real& r, bool zap = FALSE); @@ -395,17 +415,20 @@ public: {} }; +// @doc EXTERNAL + // @class TImporto | Classe per la definizione di oggetti con sezione e importo // // @base public | TSortable class TImporto : public TSortable +// @author:(INTERNAL) Guido { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Sezione alla quale apprtiene l'importo + // @cmember:(INTERNAL) Sezione alla quale apprtiene l'importo char _sezione; - // @cmember Valore dell'importo + // @cmember:(INTERNAL) Valore dell'importo real _valore; // @access Protected Member diff --git a/include/rectypes.h b/include/rectypes.h index dbdf05f06..3a242c6cf 100755 --- a/include/rectypes.h +++ b/include/rectypes.h @@ -5,9 +5,7 @@ #define NOERR 0 #define FIELDERR -1 -// @T typedef long TRecnotype; -// @END // @doc EXTERNAL @@ -17,6 +15,8 @@ enum TFilelock { _excllock = 0x100, // @emem Apertura in modo esclusivo _autolock = 0x200, // @emem Apertura del file in modo auto _manulock = 0x400}; // @emem Apertura del file in modo manuale + +// @doc EXTERNAL // @enum TReclock | Comandi per la gestione dei lock su record enum TReclock { @@ -24,17 +24,23 @@ enum TReclock { _nolock = 0x2000, // @emem Nessuna operazione di lock _lock = 0x4000, // @emem Blocca il record _testandlock = (int)0x8000} ; // @emem Blocca il record se possibile, altrimenti ritorna errore + +// @doc EXTERNAL // @enum TDirtype | Comandi per la gestione di enum TDirtype { _nordir, // @emem Riferimento operazioni col prefix corrente _comdir } ; // @emem Riferimento operazioni al direttorio comune + +// @doc EXTERNAL // @enum TDirop | Comandi per la gestione di enum TDirop { _nordirop, // @emem Riferimento per operazioni normali _sysdirop }; // @emem Riferimento per operazioni di sistema +// @doc EXTERNAL + // @enum TFieldtypes | Elenco tipi di campi enum TFieldtypes { _nullfld, // @emem Campo vuoto @@ -50,6 +56,7 @@ enum TFieldtypes { _longzerofld, // @emem Campo di tipo intero lungo zero filled _memofld} ; // @emem Campo di tipo memo +// @doc EXTERNAL // @enum TIsamop | Comandi per eseguire operazioni di lettura sul file enum TIsamop { @@ -63,6 +70,8 @@ enum TIsamop { _isgteq = 0x40, // @emem Legge il record con chiave maggiore o uguale di quella specificata _isnextn = 0x100, // @emem Legge i prossimi n record _isprevn = 0x200} ; // @emem Legge i precedenti n record + +// @doc EXTERNAL // @enum TIsamerr | Elenco codici di errore enum TIsamerr { diff --git a/include/relapp.cpp b/include/relapp.cpp index 79c583f60..eeb0aa80f 100755 --- a/include/relapp.cpp +++ b/include/relapp.cpp @@ -20,13 +20,13 @@ class TChiave : public TObject // @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @ccost MAX | 16 | Numero massimo di chiavi della maschera di ricerca + // @ccost:(INTERNAL) MAX | 16 | Numero massimo di chiavi della maschera di ricerca enum { MAX = 16 }; - // @cmember Posizione delle chiavi nella msachera di ricerca + // @cmember:(INTERNAL) Posizione delle chiavi nella msachera di ricerca int _pos[MAX]; - // @cmember Numero di chiavi presenti nella maschera di ricerca + // @cmember:(INTERNAL) Numero di chiavi presenti nella maschera di ricerca byte _num; // @access Public Member @@ -89,8 +89,6 @@ TKey_array::TKey_array(const TMask* m) : _mask(m) } } -// @doc EXTERNAL - /////////////////////////////////////////////////////////// // TRelation_application /////////////////////////////////////////////////////////// @@ -117,6 +115,8 @@ void TRelation_application::setkey() } +// @doc INTERNAL + // @mfunc Setta i limiti void TRelation_application::set_limits( byte what) // @parm tipo di limite da assegnare al record @@ -322,6 +322,8 @@ int TRelation_application::set_mode(int mode) return _mode; } +// @doc INTERNAL + // @mfunc Permette di autonumerare un record // // @rdesc Ritorna se e' riuscito a creare una nuova autonumerazione: @@ -352,6 +354,8 @@ bool TRelation_application::autonum( return k.not_empty(); } +// @doc EXTERNAL + // @mfunc Entra in modo di ricerca void TRelation_application::query_mode( bool pre_ins) // @parm Indica in quale modo andare: @@ -514,6 +518,8 @@ bool TRelation_application::search_mode() return FALSE; } +// @doc INTERNAL + // @mfunc Controlla se una chiave e' completa ed esiste su file // // @rdesc Ritorna se la chave esiste sul file @@ -751,7 +757,10 @@ int TRelation_application::rewrite(const TMask& m) return r->status(); } +// @doc INTERNAL + // @mfunc Cancella il record corrente +// // @rdesc Ritorna se il record e' stato eliminato bool TRelation_application::relation_remove() diff --git a/include/relapp.h b/include/relapp.h index f2d66d5f9..0c1b37595 100755 --- a/include/relapp.h +++ b/include/relapp.h @@ -13,10 +13,10 @@ #include #endif -// @doc EXTERNAL - class TKey_array; +// @doc EXTERNAL + // @class TRelation_application | Classe per la gestione di una apllicazione di manutenzione di uno // o piu' archivi utilizzando una relazione // @@ -25,59 +25,59 @@ class TRelation_application : public TApplication // @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Maschera corrente dell'applicazione + // @cmember:(INTERNAL) Maschera corrente dell'applicazione TMask* _mask; - // @cmember Array di chiavi della maschera + // @cmember:(INTERNAL) Array di chiavi della maschera TKey_array* _maskeys; - // @cmember Primo record + // @cmember:(INTERNAL) Primo record TRecnotype _first; - // @cmember Ultimo record + // @cmember:(INTERNAL) Ultimo record TRecnotype _last; - // @cmember Campo da utilizzare col bottone Ricerca + // @cmember:(INTERNAL) Campo da utilizzare col bottone Ricerca int _search_id; - // @cmember Nome del programma chiamante + // @cmember:(INTERNAL) Nome del programma chiamante TString16 _autoins_caller; - // @cmember Numero del record nuovo/editato + // @cmember:(INTERNAL) Numero del record nuovo/editato long _recins; - // @cmember Indica se e' stato chiamato col messaggio di link + // @cmember:(INTERNAL) Indica se e' stato chiamato col messaggio di link bool _lnflag; - // @cmember Contiene il codice del campo e il valore fisso + // @cmember:(INTERNAL) Contiene il codice del campo e il valore fisso TToken_string _fixed; - // @cmember Messaggio da passare all'utente per inidicare che e' stata fatta la rinumerazione + // @cmember:(INTERNAL) Messaggio da passare all'utente per inidicare che e' stata fatta la rinumerazione TString _renum_message; - // @cmember Setta i campi fissati da + // @cmember:(INTERNAL) Setta i campi fissati da bool filter(); - // @cmember Controlla se una chiave e' completa ed esiste su file + // @cmember:(INTERNAL) Controlla se una chiave e' completa ed esiste su file bool test_key(byte k, bool err); - // @cmember Salva i contenuti della maschera su file + // @cmember:(INTERNAL) Salva i contenuti della maschera su file bool save(bool check_dirty); - // @cmember Abilita la ricerca sulla maschera + // @cmember:(INTERNAL) Abilita la ricerca sulla maschera void enable_query(); - // @cmember UNUSED + // @cmember:(INTERNAL) UNUSED void set_toolbar(bool all); - // @cmember Seleziona il nuovo modo e ritorna il vecchio + // @cmember:(INTERNAL) Seleziona il nuovo modo e ritorna il vecchio int set_mode(int mode); - // @cmember Setta i limiti + // @cmember:(INTERNAL) Setta i limiti void set_limits(byte what = 0x3); - // @cmember Posiziona l'applicazione in modo richiesta/inserimento (chaima ) + // @cmember:(INTERNAL) Posiziona l'applicazione in modo richiesta/inserimento (chaima ) void query_insert_mode() { query_mode(TRUE); } - // @cmember Entra in modo inserimento + // @cmember:(INTERNAL) Entra in modo inserimento void insert_mode(); - // @cmember Cancella il record corrente + // @cmember:(INTERNAL) Cancella il record corrente bool relation_remove(); - // @cmember Ritorna il campo di ricerca della maschera + // @cmember:(INTERNAL) Ritorna il campo di ricerca della maschera TMask_field* get_search_field() const; - // @cmember Permette di autonumerare un record + // @cmember:(INTERNAL) Permette di autonumerare un record bool autonum(TMask* m, bool rec); - // @cmember Controlla se il ha un filtro + // @cmember:(INTERNAL) Controlla se il ha un filtro bool has_filtered_cursor() const { return filtered() || force_cursor_usage();} @@ -94,13 +94,13 @@ protected: // @cmember Ritorna il descrittore del file principale della relazione TLocalisamfile& file() const { return get_relation()->lfile(); } - // @cmember Ritorna il primo record!!! + // @cmember Ritorna il primo record TRecnotype first() const { return _first;} - // @cmember Ritorna l'ultimo record!!! + // @cmember Ritorna l'ultimo record TRecnotype last() const - { return _first;} - // @cmember !!! + { return _last;} + // @cmember Ritorna il nome del programma chiamante const TString& autoins_caller() const { return _autoins_caller;} @@ -124,7 +124,7 @@ protected: bool modify_mode(); // @cmember Legge i campi chiave della maschera e setta il cursore relativo void setkey(); - // @cmember !!! + // @cmember Ritorna se e' stato chiamato col messaggio di link bool lnflag() const { return _lnflag;} // @cmember Indica se la futura ritornera' una maschera diversa @@ -204,7 +204,7 @@ public: // @cmember Ritorna se sono stati posti dei filtri sul file corrente bool filtered() const { return _fixed.not_empty(); } - // @cmember Cerca un record corrispondete alla chiava

(0 prima chiave completa!!!) + // @cmember Cerca un record corrispondete alla chiava

(0 prima chiave completa) bool find(byte key = 0); // @cmember Costruisce il membro void set_link(TMask & m, const char * keyexpr); diff --git a/include/relation.cpp b/include/relation.cpp index 149442607..44695b1e0 100755 --- a/include/relation.cpp +++ b/include/relation.cpp @@ -1,8 +1,3 @@ -// $Id: relation.cpp,v 1.75 1996-01-30 15:59:31 angelo Exp $ -// relation.cpp -// fv 12/8/93 -// relation class for isam files - #include #include @@ -28,8 +23,6 @@ #define print_name(out, f) out << (f.num() == LF_TABCOM ? "%" : "") << f.name() -// @doc EXTERNAL - extern int get_error(int); HIDDEN const char* field_type_str(TFieldtypes f) @@ -331,7 +324,9 @@ void TRelation::save_status() } } -// @mfunc Ritorna l'indice di

del numero logico passato!!! +// @doc EXTERNAL + +// @mfunc Ritorna l'indice di

del numero logico passato // // @rdesc Ritorna l'indice oppure NOTFOUND nel caso non sia presente int TRelation::log2ind( @@ -354,6 +349,8 @@ int TRelation::log2ind( return NOTFOUND; } +// @doc EXTERNAL + // @mfunc Ritorna l'indice di

del alias del file passato // // @rdesc Ritorna l'indice oppure NOTFOUND nel caso non sia presente @@ -374,7 +371,9 @@ int TRelation::alias2ind( return NOTFOUND; } -// @mfunc Ritorna l'indice di

del nome del file passato!!! +// @doc EXTERNAL + +// @mfunc Ritorna l'indice di

del nome del file passato // // @rdesc Ritorna l'indice oppure NOTFOUND nel caso non sia presente int TRelation::name2ind( @@ -387,6 +386,8 @@ int TRelation::name2ind( return ind; } +// @doc EXTERNAL + // @mfunc Ritorna il descrittore del file // // @rdesc Ritorna il reference ad un che indica il descrittore del @@ -413,6 +414,8 @@ TLocalisamfile& TRelation::lfile(const char* name) const return (TLocalisamfile&)_files[idx]; } +// @doc EXTERNAL + // @mfunc Abilita/disabilita la scrittura sul file void TRelation::write_enable( int logicnum, // @parm Numero logico del file da abilitare/disabilitare (default 0) @@ -452,6 +455,8 @@ void TRelation::write_enable(const char* name, const bool on) } +// @doc EXTERNAL + // @mfunc Aggiunge una nuovo file nella relazione // // @rdesc Ritorna se e' riuscito ad aggiungere il file alla relazione @@ -507,7 +512,9 @@ bool TRelation::add(const char* tabname, const char* relexprs, int key, return add(t, relexprs, key, linkto, alias, allow_lock); } -// @mfunc Sostituisce nella relazione un file!!! +// @doc EXTERNAL + +// @mfunc Sostituisce nella relazione un file void TRelation::replace( TLocalisamfile* f, // @parm Descrittore del file sostituto int index) // @parm Posizione nel quale sostituire il file (default 0) @@ -537,6 +544,8 @@ void TRelation::zero() file(i).zero(); } +// @doc EXTERNAL + // @mfunc Permette di posizionare l'albero di relazioni tra i file // // @rdesc Ritorna il numero di errore avvenuto nell'opeerazione, NOERR nel caso @@ -616,6 +625,8 @@ int TRelation::position_rels( } +// @doc EXTERNAL + // @mfunc Posiziona il numero logico sul record successivo // // @rdesc Ritorna se ha trovato la corrispondenza: @@ -714,6 +725,8 @@ bool TRelation::next_match( } +// @doc EXTERNAL + // @mfunc Controlla se c'e' un record ed e' il primo match (non si e' mai fatta // ) // @@ -733,6 +746,8 @@ bool TRelation::is_first_match( #ifdef DBG +// @doc EXTERNAL + // @mfunc Controlla se la relazione e' corretta // // @rdesc Ritorna i seguent valori @@ -871,6 +886,8 @@ HIDDEN bool __evalcondition(const TRelation* r,TExpression* cond) return (bool) *cond; } +// @doc EXTERNAL + // @mfunc Apre il file di indice // // @rdesc Ritorna l'handle del file aperto @@ -1052,6 +1069,7 @@ TRecnotype TCursor::update() return totrec; } +// @doc EXTERNAL // @mfunc Setta il filtro sul cursore void TCursor::filter( @@ -1232,6 +1250,8 @@ TRecnotype TCursor::readrec() return nrec; } +// @doc EXTERNAL + // @mfunc Mette un lock sul record // // @rdesc Ritorna il numero di errore che si verifica nel porre il lock (NOERR) se @@ -1309,13 +1329,20 @@ typedef struct { TRecnotype p; } El_To_Sort; -bool TSorted_cursor::check_expr(TString& s) -// Controlla la validita' dell'espressione ritornando un bool -// Modifica l'espressione in modo da avere una valido parametro per TFieldref! -// Es. UPPER(20->RAGSOC[1,40]+) ==> 20->RAGSOC[1,40]+ -// N.B. : la direzione dell'ordinamento va messa indicata sempre dopo la definizione del campo, mai -// dopo l'operatore UPPER(). E' a cura delle altre funzioni esterne che utilizzano la check_expr() -// discriminare il segno + o - che sia +// @doc EXTERNAL + +// @mfunc Controlla la validita' dell'espressione +// +// @rdesc Ritorna se si tratta di una espressione valida +bool TSorted_cursor::check_expr( + TString& s) // @parm Espressione da controllare + +// @comm Modifica l'espressione in modo da avere una valido parametro per TFieldref! +// Es. UPPER(20->RAGSOC[1,40]+) ==> 20->RAGSOC[1,40]+ +// N.B.: la direzione dell'ordinamento va messa indicata sempre dopo la definizione del campo, mai +// dopo l'operatore UPPER(). E' a cura delle altre funzioni esterne che utilizzano la check_expr() +// discriminare il segno + o - che sia. + { int p=s.find('('); int p1=s.find(')'); @@ -1565,6 +1592,8 @@ TSorted_cursor::~TSorted_cursor() // TFieldRef /////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @func Converte una stringa in numero logico o numero tabella // // @rdesc Ritorna il numero logico del file o il numero della tabella @@ -1606,6 +1635,7 @@ TFieldref::TFieldref(const TString& s, short defid) if (_fileid == 0) _fileid = defid; } +// @doc EXTERNAL // @mfunc Operatore di assegnamento // @@ -1613,7 +1643,7 @@ TFieldref::TFieldref(const TString& s, short defid) TFieldref& TFieldref::operator =( const TString& s) // @parm Stringa da assegnare all'oggetto -// @comm Un Fildref deve avere il seguente formato (solamente NAME e il mandante): +// @comm Un deve avere il seguente formato (solamente NAME e il mandante): // FILE->NAME[FROM,TO] { @@ -1792,6 +1822,8 @@ bool TRecord_array::exist(int n) const return r != NULL; } +// @doc EXTERNAL + // @mfunc Ritorna la riga

// // @rdesc Ritorna un TRectype alla riga cercata o eventualemete il reference della nuova creata, @@ -1818,6 +1850,9 @@ TRectype& TRecord_array::row( CHECKD(r && n > 0, "Bad record number ", n); return *r; } + +// @doc EXTERNAL + // @mfunc Rinumera il campo chiave in seguito a reinsert // // @rdesc Ritorna se e' stato rinumerato il campo chiave @@ -1876,6 +1911,8 @@ int TRecord_array::add_row(TRectype* r) return nr; } +// @doc EXTERNAL + // @mfunc Cancella una riga // // @rdesc Ritorna se e' riuscito ad eliminare la riga @@ -1913,6 +1950,8 @@ void TRecord_array::destroy_rows() destroy(i); } +// @doc EXTERNAL + // @mfunc Confronta i campi della chiave 1 scartando l'ultimo // // @rdesc Ritorna il risulato del confronto: @@ -2140,6 +2179,8 @@ void TRelation_description::read_rel() } } +// @doc INTERNAL + // @mfunc Cambia la relazione descritta void TRelation_description::change_relation( TRelation& r, // @parm Nuova relazione da assegnare @@ -2166,6 +2207,8 @@ void TRelation_description::print_on(ostream& out) const } } +// @doc INTERNAL + // @mfunc Seleziona un file // // @rdesc Ritorna il risultato dell'operazione: @@ -2219,6 +2262,8 @@ bool TRelation_description::choose_file( return FALSE; } +// @doc INTERNAL + // @mfunc Seleziona un campo

del file selezionato // // @rdesc Ritorna il risultato dell'operazione: @@ -2259,7 +2304,9 @@ bool TRelation_description::choose_field( return FALSE; } -// @func Costruisce un menu' +// @doc INTERNAL + +// @mfunc Costruisce un menu' // // @rdesc Ritorna solamente FALSE bool TRelation_description::build_menu( @@ -2329,6 +2376,8 @@ TFieldtypes TRelation_description::field_type() return (TFieldtypes)_cfield.get_int(1); } +// @doc INTERNAL + // @mfunc Setta la descrizione del campo // // @rdesc Ritorna se ha trovato il campo da settare diff --git a/include/relation.h b/include/relation.h index df5a19a49..46a014d0c 100755 --- a/include/relation.h +++ b/include/relation.h @@ -1,8 +1,3 @@ -/* $Id: relation.h,v 1.33 1996-01-31 17:18:43 andrea Exp $ */ -// join.h -// fv 12/8/93 -// join class for isam files - #ifndef __RELATION_H #define __RELATION_H @@ -29,15 +24,15 @@ class TRelation : public TObject // @cfriend TCursor friend class TCursor; -// @access Private Member +// @access:(INTERNAL) Private Member - // @cmember Stato della relazione + // @cmember:(INTERNAL) Stato della relazione TToken_string _status; - // @cmember Array dei descrittori dei file + // @cmember:(INTERNAL) Array dei descrittori dei file TArray _files; - // @cmember Array di + // @cmember:(INTERNAL) Array di TArray _reldefs; - // @cmember Codice dell'ultimo errore occorso + // @cmember:(INTERNAL) Codice dell'ultimo errore occorso int _errors; // @access Protected Member @@ -215,6 +210,8 @@ public: // TRecord_Array /////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @class TRecord_array | Classe per la gestione di un array di record // // @base public | TArray @@ -222,13 +219,13 @@ class TRecord_array : private TArray // @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Numero logico del file principale + // @cmember:(INTERNAL) Numero logico del file principale int _file; - // @cmember Offset iniziale del record array + // @cmember:(INTERNAL) Offset iniziale del record array int _offset; - // @cmember Nome del campo col numero di riga + // @cmember:(INTERNAL) Nome del campo col numero di riga TString16 _num; // @access Protected Member @@ -319,52 +316,56 @@ public: class TExpression; -// @type FILTERFUNCTION | Controlla se il record debba essere incluso nel cursore +// @doc EXTERNAL + +// @type FILTERFUNCTION | Prototipo funzione che controlla se il record debba essere incluso nel cursore typedef bool (*FILTERFUNCTION)(const TRelation* r); +// @doc EXTERNAL + // @class TCursor | Classe per la definizione di un cursore su di una relazione // // @base public | TContainer class TCursor : public TContainer -// @author(:INTERNAL) Villa +// @author:(INTERNAL) Villa -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Relazione su cui costruire il cursore + // @cmember:(INTERNAL) Relazione su cui costruire il cursore TRelation* _if; - // @cmember Chiave del file principale + // @cmember:(INTERNAL) Chiave del file principale int _nkey; - // @cmember Posizione corrente + // @cmember:(INTERNAL) Posizione corrente TRecnotype _pos; - // @cmember Numero totale di record che verificano il filtro + // @cmember:(INTERNAL) Numero totale di record che verificano il filtro TRecnotype _totrec; - // @cmember Numero dell'ultimo record + // @cmember:(INTERNAL) Numero dell'ultimo record TRecnotype _lastrec; - // @cmember Chiave dell'ultimo record + // @cmember:(INTERNAL) Chiave dell'ultimo record TRecnotype _lastkrec; - // @cmember Nome assoluto del file principale + // @cmember:(INTERNAL) Nome assoluto del file principale TFilename _filename; - // @cmember Filtro definito con la + // @cmember:(INTERNAL) Filtro definito con la TString _filter; - // @cmember Nome della chive iniziale + // @cmember:(INTERNAL) Nome della chive iniziale TString _keyfrom; - // @cmember Nome della chiave finale + // @cmember:(INTERNAL) Nome della chiave finale TString _keyto; - // @cmember Espressione del filtro relativo + // @cmember:(INTERNAL) Espressione del filtro relativo TExpression* _fexpr; - // @cmember Indica se e' stata messa in attesa (non puo' essere modificato) + // @cmember:(INTERNAL) Indica se e' stata messa in attesa (non puo' essere modificato) bool _frozen; - // @cmember Flag che permette l'update della relazione per l'espressione-filtro + // @cmember:(INTERNAL) Flag che permette l'update della relazione per l'espressione-filtro bool _filter_update; - // @cmember Flag che permette l'update della relazione per la funzione-filtro + // @cmember:(INTERNAL) Flag che permette l'update della relazione per la funzione-filtro bool _filterfunction_update; - // @cmember Funzione filtro + // @cmember:(INTERNAL) Funzione filtro FILTERFUNCTION _filterfunction; - // @cmember Nome del file indice + // @cmember:(INTERNAL) Nome del file indice TFilename _indexname; - // @cmember Crea (o aggiorna) effettivamente l'indice del cursore + // @cmember:(INTERNAL) Crea (o aggiorna) effettivamente l'indice del cursore TRecnotype update(); // @access Protected Member @@ -515,10 +516,12 @@ public: }; +// @doc EXTERNAL + // @class TSorted_cursor | Costruisce e gestisce un cursore ordinato per chiavi diverse da quelle specificate nel file. class TSorted_cursor : public TCursor -// @author(:INTERNAL) Angelo +// @author:(INTERNAL) Angelo // @comm Il formato dell'espressione deve essere: [LF->]FIELDNAME[[from,to]][+-]... Inoltre tutta l'espressione puo' essere racchiusa // dall'operatore UPPER(), per controlli non case-sensitive. @@ -529,20 +532,20 @@ class TSorted_cursor : public TCursor // file principale della relazione. // Es. "CODCF-TIPOCFSOTTOCONTO+UPPER(20->RAGSOC[1,40]-)" -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Espressione per l'ordinamento + // @cmember:(INTERNAL) Espressione per l'ordinamento TToken_string _order_expr; - // @cmember Puntatore all'oggetto per ordinare il cursore (vedi ) + // @cmember:(INTERNAL) Puntatore all'oggetto per ordinare il cursore (vedi ) TSort* _sort; - // @cmember Indica se l'espressione e' cambiata + // @cmember:(INTERNAL) Indica se l'espressione e' cambiata bool _is_changed_expr; - // @cmember Indica se l'espressione e' valida + // @cmember:(INTERNAL) Indica se l'espressione e' valida bool _is_valid_expr; // @access Protected Member protected: - // @cmember Controlla il formato della singola espressione di un campo di sort + // @cmember Controlla la validita' dell'espressione bool check_expr(TString& s); // @cmember Controlla se la singola espressione contiene l'operatore UPPER(), ritornandone l'argomento bool is_upper(TString& s); @@ -566,26 +569,26 @@ public: virtual ~TSorted_cursor(); }; - +// @doc EXTERNAL // @class TFieldref | Classe per la definizione di riferimenti ad un campo di una relazione // // @base public | TObject class TFieldref : public TObject -// @author(:INTERNAL) Guido +// @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Numero del file + // @cmember:(INTERNAL) Numero del file short _fileid; - // @cmember Nome tabella o stringa col numero del file + // @cmember:(INTERNAL) Nome tabella o stringa col numero del file TString _id; - // @cmember Nome del campo + // @cmember:(INTERNAL) Nome del campo TString _name; - // @cmember Sottostringa di partenza + // @cmember:(INTERNAL) Sottostringa di partenza int _from; - // @cmember Sottostringa di arrivo + // @cmember:(INTERNAL) Sottostringa di arrivo int _to; // @access Protected Member @@ -646,30 +649,32 @@ public: int name2log(const char* name); +// @doc INTERNAL + // @class TRelation_description | Gestisce l'uso interattivo di una relazione (scelta campi, descrizione) // // @base public | TObject class TRelation_description : public TObject -// @author(:INTERNAL) Guido +// @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Relazione descritta + // @cmember:(INTERNAL) Relazione descritta TRelation* _rel; - // @cmember Nome dei files della relazione + // @cmember:(INTERNAL) Nome dei files della relazione TString_array _files; - // @cmember Array di campi + // @cmember:(INTERNAL) Array di campi TArray _fields; - // @cmember Numero logico del file corrente + // @cmember:(INTERNAL) Numero logico del file corrente int _cur_file; - // @cmember Numero del campo corrente + // @cmember:(INTERNAL) Numero del campo corrente int _cur_field; - // @cmember UNUSED + // @cmember:(INTERNAL) UNUSED bool _menu; - // @cmember File corrente + // @cmember:(INTERNAL) File corrente TToken_string _cfile; - // @cmember Campo corrente + // @cmember:(INTERNAL) Campo corrente TToken_string _cfield; // @access Protected Member diff --git a/include/scanner.cpp b/include/scanner.cpp index 9d44d369b..03c4b6a6f 100755 --- a/include/scanner.cpp +++ b/include/scanner.cpp @@ -4,8 +4,6 @@ #include -//@doc EXTERNAL - HIDDEN const char* strlwr (const char* str) { for (char* s = __tmp_string; *str; s++, str++) *s = tolower(*str); @@ -48,7 +46,11 @@ const TString& TScanner::pop() return _token; } +// @doc EXTERNAL + // @mfunc Ritorna la linea letta dal file +// +// @rdesc Ritorna una stringa contenente la linea letta dal file TString& TScanner::line( char eol) //@parm Carattere fino al quale leggere la riga (default EOL) { diff --git a/include/scanner.h b/include/scanner.h index c53bfd220..903e2b183 100755 --- a/include/scanner.h +++ b/include/scanner.h @@ -21,16 +21,17 @@ class TScanner : private ifstream // @author:(INTERNAL) Guido { - // @access Private Member - // @cmember Prossimo teoken + // @access:(INTERNAL) Private Member + + // @cmember:(INTERNAL) Prossimo teoken TString _token; - // @cmember Chiave del token (prime due lettere) + // @cmember:(INTERNAL) Chiave del token (prime due lettere) TString _key; - // @cmember Buffer utilizzato per la lettura della riga da file + // @cmember:(INTERNAL) Buffer utilizzato per la lettura della riga da file TString _buffer; - // @cmember Indica se il token e' stato ritornato al file + // @cmember:(INTERNAL) Indica se il token e' stato ritornato al file bool _pushed; - // @cmember Numero della linea in corso di lettura + // @cmember:(INTERNAL) Numero della linea in corso di lettura word _line; // @access Public Member diff --git a/include/sheet.cpp b/include/sheet.cpp index 54945ad6c..6429073d9 100755 --- a/include/sheet.cpp +++ b/include/sheet.cpp @@ -11,8 +11,6 @@ // TSheet /////////////////////////////////////////////////////////// -// @doc EXTERNAL - TSheet::TSheet(short x, short y, short dx, short dy, const char* title, const char* head, byte buttons, long first, WINDOW parent) @@ -91,6 +89,8 @@ TSheet::TSheet(short x, short y, short dx, short dy, } } +// @doc INTERNAL + // @mfunc Aggiunge un bottone nella finestra void TSheet::add_button( short id, // @parm Identificatore del bottone da aggiungere @@ -168,6 +168,7 @@ void TSheet::set_row(const TToken_string& r, byte i) _page.add(r, i); } +// @doc INTERNAL // @mfunc Crea la pagina void TSheet::build_page( @@ -282,6 +283,7 @@ void TSheet::handler(WINDOW win, EVENT* ep) TScroll_window::handler(win, ep); } +// @doc INTERNAL // @mfunc Converte le coordinate da logiche (caratteri) in coordinate fisiche (pixel) // (vedi ) @@ -369,6 +371,7 @@ bool TSheet::on_key(KEY key) return TScroll_window::on_key(key); } +// @doc INTERNAL // @mfunc Abilita/disabilita una riga void TSheet::enable( @@ -394,6 +397,8 @@ void TSheet::enable( } } +// @doc INTERNAL + // @mfunc Seleziona una riga facendola diventare corrente void TSheet::select( long n) // @parm Riga da selezionare (default -1) @@ -418,6 +423,7 @@ void TSheet::select( } } +// @doc INTERNAL // @mfunc Permette di attivare/disattivare una riga void TSheet::check( @@ -504,6 +510,8 @@ void TSheet::invert_row(long n) } } +// @doc INTERNAL + // @mfunc Forza il ridisegno di una riga. // // @rdesc Ritorna se e' riuscito a fare il ridisegno (cioe' se la riga era visibile) @@ -577,6 +585,8 @@ bool TSheet::update_row( return TRUE; } +// @doc INTERNAL + // @mfunc Ritorna il contenuto di una riga // // @rdesc Ritorna la con tutti gli elemnti della riga @@ -703,6 +713,8 @@ bool TArray_sheet::destroy(int i) return _data.destroy(i, TRUE); } // Certified 100% +// @doc EXTERNAL + // @mfunc Copia le righe nella pagina da visualizzare void TArray_sheet::page_build( long first, // @parm Prima riga da visualizzare @@ -712,6 +724,8 @@ void TArray_sheet::page_build( set_row(data(first+i), i); } +// @doc EXTERNAL + // @mfunc Aggiunge un elemento allo sheet // // @rdesc Ritorna il numero di elemnti presenti nello sheet diff --git a/include/sheet.h b/include/sheet.h index 3438dd064..353375099 100755 --- a/include/sheet.h +++ b/include/sheet.h @@ -18,7 +18,7 @@ class TEdit_field; #endif -// @doc EXTERNAL +// @doc INTERNAL // @class TSheet | Classe per la definizione e la gestione degli sheet per le ricerche // @@ -27,44 +27,44 @@ class TSheet : public TScroll_window // @author:(INTERNAL) Guido -// @access Privete Member +// @access:(INTERNAL) Privete Member { - // @ccost MAX_BUT | 8 | Numero massimo di bottoni + // @ccost:(INTERNAL) MAX_BUT | 8 | Numero massimo di bottoni enum { MAX_BUT = 8, - // @ccost MAX_COL | 128 | Numero massimo di colonne + // @ccost:(INTERNAL) MAX_COL | 128 | Numero massimo di colonne MAX_COL = 128 }; - // @cmember Array di stringhe con il contenuto dello sheet + // @cmember:(INTERNAL) Array di stringhe con il contenuto dello sheet TString_array _page; - // @cmember Numero di colonne dello sheet + // @cmember:(INTERNAL) Numero di colonne dello sheet byte _columns; - // @cmember Dimensione di ogni colonna + // @cmember:(INTERNAL) Dimensione di ogni colonna byte _size[MAX_COL]; - // @cmember Tipo di ogni colonne + // @cmember:(INTERNAL) Tipo di ogni colonne byte _type[MAX_COL]; - // @cmember Riga corrente + // @cmember:(INTERNAL) Riga corrente long _curr; - // @cmember Indice della prima riga visibile + // @cmember:(INTERNAL) Indice della prima riga visibile long _last_update; - // @cmember Numero di righe visibili + // @cmember:(INTERNAL) Numero di righe visibili short _visible_rows; - // @cmember Indica se e' possibile inserire un check (X di selezione) sulle righe sheet + // @cmember:(INTERNAL) Indica se e' possibile inserire un check (X di selezione) sulle righe sheet bool _checkable; - // @cmember Indica se e attivata la gestione dei check delle righe + // @cmember:(INTERNAL) Indica se e attivata la gestione dei check delle righe bool _check_enabled; - // @cmember Array di righe attivate + // @cmember:(INTERNAL) Array di righe attivate TBit_array _checked; - // @cmember Array di righe disabilitate + // @cmember:(INTERNAL) Array di righe disabilitate TBit_array _disabled; - // @cmember Handles dei bottoni presenti nella finestra + // @cmember:(INTERNAL) Handles dei bottoni presenti nella finestra WINDOW _button[MAX_BUT]; - // @cmember Tasto associato ad ogni bottone + // @cmember:(INTERNAL) Tasto associato ad ogni bottone KEY _key[MAX_BUT]; - // @cmember Maschera di bit corrispondente ai bottoni standard + // @cmember:(INTERNAL) Maschera di bit corrispondente ai bottoni standard byte _buttonmask; // @access Protected Member @@ -191,6 +191,8 @@ public: { return _checked.ones(); } }; +// @doc EXTERNAL + // @class TArray_sheet | Classe per la gestione degli sheet i cui dati sono // forniti da un array di stringhe // @@ -198,9 +200,9 @@ public: class TArray_sheet : public TSheet // @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Contenuto dell'array di cui costruire lo sheet + // @cmember:(INTERNAL) Contenuto dell'array di cui costruire lo sheet TString_array _data; // @access Protected Member @@ -235,6 +237,8 @@ public: }; +// @doc EXTERNAL + // @class TCursor_sheet | Classe per la gestione di uno sheet i cui dati // sono prelevati da un // @@ -242,14 +246,14 @@ public: class TCursor_sheet : public TSheet // @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Array di + // @cmember:(INTERNAL) Array di TArray _fields; - // @cmember Numero del records collegato al cursore + // @cmember:(INTERNAL) Numero del records collegato al cursore long _records; - // @cmember Cursore da cui prelevare i dati + // @cmember:(INTERNAL) Cursore da cui prelevare i dati TCursor* _cursor; // @access Protected Member @@ -279,6 +283,7 @@ public: {} }; +// @doc EXTERNAL // @class TBrowse_sheet | Classe per la gestione degli sheet legati ad un // cursore del campo della maschera @@ -287,11 +292,11 @@ public: class TBrowse_sheet : public TCursor_sheet // @author:(INTERNAL) Guido -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Campi collegati ai campi editabili (vedi ) + // @cmember:(INTERNAL) Campi collegati ai campi editabili (vedi ) TEdit_field* const _field; - // @cmember Riga selezionata + // @cmember:(INTERNAL) Riga selezionata int _sel; // @access Protected Member @@ -315,7 +320,7 @@ public: // @cmember Distruttore virtual ~TBrowse_sheet() {} - // @cmember ??? + // @cmember Esegue la finestra. Ritorna il tasto premuto nella finestra virtual KEY run(); }; diff --git a/include/sort.h b/include/sort.h index b9df36d10..fcd583e37 100755 --- a/include/sort.h +++ b/include/sort.h @@ -11,16 +11,16 @@ // // @base public | TObject class TSort : public TObject -// @author:(INTERNAL) Alex +// @author:(INTERNAL) Sandro { // @friend TRecfield friend class TRecfield; - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Puntatore alla struttura di un sort + // @cmember:(INTERNAL) Puntatore alla struttura di un sort struct s_prm* _sortvar; - // @cmember Indice nella tabella dei campi della chiave + // @cmember:(INTERNAL) Indice nella tabella dei campi della chiave int nsortkey; // @access Public Member diff --git a/include/stack.h b/include/stack.h index c96e72dfc..f7f3e0b99 100755 --- a/include/stack.h +++ b/include/stack.h @@ -12,11 +12,11 @@ // @base public | TArray class TStack : private TArray -// @author:(INTERNAL) ??? +// @author:(INTERNAL) Sandro -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Puntatore alla cima dello stack + // @cmember:(INTERNAL) Puntatore alla cima dello stack int _sp; // @access Public Member diff --git a/include/stdtypes.cpp b/include/stdtypes.cpp index 1e3f00c96..d459e9bbb 100755 --- a/include/stdtypes.cpp +++ b/include/stdtypes.cpp @@ -23,12 +23,14 @@ extern isfdptr *openf; HIDDEN long _stdlevel = 0; -// @doc EXTERNAL +// @doc INTERNAL // @func Ritorna il livello degli archivi long get_std_level() { return _stdlevel; } +// @doc INTERNAL + // @func Ritorna il numero di serie della chiave // // @rdesc Numero di serie della chiave @@ -42,6 +44,8 @@ int get_serial_number() return getser(); } +// @doc INTERNAL + // @func Inizilizza le variabili globali void init_global_vars() { @@ -76,6 +80,7 @@ void init_global_vars() #endif DB_init(); } +// @doc INTERNAL // @func Dealloca le variabili globali void free_global_vars() @@ -99,6 +104,8 @@ void free_global_vars() unsigned long _alloc_count = 0; #endif +// @doc EXTERNAL + // @func Operatore per la creazione di un oggetto (sostituisce operatore C++) // // @rdesc Ritorna il puntatore all'oggetto creato @@ -119,6 +126,7 @@ void* operator new(size_t size) return mem; } +// @doc EXTERNAL // @func Operatore per la distruzione di un oggetto (sostituisce operatore C++) void operator delete( diff --git a/include/stdtypes.h b/include/stdtypes.h index 00909bbd2..592191417 100755 --- a/include/stdtypes.h +++ b/include/stdtypes.h @@ -7,8 +7,6 @@ #endif #endif -// @doc EXTERNAL - #define pure =0 #define FALSE 0 @@ -19,17 +17,24 @@ #define EOL -1 #define NOERR 0 +// @doc EXTERNAL + // @type UINT8 | Altro nome di assegnazione per gli unsigned char typedef unsigned char UINT8; #ifdef M_I386 +// @doc EXTERNAL + // @type UINT16 | Altro nome di assegnazione per gli unsigned short (se compilato a 32bit) // oppure unsigned int (se non definito M_I386) typedef unsigned short UINT16; #else typedef unsigned int UINT16; #endif +// @doc EXTERNAL + // @type UINT32 | Altro nome di assegnazione per gli unsigned long typedef unsigned long UINT32; +// @doc EXTERNAL // @type INT8 | Altro nome di assegnazione per i char typedef char INT8; @@ -40,18 +45,28 @@ typedef short INT16; #else typedef int INT16; #endif +// @doc EXTERNAL + // @type INT32 | Altro nome di assegnazione per i long typedef long INT32; +// @doc EXTERNAL // @type bool | Tipo booleano che puo' assumere i valori TRUE (definito come 1) // e FALSE (definito come 0). typedef UINT8 bool; +// @doc EXTERNAL + // @type word | Tipo per la definizione di tipi di lunghezza pari a due byte typedef UINT16 word; +// @doc EXTERNAL + // @type dword | Tipo per la definizione di tipi di lunghezza pari a quattro byte typedef UINT32 dword; +// @doc EXTERNAL + // @type byte | Tipo per la definizione di tipi di lunghezza pari ad un byte typedef UINT8 byte; +// @doc EXTERNAL // @type KEY | Tipo per la definizione di variabili destinati a contenere i caratteri // immessi da tastiera diff --git a/include/strings.cpp b/include/strings.cpp index 83654cee9..4f31250c9 100755 --- a/include/strings.cpp +++ b/include/strings.cpp @@ -85,7 +85,7 @@ void TString::resize( } // Certified 99% (uses resize) -// @doc INTERNAL +// @doc EXTERNAL // // @mfunc Inizializza con la stringa puntata da char* di lunghezza size // (usa ) @@ -101,6 +101,7 @@ TString& TString::set( return *this; } +// @doc EXTERNAL // @mfunc Espande la stringa per altri caratteri int TString::make_room( @@ -118,8 +119,6 @@ int TString::make_room( return lun; } -// @doc EXTERNAL - TString::TString(const char* s) : _str(NULL), _size(0) { set(s); } @@ -195,6 +194,8 @@ TString& TString::operator <<(const TString& str) { return operator <<(str._str); } +// @doc EXTERNAL + // @mfunc Elimina tutti i caratteri contenuti in

TString& TString::strip( const char* k) // @parm Stringa da controllarne l'esitenza nell'oggetto @@ -266,6 +267,8 @@ const char* TString::class_name() const word TString::class_id() const { return CLASS_STRING; } +// @doc EXTERNAL + // @mfunc Duplica una stringa TObject* TString::dup() const @@ -292,6 +295,8 @@ void TString::print_on(ostream& out) const // Certified 100% +// @doc EXTERNAL + // @mfunc Ritorna la posizione del carattere o della stringa nell'oggetto TString // // @rdesc Ritorna i seguneti parametri: @@ -340,6 +345,8 @@ int TString::find(const char* s, int from) const // Certified 99% +// @doc EXTERNAL + // @mfunc Ritorna l'oggetto TString composto dai

caratteri da sinistra const TString& TString::left( int count) const // @parm Indica fino quale carattere restituire la stringa @@ -351,6 +358,8 @@ const TString& TString::left( } // Certified 99% +// @doc EXTERNAL + // @mfunc Ritorna l'oggetto TString composto dai

caratteri da destra const TString& TString::right( int count) const // @parm Indica da quale carattere restituire la stringa @@ -365,6 +374,8 @@ const TString& TString::right( // Certified 100% +// @doc EXTERNAL + // @mfunc Ritorna l'oggetto TString composto dai

caratteri a partire // da

const TString& TString::mid( @@ -392,6 +403,8 @@ const TString& TString::mid( // Certified 100% +// @doc EXTERNAL + // @mfunc Ritorna la stringa da

a

(escluso) const TString& TString::sub( int from, // @parm Posizione dalla quale estrarre la stringa @@ -417,6 +430,7 @@ TString& TString::cut(int n) return *this; } +// @doc EXTERNAL // @mfunc Elimina gli spazi da sinistra o i primi n caratteri (da sinistra). TString& TString::ltrim( @@ -443,6 +457,8 @@ TString& TString::ltrim( return *this; } +// @doc EXTERNAL + // @mfunc Elimina gli spazi da destra o i primi n caratteri (da destra). TString& TString::rtrim( int count) // @parm Indica il numero di caratteri da eliminare. @@ -494,6 +510,8 @@ TString& TString::trim() } // Certified 50% +// @doc EXTERNAL + // @mfunc Compara due stringhe (o i primi

caratteri) // // @rdesc Ritrna i seguenti valori: @@ -526,7 +544,11 @@ int TString::compare( } // Certified 100% +// @doc EXTERNAL + // @mfunc Riempe la stringa con n caratteri c +// +// @rdesc Ritorna l'indirizzo dell stringa TString& TString::fill( char c, // @parm Caratteri con cui riempire la stringa int n) // @parm Numero di caratteri da inserire nella stringa @@ -536,8 +558,7 @@ TString& TString::fill( // stessa viene ridimensionata (chaimata alla ). // Nel caso non venga passato il parametro

la stringa viene // riempita col carattere

per tutta la lunghezza. - // - // @rdesc Ritorna l'indirizzo dell stringa + { if (n < 0) n = size(); else if (n > size()) resize(n, FALSE); @@ -546,7 +567,9 @@ TString& TString::fill( return *this; } -// Certified 100% +// Certified 100% +// @doc EXTERNAL + // @mfunc Giustifica l'oggetto stringa a destra TString& TString::right_just( int n, // @parm Numero di colonne alla quali allineare (defualt larghezza della stringa) @@ -566,7 +589,9 @@ TString& TString::right_just( return *this; } -// Certified 100% +// Certified 100% +// @doc EXTERNAL + // @mfunc Centra l'oggetto stringa TString& TString::center_just( int n, // @parm Numero di colonne alla quali allineare (defualt larghezza della stringa) @@ -587,7 +612,9 @@ TString& TString::center_just( return *this; } -// Certified 100% +// Certified 100% +// @doc EXTERNAL + // @mfunc Giustifica l'oggetto stringa a sinistra TString& TString::left_just( int n, // @parm Numero di colonne alla quali allineare (defualt larghezza della stringa) @@ -607,6 +634,8 @@ TString& TString::left_just( return *this; } +// @doc EXTERNAL + // @mfunc Formatta una stringa usando il formato dato da

TString& TString::picture( const char* pic, // @parm Formato della stringa @@ -631,6 +660,8 @@ TString& TString::picture( } // Certified 90% (spark size limited) +// @doc EXTERNAL + // @mfunc Manda un output formattato alla stringa oggetto TString& TString::format( const char* fmt, // @parm Stringa da formattare @@ -665,7 +696,9 @@ TString& TString::lower() return *this; } -// Certified 50% +// Certified 50% +// @doc EXTERNAL + // @mfunc Permette di ttrovare il plurale di una stringa TString& TString::add_plural( long num, // @parm Numero di elementi per sapere la desineneza @@ -697,6 +730,8 @@ TString& TString::add_plural( } // Certified 90% +// @doc EXTERNAL + // @mfunc Sovrascrive la stringa

dalla posizione

TString& TString::overwrite( const char* s, // @parm Stringa da inserire @@ -722,7 +757,9 @@ TString& TString::overwrite( } -// Certified 90% +// Certified 90% +// @doc EXTERNAL + // @mfunc Inserisce la stringa s dalla posizione pos TString& TString::insert( const char* s, // @parm Stringa da inserire @@ -793,6 +830,8 @@ void TFixed_string::strncpy(const char* s, int n) } // Certified 99% +// @doc EXTERNAL + // @mfunc Manda un output formattato alla stringa oggetto TString& TFixed_string::format( const char* fmt, // @parm Formato della stringa @@ -872,6 +911,9 @@ TFilename& TFilename::add(const char* n) return *this; } + +// @doc EXTERNAL + // @mfunc Controlla il formato del nome del file // // @rdesc Ritorna i seguenti valori @@ -975,6 +1017,8 @@ const TFilename& TFilename::tempdir() } // Certified 50% +// @doc EXTERNAL + // @mfunc Genera il nome di un file temporaneo const TFilename& TFilename::temp( const char* prefix) // @parm Eventuale prefisso da assegnare al file temporaneo @@ -1088,6 +1132,8 @@ const char* TToken_string::get() } // Certified 50% +// @doc EXTERNAL + // @mfunc Ritorna un Token // // @rdesc Ritorne la stringa identificata dal Token passato come parametro

@@ -1145,6 +1191,8 @@ const char* TToken_string::get( // Certified 99% +// @doc EXTERNAL + // @mfunc Ritorna un carattere // // @rdesc Ritorna il primo carattere del Token richiesto @@ -1237,6 +1285,8 @@ int TToken_string::items() const } // Certified 99% +// @doc EXTERNAL + // @mfunc Aggiunge un elemento alla token string void TToken_string::add( const char* s, // @parm Stringa da aggiungere @@ -1375,6 +1425,8 @@ int TString_array::add(const TToken_string& s, int n) return n; } +// @doc EXTERNAL + // @mfunc Cerca una stringa nell'array // // @rdesc Ritorna la posizione nell'array in cui si trova la stringa (-1 se non diff --git a/include/strings.h b/include/strings.h index d1e995f11..642c67286 100755 --- a/include/strings.h +++ b/include/strings.h @@ -20,6 +20,7 @@ // // @base public | TObject class TString : public TObject +// @author:(INTERNAL) Guido { // @access Protected Member protected: @@ -238,11 +239,14 @@ public: int compare(const char* s, int max = -1, bool ignorecase = FALSE) const; }; +// @doc EXTERNAL + // @class TFixed_string | Classe per la definizione di stringhe di lunghezza // fissa e non rilocabili dinamicamente // // @base public | TString class TFixed_string : public TString +// @author:(INTERNAL) Guido { // @access Protected Member @@ -273,14 +277,17 @@ public: void strncpy(const char* s, int n); }; +// @doc EXTERNAL + // @class TString16 | Definisce le stringhe di 16 caratteri // // @base public | TFixed_string class TString16 : public TFixed_string +// @author:(INTERNAL) Guido { - // @access Private member + // @access:(INTERNAL) Private member - // @cmember Stringa di 16 caratteri + // @cmember:(INTERNAL) Stringa di 16 caratteri char _str16[17]; // @access Public Member @@ -303,10 +310,14 @@ public: // gli stessi, la differenza e' solo nel numero di caratteri della stringa. }; +// @doc EXTERNAL + // @class TString80 | Definisce le stringhe di 80 caratteri // // @base public | TFixed_string // +// @author:(INTERNAL) Guido +// // @comm Questa classe e' identica alla per quanto riguarda i public member e quindi // si rimanda a tale classe per ulteriori spiegazioni. class TString80 : public TFixed_string @@ -320,10 +331,14 @@ public: const TString& operator =(const TString& s) { return set((const char*)s); } }; +// @doc EXTERNAL + // @class TString256 | Definisce le stringhe di 256 caratteri // // @base public | TFixed_string // +// @author:(INTERNAL) Guido +// // @comm Questa classe e' identica alla per quanto riguarda i public member e quindi // si rimanda a tale classe per ulteriori spiegazioni. class TString256 : public TFixed_string @@ -337,10 +352,14 @@ public: const TString& operator =(const TString& s) { return set((const char*)s); } }; +// @doc EXTERNAL + // @class TFilename | Classe per la gestione dei nome dei file // // @base public | TString80 class TFilename : public TString80 +// @author:(INTERNAL) Guido + { // @comm Nel caso di utilizzo di Windows 95 occorre cambiare le classe base in @@ -385,18 +404,22 @@ public: const TFilename& tempdir(); }; + +// @doc EXTERNAL + // @class TToken_string | Contiene una stringa formata da piu' stringhe // separate da un carattere (di solito il pipe) // // @base public | TString class TToken_string : public TString +// @author:(INTERNAL) Guido { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Carattere separatore + // @cmember:(INTERNAL) Carattere separatore char _separator; - // @cmember Puntatore all'ultimo + // @cmember:(INTERNAL) Puntatore all'ultimo int _last; // @access Protected Member @@ -460,15 +483,18 @@ public: // DES Paragraph /////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @class TParagraph_string | Classe che serve per spezzare le stringhe in paragrafi -// lunghi al massimo la lunghezza fissata +// lunghi al massimo la lunghezza fissata // // @base public | TToken_string class TParagraph_string : public TToken_string +// @author:(INTERNAL) Guido { - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Lunghezza massima del paragrafo + // @cmember:(INTERNAL) Lunghezza massima del paragrafo int _width; // @access Protected Member @@ -494,10 +520,13 @@ public: // DES TString_array /////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @class TString_array | Array di stringhe // // @base public | TArray class TString_array : public TArray +// @author:(INTERNAL) Guido { // @access Public Member diff --git a/include/tabapp.h b/include/tabapp.h index a98a4c8ba..ebff97345 100755 --- a/include/tabapp.h +++ b/include/tabapp.h @@ -20,13 +20,13 @@ class Tab_application : public TRelation_application // @author:(INTERNAL) Nicola -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Maschera corrente dell'applicazione + // @cmember:(INTERNAL) Maschera corrente dell'applicazione TMask* _msk; - // @cmember Relazione corrente dell'applicazione + // @cmember:(INTERNAL) Relazione corrente dell'applicazione TRelation* _rel; - // @cmember Nome della tabella da utilizzare + // @cmember:(INTERNAL) Nome della tabella da utilizzare TString16 _tabname; // @access Protected Member diff --git a/include/tabutil.h b/include/tabutil.h index 8b115eef2..81664abc0 100755 --- a/include/tabutil.h +++ b/include/tabutil.h @@ -12,13 +12,13 @@ // @base public | TLocalisamfile class TTable : public TLocalisamfile -// @author(:INTERNAL) Sandro +// @author:(INTERNAL) Sandro -// @access Private Member +// @access:(INTERNAL) Private Member { - // @cmember Nome della tabella + // @cmember:(INTERNAL) Nome della tabella TString16 _tabname; - // @cmember Codice della tabella + // @cmember:(INTERNAL) Codice della tabella TRecfield _cod; // @access Public Member diff --git a/include/text.cpp b/include/text.cpp index 6b52e1a18..0d3eae582 100755 --- a/include/text.cpp +++ b/include/text.cpp @@ -5,8 +5,6 @@ static char TEXT_TMP[257]; -// @doc EXTERNAL - class _HotSpot : public TObject { public: @@ -23,8 +21,9 @@ public: } }; +// @doc EXTERNAL -// @mfunc Permette di settare gli hot_spot!!! +// @mfunc Permette di settare gli hot_spot void TTextfile::set_hotspots ( char fg, // @parm Colore di foreground da utilizzare per l'hotspot char bg) // @parm Colore di background da utilizzare per l'hotspot @@ -195,6 +194,7 @@ void TTextfile::_read_page (long n) } } +// @doc EXTERNAL // @mfunc Legge il testo formattato void TTextfile::read_line ( @@ -384,6 +384,8 @@ void TTextfile::read_line ( } +// @doc EXTERNAL + // @mfunc Ritorna la stringa di caratteri senza formattazione // // @rdesc Ritorna la stringa di caratteri ed eventualmente con i campi sostituiti @@ -409,9 +411,8 @@ const char *TTextfile::line( return strlen(TEXT_TMP) > (word)pos ? &(TEXT_TMP[pos]) : ""; } -// search and replace (una riga per volta, rispetta i formati) -// txt = text to search; pos = int to put the char position in; -// from = where to start; down = FALSE == up +// @doc EXTERNAL + // @mfunc Cerca una stringa di testo all'interno di una riga // // @rdesc Ritorna la posizione in cui e' stato rintracciato il testo. Ritorna -1 se non e' stato @@ -442,6 +443,8 @@ long TTextfile::search( return -1l; } +// @doc EXTERNAL + // @mfunc Sostituisce un testo all'interno di una riga // // @rdesc Ritorna la posizione in cui e' stato sostituito il testo. Ritorna -1 se non e' stata @@ -494,6 +497,8 @@ int TTextfile::replace( return -1; } +// @doc EXTERNAL + // @mfunc Ritorna la stringa di caratteri con la formattazione // // @rdesc La stringa ritornata ha la formattazione (ovvere tutti i @codes, in modo che anche @@ -532,6 +537,8 @@ long TTextfile::get_attribute (int pos) return stl; } +// @doc EXTERNAL + // @mfunc Ritorna lo stile del piece // // @rdesc Ritorna un numero (vedi ) indicante lo stile @@ -545,6 +552,8 @@ int TTextfile::get_style ( return (int) (x & 0x0000ffff); } +// @doc EXTERNAL + // @mfunc Ritorna il colore di background del piece // // @rdesc Ritorna il codice del colore, NULL se il carattere non esiste @@ -560,6 +569,8 @@ char TTextfile::get_background ( return (char) (x >> 24); } +// @doc EXTERNAL + // @mfunc Ritorna il colore di foreground del piece // // @rdesc Ritorna il codice del colore, NULL se il carattere non esiste @@ -584,6 +595,8 @@ const char* TTextfile::piece() return strcpy(TEXT_TMP, l); } +// @doc EXTERNAL + // @mfunc Ritorna la parola alla posizione indicata // // @rdesc Stringa indicante la parola cercate @@ -616,6 +629,8 @@ const char *TTextfile::word_at ( return TEXT_TMP; } +// @doc EXTERNAL + // @mfunc Aggiunge una riga al text (con i formati del caso) // // @rdesc Ritorna il risultato dell'operazione: @@ -701,9 +716,11 @@ void TTextfile::print () // print } +// @doc EXTERNAL + // @mfunc Scrive il testo (non formattato) su file // -// @rdesc Rtirna il risultato dell'operazione di scrittura +// @rdesc Ritorna il risultato dell'operazione di scrittura // // @flag TRUE | Se e' riuscito a scrivere il testo // @flag FALSE | Se ha avuto qualche problema nella gestione del file in cui scrivere diff --git a/include/text.h b/include/text.h index b3edd5759..0f9ab8dba 100755 --- a/include/text.h +++ b/include/text.h @@ -18,7 +18,7 @@ #include #endif -// @doc EXTERNAL +// @doc INTERNAL // @enum direction | Direzioni da seguire nella lettura del file di testo enum direction { @@ -26,6 +26,9 @@ enum direction { down, // @emem Direzione verso il basso updown}; // @emem Entrambe le direzioni + +// @doc INTERNAL + // @enum style | Stile del carattere da utilizzare per il disegno del testo enum style { normal = XVT_FS_NONE, // @emem Stile carattere normale @@ -34,80 +37,82 @@ enum style { underlined = XVT_FS_UNDERLINE, // @emem Stile carattere sottolineato tabbed = XVT_FS_SCALE }; // @emem Stile carattere scalato +// @doc EXTERNAL + // @class TTextfile | Classe per la definizione delle procedure di stampa di un testo // // @base public | TObject class TTextfile: public TObject // @author:(INTERNAL) Villa -// @access Private Member +// @access:(INTERNAL) Private Member { - // @ccost DEFAULT_PAGESIZE | 128 | Dimensione di default della pagina + // @ccost:(INTERNAL) DEFAULT_PAGESIZE | 128 | Dimensione di default della pagina enum {DEFAULT_PAGESIZE = 128}; - // @cmember Pagina di testo correntemente in memoria + // @cmember:(INTERNAL) Pagina di testo correntemente in memoria TArray _page; - // @cmember Un bit per ogni riga, TRUE se ci si e' fatto replace + // @cmember:(INTERNAL) Un bit per ogni riga, TRUE se ci si e' fatto replace TBit_array _dirty_lines; - // @cmember Inizio della pagina in coordinate testo + // @cmember:(INTERNAL) Inizio della pagina in coordinate testo long _page_start; - // @cmember Fine della pagina in coordinate testo + // @cmember:(INTERNAL) Fine della pagina in coordinate testo long _page_end; - // @cmember Numero di righe di

+ // @cmember:(INTERNAL) Numero di righe di

long _page_size; - // @cmember Numero totale delle linee di testo + // @cmember:(INTERNAL) Numero totale delle linee di testo long _lines; - // @cmember Numero della linea corrente + // @cmember:(INTERNAL) Numero della linea corrente long _cur_line; - // @cmember Nome del file di testo (puo' essere temporaneo) + // @cmember:(INTERNAL) Nome del file di testo (puo' essere temporaneo) TFilename _filename; - // @cmember Nome del file indice (sempre temporaneo) + // @cmember:(INTERNAL) Nome del file indice (sempre temporaneo) TFilename _indname; - // @cmember Puntatore al file indice + // @cmember:(INTERNAL) Puntatore al file indice FILE* _index; - // @cmember Puntatore al file di testo + // @cmember:(INTERNAL) Puntatore al file di testo FILE* _instr; - // @cmember Direzione ottimale di lettura del file (vedi ) + // @cmember:(INTERNAL) Direzione ottimale di lettura del file (vedi ) direction _direction; - // @cmember Piece corrente + // @cmember:(INTERNAL) Piece corrente int _item; - // @cmember Testo della riga corrente + // @cmember:(INTERNAL) Testo della riga corrente TToken_string _line; - // @cmember Codifica delllo stile e del colore del carattere + // @cmember:(INTERNAL) Codifica delllo stile e del colore del carattere long _styles[256]; - // @cmember Indica se la piece e' + // @cmember:(INTERNAL) Indica se la piece e' bool _tabbed_piece; - // @cmember Punti ipertestuali come passati da utente () + // @cmember:(INTERNAL) Punti ipertestuali come passati da utente () TArray _hotspots; - // @cmember Rappresentazione interna punti ipertestuali + // @cmember:(INTERNAL) Rappresentazione interna punti ipertestuali TArray _spots; - // @cmember Indice se e' stato modificato + // @cmember:(INTERNAL) Indice se e' stato modificato bool _dirty; - // @cmember Indica se i file sono aperti + // @cmember:(INTERNAL) Indica se i file sono aperti bool _isopen; - // @cmember Indica se si tratta di un file temporaneo + // @cmember:(INTERNAL) Indica se si tratta di un file temporaneo bool _istemp; - // @cmember Indica se e' permessao dare una + // @cmember:(INTERNAL) Indica se e' permessao dare una bool _accept; - // @cmember Indica se si sta modificando con e si puo' fare + // @cmember:(INTERNAL) Indica se si sta modificando con e si puo' fare bool _interactive; - // @cmember Gestisce la sostituzione di campi al posto di tag nel testo + // @cmember:(INTERNAL) Gestisce la sostituzione di campi al posto di tag nel testo TRelation* _rel; - // @cmember Riempe la pagina contenente

, ottimizzando start ed end + // @cmember:(INTERNAL) Riempe la pagina contenente

, ottimizzando start ed end void _read_page(long line); - // @cmember Ritorna TRUE se la roga

e' nella pagina corrente + // @cmember:(INTERNAL) Ritorna TRUE se la roga

e' nella pagina corrente bool _in_page(long l) { return l >= _page_start && l < _page_end; } - // @cmember Salva i replace fatti sul file (anche temporaneo) + // @cmember:(INTERNAL) Salva i replace fatti sul file (anche temporaneo) void _save_changes(); // void _parse_style(long j); - // @cmember Traduce il tag dello stile passato in

(tag) con uno di (stile XVT) + // @cmember:(INTERNAL) Traduce il tag dello stile passato in

(tag) con uno di (stile XVT) style _trans_style(char c); // @access Public Member diff --git a/include/utility.cpp b/include/utility.cpp index 8d382c6ac..6dcf34db9 100755 --- a/include/utility.cpp +++ b/include/utility.cpp @@ -15,6 +15,7 @@ #include #include #include + // @doc EXTERNAL // @func Permette di rimuovere un file (chiama unlink) @@ -33,6 +34,8 @@ int remove( #define __UTILITY_CPP #include +// @doc EXTERNAL + // @func Permette di copiare un file // // @rdesc Ritorna il risultato dell'operazione: @@ -88,6 +91,8 @@ bool fcopy( return ok; } +// @doc EXTERNAL + // @func Controlla l'esistenza di un file // // @rdesc Ritrona i seguenti valori: @@ -100,6 +105,8 @@ bool fexist( return access(file, F_OK) == 0; } +// @doc EXTERNAL + // @func Permette di creare una directory // // @rdesc Ritorna il risultato dell'operazione @@ -120,6 +127,8 @@ bool make_dir( #ifndef FOXPRO +// @doc EXTERNAL + // @func Ritorna la lista dei file il cui nome corrisponde alla stringa (con caratteri // jolly) passata. // @@ -171,6 +180,8 @@ int list_files( #endif // Certified 99% +// @doc EXTERNAL + // @func Permette di ritornare una stringa formattata // // @rdesc Ritorna la stringa desiderata @@ -191,6 +202,7 @@ char* format( return(__tmp_string); } +// @doc EXTERNAL // @func Converte la coppia nome-parametro in una stringa che identifica il programma // @@ -233,6 +245,9 @@ HIDDEN int ctoi(char c) return -1; } + +// @doc EXTERNAL + // @func Converte una cifra romana in intero normale // // @rdesc Ritorna l'equivalente in numeri della cifra romane @@ -254,6 +269,8 @@ int rtoi( return (value == 0) ? tot : -1; } +// @doc EXTERNAL + // @func Converte un numero intero nell'equivalente cifra romana // // @rdesc Ritorna una stringa contenente la cifra romana @@ -292,6 +309,8 @@ const char* itor( return roman_string; } +// @doc EXTERNAL + // @func Permette di codificare i caratteri di escape // // @rdesc Ritorna il carattere codificato @@ -363,6 +382,8 @@ const char *esc( HIDDEN const char * const key = "QSECOFR-"; +// @doc EXTERNAL + // @func Permette di criptare una parola // // @rdesc Ritorna la stringa criptata @@ -377,6 +398,8 @@ const char * encode( return __tmp_string; } +// @doc EXTERNAL + // @func Permette di decodificare una stringa criptata // // @rdesc Ritorna la stringa in chiaro @@ -393,6 +416,8 @@ const char * decode( #if XVT_OS != XVT_OS_WIN +// @doc EXTERNAL + // @func Permette di confrontare due stringhe ignorando la differenza // tra lettere maiuscole o minuscole // @@ -414,6 +439,9 @@ int stricmp( #ifdef __WATCOMC__ + +// @doc EXTERNAL + // @func Costruisce il percorso per un file temporaneo // // @rdesc Ritorna il nome assoluto del file temporaneo diff --git a/include/utility.h b/include/utility.h index 2e1a9a328..f5148bc4a 100755 --- a/include/utility.h +++ b/include/utility.h @@ -5,8 +5,6 @@ #include #endif -// @doc EXTERNAL - char* format (const char* fmt, ...); const char* cmd2name(const char* argv0, const char* argv1 = ""); int rtoi(const char * roman); @@ -18,6 +16,9 @@ bool make_dir(const char* file); int list_files(TToken_string& names); const char * encode(const char* data); const char * decode(const char* data); + +// @doc EXTERNAL + // @func Controlla se il carattere passato e' il simbolo di slash ('\\' oppure '/') // // @rdesc Ritorna i seguneti valori: diff --git a/include/validate.cpp b/include/validate.cpp index 4c4fe8ab4..9bb2395b7 100755 --- a/include/validate.cpp +++ b/include/validate.cpp @@ -12,8 +12,6 @@ #include -// @doc EXTERNAL - typedef bool (*VAL_FUNC)(TMask_field&, KEY k); HIDDEN const TArray* _parms; @@ -67,6 +65,8 @@ HIDDEN bool _emptycopy_val(TMask_field& f, KEY) return TRUE; } +// @doc EXTERNAL + // @func Controlla se la Partita IVA assume un valore valido // // @rdesc Ritorna i seguenti valori: @@ -195,6 +195,7 @@ HIDDEN bool __cf_check (const char * codcf) return ok; } +// @doc EXTERNAL // @func Controlla se il Codice Fiscale assume un valore valido // @@ -825,6 +826,7 @@ HIDDEN VAL_FUNC _global_val_func[MAX_FUNC] = }; +// @doc INTERNAL // @func Effettua i controlli sui campi di una maschera // diff --git a/include/viswin.cpp b/include/viswin.cpp index edfbf54ff..c4f057357 100755 --- a/include/viswin.cpp +++ b/include/viswin.cpp @@ -13,8 +13,6 @@ #include -// @doc EXTERNAL - const char* const PRINT_FONT = XVT_FFN_FIXED; const int PRINT_HEIGHT = 10; @@ -97,8 +95,14 @@ int TViswin::taby(int y) const return y * CHARY; } +// @doc INTERNAL -void TViswin::check_menu_item(MENU_TAG item, bool on) +// @mfunc Abilita/Disabilita una voce di menu' +void TViswin::check_menu_item( + MENU_TAG item, // @parm Voce del menu' da abilitare + bool on) // @parm Operazione da svolgere sulla voce di menu': + // @flag TRUE | Viene abilitata la voce + // @flag TRUE | Viene disabilitata la voce { xvt_menu_set_item_checked(win(), item, on); xvt_menu_update(win()); @@ -292,6 +296,8 @@ void TViswin::display_link (long y, long x1, long x2, const char *d) } } +// @doc INTERNAL + // @mfunc Cancella il link void TViswin::erase_link ( long y, // @parm Altezza del link da disegnare @@ -317,6 +323,7 @@ void TViswin::erase_link ( } } } +// @doc INTERNAL // @mfunc Disegna il link void TViswin::paint_link ( @@ -329,6 +336,8 @@ void TViswin::paint_link ( (int)(x2 + (long)X_OFFSET), (int)(y + (long)Y_OFFSET+1l)); } +// @doc INTERNAL + // @mfunc Modifica le dimensione di un box // // @rdesc Ritorna se sono state modificate le dimensioni del box: @@ -352,6 +361,8 @@ bool TViswin::adjust_box ( return TRUE; } +// @doc INTERNAL + // @mfunc Controlla se la posizione cursore

cade su un link ipertestuale e si // comporta di conseguenza // @@ -470,6 +481,8 @@ bool TViswin::in_text (const TPoint & p) const } +// @doc INTERNAL + // @mfunc Indica se occorre ridisegnare la selezione // // @rdesc Ritorna se e' necessario ridipingere la selezione @@ -504,6 +517,8 @@ void TViswin::display_selection () _sel_displayed = TRUE; } +// @doc INTERNAL + // @mfunc Riposizona inizio e fine della selezione void TViswin::adjust_selection ( TPoint & p1, // @parm Primo punto per il riposizionamento della selezione @@ -556,6 +571,8 @@ void TViswin::shift_screen(scroll dir) _scrolling = FALSE; } +// @doc INTERNAL + // @mfunc Aggiunge un bottone alla finestra // // @rdesc Ritorna l'handle del bottone aggiunto @@ -676,7 +693,9 @@ void TViswin::paint_screen () } -// j = riga totale, row = riga a video + +// @doc INTERNAL + // @mfunc Permette di stampare il background void TViswin::paint_background( long j, // @parm Numero della riga di cui stampare il background @@ -931,6 +950,8 @@ void TViswin::paint_row (long j) autoscroll (TRUE); } +// @doc INTERNAL + // @mfunc Disegna una colonna void TViswin::paint_column ( long j, // @parm Colonna da disegnare @@ -1057,6 +1078,8 @@ void TViswin::erase_point () _point_displayed = FALSE; } +// @doc INTERNAL + // @mfunc Disegna il cursore in xor nello stile del momento void TViswin::paint_point ( bool erase) // @parm Indica di cancellare il cursore precedente (default FALSE): @@ -1139,6 +1162,8 @@ void TViswin::paint_selection () } } +// @doc INTERNAL + // @mfunc Disegna la barra di attesa void TViswin::paint_waitbar ( bool xor) // @parm Utilizzato in UNIX. (default TRUE) @@ -2253,6 +2278,8 @@ void TViswin::goto_top() goto_pos(0l,0l);; } +// @doc INTERNAL + // @mfunc Sposta la visualizzazione di stampa alla posizione indicata void TViswin::goto_pos( long r, // @parm Riga a cui spostare la visualizzazione di stampa @@ -2283,6 +2310,8 @@ void TViswin::refresh() force_update(); } +// @doc INTERNAL + // @mfunc Funzione di ricerca non interattiva // // @rdesc Ritorna la riga in cui e' stata trovato il testo (-1 se non e' stato trovato) @@ -2299,6 +2328,8 @@ long TViswin::search( return _txt.search(txt,pos,from,down, cs); } +// @doc INTERNAL + // @mfunc Funzione di sostituzione di un testo all'interno di una riga non interattiva // // @rdesc Ritorna la posizione in cui e' stato sostituito il testo. Ritorna -1 se non e' stata @@ -2378,6 +2409,8 @@ void TViswin::show_rulers (bool on) refresh(); } +// @doc INTERNAL + // @mfunc Indica se mostrare o no i bottoni della finestra di anteprima void TViswin::show_buttons( bool on) // @parm Indica l'operazione da svolgere: diff --git a/include/viswin.h b/include/viswin.h index 572898326..bdacfbe3a 100755 --- a/include/viswin.h +++ b/include/viswin.h @@ -15,7 +15,7 @@ class TBrowsefile_field; -// @doc EXTERNAL +// @doc INTERNAL // @class TViswin | Classe per la gestione della finestra video di anteprima di stampa // @@ -24,158 +24,158 @@ class TViswin : public TScroll_window // @author:(INTERNAL) Villa -// @access Private Member { // @cfriend TBrowsefile_field friend class TBrowsefile_field; + + // @access:(INTERNAL) Private Member - // @ccost MAXBUT | 4 | Numero massimo di bottoni disponibili nella pagina + // @ccost:(INTERNAL) MAXBUT | 4 | Numero massimo di bottoni disponibili nella pagina enum { MAXBUT = 4, - // @ccost MAXLEN | 256 | Lunghezza massima del modulo di stampa + // @ccost:(INTERNAL) MAXLEN | 256 | Lunghezza massima del modulo di stampa MAXLEN = 256, - // @ccost BUFFERSIZE | 256 | Dimensione del buffer di stampa + // @ccost:(INTERNAL) BUFFERSIZE | 256 | Dimensione del buffer di stampa BUFFERSIZE = 256, - // @ccost MAXPIC | 4 | Numero massimo di immagini gestibili nell'anteprima + // @ccost:(INTERNAL) MAXPIC | 4 | Numero massimo di immagini gestibili nell'anteprima MAXPIC=4}; - enum scroll { none, up, down, left, right }; - // @cmember Nome del file di visualizzazione + // @cmember:(INTERNAL) Nome del file di visualizzazione TFilename _filename; - // @cmember Indica la presenza del bottone Collega + // @cmember:(INTERNAL) Indica la presenza del bottone Collega bool _islink; - // @cmember Indica la presenza del bottone Edit + // @cmember:(INTERNAL) Indica la presenza del bottone Edit bool _isedit; - // @cmember Indica la presenza del bottone Stampa + // @cmember:(INTERNAL) Indica la presenza del bottone Stampa bool _isprint; - // @cmember Indica se effettuare il disegno della crossbar + // @cmember:(INTERNAL) Indica se effettuare il disegno della crossbar bool _iscross; - // @cmember Indica se e' in corso la selezione + // @cmember:(INTERNAL) Indica se e' in corso la selezione bool _selecting; - // @cmember Indica se la selezione e' attiva + // @cmember:(INTERNAL) Indica se la selezione e' attiva bool _isselection; - // @cmember Indica se disegnare la X-bar al posto del cursore a punto + // @cmember:(INTERNAL) Indica se disegnare la X-bar al posto del cursore a punto bool _isbar; - // @cmember Indica se in corso lo scrolling + // @cmember:(INTERNAL) Indica se in corso lo scrolling bool _scrolling; - // @cmember Indica se e' necessario un update completo + // @cmember:(INTERNAL) Indica se e' necessario un update completo bool _need_update; - // @cmember Indica se il timer successivo e' attivo + // @cmember:(INTERNAL) Indica se il timer successivo e' attivo bool _istimer; - // @cmember Indica se possono arrivare nuove linee + // @cmember:(INTERNAL) Indica se possono arrivare nuove linee bool _isopen; - // @cmember Indica se sono stati selezionati flag + // @cmember:(INTERNAL) Indica se sono stati selezionati flag bool _selflag; - // @cmember Indica se e' evidenziata la selezione + // @cmember:(INTERNAL) Indica se e' evidenziata la selezione bool _sel_displayed; - // @cmember Indica se e' visualizzato il link + // @cmember:(INTERNAL) Indica se e' visualizzato il link bool _link_displayed; - // @cmember Indica se' e' visualizzata l'incrocio della crossbar + // @cmember:(INTERNAL) Indica se' e' visualizzata l'incrocio della crossbar bool _cross_displayed; - // @cmember Indica se e' visualizzato il cursore a carattere + // @cmember:(INTERNAL) Indica se e' visualizzato il cursore a carattere bool _point_displayed; - // @cmember Timer per evitare autorepeat di tasti + // @cmember:(INTERNAL) Timer per evitare autorepeat di tasti long _timer; - // òcmember Timer di attesa prima della chiusura del file + // òcmember:(INTERNAL) Timer di attesa prima della chiusura del file long _wtimer; - // @cmember Indica il tipo di scroll richiesto (vedi ) + // @cmember:(INTERNAL) Indica il tipo di scroll richiesto (vedi ) scroll _need_scroll; - // @cmember Flag per il disegno intelligente + // @cmember:(INTERNAL) Flag per il disegno intelligente bool _wasneeded; - // @cmember Array di bottoni attivi nella finestra + // @cmember:(INTERNAL) Array di bottoni attivi nella finestra WINDOW _button[MAXBUT]; - // @cmember Bottone che ha il focus + // @cmember:(INTERNAL) Bottone che ha il focus int _curbut; - // @cmember Contatore di bottoni + // @cmember:(INTERNAL) Contatore di bottoni int _buttons; - // @cmember Bottone Collega + // @cmember:(INTERNAL) Bottone Collega WINDOW _link_button; - // @cmember Bottone Stampa + // @cmember:(INTERNAL) Bottone Stampa WINDOW _print_button; - // @cmember Numero di righe di testo + // @cmember:(INTERNAL) Numero di righe di testo long _textrows; - // @cmember Numero di colonne di testo + // @cmember:(INTERNAL) Numero di colonne di testo long _textcolumns; - // @cmember Testo che deve essere visualizzato + // @cmember:(INTERNAL) Testo che deve essere visualizzato TTextfile _txt; - // @cmember Prima linea di testo che deve essere visualizzata + // @cmember:(INTERNAL) Prima linea di testo che deve essere visualizzata long _firstline; - // @cmember Ultima linea di testo che deve essere visualizzata + // @cmember:(INTERNAL) Ultima linea di testo che deve essere visualizzata long _lastline; - // @cmember Strina di testo da cercare + // @cmember:(INTERNAL) Stringa di testo da cercare TString _txt_to_find; - // @cmember Posizione dell'ultima ricerca + // @cmember:(INTERNAL) Posizione dell'ultima ricerca TPoint _last_found; - // @cmember Direzione della ricerca (TRUE verso il basso FALSE verso l'alto) + // @cmember:(INTERNAL) Direzione della ricerca (TRUE verso il basso FALSE verso l'alto) bool _down_dir; - // @cmember Indica se si deve fare una ricerca case sensitive + // @cmember:(INTERNAL) Indica se si deve fare una ricerca case sensitive bool _case_sensitive; - // @cmember Lunghezza della pagina + // @cmember:(INTERNAL) Lunghezza della pagina int _formlen; - // @cmember Posizione corrente del punto + // @cmember:(INTERNAL) Posizione corrente del punto TPoint _point; - // @cmember Posizione corrente dell'incrocio della crossbar + // @cmember:(INTERNAL) Posizione corrente dell'incrocio della crossbar PNT _cross; - // @cmember Inizio della selezione (colonna, line del FILE) + // @cmember:(INTERNAL) Inizio della selezione (colonna, line del FILE) TPoint _sel_start; - // @cmember Fine della selezione (colonna, line del FILE) + // @cmember:(INTERNAL) Fine della selezione (colonna, line del FILE) TPoint _sel_end; - // @cmember Array di link ammessi + // @cmember:(INTERNAL) Array di link ammessi TArray* _links; - // @cmember Array di hotspots + // @cmember:(INTERNAL) Array di hotspots TArray* _hotspots; - // @cmember Array di segnalibri + // @cmember:(INTERNAL) Array di segnalibri TArray* _bookmarks; - // @cmember Indica se occorre ridisegnare la selezione + // @cmember:(INTERNAL) Indica se occorre ridisegnare la selezione bool need_paint_sel(bool smart = TRUE); - // @cmember Array di icone del modulo scorrevole durante la stampa + // @cmember:(INTERNAL) Array di icone del modulo scorrevole durante la stampa TArray _modules; - // @cmember Array di immagini propriamente ridimensionate + // @cmember:(INTERNAL) Array di immagini propriamente ridimensionate TArray _images; - // @cmember Indica se e' attivato il link multiplo se si' vengono passati all'handler tutti i + // @cmember:(INTERNAL) Indica se e' attivato il link multiplo se si' vengono passati all'handler tutti i // link presenti sulla stessa riga anziche' solo il selezionato bool _multiple; - // @cmember Testo del link + // @cmember:(INTERNAL) Testo del link TString80 _linktxt; - // @cmember Identificatore del link + // @cmember:(INTERNAL) Identificatore del link int _linkID; - // @cmember Indica tutti i link della riga nel caso di link multiplo + // @cmember:(INTERNAL) Indica tutti i link della riga nel caso di link multiplo TToken_string _multiple_link; - // @cmember Array di colori di background + // @cmember:(INTERNAL) Array di colori di background TArray* _bg; - // @cmember Indica se la stampa e' stata interrotta + // @cmember:(INTERNAL) Indica se la stampa e' stata interrotta bool _frozen; - // @cmember Finestra in primo piano (se FALSE e un campo di una maschera) + // @cmember:(INTERNAL) Finestra in primo piano (se FALSE e un campo di una maschera) bool _toplevel; - // @cmember Indica se mostrare il righello + // @cmember:(INTERNAL) Indica se mostrare il righello bool _rulers; - // @cmember Indica se visualizzare i bottoni + // @cmember:(INTERNAL) Indica se visualizzare i bottoni bool _showbuts; - // @cmember Indica se si sta attivando un link + // @cmember:(INTERNAL) Indica se si sta attivando un link bool _inside_linkexec; - // òcmember Indica se e' presente il menu' specifico della calsse + // òcmember:(INTERNAL) Indica se e' presente il menu' specifico della calsse bool _menu_present; - // @cmember Viene istanziato soltanto se e' usata come controllo + // @cmember:(INTERNAL) Viene istanziato soltanto se e' usata come controllo TBrowsefile_field* _brwfld; // @access Protected Member protected: - // @cmember !!!???!!! + // @cmember Gestisce la pressione del tasto virtual bool on_key (KEY); - // @cmember !!!???!!! + // @cmember Apre la finestra di visualizzazione??? virtual void open(); // @cmember Converte i caratteri in x in pixel @@ -257,14 +257,14 @@ protected: // emette un suono e non effettuata lo scroll void scroll_error(long x, long y); - // @cmember !!!???!!! + // @cmember Aggiorna la finestra di stampa virtual void update(); - // @cmember !!!???!!! + // @cmember Gestisce l'handler della finestra (vedi virtual void handler(WINDOW win, EVENT* ep); - // @cmember !!!???!!! + // @cmember Controlla se e' stato selezionato la voce

(parametro

???) void check_menu_item(MENU_TAG item, bool on = TRUE); - // @cmember !!!???!!! + // @cmember Abilita/Disabilita una voce di menu' void enable_menu_item(MENU_TAG item, bool on = TRUE); // @access Public Member @@ -331,6 +331,8 @@ public: #endif +// @doc INTERNAL + // @enum scroll | Direzioni da utilizzare nello scroll // // @emem none | Nessuno scroll diff --git a/include/window.cpp b/include/window.cpp index dcb039ebc..77bb2d1ad 100755 --- a/include/window.cpp +++ b/include/window.cpp @@ -81,23 +81,24 @@ class TWindow_manager { // @author:(INTERNAL) Guido - // @access Private Member + // @access:(INTERNAL) Private Member - // @ccost MAX_WIN | 8 | Numero massimo di finestre modali + // @ccost:(INTERNAL) MAX_WIN | 8 | Numero massimo di finestre modali enum { MAX_WIN = 8 }; - // @cmember Stack contenente la finestra attiva + // @cmember:(INTERNAL) Stack contenente la finestra attiva TWindow* _window[MAX_WIN]; - // @cmember Stack pointer + // @cmember:(INTERNAL) Stack pointer char _current; - // @cmember Permette di abilitare/disabilitare il menu' della task window (stesso + // @cmember:(INTERNAL) Permette di abilitare/disabilitare il menu' della task window (stesso // funzionamento della ) void menu_enable(bool) const; - // @cmember Tiene sempre disponibile un file con un numero di handle inferiore a 20 + // @cmember:(INTERNAL) Tiene sempre disponibile un file con un numero di handle inferiore a 20 // (per sopperire ad una mancanza di XVT) FILE* _lowhandle; - + +// @access Public Member public: // @cmember Costruttore TWindow_manager(); @@ -124,7 +125,6 @@ public: bool can_close() const; } WinManager; -// @doc EXTERNAL TWindow_manager::TWindow_manager() : _current(-1), _lowhandle(NULL) @@ -258,12 +258,15 @@ void TWindow_manager::unreg(const TWindow* m) } } + // @func Chiude tutte le finestre aperte void close_all_dialogs() { WinManager.destroy(); } +// @doc EXTERNAL + // @func Indica se l'applicazione puo' essere terminata // // @rdesc Ritorna il risultato della ricerca: @@ -292,6 +295,8 @@ WINDOW cur_win() // Certified 99% +// @doc EXTERNAL + // @mfunc Setta l'immagine e le sue dimensioni // // @rdesc Ritorna l'immagine stessa @@ -313,6 +318,8 @@ XVT_IMAGE TImage::set( } // Certified 100% +// @doc EXTERNAL + // @mfunc Legge l'immagine dal file XVT_IMAGE TImage::load( const char* n) // @parm Nome del file contenente l'immagine @@ -371,6 +378,8 @@ TImage::~TImage() } // Certified 100% +// @doc EXTERNAL + // @mfunc Permette di settare la posizione della figura void TImage::set_pos( int x, // @parm Coordinata x dell'immagine da settare @@ -390,6 +399,8 @@ void TImage::draw(WINDOW w) const } // Certified 100% +// @doc EXTERNAL + // @mfunc Permette di gestire il disegno dell'immagine sullo schermo void TImage::draw( WINDOW w, // @parm Immagine da disegnare @@ -425,6 +436,8 @@ void TImage::draw(WINDOW w, const RCT& dst, const RCT& src) const } // Certified 99% +// @doc EXTERNAL + // @mfunc Fa corrispondere la palette della finestra a quella dell'immagine void TImage::set_palette( WINDOW w) const // @parm Finestra a cui settare la palette @@ -443,6 +456,8 @@ void TImage::set_clut(byte n, COLOR c) } // Certified 99% +// @doc EXTERNAL + // @mfunc Setta i colori dell'immagine in modo da renderlo trasparente void TImage::convert_to_default_colors() @@ -494,6 +509,8 @@ long XVT_CALLCONV1 TWindow::window_handler(WINDOW win, EVENT* ep) } +// @doc EXTERNAL + // @mfunc Crea la finestra // // @rdesc Ritorna l'handle della finestra creata @@ -587,6 +604,8 @@ bool TWindow::can_be_closed() const return ok; } +// @doc EXTERNAL + // @mfunc Esegue la finestra // // @rdesc Ritorna l'ultimo tasto premuto nella finestra @@ -610,6 +629,8 @@ KEY TWindow::run() return last_key(); } +// @doc EXTERNAL + // @mfunc Gestisce l'handler della finestra void TWindow::handler( WINDOW win, // @parm Finestra da gestire @@ -683,6 +704,8 @@ void TWindow::maximize() const #endif } +// @doc EXTERNAL + // @mfunc Attiva/disattiva la finestra void TWindow::activate( bool on) // @parm Indica l'operazione da svolgere sulla finestra: @@ -744,6 +767,7 @@ void TWindow::set_color(COLOR fore, COLOR back) xvt_dwin_set_back_color(win(), back); } +// @doc EXTERNAL // @mfunc Sceglie la penna da utilizzare nella finestra void TWindow::set_pen( @@ -790,6 +814,7 @@ HIDDEN void swap(short& a, short& b) b = tmp; } +// @doc EXTERNAL // @mfunc Disegna un rettangolo con la possibilita' di settare la penna e il draw_mode void TWindow::frame( @@ -852,6 +877,8 @@ void TWindow::invert_bar(short left, short top, short right, short bottom) frame(left, top, right, bottom, 5); } +// @doc EXTERNAL + // @mfunc Setta opaque_text void TWindow::set_opaque_text( bool o) // @parm Indica la modalita' di scrittura dell'opaque_text @@ -863,6 +890,7 @@ void TWindow::set_opaque_text( xvt_dwin_set_draw_ctools(win(), &ct); } +// @doc EXTERNAL // @mfunc Sceglie il font da utilizzare nella finestra void TWindow::set_font( @@ -906,6 +934,8 @@ void TWindow::stringat(short x, short y, const char* str) xvt_dwin_draw_text(win(), pnt.h, pnt.v, (char *)str, -1); } +// @doc EXTERNAL + // @mfunc Scrive il testo formattato nella finestra all posizione indicata void TWindow::printat( short x, // @parm Coordinata x della finestra in cui scrivere il testo @@ -954,6 +984,8 @@ void TWindow::clear(COLOR color) void TWindow::set_mode(DRAW_MODE mode) { xvt_dwin_set_draw_mode(win(), mode); } +// @doc EXTERNAL + // @mfunc Aggiunge voci di menu' durante l'esecuzione di una finestra // // @rdesc Ritorna se e' riuscito ad aggiungere la voce al menu': @@ -1079,6 +1111,8 @@ void TScroll_window::set_scroll_max(long maxx, long maxy) } } +// @doc EXTERNAL + // @mfunc Aggiorna la scrollbar void TScroll_window::update_thumb( long x, // @parm Indica la posizione in x in cui spostare la finestra (default -1) diff --git a/include/window.h b/include/window.h index 08f8556ac..058f1c3b1 100755 --- a/include/window.h +++ b/include/window.h @@ -11,13 +11,16 @@ class TString_array; -// @doc EXTERNAL void close_all_dialogs(); bool can_close(); WINDOW cur_win(); -//@class TPoint | Struttura per la definizione di un punto sullo schermo +// @doc EXTERNAL + +// @class TPoint | Struttura per la definizione di un punto sullo schermo +// +// @author:(INTERNAL) Guido struct TPoint { // @cmember Coordinata x del punto @@ -55,18 +58,22 @@ struct TPoint // TImage /////////////////////////////////////////////////////////// +// @doc EXTERNAL + // @class TImage | Classe per la gestione delle imagini a video // // @base public | TObject class TImage : public TObject + +// @author:(INTERNAL) Guido { // @access Private Member - // @cmember Immagine de gestire + // @cmember:(INTERNAL) Immagine de gestire XVT_IMAGE _image; - // @cmember Rettangolo originale (origine 0,0 e dimensioni originali) dell'immagine + // @cmember:(INTERNAL) Rettangolo originale (origine 0,0 e dimensioni originali) dell'immagine RCT _src; - // @cmember Rettangolo di visualizzazione dell'immagine (dove mettere l'immagine) + // @cmember:(INTERNAL) Rettangolo di visualizzazione dell'immagine (dove mettere l'immagine) RCT _dst; // @access Public Member @@ -123,6 +130,8 @@ public: virtual ~TImage(); }; +// @doc EXTERNAL + // @class TWindow | Classe per la definizione di una finestra generica class TWindow { @@ -131,22 +140,22 @@ class TWindow // @cfriend TWindow_manager friend class TWindow_manager; - // @access PRovate Member + // @access:(INTERNAL) Private Member - // @cmember Set di drawing tools (definito in xvttype.h) + // @cmember:(INTERNAL) Set di drawing tools (definito in xvttype.h) static DRAW_CTOOLS _ct; - // @cmember Indica se e' stato salvato il set di drawing tools + // @cmember:(INTERNAL) Indica se e' stato salvato il set di drawing tools static bool _ctools_saved; - // @cmember Descrittore finestra + // @cmember:(INTERNAL) Descrittore finestra WINDOW _win; - // @cmember Codice del tasto di uscita + // @cmember:(INTERNAL) Codice del tasto di uscita KEY _lastkey; - // @cmember Compila la struttura

con i valori correnti + // @cmember:(INTERNAL) Compila la struttura

con i valori correnti // (TRUE se la compilazione ha luogo) bool save_ctools(); - // @cmember Ripristina i valori dalla struttura

(TRUE se i valori + // @cmember:(INTERNAL) Ripristina i valori dalla struttura

(TRUE se i valori // vengono recuperati) bool restore_ctools(); @@ -320,6 +329,8 @@ public: bool remove_menu(MENU_TAG id); }; +// @doc INTERNAL + // @class TTemp_window | Classe per la definizione di finestre temporanee // // @base public | TWindow @@ -336,6 +347,8 @@ public: }; +// @doc EXTERNAL + // @class TScroll_window | Classe per la definizione di finestre con scrollbar // // @base public | TWindow @@ -343,20 +356,20 @@ class TScroll_window : public TWindow { // @author:(INTERNAL) Guido - // @access Private Member + // @access:(INTERNAL) Private Member - // @cmember Posizione attuale della scrollbar + // @cmember:(INTERNAL) Posizione attuale della scrollbar TPoint _origin; - // @cmember Massima lunghezza della scrollbar + // @cmember:(INTERNAL) Massima lunghezza della scrollbar TPoint _max; - // @cmember Utilizzato per finestre molto grosse, per poter gestire l-intera finestra + // @cmember:(INTERNAL) Utilizzato per finestre molto grosse, per poter gestire l-intera finestra short _shift; - // @cmember Indica se sommare (TRUE) o no alle coordinate attuali le coordinate passate + // @cmember:(INTERNAL) Indica se sommare (TRUE) o no alle coordinate attuali le coordinate passate bool _autoscroll : 1; - // @cmember Indica che la finestra ha la barra di scorrimento orizzontale + // @cmember:(INTERNAL) Indica che la finestra ha la barra di scorrimento orizzontale bool _has_hscroll : 1; - // @cmember Indica che la finestra ha la barra di scorrimento verticale + // @cmember:(INTERNAL) Indica che la finestra ha la barra di scorrimento verticale bool _has_vscroll : 1; // @access Protected Member diff --git a/include/xvtility.cpp b/include/xvtility.cpp index b20862ec9..0233a15cc 100755 --- a/include/xvtility.cpp +++ b/include/xvtility.cpp @@ -10,8 +10,6 @@ extern "C" { long nap(long period); } #endif -// @doc EXTERNAL - // ERROR HOOK che intercetta errori XVT // put breakpoint here @@ -298,6 +296,8 @@ static void createwindow_hook(DWORD* exstyle, LPCSTR* classname, LPCSTR* windown #endif +// @doc INTERNAL + // @func Calcola dimensioni e posizione di un controllo contenuto nella finestra // // @rdesc Ritorna il rettangolo @@ -414,6 +414,8 @@ RCT& resize_rect( return r; } +// @doc EXTERNAL + // @func Emette un suono di default void beep() { xvt_scr_beep(); } @@ -468,6 +470,8 @@ void TEvent_manager::pop() } } +// @doc EXTERNAL + // @func Processa tutti gli eventi rimasti in coda void do_events() { @@ -478,6 +482,8 @@ void do_events() #endif } +// @doc EXTERNAL + // @func Permette di convertire un evento carattere in un codice carattere premuto // // @rdesc Ritorna il codice del carattere corrispondente all'evento @@ -498,6 +504,8 @@ KEY e_char_to_key( return key; } +// @doc EXTERNAL + // @func Simula la scelta di una voce di menu void dispatch_e_menu( WINDOW win, // @parm Finestra che contiene il menu @@ -513,6 +521,8 @@ void dispatch_e_menu( EM.push(win, e); } +// @doc EXTERNAL + // @func Simula la scelta di una combinazione di caratteri void dispatch_e_char( WINDOW win, // @parm Finestra che contiene il menu @@ -535,6 +545,8 @@ void dispatch_e_char( EM.push(win, e); } +// @doc EXTERNAL + // @func Simula uno scroll all'interno di una finestra void dispatch_e_scroll( WINDOW win, // @parm Finestra nella quale operare @@ -600,6 +612,8 @@ void dispatch_e_scroll( if (w != SC_NONE) xvt_win_dispatch_event(win, &e); } +// @doc INTERNAL + // @func Permette di cambiare i colori attivi del programma void customize_colors() @@ -607,6 +621,7 @@ void customize_colors() // ne setta le variabili in modo da poter personalizzare i colori // // @xref + { TConfig colors(CONFIG_USER, "Colors"); @@ -622,6 +637,8 @@ void customize_colors() TOOL_BACK_COLOR = colors.get_color("ToolBack", NULL, -1, MASK_DARK_COLOR); } +// @doc INTERNAL + // @func Stabilisce i parametri standard dei controlli void customize_controls( bool on) // @parm Permette di inizializzare (TRUE) o scaricare (FALSE) i parametri @@ -751,6 +768,8 @@ XVT_FNTID xvt_default_font() return DEF_FONT; } +// @doc INTERNAL + // @func Permette di settare il font attivo nella finestra void xvt_set_font( WINDOW win, // @parm Finestra nella quale settare il font @@ -783,6 +802,8 @@ void xvt_set_font( #endif } +// @doc INTERNAL + // @func Permette di creare una finestra // // @rdesc Ritorna l'identificatore della finestra creata @@ -828,6 +849,8 @@ WINDOW xvt_create_window( return win; } +// @doc INTERNAL + // @func Permette di creare i controlli all'interno di una finestra // // @rdesc Ritorna la finestra del controllo @@ -925,6 +948,8 @@ WINDOW xvt_create_control( return win; } +// @doc INTERNAL + // @func Restituisce il titolo della finestra // // @rdesc Stringa contenente il titolo della finestra @@ -942,6 +967,8 @@ const char* xvt_get_title( #endif } +// @doc INTERNAL + // @func Permette di assegnare il titolo ad una finestra void xvt_set_title( WINDOW win, // @parm Finestra a cui assegnare il titolo @@ -957,6 +984,8 @@ void xvt_set_title( #endif } +// @doc INTERNAL + // @func Permette di abilitare il focus su un controllo void xvt_set_front_control( WINDOW win) // @parm Finestra nella quale abilitare il focus @@ -968,6 +997,8 @@ void xvt_set_front_control( xvt_scr_set_focus_vobj(win); } +// @doc INTERNAL + // @func Permette di togliere il focus da un controllo void xvt_kill_focus( WINDOW win) // @parm Finestra nella quale togliere il focus @@ -978,6 +1009,8 @@ void xvt_kill_focus( #endif } +// @doc INTERNAL + // @func Permette di abilitare o disabilitare un controllo void xvt_enable_control( WINDOW win, // @parm Finestra all'interno della quale abilitare il controllo @@ -991,6 +1024,8 @@ void xvt_enable_control( #endif } +// @doc INTERNAL + // @func Permette di gestire un check box all'interno di una finestra void xvt_check_box( WINDOW win, // @parm Finestra all'interno della quale abilitare il check box @@ -1004,6 +1039,8 @@ void xvt_check_box( #endif } +// @doc INTERNAL + // @func Permette di controllare se un controllo e' stato selezionato // // @rdesc Ritorna i seguenti valori: @@ -1021,6 +1058,8 @@ bool xvt_get_checked_state( #endif } +// @doc INTERNAL + // @func Permette di gestire un radio button all'interno di una finestra void xvt_check_radio_button( WINDOW win, // @parm Finestra all'interno della quale abilitare il radio button @@ -1035,6 +1074,8 @@ void xvt_check_radio_button( #endif } +// @doc INTERNAL + // @func Permette di controllare lo stato di un radiobutton // // @rdesc Ritorna il numero dell'elemento del radiobutton selezionato @@ -1054,6 +1095,8 @@ int xvt_get_checked_radio( } +// @doc INTERNAL + // @func Permette di cambiare il colore di sfondo di un controllo void xvt_set_ctrl_back_color( WINDOW win, // @parm Finestra di cui si vuole cambiare lo sfondo @@ -1073,6 +1116,8 @@ void xvt_set_ctrl_back_color( HIDDEN WINDOW _statbar = NULL_WIN; +// @doc INTERNAL + // @func Permette di creare la barra di stato del programma // // @rdesc Ritorna l'identificatore della barra di stato creata @@ -1104,6 +1149,8 @@ WINDOW xvt_create_statbar() return _statbar; } +// @doc INTERNAL + // @func Permette di settare una finestra con la barra di stato void xvt_statbar_set( const char* text, // @parm Testo da inserire nella barra di stato @@ -1123,6 +1170,8 @@ void xvt_statbar_set( #endif } +// @doc INTERNAL + // @func Permette di cambiare il titolo alla barra di stato presente void xvt_statbar_refresh() @@ -1152,6 +1201,8 @@ HIDDEN bool test_menu_tag(MENU_ITEM* mi, MENU_TAG tag) return FALSE; } +// @doc INTERNAL + // @func Controlla se e' esiste una voce del menu' // // @rdesc Ritorna i seguenti valori @@ -1168,6 +1219,7 @@ bool xvt_test_menu_tag( return ok; } +// @doc INTERNAL // @func Permette di convertire in attributi grafici i codici caratteri usati // dalle funzioni di stampa @@ -1209,6 +1261,8 @@ COLOR trans_color( return col; } +// @doc INTERNAL + // @func Permette di converitire lo stile del pattern in attributi grafici da // codici carattere. // @@ -1242,6 +1296,8 @@ PAT_STYLE trans_brush( return PAT_NONE; } +// @doc INTERNAL + // @func Permette di convertire lo stile della penna da codice carattere // // @rdesc Ritorna lo stilo convertito