F:/KPlato/koffice/libs/kformula/ElementFactory.h

Aller à la documentation de ce fichier.
00001 /* This file is part of the KDE project
00002    Copyright (C) 2003 Ulrich Kuettler <ulrich.kuettler@gmx.de>
00003    Copyright (C) 2006 Martin Pfeiffer <hubipete@gmx.net>
00004    Copyright (C) 2006 Alfredo Beaumont Sainz <alfredo.beaumont@gmail.com>
00005 
00006    This library is free software; you can redistribute it and/or
00007    modify it under the terms of the GNU Library General Public
00008    License as published by the Free Software Foundation; either
00009    version 2 of the License, or (at your option) any later version.
00010 
00011    This library is distributed in the hope that it will be useful,
00012    but WITHOUT ANY WARRANTY; without even the implied warranty of
00013    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014    Library General Public License for more details.
00015 
00016    You should have received a copy of the GNU Library General Public License
00017    along with this library; see the file COPYING.LIB.  If not, write to
00018    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019    Boston, MA 02110-1301, USA.
00020 */
00021 
00022 #ifndef ELEMENTFACTORY_H
00023 #define ELEMENTFACTORY_H
00024 
00025 #include <QString>
00026 
00027 #include "kformuladefs.h"
00028 
00029 namespace KFormula {
00030         
00031 class BasicElement;
00032 class BracketElement;
00033 class EmptyElement;
00034 class FractionElement;
00035 class IdentifierElement;
00036 class IndexElement;
00037 class MatrixElement;
00038 class MultilineElement;
00039 class NameSequence;
00040 class NumberElement;
00041 class OperatorElement;
00042 class OverlineElement;
00043 class RootElement;
00044 class SpaceElement;
00045 class SymbolElement;
00046 class TextElement;
00047 class UnderlineElement;
00048 
00049 class ElementFactory {
00050 public:
00051     ElementFactory();
00052 
00053     static BasicElement* createElement( const QString& tagName, BasicElement* parent );
00054 
00055     static TextElement* createTextElement( const QChar& ch, bool symbol=false );
00056     static EmptyElement* createEmptyElement();
00057     static NameSequence* createNameSequence();
00058     static BracketElement* createBracketElement( SymbolType lhs, SymbolType rhs );
00059     static OverlineElement* createOverlineElement();
00060     static UnderlineElement* createUnderlineElement();
00061     static MultilineElement* createMultilineElement();
00062     static SpaceElement* createSpaceElement( SpaceWidth width );
00063     static FractionElement* createFractionElement();
00064     static RootElement* createRootElement();
00065     static SymbolElement* createSymbolElement( SymbolType type );
00066     static MatrixElement* createMatrixElement( uint rows, uint columns );
00067     static IndexElement* createIndexElement();
00068     static IdentifierElement* createIdentifierElement();
00069     static OperatorElement* createOperatorElement();
00070     static NumberElement* createNumberElement();
00071 
00072     BasicElement* createOperatorElement( const QDomElement& element );
00073 };
00074 
00075 } // namespace KFormula
00076 
00077 #endif // ELEMENTFACTORY_H

Généré le Wed Nov 22 23:41:00 2006 pour KPlato par  doxygen 1.5.1-p1