Version: 0.6.0
gxssdatasetui.h
1 /******************************************************************************
2  * Project: wxGIS (GIS Catalog)
3  * Purpose: Spreadsheet object ui classes.
4  * Author: Dmitry Baryshnikov (aka Bishop), polimax@mail.ru
5  ******************************************************************************
6 * Copyright (C) 2014 Dmitry Baryshnikov
7 * Copyright (C) 2014 NextGIS
8 *
9 * This program is free software: you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation, either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program. If not, see <http://www.gnu.org/licenses/>.
21  ****************************************************************************/
22 #pragma once
23 
24 #include "wxgis/catalogui/catalogui.h"
25 #include "wxgis/catalog/gxssdataset.h"
26 
34 class WXDLLIMPEXP_GIS_CLU wxGxSpreadsheetDatasetUI :
36  public IGxObjectUI,
37  public IGxObjectEditUI,
38  public wxThreadHelper
39 {
40  DECLARE_CLASS(wxGxSpreadsheetDatasetUI)
41 public:
42  wxGxSpreadsheetDatasetUI(wxGISEnumTableType eType, wxGxObject *oParent, const wxString &soName = wxEmptyString, const CPLString &soPath = "", const wxIcon &LargeIcon = wxNullIcon, const wxIcon &SmallIcon = wxNullIcon, const wxIcon &SubLargeIcon = wxNullIcon, const wxIcon &SubSmallIcon = wxNullIcon);
43  virtual ~wxGxSpreadsheetDatasetUI(void);
44  //IGxObjectUI
45  virtual wxIcon GetLargeImage(void);
46  virtual wxIcon GetSmallImage(void);
47  virtual wxString ContextMenu(void) const {return wxString(wxT("wxGxFeatureDataset.ContextMenu"));};
48  virtual wxString NewMenu(void) const {return wxString(wxT("wxGxSpreadsheetDataset.NewMenu"));};
49  //IGxObjectEditUI
50  virtual void EditProperties(wxWindow *parent);
51  //wxGxKMLDataset
52  virtual wxGISDataset* const GetDataset(bool bCache, ITrackCancel* const pTrackCancel = NULL);
53  virtual void LoadChildren(void);
54 protected:
55  virtual wxThread::ExitCode Entry();
56  bool CreateAndRunCheckThread(void);
57 protected:
58  wxIcon m_LargeIcon, m_SmallIcon;
59  wxIcon m_LargeSubIcon, m_SmallSubIcon;
60  long m_nPendUId;
61 };
62 
70 class WXDLLIMPEXP_GIS_CLU wxGxSpreadsheetSubDatasetUI :
72  public IGxObjectUI,
73  public IGxObjectEditUI
74 {
75  DECLARE_CLASS(wxGxSpreadsheetSubDatasetUI)
76 public:
77  wxGxSpreadsheetSubDatasetUI(wxGISEnumTableType nType, wxGISDataset* pwxGISDataset, wxGxObject *oParent, const wxString &soName = wxEmptyString, const CPLString &soPath = "", const wxIcon &LargeIcon = wxNullIcon, const wxIcon &SmallIcon = wxNullIcon);
78  virtual ~wxGxSpreadsheetSubDatasetUI(void);
79  //IGxObjectUI
80  virtual wxIcon GetLargeImage(void);
81  virtual wxIcon GetSmallImage(void);
82  virtual wxString ContextMenu(void) const {return wxString(wxT("wxGxSpreadsheetSubDatasetUI.ContextMenu"));};
83  virtual wxString NewMenu(void) const {return wxEmptyString;};
84  //IGxObjectEditUI
85  virtual void EditProperties(wxWindow *parent);
86 protected:
87  wxIcon m_LargeIcon, m_SmallIcon;
88 };
Definition: gxssdatasetui.h:34
Definition: gxssdatasetui.h:70
A TrackCancel interface class.
Definition: core.h:144
Definition: catalogui.h:73
Definition: dataset.h:33
Definition: catalogui.h:90
Definition: gxssdataset.h:72
Definition: gxssdataset.h:36
Definition: gxobject.h:37