• Skip to content
  • Skip to link menu
KDE 4.1 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

libplasma

borderlayout.h

Go to the documentation of this file.
00001 /*
00002  *   Copyright (C) 2007 Ivan Cukic <ivan.cukic+kde@gmail.com>
00003  *
00004  *   This program is free software; you can redistribute it and/or modify
00005  *   it under the terms of the GNU Library/Lesser General Public License
00006  *   version 2, or (at your option) any later version, as published by the
00007  *   Free Software Foundation
00008  *
00009  *   This program is distributed in the hope that it will be useful,
00010  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012  *   GNU General Public License for more details
00013  *
00014  *   You should have received a copy of the GNU Library/Lesser General Public
00015  *   License along with this program; if not, write to the
00016  *   Free Software Foundation, Inc.,
00017  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
00018  */
00019 
00020 #ifndef PLASMA_BORDER_LAYOUT
00021 #define PLASMA_BORDER_LAYOUT
00022 
00023 #include <QtCore/QMap>
00024 
00025 #include <plasma/plasma_export.h>
00026 #include <plasma/plasma.h>
00027 #include <plasma/layouts/layout.h>
00028 
00029 namespace Plasma {
00030 
00031 class BorderLayoutPrivate;
00032 
00039 class PLASMA_EXPORT BorderLayout : public Layout {
00040 public:
00041 
00042     explicit BorderLayout(LayoutItem * parent = 0);
00043     virtual ~BorderLayout();
00044 
00045     virtual Qt::Orientations expandingDirections() const;
00046 
00047     QSizeF sizeHint() const;
00048 
00053     void addItem(Plasma::LayoutItem * item);
00054 
00058     void addItem(Plasma::LayoutItem * item, Position position);
00059 
00060     void removeItem(Plasma::LayoutItem * item);
00061 
00062     virtual int count() const;
00063     virtual int indexOf(LayoutItem * item) const;
00064     virtual LayoutItem * itemAt(int i) const;
00065     virtual LayoutItem * takeAt(int i);
00066 
00074     void setSize(qreal size, Position border);
00075 
00080     void setAutoSize(Position border);
00081 
00087     qreal size(Position border);
00088 
00089 protected:
00090     void relayout();
00091     void releaseManagedItems();
00092 
00093 private:
00094     BorderLayoutPrivate * const d;
00095 };
00096 
00097 }
00098 
00099 #endif /* PLASMA_BORDER_LAYOUT */

libplasma

Skip menu "libplasma"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • KWin
  •   KWin Libraries
  • Libraries
  •   libkworkspace
  •   libplasma
  •   libsolidcontrol
  •   libtaskmanager
  • Plasma
  •   Animators
  •   Applets
  •   Engines
  • Solid Modules
Generated for API Reference by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal