///////////////////////////////////////////////////////////////////////////// // Name: dbindex.h // Purpose: Database Objects // Author: Daniel Horak // Modified by: // RCS-ID: $Id: dbindex.h,v 1.2 2004/01/01 13:56:19 horakdan Exp $ // Copyright: (c) Daniel Horak // Licence: GPL ///////////////////////////////////////////////////////////////////////////// #ifndef __DBINDEX_H #define __DBINDEX_H class DBSimpleAttributeContainer; class DBSimpleAttributeListCtrl; class DBIndex : public DBObject { public: DBIndex(DataDesignerProject *project, DataDesignerContainer *container); virtual ~DBIndex(); virtual wxTreeItemId AppendItem(); virtual wxDialog *Editor(bool edit); virtual void LoadXmlNode(wxXmlNode *node); virtual wxXmlNode *GetXmlNode(); bool m_unique; DBSimpleAttributeContainer *m_attrs; }; class DBIndexEditor : public DBObjectEditor { public: DBIndexEditor(DBObject *object, bool edit); virtual ~DBIndexEditor(); virtual bool TransferDataFromWindow(); virtual bool TransferDataToWindow(); void OnApply(wxCommandEvent& event); protected: wxPanel *m_page_attrs; DBSimpleAttributeListCtrl *m_list_attrs; private: wxCheckBox *c1; // unique DECLARE_EVENT_TABLE() }; class DBIndexContainer : public DataDesignerContainer { public: DBIndexContainer(DataDesignerProject *project, const wxTreeItemId& id); virtual ~DBIndexContainer() { } virtual DBObject *CreateObject(); virtual void ShowList(); }; class DBIndexListCtrl : public DBObjectListCtrl { public: DBIndexListCtrl(wxWindow *parent, DataDesignerContainer *container); virtual ~DBIndexListCtrl(); virtual void SetObject(long item, DBObject *object); }; #endif // __DBINDEX_H