# Home    # nevrax.com   
Nevrax
Nevrax.org
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
Docs
 
Documentation  
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  

item_elt.h

Go to the documentation of this file.
00001 
00007 /* Copyright, 2000 Nevrax Ltd.
00008  *
00009  * This file is part of NEVRAX NEL.
00010  * NEVRAX NEL is free software; you can redistribute it and/or modify
00011  * it under the terms of the GNU General Public License as published by
00012  * the Free Software Foundation; either version 2, or (at your option)
00013  * any later version.
00014 
00015  * NEVRAX NEL is distributed in the hope that it will be useful, but
00016  * WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00018  * General Public License for more details.
00019 
00020  * You should have received a copy of the GNU General Public License
00021  * along with NEVRAX NEL; see the file COPYING. If not, write to the
00022  * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
00023  * MA 02111-1307, USA.
00024  */
00025 
00026 #ifndef NLGEORGES_ITEM_ELT_H
00027 #define NLGEORGES_ITEM_ELT_H
00028 
00029 #include "nel/georges/string_ex.h"
00030 #include "nel/georges/common.h"
00031 
00032 namespace NLGEORGES
00033 {
00034 
00035 class CLoader;
00036 class CFormBodyElt;
00037 
00038 class CItemElt  
00039 {
00040 protected:
00041         CLoader*        pl;
00042         unsigned int    infos;
00043         CStringEx               sxname; 
00044         CStringEx               sxparent;       
00045         CStringEx               sxcurrentresult;        
00046         CStringEx               sxcurrentvalue; 
00047         CStringEx               sxoldcurrentvalue;      
00048         CStringEx               sxparentresult; 
00049         CStringEx               sxparentvalue;  
00050         CStringEx               sxoldparentvalue;       
00051         CItemElt*               listparent;
00052         bool                    bmodified;
00053 
00054 public:
00055         CItemElt( CLoader* const _pl );
00056         virtual ~CItemElt();
00057 
00058         void SetName( const CStringEx _sxname );
00059         void AddInfos( const unsigned int _infos );
00060         void SetListParent( CItemElt* const _listparent );
00061         CItemElt* GetListParent() const;
00062 
00063         unsigned int GetInfos() const;
00064         CStringEx GetName() const;
00065         CStringEx GetParent() const;
00066         CStringEx GetParentResult() const;
00067         CStringEx GetParentValue() const;
00068         CStringEx GetCurrentResult() const;
00069         CStringEx GetCurrentValue() const;
00070 
00071         virtual CStringEx GetFormula() const;
00072         virtual void SetParentValue( const CStringEx _sxparentvalue );
00073         virtual void SetCurrentValue( const CStringEx _sxcurrentvalue );
00074         virtual void FillParent( const CFormBodyElt* const _pfbe );
00075         virtual void FillCurrent(const  CFormBodyElt* const _pfbe );
00076         virtual CItemElt* Clone();
00077         virtual CFormBodyElt* BuildForm();
00078 
00079         virtual unsigned int GetNbElt() const;
00080         virtual CItemElt* GetElt( const unsigned int _index ) const;
00081         virtual CItemElt* GetElt( const CStringEx sxname ) const;
00082         virtual bool SetModified( const unsigned int _index );
00083         virtual void SetModified( const bool _b );
00084 
00085         virtual unsigned int GetNbChild ();
00086         virtual CItemElt* GetChild (unsigned int _index);
00087 };
00088 
00089 } // NLGEORGES
00090 
00091 #endif // NLGEORGES_ITEM_ELT_H