Aggiunta creazione runtime sugli zoom-field

git-svn-id: svn://10.65.10.50/trunk@2214 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
matteo 1995-11-27 17:31:19 +00:00
parent b0f462dc9e
commit ca25f3c33d
2 changed files with 44 additions and 14 deletions

View File

@ -164,13 +164,22 @@ void TMask::handler(WINDOW win, EVENT* ep)
stop_run(K_FORCE_CLOSE);
break;
case DLG_F9:
{
WINDOW w = ep->v.ctl.ci.win;
TMask_field* f = (TMask_field*)xvt_vobj_get_data(w);
w = f->win();
if (test_focus_change(w))
f->on_key(K_F9); // Attiva ricerca sul campo associato al bottone
}
{
WINDOW w = ep->v.ctl.ci.win;
TMask_field* f = (TMask_field*)xvt_vobj_get_data(w);
w = f->win();
if (test_focus_change(w))
f->on_key(K_F9); // Attiva ricerca sul campo associato al bottone
}
break;
case DLG_F8:
{
WINDOW w = ep->v.ctl.ci.win;
TMask_field* f = (TMask_field*)xvt_vobj_get_data(w);
w = f->win();
if (test_focus_change(w))
f->on_key(K_F8); // Attiva zoom sul campo associato al bottone
}
break;
default:
control_handler(ep);
@ -957,7 +966,7 @@ TMask_field* TMask::parse_field(TScanner& scanner)
// @mfunc Legge la pagina dal file
//
// @rdesc Ritorna l'andle della finestra creata
// @rdesc Ritorna l'handle della finestra creata
WINDOW TMask::read_page(
TScanner& scanner, // @parm File dal quale leggere la pagina
bool toolbar) // @parm Indica se e' la toolbar
@ -1021,13 +1030,13 @@ WINDOW TMask::read_page(
f->construct(scanner, w);
_field.add(f);
if (toolbar)
f->set_back_color(TOOL_BACK_COLOR);
_build_time += clock()-start;
}
set_win(NULL_WIN);
return w;
@ -1183,7 +1192,7 @@ void TMask::set(
}
void TMask::set(short fld_id, long n, bool hit)
{
{
char s[16];
sprintf(s, "%ld", n);
set(fld_id, s, hit);
@ -1201,8 +1210,6 @@ void TMask::set(short fld_id, const TDate& d, bool hit)
set(fld_id, d.string(), hit);
}
// @mfunc Permette di attivare/disattivare tutta la pagina
void TMask::activate(
bool on) // @parm Indica l'operazione da svolgere sul campo:
@ -1215,7 +1222,6 @@ void TMask::activate(
xvt_vobj_set_visible(toolwin(), on);
}
// @mfunc Abilita/disabilita un campo
void TMask::enable(
short fld_id, // @parm Identificatore del campo da abilitare (-1 tutti i campi)
@ -1540,6 +1546,28 @@ WINDOW TMask::add_string (
return f->win();
}
// @mfunc Aggiunge runtime un campo zoom alla maschera
//
// @rdesc Ritorna l'handle del campo creato
WINDOW TMask::add_zoom (
short id, // @parm Numero identificatore del campo da aggiungere
int page, // @parm Pagina nel quale aggiungere il campo
const char* prompt, // @parm Prompt del campo
int x, // @parm Coordinata x (in caratteri)
int y, // @parm Coordinata y (in caratteri)
int dim, // @parm Lunghezza del campo sulla maschera
const char* flags, // @parm Flag di controllo del campo (defailt "")
int width) // @parm Lunghezza totale del campo stringa (default 0)
// @xref <mf TMask::add_static> <mf TMask::add_number> <mf TMask::add_date>
// <mf TMask::add_button> <mf TMask::add_radio> <mf TMask::add_memo>
{
TZoom_field* f = new TZoom_field(this);
f->construct(id, prompt, x, y, dim, _pagewin[page], flags, width);
_field.add(f);
return f->win();
}
// @mfunc Aggiunge runtime un campo numerico alla maschera
//
// @rdesc Ritorna l'handle del campo creato

View File

@ -168,6 +168,8 @@ public:
WINDOW add_radio(short id, int page, const char* prompt, int x, int y, int dx, const char* codes, const char* items, const char* flags = "");
// @cmember Aggiunge runtime un campo memo alla maschera
WINDOW add_memo (short id, int page, const char* prompt, int x, int y, int dx = 78, int dy = 4, const char* flags = "");
// @cmember Aggiunge runtime un campo zoom alla maschera
WINDOW add_zoom (short id, int page, const char* prompt, int x, int y, int dim, const char* flags = "", int width = 0);
// @cmember Ritorna il numero di campi della maschera
int fields() const