buildtools/haskell/haskellprojectoptionsdlg.h
Go to the documentation of this file.00001 /*************************************************************************** 00002 haskellprojectoptionsdlg.h - description 00003 ------------------- 00004 begin : Fri Aug 15 2003 00005 copyright : (C) 2003 by KDevelop Authors 00006 email : kdevelop-devel@kdevelop.org 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 #ifndef HASKELLPROJECTOPTIONSDLG_H 00019 #define HASKELLPROJECTOPTIONSDLG_H 00020 00021 00022 #include <ktrader.h> 00023 00024 #include "haskellproject_optionsdlgbase.h" 00025 #include "haskellproject_part.h" 00026 00031 class HaskellProjectOptionsDlg : public HaskellProjectOptionsDlgBase 00032 { 00033 Q_OBJECT 00034 public: 00035 HaskellProjectOptionsDlg( HaskellProjectPart *part, QWidget* parent = 0, 00036 const char* name = 0, WFlags fl = 0 ); 00037 ~HaskellProjectOptionsDlg(); 00038 00039 public slots: 00040 virtual void accept(); 00041 00042 protected slots: 00043 virtual void compiler_box_activated(const QString &s); 00044 void configComboTextChanged(const QString &config); 00045 void configChanged(const QString &config); 00046 void configAdded(); 00047 void configRemoved(); 00048 void optionsButtonClicked(); 00049 void setDirty(); 00050 void setDefaultOptions(); 00051 00052 private: 00053 QStringList _allConfigs; 00054 QString _currentConfig; 00055 bool _dirty; 00056 00057 KTrader::OfferList offers; 00058 QStringList _serviceNames; 00059 QStringList _serviceExecs; 00060 HaskellProjectPart *_part; 00061 00062 void saveConfig(QString config); 00063 void readConfig(QString config); 00064 QStringList allBuildConfigs(); 00065 void insertServicesIntoDlg( const QValueList<KService::Ptr> &list ); 00066 void setCurrentCompBoxText( const QString &str, const QStringList &names); 00067 QString currentCompBoxText( const QStringList &names ); 00068 QString defaultCompiler(); 00069 int itemForText(const QString &str, const QStringList &names); 00070 }; 00071 00072 #endif