/**************************************************************************** ** ** ** Global feature selection ** ** Created : 000417 ** ** Copyright (C) 2000 Trolltech AS. All rights reserved. ** ** This file is part of the tools module 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. ** **********************************************************************/ #ifndef QFEATURES_H #define QFEATURES_H /*! \page features....html ... */ // Qt ships with a number of pre-defined configurations. If none suit // your needs, define QCONFIG_LOCAL and create a "qconfig-local.h" file. // // Note that disabling some features will produce a libqt that is not // compatible with other libqt builds. Such modifications are only // supported on Qt/Embedded where reducing the library size is important // and where the application-suite is often a fixed set. // #if defined(QCONFIG_LOCAL) #include <qconfig-local.h> #elif defined(QCONFIG_MINIMAL) #include <qconfig-minimal.h> #elif defined(QCONFIG_SMALL) #include <qconfig-small.h> #elif defined(QCONFIG_MEDIUM) #include <qconfig-medium.h> #elif defined(QCONFIG_LARGE) #include <qconfig-large.h> #else // everything... #include <qconfig.h> #endif // Data structures /*! QStringList */ //#define QT_NO_STRINGLIST #if defined(QT_NO_IMAGE_SMOOTHSCALE) /*! QIconSet */ # define QT_NO_ICONSET #endif // File I/O #if defined(QT_NO_STRINGLIST) /*! QDir */ # define QT_NO_DIR #endif /*! Palettes */ //#define QT_NO_PALETTE /*! QTextStream */ //#define QT_NO_TEXTSTREAM /*! QDataStream */ //#define QT_NO_DATASTREAM /*! Dynamic module linking */ //#define QT_NO_PLUGIN // Images /*! BMP image I/O <p>The Windows Bitmap (BMP) image format is common on MS-Windows. <p>This is an uncompressed image format offering few advantages over PNG or JPEG. */ #if defined(QT_NO_DATASTREAM) # define QT_NO_IMAGEIO_BMP #endif /*! PPM image I/O <p>The Portable PixMap (PPM) image format is common on Unix. <p>This is an uncompressed image format offering few advantages over PNG or JPEG. */ //#define QT_NO_IMAGEIO_PPM /*! XBM image I/O <p>The X11 BitMap (XBM) image format is common on X11. <p>This is an uncompressed monochrome image format. Qt uses this format for some internal images (eg. mouse cursors). */ //#define QT_NO_IMAGEIO_XBM /*! XPM image I/O <p>The X11 PixMap (XPM) image format is common on X11. <p>This is an uncompressed image format. XPM images have the small advantage that they can be trivially included in source files as they are C code. Qt uses this format for some internal images (eg. QMessageBox icons). */ #if defined(QT_NO_TEXTSTREAM) # define QT_NO_IMAGEIO_XPM #endif /*! PNG image I/O <p>The Portable Network Graphics (PNG) is a compressed image format. <p>See <a href=http://www.libpng.org/pub/png/>The PNG Home Site</a> for details of the format. */ //#define QT_NO_IMAGEIO_PNG /*! MNG image I/O <p>The Multiple-image Network Graphics (MNG) is a compressed animation format. <p>See <a href=http://www.libpng.org/pub/mng/>The MNG Home Site</a> for details of the format. */ //#define QT_NO_IMAGEIO_MNG /*! JPEG image I/O <p>The Joint Photographic Experts Group (JPEG) is a compressed lossy image format that gives high compression for real-world and photo-realistic images. */ //#define QT_NO_IMAGEIO_JPEG /*! Asynchronous I/O <p>Allows push-driven data processing. */ //#define QT_NO_ASYNC_IO /*! Asynchronous image I/O <p>Allows push-driven images. */ //#define QT_NO_ASYNC_IMAGE_IO #if defined(QT_NO_ASYNC_IO) || defined(QT_NO_ASYNC_IMAGE_IO) /*! Animated images <p>This includes animated GIFs. <p><b>Note: this currently also requires <tt>QT_BUILTIN_GIF_READER</tt> to be defined when building Qt.</b> */ # define QT_NO_MOVIE #endif // Fonts /*! TrueType font files <p>Scalable font format common on MS-Windows and becoming common on Unix. <p>Only supported on Qt/Embedded. */ //#define QT_NO_TRUETYPE /*! BDF font files <p>The Bitmap Distribution Format (BDF) font file format, common on Unix. <p>Only supported on Qt/Embedded. */ #if defined(QT_NO_TEXTSTREAM) || defined(QT_NO_STRINGLIST) # define QT_NO_BDF #endif /*! QFontDatabase */ #if defined(QT_NO_STRINGLIST) # define QT_NO_FONTDATABASE #endif // Internationalization /*! QObject::tr() */ #if defined(QT_NO_DATASTREAM) # define QT_NO_TRANSLATION #endif /*! QTextCodec class and subclasses */ //#define QT_NO_TEXTCODEC #if defined(QT_NO_TEXTCODEC) /*! QTextCodec classes <p>This includes some large conversion tables. */ # define QT_NO_CODECS #endif #if defined(QT_LITE_UNICODE) /*! Unicode property tables <p>These include some large tables. */ # define QT_NO_UNICODETABLES #endif /*! MIME */ #if defined(QT_NO_DIR) # define QT_NO_MIME #endif #if defined(QT_NO_MIME) || defined(QT_NO_TEXTSTREAM) || defined(QT_NO_DRAWUTIL) || defined(QT_NO_IMAGE_SMOOTHSCALE) /*! RichText (HTML) display */ # define QT_NO_RICHTEXT #endif /*! XML */ #if defined(QT_NO_STRINGLIST) || defined(QT_NO_TEXTSTREAM) || defined(QT_NO_TEXTCODEC) # define QT_NO_XML #endif /*! Document Object Model */ #if defined(QT_NO_XML) || defined(QT_NO_MIME) # define QT_NO_DOM #endif // Sound /*! Playing sounds */ //#define QT_NO_SOUND /*! Properties */ #if defined(QT_NO_STRINGLIST) || defined(QT_NO_ICONSET) # define QT_NO_PROPERTIES #endif // Networking /*! Network support */ //#define QT_NO_NETWORK #if defined(QT_NO_NETWORK) || defined(QT_NO_STRINGLIST) || defined(QT_NO_TEXTSTREAM) /*! DNS */ # define QT_NO_DNS #endif /*! Network file access */ #if defined(QT_NO_NETWORK) || defined(QT_NO_DIR) || defined(QT_NO_STRINGLIST) # define QT_NO_NETWORKPROTOCOL #endif #if defined(QT_NO_NETWORKPROTOCOL) || defined(QT_NO_DNS) /*! FTP file access */ # define QT_NO_NETWORKPROTOCOL_FTP /*! HTTP file access */ # define QT_NO_NETWORKPROTOCOL_HTTP #endif /*! External process invocation. */ //#define QT_NO_PROCESS // Qt/Embedded-specific #if defined(QT_NO_NETWORK) /*! Multi-process support. */ # define QT_NO_QWS_MULTIPROCESS #endif #if defined(QT_NO_QWS_MULTIPROCESS) || defined(QT_NO_DATASTREAM) /*! Palmtop Communication Protocol */ # define QT_NO_COP #endif /*! Console keyboard support */ //#define QT_NO_QWS_KEYBOARD /*! Visible cursor */ #if defined(QT_NO_CURSOR) # define QT_NO_QWS_CURSOR #endif /*! Alpha-blended cursor */ //#define QT_NO_QWS_ALPHA_CURSOR /*! Mach64 acceleration */ //#define QT_NO_QWS_MACH64 /*! Voodoo3 acceleration */ //#define QT_NO_QWS_VOODOO3 /*! Matrox MGA acceleration (Millennium/Millennium II/Mystique/G200/G400) */ //#define QT_NO_QWS_MATROX /*! Virtual frame buffer */ //#define QT_NO_QWS_VFB /*! Transformed frame buffer */ //#define QT_NO_QWS_TRANSFORMED #if defined(QT_NO_NETWORK) /*! Remote frame buffer (VNC) */ # ifndef QT_NO_QWS_VNC # define QT_NO_QWS_VNC # endif #endif /*! 1-bit monochrome */ //#define QT_NO_QWS_DEPTH_1 /*! 4-bit greyscale */ //#define QT_NO_QWS_DEPTH_4 /*! 4-bit VGA */ //#define QT_NO_QWS_VGA_16 /*! SVGALib Support Not implemented yet */ #define QT_NO_QWS_SVGALIB /*! 8-bit grayscale */ #define QT_NO_QWS_DEPTH_8GRAYSCALE /*! 8-bit color */ //#define QT_NO_QWS_DEPTH_8 /*! 15 or 16-bit color (define QT_QWS_DEPTH16_RGB as 555 for 15-bit) */ //#define QT_NO_QWS_DEPTH_16 /*! 24-bit color */ //#define QT_NO_QWS_DEPTH_24 /*! 32-bit color */ //#define QT_NO_QWS_DEPTH_32 /*! Window Manager */ //#define QT_NO_QWS_MANAGER /*! Window Manager Styles */ #define QT_NO_QWS_KDE2_WM_STYLE #if defined( QT_NO_QWS_MANAGER ) || defined( QT_NO_IMAGEIO_XPM ) # define QT_NO_QWS_AQUA_WM_STYLE # define QT_NO_QWS_BEOS_WM_STYLE # define QT_NO_QWS_KDE_WM_STYLE # define QT_NO_QWS_QPE_WM_STYLE # define QT_NO_QWS_WINDOWS_WM_STYLE #endif /*! Saving of fonts */ //#define QT_NO_QWS_SAVEFONTS /*! Favour code size over graphics speed <p>Smaller, slower code will be used for drawing operations. <p>Only supported on Qt/Embedded. */ //#define QT_NO_QWS_GFX_SPEED /*! Qt/Embedded window system properties. */ //#define QT_NO_QWS_PROPERTIES #if defined(QT_NO_QWS_PROPERTIES) || defined(QT_NO_MIME) /*! Cut and paste */ # define QT_NO_CLIPBOARD #endif #if defined(QT_NO_MIME) || defined(QT_NO_QWS_PROPERTIES) /*! Drag and drop */ # define QT_NO_DRAGANDDROP #endif #if defined(QT_NO_PROPERTIES) /*! SQL */ # define QT_NO_SQL #endif #if defined(QT_NO_CLIPBOARD) || defined(QT_NO_MIME) || defined(_WS_QWS_) /*! Cut and paste of complex data types (non-text) Not yet implemented for QWS. */ # define QT_NO_MIMECLIPBOARD #endif /*! Drawing utility functions */ //#define QT_NO_DRAWUTIL /*! TrueColor QImage */ //#define QT_NO_IMAGE_TRUECOLOR /*! Smooth QImage scaling */ //#define QT_NO_IMAGE_SMOOTHSCALE /*! Image file text strings */ #if defined(QT_NO_STRINGLIST) # define QT_NO_IMAGE_TEXT #endif #if defined(QT_NO_IMAGE_TRUECOLOR) /*! 16-bit QImage */ # define QT_NO_IMAGE_16_BIT #endif /*! Cursors */ //#define QT_NO_CURSOR // Painting /*! Named colors */ //#define QT_NO_COLORNAMES /*! Scaling and rotation */ //#define QT_NO_TRANSFORMATIONS /*! Printing */ #if defined(QT_NO_TEXTSTREAM) # define QT_NO_PRINTER #endif /*! QPicture */ #if defined(QT_NO_DATASTREAM) # define QT_NO_PICTURE #endif // Layout /*! Automatic widget layout */ //#define QT_NO_LAYOUT // Widgets #if defined(QT_NO_DRAWUTIL) || defined(QT_NO_PALETTE) /*! QStyle */ # define QT_NO_STYLE #endif /*! Dialogs */ //#define QT_NO_DIALOG /*! Semi-modal dialogs */ //#define QT_NO_SEMIMODAL /*! Framed widgets */ //#define QT_NO_FRAME /*! Special widget effects (fading, scrolling) */ //#define QT_NO_EFFECTS /*! QLabel */ #ifdef QT_NO_FRAME # define QT_NO_LABEL #endif /*! Toolbars */ #ifdef QT_NO_LAYOUT # define QT_NO_TOOLBAR #endif /*! Buttons */ #if defined(QT_NO_BUTTON) || defined(QT_NO_STYLE) /*! Check-boxes */ # define QT_NO_CHECKBOX /*! Radio-buttons */ # define QT_NO_RADIOBUTTON #endif #if defined(QT_NO_BUTTON) || defined(QT_NO_TOOLBAR) || defined(QT_NO_ICONSET) /*! Tool-buttons */ # define QT_NO_TOOLBUTTON #endif /*! Grid layout widgets */ #ifdef QT_NO_FRAME # define QT_NO_GRID #endif /*! Group boxes */ #ifdef QT_NO_FRAME # define QT_NO_GROUPBOX #endif #if defined(QT_NO_GROUPBOX) /*! Button groups */ # define QT_NO_BUTTONGROUP /*! Horizontal group boxes */ # define QT_NO_HGROUPBOX #endif #if defined(QT_NO_HGROUPBOX) /*! Vertical group boxes */ # define QT_NO_VGROUPBOX #endif #if defined(QT_NO_BUTTONGROUP) /*! Horizontal button groups */ # define QT_NO_HBUTTONGROUP #endif #if defined(QT_NO_HBUTTONGROUP) /*! Vertical button groups */ # define QT_NO_VBUTTONGROUP #endif /*! Horizonal box layout widgets */ #ifdef QT_NO_FRAME # define QT_NO_HBOX #endif #if defined(QT_NO_HBOX) /*! Vertical box layout widgets */ # define QT_NO_VBOX #endif /*! Single-line edits */ #if defined(QT_NO_PALETTE) # define QT_NO_LINEEDIT #endif #if defined(QT_NO_TOOLBAR) /*! Main-windows */ # define QT_NO_MAINWINDOW #endif #if defined(QT_NO_ICONSET) /*! Menu-like widgets */ # define QT_NO_MENUDATA #endif #if defined(QT_NO_MENUDATA) /*! Popup-menus */ # define QT_NO_POPUPMENU /*! Menu bars */ # define QT_NO_MENUBAR #endif #if defined(QT_NO_BUTTON) || defined(QT_NO_ICONSET) || defined(QT_NO_POPUPMENU) /*! Push-buttons */ # define QT_NO_PUSHBUTTON #endif /*! Progress bars */ #ifdef QT_NO_FRAME # define QT_NO_PROGRESSBAR #endif /*! Range-control widgets */ //#define QT_NO_RANGECONTROL #if defined(QT_NO_RANGECONTROL) || defined(QT_NO_STYLE) /*! Scroll bars */ # define QT_NO_SCROLLBAR /*! Sliders */ # define QT_NO_SLIDER /*! Spin boxes */ # define QT_NO_SPINBOX /*! Dials */ # define QT_NO_DIAL #endif #if defined(QT_NO_SCROLLBAR) || defined(QT_NO_FRAME) /*! Scrollable view widgets */ # define QT_NO_SCROLLVIEW #endif #if defined(QT_NO_SCROLLVIEW) /*! QCanvas */ # define QT_NO_CANVAS /*! QIconView */ # define QT_NO_ICONVIEW #endif #if defined(QT_NO_SCROLLBAR) /*! Table-like widgets */ # define QT_NO_TABLEVIEW #endif #if defined(QT_NO_TABLEVIEW) /*! Multi-line edits */ # define QT_NO_MULTILINEEDIT #endif /*! Splitters */ #ifdef QT_NO_FRAME # define QT_NO_SPLITTER #endif /*! Status bars */ #ifdef QT_NO_LAYOUT # define QT_NO_STATUSBAR #endif /*! Tab-bars */ #if defined(QT_NO_ICONSET) # define QT_NO_TABBAR #endif #if defined(QT_NO_TABBAR) /*! Tab widgets */ # define QT_NO_TABWIDGET #endif /*! Tool tips */ #if defined( QT_NO_LABEL ) || defined( QT_NO_PALETTE ) # define QT_NO_TOOLTIP #endif /*! Input validators */ //#define QT_NO_VALIDATOR /*! "What's this" help */ #if defined( QT_NO_TOOLTIP ) # define QT_NO_WHATSTHIS #endif /*! Widget stacks */ #ifdef QT_NO_FRAME # define QT_NO_WIDGETSTACK #endif #if defined(QT_NO_RICHTEXT) || defined(QT_NO_SCROLLVIEW) /*! QTextView */ # define QT_NO_TEXTVIEW #endif #if defined(QT_NO_TEXTVIEW) /*! QTextBrowser */ # define QT_NO_TEXTBROWSER #endif #if defined(QT_NO_STYLE) /*! Windows style */ # define QT_NO_STYLE_WINDOWS /*! Motif style */ # define QT_NO_STYLE_MOTIF #endif #if defined(QT_NO_STYLE_MOTIF) /*! Motif-plus style */ # define QT_NO_STYLE_MOTIFPLUS #endif #if defined(QT_NO_SCROLLVIEW) || defined(QT_NO_STRINGLIST) /*! QListBox */ # define QT_NO_LISTBOX #endif /*! QAccel */ //#define QT_NO_ACCEL /*! QSizeGrip */ #ifdef QT_NO_PALETTE # define QT_NO_SIZEGRIP #endif /*! QHeader */ #ifdef QT_NO_ICONSET # define QT_NO_HEADER #endif /*! QWorkSpace */ #ifdef QT_NO_FRAME # define QT_NO_WORKSPACE #endif /*! QLCDNumber */ #ifdef QT_NO_FRAME # define QT_NO_LCDNUMBER #endif /*! QAction */ //#define QT_NO_ACTION #if defined(QT_NO_HEADER) /*! QTable */ # define QT_NO_TABLE #endif #if defined(QT_NO_LISTBOX) /*! QComboBox */ # define QT_NO_COMBOBOX #endif #if defined(QT_NO_HEADER) || defined(QT_NO_SCROLLVIEW) /*! QListView */ # define QT_NO_LISTVIEW #endif #if defined(QT_NO_STYLE_WINDOWS) /*! Compact Windows style */ # define QT_NO_STYLE_COMPACT #endif #if defined(QT_NO_STYLE_MOTIF) || defined(QT_NO_TRANSFORMATIONS) /*! CDE style */ # define QT_NO_STYLE_CDE /*! SGI style */ # define QT_NO_STYLE_SGI #endif #if defined(QT_NO_STYLE_WINDOWS) /*! Platinum style */ # define QT_NO_STYLE_PLATINUM #endif /*! QColorDialog */ #if defined(QT_NO_LAYOUT) || defined(QT_NO_LABEL) || defined(QT_NO_PUSHBUTTON) || defined(QT_NO_DIALOG) # define QT_NO_COLORDIALOG #endif #if defined(QT_NO_DIALOG) /*! QMessageBox */ # define QT_NO_MESSAGEBOX #endif #if defined(QT_NO_DIALOG) || defined(QT_NO_TABBAR) /*! QTabDialog */ #define QT_NO_TABDIALOG #endif #if defined(QT_NO_DIALOG) /*! QWizard */ # define QT_NO_WIZARD #endif #if defined(QT_NO_DIALOG) || defined(QT_NO_LISTVIEW) || defined(QT_NO_NETWORKPROTOCOL) || defined(QT_NO_COMBOBOX) || defined(QT_NO_DIR) || defined(QT_NO_MESSAGEBOX) || defined(QT_NO_SEMIMODAL) /*! QFileDialog */ # define QT_NO_FILEDIALOG #endif #if defined(QT_NO_DIALOG) || defined(QT_NO_FONTDATABASE) || defined(QT_NO_COMBOBOX) /*! QFontDialog */ # define QT_NO_FONTDIALOG #endif #if defined(QT_NO_DIALOG) || defined(QT_NO_LISTVIEW) || defined(QT_NO_PRINTER) || defined(QT_NO_COMBOBOX) || defined(QT_NO_DIR) || defined(QT_NO_LAYOUT) || defined(QT_NO_LABEL) /*! QPrintDialog */ # define QT_NO_PRINTDIALOG #endif #if defined(QT_NO_SEMIMODAL) /*! QProgressDialog */ # define QT_NO_PROGRESSDIALOG #endif #if defined(QT_NO_DIALOG) || defined(QT_NO_COMBOBOX) /*! QInputDialog */ # define QT_NO_INPUTDIALOG #endif #if defined(QT_NO_STRINGLIST) /*! Session management support */ # define QT_NO_SESSIONMANAGER #endif #endif // QFEATURES_H