Cafu Engine
DialogCreateArch.hpp
1 /*
2 Cafu Engine, http://www.cafu.de/
3 Copyright (c) Carsten Fuchs and other contributors.
4 This project is licensed under the terms of the MIT license.
5 */
6 
7 #ifndef CAFU_DIALOG_CREATE_ARCH_HPP_INCLUDED
8 #define CAFU_DIALOG_CREATE_ARCH_HPP_INCLUDED
9 
10 #include "Math3D/Vector3.hpp"
11 #include "Math3D/BoundingBox.hpp"
12 #include "wx/wx.h"
13 
14 
15 class AxesInfoT;
16 class EditorMaterialI;
17 class MapPrimitiveT;
18 class wxSpinCtrl;
19 class wxSpinEvent;
20 
21 
22 class ArchDialogT : public wxDialog
23 {
24  public:
25 
26  ArchDialogT(const BoundingBox3fT& BB, const AxesInfoT& AxesInfo, wxWindow* Parent=NULL);
27 
28  ArrayT<MapPrimitiveT*> GetArch(EditorMaterialI* Material) const;
29 
30 
31  private:
32 
33  class PreviewWinT;
34 
35  void OnSpinEvent(wxSpinEvent& event);
36 
37  const BoundingBox3fT m_BB;
38  int m_WallWidth;
39  int m_NrOfSegments;
40  int m_Arc;
41  int m_StartAngle;
42  int m_AddHeight;
43  PreviewWinT* m_PreviewWin;
44 
45  DECLARE_EVENT_TABLE()
46 };
47 
48 #endif
This class adds no functionality of its own, but only exists for proper type separation.
Definition: MapPrimitive.hpp:21
Definition: DialogCreateArch.cpp:21
Definition: EditorMaterial.hpp:21
This class describes how the three world-space axes are mapped to the two screen- or window-space axe...
Definition: AxesInfo.hpp:15
Definition: DialogCreateArch.hpp:22