kdeui Library API Documentation

KButtonBox Class Reference

Container widget for buttons. More...

#include <kbuttonbox.h>

Inheritance diagram for KButtonBox:

QWidget List of all members.

Public Methods

 KButtonBox (QWidget *parent, Orientation _orientation=Horizontal, int border=0, int _autoborder=6)
 Create an empty container for buttons.

 ~KButtonBox ()
 Free private data field.

virtual QSize sizeHint () const
virtual void resizeEvent (QResizeEvent *)
QPushButtonaddButton (const QString &text, bool noexpand=FALSE)
 Add a new QPushButton.

QPushButtonaddButton (const QString &text, QObject *receiver, const char *slot, bool noexpand=FALSE)
 Add a new QPushButton.

void addStretch (int scale=1)
 Add a stretch to the buttonbox.

void layout ()
 This function must be called once after all buttons have been inserted.


Protected Methods

QSize bestButtonSize () const

Detailed Description

Container widget for buttons.

This class uses Qt layout control to place the buttons; can handle both vertical and horizontal button placement. The default border is now 0 (making it easier to deal with layouts). The space between buttons is now more Motif compliant.

Author:
Mario Weilguni <mweilguni@sime.com>
Version:
Id:
kbuttonbox.h,v 1.26 2002/03/04 00:51:46 lunakl Exp

Definition at line 39 of file kbuttonbox.h.


Constructor & Destructor Documentation

KButtonBox::KButtonBox QWidget   parent,
Orientation    _orientation = Horizontal,
int    border = 0,
int    _autoborder = 6
 

Create an empty container for buttons.

If _orientation is Vertical, the buttons inserted with addButton() are laid out from top to bottom, otherwise they are laid out from left to right.

Definition at line 74 of file kbuttonbox.cpp.

KButtonBox::~KButtonBox  
 

Free private data field.

Definition at line 87 of file kbuttonbox.cpp.


Member Function Documentation

QSize KButtonBox::sizeHint   [virtual]
 

Returns:
The minimum size needed to fit all buttons.
This size is calculated by the width/height of all buttons plus border/autoborder.

Reimplemented from QWidget.

Definition at line 232 of file kbuttonbox.cpp.

References bestButtonSize(), buttonSizeHint(), data, QSize::height(), and QSize::width().

Referenced by layout().

QPushButton * KButtonBox::addButton const QString   text,
bool    noexpand = FALSE
 

Add a new QPushButton.

Parameters:
noexpand  If noexpand is false, the width of the button is adjusted to fit the other buttons (the maximum of all buttons is taken). If noexpand is true, the width of this button will be set to the minimum width needed for the given text).
Returns:
A pointer to the new button.

Definition at line 91 of file kbuttonbox.cpp.

Referenced by addButton().

QPushButton * KButtonBox::addButton const QString   text,
QObject   receiver,
const char *    slot,
bool    noexpand = FALSE
 

Add a new QPushButton.

Parameters:
receiver  An object to connect to.
slot  A Qt slot to connect the 'clicked()' signal to.
noexpand  If noexpand is false, the width of the button is adjusted to fit the other buttons (the maximum of all buttons is taken). If noexpand true, the width of this button will be set to the minimum width needed for the given text).
Returns:
A pointer to the new button.

Definition at line 103 of file kbuttonbox.cpp.

References addButton(), and QObject::connect().

void KButtonBox::addStretch int    scale = 1
 

Add a stretch to the buttonbox.

Can be used to separate buttons. That is, if you add the buttons OK and Cancel, add a stretch, and then add the button Help, the buttons OK and Cancel will be left-aligned (or top-aligned for vertical) whereas Help will be right-aligned (or bottom-aligned for vertical).

See also:
QBoxLayout

Definition at line 119 of file kbuttonbox.cpp.

void KButtonBox::layout  
 

This function must be called once after all buttons have been inserted.

It will start layout control.

Reimplemented from QWidget.

Definition at line 129 of file kbuttonbox.cpp.

References bestButtonSize(), QWidget::setMinimumSize(), and sizeHint().

QSize KButtonBox::bestButtonSize   [protected]
 

Returns:
the best size for a button. Checks all buttons and takes the maximum width/height.

Definition at line 209 of file kbuttonbox.cpp.

References data, QSize::height(), QSize::setHeight(), QSize::setWidth(), and QSize::width().

Referenced by layout(), and sizeHint().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kdelibs Version 3.1.0.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Oct 8 12:21:03 2003 by doxygen 1.2.18 written by Dimitri van Heesch, © 1997-2001