cg2100k.uml Corretta descriione nella maschera colori

cg2102.cpp   Corretto aggiornamento righe colorate
cg2105.cpp   Colorate le righe di saldaconto contabile
cg2106.cpp   Aggiunte descrizioni colori
cg21cg.uml   Aggiornato listbox dei tipi riga
cg3200.cpp   Commentate due righe inutili


git-svn-id: svn://10.65.10.50/trunk@4285 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1997-04-16 13:54:44 +00:00
parent 2ba325375b
commit b0983593a6
6 changed files with 82 additions and 36 deletions

View File

@ -23,7 +23,7 @@ ENDMASK
PAGE "Colore" -1 -1 40 10 PAGE "Colore" -1 -1 40 10
STRING 101 20 STRING 101 32
BEGIN BEGIN
PROMPT 1 1 "Tipo " PROMPT 1 1 "Tipo "
END END

View File

@ -290,7 +290,7 @@ void TPrimanota_application::disable_cgs_cells(int n, char tipo)
{ {
TSheet_field& cg = cgs(); TSheet_field& cg = cgs();
int first = 0, last = 0; int first = 0, last = 0; // Range di righe da disabilitare
switch(tipo) switch(tipo)
{ {
case 'T': // Totale documento case 'T': // Totale documento
@ -328,16 +328,25 @@ void TPrimanota_application::disable_cgs_cells(int n, char tipo)
break; break;
} }
bool needs_update = FALSE;
if (last) if (last)
{ {
for (int i = first; i < last; i++) for (int i = first; i < last; i++)
cg.disable_cell(n, i); cg.disable_cell(n, i);
needs_update = TRUE;
}
COLOR back_color, fore_color; COLOR back_color, fore_color;
type2colors(tipo, back_color, fore_color); type2colors(tipo, back_color, fore_color);
if (back_color != NORMAL_BACK_COLOR || fore_color != NORMAL_COLOR)
{
cg.set_back_and_fore_color(back_color, fore_color, n); cg.set_back_and_fore_color(back_color, fore_color, n);
cg.force_update(n); needs_update = TRUE;
} }
if (needs_update)
cg.force_update(n);
} }
void TPrimanota_application::reset_sheet_row(TSheet_field& s, int n) void TPrimanota_application::reset_sheet_row(TSheet_field& s, int n)

View File

