You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
141 lines
5.0 KiB
141 lines
5.0 KiB
'\" t
|
|
.TH TQLayoutIterator 3qt "2 February 2007" "Trolltech AS" \" -*- nroff -*-
|
|
.\" Copyright 1992-2007 Trolltech ASA. All rights reserved. See the
|
|
.\" license file included in the distribution for a complete license
|
|
.\" statement.
|
|
.\"
|
|
.ad l
|
|
.nh
|
|
.SH NAME
|
|
TQLayoutIterator \- Iterators over TQLayoutItem
|
|
.SH SYNOPSIS
|
|
\fC#include <tqlayout.h>\fR
|
|
.PP
|
|
.SS "Public Members"
|
|
.in +1c
|
|
.ti -1c
|
|
.BI "\fBTQLayoutIterator\fR ( TQGLayoutIterator * gi )"
|
|
.br
|
|
.ti -1c
|
|
.BI "\fBTQLayoutIterator\fR ( const TQLayoutIterator & i )"
|
|
.br
|
|
.ti -1c
|
|
.BI "\fB~TQLayoutIterator\fR ()"
|
|
.br
|
|
.ti -1c
|
|
.BI "TQLayoutIterator & \fBoperator=\fR ( const TQLayoutIterator & i )"
|
|
.br
|
|
.ti -1c
|
|
.BI "TQLayoutItem * \fBoperator++\fR ()"
|
|
.br
|
|
.ti -1c
|
|
.BI "TQLayoutItem * \fBcurrent\fR ()"
|
|
.br
|
|
.ti -1c
|
|
.BI "TQLayoutItem * \fBtakeCurrent\fR ()"
|
|
.br
|
|
.ti -1c
|
|
.BI "void \fBdeleteCurrent\fR ()"
|
|
.br
|
|
.in -1c
|
|
.SH DESCRIPTION
|
|
The TQLayoutIterator class provides iterators over TQLayoutItem.
|
|
.PP
|
|
Use TQLayoutItem::iterator() to create an iterator over a layout.
|
|
.PP
|
|
TQLayoutIterator uses \fIexplicit\fR sharing with a reference count. If an iterator is copied and one of the copies is modified, both iterators will be modified.
|
|
.PP
|
|
A TQLayoutIterator is not protected against changes in its layout. If the layout is modified or deleted the iterator will become invalid. It is not possible to test for validity. It is safe to delete an invalid layout; any other access may lead to an illegal memory reference and the abnormal termination of the program.
|
|
.PP
|
|
Calling takeCurrent() or deleteCurrent() leaves the iterator in a valid state, but may invalidate any other iterators that access the same layout.
|
|
.PP
|
|
The following code will draw a rectangle for each layout item in the layout structure of the widget.
|
|
.PP
|
|
.nf
|
|
.br
|
|
static void paintLayout( TQPainter *p, TQLayoutItem *lay )
|
|
.br
|
|
{
|
|
.br
|
|
TQLayoutIterator it = lay->iterator();
|
|
.br
|
|
TQLayoutItem *child;
|
|
.br
|
|
while ( (child = it.current()) != 0 ) {
|
|
.br
|
|
paintLayout( p, child );
|
|
.br
|
|
++it;
|
|
.br
|
|
}
|
|
.br
|
|
p->drawRect( lay->geometry() );
|
|
.br
|
|
}
|
|
.br
|
|
void ExampleWidget::paintEvent( TQPaintEvent * )
|
|
.br
|
|
{
|
|
.br
|
|
TQPainter p( this );
|
|
.br
|
|
if ( layout() )
|
|
.br
|
|
paintLayout( &p, layout() );
|
|
.br
|
|
}
|
|
.br
|
|
.fi
|
|
.PP
|
|
All the functionality of TQLayoutIterator is implemented by subclasses of TQGLayoutIterator. TQLayoutIterator itself is not designed to be subclassed.
|
|
.PP
|
|
See also Widget Appearance and Style and Layout Management.
|
|
.SH MEMBER FUNCTION DOCUMENTATION
|
|
.SH "TQLayoutIterator::TQLayoutIterator ( TQGLayoutIterator * gi )"
|
|
Constructs an iterator based on \fIgi\fR. The constructed iterator takes ownership of \fIgi\fR and will delete it.
|
|
.PP
|
|
This constructor is provided for layout implementors. Application programmers should use TQLayoutItem::iterator() to create an iterator over a layout.
|
|
.SH "TQLayoutIterator::TQLayoutIterator ( const TQLayoutIterator & i )"
|
|
Creates a shallow copy of \fIi\fR, i.e. if the copy is modified, then the original will also be modified.
|
|
.SH "TQLayoutIterator::~TQLayoutIterator ()"
|
|
Destroys the iterator.
|
|
.SH "TQLayoutItem * TQLayoutIterator::current ()"
|
|
Returns the current item, or 0 if there is no current item.
|
|
.SH "void TQLayoutIterator::deleteCurrent ()"
|
|
Removes and deletes the current child item from the layout and moves the iterator to the next item. This iterator will still be valid, but any other iterator over the same layout may become invalid.
|
|
.SH "TQLayoutItem * TQLayoutIterator::operator++ ()"
|
|
Moves the iterator to the next child item and returns that item, or 0 if there is no such item.
|
|
.SH "TQLayoutIterator & TQLayoutIterator::operator= ( const TQLayoutIterator & i )"
|
|
Assigns \fIi\fR to this iterator and returns a reference to this iterator.
|
|
.SH "TQLayoutItem * TQLayoutIterator::takeCurrent ()"
|
|
Removes the current child item from the layout without deleting
|
|
it, and moves the iterator to the next item. Returns the removed
|
|
item, or 0 if there was no item to be removed. This iterator will
|
|
still be valid, but any other iterator over the same layout may
|
|
become invalid.
|
|
|
|
.SH "SEE ALSO"
|
|
.BR http://doc.trolltech.com/tqlayoutiterator.html
|
|
.BR http://www.trolltech.com/faq/tech.html
|
|
.SH COPYRIGHT
|
|
Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com. See the
|
|
license file included in the distribution for a complete license
|
|
statement.
|
|
.SH AUTHOR
|
|
Generated automatically from the source code.
|
|
.SH BUGS
|
|
If you find a bug in Qt, please report it as described in
|
|
.BR http://doc.trolltech.com/bughowto.html .
|
|
Good bug reports help us to help you. Thank you.
|
|
.P
|
|
The definitive TQt documentation is provided in HTML format; it is
|
|
located at $TQTDIR/doc/html and can be read using TQt Assistant or with
|
|
a web browser. This man page is provided as a convenience for those
|
|
users who prefer man pages, although this format is not officially
|
|
supported by Trolltech.
|
|
.P
|
|
If you find errors in this manual page, please report them to
|
|
.BR qt-bugs@trolltech.com .
|
|
Please include the name of the manual page (tqlayoutiterator.3qt) and the Qt
|
|
version (3.3.8).
|