Merge branch 'fixes' into main/rendor-staging
[ryzomcore.git] / ryzom / tools / leveldesign / georges_convert / item_elt.h
blob2f8e11e6534711362f7a2a670df713c054ca2849
1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Affero General Public License as
6 // published by the Free Software Foundation, either version 3 of the
7 // License, or (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Affero General Public License for more details.
14 // You should have received a copy of the GNU Affero General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
17 #ifndef NLGEORGES_ITEM_ELT_H
18 #define NLGEORGES_ITEM_ELT_H
20 #include "string_ex.h"
21 #include "common.h"
23 namespace NLOLDGEORGES
26 class CLoader;
27 class CFormBodyElt;
29 class CItemElt
31 protected:
32 CLoader* pl;
33 unsigned int infos;
34 CStringEx sxname;
35 CStringEx sxparent;
36 CStringEx sxcurrentresult;
37 CStringEx sxcurrentvalue;
38 CStringEx sxoldcurrentvalue;
39 CStringEx sxparentresult;
40 CStringEx sxparentvalue;
41 CStringEx sxoldparentvalue;
42 CItemElt* listparent;
43 bool bmodified;
45 public:
46 CItemElt( CLoader* const _pl );
47 virtual ~CItemElt();
49 void SetName( const CStringEx _sxname );
50 void AddInfos( const unsigned int _infos );
51 void SetListParent( CItemElt* const _listparent );
52 CItemElt* GetListParent() const;
54 unsigned int GetInfos() const;
55 CStringEx GetName() const;
56 CStringEx GetParent() const;
57 CStringEx GetParentResult() const;
58 CStringEx GetParentValue() const;
59 CStringEx GetCurrentResult() const;
60 CStringEx GetCurrentValue() const;
62 virtual CStringEx GetFormula() const;
63 virtual void SetParentValue( const CStringEx _sxparentvalue );
64 virtual void SetCurrentValue( const CStringEx _sxcurrentvalue );
65 virtual void FillParent( const CFormBodyElt* const _pfbe );
66 virtual void FillCurrent(const CFormBodyElt* const _pfbe );
67 virtual CItemElt* Clone();
68 virtual CFormBodyElt* BuildForm();
70 virtual unsigned int GetNbElt() const;
71 virtual CItemElt* GetElt( const unsigned int _index ) const;
72 virtual CItemElt* GetElt( const CStringEx sxname ) const;
73 virtual bool SetModified( const unsigned int _index );
74 virtual void SetModified( const bool _b );
76 virtual unsigned int GetNbChild ();
77 virtual CItemElt* GetChild (unsigned int _index);
80 } // NLGEORGES
82 #endif // NLGEORGES_ITEM_ELT_H