-rw-r--r-- | noncore/graphics/drawpad/drawpad.cpp | 2 | ||||
-rw-r--r-- | noncore/graphics/drawpad/drawpadcanvas.cpp | 12 | ||||
-rw-r--r-- | noncore/graphics/drawpad/newpagedialog.cpp | 22 | ||||
-rw-r--r-- | noncore/graphics/drawpad/newpagedialog.h | 4 |
4 files changed, 24 insertions, 16 deletions
diff --git a/noncore/graphics/drawpad/drawpad.cpp b/noncore/graphics/drawpad/drawpad.cpp index aae9ab0..1375792 100644 --- a/noncore/graphics/drawpad/drawpad.cpp +++ b/noncore/graphics/drawpad/drawpad.cpp @@ -153,6 +153,7 @@ DrawPad::DrawPad(QWidget* parent, const char* name) m_pFilledRectangleToolAction->addTo(rectanglePopupMenu); m_pRectangleToolButton->setPopup(rectanglePopupMenu); + m_pRectangleToolButton->setPopupDelay(0); m_pEllipseToolButton = new QToolButton(drawModeToolBar); m_pEllipseToolButton->setToggleButton(true); @@ -168,6 +169,7 @@ DrawPad::DrawPad(QWidget* parent, const char* name) m_pFilledEllipseToolAction->addTo(ellipsePopupMenu); m_pEllipseToolButton->setPopup(ellipsePopupMenu); + m_pEllipseToolButton->setPopupDelay(0); m_pFillToolAction = new QAction(tr("Fill Region"), Resource::loadIconSet("drawpad/fill.png"), QString::null, 0, this); m_pFillToolAction->setToggleAction(true); diff --git a/noncore/graphics/drawpad/drawpadcanvas.cpp b/noncore/graphics/drawpad/drawpadcanvas.cpp index 8818c03..b8a1c2e 100644 --- a/noncore/graphics/drawpad/drawpadcanvas.cpp +++ b/noncore/graphics/drawpad/drawpadcanvas.cpp @@ -54,6 +54,7 @@ private: State m_state; ulong m_dataLenght; + QString m_dataFormat; QList<QPixmap> m_pixmaps; }; @@ -80,6 +81,11 @@ bool DrawPadCanvasXmlHandler::startElement(const QString& namespaceURI, const QS if (qName.compare("data") == 0) { m_state = InData; m_dataLenght = atts.value("length").toULong(); + m_dataFormat = atts.value("format"); + + if (m_dataFormat.isEmpty()) { + m_dataFormat = "XPM"; + } } return true; @@ -133,7 +139,7 @@ bool DrawPadCanvasXmlHandler::characters(const QString& ch) ::uncompress((uchar*)byteArrayUnzipped.data(), &m_dataLenght, (uchar*)byteArray.data(), byteArray.size()); QImage image; - image.loadFromData((const uchar*)byteArrayUnzipped.data(), m_dataLenght, "XPM"); + image.loadFromData((const uchar*)byteArrayUnzipped.data(), m_dataLenght, m_dataFormat); QPixmap* pixmap = new QPixmap(image.width(), image.height()); pixmap->convertFromImage(image); @@ -215,7 +221,7 @@ void DrawPadCanvas::save(QIODevice* ioDevice) QImage image = bufferIterator.current()->convertToImage(); QByteArray byteArray; QBuffer buffer(byteArray); - QImageIO imageIO(&buffer, "XPM"); + QImageIO imageIO(&buffer, "PNG"); buffer.open(IO_WriteOnly); imageIO.setImage(image); @@ -226,7 +232,7 @@ void DrawPadCanvas::save(QIODevice* ioDevice) QByteArray byteArrayZipped(size); ::compress((uchar*)byteArrayZipped.data(), &size, (uchar*)byteArray.data(), byteArray.size()); - textStream << " <data length=\"" << byteArray.size() << "\">"; + textStream << " <data length=\"" << byteArray.size() << "\" format=\"PNG\">"; static const char hexchars[] = "0123456789abcdef"; diff --git a/noncore/graphics/drawpad/newpagedialog.cpp b/noncore/graphics/drawpad/newpagedialog.cpp index b1b26ef..5c31978 100644 --- a/noncore/graphics/drawpad/newpagedialog.cpp +++ b/noncore/graphics/drawpad/newpagedialog.cpp @@ -20,14 +20,14 @@ #include <qradiobutton.h> #include <qspinbox.h> -NewPageDialog::NewPageDialog(uint width, uint height, const QColor& foregroundColor, - const QColor& backgroundColor, QWidget* parent, const char* name) +NewPageDialog::NewPageDialog(uint width, uint height, const QColor& penColor, + const QColor& brushColor, QWidget* parent, const char* name) : QDialog(parent, name, true) { setCaption(tr("New Page")); - m_foregroundColor = foregroundColor; - m_backgroundColor = backgroundColor; + m_penColor = penColor; + m_brushColor = brushColor; QGroupBox* sizeGroupBox = new QGroupBox(0, Qt::Vertical, tr("Page Size"), this); @@ -40,11 +40,11 @@ NewPageDialog::NewPageDialog(uint width, uint height, const QColor& foregroundCo m_pWidthSpinBox->setValue(width); m_pHeightSpinBox->setValue(height); - m_pContentButtonGroup = new QButtonGroup(0, Qt::Vertical, tr("Contents"), this); + m_pContentButtonGroup = new QButtonGroup(0, Qt::Vertical, tr("Background"), this); QRadioButton* whiteColorRadioButton = new QRadioButton(tr("White"), m_pContentButtonGroup); - QRadioButton* foregroundColorRadioButton = new QRadioButton(tr("Foreground Color"), m_pContentButtonGroup); - QRadioButton* backgroundColorRadioButton = new QRadioButton(tr("Background Color"), m_pContentButtonGroup); + QRadioButton* penColorRadioButton = new QRadioButton(tr("Pen Color"), m_pContentButtonGroup); + QRadioButton* brushColorRadioButton = new QRadioButton(tr("Brush Color"), m_pContentButtonGroup); m_pContentButtonGroup->setButton(0); @@ -62,8 +62,8 @@ NewPageDialog::NewPageDialog(uint width, uint height, const QColor& foregroundCo sizeLayout->setColStretch(1, 1); contentLayout->addWidget(whiteColorRadioButton); - contentLayout->addWidget(foregroundColorRadioButton); - contentLayout->addWidget(backgroundColorRadioButton); + contentLayout->addWidget(penColorRadioButton); + contentLayout->addWidget(brushColorRadioButton); mainLayout->addWidget(sizeGroupBox); mainLayout->addWidget(m_pContentButtonGroup); @@ -90,10 +90,10 @@ const QColor& NewPageDialog::selectedColor() return (Qt::white); break; case 1: - return (m_foregroundColor); + return (m_penColor); break; case 2: - return (m_backgroundColor); + return (m_brushColor); break; default: return (Qt::white); diff --git a/noncore/graphics/drawpad/newpagedialog.h b/noncore/graphics/drawpad/newpagedialog.h index f418340..d680394 100644 --- a/noncore/graphics/drawpad/newpagedialog.h +++ b/noncore/graphics/drawpad/newpagedialog.h @@ -36,8 +36,8 @@ private: QSpinBox* m_pWidthSpinBox; QSpinBox* m_pHeightSpinBox; - QColor m_foregroundColor; - QColor m_backgroundColor; + QColor m_penColor; + QColor m_brushColor; QButtonGroup* m_pContentButtonGroup; }; |