kexi

KFormDesigner::Container Class Reference

#include <container.h>

List of all members.


Detailed Description

A class to make a container from any widget.

You can then create child widgets, and the background is dotted.

Definition at line 72 of file container.h.


Public Types

enum  LayoutType {
  NoLayout = 0, HBox, VBox, Grid,
  HFlow, VFlow, HSplitter, VSplitter
}

Public Slots

void setSelectedWidget (QWidget *selected, bool add, bool dontRaise=false, bool moreWillBeSelected=false)
void unSelectWidget (QWidget *w)
void deleteWidget (QWidget *w)
void reloadLayout ()

Public Member Functions

 Container (Container *toplevel, QWidget *container, QObject *parent=0, const char *name=0)
virtual ~Container ()
Containertoplevel ()
Formform () const
QWidget * widget () const
ObjectTreeItemobjectTree () const
void setForm (Form *form)
void setObjectTree (ObjectTreeItem *t)
QLayout * layout () const
LayoutType layoutType () const
int layoutMargin ()
int layoutSpacing ()
void setLayout (LayoutType type)
void setLayoutSpacing (int spacing)
void setLayoutMargin (int margin)
void stopInlineEditing ()
virtual bool eventFilter (QObject *o, QEvent *e)

Static Public Member Functions

static QString layoutTypeToString (int type)
static LayoutType stringToLayoutType (const QString &name)

Protected Slots

void widgetDeleted ()

Protected Member Functions

void createBoxLayout (WidgetList *list)
void createFlowLayout ()
void createGridLayout (bool testOnly=false)
void drawConnection (QMouseEvent *mev)
void drawSelectionRect (QMouseEvent *mev)
void drawInsertRect (QMouseEvent *mev, QObject *s)
void drawCopiedWidgetRect (QMouseEvent *mev)
void moveSelectedWidgetsBy (int realdx, int realdy, QMouseEvent *mev=0)

Friends

class InsertWidgetCommand
class PasteWidgetCommand
class DeleteWidgetCommand
class FormIO

Constructor & Destructor Documentation

Container::Container ( Container toplevel,
QWidget *  container,
QObject *  parent = 0,
const char *  name = 0 
)

Creates a Container from the widget container, which have toplevel as parent Container.

Definition at line 91 of file container.cpp.


Member Function Documentation

Container * Container::toplevel (  ) 

Returns:
a pointer to the toplevel Container, or 0 if this Container is toplevel

Definition at line 563 of file container.cpp.

Form* KFormDesigner::Container::form (  )  const [inline]

Returns:
The form this Container belongs to.

Definition at line 89 of file container.h.

QWidget* KFormDesigner::Container::widget (  )  const [inline]

Returns:
The watched widget.

Definition at line 92 of file container.h.

ObjectTreeItem* KFormDesigner::Container::objectTree (  )  const [inline]

Returns:
The ObjectTreeItem associated with this Container's widget.

Definition at line 95 of file container.h.

void Container::setForm ( Form form  ) 

Sets the Form which this Container belongs to.

Definition at line 142 of file container.cpp.

void KFormDesigner::Container::setObjectTree ( ObjectTreeItem t  )  [inline]

Sets the ObjectTree of this Container.
NOTE: this is needed only if we are toplevel.

Definition at line 102 of file container.h.

QLayout* KFormDesigner::Container::layout (  )  const [inline]

Returns:
a pointer to the QLayout of this Container, or 0 if there is not.

Definition at line 105 of file container.h.

LayoutType KFormDesigner::Container::layoutType (  )  const [inline]

Returns:
the type of the layout associated to this Container's widget (see LayoutType enum).

Definition at line 108 of file container.h.

int KFormDesigner::Container::layoutMargin (  )  [inline]

Returns:
the margin of this Container.

Definition at line 111 of file container.h.

int KFormDesigner::Container::layoutSpacing (  )  [inline]

