summaryrefslogtreecommitdiffstats
path: root/tqtinterface/qt4/src/kernel/tqcursor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tqtinterface/qt4/src/kernel/tqcursor.cpp')
-rw-r--r--tqtinterface/qt4/src/kernel/tqcursor.cpp292
1 files changed, 0 insertions, 292 deletions
diff --git a/tqtinterface/qt4/src/kernel/tqcursor.cpp b/tqtinterface/qt4/src/kernel/tqcursor.cpp
deleted file mode 100644
index 3be2c23..0000000
--- a/tqtinterface/qt4/src/kernel/tqcursor.cpp
+++ /dev/null
@@ -1,292 +0,0 @@
-/****************************************************************************
-**
-** Implementation of TQCursor class
-**
-** Created : 940220
-**
-** Copyright (C) 2010 Timothy Pearson and (C) 1992-2008 Trolltech ASA.
-**
-** This file is part of the kernel module of the TQt GUI Toolkit.
-**
-** 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.
-**
-** This file may be used under the terms of the Q Public License as
-** defined by Trolltech ASA and appearing in the file LICENSE.TQPL
-** included in the packaging of this file. 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.
-**
-**********************************************************************/
-
-#include "tqcursor.h"
-
-#ifndef TQT_NO_CURSOR
-
-#include "tqbitmap.h"
-#include "tqimage.h"
-#include "tqdatastream.h"
-
-#ifdef USE_QT4
-
-#else // USE_QT4
-
-/*!
- \class TQCursor tqcursor.h
-
- \brief The TQCursor class provides a mouse cursor with an arbitrary
- tqshape.
-
- \ingroup appearance
- \ingroup shared
-
- This class is mainly used to create mouse cursors that are
- associated with particular widgets and to get and set the position
- of the mouse cursor.
-
- TQt has a number of standard cursor tqshapes, but you can also make
- custom cursor tqshapes based on a TQBitmap, a mask and a hotspot.
-
- To associate a cursor with a widget, use TQWidget::setCursor(). To
- associate a cursor with all widgets (normally for a short period
- of time), use TQApplication::setOverrideCursor().
-
- To set a cursor tqshape use TQCursor::setShape() or use the TQCursor
- constructor which takes the tqshape as argument, or you can use one
- of the predefined cursors defined in the \l tqCursorShape enum.
-
- If you want to create a cursor with your own bitmap, either use
- the TQCursor constructor which takes a bitmap and a mask or the
- constructor which takes a pixmap as arguments.
-
- To set or get the position of the mouse cursor use the static
- methods TQCursor::pos() and TQCursor::setPos().
-
- \img cursors.png Cursor Shapes
-
- \sa TQWidget \link guibooks.html#fowler GUI Design Handbook:
- Cursors\endlink
-
- On X11, TQt supports the \link
- http://www.xfree86.org/4.3.0/Xcursor.3.html Xcursor\endlink
- library, which allows for full color icon themes. The table below
- shows the cursor name used for each TQt::tqCursorShape value. If a
- cursor cannot be found using the name shown below, a standard X11
- cursor will be used instead. Note: X11 does not provide
- appropriate cursors for all possible TQt::tqCursorShape values. It
- is possible that some cursors will be taken from the Xcursor
- theme, while others will use an internal bitmap cursor.
-
- \table
- \header \i TQt::tqCursorShape Values \i Cursor Names
- \row \i TQt::ArrowCursor \i left_ptr
- \row \i TQt::UpArrowCursor \i up_arrow
- \row \i TQt::CrossCursor \i cross
- \row \i TQt::WaitCursor \i wait
- \row \i TQt::BusyCursor \i left_ptr_watch
- \row \i TQt::IbeamCursor \i ibeam
- \row \i TQt::SizeVerCursor \i size_ver
- \row \i TQt::SizeHorCursor \i size_hor
- \row \i TQt::SizeBDiagCursor \i size_bdiag
- \row \i TQt::SizeFDiagCursor \i size_fdiag
- \row \i TQt::SizeAllCursor \i size_all
- \row \i TQt::SplitVCursor \i split_v
- \row \i TQt::SplitHCursor \i split_h
- \row \i TQt::PointingHandCursor \i pointing_hand
- \row \i TQt::ForbiddenCursor \i forbidden
- \row \i TQt::WhatsThisCursor \i whats_this
- \endtable
-*/
-
-/*!
- \enum TQt::tqCursorShape
-
- This enum type defines the various cursors that can be used.
-
- \value ArrowCursor standard arrow cursor
- \value UpArrowCursor upwards arrow
- \value CrossCursor crosshair
- \value WaitCursor hourglass/watch
- \value BusyCursor standard arrow with hourglass/watch
- \value IbeamCursor ibeam/text entry
- \value SizeVerCursor vertical resize
- \value SizeHorCursor horizontal resize
- \value SizeFDiagCursor diagonal resize (\)
- \value SizeBDiagCursor diagonal resize (/)
- \value SizeAllCursor all directions resize
- \value BlankCursor blank/invisible cursor
- \value SplitVCursor vertical splitting
- \value SplitHCursor horizontal splitting
- \value PointingHandCursor a pointing hand
- \value ForbiddenCursor a slashed circle
- \value WhatsThisCursor an arrow with a question mark
- \value BitmapCursor
-
- ArrowCursor is the default for widgets in a normal state.
-
- \img cursors.png Cursor Shapes
-*/
-
-/*****************************************************************************
- TQCursor stream functions
- *****************************************************************************/
-
-#ifndef TQT_NO_DATASTREAM
-
-
-/*!
- \relates TQCursor
- Writes the cursor \a c to the stream \a s.
-
- \sa \link datastreamformat.html Format of the TQDataStream operators \endlink
-*/
-
-TQDataStream &operator<<( TQDataStream &s, const TQCursor &c )
-{
- s << (TQ_INT16)c.tqshape(); // write tqshape id to stream
- if ( c.tqshape() == TQt::BitmapCursor ) { // bitmap cursor
-#if !defined(TQT_NO_IMAGEIO)
- s << *c.bitmap() << *c.mask();
- s << c.hotSpot();
-#else
- qWarning("No Image Cursor I/O");
-#endif
- }
- return s;
-}
-
-/*!
- \relates TQCursor
- Reads a cursor from the stream \a s and sets \a c to the read data.
-
- \sa \link datastreamformat.html Format of the TQDataStream operators \endlink
-*/
-
-TQDataStream &operator>>( TQDataStream &s, TQCursor &c )
-{
- TQ_INT16 tqshape;
- s >> tqshape; // read tqshape id from stream
- if ( tqshape == TQt::BitmapCursor ) { // read bitmap cursor
-#if !defined(TQT_NO_IMAGEIO)
- TQBitmap bm, bmm;
- TQPoint hot;
- s >> bm >> bmm >> hot;
- c = TQCursor( bm, bmm, hot.x(), hot.y() );
-#else
- qWarning("No Image Cursor I/O");
-#endif
- } else {
- c.setShape( (int)tqshape ); // create cursor with tqshape
- }
- return s;
-}
-#endif // TQT_NO_DATASTREAM
-
-
-/*!
- Constructs a custom pixmap cursor.
-
- \a pixmap is the image. It is usual to give it a mask (set using
- TQPixmap::setMask()). \a hotX and \a hotY define the cursor's hot
- spot.
-
- If \a hotX is negative, it is set to the \c{pixmap().width()/2}.
- If \a hotY is negative, it is set to the \c{pixmap().height()/2}.
-
- Valid cursor sizes depend on the display hardware (or the
- underlying window system). We recommend using 32x32 cursors,
- because this size is supported on all platforms. Some platforms
- also support 16x16, 48x48 and 64x64 cursors.
-
- Currently, only black-and-white pixmaps can be used.
-
- \sa TQPixmap::TQPixmap(), TQPixmap::setMask()
-*/
-
-TQCursor::TQCursor( const TQPixmap &pixmap, int hotX, int hotY )
-{
- TQImage img = pixmap.convertToImage().
- convertDepth( 8, TQt::ThresholdDither|TQt::AvoidDither );
- TQBitmap bm;
- bm.convertFromImage( img, TQt::ThresholdDither|TQt::AvoidDither );
- TQBitmap bmm;
- if ( bm.mask() ) {
- bmm = *bm.mask();
- TQBitmap nullBm;
- bm.setMask( nullBm );
- }
- else if ( pixmap.mask() ) {
- TQImage mimg = pixmap.mask()->convertToImage().
- convertDepth( 8, TQt::ThresholdDither|TQt::AvoidDither );
- bmm.convertFromImage( mimg, TQt::ThresholdDither|TQt::AvoidDither );
- }
- else {
- bmm.resize( bm.size() );
- bmm.fill( TQt::color1 );
- }
-
- setBitmap(bm,bmm,hotX,hotY);
-}
-
-
-
-/*!
- Constructs a custom bitmap cursor.
-
- \a bitmap and
- \a mask make up the bitmap.
- \a hotX and
- \a hotY define the cursor's hot spot.
-
- If \a hotX is negative, it is set to the \c{bitmap().width()/2}.
- If \a hotY is negative, it is set to the \c{bitmap().height()/2}.
-
- The cursor \a bitmap (B) and \a mask (M) bits are combined like this:
- \list
- \i B=1 and M=1 gives black.
- \i B=0 and M=1 gives white.
- \i B=0 and M=0 gives transparent.
- \i B=1 and M=0 gives an undefined result.
- \endlist
-
- Use the global TQt color \c color0 to draw 0-pixels and \c color1 to
- draw 1-pixels in the bitmaps.
-
- Valid cursor sizes depend on the display hardware (or the
- underlying window system). We recommend using 32x32 cursors,
- because this size is supported on all platforms. Some platforms
- also support 16x16, 48x48 and 64x64 cursors.
-
- \sa TQBitmap::TQBitmap(), TQBitmap::setMask()
-*/
-
-TQCursor::TQCursor( const TQBitmap &bitmap, const TQBitmap &mask,
- int hotX, int hotY )
-{
- setBitmap(bitmap,mask,hotX,hotY);
-}
-
-#endif // USE_QT4
-
-#endif // TQT_NO_CURSOR
-
-