Version: 0.6.0
gxgisproj.h
1 /******************************************************************************
2  * Project: wxGIS (GIS Catalog)
3  * Purpose: GIS Prolect classes
4  * Author: Dmitry Baryshnikov (aka Bishop), polimax@mail.ru
5  ******************************************************************************
6 * Copyright (C) 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 #pragma once
22 #include "wxgis/catalog/gxobject.h"
23 
31 class WXDLLIMPEXP_GIS_CLT wxGxQGISProjFile :
32  public wxGxObjectContainer,
33  public IGxObjectEdit,
34  public IGxObjectNoFilter
35 {
36  DECLARE_CLASS(wxGxQGISProjFile)
37 
38  struct _pg_data{
39  wxString sName;
40  wxString sPass;
41  wxString sPort;
42  wxString sAddres;
43  wxString sDBName;
44  wxArrayString saTables;
45  };
46 
47 public:
48  wxGxQGISProjFile(wxGxObject *oParent, const wxString &soName = wxEmptyString, const CPLString &soPath = "");
49  virtual ~wxGxQGISProjFile(void);
50  //wxGxObject
51  virtual wxString GetBaseName(void) const;
52  virtual wxString GetCategory(void) const {return wxString(_("QGIS Project"));};
53  virtual void Refresh(void);
54  //IGxObjectEdit
55  virtual bool Delete(void);
56  virtual bool CanDelete(void);
57  virtual bool Rename(const wxString &sNewName);
58  virtual bool CanRename(void);
59  virtual bool Copy(const CPLString &szDestPath, ITrackCancel* const pTrackCancel);
60  virtual bool CanCopy(const CPLString &szDestPath);
61  virtual bool Move(const CPLString &szDestPath, ITrackCancel* const pTrackCancel);
62  virtual bool CanMove(const CPLString &szDestPath);
63  //wxGxObjectContainer
64  virtual bool AreChildrenViewable(void) const;
65  virtual bool HasChildren(void);
66  virtual bool CanCreate(long nDataType, long DataSubtype);
67 protected:
68  //wxGxQGISProjFile
69  virtual void LoadChildren(void);
70 
71 protected:
72  bool m_bIsChildrenLoaded;
73 };
74 
75 //TODO: add support to Mapinfo WOR file
76 //wxGxWORProjFile
A TrackCancel interface class.
Definition: core.h:144
Definition: gxobject.h:78
Definition: gxgisproj.h:31
Definition: catalog.h:51
Definition: catalog.h:123
Definition: gxobject.h:37