///////////////////////////////////////////////////////////////////////////// // Name: schema.h // Purpose: Data Designer Schema // Author: Daniel Horak // Modified by: // RCS-ID: $Id: schema.h,v 1.3 2003/12/28 18:51:43 horakdan Exp $ // Copyright: (c) Daniel Horak // Licence: GPL ///////////////////////////////////////////////////////////////////////////// #ifndef __SCHEMA_H #define __SCHEMA_H #include class DataDesignerProject; class DBObject; class DBModel; class DataDesignerSchema : public wxShapeCanvas { public: DataDesignerSchema(wxWindow *parent, DataDesignerProject *project); virtual void AddObjects(void); virtual void AddObject(DBObject *object); virtual void OnDraw(wxDC& dc); void OnPaint(wxPaintEvent& event); void SetScale(double scale) { m_scale = scale; } virtual void PrepareDC(wxDC& dc); private: double m_scale; DECLARE_EVENT_TABLE() protected: DataDesignerProject *m_project; }; class DataDesignerGlobalSchema : public DataDesignerSchema { public: DataDesignerGlobalSchema(wxWindow *parent, DataDesignerProject *project); virtual void AddObjects(void); // virtual void AddObject(DBObject *object); virtual void OnDraw(wxDC& dc); }; class DataDesignerModelSchema : public DataDesignerSchema { public: DataDesignerModelSchema(wxWindow *parent, DataDesignerProject *project, DBModel *model); virtual void AddObjects(void); // virtual void AddObject(DBObject *object); virtual void OnDraw(wxDC& dc); DBModel *m_model; }; #endif // __SCHEMA_H