ClassObject
This big bad class object. This is the thing that KlassModeler is most concerned with. It represents a C++ class. Not that this can also be a member class. It can also be a struct.
It's children are organized by access type, public, protected, or private.
public:
~ClassObject( )
enum AccessType
ClassObject& operator=( const ClassObject& Other)
std::string ConvertToXml( )
std::string ConvertToHeader( ) const
std::string ConvertToHTML( ) const
void CreateHTMLFile( const std::string& BasePath) const
void Detach( )
boost::posix_time::ptime GetLatestUpdateTime( ) const
This gets the latest update time for this object and any children.
void AttachToTreeView( const ObjectFactory& ObjectFactory, ClassTree* pTree, const wxTreeItemId& NodeId)
NotebookViewPtr AttachToNotebook( const ObjectFactory& ObjectFactory, TreeView* pTreeView, wxNotebook* pNotebook)
void AddObjectToFront( ObjectPtr pObject, AccessType Access)
void AddObjectToBack( ObjectPtr pObject, AccessType Access)
void AddObjectAfter( ObjectPtr pObject, ObjectPtr pPrevious, AccessType Access)
void AddInheritanceParent( InheritancePtr pInheritance)
void AddInheritanceChild( InheritancePtr pInheritance)
void RemoveObject( ObjectPtr pObject)
void RemoveObject( ObjectPtr pObject, AccessType Access)
void RemoveInheritanceParent( InheritancePtr pInheritance)
void RemoveInheritanceChild( InheritancePtr pInheritance)
bool InheritsFrom( ClassObjectPtr pClass) const
bool HasInternalInheritance( ) const
Returns true if any of the inheritance parents or children are internal. This is important for redrawing.
const ObjectPtrList& GetPublicObjects( ) const
const ObjectPtrList& GetProtectedObjects( ) const
const ObjectPtrList& GetPrivateObjects( ) const
const InheritancePtrList& GetInheritanceParents( ) const
const InheritancePtrList& GetInheritanceChildren( ) const
const std::string& GetHeaderFile( ) const
const std::string& GetHTMLFile( ) const
bool GetExcludeHeader( ) const
bool GetExcludeHTML( ) const
bool GetChildClass( ) const
bool GetIsStruct( ) const
void SetHeaderFile( const std::string& F)
void SetHTMLFile( const std::string& F)
void SetExcludeHeader( bool b)
void SetExcludeHTML( bool b)
void SetChildClass( bool b)
void SetIsStruct( bool b)
protected:
private:
static const std::string XML_PUBLIC
static const std::string XML_PROTECTED
static const std::string XML_PRIVATE
static const std::string XML_HEADER_FILE
static const std::string XML_HTML_FILE
static const std::string XML_EXCLUDE_HEADER
static const std::string XML_EXCLUDE_HTML
static const std::string XML_IS_STRUCT
ClassObject( )
ObjectPtrList& GetList( AccessType Access)
const ObjectPtrList& GetList( AccessType Access) const
same as the other GetList, but with const. Handy for writing const functions
void ReadFromXml( XMLReader& Reader)
std::string ConvertChildrenToXml( const ObjectPtrList& Children)
std::string ConvertChildrenToHeader( const ObjectPtrList& Children, AccessType Access) const
std::string ConvertChildrenToHTML( AccessType Access) const
void ReadChildren( XMLReader& Reader, ObjectPtrList& Children)
boost::posix_time::ptime GetChildrenLastUpdatedTime( AccessType Access) const
friends
ObjectPtrList m_PublicObjects
a list of the public children
ObjectPtrList m_ProtectedObjects
a list of the protected children
ObjectPtrList m_PrivateObjects
a list of the private children
InheritancePtrList m_InheritanceParents
a list of the inheritance parents. this represent the classes that this class inherits from.
InheritancePtrList m_InheritanceChildren
a list of the inheritance children. These represent the classes that inherit from this object
std::string m_HeaderFile
path to the header file. Relative to the .kml file itself (if it's not an absolute path)
std::string m_HTMLFile
path to the HTML file. Will be placed under a directory called HTMLDocs which will be placed next to the kml file.
bool m_bExcludeHeader
should this header be excluded from the generation of all class headers?
bool m_bExcludeHTML
Should this HTML Doc be excluded from the docs?
bool m_bChildClass
a runtime flag to keep track of whether this is a top level class, or a class inside a class. This has meaning when the class dialog is displayed and we need to see if we should show the Misc page.
bool m_bIsStruct
If this is true then this class is actually a struct