Patch level : 10.0

Files correlati     : pd6342 pd6342a.msk
Ricompilazione Demo : [ ]
Commento            :
Correzioni di Guy


git-svn-id: svn://10.65.10.50/branches/R_10_00@20974 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca83 2010-10-08 08:56:25 +00:00
parent d21df8023e
commit 2bac2c1e54
3 changed files with 70 additions and 69 deletions

View File

@ -1,10 +1,4 @@
#include <applicat.h>
#include <automask.h>
#include <defmask.h> #include <defmask.h>
#include <execp.h>
#include <relation.h>
#include <reprint.h>
#include <reputils.h>
#include "pd6342400a.h" #include "pd6342400a.h"
#include "../ca/calib01.h" #include "../ca/calib01.h"
@ -53,8 +47,6 @@ protected:
void calcola_totale(TSheet_field& sheet); void calcola_totale(TSheet_field& sheet);
void riempi_sheets(); void riempi_sheets();
void sposta_a_destra();
void sposta_a_sinistra();
void crea_riga_quadratura(); void crea_riga_quadratura();
@ -360,38 +352,6 @@ void TQuadra_movana_msk::riempi_sheets()
calcola_totale(rs); calcola_totale(rs);
} }
void TQuadra_movana_msk::sposta_a_destra()
{
TSheet_field& ls = sfield(F_MOVNNQUAD);
TToken_string& lrow = ls.row(ls.selected());
TSheet_field& rs = sfield(F_MOVQUAD);
TToken_string& rrow = rs.row(-1);
rrow = lrow;
ls.destroy(ls.selected());
rs.force_update();
calcola_totale(rs);
}
void TQuadra_movana_msk::sposta_a_sinistra()
{
TSheet_field& rs = sfield(F_MOVQUAD);
TToken_string& rrow = rs.row(rs.selected());
TSheet_field& ls = sfield(F_MOVNNQUAD);
TToken_string& lrow = ls.row(-1);
lrow = rrow;
rs.destroy(rs.selected());
ls.force_update();
calcola_totale(rs);
}
void TQuadra_movana_msk::crea_riga_quadratura() void TQuadra_movana_msk::crea_riga_quadratura()
{ {
TSheet_field& rs = sfield(F_MOVQUAD); TSheet_field& rs = sfield(F_MOVQUAD);
@ -482,11 +442,13 @@ TQuadra_movana_msk::TQuadra_movana_msk() : TAutomask("pd6342400a")
//non si può lavorare sullo coordinata sinistra perché se si modifica si incazza come una biscia! //non si può lavorare sullo coordinata sinistra perché se si modifica si incazza come una biscia!
ls.get_rect(srect); ls.get_rect(srect);
srect.right = (wrect.left + wrect.right ) / 2 - CHARX; srect.right = (wrect.left + wrect.right ) / 2 - CHARX;
srect.bottom = wrect.bottom;
ls.set_rect(srect); ls.set_rect(srect);
//sistema le coordinate dello sheet di destra //sistema le coordinate dello sheet di destra
rs.get_rect(srect); rs.get_rect(srect);
srect.right = wrect.right; srect.right = wrect.right;
srect.bottom = wrect.bottom;
rs.set_rect(srect); rs.set_rect(srect);
} }
@ -568,7 +530,7 @@ bool TQuadra_movana_msk::on_field_event(TOperable_field& o, TField_event e, long
switch(o.dlg()) switch(o.dlg())
{ {
case DLG_CERCA: case DLG_CERCA:
if(e == fe_button) if(e == fe_button && check_fields())
{ {
riempi_sheets(); riempi_sheets();
return false; return false;
@ -608,21 +570,15 @@ bool TQuadra_movana_msk::on_field_event(TOperable_field& o, TField_event e, long
} }
break; break;
case DLG_USER: case DLG_USER:
if(e == fe_button) if(e == fe_button && jolly > 0)
{ {
switch(jolly) const short id = o.mask().get_sheet()->dlg(); // id del mio sheet
{ send_key(K_CTRL+'-', id); // simulo la cancellazione della riga corrente
case 1: sposta_a_destra(); break;
case 2: sposta_a_sinistra(); break;
default: break;
}
return false;
} }
break; break;
case F_NUMREGCG: case F_NUMREGCG:
if(e == fe_modify) if(e == fe_modify)
{ {
int cazzone = get_int(F_NUMREGCG);
if(get(F_NUMREGCG).full()) if(get(F_NUMREGCG).full())
enable(DLG_CERCA); enable(DLG_CERCA);
else else
@ -634,8 +590,26 @@ bool TQuadra_movana_msk::on_field_event(TOperable_field& o, TField_event e, long
break; break;
case F_MOVNNQUAD: case F_MOVNNQUAD:
case F_MOVQUAD: case F_MOVQUAD:
if(e == se_query_add) if (e == se_query_add) // Per riempire lo sheet devo simulare la pressione di "Cerca"
{
TSheet_field& ls = (TSheet_field&)o;
TSheet_field& rs = sfield(F_MOVNNQUAD + F_MOVQUAD - o.dlg());
if (ls.empty() && rs.empty())
send_key(K_SPACE, DLG_CERCA);
return false; return false;
}
if (e == se_query_del)
{
TSheet_field& ls = (TSheet_field&)o;
TSheet_field& rs = sfield(F_MOVNNQUAD + F_MOVQUAD - o.dlg());
const TToken_string& row = ls.row(ls.selected());
rs.row(-1) = row;
rs.force_update();
rs.select(rs.items()-1);
calcola_totale(o.dlg() == F_MOVNNQUAD ? rs : ls);
}
break;
default: break; default: break;
} }
return true; return true;

View File

@ -9,8 +9,9 @@
#define F_CDC2 208 #define F_CDC2 208
#define F_CDC3 209 #define F_CDC3 209
#define F_CDC4 210 #define F_CDC4 210
#define F_MOVNNQUAD 211
#define F_MOVQUAD 212 #define F_MOVNNQUAD 311
#define F_MOVQUAD 312
#define DLG_CERCA 801 #define DLG_CERCA 801
#define DLG_SALVA 802 #define DLG_SALVA 802

View File

@ -52,30 +52,30 @@ END
NUMBER F_NUMREGCG 7 NUMBER F_NUMREGCG 7
BEGIN BEGIN
PROMPT 2 4 "Mov. contabile " PROMPT 2 4 "Mov. contabile "
USE LF_MOV USE LF_MOV SELECT TOTDOC>0
SELECT TOTDOC>0 INPUT NUMREG F_NUMREGCG
DISPLAY "Numreg" NUMREG DISPLAY "Numreg" NUMREG
DISPLAY "Descrizione@50" DESCR DISPLAY "Descrizione@50" DESCR
DISPALY "Totale documento" TOTDOC DISPLAY "Totale documento@R" TOTDOC
OUTPUT F_NUMREGCG NUMREG OUTPUT F_NUMREGCG NUMREG
OUTPUT F_DESREGCG DESCR OUTPUT F_DESREGCG DESCR
OUTPUT F_TOTDOC TOTDOC OUTPUT F_TOTDOC TOTDOC
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
END END
STRING F_DESREGCG 47 STRING F_DESREGCG 50 47
BEGIN BEGIN
PROMPT 30 4 "" PROMPT 30 4 ""
FLAGS "D" FLAGS "D"
END END
NUMBER F_TOTDOC 18 3 CURRENCY F_TOTDOC 18
BEGIN BEGIN
PROMPT 2 5 "Tot. da quadrare " PROMPT 2 5 "Tot. da quadrare "
FLAGS "D" FLAGS "D"
END END
NUMBER F_TOTRIGHE 18 3 CURRENCY F_TOTRIGHE 18
BEGIN BEGIN
PROMPT 42 5 "Tot. righe " PROMPT 42 5 "Tot. righe "
FLAGS "D" FLAGS "D"
@ -305,17 +305,30 @@ BEGIN
FLAGS "D" FLAGS "D"
END END
BUTTON DLG_USER 2 2
BEGIN
PROMPT 200 200 ""
END
ENDPAGE ENDPAGE
TOOLBAR "" 0 0 0 2 TOOLBAR "" 0 0 0 2
BUTTON DLG_USER 2 2 BUTTON DLG_OK 2 2
BEGIN BEGIN
PROMPT 3 1 "Sposta" PROMPT 1 1 ""
END
BUTTON DLG_DELREC 2 2
BEGIN
PROMPT 2 1 "Sposta"
PICTURE BMP_LINK PICTURE BMP_LINK
END END
#include <stdbar.h> BUTTON DLG_CANCEL 2 2
BEGIN
PROMPT 3 1 ""
END
ENDPAGE ENDPAGE
ENDMASK ENDMASK
@ -487,17 +500,30 @@ BEGIN
FLAGS "D" FLAGS "D"
END END
BUTTON DLG_USER 2 2
BEGIN
PROMPT 200 200 ""
END
ENDPAGE ENDPAGE
TOOLBAR "" 0 0 0 2 TOOLBAR "" 0 0 0 2
BUTTON DLG_USER 2 2 BUTTON DLG_OK 2 2
BEGIN BEGIN
PROMPT 3 1 "Sposta" PROMPT 1 1 ""
END
BUTTON DLG_DELREC 2 2
BEGIN
PROMPT 2 1 "Sposta"
PICTURE BMP_LINK PICTURE BMP_LINK
END END
#include <stdbar.h> BUTTON DLG_CANCEL 2 2
BEGIN
PROMPT 3 1 ""
END
ENDPAGE ENDPAGE
ENDMASK ENDMASK