///////////////////////////////////////////////////////////////////////////// // Name: project.h // Purpose: Data Designer Project // Author: Daniel Horak // Modified by: // RCS-ID: $Id: project.h,v 1.4 2004/01/04 18:32:16 horakdan Exp $ // Copyright: (c) Daniel Horak // Licence: GPL ///////////////////////////////////////////////////////////////////////////// #ifndef __PROJECT_H #define __PROJECT_H #include #include "itemdata.h" #include "container.h" class DBServer; class DBProject; class DataDesignerSchema; class DataDesignerSplitter; class DataDesignerProject : public wxTreeCtrl { public: DataDesignerProject(DataDesignerSplitter *splitter); ~DataDesignerProject(); bool Open(wxInputStream& stream); bool Save(wxOutputStream& stream); void DeleteAllObjects(); bool NewObject(DataDesignerContainer *top); void SwapItems(wxTreeItemId item1, wxTreeItemId item2); void OnItemRightClick(wxTreeEvent& event); void OnItemActivated(wxTreeEvent& event); void OnItemSelected(wxTreeEvent& event); void OnItemBeginLabelEdit(wxTreeEvent& event); void OnItemEndLabelEdit(wxTreeEvent& event); void OnItemKeyDown(wxTreeEvent& event); DataDesignerSplitter *GetSplitter() { return m_splitter; } DataDesignerSchema *GetSchema() { return m_schema; } DBServer *GetServer() { return m_server; } bool IsInitialized() { return m_initialized; } DataDesignerContainer *m_top_domains, *m_top_entities, *m_top_views, *m_top_sequences, *m_top_relations, *m_top_procedures, *m_top_models; private: wxTreeItemId m_projectid; DBProject *m_dbproject; wxTreeItemId m_schemaid; DataDesignerSplitter *m_splitter; DataDesignerSchema *m_schema; bool m_initialized; DBServer *m_server; DECLARE_EVENT_TABLE() }; #endif // __PROJECT_H