Ridotta altezza bottoni automaitici da 3 a 2 e tolti bottoni PgDN PGUp

git-svn-id: svn://10.65.10.50/trunk@85 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1994-08-29 11:20:25 +00:00
parent 833e3df2ef
commit 81c13723b9

View File

@ -23,93 +23,93 @@ bool TEdit_file::browse(int logicnum, const char* name)
head.add("@1"); head.add("@1");
for(int i = 0; (n = curr.fieldname(i)) != NULL; i++) for(int i = 0; (n = curr.fieldname(i)) != NULL; i++)
{ {
trac.add(n); trac.add(n);
head.add(n); head.add(n);
int len = curr.length(n); int len = curr.length(n);
if (curr.type(n) == _datefld) len = 10; if (curr.type(n) == _datefld) len = 10;
if (len > strlen(n)) head << '@' << len; if (len > strlen(n)) head << '@' << len;
} }
KEY ch; KEY ch;
TCursor_sheet sheet(&cursor, trac, name, head, 6); TCursor_sheet sheet(&cursor, trac, name, head, 6);
while ((ch = sheet.run()) != K_ESC) while ((ch = sheet.run()) != K_ESC)
{
if (ch == K_DEL && sheet.one_checked())
{ {
TProgind* pind = NULL; if (ch == K_DEL && sheet.one_checked())
cursor.freeze(TRUE); {
bool go = FALSE; TProgind* pind = NULL;
bool first = FALSE; cursor.freeze(TRUE);
int j; bool go = FALSE;
for (j = 0, cursor = 0; j < sheet.items(); ++cursor, j++) bool first = FALSE;
int j;
for (j = 0, cursor = 0; j < sheet.items(); ++cursor, j++)
{ {
if (sheet.checked(j)) if (sheet.checked(j))
{
if (!go && !first)
go = yesno_box("Confermi la cancellazione dei %d "
"record indicati?", sheet.checked());
first = TRUE;
if (!pind)
{
pind = new TProgind(sheet.checked(),"Attendere...",
TRUE, TRUE, 32);
pind->addstatus(1);
}
else
{ {
if (pind->iscancelled()) break; if (!go && !first)
pind->addstatus(1); go = yesno_box("Confermi la cancellazione dei %d "
} "record indicati?", sheet.checked());
first = TRUE;
if (go) cursor.file()->remove(); if (!pind)
sheet.uncheck(j); {
} pind = new TProgind(sheet.checked(),"Attendere...",
} TRUE, TRUE, 32);
if (pind) delete pind; pind->addstatus(1);
cursor.freeze(FALSE); }
else
if (first) {sheet.select(1); continue;} {
} if (pind->iscancelled()) break;
if (ch == K_ENTER || ch == K_DEL) pind->addstatus(1);
cursor = sheet.selected(); }
switch(ch)
{
case K_ENTER: // edit fields
svrec = curr;
if (edit_record(curr, FALSE) == K_ENTER)
{
TString s(svrec.key(1));
if (s != curr.key(1)) if (go) cursor.file()->remove();
{ sheet.uncheck(j);
cursor.file()->write();
if (cursor.file()->good())
{
curr = svrec;
cursor.file()->remove();
} }
} }
else if (pind) delete pind;
cursor.file()->rewrite(); cursor.freeze(FALSE);
if (first) {sheet.select(1); continue;}
} }
break; if (ch == K_ENTER || ch == K_DEL)
case K_DEL: // delete record cursor = sheet.selected();
if (yesno_box("Confermare la cancellazione del record"))
cursor.file()->remove(); switch(ch)
break; {
case K_INS: // insert new record case K_ENTER: // edit fields
curr.zero(); svrec = curr;
if (edit_record(curr,FALSE) == K_ENTER) if (edit_record(curr, FALSE) == K_ENTER)
cursor.file()->write(); {
break; TString s(svrec.key(1));
if (s != curr.key(1))
{
cursor.file()->write();
if (cursor.file()->good())
{
curr = svrec;
cursor.file()->remove();
}
}
else
cursor.file()->rewrite();
}
break;
case K_DEL: // delete record
if (yesno_box("Confermare la cancellazione del record"))
cursor.file()->remove();
break;
case K_INS: // insert new record
curr.zero();
if (edit_record(curr,FALSE) == K_ENTER)
cursor.file()->write();
break;
}
sheet.force_update();
} }
sheet.force_update();
}
return K_ESC; return K_ESC;
} }
@ -125,53 +125,49 @@ KEY TEdit_file::edit_record(TRectype& rec, bool readonly)
const char* cp; const char* cp;
for(int i = 0; (cp = rec.fieldname(i)) != NULL; i++) for(int i = 0; (cp = rec.fieldname(i)) != NULL; i++)
{
// add fields ONE by ONE
TString s(cp); s.left_just(16);
int len = rec.length(cp);
switch (rec.type(cp))
{ {
case _alfafld: // add fields ONE by ONE
m.add_string(nid++,curpage, s, 3, currow, len, "", TString16 s(cp); s.left_just(16);
len > 50 ? 50 : len); int len = rec.length(cp);
break; switch (rec.type(cp))
case _intfld: {
case _longfld: case _alfafld:
case _wordfld: m.add_string(nid++,curpage, s, 3, currow, len, "",
case _realfld: len > 50 ? 50 : len);
m.add_number(nid++, curpage, s, 3, currow, len, "", break;
rec.ndec(cp)); case _intfld:
break; case _longfld:
case _datefld: case _wordfld:
m.add_date(nid++, curpage, s, 3, currow); case _realfld:
break; m.add_number(nid++, curpage, s, 3, currow, len, "",
case _charfld: rec.ndec(cp));
case _boolfld: break;
m.add_string(nid++,curpage, s, 3, currow, 1); case _datefld:
break; m.add_date(nid++, curpage, s, 3, currow);
case _intzerofld: break;
case _longzerofld: case _charfld:
m.add_number(nid++, curpage, s, 3, currow, len, "Z", case _boolfld:
rec.ndec(cp)); m.add_string(nid++,curpage, s, 3, currow, 1);
break; break;
default: case _intzerofld:
break; case _longzerofld:
} m.add_number(nid++, curpage, s, 3, currow, len, "Z",
rec.ndec(cp));
m.field(nid-1).set(rec.get(cp)); break;
default:
if (((i+1) % 15) == 0 || i == recs-1) break;
{
m.add_button(DLG_OK, curpage, "", -14, -1, 9, 3);
m.add_button(DLG_CANCEL, curpage, "", -24, -1, 9, 3);
if (curpage > 0)
m.add_button(DLG_PGUP, curpage, "", -34, -1, 9, 3);
if (pages > 1 && curpage < pages-1)
m.add_button(DLG_PGDN, curpage, "", -44, -1, 9, 3);
curpage++; currow = 1;
}
else currow++;
} }
m.field(nid-1).set(rec.get(cp));
if (((i+1) % 15) == 0 || i == recs-1)
{
m.add_button(DLG_OK, curpage, "", -12, -1, 9, 2);
m.add_button(DLG_CANCEL, curpage, "", -22, -1, 9, 2);
curpage++; currow = 1;
}
else currow++;
}
if (readonly) if (readonly)
{ {