BT-MatML-Editor 0.1.4
Editor for the MatML 3.1 XML Schema
BT_MatML_Form_GUI.h
1
2// Name: BT_MatML_Form_GUI.h
3// Purpose: Classes of Form_GUI Base and Derived.
4// Author: Paul McGrath
5// Modified by:
6// Created:
7// Copyright: (c) Paul McGrath
8// Licence: CC licence
10#pragma once
11
12
13// For compilers that support precompilation, includes "wx/wx.h".
14#include "wx/wxprec.h"
15
16
17#ifndef WX_PRECOMP
18#include "wx/wx.h"
19#endif
20
21#include <wx/dcsvg.h>
22#include <wx/notebook.h>
23#include <wx/string.h>
24
25#include <math.h>
26#include <string.h>
27#include "StringStream.h"
28
29#include "matml31.hxx"
30
31#include "BT_MatML_Base_GUI.h"
32#include "BT_MatML_MatMLInfo_GUI.h"
33
34#include "BT_MatML_GUI.h"
35#include "BT_MatML_MatMLTreeItemData.h"
36#include "BT_MatML_TreeCtrlSorted.h"
37
38
39
40namespace bellshire {
41
43 {
44 public:
45 wxNotebook* m_GUI;
46
48 Form_GUI_Base(wxWindow* parent);
49 static wxNotebook* Create(wxWindow* parent);
50 virtual ~Form_GUI_Base();
51
52 void Show(bool show = true) { if (m_GUI != nullptr) m_GUI->Show(show); };
53 bool IsShown() { return m_GUI->IsShown(); };
54 wxNotebook* get() { return m_GUI; };
55
56 void Update( Form* element);
57 static wxTreeItemId SetupMatMLTreeCtrl(TreeCtrlSorted*& MatMLTreeCtrl,
58 const wxTreeItemId& ParentId,
60 const wxTreeItemId& PreviousId
61 );
62
63 void SetConnect() {};
64 virtual void OnInsertDescription(wxCommandEvent& event) { event.Skip(); }
65 virtual void OnInsertGeometry(wxCommandEvent& event) { event.Skip(); }
66 virtual void OnInsertNotes(wxCommandEvent& event) { event.Skip(); }
67
68 virtual void OnDeleteGeometry(wxCommandEvent& event) { event.Skip(); }
69 virtual void OnDeleteNotes(wxCommandEvent& event) { event.Skip(); }
70
71 virtual void OnPasteDescription(wxCommandEvent& event) { event.Skip(); }
72 virtual void OnPasteGeometry(wxCommandEvent& event) { event.Skip(); }
73 virtual void OnPasteNotes(wxCommandEvent& event) { event.Skip(); }
74
75 private:
76 };
77
78 class Form_GUI : public Form_GUI_Base
79 {
80 public:
81 TreeCtrlSorted* m_MatMLTreeCtrl;//Required before Event Handling.
82 ::boost::any m_MatMLItemToCopy;//Required before Paste Event Handling.
83
84 Form_GUI();
85 Form_GUI(wxWindow* parent);
86
87 virtual ~Form_GUI();
88
89 void SetEvtHandlerVar(TreeCtrlSorted*& MatMLTreeCtrl);//Required before Event Handling.
90 void SetMatMLTreeCtrl(TreeCtrlSorted*& MatMLTreeCtrl);
91 void SetMatMLItemToCopy(const ::boost::any& MatMLItemToCopy);//Required before paste Event Handling.
92
93 //Overwrites the base class functions
94 void OnInsertDescription(wxCommandEvent& event);
95 void OnInsertGeometry(wxCommandEvent& event);
96 void OnInsertNotes(wxCommandEvent& event);
97
98 void OnDeleteGeometry(wxCommandEvent& event);
99 void OnDeleteNotes(wxCommandEvent& event);
100
101 void OnPasteDescription(wxCommandEvent& event);
102 void OnPasteGeometry(wxCommandEvent& event);
103 void OnPasteNotes(wxCommandEvent& event);
104
105 private:
106 };
107
108
109}; //namespace bellshire end
110#pragma once
Definition: matml31.hxx:1705
Definition: matml31.hxx:1804
Definition: BT_MatML_Form_GUI.h:43
static wxNotebook * Create(wxWindow *parent)
Create the GUI for the Form MatML Data and Info
Definition: BT_MatML_Form_GUI.cpp:28
static wxTreeItemId SetupMatMLTreeCtrl(TreeCtrlSorted *&MatMLTreeCtrl, const wxTreeItemId &ParentId, Form &Element, const wxTreeItemId &PreviousId)
This set-up the Parent MatML Data into a wxTreeCtrl element and then call on the Children to do the s...
Definition: BT_MatML_Form_GUI.cpp:75
Definition: BT_MatML_Form_GUI.h:79
void OnPasteDescription(wxCommandEvent &event)
Paste Discription on the Form Parent Name Type is used instead of the Discription as Discription is a...
Definition: BT_MatML_Form_GUI.cpp:211
void SetEvtHandlerVar(TreeCtrlSorted *&MatMLTreeCtrl)
Function used to set up this objects member variables which is used in the EventHandler's functions....
Definition: BT_MatML_Form_GUI.cpp:149
virtual ~Form_GUI()
Destructor for the derived class
Definition: BT_MatML_Form_GUI.cpp:140
Form_GUI()
Constructor for the derived class
Definition: BT_MatML_Form_GUI.cpp:118
void SetMatMLTreeCtrl(TreeCtrlSorted *&MatMLTreeCtrl)
Set the Event Handler associated with the MatML wxTreeCtrl Required before using the derived class's ...
Definition: BT_MatML_Form_GUI.cpp:159
Definition: BT_MatML_Base_GUI.h:163
Definition: BT_MatML_TreeCtrlSorted.h:19
Contains the GUI and GUI associated classes. OnInit() calls the creation of the MaterialFrame GUI
Definition: BT_MatML_App.h:39