Version: 0.6.0
catalogui.h
1 /******************************************************************************
2  * Project: wxGIS (GIS Catalog)
3  * Purpose: wxCatalogUI main header.
4  * Author: Dmitry Baryshnikov (aka Bishop), polimax@mail.ru
5  ******************************************************************************
6 * Copyright (C) 2009-2012,2014 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 
22 #pragma once
23 
24 #include "wxgis/base.h"
25 #include "wxgis/catalog/catalog.h"
26 #include "wxgis/framework/framework.h"
27 
28 #include <wx/dnd.h>
29 #include <wx/dataobj.h>
30 
31 #define TREECTRLID 1005 //wxGxCatalog tree
32 #define LISTCTRLID 1006 //wxGxCatalog contents view
33 #define TABLECTRLID 1007 //wxGxCatalog table view
34 #define TABCTRLID 1008 //wxGxCatalog tab with views - contents, preview & etc.
35 #define MAPCTRLID 1009 //wxGxCatalog map view
36 //1010 reserved for NOTFIRESELID from catalog.h
37 #define FILTERCOMBO 1011 //wxGxObjectDialog
38 #define WXGISHIGHEST 1200 //
39 
47 {
48 public:
49  virtual ~IGxObjectSort(void){};
50  virtual bool IsAlwaysTop(void) = 0;
51  virtual bool IsSortEnabled(void) = 0;
52 };
53 
61 {
62 public:
63  virtual ~IGxObjectWizard(void){};
64  virtual bool Invoke(wxWindow* pParentWnd) = 0;
65 };
66 
74 {
75 public:
76  virtual ~IGxObjectUI(void){};
77  virtual wxIcon GetLargeImage(void) = 0;
78  virtual wxIcon GetSmallImage(void) = 0;
79  virtual wxString ContextMenu(void) const = 0;
80  virtual wxString NewMenu(void) const = 0;
81  //virtual wxDataFormat GetDataFormat(void){return wxDataFormat(wxDF_FILENAME);};
82 };
83 
91 {
92 public:
93  virtual ~IGxObjectEditUI(void){};
94  virtual void EditProperties(wxWindow *parent){};
95 };
96 
97 enum wxGISEnumContentsViewStyle
98 {
99  enumGISCVUndefined = 0,
100  enumGISCVReport,
101  enumGISCVSmall,
102  enumGISCVLarge,
103  enumGISCVList
104 };
105 
113 {
114 public:
115  virtual ~IGxContentsView(void){};
116  virtual void SelectAll(void) = 0;
117  virtual bool CanSetStyle(void) = 0;
118  virtual void SetStyle(wxGISEnumContentsViewStyle style) = 0;
119  virtual wxGISEnumContentsViewStyle GetStyle(void) = 0;
120 };
121 
129 {
130 public:
131  virtual ~IGxDropTarget(void){};
132  virtual wxDragResult CanDrop(wxDragResult def) { return def; };
133  virtual bool Drop(const wxArrayString& GxObjects, bool bMove) = 0;
134 };
135 
143 {
144 public:
145  virtual ~IGxObjectTreeAttr(void){};
146  virtual bool IsBold(void) = 0;
147  virtual wxColour GetColor(void) = 0;
148  virtual bool ShowCount(void) = 0;
149  virtual size_t GetCount(void) = 0;
150 };
Definition: catalogui.h:73
Definition: catalogui.h:142
Definition: catalogui.h:60
Definition: catalogui.h:90
Definition: catalogui.h:128
Definition: catalogui.h:46
Definition: catalogui.h:112