/*************************************************************************** * Copyright (C) 2002 by Jakob Simon-Gaarde * * jsgaarde@tdcspace.dk * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef SUBCLASSINGDLG_H #define SUBCLASSINGDLG_H #include #include "subclassingdlgbase.h" class TQStringList; class TQDomDocument; class kjsSupportPart; class SlotItem : public TQCheckListItem { public: SlotItem(TQListView *tqparent,const TQString &text, const TQString &specifier, const TQString &Access, const TQString &returnType,bool isFunc, bool callBaseClass=false); void setAllreadyInSubclass(); TQString m_access; TQString m_methodName; TQString m_returnType; TQString m_specifier; bool m_isFunc; bool m_callBaseClass; bool m_alreadyInSubclass; }; class SubclassingDlg : public SubclassingDlgBase { public: SubclassingDlg(kjsSupportPart* kjsSupport, const TQString &formFile,TQStringList &newFileNames, TQWidget* tqparent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); /* SubclassingDlg(CppSupportPart* kjsSupport, const TQString &formFile,const TQString &filename,TQStringList &dummy, TQWidget* tqparent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 );*/ ~SubclassingDlg(); private: void readUiFile(); TQString readBaseClassName(); void updateDlg(); bool replaceKeywords(TQString &buffer, bool canBeModal=true); void replace(TQString &string, const TQString& search, const TQString& replace); bool saveBuffer(TQString &buffer, const TQString& filename); bool loadBuffer(TQString &buffer, const TQString& filename); bool alreadyInSubclass(const TQString &method); bool m_creatingNewSubclass; public slots: virtual void accept(); virtual void onChangedClassName(); protected: TQStringList &m_newFileNames; TQString m_filename; TQString m_formFile; TQString m_baseClassName; TQString m_qtBaseClassName; TQString m_baseCaption; TQString m_formName; TQString m_formPath; TQStringList m_parsedMethods; bool m_canBeModal; TQValueList m_slots; TQValueList m_functions; kjsSupportPart* m_kjsSupport; TQString connections; }; #endif