/********************************************************************** ** ** Copyright (C) 2000-2008 Trolltech ASA. All rights reserved. ** ** This file is part of TQt Designer. ** ** This file may be used under the terms of the GNU General ** Public License versions 2.0 or 3.0 as published by the Free ** Software Foundation and appearing in the files LICENSE.GPL2 ** and LICENSE.GPL3 included in the packaging of this file. ** Alternatively you may (at your option) use any later version ** of the GNU General Public License if such license has been ** publicly approved by Trolltech ASA (or its successors, if any) ** and the KDE Free TQt Foundation. ** ** Please review the following information to ensure GNU General ** Public Licensing requirements will be met: ** http://trolltech.com/products/qt/licenses/licensing/opensource/. ** If you are unsure which license is appropriate for your use, please ** review the following information: ** http://trolltech.com/products/qt/licenses/licensing/licensingoverview ** or contact the sales department at sales@trolltech.com. ** ** Licensees holding valid TQt Commercial licenses may use this file in ** accordance with the TQt Commercial License Agreement provided with ** the Software. ** ** This file is provided "AS IS" with NO WARRANTY OF ANY KIND, ** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted ** herein. ** **********************************************************************/ #ifndef GLADE2UI_H #define GLADE2UI_H #include #include #include #include typedef TQMap AttributeMap; struct GladeAction { TQString text; TQString menuText; TQString toolTip; int accel; TQString iconSet; }; struct GladeConnection { TQString sender; TQString signal; TQString slot; }; class Glade2Ui { public: Glade2Ui(); TQStringList convertGladeFile( const TQString& fileName ); private: TQString imageName( const TQString& fileName ); TQString opening( const TQString& tag, const AttributeMap& attr = AttributeMap() ); TQString closing( const TQString& tag ); TQString atom( const TQString& tag, const AttributeMap& attr = AttributeMap() ); void error( const TQString& message ); void syntaxError(); TQString getTextValue( const TQDomNode& node ); void emitHeader(); void emitFooter(); void emitSimpleValue( const TQString& tag, const TQString& value, const AttributeMap& attr = AttributeMap() ); void emitOpening( const TQString& tag, const AttributeMap& attr = AttributeMap() ); void emitClosing( const TQString& tag ); void emitAtom( const TQString& tag, const AttributeMap& attr = AttributeMap() ); void emitVariant( const TQVariant& val, const TQString& stringType = "string" ); void emitProperty( const TQString& prop, const TQVariant& val, const TQString& stringType = "string" ); void emitFontProperty( const TQString& prop, int pointSize, bool bold ); void emitAttribute( const TQString& prop, const TQVariant& val, const TQString& stringType = "string" ); TQString gtk2qtClass( const TQString& gtkClass, const TQValueList& childWidgets ); int matchAccelOnActivate( const TQDomElement& accel ); void emitGtkMenu( const TQDomElement& menu ); void emitGtkMenuBarChildWidgets( const TQValueList& childWidgets ); void emitGtkToolbarChildWidgets( const TQValueList& childWidgets ); void emitPushButton( const TQString& text, const TQString& name ); void attach( AttributeMap *attr, int leftAttach, int rightAttach, int topAttach, int bottomAttach ); void emitSpacer( const TQString& orientation, int leftAttach = -1, int rightAttach = -1, int topAttach = -1, int bottomAttach = -1 ); void emitPixmap( const TQString& imageName, int leftAttach = -1, int rightAttach = -1, int topAttach = -1, int bottomAttach = -1 ); void emitGnomeAbout( TQString copyright, TQString authors, TQString comments ); void emitGnomeAppChildWidgetsPass1( const TQValueList& childWidgets ); void doPass2( const TQValueList& childWidgets, TQValueList *menuBar, TQValueList > *toolBars ); void emitGnomeAppChildWidgetsPass2( const TQValueList& childWidgets ); void emitGtkButtonChildWidgets( TQValueList childWidgets ); void emitGtkComboChildWidgets( const TQValueList& childWidgets, const TQStringList& items ); void emitGtkNotebookChildWidgets( const TQValueList& childWidgets ); void emitTQListViewColumns( const TQDomElement& qlistview ); void emitGtkScrolledWindowChildWidgets( const TQValueList& childWidgets, const TQString& qtClass ); void emitGnomeDruidPage( const TQDomElement& druidPage ); void emitGtkWindowChildWidgets( const TQValueList& childWidgets, const TQString& qtClass ); bool packEnd( const TQDomElement& widget ); void emitChildWidgets( const TQValueList& childWidgets, bool layouted, int leftAttach = -1, int rightAttach = -1, int topAttach = -1, int bottomAttach = -1 ); void emitOpeningWidget( const TQString& qtClass, int leftAttach = -1, int rightAttach = -1, int topAttach = -1, int bottomAttach = -1 ); bool shouldPullup( const TQValueList& childWidgets ); TQString emitWidget( const TQDomElement& widget, bool layouted, int leftAttach = -1, int rightAttach = -1, int topAttach = -1, int bottomAttach = -1 ); TQString yyOut; TQString yyIndentStr; TQString yyFileName; TQString yyProgramName; TQString yyPixmapDirectory; TQMap yyClassNameMap; TQMap yyStockMap; TQMap yyKeyMap; TQMap yyCustomWidgets; TQMap yyStockItemActions; TQMap yyActions; TQValueList yyConnections; TQMap yySlots; TQString yyFormName; TQMap yyImages; int numErrors; int uniqueAction; int uniqueForm; int uniqueMenuBar; int uniqueSpacer; int uniqueToolBar; }; #endif