[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [Rekollect] 00264ae: Allow copying text in textile format to the
From:       "Jason E.Jackson" <jacksonje () gmail ! com>
Date:       2011-01-17 22:59:21
Message-ID: 20110117225921.8C1C7A6090 () git ! kde ! org
[Download RAW message or body]

commit 00264ae52c76a74b9f2940da0e77047538492730
branch master
Author: Jason E. Jackson <jacksonje@gmail.com>
Date:   Mon Jan 17 16:59:07 2011 -0600

    Allow copying text in textile format to the clipboard.

diff --git a/src/notewindow.cpp b/src/notewindow.cpp
index d929915..5b1ce58 100644
--- a/src/notewindow.cpp
+++ b/src/notewindow.cpp
@@ -28,6 +28,8 @@
 #include <QtCore/QFileInfo>
 #include <QtGui/QPrinter>
 #include <QtGui/QPrintDialog>
+#include <QtGui/QClipboard>
+#include <QtGui/QApplication>
 
 #include <KActionMenu>
 #include <KToolBar>
@@ -242,6 +244,9 @@ void NoteWindow::createActions()
 
     m_exportAsTextileAction = new KAction(i18nc("@action:inmenu Export note as \
                Textile", "as Textile..."), this);
     connect(m_exportAsTextileAction, SIGNAL(triggered()), SLOT(exportAsTextile()));
+
+    m_copyAsTextileAction = new KAction(i18nc("@action:inmenu Copy note as Textile \
to clipboard", "as Textile..."), this); +    connect(m_copyAsTextileAction, \
SIGNAL(triggered()), SLOT(copyAsTextile()));  }
 
 void NoteWindow::createToolbar()
@@ -305,6 +310,8 @@ void NoteWindow::createToolbar()
     m_actionActionMenu->addSeparator()->setText(i18nc("@title:group File export \
options", "Export as ..."));  m_actionActionMenu->addAction(m_exportAsHtmlAction);
     m_actionActionMenu->addAction(m_exportAsTextileAction);
+    m_actionActionMenu->addSeparator()->setText(i18nc("@title:group Copy as \
options", "Copy as ...")); +    m_actionActionMenu->addAction(m_copyAsTextileAction);
 
     toolBar()->addAction(m_actionActionMenu);
 
@@ -438,6 +445,18 @@ void NoteWindow::exportAsTextile()
     }
 }
 
+void NoteWindow::copyAsTextile()
+{
+    Note *note = editor()->document();
+    QString textileCopy;
+
+    TextileWriter writer(note->rootFrame(), note->tags());
+    writer.write(&textileCopy);
+
+    QClipboard *clipboard = QApplication::clipboard();
+    clipboard->setText(textileCopy);
+}
+
 void NoteWindow::slotPutResult(KJob *job)
 {
     if (job->error()) {
diff --git a/src/notewindow.h b/src/notewindow.h
index 5268717..2db02a5 100644
--- a/src/notewindow.h
+++ b/src/notewindow.h
@@ -67,6 +67,7 @@ private slots:
     void updateFormatMenu(const QTextCharFormat &charFormat);
     void exportAsHtml();
     void exportAsTextile();
+    void copyAsTextile();
     void slotPutResult(KJob *job);
 
     void printRequested();
@@ -102,6 +103,7 @@ private:
     KAction *m_deleteNoteAction;
     KAction *m_exportAsHtmlAction;
     KAction *m_exportAsTextileAction;
+    KAction *m_copyAsTextileAction;
 
 };
 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic