/////////////////////////////////////////////////////////////////////////////
// Name:        datadesigner.h
// Purpose:     Main Program Header
// Author:      Daniel Horak
// Modified by:
// RCS-ID:      $Id: datadesigner.h,v 1.1.1.1 2003/06/06 11:28:04 horakdan Exp $
// Copyright:   (c) Daniel Horak
// Licence:     GPL
/////////////////////////////////////////////////////////////////////////////

#ifndef __DATADESIGNER_H
#define __DATADESIGNER_H

#include <wx/mdi.h>
#include <wx/docview.h>
#include <wx/docmdi.h>

class wxDocManager;
class DataDesignerProject;
class DataDesignerSplitter;

// Main application class
class DataDesignerApp : public wxApp
{
public:
	DataDesignerApp();
	
	virtual bool OnInit();
	virtual int OnExit();
	
	wxMDIChildFrame *CreateChildFrame(wxDocument *doc, wxView *view);

protected:
	wxDocManager	*m_docmanager;
};

DECLARE_APP(DataDesignerApp)

// Main window
class DataDesignerFrame : public wxDocMDIParentFrame
{
	DECLARE_CLASS(DataDesignerFrame)
public:
	DataDesignerFrame(wxDocManager *mgr, wxFrame *frame, const wxString& title,
		const wxPoint& pos, const wxSize& size, long type);

	void OnAbout(wxCommandEvent& event);

	DataDesignerSplitter	*CreateSplitter(wxView *view, wxMDIChildFrame *parent);
	
private:
	DECLARE_EVENT_TABLE()
};

extern DataDesignerFrame *GetMainFrame();

// IDs for the controls and the menu commands
enum
{
	// menu items
	DataDesigner_About=100,
	DataDesigner_Entity,
	DataDesigner_Domain,
	DataDesigner_View,
	DataDesigner_Sequence,
	DataDesigner_Relation,
	DataDesigner_Procedure,
	DataDesigner_ZoomIn,
	DataDesigner_ZoomOut,
	DataDesigner_Zoom100,
	DataDesigner_ExportDDL,
};

#endif // __DATADESIGNER_H


syntax highlighted by Code2HTML, v. 0.9.1