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

TDevelop Interfaces Library

Public Types | Signals | Public Member Functions | Protected Member Functions | List of all members
KDevProject Class Referenceabstract

#include <kdevproject.h>

Inheritance diagram for KDevProject:
KDevPlugin

Public Types

enum  Options { UsesOtherBuildSystem = 0, UsesAutotoolsBuildSystem = 1, UsesTQMakeBuildSystem =2 }
 

Signals

void addedFilesToProject (const TQStringList &fileList)
 
void removedFilesFromProject (const TQStringList &fileList)
 
void changedFilesInProject (const TQStringList &fileList)
 
void projectCompiled ()
 
void activeDirectoryChanged (const TQString &olddir, const TQString &newdir)
 

Public Member Functions

 KDevProject (const KDevPluginInfo *info, TQObject *parent=0, const char *name=0)
 
virtual ~KDevProject ()
 
virtual void openProject (const TQString &dirName, const TQString &projectName)
 
virtual void closeProject ()=0
 
virtual Options options () const
 
virtual TQString projectDirectory () const =0
 
virtual TQString projectName () const =0
 
virtual DomUtil::PairList runEnvironmentVars () const =0
 
virtual TQString mainProgram () const =0
 
virtual TQString runDirectory () const =0
 
virtual TQString runArguments () const =0
 
virtual TQString debugArguments () const =0
 
virtual TQString activeDirectory () const =0
 
virtual TQString buildDirectory () const =0
 
virtual TQStringList allFiles () const =0
 
virtual TQStringList distFiles () const =0
 
virtual void addFiles (const TQStringList &fileList)=0
 
virtual void addFile (const TQString &fileName)=0
 
virtual void removeFiles (const TQStringList &fileList)=0
 
virtual void removeFile (const TQString &fileName)=0
 
virtual void changedFiles (const TQStringList &fileList)
 
virtual void changedFile (const TQString &fileName)
 
virtual bool isProjectFile (const TQString &absFileName)
 
virtual TQString relativeProjectFile (const TQString &absFileName)
 
virtual TQStringList symlinkProjectFiles ()
 
- Public Member Functions inherited from KDevPlugin
 KDevPlugin (const KDevPluginInfo *info, TQObject *parent, const char *name=0)
 
virtual ~KDevPlugin ()
 
const KDevPluginInfo * info ()
 
KDevMainWindow * mainWindow ()
 
KDevCore * core () const
 
KDevProject * project () const
 
KDevLanguageSupport * languageSupport () const
 
CodeModel * codeModel () const
 
TQDomDocument * projectDom () const
 
KDevPartController * partController () const
 
virtual KDevPluginController * pluginController () const
 
KDevCodeRepository * codeRepository () const
 
template<class Extension >
Extension * extension (const TQString &serviceType, const TQString &constraint="")
 
virtual void restorePartialProjectSession (const TQDomElement *el)
 
virtual void savePartialProjectSession (TQDomElement *el)
 

Protected Member Functions

TQString defaultRunDirectory (const TQString &projectPluginName) const
 

Detailed Description

KDevelop project interface.

Plugins implementing the KDevProject interfaces are used to manage projects.

Project can be considered as a way of grouping files (in text editors) or as a way of providing support for a build system (like it is done in TDevelop IDE buildtools).

Definition at line 48 of file kdevproject.h.

Member Enumeration Documentation

◆ Options

enum KDevProject::Options

Options of the project plugin.

Enumerator
UsesOtherBuildSystem 

Project uses unknown or unspecified build system or build system is not used at all.

UsesAutotoolsBuildSystem 

Project uses autotools for building.

UsesTQMakeBuildSystem 

Project uses qmake for building.

Definition at line 67 of file kdevproject.h.

Constructor & Destructor Documentation

◆ KDevProject()

KDevProject::KDevProject ( const KDevPluginInfo *  info,
TQObject *  parent = 0,
const char *  name = 0 
)

Constructs a project plugin.

Parameters
infoImportant information about the plugin - plugin internal and generic (GUI) name, description, a list of authors, etc. That information is used to show plugin information in various places like "about application" dialog, plugin selector dialog, etc. Plugin does not take ownership on info object, also its lifetime should be equal to the lifetime of the plugin.
parentThe parent object for the plugin. Parent object must implement KDevApi interface. Otherwise the plugin will not be constructed.
nameThe internal name which identifies the plugin.

Definition at line 40 of file kdevproject.cpp.

◆ ~KDevProject()

KDevProject::~KDevProject ( )
virtual

Destructor.

Definition at line 54 of file kdevproject.cpp.

Member Function Documentation

◆ activeDirectory()

virtual TQString KDevProject::activeDirectory ( ) const
pure virtual

Returns the path (relative to the project directory) of the active directory.

All newly automatically generated classes and files are usually added here.

◆ activeDirectoryChanged

void KDevProject::activeDirectoryChanged ( const TQString &  olddir,
const TQString &  newdir 
)
signal

Emitted when the active directory of the project changes.

Parameters
olddirThe old active directory
newdirThe new active directory

◆ addedFilesToProject

void KDevProject::addedFilesToProject ( const TQStringList &  fileList)
signal

Emitted when a new list of files has been added to the project.

Provided for convenience when many files were added.

Parameters
fileListThe file names relative to the project directory.

◆ addFile()

virtual void KDevProject::addFile ( const TQString &  fileName)
pure virtual

Adds a file to the project.

Parameters
fileNameThe file name relative to the project directory.

◆ addFiles()

virtual void KDevProject::addFiles ( const TQStringList &  fileList)
pure virtual

Adds a list of files to the project.

Provided for convenience when adding many files.

Parameters
fileListThe list of file names relative to the project directory.