@ -49,6 +49,8 @@ protected:
void add_descrizione(TToken_string& s, const TRiga_partite& riga, int pos = -1); void add_descrizione(TToken_string& s, const TRiga_partite& riga, int pos = -1);
TImporto get_importo(TToken_string& s, int pos) const; TImporto get_importo(TToken_string& s, int pos) const;
TToken_string& add_colored_row(TSheet_field& sheet, char type) const;
void fill_partite(); void fill_partite();
void aggiorna_residuo(); void aggiorna_residuo();
@ -834,6 +836,15 @@ void TGame_mask::aggiorna_sorelle(const TRiga_partite& part) const
} }
*/ */
TToken_string& TGame_mask::add_colored_row(TSheet_field& sheet, char type) const
{
int r = sheet.insert(-1, FALSE, FALSE);
COLOR back, fore;
app().type2colors(type, back, fore);
sheet.set_back_and_fore_color(back, fore, r);
return sheet.row(r);
}
bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k) bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
{ {
TGame_mask& gm = (TGame_mask&)partite.mask(); TGame_mask& gm = (TGame_mask&)partite.mask();
@ -849,8 +860,7 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
gm._riga_partite = r; gm._riga_partite = r;
TSheet_field& sheet = gm.scadenze(); TSheet_field& sheet = gm.scadenze();
TString_array& scadenze = sheet.rows_array(); // Array delle righe sheet.destroy(-1, FALSE); // Azzera righe
scadenze.destroy(); // Azzera righe
TToken_string& row = partite.row(r); TToken_string& row = partite.row(r);
const int anno = row.get_int(0); // Anno partita const int anno = row.get_int(0); // Anno partita
@ -870,7 +880,6 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
game = new TPartita(zio, anno, num); // ... creane una temporanea game = new TPartita(zio, anno, num); // ... creane una temporanea
TImporto tot_lit, tot_val; TImporto tot_lit, tot_val;
TToken_string riga_fattura(80);
const int lastrow = game->last(); const int lastrow = game->last();
@ -884,7 +893,7 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
if (!riga.is_fattura()) if (!riga.is_fattura())
continue; continue;
riga_fattura.cut(0); TToken_string& riga_fattura = gm.add_colored_row(sheet, 'K');
riga_fattura.add(ri); riga_fattura.add(ri);
riga_fattura.add(""); riga_fattura.add("");
riga_fattura.add(riga.get(PART_DATADOC)); riga_fattura.add(riga.get(PART_DATADOC));
@ -900,13 +909,13 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
riga_fattura.add(riga.get(PART_NUMDOC)); riga_fattura.add(riga.get(PART_NUMDOC));
riga_fattura.add(riga.get(PART_PROTIVA)); riga_fattura.add(riga.get(PART_PROTIVA));
riga_fattura.add(riga.get(PART_TIPOMOV)); riga_fattura.add(riga.get(PART_TIPOMOV));
scadenze.add(riga_fattura);
for (int ra = 1; ra <= riga.rate(); ra++) for (int ra = 1; ra <= riga.rate(); ra++)
{ {
const TRiga_scadenze& scad = riga.rata(ra); const TRiga_scadenze& scad = riga.rata(ra);
TToken_string& row = scadenze.row(scadenze.add(riga_fattura)); TToken_string& row = gm.add_colored_row(sheet, 'I');
row = riga_fattura;
row.add(ra, 1); row.add(ra, 1);
row.add(scad.get(SCAD_DATASCAD), 3); row.add(scad.get(SCAD_DATASCAD), 3);
gm.add_importo(row, scad.importo(FALSE), FALSE, 5); gm.add_importo(row, scad.importo(FALSE), FALSE, 5);
@ -927,7 +936,7 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
const TRiga_partite& sum = game->riga(pa); const TRiga_partite& sum = game->riga(pa);
const char sez = sum.sezione(); const char sez = sum.sezione();
TToken_string& row = scadenze.row(scadenze.add("")); TToken_string& row = gm.add_colored_row(sheet, ' ');
row.add(ri); row.add(ri);
row.add(ra); row.add(ra);
row.add(sum.get(PART_DATADOC)); row.add(sum.get(PART_DATADOC));
@ -957,7 +966,7 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
const TImporto rit(sez, pag.get_real(PAGSCA_RITENUTE)); const TImporto rit(sez, pag.get_real(PAGSCA_RITENUTE));
if (!rit.is_zero()) if (!rit.is_zero())
{ {
TToken_string& rrit = scadenze.row(scadenze.add("")); TToken_string& rrit = gm.add_colored_row(sheet, 'R');
rrit.add("Ritenute professionali", 4); rrit.add("Ritenute professionali", 4);
gm.add_importo(rrit, rit, FALSE); gm.add_importo(rrit, rit, FALSE);
rrit.add(sum.get(PART_TIPOMOV), 11); rrit.add(sum.get(PART_TIPOMOV), 11);
@ -970,8 +979,8 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
const TImporto abb(sez, pag.get_real(PAGSCA_ABBUONI)); const TImporto abb(sez, pag.get_real(PAGSCA_ABBUONI));
if (!abb.is_zero()) if (!abb.is_zero())
{ {
TToken_string& rabb = scadenze.row(scadenze.add(""));
const char tipo_abb = pag.get_char(PAGSCA_PASSATT); const char tipo_abb = pag.get_char(PAGSCA_PASSATT);
TToken_string& rabb = gm.add_colored_row(sheet, tipo_abb);
rabb.add("Abbuoni ", 4); rabb.add("Abbuoni ", 4);
rabb << (tipo_abb == 'A' ? "attivi" : "passivi"); rabb << (tipo_abb == 'A' ? "attivi" : "passivi");
if (in_valuta) if (in_valuta)
@ -995,7 +1004,7 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
const TImporto diff(sez, pag.get_real(PAGSCA_DIFFCAM)); const TImporto diff(sez, pag.get_real(PAGSCA_DIFFCAM));
if (!diff.is_zero()) if (!diff.is_zero())
{ {
TToken_string& rdiff = scadenze.row(scadenze.add("")); TToken_string& rdiff = gm.add_colored_row(sheet, 'D');
rdiff.add("Differenza cambio", 4); rdiff.add("Differenza cambio", 4);
gm.add_importo(rdiff, diff); gm.add_importo(rdiff, diff);
rdiff.add(sum.get(PART_TIPOMOV), 11); rdiff.add(sum.get(PART_TIPOMOV), 11);
@ -1005,7 +1014,7 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
} // Il pagamento era a saldo } // Il pagamento era a saldo
} // Fine ciclo sui pagamenti della rata } // Fine ciclo sui pagamenti della rata
TToken_string& rsal = scadenze.row(scadenze.add("")); TToken_string& rsal = gm.add_colored_row(sheet, 'S');
rsal.add("Saldo rata ", 4); rsal << ra; rsal.add("Saldo rata ", 4); rsal << ra;
if (!scad.chiusa()) if (!scad.chiusa())
{ {
@ -1031,7 +1040,7 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
const TRiga_partite& sum = game->riga(pa); const TRiga_partite& sum = game->riga(pa);
const char sez = sum.sezione(); const char sez = sum.sezione();
TToken_string& row = scadenze.row(scadenze.add("")); TToken_string& row = gm.add_colored_row(sheet, ' ');
row.add(pag.get(PAGSCA_NRIGA)); row.add(pag.get(PAGSCA_NRIGA));
row.add(pag.get(PAGSCA_NRATA)); row.add(pag.get(PAGSCA_NRATA));
row.add(sum.get(PART_DATADOC)); row.add(sum.get(PART_DATADOC));
@ -1062,7 +1071,7 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
const TImporto rit(sez, pag.get_real(PAGSCA_RITENUTE)); const TImporto rit(sez, pag.get_real(PAGSCA_RITENUTE));
if (!rit.is_zero()) if (!rit.is_zero())
{ {
TToken_string& row = scadenze.row(scadenze.add("")); TToken_string& row = gm.add_colored_row(sheet, 'R');
row.add("Ritenute professionali", 4); row.add("Ritenute professionali", 4);
gm.add_importo(row, rit, FALSE); gm.add_importo(row, rit, FALSE);
row.add(sum.get(PART_TIPOMOV), 11); row.add(sum.get(PART_TIPOMOV), 11);
@ -1072,7 +1081,7 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k)
if (lastrow > 0) if (lastrow > 0)
{ {
TToken_string& sp = scadenze.row(scadenze.add("")); TToken_string& sp = gm.add_colored_row(sheet, 'T');
sp.add("Saldo partita", 4); sp.add("Saldo partita", 4);
if (prima_valuta.in_valuta()) if (prima_valuta.in_valuta())
sp << ' ' << prima_valuta.codice(); sp << ' ' << prima_valuta.codice();

View File

@ -50,11 +50,18 @@ void TRow_mask::update()
COLOR back, fore; COLOR back, fore;
m.get_cur_colors(back, fore); m.get_cur_colors(back, fore);
_pixmap = TRUE;
set_pen(COLOR_BLACK); set_pen(COLOR_BLACK);
RCT rct; field(100).get_rect(rct);
set_brush(back); set_brush(back);
frame(2, 4, 16, 6, 0); frame(rct.left, 2*rct.top - rct.bottom - CHARY/2, rct.right, rct.top - CHARY/2, 0);
field(99).get_rect(rct);
set_brush(fore); set_brush(fore);
frame(20, 4, 34, 6, 0); frame(rct.left, 2*rct.top - rct.bottom - CHARY/2, rct.right, rct.top - CHARY/2, 0);
_pixmap = FALSE;
} }
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
@ -66,17 +73,19 @@ void TColor_mask::get_cur_colors(COLOR& back, COLOR& fore) const
{ {
TSheet_field& s = (TSheet_field&)fld(0); TSheet_field& s = (TSheet_field&)fld(0);
TToken_string& row = s.row(s.selected()); TToken_string& row = s.row(s.selected());
const char tipo = row.right(1)[0]; const char tipo = row[5];
app().type2colors(tipo, back, fore); app().type2colors(tipo, back, fore);
} }
void TColor_mask::set_cur_colors(COLOR back, COLOR fore) void TColor_mask::set_cur_colors(COLOR back, COLOR fore)
{ {
TSheet_field& s = (TSheet_field&)fld(0); TSheet_field& s = (TSheet_field&)fld(0);
TToken_string& row = s.row(s.selected()); int cur = s.selected();
const char tipo = row.right(1)[0]; TToken_string& row = s.row(cur);
const char tipo = row[5];
app().set_type_colors(tipo, back, fore); app().set_type_colors(tipo, back, fore);
s.set_back_and_fore_color(back, fore, s.selected()); s.set_back_and_fore_color(back, fore, cur);
s.force_update(cur);
} }
bool TColor_mask::color_handler(TMask_field& f, KEY k) bool TColor_mask::color_handler(TMask_field& f, KEY k)
@ -115,16 +124,34 @@ TColor_mask::TColor_mask()
TVariable_sheet_field& s = (TVariable_sheet_field&)fld(0); TVariable_sheet_field& s = (TVariable_sheet_field&)fld(0);
s.set_getmask(get_mask); s.set_getmask(get_mask);
const char* const tipi = "TFSIDNAPRC"; const char* const tipi = "TFSIDNAPRCGLK";
const char* const desc[] =
{
"Totale documento",
"Ritenute fiscali",
"Ritenute sociali",
"Generata (Imponibile)",
"IVA detraibile",
"IVA non detraibile",
"Abbuoni attivi",
"Abbuoni passivi",
"Ritenute professionali",
"Differenza cambi",
"Spese",
"Contropartita spese",
"Riga Cliente/Fornitore",
};
TPrimanota_application& a = app(); TPrimanota_application& a = app();
int row = 0; int row = 0;
for (const char* c = tipi; *c; c++) int d = 0;
for (const char* c = tipi; *c; c++, d++)
{ {
COLOR back, fore; COLOR back, fore;
a.type2colors(*c, back, fore); a.type2colors(*c, back, fore);
TToken_string& riga = s.row(-1); TToken_string& riga = s.row(-1);
riga << "Riga " << *c; riga << "Riga " << *c << " - " << desc[d];
s.set_back_and_fore_color(back, fore, row++); s.set_back_and_fore_color(back, fore, row++);
} }
} }

View File

@ -362,6 +362,7 @@ BEGIN
ITEM "K|Riga Cliente/Fornitore" ITEM "K|Riga Cliente/Fornitore"
ITEM "N|IVA non detraibile" ITEM "N|IVA non detraibile"
ITEM "P|Abbuoni passivi" ITEM "P|Abbuoni passivi"
ITEM "R|Ritenute professionali"
ITEM "S|Ritenute sociali" ITEM "S|Ritenute sociali"
ITEM "T|Totale documento" ITEM "T|Totale documento"
FLAGS "D" FLAGS "D"

View File

@ -1428,8 +1428,8 @@ bool TMastrini_application::preprocess_page(int file, int counter)
calcola_progressivi(); calcola_progressivi();
_totale_saldo = _totprogre_dare_al - _totprogre_avere_al; _totale_saldo = _totprogre_dare_al - _totprogre_avere_al;
} }
else // else
_totale_saldo = 1.0; // _totale_saldo = 1.0;
if ((_tipostampa == 1) || (_tipostampa == 2)) if ((_tipostampa == 1) || (_tipostampa == 2))
{ {