Developer documentation | Axl-2.5.1

axlInspectorToolManager_p.h
Go to the documentation of this file.
1 /* axlInspectorToolManager_p.h ---
2  *
3  * Author: Julien Wintz
4  * Copyright (C) 2008 - Julien Wintz, Inria.
5  * Created: Mon Mar 14 20:06:24 2011 (+0100)
6  * Version: $Id$
7  * Last-Updated: Tue Apr 3 14:19:49 2012 (+0200)
8  * By: Julien Wintz
9  * Update #: 29
10  */
11 
12 /* Commentary:
13  *
14  */
15 
16 /* Change log:
17  *
18  */
19 
20 #ifndef AXLINSPECTORTOOLMANAGER_P_H
21 #define AXLINSPECTORTOOLMANAGER_P_H
22 
23 #include <QtCore/QObject>
24 #include <QtCore/QStringList>
25 
26 #include <QtWidgets>
27 
28 class axlInspectorTool;
30 class dtkItem;
31 class dtkTag;
32 class dtkTagCloud;
33 class dtkTagScope;
34 
35 // /////////////////////////////////////////////////////////////////
36 // axlInspectorToolManagerView
37 // /////////////////////////////////////////////////////////////////
38 
39 class axlInspectorToolManagerView : public QTreeWidget
40 {
41  Q_OBJECT
42 
43 public:
44  axlInspectorToolManagerView(QWidget *parent = 0);
46 
47 signals:
48  void clicked(QString implementation, QString interface_name);
49 
50 protected slots:
51  void onItemDoubleClicked(QTreeWidgetItem *item, int column);
52 };
53 
54 // /////////////////////////////////////////////////////////////////
55 // axlInspectorToolManagerController
56 // /////////////////////////////////////////////////////////////////
57 
58 class axlInspectorToolManagerController : public QObject
59 {
60  Q_OBJECT
61 
62 public:
63  axlInspectorToolManagerController(QObject *parent = 0);
65 
67  void attach(dtkTagCloud *cloud);
68  void attach(dtkTagScope *scope);
69 
70  void addItem(QString name);
71  void addItem(QString name, QString description);
72  void addItem(QString name, QString description, QStringList tags);
73  // void addItem(QString name, QString description, QStringList tags, QStringList types);
74 
75  void update(void);
76  void render(void);
77 
78 private slots:
79  void addFilter(QString tag);
80  void setFilter(QString tag);
81  void clear(void);
82  void onUnionMode(bool mode);
83 
84 private:
86  dtkTagCloud *cloud;
87  dtkTagScope *scope;
88 
89  QList<dtkTag> tags;
90  QList<dtkItem> items;
91  QStringList filters;
92  bool union_mode;
93 };
94 
95 // /////////////////////////////////////////////////////////////////
96 // axlInspectorToolManagerPrivate
97 // /////////////////////////////////////////////////////////////////
98 
99 class axlInspectorToolManagerPrivate
100 {
101 public:
103  dtkTagCloud *cloud;
104  dtkTagScope *scope;
105  axlInspectorObjectController *ObjectController;
106  axlInspectorTool *inspector_tool;
107 
108 public:
110 };
111 
112 #endif //AXLINSPECTORTOOLMANAGER_P_H
axlInspectorToolManagerView(QWidget *parent=0)
void clicked(QString implementation, QString interface_name)
void attach(axlInspectorToolManagerView *view)
void onItemDoubleClicked(QTreeWidgetItem *item, int column)