~ubuntu-branches/debian/sid/kdevelop/sid

« back to all changes in this revision

Viewing changes to src/newui/docksplitter.h

  • Committer: Bazaar Package Importer
  • Author(s): Jeremy Lainé
  • Date: 2010-05-05 07:21:55 UTC
  • mfrom: (1.2.3 upstream) (5.1.2 squeeze)
  • Revision ID: james.westby@ubuntu.com-20100505072155-h78lx19pu04sbhtn
Tags: 4:4.0.0-2
* Upload to unstable (Closes: #579947, #481832).
* Acknowledge obsolete NMU fixes (Closes: #562410, #546961).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/***************************************************************************
2
 
 *   Copyright (C) 2004 by Alexander Dymo                                  *
3
 
 *   adymo@kdevelop.org                                                    *
4
 
 *                                                                         *
5
 
 *   This program is free software; you can redistribute it and/or modify  *
6
 
 *   it under the terms of the GNU Library General Public License as       *
7
 
 *   published by the Free Software Foundation; either version 2 of the    *
8
 
 *   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 Library General Public     *
16
 
 *   License along with this program; if not, write to the                 *
17
 
 *   Free Software Foundation, Inc.,                                       *
18
 
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
19
 
 ***************************************************************************/
20
 
#ifndef IDEALDOCKSPLITTER_H
21
 
#define IDEALDOCKSPLITTER_H
22
 
 
23
 
#include <qsplitter.h>
24
 
#include <qvaluelist.h>
25
 
 
26
 
namespace Ideal {
27
 
 
28
 
class DockWidget;
29
 
 
30
 
/**
31
 
@short Splitter for docks
32
 
*/
33
 
class DockSplitter: public QSplitter {
34
 
    Q_OBJECT
35
 
public:
36
 
    DockSplitter(Orientation orientation, QWidget *parent = 0, const char *name = 0);
37
 
    ~DockSplitter();
38
 
    
39
 
    void addDock(uint row, uint col, QWidget *dock);
40
 
    void removeDock(uint row, uint col, bool alsoDelete = false);
41
 
    
42
 
    QPair<uint, uint> indexOf(QWidget *dock);
43
 
    
44
 
    int numRows() const;
45
 
    int numCols(int row) const;
46
 
 
47
 
protected:
48
 
    void appendSplitter();
49
 
    void createSplitters(uint index);
50
 
    void shiftWidgets(QSplitter *splitter, uint row, uint fromCol);
51
 
    
52
 
    bool isRowEmpty(int row);
53
 
    
54
 
private:
55
 
    Orientation m_orientation;
56
 
    QValueList<QSplitter*> m_splitters;
57
 
    QValueList<QValueList<QWidget*> > m_docks;
58
 
};
59
 
 
60
 
}
61
 
 
62
 
#endif