/**************************************************************************** ** ** ** QStack class documentation ** ** Copyright (C) 1992-2000 Trolltech AS. All rights reserved. ** ** This file is part of the Qt GUI Toolkit. ** ** This file may be distributed under the terms of the Q Public License ** as defined by Trolltech AS of Norway and appearing in the file ** LICENSE.QPL included in the packaging of this file. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition ** licenses may use this file in accordance with the Qt Commercial License ** Agreement provided with the Software. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for ** information about Qt Commercial License Agreements. ** See http://www.trolltech.com/qpl/ for QPL licensing information. ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ /***************************************************************************** QStack documentation *****************************************************************************/ /*! \class QStack qstack.h \brief The QStack class is a template class that provides a stack. \ingroup collection \ingroup tools QStack is implemented as a template class. Define a template instance QStack\ to create a stack that operates on pointers to X, or X*. A stack is a Last In, First Out (LIFO) structure. Items are added to the top of the stack with push() and retrieved from the top with pop(). \sa \link collection.html Collection Classes\endlink */ /*! \fn QStack::QStack () Creates and empty stack. */ /*! \fn QStack::QStack (const QStack& s) Creates a stack by making a shallow copy of another stack. */ /*! \fn QStack::~QStack () Destroys the stack. All items will be deleted if autoDelete() is TRUE. */ /*! \fn QStack& QStack::operator= (const QStack& s) Sets the contents of this stack by making a shallow copy of another stack. Elements currently in this stack will be deleted if autoDelete() is TRUE. */ /*! \fn bool QStack::isEmpty () const Returns TRUE is the stack contains no elements to be \link pop() popped\endlink. */ /*! \fn void QStack::push (const type* d) Adds an element to the top of the stack. Last in, first out. */ /*! \fn type* QStack::pop () Removes the top item from the stack and returns it. */ /*! \fn bool QStack::remove () Removes the top item from the stack and deletes it if autoDelete() is TRUE. Returns TRUE if there was an item to pop. \sa clear() */ /*! \fn void QStack::clear() Removes all items from the stack, deleting them if autoDelete() is TRUE. \sa remove() */ /*! \fn uint QStack::count() const Returns the number of items in the stack. \sa isEmpty() */ /*! \fn type* QStack::top () const Returns a reference to the top item on the stack (most recently pushed). The stack is not changed. */ /*! \fn QStack::operator type* ()const Returns a reference to the top item on the stack (most recently pushed). The stack is not changed. */ /*! \fn type* QStack::current () const Returns a reference to the top item on the stack (most recently pushed). The stack is not changed. */ /*! \fn bool QStack::autoDelete() const The same as QCollection::autoDelete(). \sa setAutoDelete() */ /*! \fn void QStack::setAutoDelete( bool enable ) The same as QCollection::setAutoDelete(). \sa autoDelete() */