mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-16 00:03:12 -04:00
[auth] Add widget for editing an authcfg within a data source URI
This commit is contained in:
parent
2f8e6846ab
commit
c74ddf1eec
@ -9,5 +9,38 @@ class QgsAuthConfigSelect : QWidget
|
|||||||
~QgsAuthConfigSelect();
|
~QgsAuthConfigSelect();
|
||||||
|
|
||||||
void setConfigId( const QString& authcfg );
|
void setConfigId( const QString& authcfg );
|
||||||
|
|
||||||
const QString configId() const;
|
const QString configId() const;
|
||||||
|
|
||||||
|
void setDataProviderKey( const QString &key );
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void selectedConfigIdChanged( const QString& authcfg );
|
||||||
|
|
||||||
|
void selectedConfigIdRemoved( const QString& authcfg );
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
void showMessage( const QString &msg );
|
||||||
|
|
||||||
|
void clearMessage();
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
class QgsAuthConfigUriEdit : QDialog
|
||||||
|
{
|
||||||
|
%TypeHeaderCode
|
||||||
|
#include <qgsauthconfigselect.h>
|
||||||
|
%End
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit QgsAuthConfigUriEdit( QWidget *parent /TransferThis/ = 0,
|
||||||
|
const QString &datauri = QString(),
|
||||||
|
const QString &dataprovider = QString() );
|
||||||
|
~QgsAuthConfigUriEdit();
|
||||||
|
|
||||||
|
void setDataSourceUri( const QString &datauri );
|
||||||
|
|
||||||
|
QString dataSourceUri();
|
||||||
|
|
||||||
|
static bool hasConfigID( const QString &txt );
|
||||||
};
|
};
|
||||||
|
@ -19,10 +19,13 @@
|
|||||||
|
|
||||||
#include <QHash>
|
#include <QHash>
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
|
#include <QTimer>
|
||||||
|
|
||||||
#include "qgsauthconfig.h"
|
#include "qgsauthconfig.h"
|
||||||
|
#include "qgsauthguiutils.h"
|
||||||
#include "qgsauthmanager.h"
|
#include "qgsauthmanager.h"
|
||||||
#include "qgsauthconfigedit.h"
|
#include "qgsauthconfigedit.h"
|
||||||
|
#include "qgslogger.h"
|
||||||
|
|
||||||
|
|
||||||
QgsAuthConfigSelect::QgsAuthConfigSelect( QWidget *parent, const QString &dataprovider )
|
QgsAuthConfigSelect::QgsAuthConfigSelect( QWidget *parent, const QString &dataprovider )
|
||||||
@ -44,7 +47,11 @@ QgsAuthConfigSelect::QgsAuthConfigSelect( QWidget *parent, const QString &datapr
|
|||||||
{
|
{
|
||||||
setupUi( this );
|
setupUi( this );
|
||||||
|
|
||||||
|
leConfigMsg->setStyleSheet( QString( "QLineEdit{background-color: %1}" )
|
||||||
|
.arg( QgsAuthGuiUtils::yellowColor().name() ) );
|
||||||
|
|
||||||
clearConfig();
|
clearConfig();
|
||||||
|
clearMessage();
|
||||||
populateConfigSelector();
|
populateConfigSelector();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -63,12 +70,20 @@ void QgsAuthConfigSelect::setConfigId( const QString& authcfg )
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ( mAuthCfg != authcfg )
|
if ( mAuthCfg != authcfg )
|
||||||
|
{
|
||||||
mAuthCfg = authcfg;
|
mAuthCfg = authcfg;
|
||||||
|
}
|
||||||
populateConfigSelector();
|
populateConfigSelector();
|
||||||
loadConfig();
|
loadConfig();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigSelect::setDataProviderKey( const QString &key )
|
||||||
|
{
|
||||||
|
mDataProvider = key;
|
||||||
|
populateConfigSelector();
|
||||||
|
}
|
||||||
|
|
||||||
void QgsAuthConfigSelect::loadConfig()
|
void QgsAuthConfigSelect::loadConfig()
|
||||||
{
|
{
|
||||||
clearConfig();
|
clearConfig();
|
||||||
@ -87,6 +102,7 @@ void QgsAuthConfigSelect::loadConfig()
|
|||||||
btnConfigEdit->setEnabled( true );
|
btnConfigEdit->setEnabled( true );
|
||||||
btnConfigRemove->setEnabled( true );
|
btnConfigRemove->setEnabled( true );
|
||||||
}
|
}
|
||||||
|
emit selectedConfigIdChanged( mAuthCfg );
|
||||||
}
|
}
|
||||||
|
|
||||||
void QgsAuthConfigSelect::clearConfig()
|
void QgsAuthConfigSelect::clearConfig()
|
||||||
@ -101,6 +117,7 @@ void QgsAuthConfigSelect::validateConfig()
|
|||||||
{
|
{
|
||||||
if ( !mAuthCfg.isEmpty() && !mConfigs.contains( mAuthCfg ) )
|
if ( !mAuthCfg.isEmpty() && !mConfigs.contains( mAuthCfg ) )
|
||||||
{
|
{
|
||||||
|
showMessage( tr( "Configuration '%1' not in database" ).arg( mAuthCfg ) );
|
||||||
mAuthCfg.clear();
|
mAuthCfg.clear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -137,6 +154,18 @@ void QgsAuthConfigSelect::populateConfigSelector()
|
|||||||
cmbConfigSelect->setCurrentIndex( indx > 0 ? indx : 0 );
|
cmbConfigSelect->setCurrentIndex( indx > 0 ? indx : 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigSelect::showMessage( const QString &msg )
|
||||||
|
{
|
||||||
|
leConfigMsg->setText( msg );
|
||||||
|
frConfigMsg->setVisible( true );
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigSelect::clearMessage()
|
||||||
|
{
|
||||||
|
leConfigMsg->clear();
|
||||||
|
frConfigMsg->setVisible( false );
|
||||||
|
}
|
||||||
|
|
||||||
void QgsAuthConfigSelect::loadAvailableConfigs()
|
void QgsAuthConfigSelect::loadAvailableConfigs()
|
||||||
{
|
{
|
||||||
mConfigs.clear();
|
mConfigs.clear();
|
||||||
@ -173,7 +202,7 @@ void QgsAuthConfigSelect::on_btnConfigEdit_clicked()
|
|||||||
ace->setWindowModality( Qt::WindowModal );
|
ace->setWindowModality( Qt::WindowModal );
|
||||||
if ( ace->exec() )
|
if ( ace->exec() )
|
||||||
{
|
{
|
||||||
qDebug( "Edit returned config Id: %s", ace->configId().toAscii().constData() );
|
//qDebug( "Edit returned config Id: %s", ace->configId().toAscii().constData() );
|
||||||
setConfigId( ace->configId() );
|
setConfigId( ace->configId() );
|
||||||
}
|
}
|
||||||
ace->deleteLater();
|
ace->deleteLater();
|
||||||
@ -192,6 +221,188 @@ void QgsAuthConfigSelect::on_btnConfigRemove_clicked()
|
|||||||
|
|
||||||
if ( QgsAuthManager::instance()->removeAuthenticationConfig( mAuthCfg ) )
|
if ( QgsAuthManager::instance()->removeAuthenticationConfig( mAuthCfg ) )
|
||||||
{
|
{
|
||||||
|
emit selectedConfigIdRemoved( mAuthCfg );
|
||||||
setConfigId( QString() );
|
setConfigId( QString() );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigSelect::on_btnConfigMsgClear_clicked()
|
||||||
|
{
|
||||||
|
clearMessage();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//////////////// Embed in dialog ///////////////////
|
||||||
|
|
||||||
|
#include <QPushButton>
|
||||||
|
|
||||||
|
QgsAuthConfigUriEdit::QgsAuthConfigUriEdit( QWidget *parent, const QString &datauri, const QString &dataprovider )
|
||||||
|
: QDialog( parent )
|
||||||
|
, mAuthCfg( QString() )
|
||||||
|
, mDataUri( QString() )
|
||||||
|
, mDataUriOrig( QString() )
|
||||||
|
{
|
||||||
|
setupUi( this );
|
||||||
|
|
||||||
|
setWindowTitle( tr( "Authentication Config ID String Editor" ) );
|
||||||
|
|
||||||
|
buttonBox->button( QDialogButtonBox::Close )->setDefault( true );
|
||||||
|
connect( buttonBox, SIGNAL( rejected() ), this, SLOT( close() ) );
|
||||||
|
connect( buttonBox, SIGNAL( accepted() ), this, SLOT( saveChanges() ) );
|
||||||
|
|
||||||
|
connect( buttonBox->button( QDialogButtonBox::Reset ), SIGNAL( clicked() ), this, SLOT( resetChanges() ) );
|
||||||
|
|
||||||
|
connect( wdgtAuthSelect, SIGNAL( selectedConfigIdChanged( QString ) ), this , SLOT( authCfgUpdated( QString ) ) );
|
||||||
|
connect( wdgtAuthSelect, SIGNAL( selectedConfigIdRemoved( QString ) ), this , SLOT( authCfgRemoved( QString ) ) );
|
||||||
|
|
||||||
|
wdgtAuthSelect->setDataProviderKey( dataprovider );
|
||||||
|
setDataSourceUri( datauri );
|
||||||
|
}
|
||||||
|
|
||||||
|
QgsAuthConfigUriEdit::~QgsAuthConfigUriEdit()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigUriEdit::setDataSourceUri( const QString &datauri )
|
||||||
|
{
|
||||||
|
if ( datauri.isEmpty() )
|
||||||
|
return;
|
||||||
|
|
||||||
|
mDataUri = mDataUriOrig = datauri;
|
||||||
|
|
||||||
|
teDataUri->setPlainText( mDataUri );
|
||||||
|
|
||||||
|
if ( authCfgIndex() == -1 )
|
||||||
|
{
|
||||||
|
wdgtAuthSelect->showMessage( tr( "No authcfg in Data Source URI" ) );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
selectAuthCfgInUri();
|
||||||
|
|
||||||
|
mAuthCfg = authCfgFromUri();
|
||||||
|
|
||||||
|
QgsDebugMsg( QString( "Parsed authcfg ID: %1" ).arg( mAuthCfg ) );
|
||||||
|
|
||||||
|
wdgtAuthSelect->blockSignals( true );
|
||||||
|
wdgtAuthSelect->setConfigId( mAuthCfg );
|
||||||
|
wdgtAuthSelect->blockSignals( false );
|
||||||
|
}
|
||||||
|
|
||||||
|
QString QgsAuthConfigUriEdit::dataSourceUri()
|
||||||
|
{
|
||||||
|
return mDataUri;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool QgsAuthConfigUriEdit::hasConfigID( const QString &txt )
|
||||||
|
{
|
||||||
|
return QgsAuthManager::instance()->hasConfigId( txt );
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigUriEdit::saveChanges()
|
||||||
|
{
|
||||||
|
this->accept();
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigUriEdit::resetChanges()
|
||||||
|
{
|
||||||
|
wdgtAuthSelect->clearMessage();
|
||||||
|
setDataSourceUri( mDataUriOrig );
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigUriEdit::authCfgUpdated( const QString &authcfg )
|
||||||
|
{
|
||||||
|
mAuthCfg = authcfg;
|
||||||
|
|
||||||
|
if ( mAuthCfg.size() != 7 )
|
||||||
|
{
|
||||||
|
mAuthCfg.clear();
|
||||||
|
removeAuthCfgFromUri();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
updateUriWithAuthCfg();
|
||||||
|
}
|
||||||
|
teDataUri->clear();
|
||||||
|
teDataUri->setPlainText( mDataUri );
|
||||||
|
selectAuthCfgInUri();
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigUriEdit::authCfgRemoved( const QString &authcfg )
|
||||||
|
{
|
||||||
|
if ( authCfgFromUri() == authcfg )
|
||||||
|
{
|
||||||
|
removeAuthCfgFromUri();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int QgsAuthConfigUriEdit::authCfgIndex()
|
||||||
|
{
|
||||||
|
QRegExp rx( QgsAuthManager::instance()->configIdRegex() );
|
||||||
|
return rx.indexIn( mDataUri );
|
||||||
|
}
|
||||||
|
|
||||||
|
QString QgsAuthConfigUriEdit::authCfgFromUri()
|
||||||
|
{
|
||||||
|
int startindex = authCfgIndex();
|
||||||
|
if ( startindex == -1 )
|
||||||
|
return QString();
|
||||||
|
|
||||||
|
return mDataUri.mid( startindex + 8, 7 );
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigUriEdit::selectAuthCfgInUri()
|
||||||
|
{
|
||||||
|
int startindex = authCfgIndex();
|
||||||
|
if ( startindex == -1 )
|
||||||
|
return;
|
||||||
|
|
||||||
|
// authcfg=.{7} will always be 15 chars
|
||||||
|
QTextCursor tc = teDataUri->textCursor();
|
||||||
|
tc.setPosition( startindex );
|
||||||
|
tc.setPosition( startindex + 15, QTextCursor::KeepAnchor );
|
||||||
|
teDataUri->setTextCursor( tc );
|
||||||
|
teDataUri->setFocus();
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigUriEdit::updateUriWithAuthCfg()
|
||||||
|
{
|
||||||
|
int startindex = authCfgIndex();
|
||||||
|
if ( startindex == -1 )
|
||||||
|
{
|
||||||
|
if ( mAuthCfg.size() == 7 )
|
||||||
|
{
|
||||||
|
wdgtAuthSelect->showMessage( tr( "Adding authcfg to URI not supported" ) );
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
mDataUri = mDataUri.replace( startindex + 8, 7, mAuthCfg );
|
||||||
|
}
|
||||||
|
|
||||||
|
void QgsAuthConfigUriEdit::removeAuthCfgFromUri()
|
||||||
|
{
|
||||||
|
int startindex = authCfgIndex();
|
||||||
|
if ( startindex == -1 )
|
||||||
|
return;
|
||||||
|
|
||||||
|
// add any preceding space so two spaces will not result after removal
|
||||||
|
int rmvlen = 15;
|
||||||
|
if ( startindex - 1 >= 0
|
||||||
|
&& ( mDataUri.at( startindex - 1 ).isSpace()
|
||||||
|
|| mDataUri.at( startindex - 1 ) == QChar( '&' ) ) )
|
||||||
|
{
|
||||||
|
startindex -= 1;
|
||||||
|
rmvlen += 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
// trim any leftover spaces or & from ends
|
||||||
|
mDataUri = mDataUri.remove( startindex, rmvlen ).trimmed();
|
||||||
|
if ( mDataUri.at( 0 ) == QChar( '&' ) )
|
||||||
|
mDataUri = mDataUri.remove( 0, 1 );
|
||||||
|
|
||||||
|
// trim any & from
|
||||||
|
|
||||||
|
mAuthCfg.clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -46,6 +46,23 @@ class GUI_EXPORT QgsAuthConfigSelect : public QWidget, private Ui::QgsAuthConfig
|
|||||||
/** Get the authentication config id for the resource */
|
/** Get the authentication config id for the resource */
|
||||||
const QString configId() const { return mAuthCfg; }
|
const QString configId() const { return mAuthCfg; }
|
||||||
|
|
||||||
|
/** Set key of layer provider, if applicable */
|
||||||
|
void setDataProviderKey( const QString &key );
|
||||||
|
|
||||||
|
signals:
|
||||||
|
/** Emitted when authentication config is changed or missing */
|
||||||
|
void selectedConfigIdChanged( const QString& authcfg );
|
||||||
|
|
||||||
|
/** Emitted when authentication config is removed */
|
||||||
|
void selectedConfigIdRemoved( const QString& authcfg );
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
/** Show a small message bar with a close button */
|
||||||
|
void showMessage( const QString &msg );
|
||||||
|
|
||||||
|
/** Clear and hide small message bar */
|
||||||
|
void clearMessage();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void loadConfig();
|
void loadConfig();
|
||||||
void clearConfig();
|
void clearConfig();
|
||||||
@ -60,6 +77,8 @@ class GUI_EXPORT QgsAuthConfigSelect : public QWidget, private Ui::QgsAuthConfig
|
|||||||
|
|
||||||
void on_btnConfigRemove_clicked();
|
void on_btnConfigRemove_clicked();
|
||||||
|
|
||||||
|
void on_btnConfigMsgClear_clicked();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void loadAvailableConfigs();
|
void loadAvailableConfigs();
|
||||||
|
|
||||||
@ -71,4 +90,65 @@ class GUI_EXPORT QgsAuthConfigSelect : public QWidget, private Ui::QgsAuthConfig
|
|||||||
QLabel *mAuthNotify;
|
QLabel *mAuthNotify;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
//////////////// Embed in dialog ///////////////////
|
||||||
|
|
||||||
|
#include "ui_qgsauthconfiguriedit.h"
|
||||||
|
|
||||||
|
class QPushButton;
|
||||||
|
|
||||||
|
/** \ingroup gui
|
||||||
|
* Dialog wrapper of select widget to edit an authcfg in a data source URI
|
||||||
|
*/
|
||||||
|
class GUI_EXPORT QgsAuthConfigUriEdit : public QDialog, private Ui::QgsAuthConfigUriEdit
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
/**
|
||||||
|
* Construct wrapper dialog for select widget to edit an authcfg in a data source URI
|
||||||
|
* @param parent Parent widget
|
||||||
|
* @param datauri URI QString with of without an authcfg=ID string
|
||||||
|
* @param dataprovider The key of the calling layer provider, if applicable
|
||||||
|
*/
|
||||||
|
explicit QgsAuthConfigUriEdit( QWidget *parent = 0,
|
||||||
|
const QString &datauri = QString(),
|
||||||
|
const QString &dataprovider = QString() );
|
||||||
|
~QgsAuthConfigUriEdit();
|
||||||
|
|
||||||
|
/** Set the data source URI to parse */
|
||||||
|
void setDataSourceUri( const QString &datauri );
|
||||||
|
|
||||||
|
/** The returned, possibly edited data source URI */
|
||||||
|
QString dataSourceUri();
|
||||||
|
|
||||||
|
/** Whether a string conatins an authcfg ID */
|
||||||
|
static bool hasConfigID( const QString &txt );
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
void saveChanges();
|
||||||
|
|
||||||
|
void resetChanges();
|
||||||
|
|
||||||
|
void authCfgUpdated( const QString &authcfg );
|
||||||
|
|
||||||
|
void authCfgRemoved( const QString &authcfg );
|
||||||
|
|
||||||
|
private:
|
||||||
|
int authCfgIndex();
|
||||||
|
|
||||||
|
QString authCfgFromUri();
|
||||||
|
|
||||||
|
void selectAuthCfgInUri();
|
||||||
|
|
||||||
|
void updateUriWithAuthCfg();
|
||||||
|
|
||||||
|
void removeAuthCfgFromUri();
|
||||||
|
|
||||||
|
QString mAuthCfg;
|
||||||
|
QString mDataUri;
|
||||||
|
QString mDataUriOrig;
|
||||||
|
QPushButton *mResetButton;
|
||||||
|
};
|
||||||
|
|
||||||
#endif // QGSAUTHCONFIGSELECT_H
|
#endif // QGSAUTHCONFIGSELECT_H
|
||||||
|
@ -14,9 +14,31 @@
|
|||||||
<string>Authentication Configuration</string>
|
<string>Authentication Configuration</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
<item>
|
<property name="verticalSpacing">
|
||||||
|
<number>10</number>
|
||||||
|
</property>
|
||||||
|
<item row="1" column="1">
|
||||||
|
<widget class="QToolButton" name="btnConfigAdd">
|
||||||
|
<property name="text">
|
||||||
|
<string>Add</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
<widget class="QComboBox" name="cmbConfigSelect">
|
<widget class="QComboBox" name="cmbConfigSelect">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
||||||
@ -32,43 +54,73 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item row="0" column="0" colspan="2">
|
||||||
<spacer name="horizontalSpacer_2">
|
<widget class="QFrame" name="frConfigMsg">
|
||||||
<property name="orientation">
|
<property name="frameShape">
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>QFrame::StyledPanel</enum>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizeType">
|
<property name="frameShadow">
|
||||||
<enum>QSizePolicy::MinimumExpanding</enum>
|
<enum>QFrame::Raised</enum>
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>0</width>
|
|
||||||
<height>20</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QToolButton" name="btnConfigAdd">
|
|
||||||
<property name="text">
|
|
||||||
<string>Add</string>
|
|
||||||
</property>
|
</property>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_3">
|
||||||
|
<property name="spacing">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<widget class="QLineEdit" name="leConfigMsg">
|
||||||
|
<property name="readOnly">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QToolButton" name="btnConfigMsgClear">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>26</width>
|
||||||
|
<height>22</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize">
|
||||||
|
<size>
|
||||||
|
<width>26</width>
|
||||||
|
<height>22</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<property name="icon">
|
||||||
|
<iconset resource="../../../images/images.qrc">
|
||||||
|
<normaloff>:/images/themes/default/mIconClose.png</normaloff>:/images/themes/default/mIconClose.png</iconset>
|
||||||
|
</property>
|
||||||
|
<property name="iconSize">
|
||||||
|
<size>
|
||||||
|
<width>14</width>
|
||||||
|
<height>14</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QGridLayout" name="gridLayout_2">
|
<layout class="QGridLayout" name="gridLayout_2">
|
||||||
<item row="0" column="1">
|
|
||||||
<widget class="QLineEdit" name="leConfigMethodDesc">
|
|
||||||
<property name="styleSheet">
|
|
||||||
<string notr="true">QLineEdit{color: rgb(128, 128, 128);}</string>
|
|
||||||
</property>
|
|
||||||
<property name="readOnly">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QLabel" name="label">
|
<widget class="QLabel" name="label">
|
||||||
<property name="styleSheet">
|
<property name="styleSheet">
|
||||||
@ -126,6 +178,16 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="QLineEdit" name="leConfigMethodDesc">
|
||||||
|
<property name="styleSheet">
|
||||||
|
<string notr="true">QLineEdit{color: rgb(128, 128, 128);}</string>
|
||||||
|
</property>
|
||||||
|
<property name="readOnly">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -143,6 +205,8 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<resources/>
|
<resources>
|
||||||
|
<include location="../../../images/images.qrc"/>
|
||||||
|
</resources>
|
||||||
<connections/>
|
<connections/>
|
||||||
</ui>
|
</ui>
|
||||||
|
97
src/ui/auth/qgsauthconfiguriedit.ui
Normal file
97
src/ui/auth/qgsauthconfiguriedit.ui
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<ui version="4.0">
|
||||||
|
<class>QgsAuthConfigUriEdit</class>
|
||||||
|
<widget class="QDialog" name="QgsAuthConfigUriEdit">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>449</width>
|
||||||
|
<height>449</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="windowTitle">
|
||||||
|
<string>Dialog</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="groupBox">
|
||||||
|
<property name="title">
|
||||||
|
<string>Edit authentication configuration ID</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<widget class="QPlainTextEdit" name="teDataUri">
|
||||||
|
<property name="maximumSize">
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>75</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="readOnly">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QgsAuthConfigSelect" name="wdgtAuthSelect" native="true"/>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="font">
|
||||||
|
<font>
|
||||||
|
<italic>true</italic>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="styleSheet">
|
||||||
|
<string notr="true">color: rgb(128, 128, 128);</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Note: Button actions above affect authentication database</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignCenter</set>
|
||||||
|
</property>
|
||||||
|
<property name="wordWrap">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QDialogButtonBox" name="buttonBox">
|
||||||
|
<property name="standardButtons">
|
||||||
|
<set>QDialogButtonBox::Close|QDialogButtonBox::Reset|QDialogButtonBox::Save</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<customwidgets>
|
||||||
|
<customwidget>
|
||||||
|
<class>QgsAuthConfigSelect</class>
|
||||||
|
<extends>QWidget</extends>
|
||||||
|
<header>qgsauthconfigselect.h</header>
|
||||||
|
<container>1</container>
|
||||||
|
</customwidget>
|
||||||
|
</customwidgets>
|
||||||
|
<resources/>
|
||||||
|
<connections/>
|
||||||
|
</ui>
|
Loading…
x
Reference in New Issue
Block a user