~ubuntu-branches/ubuntu/saucy/rocs/saucy

« back to all changes in this revision

Viewing changes to App/Interface/SideDockWidget.h

  • Committer: Package Import Robot
  • Author(s): Rohan Garg, Rohan Garg, Philip Muškovac
  • Date: 2013-06-21 02:04:20 UTC
  • mfrom: (1.1.27)
  • Revision ID: package-import@ubuntu.com-20130621020420-lzlui9y7qc6w3xog
Tags: 4:4.10.80-0ubuntu1
[ Rohan Garg ]
* New upstream release

[ Philip Muškovac ]
* Build-depend on libgrantlee-dev and libx11-dev
* Update rocs.install and not-installed 

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
    This file is part of Rocs.
3
 
    Copyright 2012  Andreas Cord-Landwehr <cola@uni-paderborn.de>
4
 
 
5
 
    This program is free software; you can redistribute it and/or
6
 
    modify it under the terms of the GNU General Public License as
7
 
    published by the Free Software Foundation; either version 2 of
8
 
    the License, or (at your option) any later version.
9
 
 
10
 
    This program is distributed in the hope that it will be useful,
11
 
    but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 
    GNU General Public License for more details.
14
 
 
15
 
    You should have received a copy of the GNU General Public License
16
 
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
 
*/
18
 
 
19
 
 
20
 
#ifndef SIDEDOCKWIDGET_H
21
 
#define SIDEDOCKWIDGET_H
22
 
 
23
 
#include <QDockWidget>
24
 
#include <QToolButton>
25
 
#include <QHash>
26
 
 
27
 
class KIcon;
28
 
class QToolBar;
29
 
class KAction;
30
 
 
31
 
/**
32
 
 * \class SideToolButton
33
 
 *
34
 
 * Used for vertical tool button bars.
35
 
 */
36
 
class SideToolButton: public QToolButton
37
 
{
38
 
    Q_OBJECT
39
 
 
40
 
public:
41
 
    explicit SideToolButton(QWidget* parent = 0);
42
 
    Qt::Orientation orientation() const;
43
 
    virtual QSize sizeHint() const;
44
 
 
45
 
protected:
46
 
    virtual void paintEvent(QPaintEvent *event);
47
 
};
48
 
 
49
 
/**
50
 
 * \class SideDockWidget
51
 
 *
52
 
 * Docking widget for side panel.
53
 
 */
54
 
class SideDockWidget: public QWidget
55
 
{
56
 
    Q_OBJECT
57
 
 
58
 
public:
59
 
    explicit SideDockWidget(QWidget* parent);
60
 
    QToolBar * toolbar() const;
61
 
    void addDock(QWidget* dock, const QString& title, const KIcon& icon);
62
 
    void showDock(bool show, QWidget* widget);
63
 
 
64
 
public slots:
65
 
    void buttonToggled(bool state);
66
 
 
67
 
signals:
68
 
    void visibilityChanged(bool visible);
69
 
 
70
 
private:
71
 
    QToolBar *_toolBar;
72
 
    QHash<SideToolButton*, QWidget*> _widgets;
73
 
    bool _showDock;
74
 
};
75
 
 
76
 
 
77
 
#endif // SIDEDOCKWIDGET_H