summaryrefslogtreecommitdiff
path: root/noncore/graphics/drawpad
authorleseb <leseb>2002-06-26 14:17:12 (UTC)
committer leseb <leseb>2002-06-26 14:17:12 (UTC)
commit531bb3c03f5576523a3c7ccecc714362507f69e1 (patch) (side-by-side diff)
tree8bdda021e3ddd110ca75df06a1f6a5fbf0429a6c /noncore/graphics/drawpad
parent527c3a7240bee3fe1d7c000aecc8ff0a01219fdd (diff)
downloadopie-531bb3c03f5576523a3c7ccecc714362507f69e1.zip
opie-531bb3c03f5576523a3c7ccecc714362507f69e1.tar.gz
opie-531bb3c03f5576523a3c7ccecc714362507f69e1.tar.bz2
Add application config
Diffstat (limited to 'noncore/graphics/drawpad') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/graphics/drawpad/drawpad.cpp39
-rw-r--r--noncore/graphics/drawpad/drawpad.h6
-rw-r--r--noncore/graphics/drawpad/drawpadcanvas.cpp13
-rw-r--r--noncore/graphics/drawpad/drawpadcanvas.h1
4 files changed, 54 insertions, 5 deletions
diff --git a/noncore/graphics/drawpad/drawpad.cpp b/noncore/graphics/drawpad/drawpad.cpp
index b29f5ba..4eb47a5 100644
--- a/noncore/graphics/drawpad/drawpad.cpp
+++ b/noncore/graphics/drawpad/drawpad.cpp
@@ -34,6 +34,7 @@
#include <opie/colorpopupmenu.h>
#include <qpe/applnk.h>
+#include <qpe/config.h>
#include <qpe/global.h>
#include <qpe/qpemenubar.h>
#include <qpe/qpetoolbar.h>
@@ -228,12 +229,12 @@ DrawPad::DrawPad(QWidget* parent, const char* name)
QPEToolBar* drawParametersToolBar = new QPEToolBar(this);
- QSpinBox* penWidthSpinBox = new QSpinBox(1, 9, 1, drawParametersToolBar);
- connect(penWidthSpinBox, SIGNAL(valueChanged(int)), this, SLOT(changePenWidth(int)));
+ m_pPenWidthSpinBox = new QSpinBox(1, 9, 1, drawParametersToolBar);
+ connect(m_pPenWidthSpinBox, SIGNAL(valueChanged(int)), this, SLOT(changePenWidth(int)));
- QToolTip::add(penWidthSpinBox, tr("Pen Width"));
- penWidthSpinBox->setValue(1);
- penWidthSpinBox->setFocusPolicy(QWidget::NoFocus);
+ QToolTip::add(m_pPenWidthSpinBox, tr("Pen Width"));
+ m_pPenWidthSpinBox->setValue(1);
+ m_pPenWidthSpinBox->setFocusPolicy(QWidget::NoFocus);
m_pPenColorToolButton = new QToolButton(drawParametersToolBar);
m_pPenColorToolButton->setPixmap(Resource::loadPixmap("drawpad/pencolor.png"));
@@ -269,10 +270,14 @@ DrawPad::DrawPad(QWidget* parent, const char* name)
} else {
m_pDrawPadCanvas->initialPage();
}
+
+ loadConfig();
}
DrawPad::~DrawPad()
{
+ saveConfig();
+
QFile file(Global::applicationFileName("drawpad", "drawpad.xml"));
if (file.open(IO_WriteOnly)) {
@@ -619,3 +624,27 @@ void DrawPad::pageInformation()
m_pDrawPadCanvas->currentPage()->setTitle(pageInformationDialog.selectedTitle());
}
}
+
+void DrawPad::loadConfig()
+{
+ Config config("drawpad");
+ config.setGroup("General");
+
+ m_pAntiAliasingAction->setOn(config.readBoolEntry("AntiAliasing", false));
+ m_pPenWidthSpinBox->setValue(config.readNumEntry("PenWidth", 1));
+ changePenColor(QColor(config.readEntry("PenColor", Qt::black.name())));
+ changeBrushColor(QColor(config.readEntry("BrushColor", Qt::white.name())));
+ m_pDrawPadCanvas->selectPage(config.readNumEntry("PagePosition", 1));
+}
+
+void DrawPad::saveConfig()
+{
+ Config config("drawpad");
+ config.setGroup("General");
+
+ config.writeEntry("PagePosition", (int)m_pDrawPadCanvas->pagePosition());
+ config.writeEntry("AntiAliasing", antiAliasing());
+ config.writeEntry("PenWidth", (int)m_pen.width());
+ config.writeEntry("PenColor", m_pen.color().name());
+ config.writeEntry("BrushColor", m_brush.color().name());
+}
diff --git a/noncore/graphics/drawpad/drawpad.h b/noncore/graphics/drawpad/drawpad.h
index 8e29c61..c57606c 100644
--- a/noncore/graphics/drawpad/drawpad.h
+++ b/noncore/graphics/drawpad/drawpad.h
@@ -23,6 +23,7 @@ class Tool;
class QAction;
class QColor;
+class QSpinBox;
class QToolButton;
class QWidgetStack;
@@ -70,6 +71,9 @@ private slots:
void pageInformation();
private:
+ void loadConfig();
+ void saveConfig();
+
DrawPadCanvas* m_pDrawPadCanvas;
Tool* m_pTool;
@@ -101,6 +105,8 @@ private:
QToolButton* m_pEllipseToolButton;
QToolButton* m_pPenColorToolButton;
QToolButton* m_pBrushColorToolButton;
+
+ QSpinBox* m_pPenWidthSpinBox;
};
#endif // DRAWPAD_H
diff --git a/noncore/graphics/drawpad/drawpadcanvas.cpp b/noncore/graphics/drawpad/drawpadcanvas.cpp
index 5437068..05dd408 100644
--- a/noncore/graphics/drawpad/drawpadcanvas.cpp
+++ b/noncore/graphics/drawpad/drawpadcanvas.cpp
@@ -346,6 +346,19 @@ void DrawPadCanvas::selectPage(Page* page)
emit pageBackupsChanged();
}
+void DrawPadCanvas::selectPage(uint pagePosition)
+{
+ m_pages.at(pagePosition - 1);
+ m_pageBackups.clear();
+ m_pageBackups.append(new Page(*(m_pages.current())));
+
+ resizeContents(m_pages.current()->width(), m_pages.current()->height());
+ viewport()->update();
+
+ emit pagesChanged();
+ emit pageBackupsChanged();
+}
+
void DrawPadCanvas::backupPage()
{
m_pages.current()->setLastModified(QDateTime::currentDateTime());
diff --git a/noncore/graphics/drawpad/drawpadcanvas.h b/noncore/graphics/drawpad/drawpadcanvas.h
index dcaff5c..2283e5e 100644
--- a/noncore/graphics/drawpad/drawpadcanvas.h
+++ b/noncore/graphics/drawpad/drawpadcanvas.h
@@ -48,6 +48,7 @@ public:
uint pageCount();
void selectPage(Page* page);
+ void selectPage(uint pagePosition);
void backupPage();
public slots: