17#ifndef _OBJECTDEFINITIONLISTDLG_H_
18#define _OBJECTDEFINITIONLISTDLG_H_
20#include <wx/statline.h>
21#include <wx/valtext.h>
23#include "../core/prjdefmemmanage.h"
25#include "../core/tmvalidator.h"
26#include "listgenreport_status.h"
30#define ID_OBJECTDEFINITIONLISTDLG 10030
31#define ID_DLGODD_LIST_LYR_NAME 10265
32#define ID_DLGODD_FREQUENCY 10266
33#define SYMBOL_OBJECTDEFINITIONLISTDLG_STYLE wxCAPTION | wxRESIZE_BORDER | wxSYSTEM_MENU | wxCLOSE_BOX | wxTAB_TRAVERSAL
34#define SYMBOL_OBJECTDEFINITIONLISTDLG_TITLE _("Edit Object Kind")
35#define SYMBOL_OBJECTDEFINITIONLISTDLG_IDNAME ID_OBJECTDEFINITIONLISTDLG
36#define SYMBOL_OBJECTDEFINITIONLISTDLG_SIZE wxSize(400, 300)
37#define SYMBOL_OBJECTDEFINITIONLISTDLG_POSITION wxDefaultPosition
46 wxTextCtrl* m_DLGODD_Code;
47 wxTextCtrl* m_DLGODD_Description;
48 wxChoice* m_DLGODD_List_Lyr_Name;
49 wxRadioBox* m_DLGODD_Frequency;
50 wxButton* m_DLGODD_SaveBtn;
53 void OnIdleActivateOKButton(wxIdleEvent& event);
55 virtual bool TransferDataToWindow();
57 virtual bool TransferDataFromWindow();
72 wxWindowID
id = SYMBOL_OBJECTDEFINITIONLISTDLG_IDNAME,
73 const wxString& caption = SYMBOL_OBJECTDEFINITIONLISTDLG_TITLE,
74 const wxPoint& pos = SYMBOL_OBJECTDEFINITIONLISTDLG_POSITION,
75 const wxSize& size = SYMBOL_OBJECTDEFINITIONLISTDLG_SIZE,
76 long style = SYMBOL_OBJECTDEFINITIONLISTDLG_STYLE);
80 bool Create(wxWindow* parent, wxWindowID
id = SYMBOL_OBJECTDEFINITIONLISTDLG_IDNAME,
81 const wxString& caption = SYMBOL_OBJECTDEFINITIONLISTDLG_TITLE,
82 const wxPoint& pos = SYMBOL_OBJECTDEFINITIONLISTDLG_POSITION,
83 const wxSize& size = SYMBOL_OBJECTDEFINITIONLISTDLG_SIZE,
84 long style = SYMBOL_OBJECTDEFINITIONLISTDLG_STYLE);
88 void CreateControls();
91 m_ObjectObj = myObjectObj;
98 PRJDEF_LAYERS_TYPE m_layertype;
100 wxCheckBox* m_CheckBox;
101 wxChoice* m_ChoiceLayer;
109 static int iAddItems;
112 bool SetListText(
int ilayertype);
114 wxCheckBoxState GetFreqStatus(
int iIndex = -1);
116 wxString GetLayerStatus(
int iIndex = -1);
119 virtual void BeforeAdding();
121 virtual void AfterAdding(
bool bRealyAddItem);
123 virtual void BeforeDeleting();
125 virtual void BeforeEditing();
127 virtual void AfterEditing(
bool bRealyEdited);
129 bool m_bAscending[4];
131 virtual void OnSortColumns(wxListEvent& event);
134 void OnItemSelectChange(wxListEvent& event);
136 DECLARE_EVENT_TABLE()
141 DataBaseTM* database, wxArrayString* pColsName, wxArrayInt* pColsSize =
nullptr,
142 wxSize size = wxDefaultSize);
151 void SetListSpatialType(
int iSpatialType) {
152 m_ListSpatType = iSpatialType;
159 void SetListCtrls(wxChoice* layerchoice, wxCheckBox* checkboxfreq =
nullptr);
163 void SetLayerStatus(
const wxString& layer, wxArrayLong* iIndexes);
Definition database_tm.h:80
Enhance the ListGenReportWithDialog for supporting status bar.
Definition listgenreport_status.h:50
Definition objectdefinitionlistdlg.h:40
Definition objectdefinitionlistdlg.h:96
void SetObjectToList(ProjectDefMemoryObjects *object, int iIndex=-1)
Update list values with ProjectDefMemoryObjects.
Definition objectdefinitionlistdlg.cpp:424
ObjectDefinitionList(wxWindow *parent, wxWindowID id, PrjDefMemManage *memory, PRJDEF_LAYERS_TYPE paneltype, DataBaseTM *database, wxArrayString *pColsName, wxArrayInt *pColsSize=nullptr, wxSize size=wxDefaultSize)
Constructor.
Definition objectdefinitionlistdlg.cpp:202
void GetObjectFromList(ProjectDefMemoryObjects *object, int iIndex)
Get list values into ProjectDefMemoryObjects.
Definition objectdefinitionlistdlg.cpp:458
void SetLayerStatus(const wxString &layer, wxArrayLong *iIndexes)
Update layer name in response to event.
Definition objectdefinitionlistdlg.cpp:389
~ObjectDefinitionList()
Destructor.
Definition objectdefinitionlistdlg.cpp:223
void SetFreqStatus(int frequency, wxArrayLong *iIndexes)
Update layer freqency in response to event.
Definition objectdefinitionlistdlg.cpp:354
Definition prjdefmemmanage.h:54
Storing object properties in memory.
Definition projectdefmemory.h:175
Storing project properties in memory.