00001 /* 00002 File: RadPane.h 00003 00004 Function: Display panes for radiosity mesh 00005 00006 Author: Andrew Willmott 00007 00008 Copyright: (c) 1996-2000, Andrew Willmott 00009 */ 00010 00011 #ifndef __RadPane__ 00012 #define __RadPane__ 00013 00014 #include "RadMethod.h" 00015 00016 #include "gcl/ScenePane.h" 00017 #include "gcl/Forms.h" 00018 00019 00020 FL_OBJECT *const msgPick = (FL_OBJECT *) 0x04; 00021 00022 class FormsScenePane : public ScenePane 00023 { 00024 public: 00025 FormsScenePane(Bool doubleBuf) : ScenePane(doubleBuf) {}; 00026 00027 Void SetParent(Form *parent); 00028 00029 Form *parent; 00030 }; 00031 00032 class HRElem; 00033 00034 class RadScenePane : public FormsScenePane 00035 { 00036 public: 00037 RadScenePane(Bool doubleBuf = true); 00038 00039 Void SetScene(scScenePtr scene); 00040 00041 Void StartDrag(Coord c, Int modifiers); 00042 Void EndDrag(Coord c, Int modifiers); 00043 Void Drag(Coord c, Int modifiers); 00044 Void SelectDrag(); 00045 Void Redraw(); 00046 00047 RadMethod *mesh; 00048 RadElem *selPatch[2]; 00049 HRElem *selElem[2]; 00050 Transform inverseTransform; 00051 00052 Bool enabled; 00053 }; 00054 00055 #endif