From b0983593a657ec973da4c36f2c04eab9f8e20d8e Mon Sep 17 00:00:00 2001 From: guy Date: Wed, 16 Apr 1997 13:54:44 +0000 Subject: [PATCH] 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 --- cg/cg2100k.uml | 2 +- cg/cg2102.cpp | 21 +++++++++++++++------ cg/cg2105.cpp | 45 +++++++++++++++++++++++++++------------------ cg/cg2106.cpp | 45 ++++++++++++++++++++++++++++++++++++--------- cg/cg21cg.uml | 1 + cg/cg3200.cpp | 4 ++-- 6 files changed, 82 insertions(+), 36 deletions(-) diff --git a/cg/cg2100k.uml b/cg/cg2100k.uml index 930d45d5b..b613a20f5 100755 --- a/cg/cg2100k.uml +++ b/cg/cg2100k.uml @@ -23,7 +23,7 @@ ENDMASK PAGE "Colore" -1 -1 40 10 -STRING 101 20 +STRING 101 32 BEGIN PROMPT 1 1 "Tipo " END diff --git a/cg/cg2102.cpp b/cg/cg2102.cpp index 71e4d4d38..a829fa2b3 100755 --- a/cg/cg2102.cpp +++ b/cg/cg2102.cpp @@ -290,7 +290,7 @@ void TPrimanota_application::disable_cgs_cells(int n, char tipo) { TSheet_field& cg = cgs(); - int first = 0, last = 0; + int first = 0, last = 0; // Range di righe da disabilitare switch(tipo) { case 'T': // Totale documento @@ -328,16 +328,25 @@ void TPrimanota_application::disable_cgs_cells(int n, char tipo) break; } + bool needs_update = FALSE; + if (last) { for (int i = first; i < last; i++) cg.disable_cell(n, i); - - COLOR back_color, fore_color; - type2colors(tipo, back_color, fore_color); - cg.set_back_and_fore_color(back_color, fore_color, n); - cg.force_update(n); + needs_update = TRUE; } + + COLOR 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); + needs_update = TRUE; + } + + if (needs_update) + cg.force_update(n); } void TPrimanota_application::reset_sheet_row(TSheet_field& s, int n) diff --git a/cg/cg2105.cpp b/cg/cg2105.cpp index e5bf4c737..48b0b0f92 100755 --- a/cg/cg2105.cpp +++ b/cg/cg2105.cpp @@ -48,7 +48,9 @@ protected: void add_importo(TToken_string& s, const TImporto& i, bool val = FALSE, 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; - + + TToken_string& add_colored_row(TSheet_field& sheet, char type) const; + void fill_partite(); void aggiorna_residuo(); @@ -832,7 +834,16 @@ 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) { @@ -849,9 +860,8 @@ bool TGame_mask::partite_notify(TSheet_field& partite, int r, KEY k) gm._riga_partite = r; TSheet_field& sheet = gm.scadenze(); - TString_array& scadenze = sheet.rows_array(); // Array delle righe - scadenze.destroy(); // Azzera righe - + sheet.destroy(-1, FALSE); // Azzera righe + TToken_string& row = partite.row(r); const int anno = row.get_int(0); // Anno partita const TString16 num = row.get(); // Numero 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 TImporto tot_lit, tot_val; - TToken_string riga_fattura(80); 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()) continue; - riga_fattura.cut(0); + TToken_string& riga_fattura = gm.add_colored_row(sheet, 'K'); riga_fattura.add(ri); riga_fattura.add(""); 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_PROTIVA)); riga_fattura.add(riga.get(PART_TIPOMOV)); - scadenze.add(riga_fattura); - + for (int ra = 1; ra <= riga.rate(); 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(scad.get(SCAD_DATASCAD), 3); 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 char sez = sum.sezione(); - TToken_string& row = scadenze.row(scadenze.add("")); + TToken_string& row = gm.add_colored_row(sheet, ' '); row.add(ri); row.add(ra); 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)); 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); gm.add_importo(rrit, rit, FALSE); 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)); if (!abb.is_zero()) { - TToken_string& rabb = scadenze.row(scadenze.add("")); const char tipo_abb = pag.get_char(PAGSCA_PASSATT); + TToken_string& rabb = gm.add_colored_row(sheet, tipo_abb); rabb.add("Abbuoni ", 4); rabb << (tipo_abb == 'A' ? "attivi" : "passivi"); 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)); 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); gm.add_importo(rdiff, diff); 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 } // 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; 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 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_NRATA)); 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)); 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); gm.add_importo(row, rit, FALSE); 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) { - TToken_string& sp = scadenze.row(scadenze.add("")); + TToken_string& sp = gm.add_colored_row(sheet, 'T'); sp.add("Saldo partita", 4); if (prima_valuta.in_valuta()) sp << ' ' << prima_valuta.codice(); diff --git a/cg/cg2106.cpp b/cg/cg2106.cpp index 67b7a3a30..08f48d7fc 100755 --- a/cg/cg2106.cpp +++ b/cg/cg2106.cpp @@ -50,11 +50,18 @@ void TRow_mask::update() COLOR back, fore; m.get_cur_colors(back, fore); + _pixmap = TRUE; set_pen(COLOR_BLACK); + + RCT rct; field(100).get_rect(rct); 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); - 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); TToken_string& row = s.row(s.selected()); - const char tipo = row.right(1)[0]; + const char tipo = row[5]; app().type2colors(tipo, back, fore); } void TColor_mask::set_cur_colors(COLOR back, COLOR fore) { TSheet_field& s = (TSheet_field&)fld(0); - TToken_string& row = s.row(s.selected()); - const char tipo = row.right(1)[0]; + int cur = s.selected(); + TToken_string& row = s.row(cur); + const char tipo = row[5]; 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) @@ -115,16 +124,34 @@ TColor_mask::TColor_mask() TVariable_sheet_field& s = (TVariable_sheet_field&)fld(0); 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(); int row = 0; - for (const char* c = tipi; *c; c++) + int d = 0; + for (const char* c = tipi; *c; c++, d++) { COLOR back, fore; a.type2colors(*c, back, fore); TToken_string& riga = s.row(-1); - riga << "Riga " << *c; + riga << "Riga " << *c << " - " << desc[d]; s.set_back_and_fore_color(back, fore, row++); } } diff --git a/cg/cg21cg.uml b/cg/cg21cg.uml index 905e92b18..c8cad4ee2 100755 --- a/cg/cg21cg.uml +++ b/cg/cg21cg.uml @@ -362,6 +362,7 @@ BEGIN ITEM "K|Riga Cliente/Fornitore" ITEM "N|IVA non detraibile" ITEM "P|Abbuoni passivi" + ITEM "R|Ritenute professionali" ITEM "S|Ritenute sociali" ITEM "T|Totale documento" FLAGS "D" diff --git a/cg/cg3200.cpp b/cg/cg3200.cpp index 5ae493b7e..bfe682146 100755 --- a/cg/cg3200.cpp +++ b/cg/cg3200.cpp @@ -1428,8 +1428,8 @@ bool TMastrini_application::preprocess_page(int file, int counter) calcola_progressivi(); _totale_saldo = _totprogre_dare_al - _totprogre_avere_al; } - else - _totale_saldo = 1.0; +// else +// _totale_saldo = 1.0; if ((_tipostampa == 1) || (_tipostampa == 2)) {