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
|
/*
* Copyright (C) 2001 Matthias H�zer-Klpfel <mhk@caldera.de>
*/
#ifndef __KDEVPART_ASTYLE_H__
#define __KDEVPART_ASTYLE_H__
class KDialogBase;
#include <kdevsourceformatter.h>
#include <kaction.h>
#include <kparts/part.h>
#include <kdevplugin.h>
#include <kdebug.h>
#include <qmap.h>
#include <qvariant.h>
class AStyleWidget;
class QPopupMenu;
class Context;
class ConfigWidgetProxy;
class AStylePart : public KDevSourceFormatter
{
Q_OBJECT
public:
AStylePart(QObject *parent, const char *name, const QStringList &);
~AStylePart();
QString formatSource(const QString text, AStyleWidget * widget, const QMap<QString, QVariant>& options);
virtual QString formatSource(const QString text);
QString indentString() const;
void saveGlobal();
void setExtensions(QString ext, bool global);
QString getProjectExtensions();
QString getGlobalExtensions();
void restorePartialProjectSession(const QDomElement * el);
void savePartialProjectSession(QDomElement * el);
QMap<QString, QVariant>& getProjectOptions(){return m_project;}
QMap<QString, QVariant>& getGlobalOptions(){return m_global;}
private slots:
void activePartChanged(KParts::Part *part);
void beautifySource();
void formatFiles();
void formatFilesSelect();
void insertConfigWidget(const KDialogBase *dlg, QWidget *page, unsigned int pageNo);
void contextMenu(QPopupMenu *popup, const Context *context);
private:
void cursorPos( KParts::Part *part, uint * col, uint * line );
void setCursorPos( KParts::Part *part, uint col, uint line );
void loadGlobal();
ConfigWidgetProxy *m_configProxy;
KAction *formatTextAction;
KAction *formatFileAction;
// the configurable options.
QMap<QString, QVariant> m_project;
QMap<QString, QVariant> m_global;
QStringList m_projectExtensions;
QStringList m_globalExtensions;
QMap<QString, QString> m_searchExtensions;
KURL::List m_urls;
};
#endif
|