Patch level :

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
applicat.*      Aggiunto metodo open_files
codeb.c         Aggiunta DB_flush
confapp.h       Aggiunto virtual in load/save_mask
config.cpp      Aggiunto parametro ios::nocreate


git-svn-id: svn://10.65.10.50/trunk@7198 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1998-10-01 13:48:06 +00:00
parent 50c937ded7
commit 91f50e6968
5 changed files with 42 additions and 7 deletions

View File

@ -416,7 +416,10 @@ void TApplication::terminate()
do_events();
if (use_files())
{
_used_files.destroy();
free_global_vars(); // Distruzione variabili globali
}
printer_destroy();
@ -870,6 +873,18 @@ void TApplication::on_firm_change()
void TApplication::on_config_change()
{}
void TApplication::open_files(int logicnum, ...)
{
va_list marker;
va_start(marker, logicnum);
while (logicnum > 0)
{
CHECKD(_used_files.objptr(logicnum) == NULL, "File gia' aperto: ", logicnum);
_used_files.add(new TLocalisamfile(logicnum), logicnum);
logicnum = va_arg(marker, int);
}
}
///////////////////////////////////////////////////////////
// The Skeleton application!
///////////////////////////////////////////////////////////

View File

@ -46,6 +46,8 @@ class TApplication
TString _title;
// @cmember:(INTERNAL) Nome del modulo principale applicazione
TString _module_name;
// @cmember:(INTERNAL) Elenco dei files
TArray _used_files;
// @cmember:(INTERNAL) Codice della ditta
long _savefirm;
@ -180,6 +182,8 @@ public:
bool add_menu(TString_array& menu, MENU_TAG id = 0);
// @cmember Elimina il menu' <p id> (Ritorna se ce l'ha fatta???)
bool remove_menu(MENU_TAG id);
// Aggiunge uno o piu' file a quelli aperti
void open_files(int logicnum, ...);
// @cmember Costruttore
TApplication();

View File

@ -399,6 +399,22 @@ int DB_recall(int handle)
return(0);
}
/*-------------------------------------------------------------------------
--------------------------------------------------------------------------*/
int DB_flush(int handle)
{
int rt;
while ((rt = d4flush(dbdata[handle])) == r4locked)
#ifdef DBG
yesnofatal_box("Sono in attesa nella DB_flush");
#else
u4delay_sec();
#endif
return rt;
}
/*-------------------------------------------------------------------------
riscrive il record attuale
--------------------------------------------------------------------------*/
@ -1628,7 +1644,7 @@ int DB_delkey(int handle, char* key, long recno)
{
while ((rt=i4lock(i)) == r4locked)
#ifdef DBG
yesnofatal_box("Sono in attesa nella DB_delkeys");
yesnofatal_box("Sono in attesa nella DB_delkey");
#else
u4delay_sec();
#endif

View File

@ -63,11 +63,6 @@ class TConfig_application : public TApplication
// @cmember:(INTERNAL) Controlla il menu' (vedi <c TApplication>)
virtual bool menu(MENU_TAG);
// @cmember:(INTERNAL) Carica i parametri su maschera
void load_mask();
// @cmember:(INTERNAL) Salva i parametri dalla maschera
void save_mask(bool tosave) ;
// @cmember:(INTERNAL) Carica il config
void load_config();
@ -76,6 +71,11 @@ class TConfig_application : public TApplication
// @access Protected Member
protected:
// @cmember:(INTERNAL) Carica i parametri su maschera
virtual void load_mask();
// @cmember:(INTERNAL) Salva i parametri dalla maschera
virtual void save_mask(bool tosave) ;
virtual bool user_create() ;
virtual bool user_destroy() ;

View File

@ -100,7 +100,7 @@ void TConfig::_write_file()
if (_write_protected)
return;
ifstream in(_file, ios::in, filebuf::sh_read);
ifstream in(_file, ios::in | ios::nocreate, filebuf::sh_read);
TFilename temp;
temp.temp("cnf");