Skip to content

Commit

Permalink
Add Apply buttons to decoration dialogs
Browse files Browse the repository at this point in the history
  • Loading branch information
nyalldawson committed Jan 6, 2016
1 parent 36b0f65 commit e2d9794
Show file tree
Hide file tree
Showing 14 changed files with 151 additions and 116 deletions.
6 changes: 1 addition & 5 deletions src/app/qgsdecorationcopyright.cpp
Expand Up @@ -89,11 +89,7 @@ void QgsDecorationCopyright::saveToProject()
void QgsDecorationCopyright::run()
{
QgsDecorationCopyrightDialog dlg( *this, QgisApp::instance() );

if ( dlg.exec() )
{
update();
}
dlg.exec();
}


Expand Down
26 changes: 18 additions & 8 deletions src/app/qgsdecorationcopyrightdialog.cpp
Expand Up @@ -20,6 +20,8 @@
#include <QColor>
#include <QFont>
#include <QSettings>
#include <QDialogButtonBox>
#include <QPushButton>

QgsDecorationCopyrightDialog::QgsDecorationCopyrightDialog( QgsDecorationCopyright& deco, QWidget* parent )
: QDialog( parent ), mDeco( deco )
Expand All @@ -29,6 +31,9 @@ QgsDecorationCopyrightDialog::QgsDecorationCopyrightDialog( QgsDecorationCopyrig
QSettings settings;
restoreGeometry( settings.value( "/Windows/DecorationCopyright/geometry" ).toByteArray() );

QPushButton* applyButton = buttonBox->button( QDialogButtonBox::Apply );
connect( applyButton, SIGNAL( clicked() ), this, SLOT( apply() ) );

//programmatically hide orientation selection for now
cboOrientation->hide();
textLabel15->hide();
Expand Down Expand Up @@ -63,14 +68,7 @@ QgsDecorationCopyrightDialog::~QgsDecorationCopyrightDialog()

void QgsDecorationCopyrightDialog::on_buttonBox_accepted()
{
mDeco.mQFont = txtCopyrightText->currentFont();
mDeco.mLabelQString = txtCopyrightText->toPlainText();
mDeco.mLabelQColor = pbnColorChooser->color();
mDeco.setPlacement( static_cast< QgsDecorationItem::Placement>( cboPlacement->itemData( cboPlacement->currentIndex() ).toInt() ) );
mDeco.mMarginHorizontal = spnHorizontal->value();
mDeco.mMarginVertical = spnVertical->value();
mDeco.setEnabled( grpEnable->isChecked() );

apply();
accept();
}

Expand All @@ -87,6 +85,18 @@ void QgsDecorationCopyrightDialog::on_pbnColorChooser_colorChanged( const QColor
txtCopyrightText->setTextCursor( cursor );
}

void QgsDecorationCopyrightDialog::apply()
{
mDeco.mQFont = txtCopyrightText->currentFont();
mDeco.mLabelQString = txtCopyrightText->toPlainText();
mDeco.mLabelQColor = pbnColorChooser->color();
mDeco.setPlacement( static_cast< QgsDecorationItem::Placement>( cboPlacement->itemData( cboPlacement->currentIndex() ).toInt() ) );
mDeco.mMarginHorizontal = spnHorizontal->value();
mDeco.mMarginVertical = spnVertical->value();
mDeco.setEnabled( grpEnable->isChecked() );
mDeco.update();
}

void QgsDecorationCopyrightDialog::on_buttonBox_helpRequested()
{
QgsContextHelp::run( metaObject()->className() );
Expand Down
1 change: 1 addition & 0 deletions src/app/qgsdecorationcopyrightdialog.h
Expand Up @@ -32,6 +32,7 @@ class APP_EXPORT QgsDecorationCopyrightDialog : public QDialog, private Ui::QgsD
void on_buttonBox_rejected();
void on_buttonBox_helpRequested();
void on_pbnColorChooser_colorChanged( const QColor& c );
void apply();

protected:
QgsDecorationCopyright& mDeco;
Expand Down
5 changes: 3 additions & 2 deletions src/app/qgsdecorationitem.h
Expand Up @@ -55,8 +55,6 @@ class APP_EXPORT QgsDecorationItem: public QObject
*/
void setPlacement( Placement placement ) { mPlacement = placement; }

void update();

signals:
void toggled( bool t );

Expand All @@ -74,6 +72,9 @@ class APP_EXPORT QgsDecorationItem: public QObject
virtual void setName( const char *name );
virtual QString name() { return mName; }

//! Redraws the decoration
void update();

protected:

/** True if decoration item has to be displayed*/
Expand Down
6 changes: 1 addition & 5 deletions src/app/qgsdecorationnortharrow.cpp
Expand Up @@ -92,11 +92,7 @@ void QgsDecorationNorthArrow::saveToProject()
void QgsDecorationNorthArrow::run()
{
QgsDecorationNorthArrowDialog dlg( *this, QgisApp::instance() );

if ( dlg.exec() )
{
update();
}
dlg.exec();
}

void QgsDecorationNorthArrow::render( QPainter * theQPainter )
Expand Down
26 changes: 17 additions & 9 deletions src/app/qgsdecorationnortharrowdialog.cpp
Expand Up @@ -11,15 +11,15 @@
***************************************************************************/

#include "qgsdecorationnortharrowdialog.h"

#include "qgsdecorationnortharrow.h"

#include "qgslogger.h"
#include "qgscontexthelp.h"

#include <QPainter>
#include <QSettings>
#include <cmath>
#include <QDialogButtonBox>
#include <QPushButton>

QgsDecorationNorthArrowDialog::QgsDecorationNorthArrowDialog( QgsDecorationNorthArrow& deco, QWidget* parent )
: QDialog( parent ), mDeco( deco )
Expand All @@ -29,6 +29,9 @@ QgsDecorationNorthArrowDialog::QgsDecorationNorthArrowDialog( QgsDecorationNorth
QSettings settings;
restoreGeometry( settings.value( "/Windows/DecorationNorthArrow/geometry" ).toByteArray() );

QPushButton* applyButton = buttonBox->button( QDialogButtonBox::Apply );
connect( applyButton, SIGNAL( clicked() ), this, SLOT( apply() ) );

// rotation
rotatePixmap( mDeco.mRotationInt );
// signal/slot connection defined in 'designer' causes the slider to
Expand Down Expand Up @@ -64,13 +67,7 @@ void QgsDecorationNorthArrowDialog::on_buttonBox_helpRequested()

void QgsDecorationNorthArrowDialog::on_buttonBox_accepted()
{
mDeco.mRotationInt = sliderRotation->value();
mDeco.setPlacement( static_cast< QgsDecorationItem::Placement>( cboPlacement->itemData( cboPlacement->currentIndex() ).toInt() ) );
mDeco.setEnabled( grpEnable->isChecked() );
mDeco.mAutomatic = cboxAutomatic->isChecked();
mDeco.mMarginHorizontal = spinHorizontal->value();
mDeco.mMarginVertical = spinVertical->value();

apply();
accept();
}

Expand All @@ -90,6 +87,17 @@ void QgsDecorationNorthArrowDialog::on_sliderRotation_valueChanged( int theInt )
rotatePixmap( theInt );
}

void QgsDecorationNorthArrowDialog::apply()
{
mDeco.mRotationInt = sliderRotation->value();
mDeco.setPlacement( static_cast< QgsDecorationItem::Placement>( cboPlacement->itemData( cboPlacement->currentIndex() ).toInt() ) );
mDeco.setEnabled( grpEnable->isChecked() );
mDeco.mAutomatic = cboxAutomatic->isChecked();
mDeco.mMarginHorizontal = spinHorizontal->value();
mDeco.mMarginVertical = spinVertical->value();
mDeco.update();
}

void QgsDecorationNorthArrowDialog::rotatePixmap( int theRotationInt )
{
QPixmap myQPixmap;
Expand Down
1 change: 1 addition & 0 deletions src/app/qgsdecorationnortharrowdialog.h
Expand Up @@ -34,6 +34,7 @@ class APP_EXPORT QgsDecorationNorthArrowDialog : public QDialog, private Ui::Qgs
void on_buttonBox_helpRequested();
void on_spinAngle_valueChanged( int theInt );
void on_sliderRotation_valueChanged( int theInt );
void apply();

protected:
QgsDecorationNorthArrow& mDeco;
Expand Down
6 changes: 1 addition & 5 deletions src/app/qgsdecorationscalebar.cpp
Expand Up @@ -98,11 +98,7 @@ void QgsDecorationScaleBar::saveToProject()
void QgsDecorationScaleBar::run()
{
QgsDecorationScaleBarDialog dlg( *this, QgisApp::instance()->mapCanvas()->mapUnits(), QgisApp::instance() );

if ( dlg.exec() )
{
update();
}
dlg.exec();
}


Expand Down
14 changes: 11 additions & 3 deletions src/app/qgsdecorationscalebardialog.cpp
Expand Up @@ -11,14 +11,14 @@
***************************************************************************/

#include "qgsdecorationscalebardialog.h"

#include "qgsdecorationscalebar.h"

#include "qgslogger.h"
#include "qgscontexthelp.h"

#include <QColorDialog>
#include <QSettings>
#include <QDialogButtonBox>
#include <QPushButton>

QgsDecorationScaleBarDialog::QgsDecorationScaleBarDialog( QgsDecorationScaleBar& deco, int units, QWidget* parent )
: QDialog( parent ), mDeco( deco )
Expand All @@ -28,6 +28,9 @@ QgsDecorationScaleBarDialog::QgsDecorationScaleBarDialog( QgsDecorationScaleBar&
QSettings settings;
restoreGeometry( settings.value( "/Windows/DecorationScaleBar/geometry" ).toByteArray() );

QPushButton* applyButton = buttonBox->button( QDialogButtonBox::Apply );
connect( applyButton, SIGNAL( clicked() ), this, SLOT( apply() ) );

// set the map units in the spin box
spnSize->setShowClearButton( false );
switch ( units )
Expand Down Expand Up @@ -79,7 +82,7 @@ void QgsDecorationScaleBarDialog::on_buttonBox_helpRequested()
QgsContextHelp::run( metaObject()->className() );
}

void QgsDecorationScaleBarDialog::on_buttonBox_accepted()
void QgsDecorationScaleBarDialog::apply()
{
mDeco.setPlacement( static_cast< QgsDecorationItem::Placement>( cboPlacement->itemData( cboPlacement->currentIndex() ).toInt() ) );
mDeco.mMarginHorizontal = spnHorizontal->value();
Expand All @@ -89,7 +92,12 @@ void QgsDecorationScaleBarDialog::on_buttonBox_accepted()
mDeco.setEnabled( grpEnable->isChecked() );
mDeco.mStyleIndex = cboStyle->currentIndex();
mDeco.mColor = pbnChangeColor->color();
mDeco.update();
}

void QgsDecorationScaleBarDialog::on_buttonBox_accepted()
{
apply();
accept();
}

Expand Down
1 change: 1 addition & 0 deletions src/app/qgsdecorationscalebardialog.h
Expand Up @@ -32,6 +32,7 @@ class APP_EXPORT QgsDecorationScaleBarDialog : public QDialog, private Ui::QgsDe
void on_buttonBox_accepted();
void on_buttonBox_rejected();
void on_buttonBox_helpRequested();
void apply();

protected:
QgsDecorationScaleBar& mDeco;
Expand Down
2 changes: 1 addition & 1 deletion src/ui/qgsdecorationcopyrightdialog.ui
Expand Up @@ -256,7 +256,7 @@ p, li { white-space: pre-wrap; }
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Help|QDialogButtonBox::Ok</set>
<set>QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Help|QDialogButtonBox::Ok</set>
</property>
</widget>
</item>
Expand Down
2 changes: 1 addition & 1 deletion src/ui/qgsdecorationgriddialog.ui
Expand Up @@ -321,7 +321,7 @@
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Help|QDialogButtonBox::Ok</set>
<set>QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
</item>
Expand Down
2 changes: 1 addition & 1 deletion src/ui/qgsdecorationnortharrowdialog.ui
Expand Up @@ -245,7 +245,7 @@
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Help|QDialogButtonBox::Ok</set>
<set>QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Help|QDialogButtonBox::Ok</set>
</property>
</widget>
</item>
Expand Down

0 comments on commit e2d9794

Please sign in to comment.