campo-sirio/include/varmask.h
guy 956304d26c Patch level :
Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
array.cpp    Migliorata gestione [] quando non c'e' l'oggetto desiderato
classes.h    Aggiunta CLASS_CURRENCY_FIELD
config.*     Aggiunto metodo for_each_paragraph
controls.cpp BOOLEAN trasformati in bool
currency.*   Reimplementati completamente i TCurrency
date.*       Migliorati operatori aritmetici sulle date
default.url  Modificati identificatori per gestire popup degli sheet
isam.*       Aggiunta gestione flag di modifica e ridotto uso __isam_string
mask.*       Reso pubblico il costruttore vuoto e read_mask
             Aggiunta gestione TCurrency_field
maskfld.*    Aggiornati TCurrency_field
msksheet.cpp Usata read_mask per leggere la maschera degli sheet
multirec.cpp Eliminato memory_leak causato da _fiels.remove
prefix.cpp   Riga vuota
progind.cpp  Corretto aggiornamento in assenza di barra
rdoc.h       Aggiunti campi IMPIANTO e LINEA
real.cpp     Allungata stringa fissa di lavoro da 24 a 64
relapp.cpp   Migliorata gestione /I
relation.cpp Corretta gestione indici dei cursori
strings.cpp  Corretto << dei TObject
tabutil.*    Eliminato uso TRecfield erratissimo
varmask.*    Aggiunto costruttore vuoto
viswin.cpp   Ridotta frequenza di update dell'icona in basso a sinistra
window.cpp   Corretto disegno in modo _pixmap
xvtility.cpp Allungata stringa per status_bar


git-svn-id: svn://10.65.10.50/trunk@7391 c028cbd2-c16b-5b4b-a496-9718f37d4682
1998-11-03 10:27:35 +00:00

82 lines
2.6 KiB
C++
Executable File

#ifndef __VARMASK_H
#define __VARMASK_H
#include <msksheet.h>
// @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);
// @doc EXTERNAL
// @class TVariable_mask | Maschere con spreadsheet a righe variabili e con campi virtuali
//
// @base public | TMask
class TVariable_mask : public TMask
{
// @author:(INTERNAL) Matteo
protected:
// @cmember Controlla se il campo <p fld_id> esiste
bool present(short fld_id) const { return id2pos(fld_id) >= 0; }
TVariable_mask() : TMask () { }
public:
// @cmember Esegue il check e i messaggi sul campo <p fld_id> della maschera
virtual void check_field( short fld_id );
// @cmember Setta il campo con una stringa
virtual void set(short fld_id, const char* str, bool hit=FALSE);
// @cmember Ritorna il contenuto del campo <p fld_id> sotto forma di stringa
virtual const TString& get(short fld_id) const;
// @cmember Definisce l'handler del campo <p fld_id>
virtual void set_handler(short fld_id, CONTROL_HANDLER handler);
// @cmember Permette di mostrare/nascondere un campo
virtual void show(short fld_id = -1, bool on = TRUE);
// @cmember Abilita/disabilita un campo
virtual void enable(short fld_id, bool on = TRUE);
// @cmember Legge il campo da file
virtual TMask_field* parse_field(TScanner& scanner);
// @cmember Costruttore (crea la maschera leggendo la descrizione dal file .msk)
TVariable_mask( const char* name, int num = 0, int max = MAX_PAGES);
// @cmember Distruttore
virtual ~TVariable_mask() {}
};
// @doc EXTERNAL
// @class TVariable_sheet_field | Classe per la gestione dei campi di uno spreadsheet con righe variabili
//
// @base public | TSheet_field
class TVariable_sheet_field : public TSheet_field
{
// @author:(INTERNAL) Alex + Guido
// @cmember:(INTERNAL) Funzione per l'apertura della maschera di edit della riga
// (vedi <t SPREADSHEET_GETMASK>)
SPREADSHEET_GETMASK _getmask;
protected:
public:
// @cmember Setta il membro <p _set_getmask> con il valore <p n>
void set_getmask(SPREADSHEET_GETMASK n)
{ _getmask = n; }
// @cmember Funzione eseguita dopo ogni insert
virtual void post_insert(int r);
// @cmember Ritorna la maschera corrispondente ad una riga dello spreadsheet
virtual TMask& sheet_mask() const;
// @cmember Costruttore
TVariable_sheet_field(TMask* m) : TSheet_field(m)
{}
// @cmember Distruttore
virtual ~TVariable_sheet_field();
};
#endif