diff options
Diffstat (limited to 'interfaces/ktexteditor/selectioninterface.cpp')
-rw-r--r-- | interfaces/ktexteditor/selectioninterface.cpp | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/interfaces/ktexteditor/selectioninterface.cpp b/interfaces/ktexteditor/selectioninterface.cpp new file mode 100644 index 000000000..d568881d4 --- /dev/null +++ b/interfaces/ktexteditor/selectioninterface.cpp @@ -0,0 +1,65 @@ +#include "selectioninterface.h" +#include "selectiondcopinterface.h" +#include "document.h" +#include "view.h" + +using namespace KTextEditor; + +namespace KTextEditor +{ + class PrivateSelectionInterface + { + public: + PrivateSelectionInterface() + { + interface = 0; + } + ~PrivateSelectionInterface(){} + // Data Members + SelectionDCOPInterface *interface; + }; + +} + +unsigned int SelectionInterface::globalSelectionInterfaceNumber = 0; + +SelectionInterface::SelectionInterface() +{ + d = new PrivateSelectionInterface(); + globalSelectionInterfaceNumber++; + mySelectionInterfaceNumber = globalSelectionInterfaceNumber; + QString name = "SelectionInterface#" + QString::number(mySelectionInterfaceNumber); + d->interface = new SelectionDCOPInterface(this, name.latin1()); +} +SelectionInterface::~SelectionInterface() +{ + delete d->interface; + delete d; +} + +unsigned int SelectionInterface::selectionInterfaceNumber () const +{ + return mySelectionInterfaceNumber; +} + +void SelectionInterface::setSelectionInterfaceDCOPSuffix (const QCString &suffix) +{ + d->interface->setObjId ("SelectionInterface#"+suffix); +} + +SelectionInterface *KTextEditor::selectionInterface (Document *doc) +{ + if (!doc) + return 0; + + return static_cast<SelectionInterface*>(doc->qt_cast("KTextEditor::SelectionInterface")); +} + +SelectionInterface *KTextEditor::selectionInterface (View *view) +{ + if (!view) + return 0; + + return static_cast<SelectionInterface*>(view->qt_cast("KTextEditor::SelectionInterface")); +} + |