KDevelop API Documentation

languages/haskell/haskellsupport_part.cpp

Go to the documentation of this file.
00001 /*************************************************************************** 00002 haskellsupport_part.cpp - description 00003 ------------------- 00004 begin : Mon Aug 11 2003 00005 copyright : (C) 2003 by Peter Robinson 00006 email : listener@thaldyron.com 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 00015 * * 00016 ***************************************************************************/ 00017 00018 #include <qwhatsthis.h> 00019 #include <qdir.h> 00020 #include <qtimer.h> 00021 #include <kiconloader.h> 00022 #include <klocale.h> 00023 #include <kdevgenericfactory.h> 00024 #include <kdebug.h> 00025 #include <kapplication.h> 00026 #include <kstatusbar.h> 00027 00028 //#include <antlr/ASTFactory.hpp> 00029 00030 #include "kdevpartcontroller.h" 00031 #include "kdevproject.h" 00032 #include "kdevcore.h" 00033 #include "kdevmainwindow.h" 00034 00035 #include "haskellsupport_part.h" 00036 00037 typedef KDevGenericFactory<HaskellSupportPart> HaskellSupportFactory; 00038 static const KAboutData data("kdevhaskellsupport", I18N_NOOP("Language"), "1.0"); 00039 K_EXPORT_COMPONENT_FACTORY( libkdevhaskellsupport, HaskellSupportFactory( &data ) ) 00040 00041 HaskellSupportPart::HaskellSupportPart(QObject *parent, const char *name, const QStringList& ) 00042 : KDevLanguageSupport("KDevPart", "kdevpart", parent, name ? name : "HaskellSupportPart" ) 00043 { 00044 setInstance(HaskellSupportFactory::instance()); 00045 setXMLFile("kdevpart_haskellsupport.rc"); 00046 00047 connect( core(), SIGNAL( projectOpened() ), 00048 this, SLOT( projectOpened() ) ); 00049 connect( core(), SIGNAL( projectClosed() ), 00050 this, SLOT( projectClosed() ) ); 00051 connect( partController(), SIGNAL( savedFile( const QString& ) ), 00052 this, SLOT( savedFile( const QString& ) ) ); 00053 connect( core(), SIGNAL( contextMenu( QPopupenu*, const Context* ) ), 00054 this, SLOT( contextMenu( QPopupenu *, const Context* ) ) ); 00055 connect( core(), SIGNAL( configWidget( KDialogBase* ) ), 00056 this, SLOT( configWidget( KDialogBase* ) ) ); 00057 connect( core(), SIGNAL( projectConfigWidget( KDialogBase* ) ), 00058 this, SLOT( projectConfigWidget( KDialogBase* ) ) ); 00059 kdDebug( 9000 ) << "Haskell support found"; 00060 00061 // @todo embed problem reporter instead: 00062 // mainWindow()->embedOutputView( m_widget, "name that should appear", "enter a tooltip" ); 00063 } 00064 00065 00066 HaskellSupportPart::~HaskellSupportPart() 00067 { 00068 // remove & delete problemReporter view 00069 } 00070 00071 00072 HaskellSupportPart::Features HaskellSupportPart::features() 00073 { 00074 return Features( Functions ); 00075 } 00076 00077 void HaskellSupportPart::projectOpened() 00078 { 00079 connect( project(), SIGNAL( addedFilesToProject( const QStringList& ) ), 00080 this, SLOT( addedFilesToProject( const QStringList& ) ) ); 00081 connect( project(), SIGNAL( removedFilesFromProject( const QStringList& ) ), 00082 this, SLOT( removedFilesFromProject( const QStringList& ) ) ); 00083 QDir::setCurrent( project()->projectDirectory() ); 00084 m_projectFileList = project()->allFiles(); 00085 m_projectClosed = false; 00086 QTimer::singleShot( 0, this, SLOT( slotInitialParse() ) ); 00087 } 00088 00089 void HaskellSupportPart::projectClosed() 00090 { 00091 m_projectClosed = true; 00092 } 00093 00094 void HaskellSupportPart::configWidget( KDialogBase *dlg ) 00095 { 00096 Q_UNUSED( dlg ); 00097 return; 00098 } 00099 00100 void HaskellSupportPart::projectConfigWidget( KDialogBase *dlg ) 00101 { 00102 Q_UNUSED( dlg ); 00103 return; 00104 } 00105 00106 void HaskellSupportPart::contextMenu( QPopupMenu *popup, const Context *context ) 00107 { 00108 Q_UNUSED( popup ); 00109 return; 00110 } 00111 00112 void HaskellSupportPart::savedFile( const QString &fileName ) 00113 { 00114 Q_UNUSED( fileName ); 00115 return; 00116 } 00117 00118 void HaskellSupportPart::addedFilesToProject( const QStringList &fileList ) 00119 { 00120 Q_UNUSED( fileList ); 00121 return; 00122 } 00123 00124 void HaskellSupportPart::removedFilesFromProject( const QStringList &fileList ) 00125 { 00126 Q_UNUSED( fileList ); 00127 return; 00128 } 00129 00130 void HaskellSupportPart::slotProjectCompiled() 00131 { 00132 return; 00133 } 00134 00135 void HaskellSupportPart::slotInitialParse() 00136 { 00137 return; 00138 } 00139 00140 KMimeType::List HaskellSupportPart::mimeTypes() 00141 { 00142 KMimeType::List list; 00143 KMimeType::Ptr mime = KMimeType::mimeType( "text/x-haskell" ); 00144 if( mime ) { 00145 list << mime; 00146 } 00147 return list; 00148 } 00149 00150 #include "haskellsupport_part.moc"
KDE Logo
This file is part of the documentation for KDevelop Version 3.0.4.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Tue Oct 19 08:01:43 2004 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003