QGIS API Documentation  2.99.0-Master (19b062c)
qgsnewhttpconnection.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsnewhttpconnection.cpp - selector for a new HTTP server for WMS, etc.
3  -------------------
4  begin : 3 April 2005
5  copyright : (C) 2005 by Brendan Morley
6  email : morb at ozemail dot com dot au
7  ***************************************************************************/
8 
9 /***************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  ***************************************************************************/
17 
18 #ifndef QGSNEWHTTPCONNECTION_H
19 #define QGSNEWHTTPCONNECTION_H
20 
21 #include "qgis_sip.h"
22 #include "ui_qgsnewhttpconnectionbase.h"
23 #include "qgsguiutils.h"
24 #include "qgis_gui.h"
25 
27 
33 class GUI_EXPORT QgsNewHttpConnection : public QDialog, private Ui::QgsNewHttpConnectionBase
34 {
35  Q_OBJECT
36 
37  public:
38 
44  {
45  ConnectionWfs = 1 << 1,
46  ConnectionWms = 1 << 2,
47  ConnectionWcs = 1 << 3,
48  ConnectionOther = 1 << 4,
49  };
50  Q_DECLARE_FLAGS( ConnectionTypes, ConnectionType )
51 
52 
56  enum Flag
57  {
58  FlagShowTestConnection = 1 << 1,
59  FlagHideAuthenticationGroup = 1 << 2,
60  };
61  Q_DECLARE_FLAGS( Flags, Flag )
62 
63 
72  QgsNewHttpConnection( QWidget *parent SIP_TRANSFERTHIS = nullptr,
73  QgsNewHttpConnection::ConnectionTypes types = ConnectionWms,
74  const QString &baseKey = "qgis/connections-wms/",
75  const QString &connectionName = QString(),
76  QgsNewHttpConnection::Flags flags = 0,
77  Qt::WindowFlags fl = QgsGuiUtils::ModalDialogFlags );
78 
83  QString name() const;
84 
89  QString url() const;
90 
91  public slots:
92 
93  void accept() override;
94 
95  private slots:
96 
97  void nameChanged( const QString & );
98  void urlChanged( const QString & );
99  void updateOkButtonState();
100 
101  protected:
102 
108  virtual bool validate();
109 
114  QPushButton *testConnectButton();
115 
121  virtual QString wfsSettingsKey( const QString &base, const QString &connectionName ) const;
122 
128  virtual QString wmsSettingsKey( const QString &base, const QString &connectionName ) const;
129 
135  void updateServiceSpecificSettings();
136 
137  private:
138 
139  ConnectionTypes mTypes = ConnectionWms;
140 
141  QString mBaseKey;
142  QString mCredentialsBaseKey;
143  QString mOriginalConnName; //store initial name to delete entry in case of rename
144  void showHelp();
145 
146 };
147 
148 Q_DECLARE_OPERATORS_FOR_FLAGS( QgsNewHttpConnection::ConnectionTypes )
149 Q_DECLARE_OPERATORS_FOR_FLAGS( QgsNewHttpConnection::Flags )
150 
151 // clazy:excludeall=qstring-allocations
152 
153 #endif // QGSNEWHTTPCONNECTION_H
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:46
Widget for entering authentication credentials both in the form username/password and by using QGIS A...
Flag
Flags controlling dialog behavior.
ConnectionType
Available connection types for configuring in the dialog.
Dialog to allow the user to configure and save connection information for an HTTP Server for WMS...