Corretta gestione riferimenti da rata a riga partita
git-svn-id: svn://10.65.10.50/trunk@1897 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
6addcbeceb
commit
a887382158
@ -1141,14 +1141,13 @@ else
|
|||||||
oldiva = imposta;
|
oldiva = imposta;
|
||||||
oldposiva = newposiva;
|
oldposiva = newposiva;
|
||||||
|
|
||||||
if (r == 0) // Se cambio la prima riga ...
|
TMask& m = app().curr_mask();
|
||||||
app().add_cgs_tot(app().curr_mask()); // ... ricalcola conti
|
if (r == 0) // Se cambio la prima riga ...
|
||||||
|
app().add_cgs_tot(m); // ... ricalcola conti
|
||||||
|
|
||||||
TMask& m = app().curr_mask();
|
|
||||||
if (app().is_saldaconto() && m.page_enabled(2))
|
if (app().is_saldaconto() && m.page_enabled(2))
|
||||||
app().set_scadenze(m);
|
app().set_scadenze(m);
|
||||||
}
|
}
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,7 +25,6 @@ TTree_rectype::TTree_rectype(const TTree_rectype& t)
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TObject* TTree_rectype::dup() const
|
TObject* TTree_rectype::dup() const
|
||||||
{
|
{
|
||||||
TTree_rectype* r = new TTree_rectype(*this);
|
TTree_rectype* r = new TTree_rectype(*this);
|
||||||
@ -217,6 +216,12 @@ TRiga_scadenze::TRiga_scadenze(const TRiga_scadenze& s)
|
|||||||
: TTree_rectype(s), _riga(s._riga)
|
: TTree_rectype(s), _riga(s._riga)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
TObject* TRiga_scadenze::dup() const
|
||||||
|
{
|
||||||
|
TRiga_scadenze* r = new TRiga_scadenze(*this);
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
|
||||||
TPartita& TRiga_scadenze::partita() const
|
TPartita& TRiga_scadenze::partita() const
|
||||||
{
|
{
|
||||||
return riga().partita();
|
return riga().partita();
|
||||||
@ -457,7 +462,18 @@ TRiga_partite::TRiga_partite(TPartita* game)
|
|||||||
|
|
||||||
TRiga_partite::TRiga_partite(const TRiga_partite& r)
|
TRiga_partite::TRiga_partite(const TRiga_partite& r)
|
||||||
: TTree_rectype(r), _partita(r._partita)
|
: TTree_rectype(r), _partita(r._partita)
|
||||||
{}
|
{
|
||||||
|
update_rigaptr();
|
||||||
|
}
|
||||||
|
|
||||||
|
void TRiga_partite::update_rigaptr()
|
||||||
|
{
|
||||||
|
for (int i = rate(); i >= 0; i--)
|
||||||
|
{
|
||||||
|
TRiga_scadenze& scad = i == 0 ? (TRiga_scadenze&)rows_array().key() : rata(i);
|
||||||
|
scad._riga = this;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
TRiga_scadenze& TRiga_partite::new_row(int r)
|
TRiga_scadenze& TRiga_partite::new_row(int r)
|
||||||
{
|
{
|
||||||
@ -491,6 +507,7 @@ int TRiga_partite::read(TBaseisamfile& f, word op)
|
|||||||
{
|
{
|
||||||
TRiga_scadenze* s = new TRiga_scadenze(this);
|
TRiga_scadenze* s = new TRiga_scadenze(this);
|
||||||
err = rows_array().read(s); // Deve esistere almento una scadenza
|
err = rows_array().read(s); // Deve esistere almento una scadenza
|
||||||
|
update_rigaptr();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
rows_array().destroy_rows();
|
rows_array().destroy_rows();
|
||||||
|
@ -122,7 +122,7 @@ protected:
|
|||||||
bool elimina_pagamento(int p);
|
bool elimina_pagamento(int p);
|
||||||
|
|
||||||
protected: // TRecord_tree
|
protected: // TRecord_tree
|
||||||
virtual TObject* dup() const { return new TRiga_scadenze(*this); }
|
virtual TObject* dup() const;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
bool chiusa(bool update = FALSE) const;
|
bool chiusa(bool update = FALSE) const;
|
||||||
@ -147,6 +147,9 @@ class TRiga_partite : public TTree_rectype
|
|||||||
friend class TRiga_scadenze;
|
friend class TRiga_scadenze;
|
||||||
TPartita* _partita;
|
TPartita* _partita;
|
||||||
|
|
||||||
|
protected:
|
||||||
|
void update_rigaptr();
|
||||||
|
|
||||||
public: // TTree_rectype
|
public: // TTree_rectype
|
||||||
virtual TObject* dup() const { return new TRiga_partite(*this); }
|
virtual TObject* dup() const { return new TRiga_partite(*this); }
|
||||||
virtual int read(TBaseisamfile& f, word op);
|
virtual int read(TBaseisamfile& f, word op);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user