Returns:
the spacing of this Container.

Definition at line 114 of file container.h.

void Container::setLayout ( LayoutType  type  ) 

Layout functions.

Sets this Container to use type of layout. The widget are inserted automatically in the layout following their positions.

See also:
createBoxLayout(), createGridLayout()

Definition at line 592 of file container.cpp.

void KFormDesigner::Container::setLayoutSpacing ( int  spacing  )  [inline]

Sets the spacing of this Container.

Definition at line 122 of file container.h.

void KFormDesigner::Container::setLayoutMargin ( int  margin  )  [inline]

Sets the margin of this Container.

Definition at line 125 of file container.h.

QString Container::layoutTypeToString ( int  type  )  [static]

Returns:
the string representing the layoutType type.

Definition at line 918 of file container.cpp.

Container::LayoutType Container::stringToLayoutType ( const QString &  name  )  [static]

Returns:
the LayoutType (an int) for a given layout name.

Definition at line 932 of file container.cpp.

void KFormDesigner::Container::stopInlineEditing (  )  [inline]

Stops the inline editing of the current widget (as when you click on another widget or press Esc).

Definition at line 135 of file container.h.

bool Container::eventFilter ( QObject *  o,
QEvent *  e 
) [virtual]

This is the main function of Container, which filters the event sent to the watched widget.
It takes care of drawing the background and the insert rect, of creating the new child widgets, of moving the widgets and pop up a menu when right-clicking.

Definition at line 150 of file container.cpp.

void Container::setSelectedWidget ( QWidget *  selected,
bool  add,
bool  dontRaise = false,
bool  moreWillBeSelected = false 
) [slot]

Sets selected to be the selected widget of this container (and so of the Form). If add is true, the formerly selected widget is still selected, and the new one is just added. If false, selected replace the actually selected widget. If dontRaise is true, then the widget selected (and its parent) won't be raised (eg when you select widget in ObjectTreeView).

See also:
Form::setSelectedWidget()

Definition at line 539 of file container.cpp.

void Container::unSelectWidget ( QWidget *  w  )  [slot]

Unselects the widget w. The widget is removed from the Form's list and its resizeHandles are removed.

Definition at line 554 of file container.cpp.

void Container::deleteWidget ( QWidget *  w  )  [slot]

Deletes the widget w. Removes it from ObjectTree, and sets selection to Container's widget.

Definition at line 572 of file container.cpp.

void Container::reloadLayout (  )  [slot]

Recreates the Container layout. Calls this when a widget has been moved or added to update the layout.

Definition at line 647 of file container.cpp.

void Container::widgetDeleted (  )  [protected, slot]

This slot is called when the watched widget is deleted. Deletes the Container too.

Definition at line 583 of file container.cpp.

void Container::createBoxLayout ( WidgetList list  )  [protected]

Internal function to create a HBoxLayout or VBoxLayout for this container. list is a subclass of QObjectList that can sort widgets following their position (such as HorWidgetList or VerWidgetList).

Definition at line 655 of file container.cpp.

void Container::createFlowLayout (  )  [protected]

Internal function to create a KexiFlowLayout.

Definition at line 669 of file container.cpp.

void Container::createGridLayout ( bool  testOnly = false  )  [protected]

Internal function to create a GridLayout. if testOnly is true, the layout is simulated, and only the widget's grid info aris filled.

Definition at line 733 of file container.cpp.

void Container::drawConnection ( QMouseEvent *  mev  )  [protected]

Drawing functions used by eventFilter.

Definition at line 944 of file container.cpp.

void Container::drawSelectionRect ( QMouseEvent *  mev  )  [protected]

Definition at line 986 of file container.cpp.

void Container::moveSelectedWidgetsBy ( int  realdx,
int  realdy,
QMouseEvent *  mev = 0 
) [protected]

Other functions used by eventFilter.

Definition at line 1099 of file container.cpp.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys