Implementato il cambio del formato globale dei numeri solo per il body

ed il footer. Cambiata l'inizializzazione dei contenuti delle
maschere di selezione profilo e copia.


git-svn-id: svn://10.65.10.50/trunk@2489 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
angelo 1996-01-23 12:04:36 +00:00
parent 1a3147d03f
commit fdd5507908

View File

@ -32,6 +32,7 @@ protected:
virtual bool post_edit_checks(TMask& m, TPrint_section* sec); virtual bool post_edit_checks(TMask& m, TPrint_section* sec);
public: public:
virtual const char* section_mask() { return "sc3100s" ;} virtual const char* section_mask() { return "sc3100s" ;}
virtual void change_number_format(int w, int dec, const char* p);
TForm_EC (): TForm() {}; TForm_EC (): TForm() {};
TForm_EC (const char* form, const char * code = "", int editlevel = 0, const char* desc = "") TForm_EC (const char* form, const char * code = "", int editlevel = 0, const char* desc = "")
: TForm(form,code,editlevel,desc) {}; : TForm(form,code,editlevel,desc) {};
@ -75,6 +76,18 @@ bool TForm_EC::post_edit_checks(TMask& m, TPrint_section* sec)
return TRUE; return TRUE;
} }
void TForm_EC::change_number_format(int w, int dec, const char* p)
{
char secs[] = { "FB" };
char ptyp[] = { "LOEF" };
TPrint_section* ps;
for (int sc = 0; sc < 4; sc++)
for (int pt = 0; pt < 4; pt++)
if ((ps = exist(secs[sc], char2page(ptyp[pt]), FALSE)) != NULL)
ps_change_number_format(*ps, w, dec, p);
}
class TForm_EC_editor : public TForm_editor class TForm_EC_editor : public TForm_editor
{ {
s_data _prm; s_data _prm;
@ -128,8 +141,6 @@ BOOLEAN XVT_CALLCONV1 wprms (long data)
bool TForm_EC_editor::ccodes_handler(TMask_field& f, KEY k) bool TForm_EC_editor::ccodes_handler(TMask_field& f, KEY k)
{ {
TMask& m = f.mask(); TMask& m = f.mask();
if (f.dirty() && m.get(F_CBASE).empty())
m.set(F_CBASE,BASE_EC_PROFILE);
if (k==K_TAB) if (k==K_TAB)
{ {
TString base(m.get(F_CBASE)); TString base(m.get(F_CBASE));
@ -149,9 +160,9 @@ bool TForm_EC_editor::ccodes_handler(TMask_field& f, KEY k)
bool TForm_EC_editor::clngs_handler(TMask_field& f, KEY key) bool TForm_EC_editor::clngs_handler(TMask_field& f, KEY key)
{ {
TMask& m = f.mask();
if (key==K_TAB) if (key==K_TAB)
{ {
TMask& m = f.mask();
TString base(m.get(F_CBASE)); TString base(m.get(F_CBASE));
TString code(m.get(F_CCODES)); TString code(m.get(F_CCODES));
code << f.get(); code << f.get();
@ -175,6 +186,7 @@ bool TForm_EC_editor::cpy_handler(TMask_field& f, KEY k)
TMask mm("sc3100b"); TMask mm("sc3100b");
mm.set_handler(F_CCODES,ccodes_handler); mm.set_handler(F_CCODES,ccodes_handler);
mm.set_handler(F_CCODELS,clngs_handler); mm.set_handler(F_CCODELS,clngs_handler);
mm.set(F_CBASE,BASE_EC_PROFILE);
while (mm.run() == K_ENTER) // Prende in input il nome del profilo sorgente while (mm.run() == K_ENTER) // Prende in input il nome del profilo sorgente
{ {
long scode = mm.get_long(F_CCODES); long scode = mm.get_long(F_CCODES);
@ -238,9 +250,7 @@ bool TForm_EC_editor::cpy_handler(TMask_field& f, KEY k)
bool TForm_EC_editor::code_handler(TMask_field& f, KEY key) bool TForm_EC_editor::code_handler(TMask_field& f, KEY key)
{ {
TMask& m = f.mask(); TMask& m = f.mask();
if (f.dirty() && m.get(F_BASE).empty()) if (key==K_TAB && f.get().not_empty())
m.set(F_BASE,BASE_EC_PROFILE);
if (key==K_TAB)
{ {
TString base(m.get(F_BASE)); TString base(m.get(F_BASE));
TString code(f.get()); TString code(f.get());
@ -259,9 +269,9 @@ bool TForm_EC_editor::code_handler(TMask_field& f, KEY key)
bool TForm_EC_editor::lng_handler(TMask_field& f, KEY key) bool TForm_EC_editor::lng_handler(TMask_field& f, KEY key)
{ {
if (key==K_TAB) TMask& m = f.mask();
if (key==K_TAB && m.get(F_CODE).not_empty())
{ {
TMask& m = f.mask();
TString base(m.get(F_BASE)); TString base(m.get(F_BASE));
TString code(m.get(F_CODE)); TString code(m.get(F_CODE));
code << f.get(); code << f.get();
@ -787,6 +797,8 @@ bool TForm_EC_editor::ask_profile()
mask().set_handler(DLG_COPY,cpy_handler); mask().set_handler(DLG_COPY,cpy_handler);
mask().set_handler(F_CODE,code_handler); mask().set_handler(F_CODE,code_handler);
mask().set_handler(F_CODEL,lng_handler); mask().set_handler(F_CODEL,lng_handler);
mask().set(F_BASE,BASE_EC_PROFILE);
disable_menu_item(M_FILE_PRINT); disable_menu_item(M_FILE_PRINT);
while ((k = mask().run()) != K_QUIT) while ((k = mask().run()) != K_QUIT)
{ {