1995-12-04 17:41:06 +00:00
# ifndef __VE0100_H
# define __VE0100_H
1995-08-07 07:59:09 +00:00
1996-08-08 15:57:44 +00:00
# define CHANGE_MESSAGE "Sono state effettuate modifiche alla configurazione.\nPrima di eseguire la gestione documenti occorre rigenerare le maschere.\nDesideri farlo ora ?"
1995-12-04 17:41:06 +00:00
# ifndef __RELAPP_H
# include <relapp.h>
# endif
1997-06-03 15:56:27 +00:00
# ifndef __VELIB_H
# include "velib.h"
1996-08-08 15:57:44 +00:00
# endif
1998-05-04 09:54:49 +00:00
1995-12-04 17:41:06 +00:00
// Definizione della classe dell'applicazione motore
class TMotore_application : public TRelation_application
1996-09-26 15:37:19 +00:00
{
1996-08-12 08:32:28 +00:00
TArray _file ; // Tutti i fiels da usare
1996-09-26 15:37:19 +00:00
1995-12-04 17:41:06 +00:00
// Puntatore al profilo del documento caricato
1998-08-25 18:07:30 +00:00
TConfig * _config_ditta ;
1996-08-12 08:32:28 +00:00
1995-12-04 17:41:06 +00:00
// Puntatore alla maschera di ricerca
1997-06-12 16:26:22 +00:00
TMask * _msk ;
1998-08-25 18:07:30 +00:00
TDocumento_mask * _docmsk ;
1995-12-04 17:41:06 +00:00
// puntatore alla relazione
1996-08-12 08:32:28 +00:00
TRelation * _rel ;
1996-09-26 15:37:19 +00:00
1996-11-18 16:12:12 +00:00
TString16 _codnum ;
TString16 _tipodoc ;
2003-11-10 15:18:25 +00:00
TString80 __last_key ;
1997-09-02 09:55:40 +00:00
1996-05-03 17:11:39 +00:00
// Array di maschere documento
1996-09-26 15:37:19 +00:00
TAssoc_array _doc_masks ;
2002-07-02 16:21:23 +00:00
TSelect_color_mask * _sel_color ;
int _link_pos ;
2004-11-30 22:02:59 +00:00
bool _print_directly ;
1996-05-03 17:11:39 +00:00
1996-09-26 15:37:19 +00:00
// Ridefinizione dei metodi virtuali
1995-12-04 17:41:06 +00:00
virtual bool user_create ( ) ;
1996-09-26 15:37:19 +00:00
virtual bool user_destroy ( ) ;
2002-07-02 16:21:23 +00:00
virtual bool menu ( MENU_TAG mt ) ;
1995-12-04 17:41:06 +00:00
virtual TMask * get_mask ( int mode ) ;
virtual bool changing_mask ( int mode ) ;
1996-05-03 17:11:39 +00:00
virtual void init_query_mode ( TMask & m ) ;
1995-12-04 17:41:06 +00:00
virtual void init_insert_mode ( TMask & m ) ;
1997-02-03 15:28:53 +00:00
virtual void init_modify_mode ( TMask & m ) ;
1995-12-04 17:41:06 +00:00
virtual int read ( TMask & m ) ;
virtual int write ( const TMask & m ) ;
virtual int rewrite ( const TMask & m ) ;
1998-08-25 18:07:30 +00:00
virtual void print ( ) ;
2003-05-22 15:20:01 +00:00
virtual bool has_filtered_cursor ( ) const { return TRUE ; }
2004-11-30 22:02:59 +00:00
virtual bool save_and_new ( ) const ;
1995-12-04 17:41:06 +00:00
// Funzioni da associare ad ogni procedura
int user_function ( int index ) ;
1996-09-26 15:37:19 +00:00
1995-12-04 17:41:06 +00:00
void user_set_handler ( int fieldid , int index , TMask * m = NULL ) ;
1996-09-26 15:37:19 +00:00
2005-09-19 12:45:16 +00:00
virtual const char * extra_modules ( ) const { return " dt " ; }
1995-12-04 17:41:06 +00:00
protected :
1996-09-26 15:37:19 +00:00
1996-08-12 08:32:28 +00:00
virtual void on_firm_change ( ) ;
1996-09-26 15:37:19 +00:00
// Procedure e funzioni per la gestione degli stati
1995-12-04 17:41:06 +00:00
int stato_corrente ( ) ;
1996-09-26 15:37:19 +00:00
1995-12-04 17:41:06 +00:00
// Handler per la maschera di ricerca
static bool ndoc_handler ( TMask_field & f , KEY key ) ;
1996-09-26 15:37:19 +00:00
1998-04-30 14:04:19 +00:00
// caricamento Inifile
1999-06-18 15:35:05 +00:00
virtual void sheet2ini ( TSheet_field & s , TConfig & ini ) ;
virtual void ini2mask ( TConfig & ini , TMask & m , bool query ) ;
1995-12-04 17:41:06 +00:00
public :
1996-09-26 15:37:19 +00:00
virtual TRelation * get_relation ( ) const { return _rel ; }
1995-12-04 17:41:06 +00:00
// Funzioni di accesso alle variabili private
1996-09-26 15:37:19 +00:00
1996-08-12 08:32:28 +00:00
TMask & query_mask ( ) { CHECK ( _msk , " Maschera di ricerca nulla! " ) ; return * _msk ; }
1998-08-25 18:07:30 +00:00
TDocumento_mask & edit_mask ( ) { CHECK ( _docmsk , " Maschera di edit nulla! " ) ; return * _docmsk ; }
1996-08-12 08:32:28 +00:00
TRelation & rel ( ) { CHECK ( _rel , " Relazione nulla! " ) ; return * _rel ; }
1998-08-25 18:07:30 +00:00
TSheet_field & sheet ( ) { return edit_mask ( ) . sheet ( ) ; }
1996-08-13 09:42:35 +00:00
TConfig & config_ditta ( ) { return * _config_ditta ; }
1998-08-25 18:07:30 +00:00
TDocumento & doc ( ) { return edit_mask ( ) . doc ( ) ; }
1996-09-26 15:37:19 +00:00
1995-12-04 17:41:06 +00:00
// Operazione
2004-11-30 22:02:59 +00:00
TMotore_application ( ) : _print_directly ( false ) { }
1998-08-25 18:07:30 +00:00
virtual ~ TMotore_application ( ) { }
virtual const char * get_next_key ( ) ;
1995-12-04 17:41:06 +00:00
} ;
1998-01-09 09:57:01 +00:00
inline TMotore_application & app ( ) { return ( TMotore_application & ) main_app ( ) ; }
1996-09-26 15:37:19 +00:00
1995-12-04 17:41:06 +00:00
# endif