CervisiaPlugin Class Reference
A quick and dirty hack for integrating CervisiaPart in KDevelop: it is nor complete nor without the obvious "crashing feature" ;-P. More...
#include <cervisia_plugin.h>
Inheritance diagram for CervisiaPlugin:

Public Slots | |
void | slotProjectOpened () |
void | slotProjectClosed () |
Public Member Functions | |
CervisiaPlugin (QObject *parent, const char *name, const QStringList &) | |
Default constructor. | |
virtual | ~CervisiaPlugin () |
Destructor. | |
Private Attributes | |
KParts::ReadOnlyPart * | m_part |
Detailed Description
A quick and dirty hack for integrating CervisiaPart in KDevelop: it is nor complete nor without the obvious "crashing feature" ;-P.To make it compily with kdevelop GUI (file selector and ouput view being separated) I had to produce Cervisia sources: this will probably break because cervisia will change in future :-( The patch does:
- remove private references to Cervisia own dialogs (that forced a d-pointer like approach to make it work.
- modify Makefile.am so that the cervisiapart.h header files is installed and available to host application
- provide two accessor methods updateView() and protocolView() for embedding in kdevelop bars (so we can embed them separately)
This code is only an experimentation dealing with cervisia: it will be nice to have all the goodies cervisia provides but seems that XMLGUI wizardry is needed to merge the two guis in an acceptable way. In addition I see no way to have common context menus for other plugins in kdevelop :-/ (which is bad since we cannot have a file viewer for each VCS).
If you want to play with it feel free :-)) Just add some notes here if you have discovered something interesting ;-)
- Feature(s):
- integrates CervisiaPart in KDevelop
creates the cervisia kpart and embed its widgets in gideon.
merge the two guis
intercept signal KDevCore::projectOpened() and use KParts::ReadOnlyPart::openURL(const KURL &)
- Bug:
- GUI are "each on its own": we must find a way to force Cervisia to behave as we wish (for example, encapsulating it in a submenu or two)
once the project is opened, how to close it? ;-)
The patch will be soon obsoleted: once it is, the cervisia_plugin.{h,cpp} code must be re-hacked to deal only with KParts::ReadOnlyPart or re-sync the patch.
Definition at line 29 of file cervisia_plugin.h.
Constructor & Destructor Documentation
|
Default constructor.
|
|
Destructor.
Definition at line 69 of file cervisia_plugin.cpp. References KParts::ReadOnlyPart::closeURL(), KMainWindow::guiFactory(), m_part, KDevMainWindow::main(), KDevPlugin::mainWindow(), KXMLGUIFactory::removeClient(), KDevMainWindow::removeView(), and KParts::Part::widget(). |
Member Function Documentation
|
Definition at line 93 of file cervisia_plugin.cpp. References KParts::ReadOnlyPart::closeURL(), KMainWindow::guiFactory(), m_part, KDevMainWindow::main(), KDevPlugin::mainWindow(), KXMLGUIFactory::removeClient(), KDevMainWindow::removeView(), and KParts::Part::widget(). |
|
Definition at line 80 of file cervisia_plugin.cpp. References KXMLGUIFactory::addClient(), KDevMainWindow::embedSelectView(), KMainWindow::guiFactory(), m_part, KDevMainWindow::main(), KDevPlugin::mainWindow(), KParts::ReadOnlyPart::openURL(), KDevPlugin::project(), and KParts::Part::widget(). |
Member Data Documentation
|
Definition at line 47 of file cervisia_plugin.h. Referenced by slotProjectClosed(), slotProjectOpened(), and ~CervisiaPlugin(). |
The documentation for this class was generated from the following files:
- vcs/cervisia/cervisia_plugin.h
- vcs/cervisia/cervisia_plugin.cpp