diff --git a/resources/OpenBoard.qrc b/resources/OpenBoard.qrc
index 4f7d7765..18c33750 100644
--- a/resources/OpenBoard.qrc
+++ b/resources/OpenBoard.qrc
@@ -359,5 +359,6 @@
images/groupItems.svg
images/ungroupItems.svg
images/setAsBackground.svg
+ images/backgroundPalette/resetDefaultGridSize.svg
diff --git a/resources/forms/mainWindow.ui b/resources/forms/mainWindow.ui
index d1c27a4b..c8002440 100644
--- a/resources/forms/mainWindow.ui
+++ b/resources/forms/mainWindow.ui
@@ -1647,6 +1647,18 @@
Open the tutorial web page
+
+
+
+ :/images/backgroundPalette/resetDefaultGridSize.svg:/images/backgroundPalette/resetDefaultGridSize.svg
+
+
+ Default Grid Size
+
+
+ return to Default Grid Size
+
+
diff --git a/resources/images/backgroundPalette/resetDefaultGridSize.svg b/resources/images/backgroundPalette/resetDefaultGridSize.svg
new file mode 100644
index 00000000..5df55a0f
--- /dev/null
+++ b/resources/images/backgroundPalette/resetDefaultGridSize.svg
@@ -0,0 +1,21 @@
+
+
+
+
diff --git a/src/core/UBSettings.cpp b/src/core/UBSettings.cpp
index 131ae78c..d30855cc 100644
--- a/src/core/UBSettings.cpp
+++ b/src/core/UBSettings.cpp
@@ -47,6 +47,7 @@ QPointer UBSettings::sSingleton = 0;
int UBSettings::pointerDiameter = 40;
int UBSettings::crossSize = 24;
+int UBSettings::defaultCrossSize = 24;
int UBSettings::minCrossSize = 12;
int UBSettings::maxCrossSize = 96; //TODO: user-settable?
int UBSettings::colorPaletteSize = 5;
diff --git a/src/core/UBSettings.h b/src/core/UBSettings.h
index 91d6dc25..28af670b 100644
--- a/src/core/UBSettings.h
+++ b/src/core/UBSettings.h
@@ -188,6 +188,7 @@ class UBSettings : public QObject
// Background grid
static int crossSize;
+ static int defaultCrossSize;
static int minCrossSize;
static int maxCrossSize;
diff --git a/src/gui/UBBackgroundPalette.cpp b/src/gui/UBBackgroundPalette.cpp
index 4cb6b3b1..92ce0bd8 100644
--- a/src/gui/UBBackgroundPalette.cpp
+++ b/src/gui/UBBackgroundPalette.cpp
@@ -1,5 +1,7 @@
#include "UBBackgroundPalette.h"
+#include "gui/UBMainWindow.h"
+
UBBackgroundPalette::UBBackgroundPalette(QList actions, QWidget * parent)
: UBActionPalette(parent)
{
@@ -47,9 +49,16 @@ void UBBackgroundPalette::init()
mSliderLabel = new QLabel(tr("Grid size"));
+ mResetDefaultGridSizeButton = createPaletteButton(UBApplication::mainWindow->actionDefaultGridSize, this);
+ mResetDefaultGridSizeButton->setFixedSize(24,24);
+ mActions << UBApplication::mainWindow->actionDefaultGridSize;
+
+ connect(UBApplication::mainWindow->actionDefaultGridSize, SIGNAL(triggered()), this, SLOT(defaultBackgroundGridSize()));
+
mBottomLayout->addSpacing(16);
mBottomLayout->addWidget(mSliderLabel);
mBottomLayout->addWidget(mSlider);
+ mBottomLayout->addWidget(mResetDefaultGridSizeButton);
mBottomLayout->addSpacing(16);
updateLayout();
@@ -137,6 +146,12 @@ void UBBackgroundPalette::sliderValueChanged(int value)
UBSettings::settings()->crossSize = value; // since this function is called (indirectly, by refresh) when we switch scenes, the settings will always have the current scene's cross size.
}
+void UBBackgroundPalette::defaultBackgroundGridSize()
+{
+ mSlider->setValue(UBSettings::settings()->defaultCrossSize);
+ sliderValueChanged(UBSettings::settings()->defaultCrossSize);
+}
+
void UBBackgroundPalette::backgroundChanged()
{
bool dark = UBApplication::boardController->activeScene()->isDarkBackground();
diff --git a/src/gui/UBBackgroundPalette.h b/src/gui/UBBackgroundPalette.h
index c9f6ffe1..83472d47 100644
--- a/src/gui/UBBackgroundPalette.h
+++ b/src/gui/UBBackgroundPalette.h
@@ -27,6 +27,7 @@ class UBBackgroundPalette : public UBActionPalette
protected slots:
void sliderValueChanged(int value);
+ void defaultBackgroundGridSize();
protected:
virtual void updateLayout();
@@ -39,6 +40,7 @@ class UBBackgroundPalette : public UBActionPalette
QSlider* mSlider;
QLabel* mSliderLabel;
+ UBActionPaletteButton* mResetDefaultGridSizeButton;
};