QGIS API Documentation  2.99.0-Master (a411669)
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  };
60  Q_DECLARE_FLAGS( Flags, Flag )
61 
62 
71  QgsNewHttpConnection( QWidget *parent SIP_TRANSFERTHIS = nullptr,
72  QgsNewHttpConnection::ConnectionTypes types = ConnectionWms,
73  const QString &baseKey = "qgis/connections-wms/",
74  const QString &connectionName = QString(),
75  QgsNewHttpConnection::Flags flags = 0,
76  Qt::WindowFlags fl = QgsGuiUtils::ModalDialogFlags );
77 
82  QString name() const;
83 
88  QString url() const;
89 
90  public slots:
91 
92  void accept() override;
93 
94  private slots:
95 
96  void nameChanged( const QString & );
97  void urlChanged( const QString & );
98  void updateOkButtonState();
99 
100  protected:
101 
107  virtual bool validate();
108 
113  QPushButton *testConnectButton();
114 
120  virtual QString wfsSettingsKey( const QString &base, const QString &connectionName ) const;
121 
127  virtual QString wmsSettingsKey( const QString &base, const QString &connectionName ) const;
128 
134  void updateServiceSpecificSettings();
135 
136  private:
137 
138  ConnectionTypes mTypes = ConnectionWms;
139 
140  QString mBaseKey;
141  QString mCredentialsBaseKey;
142  QString mOriginalConnName; //store initial name to delete entry in case of rename
143  void showHelp();
144 
145 };
146 
147 Q_DECLARE_OPERATORS_FOR_FLAGS( QgsNewHttpConnection::ConnectionTypes )
148 Q_DECLARE_OPERATORS_FOR_FLAGS( QgsNewHttpConnection::Flags )
149 
150 // clazy:excludeall=qstring-allocations
151 
152 #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...