summaryrefslogtreecommitdiff
authorzecke <zecke>2004-04-08 00:42:01 (UTC)
committer zecke <zecke>2004-04-08 00:42:01 (UTC)
commit5afca2540a2d6bf733c89ea97748496a679bc576 (patch) (side-by-side diff)
tree3e4e419ccc0e1b1cb71cc2cf7e75d36f9301de81
parent8c54ad421c7bee65b2a1442ce85c09f2eff3efc6 (diff)
downloadopie-5afca2540a2d6bf733c89ea97748496a679bc576.zip
opie-5afca2540a2d6bf733c89ea97748496a679bc576.tar.gz
opie-5afca2540a2d6bf733c89ea97748496a679bc576.tar.bz2
Import a QPixmap via QCOP
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/graphics/drawpad/drawpad.cpp19
-rw-r--r--noncore/graphics/drawpad/drawpad.h2
-rw-r--r--noncore/graphics/drawpad/drawpadcanvas.cpp20
-rw-r--r--noncore/graphics/drawpad/drawpadcanvas.h5
4 files changed, 40 insertions, 6 deletions
diff --git a/noncore/graphics/drawpad/drawpad.cpp b/noncore/graphics/drawpad/drawpad.cpp
index 3331193..d9d0ce0 100644
--- a/noncore/graphics/drawpad/drawpad.cpp
+++ b/noncore/graphics/drawpad/drawpad.cpp
@@ -56,2 +56,4 @@ DrawPad::DrawPad(QWidget* parent, const char* name, WFlags /*fl*/ )
// init members
+ connect( qApp, SIGNAL(appMessage(const QCString&, const QByteArray&)),
+ this, SLOT(slotAppMessage(const QCString&, const QByteArray&)) );
@@ -665 +667,18 @@ void DrawPad::saveConfig()
}
+
+
+/*
+ * Import a Thumbnail from SCAP or similiar
+ */
+void DrawPad::slotAppMessage( const QCString& str, const QByteArray& ar ) {
+ QDataStream stream(ar, IO_ReadOnly );
+ /*
+ * import the pixmap
+ */
+ if ( str == "importPixmap(QPixmap)" ) {
+ QPixmap pix;
+ stream >> pix;;
+ m_pDrawPadCanvas->importPixmap( pix );
+ QPEApplication::setKeepRunning();
+ }
+}
diff --git a/noncore/graphics/drawpad/drawpad.h b/noncore/graphics/drawpad/drawpad.h
index 8ba6e58..ba9e47d 100644
--- a/noncore/graphics/drawpad/drawpad.h
+++ b/noncore/graphics/drawpad/drawpad.h
@@ -50,2 +50,4 @@ private slots:
+ void slotAppMessage( const QCString&, const QByteArray& );
+
void setPointTool();
diff --git a/noncore/graphics/drawpad/drawpadcanvas.cpp b/noncore/graphics/drawpad/drawpadcanvas.cpp
index 446096c..423ef26 100644
--- a/noncore/graphics/drawpad/drawpadcanvas.cpp
+++ b/noncore/graphics/drawpad/drawpadcanvas.cpp
@@ -182,3 +182,3 @@ void DrawPadCanvas::load(QIODevice* ioDevice)
if (m_pages.isEmpty()) {
- m_pages.append(new Page("",
+ m_pages.append(new Page("",
clipper()->width()+(verticalScrollBar()->isVisible()?verticalScrollBar()->width():0),
@@ -196,3 +196,3 @@ void DrawPadCanvas::initialPage()
{
- m_pages.append(new Page("",
+ m_pages.append(new Page("",
clipper()->width()+(verticalScrollBar()->isVisible()?verticalScrollBar()->width():0),
@@ -267,2 +267,14 @@ void DrawPadCanvas::importPage(const QString& fileName)
+void DrawPadCanvas::importPixmap( const QPixmap& pix ) {
+ Page* importedPage = new Page();
+
+ (*importedPage->pixmap()) = pix;
+ m_pages.insert(m_pages.at()+1, importedPage );
+ resizeContents(m_pages.current()->pixmap()->width(),
+ m_pages.current()->pixmap()->height() );
+ viewport()->update();
+
+ emit pagesChanged();
+}
+
void DrawPadCanvas::exportPage(uint fromPage, uint toPage, const QString& name,const QString& format)
@@ -355,3 +367,3 @@ void DrawPadCanvas::deleteAll()
- m_pages.append(new Page("",
+ m_pages.append(new Page("",
clipper()->width()+(verticalScrollBar()->isVisible()?verticalScrollBar()->width():0),
@@ -391,3 +403,3 @@ void DrawPadCanvas::deletePage()
if (m_pages.isEmpty()) {
- m_pages.append(new Page("",
+ m_pages.append(new Page("",
clipper()->width()+(verticalScrollBar()->isVisible()?verticalScrollBar()->width():0),
diff --git a/noncore/graphics/drawpad/drawpadcanvas.h b/noncore/graphics/drawpad/drawpadcanvas.h
index 80a2a7e..2b3d4a5 100644
--- a/noncore/graphics/drawpad/drawpadcanvas.h
+++ b/noncore/graphics/drawpad/drawpadcanvas.h
@@ -25,3 +25,3 @@ class Page;
class DrawPadCanvas : public QScrollView
-{
+{
Q_OBJECT
@@ -38,2 +38,3 @@ public:
void exportPage(uint fromPage, uint toPage, const QString& name, const QString& format);
+ void importPixmap( const QPixmap& );
@@ -58,3 +59,3 @@ public slots:
void movePageDown();
-
+
void undo();