[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/base/plasma/plasmate
From: Artur Duque de Souza <morpheuz () gmail ! com>
Date: 2009-02-28 21:29:50
Message-ID: 1235856590.718453.25847.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 933417 by asouza:
Following Dominik Haumann's tip: change the way we
instantiate the text editor.
M +1 -1 CMakeLists.txt
M +25 -21 mainwindow.cpp
M +9 -2 mainwindow.h
--- trunk/playground/base/plasma/plasmate/CMakeLists.txt #933416:933417
@@ -25,7 +25,7 @@
add_subdirectory( savesystem )
kde4_add_executable(plasmate ${PlasMate_SRC})
-target_link_libraries(plasmate ${KDE4_KDEUI_LIBS} ${KDE4_KPARTS_LIBS} \
${KDE4_KIO_LIBRARY} ${KDE4_PLASMA_LIBS}) +target_link_libraries(plasmate \
${KDE4_KDEUI_LIBS} ${KDE4_KTEXTEDITOR_LIBS} ${KDE4_KPARTS_LIBS} ${KDE4_KIO_LIBRARY} \
${KDE4_PLASMA_LIBS})
install(TARGETS plasmate ${INSTALL_TARGETS_DEFAULT_ARGS})
install(FILES plasmateui.rc DESTINATION ${DATA_INSTALL_DIR}/plasmate)
--- trunk/playground/base/plasma/plasmate/mainwindow.cpp #933416:933417
@@ -39,14 +39,21 @@
#include "ui_mainwindow.h"
#include "previewer/previewer.h"
+#include <ktexteditor/document.h>
+#include <ktexteditor/view.h>
+#include <ktexteditor/editor.h>
+#include <ktexteditor/editorchooser.h>
+
+
+
MainWindow::MainWindow(QWidget *parent)
: KParts::MainWindow(parent, 0),
m_workflow(0),
m_sidebar(0),
m_previewer(0),
- m_factory(0),
- m_part(0),
m_model(0),
+ m_editorView(0),
+ m_doc(0),
m_oldTab(0) // we start from startPage
{
setXMLFile("plasmateui.rc");
@@ -61,8 +68,11 @@
MainWindow::~MainWindow()
{
delete m_startPage;
- delete m_factory;
+ if (m_editorView) {
+ delete m_editorView;
+ }
+
if (m_previewer) {
delete m_previewer;
delete m_previewerWidget;
@@ -111,34 +121,27 @@
void MainWindow::showEditor()
{
- if (!m_factory) {
- m_factory = KLibLoader::self()->factory("katepart");
-
- m_part = 0;
- if (m_factory) {
- m_part = static_cast<KParts::ReadWritePart *>(m_factory->create(this, \
"KatePart"));
- }
+ if (!m_editorView) {
+ KTextEditor::Editor *editor = KTextEditor::EditorChooser::editor();
+ m_doc = editor->createDocument(0);
+ m_editorView = m_doc->createView(this);
+ setCentralWidget(m_editorView);
}
-
- if (m_part) {
- m_part = static_cast<KParts::ReadWritePart *>(m_factory->create(this, \
"KatePart"));
- setCentralWidget(m_part->widget());
- createGUI(m_part);
- }
}
void MainWindow::hideEditor()
{
- m_part->closeUrl();
- m_part = 0;
- createGUI(0);
+ delete m_editorView;
+ delete m_doc;
+
+ m_editorView = 0;
+ m_doc = 0;
}
void MainWindow::changeTab(int tab)
{
-// kDebug() << "Clicked m_sidebar item number" << tab;
- if (tab == m_oldTab) { // user clicked on the current tab
+ if (tab == m_oldTab) { // user clicked on the current tab
if (tab == StartPageTab) {
m_startPage->resetStatus();
}
@@ -163,6 +166,7 @@
case PublishTab: {
QLabel *l = new QLabel(i18n("Publish widget will go here!"), this);
setCentralWidget(l);
+ showEditor();
}
break;
case DocsTab: {
--- trunk/playground/base/plasma/plasmate/mainwindow.h #933416:933417
@@ -19,6 +19,12 @@
class MainWindowClass;
}
+namespace KTextEditor {
+ class Document;
+ class View;
+}
+
+
class QDockWidget;
class QStringList;
@@ -66,9 +72,10 @@
QDockWidget *m_previewerWidget;
Previewer *m_previewer;
- KLibFactory *m_factory;
+ KTextEditor::Document *m_doc;
+ KTextEditor::View *m_editorView;
+
EditPage *m_editPage;
- KParts::ReadWritePart *m_part;
PackageModel *m_model;
int m_oldTab;
};
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic