Patch level : 10.0 67

Files correlati     :
Ricompilazione Demo : [ ]
Commento           :

RIportata la verione 3.2 1167


git-svn-id: svn://10.65.10.50/trunk@16732 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 2008-06-11 13:57:01 +00:00
parent 4214f268ae
commit bc6e158969
2 changed files with 20 additions and 7 deletions

View File

@ -1641,7 +1641,7 @@ static bool explode_callback(TTree& node, void* jolly, word when)
if (ep._filter.find(type) < 0)
return FALSE;
TRiga_esplosione* er = new TRiga_esplosione(tree, ep._filter.find('G') >= 0);
TRiga_esplosione* er = new TRiga_esplosione(tree, ep._filter.find('G') >= 0, tree.curr());
er->set_mat_base(is_leaf);
ep._array->add(er);
}
@ -1797,7 +1797,7 @@ TLavorazione *TDistinta_tree::find_labor(TRiga_esplosione *l)
// TRiga_esplosione
///////////////////////////////////////////////////////////
void TRiga_esplosione::init(const TDistinta_tree& tree, bool vis_ghost)
void TRiga_esplosione::init(const TDistinta_tree& tree, bool vis_ghost, const TRectype * rec)
{
TCodice_articolo art; tree.curr_code(art); art.trim();
TCodice_um um; tree.curr_um(um);
@ -1810,6 +1810,10 @@ void TRiga_esplosione::init(const TDistinta_tree& tree, bool vis_ghost)
_mat_base = FALSE;
// set path and code
tree.curr_id(_path); // path
if (rec != NULL)
_rdist = new TRectype(*rec);
else
_rdist = NULL;
}
const char * TRiga_esplosione::father(const char * types)
@ -1833,9 +1837,9 @@ const char * TRiga_esplosione::father(const char * types)
return _tmp_path;
}
TRiga_esplosione::TRiga_esplosione(const TDistinta_tree& tree, bool vis_ghost)
TRiga_esplosione::TRiga_esplosione(const TDistinta_tree& tree, bool vis_ghost, const TRectype * rec)
{
init(tree, vis_ghost);
init(tree, vis_ghost, rec);
}
TRiga_esplosione::TRiga_esplosione(const TRiga_esplosione& re)
@ -1847,6 +1851,11 @@ TRiga_esplosione::TRiga_esplosione(const TRiga_esplosione& re)
_sort = re._sort;
_mat_base = re._mat_base;
_last_qta = re._last_qta;
if (re._rdist != NULL)
_rdist = new TRectype(*re._rdist);
else
_rdist = NULL;
}
TRiga_esplosione::TRiga_esplosione()
@ -1855,6 +1864,7 @@ TRiga_esplosione::TRiga_esplosione()
_tipo = '\0';
_sort = 0L;
_mat_base = FALSE;
_rdist = NULL;
}
TUm_tempo::TUm_tempo(char c)

View File

@ -310,6 +310,7 @@ public:
virtual bool get_description(TString& desc) const;
virtual TImage* image(bool selected) const;
virtual TObject* curr_node() const;
const TRectype * curr() const { return TDistinta_tree::_curr;}
const TString& describe(const TCodice_articolo& codart) const;
bool describe(const TCodice_articolo& codart, TString& descr) const;
@ -398,10 +399,11 @@ class TRiga_esplosione : public TQuantita
char _tipo;
bool _mat_base;
real _last_qta;
TRectype * _rdist;
protected:
virtual TObject* dup() const { return new TRiga_esplosione(*this); }
void init(const TDistinta_tree& tree, bool vis_ghost = FALSE);
void init(const TDistinta_tree& tree, bool vis_ghost = FALSE, const TRectype * rec = NULL);
public:
const TToken_string& path() const { return _path; }
@ -418,11 +420,12 @@ public:
// cerca un padre o nonno di uno dei tipi passati
const char * father(const char * types=NULL);
const real& last_qta() const { return _last_qta; }
const TRectype * rdist_rec() const { return _rdist;}
TRiga_esplosione();
TRiga_esplosione(const TDistinta_tree& tree, bool vis_ghost = FALSE);
TRiga_esplosione(const TDistinta_tree& tree, bool vis_ghost = false, const TRectype * rec = NULL);
TRiga_esplosione(const TRiga_esplosione& re);
virtual ~TRiga_esplosione() { }
virtual ~TRiga_esplosione() { if (_rdist != NULL) delete _rdist;}
};
#endif