[rkward-cvs] SF.net SVN: rkward: [1504] trunk/rkward/rkward

tfry at users.sourceforge.net tfry at users.sourceforge.net
Wed Feb 28 16:14:14 UTC 2007


Revision: 1504
          http://svn.sourceforge.net/rkward/?rev=1504&view=rev
Author:   tfry
Date:     2007-02-28 08:14:13 -0800 (Wed, 28 Feb 2007)

Log Message:
-----------
Rename KHelpDlg to RKHelpSearchWindow, and make it an RKMDIWindow

Modified Paths:
--------------
    trunk/rkward/rkward/khelpdlg.cpp
    trunk/rkward/rkward/khelpdlg.h
    trunk/rkward/rkward/misc/Makefile.am
    trunk/rkward/rkward/rkconsole.cpp
    trunk/rkward/rkward/rkglobals.cpp
    trunk/rkward/rkward/rkglobals.h
    trunk/rkward/rkward/rkward.cpp
    trunk/rkward/rkward/rkward.h
    trunk/rkward/rkward/robjectbrowser.cpp
    trunk/rkward/rkward/windows/rkcommandeditorwindow.cpp
    trunk/rkward/rkward/windows/rkhtmlwindow.cpp
    trunk/rkward/rkward/windows/rkmdiwindow.cpp

Added Paths:
-----------
    trunk/rkward/rkward/misc/rkdummypart.cpp
    trunk/rkward/rkward/misc/rkdummypart.h

Modified: trunk/rkward/rkward/khelpdlg.cpp
===================================================================
--- trunk/rkward/rkward/khelpdlg.cpp	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/khelpdlg.cpp	2007-02-28 16:14:13 UTC (rev 1504)
@@ -34,16 +34,23 @@
 #include "rkglobals.h"
 #include "rkward.h"
 #include "misc/rkcommonfunctions.h"
+#include "misc/rkdummypart.h"
 
 #define GET_HELP_URL 1
 #define HELP_SEARCH 2
 #define GET_INSTALLED_PACKAGES 3
 