◆ allFiles()

virtual TQStringList KDevProject::allFiles ( ) const
pure virtual
Returns
The list of all files in the project. The names are relative to the project directory.

◆ buildDirectory()

virtual TQString KDevProject::buildDirectory ( ) const
pure virtual
Returns
The canonical build directory of the project. If the separate build directory is not supported, this should return the same as projectDiretory(). Canonical means that a path does not contain symbolic links or redundant "." or ".." elements.

◆ changedFile()

void KDevProject::changedFile ( const TQString &  fileName)
virtual

Notifies the project of a change to one of the files.

Parameters
fileNameThe file name relative to the project directory.

Definition at line 62 of file kdevproject.cpp.

◆ changedFiles()

void KDevProject::changedFiles ( const TQStringList &  fileList)
virtual

Notifies the project about changes to the files.

Provided for convenience when changing many files.

Parameters
fileListThe list of file names relative to the project directory..

Definition at line 71 of file kdevproject.cpp.

◆ changedFilesInProject

void KDevProject::changedFilesInProject ( const TQStringList &  fileList)
signal

Emitted when a list of files has changed in the project.

Parameters
fileListThe file names relative to the project directory.

◆ closeProject()

virtual void KDevProject::closeProject ( )
pure virtual

This method is invoked when the project is about to be closed.

◆ debugArguments()

virtual TQString KDevProject::debugArguments ( ) const
pure virtual

The command line arguments that the mainProgram() should be debugged with.

◆ defaultRunDirectory()

TQString KDevProject::defaultRunDirectory ( const TQString &  projectPluginName) const
protected

Default implementation of runDirectory method.

Uses 'projectPluginName' to obtain configuration from project DOM and returns:

if /<projectPluginName>/run/directoryradio == executable The directory where the executable is. if /<projectPluginName>/run/directoryradio == build The build directory. if /kdevautoproject/run/directoryradio == custom The custom directory absolute path. Derived classes are supposed to explicitly call this implementation

Definition at line 128 of file kdevproject.cpp.

◆ distFiles()

virtual TQStringList KDevProject::distFiles ( ) const
pure virtual
Returns
The list of files that are part of the distribution but not under project control. Used mainly to package and publish extra files among with the project.

◆ isProjectFile()

bool KDevProject::isProjectFile ( const TQString &  absFileName)
virtual
Returns
true if the file absFileName is a part of the project.
Parameters
absFileNameAbsolute name of a file to check.

Definition at line 81 of file kdevproject.cpp.

◆ mainProgram()

virtual TQString KDevProject::mainProgram ( ) const
pure virtual
Returns
The path to main binary program of the project.
Parameters
relativeif true then the path returned is relative to the project directory.

◆ openProject()

void KDevProject::openProject ( const TQString &  dirName,
const TQString &  projectName 
)
virtual

This method is invoked when the project is opened (i.e.

actually just after this class has been instantiated).

Parameters
dirNameThe project directory, which should afterwards be returned by the projectDirectory() method.
projectNameThe project name, which is equivalent to the project file name without the suffix.

Definition at line 118 of file kdevproject.cpp.

◆ options()

KDevProject::Options KDevProject::options ( ) const
virtual

Reimplement this method to set project plugin options.

Default implementation returns KDevProject::UsesOtherBuildSystem.

Definition at line 76 of file kdevproject.cpp.

◆ projectCompiled

void KDevProject::projectCompiled ( )
signal

Emitted when one compile related command (make, make install, make ...) ends sucessfuly.

Used to reparse the files after a sucessful compilation.

◆ projectDirectory()

virtual TQString KDevProject::projectDirectory ( ) const
pure virtual
Returns
The canonical absolute directory of the project. Canonical means that a path does not contain symbolic links or redundant "." or ".." elements.

◆ projectName()

virtual TQString KDevProject::projectName ( ) const
pure virtual

Returns the name of the project.

◆ relativeProjectFile()

TQString KDevProject::relativeProjectFile ( const TQString &  absFileName)
virtual
Returns
The path (relative to the project directory) of the file absFileName.
Parameters
absFileNameAbsolute name of a file.

Definition at line 86 of file kdevproject.cpp.

◆ removedFilesFromProject

void KDevProject::removedFilesFromProject ( const TQStringList &  fileList)
signal

Emitted when a list of files has been removed from the project.

Provided for convenience when many files were removed.

Parameters
fileListThe file names relative to the project directory.

◆ removeFile()

virtual void KDevProject::removeFile ( const TQString &  fileName)
pure virtual

Removes a file from the project.

Parameters
fileNameThe file name relative to the project directory.

◆ removeFiles()

virtual void KDevProject::removeFiles ( const TQStringList &  fileList)
pure virtual

Removes a list of files from the project.

Provided for convenience when removing many files.

Parameters
fileListThe list of file names relative to the project directory.

◆ runArguments()

virtual TQString KDevProject::runArguments ( ) const
pure virtual

The command line arguments that the mainProgram() should be run with.

◆ runDirectory()

virtual TQString KDevProject::runDirectory ( ) const
pure virtual

Absolute path (directory) from where the mainProgram() should be run.

◆ runEnvironmentVars()

virtual DomUtil::PairList KDevProject::runEnvironmentVars ( ) const
pure virtual
Returns
The environment variables that sould be set before running mainProgram().

◆ symlinkProjectFiles()

TQStringList KDevProject::symlinkProjectFiles ( )
virtual
Returns
The list of files known to the project through symlinks.

Definition at line 123 of file kdevproject.cpp.


The documentation for this class was generated from the following files:
  • kdevproject.h
  • kdevproject.cpp

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.8.13
This website is maintained by Timothy Pearson.