• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • TDevelop Interfaces Library
 

TDevelop Interfaces Library

  • lib
  • interfaces
kdevlanguagesupport.h
Go to the documentation of this file.
1/* This file is part of the KDE project
2 Copyright (C) 2001 Matthias Hoelzer-Kluepfel <hoelzer@kde.org>
3 Copyright (C) 2001-2002 Bernd Gehrmann <bernd@kdevelop.org>
4 Copyright (C) 2002-2003 Roberto Raggi <roberto@kdevelop.org>
5 Copyright (C) 2002 Simon Hausmann <hausmann@kde.org>
6 Copyright (C) 2002 F@lk Brettschneider <falkbr@kdevelop.org>
7 Copyright (C) 2003 Amilcar do Carmo Lucas <amilcar@ida.ing.tu-bs.de>
8 Copyright (C) 2003-2004 Alexander Dymo <adymo@kdevelop.org>
9
10 This library is free software; you can redistribute it and/or
11 modify it under the terms of the GNU Library General Public
12 License as published by the Free Software Foundation; either
13 version 2 of the License, or (at your option) any later version.
14
15 This library is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 Library General Public License for more details.
19
20 You should have received a copy of the GNU Library General Public License
21 along with this library; see the file COPYING.LIB. If not, write to
22 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
23 Boston, MA 02110-1301, USA.
24*/
25#ifndef KDEVLANGUAGESUPPORT_H
26#define KDEVLANGUAGESUPPORT_H
27
28#include <tqstring.h>
29#include <tqstringlist.h>
30#include <kmimetype.h>
31#include "kdevplugin.h"
32#include "codemodel.h"
33#include <designer.h>
34
39
40class Tag;
41class KDevDesignerIntegration;
42
43using namespace KInterfaceDesigner;
44
61class KDevLanguageSupport: public KDevPlugin
62{
63 TQ_OBJECT
64
65
66public:
67
69 enum Features {
70 /*features of the language itself*/
71 Classes=1 ,
72 Structs=2 ,
73 Functions=4 ,
74 Variables=8 ,
75
76 Namespaces=16 ,
77 Signals=32 ,
78 Slots=64 ,
79 Declarations=128 ,
80
81 /*features of the language support part*/
82 NewClass=512 ,
83 AddMethod=1024 ,
84 AddAttribute=2048 ,
85 CreateAccessMethods=4096
86 };
87
97 KDevLanguageSupport(const KDevPluginInfo *info, TQObject *parent, const char *name);
99 ~KDevLanguageSupport();
100
103 virtual Features features();
104
107 virtual KMimeType::List mimeTypes();
108
111 virtual TQString formatTag(const Tag& tag);
112
118 virtual TQString formatModelItem(const CodeModelItem *item, bool shortDescription=false);
119
124 virtual TQString formatClassName(const TQString &name);
125
128 virtual TQString unformatClassName(const TQString &name);
129
135 virtual bool shouldSplitDocument( const KURL &url );
136
139 virtual TQt::Orientation splitOrientation() const;
140
143 virtual void addClass();
144
148 virtual void addMethod(ClassDom klass);
149
153 virtual void implementVirtualMethods(ClassDom klass);
154
158 virtual void addAttribute(ClassDom klass);
159
166 virtual void createAccessMethods(ClassDom theClass, VariableDom theVariable);
167
172 virtual TQStringList subclassWidget(const TQString& formName);
173
181 virtual TQStringList updateWidget(const TQString& formName, const TQString& fileName);
182
206 virtual KDevDesignerIntegration *designer(KInterfaceDesigner::DesignerType type);
207
208public slots:
214 void addFunction(DesignerType type, const TQString &formName, Function function);
215
221 void removeFunction(DesignerType type, const TQString &formName, Function function);
222
229 void editFunction(DesignerType type, const TQString &formName, Function oldFunction, Function function);
230
236 void openFunction(DesignerType type, const TQString &formName, const TQString &functionName);
237
242 void openSource(DesignerType type, const TQString &formName);
243
244signals:
246 void updatedSourceInfo();
247
249 void aboutToRemoveSourceInfo(const TQString& fileName);
250
252 void removedSourceInfo(const TQString& fileName);
253
255 void addedSourceInfo( const TQString& fileName );
256
258 void splitOrientationChanged( TQt::Orientation orientation );
259};
260
261#endif
ClassDom
Safe pointer to the ClassModel.
CodeModelItem
Item in code model (symbol store).
Definition codemodel.h:462
KDevDesignerIntegration
TDevelop designer integration interface.
Definition kdevdesignerintegration.h:52
KDevLanguageSupport::addMethod
virtual void addMethod(ClassDom klass)
Opens an "Add method" dialog and adds the configured method to the sources.
Definition kdevlanguagesupport.cpp:80
KDevLanguageSupport::formatModelItem
virtual TQString formatModelItem(const CodeModelItem *item, bool shortDescription=false)
Formats a CodeModelItem as used by the CodeModel to the human-readable convention.
Definition kdevlanguagesupport.cpp:102
KDevLanguageSupport::aboutToRemoveSourceInfo
void aboutToRemoveSourceInfo(const TQString &fileName)
Emitted before removing the file from the memory symbol store.
KDevLanguageSupport::addClass
virtual void addClass()
Opens a "New class" dialog and adds the configured class to the sources.
Definition kdevlanguagesupport.cpp:76
KDevLanguageSupport::updatedSourceInfo
void updatedSourceInfo()
Emitted when the content of the memory symbol store has been modified.
KDevLanguageSupport::mimeTypes
virtual KMimeType::List mimeTypes()
Definition kdevlanguagesupport.cpp:46
KDevLanguageSupport::openFunction
void openFunction(DesignerType type, const TQString &formName, const TQString &functionName)
Opens a function requested by a GUI designer.
Definition kdevlanguagesupport.cpp:144
KDevLanguageSupport::unformatClassName
virtual TQString unformatClassName(const TQString &name)
The opposite of formatClassName.
Definition kdevlanguagesupport.cpp:61
KDevLanguageSupport::removeFunction
void removeFunction(DesignerType type, const TQString &formName, Function function)
Removes a function requested by a GUI designer.
Definition kdevlanguagesupport.cpp:130
KDevLanguageSupport::removedSourceInfo
void removedSourceInfo(const TQString &fileName)
Emitted when a file has been removed from the memory symbol store.
KDevLanguageSupport::shouldSplitDocument
virtual bool shouldSplitDocument(const KURL &url)
Determines whether the document should be opened in a split view.
Definition kdevlanguagesupport.cpp:66
KDevLanguageSupport::splitOrientationChanged
void splitOrientationChanged(TQt::Orientation orientation)
Emitted when the language part changes the Split View orientation.
KDevLanguageSupport::formatClassName
virtual TQString formatClassName(const TQString &name)
Formats a canonicalized class path as used by the symbol store to the human-readable convention.
Definition kdevlanguagesupport.cpp:56
KDevLanguageSupport::addedSourceInfo
void addedSourceInfo(const TQString &fileName)
Emitted when a file has been added to the memory symbol store.
KDevLanguageSupport::openSource
void openSource(DesignerType type, const TQString &formName)
Opens a form source requested by a GUI designer.
Definition kdevlanguagesupport.cpp:158
KDevLanguageSupport::addAttribute
virtual void addAttribute(ClassDom klass)
Opens an "Add attribute" dialog and adds the configured attribute to the sources.
Definition kdevlanguagesupport.cpp:88
KDevLanguageSupport::updateWidget
virtual TQStringList updateWidget(const TQString &formName, const TQString &fileName)
Opens an "Update Widget" dialog for given TQt .ui file (formName) and prompts to add missing slot imp...
Definition kdevlanguagesupport.cpp:97
KDevLanguageSupport::features
virtual Features features()
Definition kdevlanguagesupport.cpp:41
KDevLanguageSupport::createAccessMethods
virtual void createAccessMethods(ClassDom theClass, VariableDom theVariable)
Opens an "create get/set methods" dialog and adds the configured methods to the sources.
Definition kdevlanguagesupport.cpp:152
KDevLanguageSupport::editFunction
void editFunction(DesignerType type, const TQString &formName, Function oldFunction, Function function)
Edits a function requested by a GUI designer.
Definition kdevlanguagesupport.cpp:122
KDevLanguageSupport::subclassWidget
virtual TQStringList subclassWidget(const TQString &formName)
Opens an "Subclass Widget" dialog for given TQt .ui file (formName) and propmts to implement it's slo...
Definition kdevlanguagesupport.cpp:92
KDevLanguageSupport::implementVirtualMethods
virtual void implementVirtualMethods(ClassDom klass)
Opens an "Implement Virtual Methods" dialog and adds the configured methods to the sources.
Definition kdevlanguagesupport.cpp:84
KDevLanguageSupport::formatTag
virtual TQString formatTag(const Tag &tag)
Formats a Tag as used by the persistent symbol store to the human-readable convention.
Definition kdevlanguagesupport.cpp:51
KDevLanguageSupport::KDevLanguageSupport
KDevLanguageSupport(const KDevPluginInfo *info, TQObject *parent, const char *name)
Constructs a language support plugin.
Definition kdevlanguagesupport.cpp:32
KDevLanguageSupport::addFunction
void addFunction(DesignerType type, const TQString &formName, Function function)
Adds a function requested by a GUI designer.
Definition kdevlanguagesupport.cpp:107
KDevLanguageSupport::splitOrientation
virtual TQt::Orientation splitOrientation() const
Returns the language parts Split View orientation.
Definition kdevlanguagesupport.cpp:71
KDevLanguageSupport::designer
virtual KDevDesignerIntegration * designer(KInterfaceDesigner::DesignerType type)
Reimplement this method if you want to use integrated GUI designer for the language.
Definition kdevlanguagesupport.cpp:138
KDevLanguageSupport::Features
Features
Features supported by this language support.
Definition kdevlanguagesupport.h:69
KDevLanguageSupport::Structs
@ Structs
Language has structures or records.
Definition kdevlanguagesupport.h:72
KDevLanguageSupport::Slots
@ Slots
Language has slots (or qt library bindings are available).
Definition kdevlanguagesupport.h:78
KDevLanguageSupport::Variables
@ Variables
Language has variables.
Definition kdevlanguagesupport.h:74
KDevLanguageSupport::AddMethod
@ AddMethod
Language support can create methods.
Definition kdevlanguagesupport.h:83
KDevLanguageSupport::CreateAccessMethods
@ CreateAccessMethods
Language support can create get/set methods for attributes.
Definition kdevlanguagesupport.h:85
KDevLanguageSupport::AddAttribute
@ AddAttribute
Language support can create class attributes.
Definition kdevlanguagesupport.h:84
KDevLanguageSupport::Signals
@ Signals
Language has signals (or qt library bindings are available).
Definition kdevlanguagesupport.h:77
KDevLanguageSupport::Declarations
@ Declarations
Language has function declarations (like c, c++ and pascal).
Definition kdevlanguagesupport.h:79
KDevLanguageSupport::Namespaces
@ Namespaces
Language has namespaces.
Definition kdevlanguagesupport.h:76
KDevLanguageSupport::Functions
@ Functions
Language has functions.
Definition kdevlanguagesupport.h:73
KDevLanguageSupport::NewClass
@ NewClass
Language support can create classes.
Definition kdevlanguagesupport.h:82
KDevLanguageSupport::Classes
@ Classes
Language has classes (or class-like packages).
Definition kdevlanguagesupport.h:71
KDevLanguageSupport::~KDevLanguageSupport
~KDevLanguageSupport()
Destructor.
Definition kdevlanguagesupport.cpp:37
KDevPluginInfo
Information about TDevelop plugin.
Definition kdevplugininfo.h:40
KDevPlugin::KDevPlugin
KDevPlugin(const KDevPluginInfo *info, TQObject *parent, const char *name=0)
Constructs a plugin.
Definition kdevplugin.cpp:57
KDevPlugin::info
const KDevPluginInfo * info()
Provides an information about the plugin.
Definition kdevplugin.cpp:134
VariableDom
Safe pointer to the VariableModel.
codemodel.h
Code Model - a memory symbol store.
kdevplugin.h
TDevelop plugin interface.

TDevelop Interfaces Library

Skip menu "TDevelop Interfaces Library"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

TDevelop Interfaces Library

Skip menu "TDevelop Interfaces Library"
  • buildtools
  •   lib
  •     base
  •     parsers
  •       autotools
  •       qmake
  •     widgets
  •   api
  • languages
  •   lib
  •     debugger
  •     designer_integration
  •     interfaces
  • lib
  •   catalog
  •   interfaces
  •     extensions
  •     external
  •     extras
  •   util
  •   widgets
  •     propeditor
  • parts
  •   documentation
  •     interfaces
  • src
  •   profileengine
  •     lib
Generated for TDevelop Interfaces Library by doxygen 1.15.0
This website is maintained by Timothy Pearson.