summaryrefslogtreecommitdiffstats
path: root/languages/ada/addclass.h
blob: 7bcfd370b4e0f08f87bf43ac9d7b9530fd4fc76f (plain)
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
#ifndef __ADDCLASS_H__
#define __ADDCLASS_H__


#include <qstring.h>
#include <qstringlist.h>


class AddClassInfo
{
public:

  AddClassInfo();

  enum Visibility { PublicClass, ProtectedClass, PrivateClass};
	
  QString className;
  QString extends;
  bool    interfaceOpt, abstractOpt, finalOpt;
  QString projectDir, sourceDir;
  Visibility visibility;
  QStringList implements;
  bool    createConstructor, createMain;
  QString documentation;
  QString license;

  QString adaFileName() const;

};


class AddClass
{
public:

  AddClass();

  void setInfo(const AddClassInfo &info);
  AddClassInfo &info();

  void setBaseClasses(const QStringList &classes);
  bool showDialog();

  bool generate();

	
private:

  AddClassInfo m_info;
  QStringList  m_baseClasses;

};


#endif