HaskellProjectPart Class Reference
This is the Haskell build tool part. More...
#include <haskellproject_part.h>
Inheritance diagram for HaskellProjectPart:


Public Slots | |
void | loadProjectConfig () |
loads config from project file | |
Public Member Functions | |
HaskellProjectPart (QObject *parent, const char *name, const QStringList &) | |
~HaskellProjectPart () | |
virtual void | openProject (const QString &dirName, const QString &projectName) |
This method is invoked when the project is opened (i.e. | |
virtual void | closeProject () |
This method is invoked when the project is about to be closed. | |
virtual QString | mainProgram () |
Returns the name of the main source. | |
virtual QString | mainProgram (bool relative=false) const |
Retuns the currently selected main program The returned string can be: if run/directoryradio == executable The executable name if run/directoryradio == build The path to executable relative to build directory if run/directoryradio == custom or relative == false The absolute path to executable. | |
virtual QString | mainSource () const |
Main source file (like src/main.pp). | |
virtual void | setMainSource (QString fullPath) |
virtual QString | projectDirectory () const |
Returns the canonical toplevel directory of the project. | |
virtual QString | projectName () const |
Returns the name of the project. | |
virtual QString | activeDirectory () const |
Returns the path (relative to the project directory) of the active directory. | |
virtual QString | buildDirectory () const |
The location of the main source file. | |
virtual QString | runDirectory () const |
Absolute path (directory) from where the mainProgram() should be run. | |
virtual QString | runArguments () const |
Retuns a QString with the run command line arguments. | |
virtual DomUtil::PairList | runEnvironmentVars () const |
Retuns a PairList with the run environment variables. | |
virtual QStringList | allFiles () const |
Returns everything in the project directory. | |
virtual void | addFile (const QString &fileName) |
This does absolutelly nothing. | |
virtual void | addFiles (const QStringList &fileList) |
This does absolutelly nothing. | |
virtual void | removeFile (const QString &fileName) |
This does absolutelly nothing. | |
virtual void | removeFiles (const QStringList &fileList) |
This does absolutelly nothing. | |
virtual void | changedFiles (const QStringList &fileList) |
Notifies the project of changes to the files. | |
virtual void | changedFile (const QString &fileName) |
Notifies the project of a change to one of the files. | |
KDevCompilerOptions * | createCompilerOptions (const QString &name) |
virtual QString | defaultOptions (const QString compiler) |
QStringList | distFiles () const |
Returns a list of files that are part of the distribution but not under project control. | |
Private Slots | |
void | slotBuild () |
void | slotExecute () |
void | projectConfigWidget (KDialogBase *dlg) |
void | configWidget (KDialogBase *dlg) |
Private Member Functions | |
void | listOfFiles (QStringList &result, QString path) |
QString | createCmdLine (QString srcFile) |
QString | createPackageString () |
Private Attributes | |
KAction * | _buildAction |
KAction * | _runAction |
QGuardedPtr< HaskellProjectWidget > | m_widget |
QString | _buildDir |
QString | _projectDir |
QString | _projectName |
QString | _mainProg |
QString | _mainSource |
QString | _compilerExec |
QString | _compilerOpts |
QStringList | _sourceFiles |
Detailed Description
This is the Haskell build tool part.
Put a more detailed description of your part in these lines. It can span over several lines. You can even use some html commands in these lines like: This is code
, html links link text, and images.
- Deprecated:
- This class is deprecated, use GenericProjectPart (buildtools/generic) instead.
- Feature(s):
- Describe the first feature
Describe the second feature ...
Describe the last feature
- Bug:
- Describe a the 1st bug that you know of, but probably hasn't been reported yet. ..
Describe a the nth bug that you know of, but probably hasn't been reported yet.
- Requirement(s):
- Describe a the 1st requirement of your part.
Describe a the 2nd requirement of your part. ...
Describe a the nth requirement of your part.
- Todo:
- Describe a the 1st TODO of your part.
Describe a the 2nd TODO of your part. ...
Describe a the nth TODO of your part.
- F.A.Q.:
- First frequenly asked question about your part ? Answer.
Second frequenly asked question about your part ? Answer. ...
Last frequenly asked question about your part ? Answer.
- Note:
- First note text.
Second note text. ...
Last note text.
- Warning:
- First warning text.
Second warning text. ...
Last warning text.
Definition at line 42 of file haskellproject_part.h.
Constructor & Destructor Documentation
|
|
|
Definition at line 79 of file haskellproject_part.cpp. |
Member Function Documentation
|
Returns the path (relative to the project directory) of the active directory. All newly generated classes are added here. Implements KDevProject. Definition at line 197 of file haskellproject_part.cpp. References mainSource(), and projectDirectory(). |
|
This does absolutelly nothing.
Implements KDevProject. Definition at line 220 of file haskellproject_part.cpp. |
|
This does absolutelly nothing.
Implements KDevProject. Definition at line 215 of file haskellproject_part.cpp. |
|
Returns everything in the project directory.
Implements KDevProject. Definition at line 210 of file haskellproject_part.cpp. Referenced by distFiles(). |
|
The location of the main source file.
Implements KDevProject. Definition at line 204 of file haskellproject_part.cpp. References mainSource(). Referenced by createCmdLine(), mainProgram(), projectConfigWidget(), runDirectory(), slotBuild(), and slotExecute(). |
|
Notifies the project of a change to one of the files. The given file name must be relative to the project directory. Reimplemented from KDevProject. Definition at line 348 of file haskellproject_part.cpp. References KDevProject::changedFile(). |
|
Notifies the project of changes to the files. Provided for convenience when changing many files. The given file names must be relative to the project directory. Reimplemented from KDevProject. Definition at line 343 of file haskellproject_part.cpp. References KDevProject::changedFiles(). |
|
This method is invoked when the project is about to be closed.
Implements KDevProject. Definition at line 100 of file haskellproject_part.cpp. |
|
Definition at line 407 of file haskellproject_part.cpp. |
|
Definition at line 283 of file haskellproject_part.cpp. References _compilerExec, _compilerOpts, buildDirectory(), createPackageString(), mainProgram(), and KProcess::quote(). Referenced by slotBuild(). |
|
Definition at line 416 of file haskellproject_part.cpp. References KLibFactory::create(), KMessageBox::error(), KLibLoader::factory(), kdDebug(), KLibLoader::lastErrorMessage(), KService::Ptr, KLibLoader::self(), and KService::serviceByName(). Referenced by HaskellProjectOptionsDlg::optionsButtonClicked(). |
|
Definition at line 277 of file haskellproject_part.cpp. Referenced by createCmdLine(). |
|
Definition at line 449 of file haskellproject_part.cpp. References KGlobal::config(), kdDebug(), KConfigBase::readPathEntry(), and KConfigBase::setGroup(). Referenced by HaskellProjectOptionsDlg::setDefaultOptions(). |
|
Returns a list of files that are part of the distribution but not under project control.
Implements KDevProject. Definition at line 474 of file haskellproject_part.cpp. References allFiles(), and projectDirectory(). |
|
Definition at line 258 of file haskellproject_part.cpp. References KDevPlugin::d. |
|
loads config from project file
Definition at line 373 of file haskellproject_part.cpp. References _compilerExec, _compilerOpts, _mainSource, KDevPlugin::projectDom(), and DomUtil::readEntry(). Referenced by openProject(), and projectConfigWidget(). |
|
Retuns the currently selected main program The returned string can be: if run/directoryradio == executable The executable name if run/directoryradio == build The path to executable relative to build directory if run/directoryradio == custom or relative == false The absolute path to executable.
Implements KDevProject. Definition at line 132 of file haskellproject_part.cpp. References buildDirectory(), mainProgram(), mainSource(), KDevPlugin::projectDom(), and DomUtil::readEntry(). |
|
Returns the name of the main source.
Definition at line 457 of file haskellproject_part.cpp. References buildDirectory(), mainSource(), projectDirectory(), KDevPlugin::projectDom(), and DomUtil::readEntry(). Referenced by createCmdLine(), mainProgram(), openProject(), and slotExecute(). |
|
Main source file (like src/main.pp).
Definition at line 246 of file haskellproject_part.cpp. References projectDirectory(). Referenced by activeDirectory(), buildDirectory(), mainProgram(), and slotBuild(). |
|
This method is invoked when the project is opened (i.e. actually just after this class has been instantiated). The first parameter is the project directory, which should afterwards be returned by the projectDirectory() method. The second parameter is the project name, which is equivalent with the project file name without the .kdevelop suffix. Reimplemented from KDevProject. Definition at line 85 of file haskellproject_part.cpp. References _buildDir, _projectDir, _projectName, loadProjectConfig(), mainProgram(), KDevPlugin::projectDom(), and DomUtil::readEntry(). |
|
Definition at line 353 of file haskellproject_part.cpp. References KDialogBase::addVBoxPage(), buildDirectory(), loadProjectConfig(), RunOptionsWidgetBase::mainprogram_label, and KDevPlugin::projectDom(). |
|
Returns the canonical toplevel directory of the project.
Implements KDevProject. Definition at line 105 of file haskellproject_part.cpp. Referenced by activeDirectory(), distFiles(), mainProgram(), mainSource(), HaskellProjectOptionsDlg::readConfig(), HaskellProjectOptionsDlg::saveConfig(), and setMainSource(). |
|
Returns the name of the project.
Implements KDevProject. Definition at line 110 of file haskellproject_part.cpp. |
|
This does absolutelly nothing.
Implements KDevProject. Definition at line 228 of file haskellproject_part.cpp. |
|
This does absolutelly nothing.
Implements KDevProject. Definition at line 224 of file haskellproject_part.cpp. |
|
Retuns a QString with the run command line arguments.
Implements KDevProject. Definition at line 192 of file haskellproject_part.cpp. References KDevPlugin::projectDom(), and DomUtil::readEntry(). |
|
Absolute path (directory) from where the mainProgram() should be run.
Implements KDevProject. Definition at line 171 of file haskellproject_part.cpp. References buildDirectory(), KDevPlugin::projectDom(), and DomUtil::readEntry(). |
|
Retuns a PairList with the run environment variables.
Implements KDevProject. Definition at line 116 of file haskellproject_part.cpp. References DomUtil::PairList, KDevPlugin::projectDom(), and DomUtil::readPairListEntry(). |
|
Definition at line 251 of file haskellproject_part.cpp. References _mainSource, and projectDirectory(). |
|
Definition at line 295 of file haskellproject_part.cpp. References _compilerExec, buildDirectory(), createCmdLine(), mainSource(), KDevPlugin::makeFrontend(), KDevPlugin::partController(), KDevMakeFrontend::queueCommand(), KDevPartController::saveAllFiles(), and KMessageBox::sorry(). |
|
Member Data Documentation
|
Definition at line 99 of file haskellproject_part.h. |
|
Definition at line 106 of file haskellproject_part.h. Referenced by openProject(). |
|
Definition at line 112 of file haskellproject_part.h. Referenced by createCmdLine(), loadProjectConfig(), and slotBuild(). |
|
Definition at line 113 of file haskellproject_part.h. Referenced by createCmdLine(), and loadProjectConfig(). |
|
Definition at line 110 of file haskellproject_part.h. |
|
Definition at line 111 of file haskellproject_part.h. Referenced by loadProjectConfig(), and setMainSource(). |
|
Definition at line 107 of file haskellproject_part.h. Referenced by openProject(). |
|
Definition at line 108 of file haskellproject_part.h. Referenced by openProject(). |
|
Definition at line 99 of file haskellproject_part.h. |
|
Definition at line 115 of file haskellproject_part.h. |
|
Definition at line 100 of file haskellproject_part.h. |
The documentation for this class was generated from the following files:
- buildtools/haskell/haskellproject_part.h
- buildtools/haskell/haskellproject_part.cpp