00001 #ifndef AdvancedProjectH 00002 #define AdvancedProjectH 00003 /******************************************************************************* 00004 Copyright 2001,2002,2003 Petr Kulhanek 00005 00006 This file is part of Core plugin. 00007 00008 Core plugin is free software; you can redistribute it and/or modify 00009 it under the terms of the GNU General Public License as published by 00010 the Free Software Foundation; either version 2 of the License, or 00011 (at your option) any later version. 00012 00013 Core plugin is distributed in the hope that it will be useful, 00014 but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 GNU General Public License for more details. 00017 00018 You should have received a copy of the GNU General Public License 00019 along with Core plugin; if not, write to the Free Software 00020 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00021 *******************************************************************************/ 00022 /******************************************************************************* 00023 ** PROJECT: Project NEMESIS 00024 ** FILE: AdvancedProject 00025 ** FUNCTION: 00026 ** VERSION: 1.0 00027 ** LANGUAGE: CBuilder C++ 00028 ** TARGET COMPUTER: IBM PC 00029 ** PROGRAMMER: Petr Kulhánek 00030 ** HISTORY: 00031 VERSION DATE NOTE 00032 1.0 2001-05-12 extension of project class 00033 *******************************************************************************/ 00034 00038 /* HEADER FILES ***************************************************************/ 00039 00040 #include "CoreMainHeader.h" 00041 #include "MouseHandler.h" 00042 #include "GraphicsObjectsList.h" 00043 #include "Project.h" 00044 #include "SceneStatusBar.h" 00045 00046 /* END OF HEADER FILES ********************************************************/ 00047 00048 /* CLASS DEFINITION ***********************************************************/ 00049 00051 00056 class NEMESIS_CORE_PACKAGE CAdvancedProject : public CProject{ 00057 public: 00058 // constructor a destructor --------------------------------------------------- 00059 __fastcall CAdvancedProject(CPluginObjectInfo* objectinfo); 00060 __fastcall ~CAdvancedProject(void); 00061 00063 void __fastcall Activate(void); 00065 void __fastcall Deactivate(void); 00066 00068 virtual void __fastcall RepaintProject(void); 00069 00071 virtual bool __fastcall LoadData(void); 00073 virtual bool __fastcall SaveData(void); 00074 00075 // public data section -------------------------------------------------------- 00077 CMouseHandler MouseHandler; 00079 CGraphicsObjectsList GraphicsObjects; 00081 CSelection Selection; 00083 CSceneStatusBar StatusBar; 00084 00086 virtual CExtObject* __fastcall FindObject(int index); 00088 virtual void __fastcall PrepareReadOnly(void); 00089 }; 00090 00091 // ----------------------------------------------------------------------------- 00092 00093 #endif