-KHelpDlg::KHelpDlg (QWidget* parent, const char* name) : QWidget (parent, name) {
+RKHelpSearchWindow* RKHelpSearchWindow::main_help_search = 0;
+
+RKHelpSearchWindow::RKHelpSearchWindow (QWidget *parent, bool tool_window, char *name) : RKMDIWindow (parent, SearchHelpWindow, tool_window, name) {
+	RK_TRACE (APP);
+	part = new RKDummyPart (0, this);
+	setFocusPolicy (QWidget::ClickFocus);
+	initializeActivationSignals ();
+
 	QVBoxLayout* main_layout = new QVBoxLayout (this, RKGlobals::marginHint (), RKGlobals::spacingHint ());
 	QHBoxLayout* selection_layout = new QHBoxLayout (main_layout, RKGlobals::spacingHint ());
 
-
 	QVBoxLayout* labels_layout = new QVBoxLayout (selection_layout, RKGlobals::spacingHint ());
 	QLabel *label = new QLabel (i18n ("Find:"), this);
 	label->setSizePolicy (QSizePolicy::Fixed, QSizePolicy::Minimum);
@@ -52,7 +59,6 @@
 	label->setSizePolicy (QSizePolicy::Fixed, QSizePolicy::Minimum);
 	labels_layout->addWidget (label);
 
-
 	QVBoxLayout* main_settings_layout = new QVBoxLayout (selection_layout, RKGlobals::spacingHint ());
 	field = new QComboBox (true, this);
 	field->setSizePolicy (QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
@@ -76,7 +82,6 @@
 	packagesList->insertItem (i18n("All"));
 	fields_packages_layout->addWidget (packagesList);
 
-
 	QVBoxLayout* checkboxes_layout = new QVBoxLayout (selection_layout, RKGlobals::spacingHint ());
 	caseSensitiveCheckBox = new QCheckBox (i18n ("Case sensitive"), this);
 	checkboxes_layout->addWidget (caseSensitiveCheckBox);
@@ -96,27 +101,30 @@
 	connect (resultsList, SIGNAL (doubleClicked (QListViewItem*, const QPoint&, int)), this, SLOT (slotResultsListDblClicked (QListViewItem*, const QPoint&, int)));
 	main_layout->addWidget (resultsList);
 
-
 	RKGlobals::rInterface ()->issueCommand (".rk.get.installed.packages ()[[1]]", RCommand::App | RCommand::Sync | RCommand::GetStringVector, QString::null, this, GET_INSTALLED_PACKAGES, 0);
 
 	setCaption (i18n ("Help search"));
 }
 
-KHelpDlg::~KHelpDlg () {
+RKHelpSearchWindow::~RKHelpSearchWindow () {
+	RK_TRACE (APP);
 }
 
-void KHelpDlg::getContextHelp (const QString &context_line, int cursor_pos) {
+void RKHelpSearchWindow::getContextHelp (const QString &context_line, int cursor_pos) {
+	RK_TRACE (APP);
 	QString result = RKCommonFunctions::getCurrentSymbol (context_line, cursor_pos);
 	if (result.isEmpty ()) return;
 
 	getFunctionHelp (result);
 }
 
-void KHelpDlg::getFunctionHelp (const QString &function_name) {
+void RKHelpSearchWindow::getFunctionHelp (const QString &function_name) {
+	RK_TRACE (APP);
 	RKGlobals::rInterface ()->issueCommand ("help(\"" + function_name + "\", htmlhelp=TRUE)[1]", RCommand::App | RCommand::GetStringVector, QString::null, this, GET_HELP_URL, 0);
 }
 
-void KHelpDlg::slotFindButtonClicked () {
+void RKHelpSearchWindow::slotFindButtonClicked () {
+	RK_TRACE (APP);
 
 	if (field->currentText ().isEmpty ()) {
 		return;
@@ -156,7 +164,8 @@
 	field->insertItem (field->currentText ());
 }
 
-void KHelpDlg::slotResultsListDblClicked (QListViewItem * item, const QPoint &, int) {
+void RKHelpSearchWindow::slotResultsListDblClicked (QListViewItem * item, const QPoint &, int) {
+	RK_TRACE (APP);
 	if (item == NULL) {
 		return;
 	}
@@ -173,7 +182,8 @@
 	RKGlobals::rInterface ()->issueCommand (s, RCommand::App | RCommand::Sync | RCommand::GetStringVector, QString::null, this, GET_HELP_URL, 0);
 }
 
-void KHelpDlg::rCommandDone (RCommand *command) {
+void RKHelpSearchWindow::rCommandDone (RCommand *command) {
+	RK_TRACE (APP);
 	KURL url;
 	if (command->getFlags () == HELP_SEARCH) {
 		resultsList->clear ();

Modified: trunk/rkward/rkward/khelpdlg.h
===================================================================
--- trunk/rkward/rkward/khelpdlg.h	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/khelpdlg.h	2007-02-28 16:14:13 UTC (rev 1504)
@@ -15,15 +15,14 @@
  *                                                                         *
  ***************************************************************************/
 
-#ifndef KHELPDLG_H
-#define KHELPDLG_H
+#ifndef RKHELPSEARCHWINDOW_H
+#define RKHELPSEARCHWINDOW_H
 
 #include <qwidget.h>
 
 #include "rbackend/rcommandreceiver.h"
+#include "windows/rkmdiwindow.h"
 
-//#include "helpdlg.h"
-
 class QComboBox;
 class QCheckBox;
 class QPushButton;
@@ -35,19 +34,21 @@
 /** Provides a UI interface for help-search.
 
 @author Pierre Ecochard */
-class KHelpDlg : public QWidget, public RCommandReceiver {
+class RKHelpSearchWindow : public RKMDIWindow, public RCommandReceiver {
 	Q_OBJECT
 public:
-	KHelpDlg (QWidget* parent = 0, const char* name = 0);
-	~KHelpDlg ();
+	RKHelpSearchWindow (QWidget *parent, bool tool_window, char *name=0);
+	~RKHelpSearchWindow ();
 	void rCommandDone (RCommand *command);
 
+	KParts::Part *getPart () { return part; };
 /** small convenience function to get context help for RKCommandEditorWindow and RKConsole.
 @param context_line The current line
 @param cursor_pos cursor position in the current line
 Will figure out the word under the cursor, and provide help on that (if there is such a word, and such help exists) */
 	void getContextHelp (const QString &context_line, int cursor_pos);
 	void getFunctionHelp (const QString &function_name);
+	static RKHelpSearchWindow *mainHelpSearch () { return main_help_search; };
 public slots:
 	void slotFindButtonClicked();
 	void slotResultsListDblClicked( QListViewItem *item, const QPoint &, int );
@@ -59,7 +60,9 @@
 	QCheckBox* fuzzyCheckBox;
 	QPushButton* findButton;
 	QListView* resultsList;
+	KParts::Part *part;
+friend class RKWardMainWindow;
+	static RKHelpSearchWindow *main_help_search;
 };
 
 #endif
-

Modified: trunk/rkward/rkward/misc/Makefile.am
===================================================================
--- trunk/rkward/rkward/misc/Makefile.am	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/misc/Makefile.am	2007-02-28 16:14:13 UTC (rev 1504)
@@ -3,8 +3,10 @@
 noinst_LIBRARIES =  libmisc.a
 libmisc_a_SOURCES = rkerrordialog.cpp rkspinbox.cpp \
 	getfilenamewidget.cpp rkobjectlistview.cpp rkcanceldialog.cpp xmlhelper.cpp \
-	multistringselector.cpp rkcommonfunctions.cpp rkprogresscontrol.cpp rksaveobjectchooser.cpp
+	multistringselector.cpp rkcommonfunctions.cpp rkprogresscontrol.cpp rksaveobjectchooser.cpp \
+	rkdummypart.cpp
 noinst_HEADERS = rkerrordialog.h rkspinbox.h getfilenamewidget.h \
 	rkobjectlistview.h rkcanceldialog.h xmlhelper.h multistringselector.h \
-	rkcommonfunctions.h rkprogresscontrol.h rksaveobjectchooser.h
+	rkcommonfunctions.h rkprogresscontrol.h rksaveobjectchooser.h \
+	rkdummypart.h
 

Added: trunk/rkward/rkward/misc/rkdummypart.cpp
===================================================================
--- trunk/rkward/rkward/misc/rkdummypart.cpp	                        (rev 0)
+++ trunk/rkward/rkward/misc/rkdummypart.cpp	2007-02-28 16:14:13 UTC (rev 1504)
@@ -0,0 +1,35 @@
+/***************************************************************************
+                          rkdummypart  -  description
+                             -------------------
+    begin                : Wed Feb 28 2007
+    copyright            : (C) 2007 by Thomas Friedrichsmeier
+    email                : tfry at users.sourceforge.net
+ ***************************************************************************/
+
+/***************************************************************************
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ ***************************************************************************/
+
+#include <kapplication.h>
+
+#include "rkdummypart.h"
+
+#include "../debug.h"
+
+RKDummyPart::RKDummyPart (QObject *parent, QWidget *widget) : KParts::Part (parent) {
+	RK_TRACE (MISC);
+	setWidget (widget);
+
+	KInstance* instance = new KInstance ("rkward");
+	setInstance (instance);
+}
+
+RKDummyPart::~RKDummyPart () {
+	RK_TRACE (MISC);
+}
+

Added: trunk/rkward/rkward/misc/rkdummypart.h
===================================================================
--- trunk/rkward/rkward/misc/rkdummypart.h	                        (rev 0)
+++ trunk/rkward/rkward/misc/rkdummypart.h	2007-02-28 16:14:13 UTC (rev 1504)
@@ -0,0 +1,28 @@
+/***************************************************************************
+                          rkdummypart  -  description
+                             -------------------
+    begin                : Wed Feb 28 2007
+    copyright            : (C) 2007 by Thomas Friedrichsmeier
+    email                : tfry at users.sourceforge.net
+ ***************************************************************************/
+
+/***************************************************************************
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ ***************************************************************************/
+#ifndef RKDUMMYPART_H
+#define RKDUMMYPART_H
+
+#include <kparts/part.h>
+
+class RKDummyPart : public KParts::Part {
+public:
+	RKDummyPart (QObject *parent, QWidget *widget);
+	~RKDummyPart ();
+};
+
+#endif

Modified: trunk/rkward/rkward/rkconsole.cpp
===================================================================
--- trunk/rkward/rkward/rkconsole.cpp	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/rkconsole.cpp	2007-02-28 16:14:13 UTC (rev 1504)
@@ -155,7 +155,7 @@
 }
 
 KParts::Part *RKConsole::getPart () {
-	RK_TRACE (APP);
+	//RK_TRACE (APP);
 	return part;
 }
 
@@ -680,7 +680,7 @@
 
 void RKConsole::showContextHelp () {
 	RK_TRACE (APP);
-	RKGlobals::helpDialog ()->getContextHelp (currentCommand (), currentCursorPositionInCommand ());
+	RKHelpSearchWindow::mainHelpSearch ()->getContextHelp (currentCommand (), currentCursorPositionInCommand ());
 }
 
 void RKConsole::initializeActions (KActionCollection *ac) {

Modified: trunk/rkward/rkward/rkglobals.cpp
===================================================================
--- trunk/rkward/rkward/rkglobals.cpp	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/rkglobals.cpp	2007-02-28 16:14:13 UTC (rev 1504)
@@ -20,7 +20,6 @@
 
 RInterface *RKGlobals::rinter;
 RKModificationTracker *RKGlobals::mtracker;
-KHelpDlg *RKGlobals::helpdlg;
 RControlWindow *RKGlobals::rcontrol;
 
 double RKGlobals::na_double;

Modified: trunk/rkward/rkward/rkglobals.h
===================================================================
--- trunk/rkward/rkward/rkglobals.h	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/rkglobals.h	2007-02-28 16:14:13 UTC (rev 1504)
@@ -43,8 +43,6 @@
 	static RInterface *rInterface () { return rinter; };
 /// static pointer to the RKModificationTracker
 	static RKModificationTracker *tracker () { return mtracker; };
-/// static pointer to the RKHelpDlg
-	static KHelpDlg *helpDialog () { return helpdlg; };
 /// static pointer to the RControlWindow
 	static RControlWindow *controlWindow () { return rcontrol; };
 
@@ -62,7 +60,6 @@
 	friend class RKWardMainWindow;
 	static RInterface *rinter;
 	static RKModificationTracker *mtracker;
-	static KHelpDlg *helpdlg;
 	static RControlWindow *rcontrol;
 };
 

Modified: trunk/rkward/rkward/rkward.cpp
===================================================================
--- trunk/rkward/rkward/rkward.cpp	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/rkward.cpp	2007-02-28 16:14:13 UTC (rev 1504)
@@ -213,11 +213,13 @@
 	console->setToolWrapper (addToolWindow (console, KDockWidget::DockBottom, getMainDockWidget (), 10));
 	RKWorkplace::mainWorkplace ()->registerToolWindow (console);
 	RKConsole::setMainConsole (console);
-	
-	RKGlobals::helpdlg = new KHelpDlg (0);
-	RKGlobals::helpDialog ()->setIcon (SmallIcon ("help"));
-	search_help_view = addToolWindow (RKGlobals::helpDialog (), KDockWidget::DockBottom, getMainDockWidget (), 10);
 
+	RKHelpSearchWindow *help_search = new RKHelpSearchWindow (0, true, "r_help");
+	help_search->setIcon (SmallIcon ("help"));
+	help_search->setToolWrapper (addToolWindow (help_search, KDockWidget::DockBottom, getMainDockWidget (), 10));
+	RKWorkplace::mainWorkplace ()->registerToolWindow (help_search);
+	RKHelpSearchWindow::main_help_search = help_search;
+
 	RKOutputWindow::initialize ();
 
 	if (initial_url) {
@@ -572,8 +574,7 @@
 void RKWardMainWindow::showHelpSearch () {
 	RK_TRACE (APP);
 
-	search_help_view->show ();
-	search_help_view->wrapperWidget ()->topLevelWidget ()->raise ();
+	RKHelpSearchWindow::mainHelpSearch ()->activate ();
 }
 
 void RKWardMainWindow::showRKWardHelp () {

Modified: trunk/rkward/rkward/rkward.h
===================================================================
--- trunk/rkward/rkward/rkward.h	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/rkward.h	2007-02-28 16:14:13 UTC (rev 1504)
@@ -223,7 +223,6 @@
 	KAction* configure;
 
 	KMdiToolViewAccessor *watch_view;
-	KMdiToolViewAccessor *search_help_view;
 	
 	friend class RKSettingsModule;
 	friend class RKSettingsModulePlugins;

Modified: trunk/rkward/rkward/robjectbrowser.cpp
===================================================================
--- trunk/rkward/rkward/robjectbrowser.cpp	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/robjectbrowser.cpp	2007-02-28 16:14:13 UTC (rev 1504)
@@ -92,7 +92,7 @@
 void RObjectBrowser::popupHelp () {
 	RK_TRACE (APP);
 
-	if (list_view->menuObject ()) RKGlobals::helpDialog ()->getFunctionHelp (list_view->menuObject ()->getShortName ());
+	if (list_view->menuObject ()) RKHelpSearchWindow::mainHelpSearch ()->getFunctionHelp (list_view->menuObject ()->getShortName ());
 }
 
 void RObjectBrowser::popupEdit () {

Modified: trunk/rkward/rkward/windows/rkcommandeditorwindow.cpp
===================================================================
--- trunk/rkward/rkward/windows/rkcommandeditorwindow.cpp	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/windows/rkcommandeditorwindow.cpp	2007-02-28 16:14:13 UTC (rev 1504)
@@ -229,7 +229,7 @@
 
 	QString line = m_view->currentTextLine() + ' ';
 
-	RKGlobals::helpDialog ()->getContextHelp (line, p);
+	RKHelpSearchWindow::mainHelpSearch ()->getContextHelp (line, p);
 }
 
 void RKCommandEditorWindow::tryCompletionProxy () {

Modified: trunk/rkward/rkward/windows/rkhtmlwindow.cpp
===================================================================
--- trunk/rkward/rkward/windows/rkhtmlwindow.cpp	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/windows/rkhtmlwindow.cpp	2007-02-28 16:14:13 UTC (rev 1504)
@@ -388,7 +388,7 @@
 			ok = renderRKHelp (url);
 		} else if (url.host () == "rhelp") {
 			// TODO: find a nice solution to render this in the current window
-			RKGlobals::helpDialog ()->getFunctionHelp (url.path ().mid (1));
+			RKHelpSearchWindow::mainHelpSearch ()->getFunctionHelp (url.path ().mid (1));
 			return true;
 		} else if (url.host () == "page") {
 			ok = renderRKHelp (url);

Modified: trunk/rkward/rkward/windows/rkmdiwindow.cpp
===================================================================
--- trunk/rkward/rkward/windows/rkmdiwindow.cpp	2007-02-28 13:12:33 UTC (rev 1503)
+++ trunk/rkward/rkward/windows/rkmdiwindow.cpp	2007-02-28 16:14:13 UTC (rev 1504)
@@ -109,7 +109,7 @@
 }
 
 bool RKMDIWindow::eventFilter (QObject *watched, QEvent *e) {
-	RK_TRACE (APP);
+	//RK_TRACE (APP);
 
 #warning TODO
 // TODO: use partmanager's activePartChanged in rkward.cpp instead. There will have to be special handling in DetachedWindowContainer, anyway


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the rkward-tracker mailing list