Version: 0.6.0
gxdatasetui.h
1 /******************************************************************************
2  * Project: wxGIS (GIS Catalog)
3  * Purpose: wxGxDatasetUI classes.
4  * Author: Dmitry Baryshnikov (aka Bishop), polimax@mail.ru
5  ******************************************************************************
6 * Copyright (C) 2010-2011 Dmitry Baryshnikov
7 *
8 * This program is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation, either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program. If not, see <http://www.gnu.org/licenses/>.
20  ****************************************************************************/
21 #pragma once
22 
23 #include "wxgis/catalogui/catalogui.h"
24 #include "wxgis/catalog/gxdataset.h"
25 
33 class WXDLLIMPEXP_GIS_CLU wxGxTableUI :
34  public wxGxTable,
35  public IGxObjectUI,
36  public IGxObjectEditUI,
37  public IGxObjectWizard
38 {
39  DECLARE_CLASS(wxGxTableUI)
40 public:
41  wxGxTableUI(wxGISEnumTableType nType, wxGxObject *oParent, const wxString &soName = wxEmptyString, const CPLString &soPath = "", const wxIcon &LargeIcon = wxNullIcon, const wxIcon &SmallIcon = wxNullIcon);
42  virtual ~wxGxTableUI(void);
43  //IGxObjectUI
44  virtual wxIcon GetLargeImage(void);
45  virtual wxIcon GetSmallImage(void);
46  virtual wxString ContextMenu(void) const {return wxString(wxT("wxGxTable.ContextMenu"));};
47  virtual wxString NewMenu(void) const {return wxEmptyString;};//{return wxString(wxT("wxGxDataset.NewMenu"));};
48  //IGxObjectEditUI
49  virtual void EditProperties(wxWindow *parent);
50  //wxGxTable
51  virtual wxGISDataset* const GetDataset(bool bCached = true, ITrackCancel* const pTrackCancel = NULL);
52  //IGxObjectWizard
53  virtual bool Invoke(wxWindow* pParentWnd);
54 protected:
55  wxIcon m_LargeIcon, m_SmallIcon;
56 };
57 
65 class WXDLLIMPEXP_GIS_CLU wxGxFeatureDatasetUI :
66  public wxGxFeatureDataset,
67  public IGxObjectUI,
68  public IGxObjectEditUI,
69  public IGxObjectWizard
70 {
71  DECLARE_CLASS(wxGxFeatureDatasetUI)
72 public:
73  wxGxFeatureDatasetUI(wxGISEnumVectorDatasetType nType, wxGxObject *oParent, const wxString &soName = wxEmptyString, const CPLString &soPath = "", const wxIcon &LargeIcon = wxNullIcon, const wxIcon &SmallIcon = wxNullIcon);
74  virtual ~wxGxFeatureDatasetUI(void);
75  //IGxObjectUI
76  virtual wxIcon GetLargeImage(void);
77  virtual wxIcon GetSmallImage(void);
78  virtual wxString ContextMenu(void) const {return wxString(wxT("wxGxFeatureDataset.ContextMenu"));};
79  virtual wxString NewMenu(void) const {return wxEmptyString;};//wxString(wxT("wxGxShapefileDataset.NewMenu"))
80  //IGxObjectEditUI
81  virtual void EditProperties(wxWindow *parent);
82  //IGxObjectWizard
83  virtual bool Invoke(wxWindow* pParentWnd);
84  //wxGxTable
85  virtual wxGISDataset* const GetDataset(bool bCached = true, ITrackCancel* const pTrackCancel = NULL);
86 protected:
87  wxIcon m_LargeIcon, m_SmallIcon;
88 };
89 
97 class WXDLLIMPEXP_GIS_CLU wxGxRasterDatasetUI :
98  public wxGxRasterDataset,
99  public IGxObjectUI,
100  public IGxObjectEditUI,
101  public IGxObjectWizard
102 {
103  DECLARE_CLASS(wxGxRasterDatasetUI)
104 public:
105  wxGxRasterDatasetUI(wxGISEnumRasterDatasetType nType, wxGxObject *oParent, const wxString &soName = wxEmptyString, const CPLString &soPath = "", const wxIcon & LargeIcon = wxNullIcon, const wxIcon & SmallIcon = wxNullIcon);
106  virtual ~wxGxRasterDatasetUI(void);
107  //wxGxRasterDataset
108  virtual wxGISDataset* const GetDataset(bool bCached = true, ITrackCancel* const pTrackCancel = NULL);
109  //IGxObjectUI
110  virtual wxIcon GetLargeImage(void);
111  virtual wxIcon GetSmallImage(void);
112  virtual wxString ContextMenu(void) const {return wxString(wxT("wxGxRasterDataset.ContextMenu"));};
113  virtual wxString NewMenu(void) const {return wxEmptyString;};//wxString(wxT("wxGxRasterDataset.NewMenu"));};
114  //IGxObjectEditUI
115  virtual void EditProperties(wxWindow *parent);
116  //IGxObjectWizard
117  virtual bool Invoke(wxWindow* pParentWnd);
118 protected:
119  wxIcon m_LargeIcon, m_SmallIcon;
120 };
Definition: gxdatasetui.h:33
Definition: gxdataset.h:151
A TrackCancel interface class.
Definition: core.h:144
Definition: catalogui.h:73
Definition: catalogui.h:60
Definition: dataset.h:33
Definition: catalogui.h:90
Definition: gxdataset.h:124
Definition: gxdatasetui.h:97
Definition: gxdatasetui.h:65
Definition: gxdataset.h:177
Definition: gxobject.h:37