1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
|
/***************************************************************************
* 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 <qlistview.h>
#include "subclassingdlgbase.h"
class QStringList;
class QDomDocument;
class CppSupportPart;
class SlotItem : public QCheckListItem
{
public:
SlotItem(QListView *parent,const QString &text,
const QString &specifier, const QString &Access,
const QString &returnType,bool isFunc,
bool callBaseClass=false);
void setAllreadyInSubclass();
QString m_access;
QString m_methodName;
QString m_returnType;
QString m_specifier;
bool m_isFunc;
bool m_callBaseClass;
bool m_alreadyInSubclass;
};
class SubclassingDlg : public SubclassingDlgBase
{
public:
SubclassingDlg(CppSupportPart* cppSupport, const QString &formFile,QStringList &newFileNames,
QWidget* parent = 0, const char* name = 0,
bool modal = FALSE, WFlags fl = 0 );
SubclassingDlg(CppSupportPart* cppSupport, const QString &formFile,const QString &filename,QStringList &dummy,
QWidget* parent = 0, const char* name = 0,
bool modal = FALSE, WFlags fl = 0 );
~SubclassingDlg();
private:
void readUiFile();
QString readBaseClassName();
void updateDlg();
bool replaceKeywords(QString &buffer, bool canBeModal=true);
void replace(QString &string, const QString& search, const QString& replace);
bool saveBuffer(QString &buffer, const QString& filename);
bool loadBuffer(QString &buffer, const QString& filename);
bool alreadyInSubclass(const QString &method);
bool m_creatingNewSubclass;
public slots:
virtual void accept();
virtual void onChangedClassName();
protected:
QStringList &m_newFileNames;
QString m_filename;
QString m_formFile;
QString m_baseClassName;
QString m_qtBaseClassName;
QString m_baseCaption;
QString m_formName;
QString m_formPath;
QStringList m_parsedMethods;
bool m_canBeModal;
QValueList<SlotItem*> m_slots;
QValueList<SlotItem*> m_functions;
CppSupportPart* m_cppSupport;
};
#endif
|