Blame qtools/qglobal.h

Packit Service 50c9f2
/****************************************************************************
Packit Service 50c9f2
** 
Packit Service 50c9f2
**
Packit Service 50c9f2
** Global type declarations and definitions
Packit Service 50c9f2
**
Packit Service 50c9f2
** Created : 920529
Packit Service 50c9f2
**
Packit Service 50c9f2
** Copyright (C) 1992-2000 Trolltech AS.  All rights reserved.
Packit Service 50c9f2
**
Packit Service 50c9f2
** This file is part of the tools module of the Qt GUI Toolkit.
Packit Service 50c9f2
**
Packit Service 50c9f2
** This file may be distributed under the terms of the Q Public License
Packit Service 50c9f2
** as defined by Trolltech AS of Norway and appearing in the file
Packit Service 50c9f2
** LICENSE.QPL included in the packaging of this file.
Packit Service 50c9f2
**
Packit Service 50c9f2
** This file may be distributed and/or modified under the terms of the
Packit Service 50c9f2
** GNU General Public License version 2 as published by the Free Software
Packit Service 50c9f2
** Foundation and appearing in the file LICENSE.GPL included in the
Packit Service 50c9f2
** packaging of this file.
Packit Service 50c9f2
**
Packit Service 50c9f2
** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
Packit Service 50c9f2
** licenses may use this file in accordance with the Qt Commercial License
Packit Service 50c9f2
** Agreement provided with the Software.
Packit Service 50c9f2
**
Packit Service 50c9f2
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
Packit Service 50c9f2
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
Packit Service 50c9f2
**
Packit Service 50c9f2
** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
Packit Service 50c9f2
**   information about Qt Commercial License Agreements.
Packit Service 50c9f2
** See http://www.trolltech.com/qpl/ for QPL licensing information.
Packit Service 50c9f2
** See http://www.trolltech.com/gpl/ for GPL licensing information.
Packit Service 50c9f2
**
Packit Service 50c9f2
** Contact info@trolltech.com if any conditions of this licensing are
Packit Service 50c9f2
** not clear to you.
Packit Service 50c9f2
**
Packit Service 50c9f2
**********************************************************************/
Packit Service 50c9f2
Packit Service 50c9f2
#ifndef QGLOBAL_H
Packit Service 50c9f2
#define QGLOBAL_H
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
#define QT_VERSION	223
Packit Service 50c9f2
#define QT_VERSION_STR	"2.2.3"
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// The operating system, must be one of: (_OS_x_)
Packit Service 50c9f2
//
Packit Service 50c9f2
//   MAC	- Macintosh
Packit Service 50c9f2
//   MSDOS	- MS-DOS and Windows
Packit Service 50c9f2
//   OS2	- OS/2
Packit Service 50c9f2
//   OS2EMX	- XFree86 on OS/2 (not PM)
Packit Service 50c9f2
//   WIN32	- Win32 (Windows 95/98 and Windows NT)
Packit Service 50c9f2
//   SUN	- SunOS
Packit Service 50c9f2
//   SOLARIS	- Sun Solaris
Packit Service 50c9f2
//   HPUX	- HP-UX
Packit Service 50c9f2
//   ULTRIX	- DEC Ultrix
Packit Service 50c9f2
//   LINUX	- Linux
Packit Service 50c9f2
//   FREEBSD	- FreeBSD
Packit Service 50c9f2
//   NETBSD	- NetBSD
Packit Service 50c9f2
//   OPENBSD    - OpenBSD
Packit Service 50c9f2
//   IRIX	- SGI Irix
Packit Service 50c9f2
//   OSF	- OSF Unix
Packit Service 50c9f2
//   BSDI	- BSDI Unix
Packit Service 50c9f2
//   SCO	- SCO of some sort
Packit Service 50c9f2
//   AIX	- AIX Unix
Packit Service 50c9f2
//   UNIXWARE	- SCO UnixWare
Packit Service 50c9f2
//   GNU	- GNU Hurd
Packit Service 50c9f2
//   DGUX	- DG Unix
Packit Service 50c9f2
//   UNIX	- Any UNIX bsd/sysv system
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(__APPLE__) || defined(macintosh)
Packit Service 50c9f2
#define _OS_MAC_
Packit Service 50c9f2
#  ifdef MAC_OS_X_VERSION_MIN_REQUIRED
Packit Service 50c9f2
#    undef MAC_OS_X_VERSION_MIN_REQUIRED
Packit Service 50c9f2
#  endif
Packit Service 50c9f2
#  define MAC_OS_X_VERSION_MIN_REQUIRED MAC_OS_X_VERSION_10_3
Packit Service 50c9f2
#elif defined(MSDOS) || defined(_MSDOS) || defined(__MSDOS__)
Packit Service 50c9f2
#define _OS_MSDOS_
Packit Service 50c9f2
#elif defined(OS2) || defined(_OS2) || defined(__OS2__)
Packit Service 50c9f2
#if defined(__EMX__)
Packit Service 50c9f2
#define _OS_OS2EMX_
Packit Service 50c9f2
#else
Packit Service 50c9f2
#define _OS_OS2_
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#elif defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)
Packit Service 50c9f2
#define _OS_WIN32_
Packit Service 50c9f2
#elif defined(__MWERKS__) && defined(__INTEL__)
Packit Service 50c9f2
#define _OS_WIN32_
Packit Service 50c9f2
#elif defined(sun) || defined(__sun) || defined(__sun__)
Packit Service 50c9f2
#if defined(__SVR4)
Packit Service 50c9f2
#define _OS_SOLARIS_
Packit Service 50c9f2
#else
Packit Service 50c9f2
#define _OS_SUN_
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#elif defined(hpux) || defined(__hpux) || defined(__hpux__)
Packit Service 50c9f2
#define _OS_HPUX_
Packit Service 50c9f2
#elif defined(ultrix) || defined(__ultrix) || defined(__ultrix__)
Packit Service 50c9f2
#define _OS_ULTRIX_
Packit Service 50c9f2
#elif defined(reliantunix)
Packit Service 50c9f2
#define _OS_RELIANTUNIX_
Packit Service 50c9f2
#elif defined(linux) || defined(__linux) || defined(__linux__) || defined(__GNU__) || defined(__GLIBC__)
Packit Service 50c9f2
#define _OS_LINUX_
Packit Service 50c9f2
#elif defined(__FreeBSD__)
Packit Service 50c9f2
#define _OS_FREEBSD_
Packit Service 50c9f2
#elif defined(__NetBSD__)
Packit Service 50c9f2
#define _OS_NETBSD_
Packit Service 50c9f2
#elif defined(__OpenBSD__)
Packit Service 50c9f2
#define _OS_OPENBSD_
Packit Service 50c9f2
#elif defined(sgi) || defined(__sgi)
Packit Service 50c9f2
#define _OS_IRIX_
Packit Service 50c9f2
#elif defined(__osf__)
Packit Service 50c9f2
#define _OS_OSF_
Packit Service 50c9f2
#elif defined(bsdi) || defined(__bsdi__)
Packit Service 50c9f2
#define _OS_BSDI_
Packit Service 50c9f2
#elif defined(_AIX)
Packit Service 50c9f2
#define _OS_AIX_
Packit Service 50c9f2
#elif defined(__Lynx__)
Packit Service 50c9f2
#define _OS_LYNXOS_
Packit Service 50c9f2
#elif defined(_UNIXWARE)
Packit Service 50c9f2
#define _OS_UNIXWARE_
Packit Service 50c9f2
#elif defined(DGUX)
Packit Service 50c9f2
#define _OS_DGUX_
Packit Service 50c9f2
#elif defined(__QNX__)
Packit Service 50c9f2
#define _OS_QNX_
Packit Service 50c9f2
#elif defined(_SCO_DS) || defined(M_UNIX) || defined(M_XENIX)
Packit Service 50c9f2
#define _OS_SCO_
Packit Service 50c9f2
#elif defined(sco) || defined(_UNIXWARE7)
Packit Service 50c9f2
#define _OS_UNIXWARE7_
Packit Service 50c9f2
#elif !defined(_SCO_DS) && defined(__USLC__) && defined(__SCO_VERSION__)
Packit Service 50c9f2
#define _OS_UNIXWARE7_
Packit Service 50c9f2
#elif defined(__CYGWIN__)
Packit Service 50c9f2
#define _OS_CYGWIN_
Packit Service 50c9f2
#elif defined(__BEOS__)
Packit Service 50c9f2
#define _OS_BEOS_
Packit Service 50c9f2
#elif defined(__MINT__)
Packit Service 50c9f2
#define _OS_MINT_
Packit Service 50c9f2
#else
Packit Service 50c9f2
#error "Qt has not been ported to this OS - talk to qt-bugs@trolltech.com"
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(_OS_MAC_) || defined(_OS_MSDOS_) || defined(_OS_OS2_) || defined(_OS_WIN32_)
Packit Service 50c9f2
#undef	_OS_UNIX_
Packit Service 50c9f2
#elif !defined(_OS_UNIX_)
Packit Service 50c9f2
#define _OS_UNIX_
Packit Service 50c9f2
// QT_CLEAN_NAMESPACE is not defined by default; it would break too
Packit Service 50c9f2
// much code.
Packit Service 50c9f2
#if !defined(QT_CLEAN_NAMESPACE) && !defined(UNIX)
Packit Service 50c9f2
// ### remove 3.0
Packit Service 50c9f2
#define UNIX
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// The compiler, must be one of: (_CC_x_)
Packit Service 50c9f2
//
Packit Service 50c9f2
//   SYM	- Symantec C++ for both PC and Macintosh
Packit Service 50c9f2
//   MPW	- MPW C++
Packit Service 50c9f2
//   MWERKS	- Metrowerks CodeWarrior
Packit Service 50c9f2
//   MSVC	- Microsoft Visual C/C++
Packit Service 50c9f2
//   BOR	- Borland/Turbo C++
Packit Service 50c9f2
//   WAT	- Watcom C++
Packit Service 50c9f2
//   GNU	- GNU C++
Packit Service 50c9f2
//   COMEAU	- Comeau C++
Packit Service 50c9f2
//   EDG	- Edison Design Group C++
Packit Service 50c9f2
//   OC		- CenterLine C++
Packit Service 50c9f2
//   SUN	- Sun C++
Packit Service 50c9f2
//   DEC	- DEC C++
Packit Service 50c9f2
//   HP		- HPUX C++
Packit Service 50c9f2
//   USLC	- SCO UnixWare7 C++
Packit Service 50c9f2
//   CDS	- Reliant C++
Packit Service 50c9f2
//   KAI	- KAI C++
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
// Should be sorted most-authorative to least-authorative
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(__SC__)
Packit Service 50c9f2
#define _CC_SYM_
Packit Service 50c9f2
#elif defined( __KCC )
Packit Service 50c9f2
#define _CC_KAI_
Packit Service 50c9f2
#define _CC_EDG_
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#elif defined(applec)
Packit Service 50c9f2
#define _CC_MPW_
Packit Service 50c9f2
#elif defined(__MWERKS__)
Packit Service 50c9f2
#define _CC_MWERKS_
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#elif defined(_MSC_VER)
Packit Service 50c9f2
#define _CC_MSVC_
Packit Service 50c9f2
#elif defined(__BORLANDC__) || defined(__TURBOC__)
Packit Service 50c9f2
#define _CC_BOR_
Packit Service 50c9f2
#elif defined(__WATCOMC__)
Packit Service 50c9f2
#define _CC_WAT_
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#elif defined(__GNUC__)
Packit Service 50c9f2
#define _CC_GNU_
Packit Service 50c9f2
#if __GNUC__ == 2 && __GNUC_MINOR__ <= 7
Packit Service 50c9f2
#define Q_FULL_TEMPLATE_INSTANTIATION
Packit Service 50c9f2
#define Q_TEMPLATE_NEEDS_CLASS_DECLARATION
Packit Service 50c9f2
#define Q_TEMPLATE_NEEDS_EXPLICIT_CONVERSION
Packit Service 50c9f2
#define Q_SPURIOUS_NON_VOID_WARNING
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#if __GNUC__ == 2 && __GNUC_MINOR__ >= 95
Packit Service 50c9f2
#define Q_DELETING_VOID_UNDEFINED
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#if (defined(__arm__) || defined(__ARMEL__)) && !defined(QT_MOC_CPP)
Packit Service 50c9f2
#define Q_PACKED __attribute__ ((packed))
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#elif defined(__xlC__)
Packit Service 50c9f2
#define _CC_XLC_
Packit Service 50c9f2
#define Q_FULL_TEMPLATE_INSTANTIATION
Packit Service 50c9f2
#if __xlC__ >= 0x400
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#if __xlC__ <= 0x0306
Packit Service 50c9f2
#define Q_TEMPLATE_NEEDS_EXPLICIT_CONVERSION
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#elif defined(como40)
Packit Service 50c9f2
#define _CC_EDG_
Packit Service 50c9f2
#define _CC_COMEAU_
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#define Q_C_CALLBACKS
Packit Service 50c9f2
#elif defined(__USLC__)
Packit Service 50c9f2
#define _CC_USLC_
Packit Service 50c9f2
#ifdef __EDG__ // UnixWare7
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#elif defined(__DECCXX)
Packit Service 50c9f2
#define _CC_DEC_
Packit Service 50c9f2
#if __DECCXX_VER >= 60060005
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#elif defined(__EDG) || defined(__EDG__)
Packit Service 50c9f2
// one observed on SGI DCC, the other documented
Packit Service 50c9f2
#define _CC_EDG_
Packit Service 50c9f2
#elif defined(OBJECTCENTER) || defined(CENTERLINE_CLPP)
Packit Service 50c9f2
#define _CC_OC_
Packit Service 50c9f2
#if defined(_BOOL)
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#elif defined(__SUNPRO_CC)
Packit Service 50c9f2
#define _CC_SUN_
Packit Service 50c9f2
#if __SUNPRO_CC >= 0x500
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#define Q_C_CALLBACKS
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#elif defined(__CDS__)
Packit Service 50c9f2
#define _CC_CDS_
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#elif defined(_OS_HPUX_)
Packit Service 50c9f2
// this test is from aCC online help
Packit Service 50c9f2
#if defined(__HP_aCC) || __cplusplus >= 199707L
Packit Service 50c9f2
// this is the aCC
Packit Service 50c9f2
#define _CC_HP_ACC_
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#else
Packit Service 50c9f2
// this is the CC
Packit Service 50c9f2
#define _CC_HP_
Packit Service 50c9f2
#define Q_FULL_TEMPLATE_INSTANTIATION
Packit Service 50c9f2
#define Q_TEMPLATE_NEEDS_EXPLICIT_CONVERSION
Packit Service 50c9f2
#endif // __HP_aCC
Packit Service 50c9f2
#else
Packit Service 50c9f2
#error "Qt has not been tested with this compiler - talk to qt-bugs@trolltech.com"
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
// detect Microsoft compiler version
Packit Service 50c9f2
#ifdef _CC_MSVC_
Packit Service 50c9f2
#if _MSC_VER >= 1400
Packit Service 50c9f2
#define _CC_V2005
Packit Service 50c9f2
#elif _MSC_VER >= 1310
Packit Service 50c9f2
#define _CC_V2003
Packit Service 50c9f2
#elif _MSC_VER > 1300
Packit Service 50c9f2
#define _CC_V2002
Packit Service 50c9f2
#else
Packit Service 50c9f2
#define _CC_V1998
Packit Service 50c9f2
#endif 
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
#ifndef Q_PACKED
Packit Service 50c9f2
#define Q_PACKED
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
// Window system setting
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(_OS_MAC_)
Packit Service 50c9f2
#define _WS_MAC_
Packit Service 50c9f2
#elif defined(_OS_MSDOS_)
Packit Service 50c9f2
#define _WS_WIN16_
Packit Service 50c9f2
#error "Qt requires Win32 and does not work with Windows 3.x"
Packit Service 50c9f2
#elif defined(_WIN32_X11_)
Packit Service 50c9f2
#define _WS_X11_
Packit Service 50c9f2
#elif defined(_OS_WIN32_)
Packit Service 50c9f2
#define _WS_WIN32_
Packit Service 50c9f2
#elif defined(_OS_OS2_)
Packit Service 50c9f2
#error "Qt does not work with OS/2 Presentation Manager or Workplace Shell"
Packit Service 50c9f2
#elif defined(_OS_UNIX_)
Packit Service 50c9f2
#ifdef QWS
Packit Service 50c9f2
#define _WS_QWS_
Packit Service 50c9f2
#else
Packit Service 50c9f2
#define _WS_X11_
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(_WS_WIN16_) || defined(_WS_WIN32_)
Packit Service 50c9f2
#define _WS_WIN_
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Some classes do not permit copies to be made of an object.
Packit Service 50c9f2
// These classes contains a private copy constructor and operator=
Packit Service 50c9f2
// to disable copying (the compiler gives an error message).
Packit Service 50c9f2
// Undefine Q_DISABLE_COPY to turn off this checking.
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#define Q_DISABLE_COPY
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Useful type definitions for Qt
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(bool)
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#elif __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#elif _MSC_VER >= 1100 || __BORLANDC__ >= 0x500
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#elif defined(sgi) && defined(_BOOL)
Packit Service 50c9f2
#define Q_HAS_BOOL_TYPE
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
#if (QT_VERSION >= 300)
Packit Service 50c9f2
#error "Use an enum for bool"
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
#if !defined(Q_HAS_BOOL_TYPE)
Packit Service 50c9f2
#if defined(_CC_MSVC_)
Packit Service 50c9f2
#define _CC_BOOL_DEF_
Packit Service 50c9f2
#define bool		int
Packit Service 50c9f2
#else
Packit Service 50c9f2
typedef int		bool;
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
typedef unsigned char	uchar;
Packit Service 50c9f2
typedef unsigned short	ushort;
Packit Service 50c9f2
typedef unsigned	uint;
Packit Service 50c9f2
typedef unsigned long	ulong;
Packit Service 50c9f2
typedef char	       *pchar;
Packit Service 50c9f2
typedef uchar	       *puchar;
Packit Service 50c9f2
typedef const char     *pcchar;
Packit Service 50c9f2
#if defined(_OS_WIN32_) && !defined(_CC_GNU_)
Packit Service 50c9f2
typedef __int64            int64;
Packit Service 50c9f2
typedef unsigned __int64   uint64;
Packit Service 50c9f2
#else
Packit Service 50c9f2
typedef long long          int64;
Packit Service 50c9f2
typedef unsigned long long uint64;
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Constant bool values
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#ifndef TRUE
Packit Service 50c9f2
const bool FALSE = 0;
Packit Service 50c9f2
const bool TRUE = !0;
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(_CC_MSVC_)
Packit Service 50c9f2
// Workaround for static const members.
Packit Service 50c9f2
#define QT_STATIC_CONST static
Packit Service 50c9f2
#define QT_STATIC_CONST_IMPL
Packit Service 50c9f2
#else
Packit Service 50c9f2
#define QT_STATIC_CONST static const
Packit Service 50c9f2
#define QT_STATIC_CONST_IMPL const
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Utility macros and inline functions
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#define QMAX(a,b)	((a) > (b) ? (a) : (b))
Packit Service 50c9f2
#define QMIN(a,b)	((a) < (b) ? (a) : (b))
Packit Service 50c9f2
#define QABS(a)		((a) >= 0  ? (a) : -(a))
Packit Service 50c9f2
Packit Service 50c9f2
inline int qRound( double d )
Packit Service 50c9f2
{
Packit Service 50c9f2
    return d > 0.0 ? int(d+0.5) : int(d-0.5);
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Size-dependent types (architechture-dependent byte order)
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
// QT_CLEAN_NAMESPACE is not defined by default; it would break too
Packit Service 50c9f2
// much code.
Packit Service 50c9f2
#if !defined(QT_CLEAN_NAMESPACE)
Packit Service 50c9f2
typedef signed char	INT8;			// 8 bit signed
Packit Service 50c9f2
typedef unsigned char	UINT8;			// 8 bit unsigned
Packit Service 50c9f2
typedef short		INT16;			// 16 bit signed
Packit Service 50c9f2
typedef unsigned short	UINT16;			// 16 bit unsigned
Packit Service 50c9f2
typedef int		INT32;			// 32 bit signed
Packit Service 50c9f2
typedef unsigned int	UINT32;			// 32 bit unsigned
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
typedef signed char	Q_INT8;			// 8 bit signed
Packit Service 50c9f2
typedef unsigned char	Q_UINT8;		// 8 bit unsigned
Packit Service 50c9f2
typedef short		Q_INT16;		// 16 bit signed
Packit Service 50c9f2
typedef unsigned short	Q_UINT16;		// 16 bit unsigned
Packit Service 50c9f2
typedef int		Q_INT32;		// 32 bit signed
Packit Service 50c9f2
typedef unsigned int	Q_UINT32;		// 32 bit unsigned
Packit Service 50c9f2
typedef long		Q_INT64;		// up to 64 bit signed
Packit Service 50c9f2
typedef unsigned long	Q_UINT64;		// up to 64 bit unsigned
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Data stream functions is provided by many classes (defined in qdatastream.h)
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
class QDataStream;
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
#ifdef _WS_WIN_
Packit Service 50c9f2
extern bool qt_winunicode;
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
#ifndef QT_H
Packit Service 50c9f2
#include <qfeatures.h>
Packit Service 50c9f2
#endif // QT_H
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Create Qt DLL if QT_DLL is defined (Windows only)
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(_OS_WIN32_)
Packit Service 50c9f2
#if defined(QT_NODLL)
Packit Service 50c9f2
#undef QT_MAKEDLL
Packit Service 50c9f2
#undef QT_DLL
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#ifdef QT_DLL
Packit Service 50c9f2
#if defined(QT_MAKEDLL)		/* create a Qt DLL library */
Packit Service 50c9f2
#undef QT_DLL
Packit Service 50c9f2
#define Q_EXPORT  __declspec(dllexport)
Packit Service 50c9f2
#define Q_TEMPLATEDLL
Packit Service 50c9f2
#undef  Q_DISABLE_COPY		/* avoid unresolved externals */
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#if defined(QT_DLL)		/* use a Qt DLL library */
Packit Service 50c9f2
#define Q_EXPORT  __declspec(dllimport)
Packit Service 50c9f2
#define Q_TEMPLATEDLL
Packit Service 50c9f2
#undef  Q_DISABLE_COPY		/* avoid unresolved externals */
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#else // ! _OS_WIN32_
Packit Service 50c9f2
#undef QT_MAKEDLL		/* ignore these for other platforms */
Packit Service 50c9f2
#undef QT_DLL
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
#ifndef Q_EXPORT
Packit Service 50c9f2
#define Q_EXPORT
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// System information
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
Q_EXPORT const char *qVersion();
Packit Service 50c9f2
Q_EXPORT bool qSysInfo( int *wordSize, bool *bigEndian );
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Debugging and error handling
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#if !defined(NO_CHECK)
Packit Service 50c9f2
#define CHECK_STATE				// check state of objects etc.
Packit Service 50c9f2
#define CHECK_RANGE				// check range of indexes etc.
Packit Service 50c9f2
#define CHECK_NULL				// check null pointers
Packit Service 50c9f2
#define CHECK_MATH				// check math functions
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
#if !defined(NO_DEBUG) && !defined(DEBUG)
Packit Service 50c9f2
#define DEBUG					// display debug messages
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Avoid some particularly useless warnings from some stupid compilers.
Packit Service 50c9f2
// To get ALL C++ compiler warnings, define CC_WARNINGS or comment out
Packit Service 50c9f2
// the line "#define Q_NO_WARNINGS"
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#if !defined(CC_WARNINGS)
Packit Service 50c9f2
#define Q_NO_WARNINGS
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#if defined(Q_NO_WARNINGS)
Packit Service 50c9f2
#if defined(_CC_MSVC_)
Packit Service 50c9f2
#pragma warning(disable: 4244)
Packit Service 50c9f2
#pragma warning(disable: 4275)
Packit Service 50c9f2
#pragma warning(disable: 4514)
Packit Service 50c9f2
#pragma warning(disable: 4800)
Packit Service 50c9f2
#pragma warning(disable: 4097)
Packit Service 50c9f2
#pragma warning(disable: 4706)
Packit Service 50c9f2
#elif defined(_CC_BOR_)
Packit Service 50c9f2
#pragma option -w-inl
Packit Service 50c9f2
#pragma option -w-aus
Packit Service 50c9f2
#pragma warn -inl
Packit Service 50c9f2
#pragma warn -pia
Packit Service 50c9f2
#pragma warn -ccc
Packit Service 50c9f2
#pragma warn -rch
Packit Service 50c9f2
#pragma warn -sig
Packit Service 50c9f2
#elif defined(_CC_MWERKS_)
Packit Service 50c9f2
#pragma warn_possunwant off
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#endif // Q_NO_WARNINGS
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Avoid dead code
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(_CC_EDG_) || defined(_CC_WAT_)
Packit Service 50c9f2
#define Q_NO_DEAD_CODE
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
//
Packit Service 50c9f2
// Use to avoid "unused parameter" warnings
Packit Service 50c9f2
//
Packit Service 50c9f2
Packit Service 50c9f2
#define Q_UNUSED(x) x=x;
Packit Service 50c9f2
#define Q_CONST_UNUSED(x) (void)x;
Packit Service 50c9f2
Packit Service 50c9f2
Q_EXPORT void qDebug( const char *, ... )	// print debug message
Packit Service 50c9f2
#if defined(_CC_GNU_) && !defined(__INSURE__)
Packit Service 50c9f2
    __attribute__ ((format (printf, 1, 2)))
Packit Service 50c9f2
#endif
Packit Service 50c9f2
;
Packit Service 50c9f2
Packit Service 50c9f2
Q_EXPORT void qWarning( const char *, ... )	// print warning message
Packit Service 50c9f2
#if defined(_CC_GNU_) && !defined(__INSURE__)
Packit Service 50c9f2
    __attribute__ ((format (printf, 1, 2)))
Packit Service 50c9f2
#endif
Packit Service 50c9f2
;
Packit Service 50c9f2
Packit Service 50c9f2
Q_EXPORT void qFatal( const char *, ... )	// print fatal message and exit
Packit Service 50c9f2
#if defined(_CC_GNU_)
Packit Service 50c9f2
    __attribute__ ((format (printf, 1, 2)))
Packit Service 50c9f2
#endif
Packit Service 50c9f2
;
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
// QT_CLEAN_NAMESPACE is not defined by default; it would break too
Packit Service 50c9f2
// much code.
Packit Service 50c9f2
#if !defined(QT_CLEAN_NAMESPACE)
Packit Service 50c9f2
// in that case, also define the old ones...
Packit Service 50c9f2
Packit Service 50c9f2
Q_EXPORT void debug( const char *, ... )	// print debug message
Packit Service 50c9f2
#if defined(_CC_GNU_) && !defined(__INSURE__)
Packit Service 50c9f2
    __attribute__ ((format (printf, 1, 2)))
Packit Service 50c9f2
#endif
Packit Service 50c9f2
;
Packit Service 50c9f2
Packit Service 50c9f2
Q_EXPORT void warning( const char *, ... )	// print warning message
Packit Service 50c9f2
#if defined(_CC_GNU_) && !defined(__INSURE__)
Packit Service 50c9f2
    __attribute__ ((format (printf, 1, 2)))
Packit Service 50c9f2
#endif
Packit Service 50c9f2
;
Packit Service 50c9f2
Packit Service 50c9f2
Q_EXPORT void fatal( const char *, ... )	// print fatal message and exit
Packit Service 50c9f2
#if defined(_CC_GNU_) && !defined(__INSURE__)
Packit Service 50c9f2
    __attribute__ ((format (printf, 1, 2)))
Packit Service 50c9f2
#endif
Packit Service 50c9f2
;
Packit Service 50c9f2
Packit Service 50c9f2
// okay, that was debug()/warning()/fatal()
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
#if !defined(ASSERT)
Packit Service 50c9f2
#if defined(CHECK_STATE)
Packit Service 50c9f2
#if defined(QT_FATAL_ASSERT)
Packit Service 50c9f2
#define ASSERT(x)  if ( !(x) )\
Packit Service 50c9f2
	qFatal("ASSERT: \"%s\" in %s (%d)",#x,__FILE__,__LINE__)
Packit Service 50c9f2
#else
Packit Service 50c9f2
#define ASSERT(x)  if ( !(x) )\
Packit Service 50c9f2
	qWarning("ASSERT: \"%s\" in %s (%d)",#x,__FILE__,__LINE__)
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#else
Packit Service 50c9f2
#define ASSERT(x)
Packit Service 50c9f2
#endif
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
Q_EXPORT bool qt_check_pointer( bool c, const char *, int );
Packit Service 50c9f2
Packit Service 50c9f2
#if defined(CHECK_NULL)
Packit Service 50c9f2
#define CHECK_PTR(p) (qt_check_pointer((p)==0,__FILE__,__LINE__))
Packit Service 50c9f2
#else
Packit Service 50c9f2
#define CHECK_PTR(p)
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
enum QtMsgType { QtDebugMsg, QtWarningMsg, QtFatalMsg };
Packit Service 50c9f2
Packit Service 50c9f2
typedef void (*msg_handler)(QtMsgType, const char *);
Packit Service 50c9f2
Q_EXPORT msg_handler qInstallMsgHandler( msg_handler );
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
Q_EXPORT void qSuppressObsoleteWarnings( bool = TRUE );
Packit Service 50c9f2
Packit Service 50c9f2
#if !defined(QT_REJECT_OBSOLETE)
Packit Service 50c9f2
#define QT_OBSOLETE
Packit Service 50c9f2
Q_EXPORT void qObsolete( const char *obj, const char *oldfunc,
Packit Service 50c9f2
			 const char *newfunc );
Packit Service 50c9f2
Q_EXPORT void qObsolete( const char *obj, const char *oldfunc );
Packit Service 50c9f2
Q_EXPORT void qObsolete( const char *message );
Packit Service 50c9f2
#endif
Packit Service 50c9f2
Packit Service 50c9f2
// DvH: added to avoid warnings on recent gcc versions
Packit Service 50c9f2
#define Q_DELETING_VOID_UNDEFINED
Packit Service 50c9f2
Packit Service 50c9f2
#endif // QGLOBAL_H