Ignore:
Timestamp:
May 5, 2011, 5:36:53 AM (14 years ago)
Author:
Dmitry A. Kuminov
Message:

trunk: Merged in qt 4.7.2 sources from branches/vendor/nokia/qt.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/src/gui/kernel/qdnd.cpp

    r651 r846  
    11/****************************************************************************
    22**
    3 ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
     3** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
    44** All rights reserved.
    55** Contact: Nokia Corporation (qt-info@nokia.com)
     
    6161#include <ctype.h>
    6262
     63#include <private/qapplication_p.h>
     64
    6365#ifndef QT_NO_DRAGANDDROP
    6466
    6567QT_BEGIN_NAMESPACE
    66 
    67 // These pixmaps approximate the images in the Windows User Interface Guidelines.
    68 
    69 // XPM
    70 
    71 static const char * const move_xpm[] = {
    72 "11 20 3 1",
    73 ".        c None",
    74 #if defined(Q_WS_WIN)
    75 "a        c #000000",
    76 "X        c #FFFFFF", // Windows cursor is traditionally white
    77 #else
    78 "a        c #FFFFFF",
    79 "X        c #000000", // X11 cursor is traditionally black
    80 #endif
    81 "aa.........",
    82 "aXa........",
    83 "aXXa.......",
    84 "aXXXa......",
    85 "aXXXXa.....",
    86 "aXXXXXa....",
    87 "aXXXXXXa...",
    88 "aXXXXXXXa..",
    89 "aXXXXXXXXa.",
    90 "aXXXXXXXXXa",
    91 "aXXXXXXaaaa",
    92 "aXXXaXXa...",
    93 "aXXaaXXa...",
    94 "aXa..aXXa..",
    95 "aa...aXXa..",
    96 "a.....aXXa.",
    97 "......aXXa.",
    98 ".......aXXa",
    99 ".......aXXa",
    100 "........aa."};
    101 
    102 #if defined(Q_WS_WIN) || defined(Q_WS_PM)
    103 /* XPM */
    104 static const char * const ignore_xpm[] = {
    105 "24 30 3 1",
    106 ".        c None",
    107 #if defined(Q_WS_WIN)
    108 "a        c #000000",
    109 "X        c #FFFFFF", // Windows cursor is traditionally white
    110 #else
    111 "a        c #FFFFFF",
    112 "X        c #000000", // OS/2 cursor is traditionally black
    113 #endif
    114 "aa......................",
    115 "aXa.....................",
    116 "aXXa....................",
    117 "aXXXa...................",
    118 "aXXXXa..................",
    119 "aXXXXXa.................",
    120 "aXXXXXXa................",
    121 "aXXXXXXXa...............",
    122 "aXXXXXXXXa..............",
    123 "aXXXXXXXXXa.............",
    124 "aXXXXXXaaaa.............",
    125 "aXXXaXXa................",
    126 "aXXaaXXa................",
    127 "aXa..aXXa...............",
    128 "aa...aXXa...............",
    129 "a.....aXXa..............",
    130 "......aXXa.....XXXX.....",
    131 ".......aXXa..XXaaaaXX...",
    132 ".......aXXa.XaaaaaaaaX..",
    133 "........aa.XaaaXXXXaaaX.",
    134 "...........XaaaaX..XaaX.",
    135 "..........XaaXaaaX..XaaX",
    136 "..........XaaXXaaaX.XaaX",
    137 "..........XaaX.XaaaXXaaX",
    138 "..........XaaX..XaaaXaaX",
    139 "...........XaaX..XaaaaX.",
    140 "...........XaaaXXXXaaaX.",
    141 "............XaaaaaaaaX..",
    142 ".............XXaaaaXX...",
    143 "...............XXXX....."};
    144 #endif
    145 
    146 /* XPM */
    147 static const char * const copy_xpm[] = {
    148 "24 30 3 1",
    149 ".        c None",
    150 "a        c #000000",
    151 "X        c #FFFFFF",
    152 #if defined(Q_WS_WIN) // Windows cursor is traditionally white
    153 "aa......................",
    154 "aXa.....................",
    155 "aXXa....................",
    156 "aXXXa...................",
    157 "aXXXXa..................",
    158 "aXXXXXa.................",
    159 "aXXXXXXa................",
    160 "aXXXXXXXa...............",
    161 "aXXXXXXXXa..............",
    162 "aXXXXXXXXXa.............",
    163 "aXXXXXXaaaa.............",
    164 "aXXXaXXa................",
    165 "aXXaaXXa................",
    166 "aXa..aXXa...............",
    167 "aa...aXXa...............",
    168 "a.....aXXa..............",
    169 "......aXXa..............",
    170 ".......aXXa.............",
    171 ".......aXXa.............",
    172 "........aa...aaaaaaaaaaa",
    173 #else
    174 "XX......................",
    175 "XaX.....................",
    176 "XaaX....................",
    177 "XaaaX...................",
    178 "XaaaaX..................",
    179 "XaaaaaX.................",
    180 "XaaaaaaX................",
    181 "XaaaaaaaX...............",
    182 "XaaaaaaaaX..............",
    183 "XaaaaaaaaaX.............",
    184 "XaaaaaaXXXX.............",
    185 "XaaaXaaX................",
    186 "XaaXXaaX................",
    187 "XaX..XaaX...............",
    188 "XX...XaaX...............",
    189 "X.....XaaX..............",
    190 "......XaaX..............",
    191 ".......XaaX.............",
    192 ".......XaaX.............",
    193 "........XX...aaaaaaaaaaa",
    194 #endif
    195 ".............aXXXXXXXXXa",
    196 ".............aXXXXXXXXXa",
    197 ".............aXXXXaXXXXa",
    198 ".............aXXXXaXXXXa",
    199 ".............aXXaaaaaXXa",
    200 ".............aXXXXaXXXXa",
    201 ".............aXXXXaXXXXa",
    202 ".............aXXXXXXXXXa",
    203 ".............aXXXXXXXXXa",
    204 ".............aaaaaaaaaaa"};
    205 
    206 /* XPM */
    207 static const char * const link_xpm[] = {
    208 "24 30 3 1",
    209 ".        c None",
    210 "a        c #000000",
    211 "X        c #FFFFFF",
    212 #if defined(Q_WS_WIN) // Windows cursor is traditionally white
    213 "aa......................",
    214 "aXa.....................",
    215 "aXXa....................",
    216 "aXXXa...................",
    217 "aXXXXa..................",
    218 "aXXXXXa.................",
    219 "aXXXXXXa................",
    220 "aXXXXXXXa...............",
    221 "aXXXXXXXXa..............",
    222 "aXXXXXXXXXa.............",
    223 "aXXXXXXaaaa.............",
    224 "aXXXaXXa................",
    225 "aXXaaXXa................",
    226 "aXa..aXXa...............",
    227 "aa...aXXa...............",
    228 "a.....aXXa..............",
    229 "......aXXa..............",
    230 ".......aXXa.............",
    231 ".......aXXa.............",
    232 "........aa...aaaaaaaaaaa",
    233 #else
    234 "XX......................",
    235 "XaX.....................",
    236 "XaaX....................",
    237 "XaaaX...................",
    238 "XaaaaX..................",
    239 "XaaaaaX.................",
    240 "XaaaaaaX................",
    241 "XaaaaaaaX...............",
    242 "XaaaaaaaaX..............",
    243 "XaaaaaaaaaX.............",
    244 "XaaaaaaXXXX.............",
    245 "XaaaXaaX................",
    246 "XaaXXaaX................",
    247 "XaX..XaaX...............",
    248 "XX...XaaX...............",
    249 "X.....XaaX..............",
    250 "......XaaX..............",
    251 ".......XaaX.............",
    252 ".......XaaX.............",
    253 "........XX...aaaaaaaaaaa",
    254 #endif
    255 ".............aXXXXXXXXXa",
    256 ".............aXXXaaaaXXa",
    257 ".............aXXXXaaaXXa",
    258 ".............aXXXaaaaXXa",
    259 ".............aXXaaaXaXXa",
    260 ".............aXXaaXXXXXa",
    261 ".............aXXaXXXXXXa",
    262 ".............aXXXaXXXXXa",
    263 ".............aXXXXXXXXXa",
    264 ".............aaaaaaaaaaa"};
    26568
    26669#ifndef QT_NO_DRAGANDDROP
     
    332135    Q_ASSERT(!instance);
    333136
    334 #if defined(Q_WS_WIN) || defined(Q_WS_PM)
    335     n_cursor = 4;
    336 #else
    337     n_cursor = 3;
    338 #endif
    339 
    340137#ifdef Q_WS_QWS
    341138    currentActionForOverrideCursor = Qt::IgnoreAction;
    342 #endif
    343     pm_cursor = new QPixmap[n_cursor];
    344     pm_cursor[0] = QPixmap((const char **)move_xpm);
    345     pm_cursor[1] = QPixmap((const char **)copy_xpm);
    346     pm_cursor[2] = QPixmap((const char **)link_xpm);
    347 #if defined(Q_WS_WIN) || defined(Q_WS_PM)
    348     pm_cursor[3] = QPixmap((const char **)ignore_xpm);
    349139#endif
    350140    object = 0;
     
    374164#endif
    375165    instance = 0;
    376     delete [] pm_cursor;
    377166    delete dropData;
    378167}
     
    391180        return d->customCursors[action];
    392181    else if (action == Qt::MoveAction)
    393         return pm_cursor[0];
     182        return QApplicationPrivate::instance()->getPixmapCursor(Qt::DragMoveCursor);
    394183    else if (action == Qt::CopyAction)
    395         return pm_cursor[1];
     184        return QApplicationPrivate::instance()->getPixmapCursor(Qt::DragCopyCursor);
    396185    else if (action == Qt::LinkAction)
    397         return pm_cursor[2];
     186        return QApplicationPrivate::instance()->getPixmapCursor(Qt::DragLinkCursor);
    398187#ifdef Q_WS_WIN
    399188    else if (action == Qt::IgnoreAction)
    400         return pm_cursor[3];
     189        return QApplicationPrivate::instance()->getPixmapCursor(Qt::ForbiddenCursor);
    401190#endif
    402191    return QPixmap();
Note: See TracChangeset for help on using the changeset viewer.