QGIS API Documentation
2.8.2-Wien
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
src
gui
qgsprojectionselectionwidget.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsprojectionselectionwidget.h
3
--------------------------------------
4
Date : 05.01.2015
5
Copyright : (C) 2015 Denis Rouzaud
6
Email : denis.rouzaud@gmail.com
7
***************************************************************************
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
***************************************************************************/
15
16
17
#ifndef QGSPROJECTIONSELECTIONWIDGET_H
18
#define QGSPROJECTIONSELECTIONWIDGET_H
19
20
#include <QWidget>
21
#include <QLineEdit>
22
#include <QToolButton>
23
#include <QComboBox>
24
25
#include "
qgscoordinatereferencesystem.h
"
26
27
class
QgsGenericProjectionSelector
;
28
35
class
GUI_EXPORT
QgsProjectionSelectionWidget
:
public
QWidget
36
{
37
Q_OBJECT
38
public
:
39
42
enum
CrsOption
43
{
44
LayerCrs
,
/*< optional layer CRS */
45
ProjectCrs
,
/*< current project CRS (if OTF reprojection enabled) */
46
CurrentCrs
,
/*< current user selected CRS */
47
DefaultCrs
,
/*< global default QGIS CRS */
48
RecentCrs
/*< recently used CRS */
49
};
50
51
explicit
QgsProjectionSelectionWidget
( QWidget *parent = 0 );
52
53
/* Returns a pointer to the projection selector dialog used by the widget.
54
* Can be used to modify how the projection selector dialog behaves.
55
* @returns projection selector dialog
56
*/
57
QgsGenericProjectionSelector
*
dialog
() {
return
mDialog; }
58
59
/* Returns the currently selected CRS for the widget
60
* @returns current CRS
61
*/
62
QgsCoordinateReferenceSystem
crs()
const
;
63
64
/* Sets whether a predefined CRS option should be shown in the widget.
65
* @param option CRS option to show/hide
66
* @param visible whether the option should be shown
67
*/
68
void
setOptionVisible(
const
CrsOption option,
const
bool
visible );
69
70
signals:
71
72
/* Emitted when the selected CRS is changed
73
*/
74
void
crsChanged(
QgsCoordinateReferenceSystem
);
75
76
public
slots:
77
78
/* Sets the current CRS for the widget
79
* @param crs new CRS
80
*/
81
void
setCrs(
const
QgsCoordinateReferenceSystem
& crs );
82
83
/* Sets the layer CRS for the widget. If set, this will be added as an option
84
* to the preset CRSes shown in the widget.
85
* @param crs layer CRS
86
*/
87
void
setLayerCrs(
const
QgsCoordinateReferenceSystem
& crs );
88
89
/* Opens the dialog for selecting a new CRS
90
*/
91
void
selectCrs();
92
93
private
:
94
95
QgsCoordinateReferenceSystem
mCrs;
96
QgsCoordinateReferenceSystem
mLayerCrs;
97
QgsCoordinateReferenceSystem
mProjectCrs;
98
QgsCoordinateReferenceSystem
mDefaultCrs;
99
QComboBox* mCrsComboBox;
100
QToolButton* mButton;
101
QgsGenericProjectionSelector
* mDialog;
102
103
void
addProjectCrsOption();
104
void
addDefaultCrsOption();
105
void
addRecentCrs();
106
bool
crsIsShown(
const
long
srsid )
const
;
107
108
int
firstRecentCrsIndex()
const
;
109
110
private
slots:
111
112
void
comboIndexChanged(
int
idx );
113
114
};
115
116
#endif // QGSPROJECTIONSELECTIONWIDGET_H
Generated on Sun May 10 2015 16:33:26 for QGIS API Documentation by
1.8.1.2