gui component all-in-one build fixes

Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
This commit is contained in:
Ivailo Monev 2017-08-05 06:44:35 +00:00
parent 066814cc65
commit e80eacf1ac
29 changed files with 464 additions and 764 deletions

View file

@ -190,9 +190,6 @@ function(KATIE_SETUP_TARGET FORTARGET)
endif()
endforeach()
set(${FORTARGET}_SOURCES ${resourcesdep} ${filteredsources} PARENT_SCOPE)
elseif("${FORTARGET}" STREQUAL "KtGui")
katie_warning("All-in-one build not yet support for: ${FORTARGET}")
set(${FORTARGET}_SOURCES ${resourcesdep} ${ARGN} PARENT_SCOPE)
else()
# use temporary file, then configure_file() to avoid all-in-one target rebuilds when the
# project is reconfigured

View file

@ -155,7 +155,7 @@ class Q_CORE_EXPORT QVariant
LastType = 0xffffffff // need this so that gcc >= 3.4 allocates 32 bits for Type
};
inline QVariant();
inline QVariant() {}
~QVariant();
QVariant(Type type);
QVariant(int typeOrUserType, const void *copy);
@ -228,13 +228,15 @@ class Q_CORE_EXPORT QVariant
bool convert(Type t);
inline bool isValid() const;
inline bool isValid() const { return d.type != Invalid; }
bool isNull() const;
void clear();
void detach();
inline bool isDetached() const;
inline bool isDetached() const { return !d.is_shared || d.data.shared->ref == 1; }
int toInt(bool *ok = Q_NULLPTR) const;
uint toUInt(bool *ok = Q_NULLPTR) const;
@ -441,10 +443,6 @@ inline void qVariantSetValue<QVariant>(QVariant &v, const QVariant &t)
}
inline QVariant::QVariant() {}
inline bool QVariant::isValid() const { return d.type != Invalid; }
template<typename T>
inline void QVariant::setValue(const T &avalue)
{ qVariantSetValue(*this, avalue); }
@ -456,10 +454,6 @@ Q_CORE_EXPORT QDataStream& operator>> (QDataStream& s, QVariant::Type& p);
Q_CORE_EXPORT QDataStream& operator<< (QDataStream& s, const QVariant::Type p);
#endif
inline bool QVariant::isDetached() const
{ return !d.is_shared || d.data.shared->ref == 1; }
/* Helper class to add one more level of indirection to prevent
implicit casts.

View file

@ -515,6 +515,36 @@ else()
)
endif()
set(KtGui_SOURCES
${KtGui_SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/itemviews/qitemeditorfactory.cpp
${CMAKE_CURRENT_SOURCE_DIR}/widgets/qtextedit.cpp
${CMAKE_CURRENT_SOURCE_DIR}/text/qtextformat.cpp
)
if(WITH_X11 AND X11_FOUND)
set(KtGui_SOURCES
${KtGui_SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/kernel/qeventdispatcher_x11.cpp
${CMAKE_CURRENT_SOURCE_DIR}/painting/qpaintengine_x11.cpp
)
endif()
if(KATIE_PLATFORM MATCHES "(linux|freebsd|openbsd)")
set(KtGui_SOURCES
${KtGui_SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/dialogs/qprintdialog_unix.cpp
${CMAKE_CURRENT_SOURCE_DIR}/dialogs/qpagesetupdialog_unix.cpp
)
endif()
# to avoid mixing C++ and C source files when building as all-in-one
set(KtGui_SOURCES
${KtGui_SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/painting/qgrayraster.c
)
if(WITH_NSL AND NSL_FOUND)
include_directories(${NSL_INCLUDES})
set(EXTRA_GUI_LIBS

View file

@ -57,8 +57,6 @@ if(KATIE_PLATFORM MATCHES "(linux|freebsd|openbsd)")
)
set(GUI_SOURCES
${GUI_SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/dialogs/qprintdialog_unix.cpp
${CMAKE_CURRENT_SOURCE_DIR}/dialogs/qpagesetupdialog_unix.cpp
${CMAKE_CURRENT_SOURCE_DIR}/dialogs/qprintsettingsoutput.ui
${CMAKE_CURRENT_SOURCE_DIR}/dialogs/qprintwidget.ui
${CMAKE_CURRENT_SOURCE_DIR}/dialogs/qprintpropertieswidget.ui

View file

@ -63,6 +63,7 @@
#include "qx11info_x11.h"
#include <qdrawhelper_p.h>
#include <qimage_p.h>
#include <qguicommon_p.h>
#include <stdlib.h>
@ -239,16 +240,6 @@ static int highest_bit(uint v)
return i;
}
// Returns position of lowest set bit in 'v' as an integer (0-31), or -1
static int lowest_bit(uint v)
{
int i;
ulong lb;
lb = 1;
for (i=0; ((v & lb) == 0) && i<32; i++, lb<<=1) {}
return i==32 ? -1 : i;
}
// Counts the number of bits set in 'v'
static uint n_bits(uint v)
{

View file

@ -62,7 +62,6 @@ set(GUI_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/itemviews/qproxymodel.cpp
${CMAKE_CURRENT_SOURCE_DIR}/itemviews/qabstractproxymodel.cpp
${CMAKE_CURRENT_SOURCE_DIR}/itemviews/qsortfilterproxymodel.cpp
${CMAKE_CURRENT_SOURCE_DIR}/itemviews/qitemeditorfactory.cpp
${CMAKE_CURRENT_SOURCE_DIR}/itemviews/qstandarditemmodel.cpp
${CMAKE_CURRENT_SOURCE_DIR}/itemviews/qstringlistmodel.cpp
${CMAKE_CURRENT_SOURCE_DIR}/itemviews/qtreewidgetitemiterator.cpp

View file

@ -100,7 +100,6 @@ if(WITH_X11 AND X11_FOUND)
${CMAKE_CURRENT_SOURCE_DIR}/kernel/qx11info_x11.cpp
${CMAKE_CURRENT_SOURCE_DIR}/kernel/qkeymapper_x11.cpp
${CMAKE_CURRENT_SOURCE_DIR}/kernel/qkde.cpp
${CMAKE_CURRENT_SOURCE_DIR}/kernel/qeventdispatcher_x11.cpp
)
if(WITH_GLIB2 AND GLIB2_FOUND)
set(GUI_HEADERS

View file

@ -77,6 +77,15 @@
#include "qguiplatformplugin_p.h"
#include "qkde_p.h"
#include "qthread_p.h"
#include "qeventdispatcher_x11_p.h"
#include <qpaintengine_x11_p.h>
#include <qkeymapper_p.h>
#include <qwidget_p.h>
#include <qbackingstore_p.h>
#if !defined(QT_NO_GLIB)
# include "qguieventdispatcher_glib_p.h"
#endif
#ifndef QT_GUI_DOUBLE_CLICK_RADIUS
#define QT_GUI_DOUBLE_CLICK_RADIUS 5
@ -85,36 +94,17 @@
//#define ALIEN_DEBUG
#if !defined(QT_NO_GLIB)
# include "qguieventdispatcher_glib_p.h"
#endif
#include "qeventdispatcher_x11_p.h"
#include <qpaintengine_x11_p.h>
#include <qkeymapper_p.h>
#ifndef QT_NO_XFIXES
#include <X11/extensions/Xfixes.h>
#endif // QT_NO_XFIXES
#include "qt_x11_p.h"
#include "qx11info_x11.h"
#define XK_MISCELLANY
#include <X11/keysymdef.h>
#if !defined(QT_NO_XINPUT)
#include <X11/extensions/XI.h>
#endif
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <locale.h>
#include "qwidget_p.h"
#include <qbackingstore_p.h>
#ifdef QT_RX71_MULTITOUCH
# include <qsocketnotifier.h>
# include <linux/input.h>
@ -319,7 +309,7 @@ static Window curWin = 0; // current window
extern void qt_desktopwidget_update_workarea();
// Function to change the window manager state (from qwidget_x11.cpp)
extern void qt_change_net_wm_state(const QWidget *w, bool set, Atom one, Atom two = 0);
extern void qt_change_net_wm_state(const QWidget *w, bool set, Atom one, Atom two);
// modifier masks for alt, meta, super, hyper, and mode_switch - detected when the application starts
// and/or keyboard layout changes
@ -2375,7 +2365,7 @@ void QApplication::alert(QWidget *widget, int msec)
for (int i = 0; i < windowsToMark.size(); ++i) {
QWidget *window = windowsToMark.at(i);
if (!window->isActiveWindow()) {
qt_change_net_wm_state(window, true, ATOM(_NET_WM_STATE_DEMANDS_ATTENTION));
qt_change_net_wm_state(window, true, ATOM(_NET_WM_STATE_DEMANDS_ATTENTION), 0);
if (msec != 0) {
QTimer *timer = new QTimer(qApp);
timer->setSingleShot(true);
@ -2398,7 +2388,7 @@ void QApplicationPrivate::_q_alertTimeOut()
while (it != alertTimerHash.end()) {
if (it.value() == timer) {
QWidget *window = it.key();
qt_change_net_wm_state(window, false, ATOM(_NET_WM_STATE_DEMANDS_ATTENTION));
qt_change_net_wm_state(window, false, ATOM(_NET_WM_STATE_DEMANDS_ATTENTION), 0);
alertTimerHash.erase(it);
timer->deleteLater();
break;

View file

@ -229,7 +229,7 @@ QKeyMapperPrivate::~QKeyMapperPrivate()
XFree(coreDesc.keysyms);
}
enum { MaxBits = sizeof(uint) * 8 };
enum { MaxKeyBits = sizeof(uint) * 8 };
static QString translateKeySym(KeySym keysym, uint xmodifiers,
int &code, Qt::KeyboardModifiers &modifiers,
QByteArray &chars, int &count);
@ -265,10 +265,10 @@ QList<int> QKeyMapperPrivate::possibleKeys(QKeyEvent *event)
baseCode = QChar(baseCode).toUpper().unicode();
result += (baseCode | baseModifiers);
int pos1Bits[MaxBits];
int pos1Bits[MaxKeyBits];
int num1Bits = 0;
for (int i = 0; i < MaxBits; ++i) {
for (int i = 0; i < MaxKeyBits; ++i) {
if (consumedModifiers & (1 << i))
pos1Bits[num1Bits++] = i;
}

View file

@ -58,10 +58,10 @@
#include "qmenu.h"
#include "qmenu_p.h"
#include "qbackingstore_p.h"
#include "qwidget_p.h"
#include "qwindowsurface_x11_p.h"
#include <qpixmap_x11_p.h>
#include <qpaintengine_x11_p.h>
#include "qpixmap_x11_p.h"
#include "qpaintengine_x11_p.h"
#include "qt_x11_p.h"
#include "qx11info_x11.h"
@ -69,8 +69,6 @@
//#define ALIEN_DEBUG
#include "qwidget_p.h"
#define XCOORD_MAX 16383
#define WRECT_MAX 8191

View file

@ -40,10 +40,11 @@
****************************************************************************/
#include "qmatrix4x4.h"
#include <QtCore/qmath.h>
#include <QtCore/qvariant.h>
#include <QtGui/qmatrix.h>
#include <QtGui/qtransform.h>
#include "qmath.h"
#include "qvariant.h"
#include "qmatrix.h"
#include "qtransform.h"
#include "qguicommon_p.h"
QT_BEGIN_NAMESPACE
@ -58,8 +59,6 @@ QT_BEGIN_NAMESPACE
\sa QVector3D, QGenericMatrix
*/
static const qreal inv_dist_to_plane = 1. / 1024.;
/*!
\fn QMatrix4x4::QMatrix4x4()

View file

@ -94,7 +94,6 @@ set(GUI_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/painting/qwindowsurface.cpp
${CMAKE_CURRENT_SOURCE_DIR}/painting/qpaintengine_raster.cpp
${CMAKE_CURRENT_SOURCE_DIR}/painting/qdrawhelper.cpp
${CMAKE_CURRENT_SOURCE_DIR}/painting/qgrayraster.c
${CMAKE_CURRENT_SOURCE_DIR}/painting/qbackingstore.cpp
${CMAKE_CURRENT_SOURCE_DIR}/painting/qgraphicssystem_raster.cpp
${CMAKE_CURRENT_SOURCE_DIR}/painting/qgraphicssystemfactory.cpp
@ -113,7 +112,6 @@ if(WITH_X11 AND X11_FOUND)
${GUI_SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/painting/qcolormap_x11.cpp
${CMAKE_CURRENT_SOURCE_DIR}/painting/qpaintdevice_x11.cpp
${CMAKE_CURRENT_SOURCE_DIR}/painting/qpaintengine_x11.cpp
${CMAKE_CURRENT_SOURCE_DIR}/painting/qwindowsurface_x11.cpp
)
endif()

View file

@ -45,9 +45,10 @@
#include "qdebug.h"
#include "qdesktopwidget.h"
#include "qvector.h"
#include "qx11info_x11.h"
#include <qt_x11_p.h>
#include "qt_x11_p.h"
#include "qguicommon_p.h"
#include <limits.h>
QT_BEGIN_NAMESPACE
@ -94,15 +95,6 @@ static uint right_align(uint v)
return v;
}
static int lowest_bit(uint v)
{
int i;
uint b = 1u;
for (i = 0; ((v & b) == 0u) && i < 32; ++i)
b <<= 1u;
return i == 32 ? -1 : i;
}
static int cube_root(int v)
{
if (v == 1)

View file

@ -45,7 +45,8 @@
#include "qregion.h"
#include "qpainterpath.h"
#include "qvariant.h"
#include <qmath.h>
#include "qmath.h"
#include "qguicommon_p.h"
#include <limits.h>
@ -882,8 +883,6 @@ QMatrix &QMatrix::shear(qreal sh, qreal sv)
return *this;
}
const qreal deg2rad = qreal(0.017453292519943295769); // pi/180
/*!
\fn QMatrix &QMatrix::rotate(qreal degrees)

View file

@ -62,6 +62,7 @@
#include "qmemrotate_p.h"
#include "qpaintengine_raster_p.h"
#include "qoutlinemapper_p.h"
#include "qguicommon_p.h"
#include <limits.h>
@ -82,10 +83,6 @@ void dumpClip(int width, int height, const QClipData *clip);
// 4 pixels.
#define int_dim(pos, dim) (int(pos+dim) - int(pos))
// use the same rounding as in qrasterizer.cpp (6 bit fixed point)
static const qreal aliasedCoordinateDelta = 0.5 - 0.015625;
/********************************************************************************
* Span functions
*/

View file

@ -67,18 +67,17 @@
#include "qpen.h"
#include "qcolor.h"
#include "qcolormap.h"
#include <qpaintengine_p.h>
#include "qstylehelper_p.h"
#include "qpaintengine_p.h"
#include "qpaintengine_x11_p.h"
#include <qt_x11_p.h>
#include <limits.h>
#include "qt_x11_p.h"
#include "qguicommon_p.h"
#ifndef QT_NO_XRENDER
#include <qtessellator_p.h>
#include "qtessellator_p.h"
#endif
#include <qstylehelper_p.h>
#include <limits.h>
QT_BEGIN_NAMESPACE
@ -87,41 +86,6 @@ extern const QX11Info *qt_x11Info(const QPaintDevice *pd);
extern QPixmap qt_pixmapForBrush(int brushStyle, bool invert); //in qbrush.cpp
extern QPixmap qt_toX11Pixmap(const QPixmap &pixmap);
// use the same rounding as in qrasterizer.cpp (6 bit fixed point)
static const qreal aliasedCoordinateDelta = 0.5 - 0.015625;
#undef X11 // defined in qt_x11_p.h
/*!
Returns the X11 specific pen GC for the painter \a p. Note that
QPainter::begin() must be called before this function returns a
valid GC.
*/
Q_GUI_EXPORT GC qt_x11_get_pen_gc(QPainter *p)
{
if (p && p->paintEngine()
&& p->paintEngine()->isActive()
&& p->paintEngine()->type() == QPaintEngine::X11) {
return static_cast<QX11PaintEngine *>(p->paintEngine())->d_func()->gc;
}
return 0;
}
/*!
Returns the X11 specific brush GC for the painter \a p. Note that
QPainter::begin() must be called before this function returns a
valid GC.
*/
Q_GUI_EXPORT GC qt_x11_get_brush_gc(QPainter *p)
{
if (p && p->paintEngine()
&& p->paintEngine()->isActive()
&& p->paintEngine()->type() == QPaintEngine::X11) {
return static_cast<QX11PaintEngine *>(p->paintEngine())->d_func()->gc_brush;
}
return 0;
}
#define X11 qt_x11Data
#ifndef QT_NO_XRENDER
static const int compositionModeToRenderOp[QPainter::CompositionMode_Xor + 1] = {
PictOpOver, //CompositionMode_SourceOver,

View file

@ -131,8 +131,6 @@ protected:
friend class QPixmap;
friend class QFontEngineBox;
friend Q_GUI_EXPORT GC qt_x11_get_pen_gc(QPainter *);
friend Q_GUI_EXPORT GC qt_x11_get_brush_gc(QPainter *);
private:
Q_DISABLE_COPY(QX11PaintEngine)

View file

@ -46,10 +46,10 @@
#include "qregion.h"
#include "qpainterpath.h"
#include "qvariant.h"
#include <qmath.h>
#include <qnumeric.h>
#include <qbezier_p.h>
#include "qmath.h"
#include "qnumeric.h"
#include "qbezier_p.h"
#include "qguicommon_p.h"
QT_BEGIN_NAMESPACE
@ -585,9 +585,6 @@ QTransform & QTransform::shear(qreal sh, qreal sv)
return *this;
}
const qreal deg2rad = qreal(0.017453292519943295769); // pi/180
const qreal inv_dist_to_plane = 1. / 1024.;
/*!
\fn QTransform &QTransform::rotate(qreal angle, Qt::Axis axis)

View file

@ -71,6 +71,189 @@ static inline QTabBar::Shape tabBarShapeFrom(QTabWidget::TabShape shape, QTabWid
}
#endif // QT_NO_TABWIDGET
// Returns position of lowest set bit in 'v' as an integer (0-31), or -1
static int lowest_bit(uint v)
{
int i;
ulong lb;
lb = 1;
for (i=0; ((v & lb) == 0) && i<32; i++, lb<<=1) {}
return i==32 ? -1 : i;
}
const qreal deg2rad = qreal(0.017453292519943295769); // pi/180
const qreal inv_dist_to_plane = 1. / 1024.;
#ifndef QT_NO_IMAGEFORMAT_XPM
// Message box icons, from page 210 of the Windows style guide.
// Hand-drawn to resemble Microsoft's icons, but in the Mac/Netscape palette.
// Thanks to TrueColor displays, it is slightly more efficient to have
// them duplicated.
/* XPM */
static const char * const qt_information_xpm[]={
"32 32 5 1",
". c None",
"c c #000000",
"* c #999999",
"a c #ffffff",
"b c #0000ff",
"...........********.............",
"........***aaaaaaaa***..........",
"......**aaaaaaaaaaaaaa**........",
".....*aaaaaaaaaaaaaaaaaa*.......",
"....*aaaaaaaabbbbaaaaaaaac......",
"...*aaaaaaaabbbbbbaaaaaaaac.....",
"..*aaaaaaaaabbbbbbaaaaaaaaac....",
".*aaaaaaaaaaabbbbaaaaaaaaaaac...",
".*aaaaaaaaaaaaaaaaaaaaaaaaaac*..",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaaac*.",
"*aaaaaaaaaabbbbbbbaaaaaaaaaaac*.",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
".*aaaaaaaaaaabbbbbaaaaaaaaaac***",
".*aaaaaaaaaaabbbbbaaaaaaaaaac***",
"..*aaaaaaaaaabbbbbaaaaaaaaac***.",
"...caaaaaaabbbbbbbbbaaaaaac****.",
"....caaaaaaaaaaaaaaaaaaaac****..",
".....caaaaaaaaaaaaaaaaaac****...",
"......ccaaaaaaaaaaaaaacc****....",
".......*cccaaaaaaaaccc*****.....",
"........***cccaaaac*******......",
"..........****caaac*****........",
".............*caaac**...........",
"...............caac**...........",
"................cac**...........",
".................cc**...........",
"..................***...........",
"...................**..........."};
/* XPM */
static const char* const qt_warning_xpm[]={
"32 32 4 1",
". c None",
"a c #ffff00",
"* c #000000",
"b c #999999",
".............***................",
"............*aaa*...............",
"...........*aaaaa*b.............",
"...........*aaaaa*bb............",
"..........*aaaaaaa*bb...........",
"..........*aaaaaaa*bb...........",
".........*aaaaaaaaa*bb..........",
".........*aaaaaaaaa*bb..........",
"........*aaaaaaaaaaa*bb.........",
"........*aaaa***aaaa*bb.........",
".......*aaaa*****aaaa*bb........",
".......*aaaa*****aaaa*bb........",
"......*aaaaa*****aaaaa*bb.......",
"......*aaaaa*****aaaaa*bb.......",
".....*aaaaaa*****aaaaaa*bb......",
".....*aaaaaa*****aaaaaa*bb......",
"....*aaaaaaaa***aaaaaaaa*bb.....",
"....*aaaaaaaa***aaaaaaaa*bb.....",
"...*aaaaaaaaa***aaaaaaaaa*bb....",
"...*aaaaaaaaaa*aaaaaaaaaa*bb....",
"..*aaaaaaaaaaa*aaaaaaaaaaa*bb...",
"..*aaaaaaaaaaaaaaaaaaaaaaa*bb...",
".*aaaaaaaaaaaa**aaaaaaaaaaa*bb..",
".*aaaaaaaaaaa****aaaaaaaaaa*bb..",
"*aaaaaaaaaaaa****aaaaaaaaaaa*bb.",
"*aaaaaaaaaaaaa**aaaaaaaaaaaa*bb.",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaa*bbb",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaa*bbb",
".*aaaaaaaaaaaaaaaaaaaaaaaaa*bbbb",
"..*************************bbbbb",
"....bbbbbbbbbbbbbbbbbbbbbbbbbbb.",
".....bbbbbbbbbbbbbbbbbbbbbbbbb.."};
/* XPM */
static const char* const qt_critical_xpm[]={
"32 32 4 1",
". c None",
"a c #999999",
"* c #ff0000",
"b c #ffffff",
"...........********.............",
".........************...........",
".......****************.........",
"......******************........",
".....********************a......",
"....**********************a.....",
"...************************a....",
"..*******b**********b*******a...",
"..******bbb********bbb******a...",
".******bbbbb******bbbbb******a..",
".*******bbbbb****bbbbb*******a..",
"*********bbbbb**bbbbb*********a.",
"**********bbbbbbbbbb**********a.",
"***********bbbbbbbb***********aa",
"************bbbbbb************aa",
"************bbbbbb************aa",
"***********bbbbbbbb***********aa",
"**********bbbbbbbbbb**********aa",
"*********bbbbb**bbbbb*********aa",
".*******bbbbb****bbbbb*******aa.",
".******bbbbb******bbbbb******aa.",
"..******bbb********bbb******aaa.",
"..*******b**********b*******aa..",
"...************************aaa..",
"....**********************aaa...",
"....a********************aaa....",
".....a******************aaa.....",
"......a****************aaa......",
".......aa************aaaa.......",
".........aa********aaaaa........",
"...........aaaaaaaaaaa..........",
".............aaaaaaa............"};
/* XPM */
static const char *const qt_question_xpm[] = {
"32 32 5 1",
". c None",
"c c #000000",
"* c #999999",
"a c #ffffff",
"b c #0000ff",
"...........********.............",
"........***aaaaaaaa***..........",
"......**aaaaaaaaaaaaaa**........",
".....*aaaaaaaaaaaaaaaaaa*.......",
"....*aaaaaaaaaaaaaaaaaaaac......",
"...*aaaaaaaabbbbbbaaaaaaaac.....",
"..*aaaaaaaabaaabbbbaaaaaaaac....",
".*aaaaaaaabbaaaabbbbaaaaaaaac...",
".*aaaaaaaabbbbaabbbbaaaaaaaac*..",
"*aaaaaaaaabbbbaabbbbaaaaaaaaac*.",
"*aaaaaaaaaabbaabbbbaaaaaaaaaac*.",
"*aaaaaaaaaaaaabbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaaabbbaaaaaaaaaaaac**",
"*aaaaaaaaaaaaabbaaaaaaaaaaaaac**",
"*aaaaaaaaaaaaabbaaaaaaaaaaaaac**",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaaac**",
".*aaaaaaaaaaaabbaaaaaaaaaaaac***",
".*aaaaaaaaaaabbbbaaaaaaaaaaac***",
"..*aaaaaaaaaabbbbaaaaaaaaaac***.",
"...caaaaaaaaaabbaaaaaaaaaac****.",
"....caaaaaaaaaaaaaaaaaaaac****..",
".....caaaaaaaaaaaaaaaaaac****...",
"......ccaaaaaaaaaaaaaacc****....",
".......*cccaaaaaaaaccc*****.....",
"........***cccaaaac*******......",
"..........****caaac*****........",
".............*caaac**...........",
"...............caac**...........",
"................cac**...........",
".................cc**...........",
"..................***...........",
"...................**...........",
};
#endif
// use the same rounding as in qrasterizer.cpp (6 bit fixed point)
static const qreal aliasedCoordinateDelta = 0.5 - 0.015625;
QT_END_NAMESPACE
#endif // QGUICOMMON_P_H

View file

@ -80,13 +80,13 @@ enum Direction {
};
// from windows style
static const int windowsItemFrame = 2; // menu item frame width
static const int windowsItemHMargin = 3; // menu item hor text margin
static const int windowsItemVMargin = 8; // menu item ver text margin
static const int windowsRightBorder = 15; // right border on windows
static const int cleanlooksWindowsItemFrame = 2; // menu item frame width
static const int cleanlooksWindowsItemHMargin = 3; // menu item hor text margin
static const int cleanlooksWindowsItemVMargin = 8; // menu item ver text margin
static const int cleanlooksWindowsRightBorder = 15; // right border on windows
/* XPM */
static const char * const dock_widget_close_xpm[] = {
static const char * const qt_cleanlooks_dock_widget_close_xpm[] = {
"11 13 7 1",
" c None",
". c #D5CFCB",
@ -133,7 +133,7 @@ static const char * const qt_cleanlooks_arrow_up_xpm[] = {
" x x ",
" "};
static const char * const dock_widget_restore_xpm[] = {
static const char * const qt_cleanlooks_dock_widget_restore_xpm[] = {
"11 13 7 1",
" c None",
". c #D5CFCB",
@ -156,7 +156,7 @@ static const char * const dock_widget_restore_xpm[] = {
" +@@@@@@@+ ",
" "};
static const char * const workspace_minimize[] = {
static const char * const qt_cleanlooks_workspace_minimize[] = {
"11 13 7 1",
" c None",
". c #D5CFCB",
@ -180,7 +180,7 @@ static const char * const workspace_minimize[] = {
" "};
static const char * const qt_titlebar_context_help[] = {
static const char * const qt_cleanlooks_titlebar_context_help[] = {
"10 10 3 1",
" c None",
"# c #000000",
@ -257,7 +257,7 @@ static const char * const qt_cleanlooks_radiobutton_checked[] = {
" ",
" "};
static const char * const qt_scrollbar_button_arrow_up[] = {
static const char * const qt_cleanlooks_scrollbar_button_arrow_up[] = {
"7 4 2 1",
" c None",
"* c #BFBFBF",
@ -266,7 +266,7 @@ static const char * const qt_scrollbar_button_arrow_up[] = {
" ***** ",
"*******"};
static const char * const qt_scrollbar_button_arrow_down[] = {
static const char * const qt_cleanlooks_scrollbar_button_arrow_down[] = {
"7 4 2 1",
" c None",
"* c #BFBFBF",
@ -275,7 +275,7 @@ static const char * const qt_scrollbar_button_arrow_down[] = {
" *** ",
" * "};
static const char * const qt_spinbox_button_arrow_down[] = {
static const char * const qt_cleanlooks_spinbox_button_arrow_down[] = {
"7 4 2 1",
" c None",
"* c #BFBFBF",
@ -284,7 +284,7 @@ static const char * const qt_spinbox_button_arrow_down[] = {
" *** ",
" * "};
static const char * const qt_spinbox_button_arrow_up[] = {
static const char * const qt_cleanlooks_spinbox_button_arrow_up[] = {
"7 4 2 1",
" c None",
"* c #BFBFBF",
@ -293,7 +293,7 @@ static const char * const qt_spinbox_button_arrow_up[] = {
" ***** ",
"*******"};
static const char * const qt_scrollbar_button_left[] = {
static const char * const qt_cleanlooks_scrollbar_button_left[] = {
"16 16 6 1",
" c None",
". c #BFBFBF",
@ -318,7 +318,7 @@ static const char * const qt_scrollbar_button_left[] = {
".+<<<<<<<<<<<<<+",
" .++++++++++++++"};
static const char * const qt_scrollbar_button_right[] = {
static const char * const qt_cleanlooks_scrollbar_button_right[] = {
"16 16 6 1",
" c None",
". c #BFBFBF",
@ -343,7 +343,7 @@ static const char * const qt_scrollbar_button_right[] = {
"+<<<<<<<<<<<<<+.",
"++++++++++++++. "};
static const char * const qt_scrollbar_button_up[] = {
static const char * const qt_cleanlooks_scrollbar_button_up[] = {
"16 16 6 1",
" c None",
". c #BFBFBF",
@ -368,7 +368,7 @@ static const char * const qt_scrollbar_button_up[] = {
"+<<<<<<<<<<<<<<+",
"++++++++++++++++"};
static const char * const qt_scrollbar_button_down[] = {
static const char * const qt_cleanlooks_scrollbar_button_down[] = {
"16 16 6 1",
" c None",
". c #BFBFBF",
@ -1988,10 +1988,10 @@ void QCleanlooksStyle::drawControl(ControlElement element, const QStyleOption *o
discol = menuitem->palette.text().color();
p->setPen(discol);
}
int xm = windowsItemFrame + checkcol + windowsItemHMargin;
int xm = cleanlooksWindowsItemFrame + checkcol + cleanlooksWindowsItemHMargin;
int xpos = menuitem->rect.x() + xm;
QRect textRect(xpos, y + windowsItemVMargin, w - xm - windowsRightBorder - tab + 1, h - 2 * windowsItemVMargin);
QRect textRect(xpos, y + cleanlooksWindowsItemVMargin, w - xm - cleanlooksWindowsRightBorder - tab + 1, h - 2 * cleanlooksWindowsItemVMargin);
QRect vTextRect = visualRect(opt->direction, menuitem->rect, textRect);
QString s = menuitem->text;
if (!s.isEmpty()) { // draw text
@ -2610,14 +2610,14 @@ void QCleanlooksStyle::drawComplexControl(ComplexControl control, const QStyleOp
}
} else if (spinBox->buttonSymbols == QAbstractSpinBox::UpDownArrows){
// arrows
QImage upArrow(qt_spinbox_button_arrow_up);
QImage upArrow(qt_cleanlooks_spinbox_button_arrow_up);
upArrow.setColor(1, spinBox->palette.foreground().color().rgba());
cachePainter.drawImage(upRect.center().x() - upArrow.width() / 2,
upRect.center().y() - upArrow.height() / 2,
upArrow);
QImage downArrow(qt_spinbox_button_arrow_down);
QImage downArrow(qt_cleanlooks_spinbox_button_arrow_down);
downArrow.setColor(1, spinBox->palette.foreground().color().rgba());
cachePainter.drawImage(downRect.center().x() - downArrow.width() / 2,
@ -2852,7 +2852,7 @@ void QCleanlooksStyle::drawComplexControl(ComplexControl control, const QStyleOp
qt_cleanlooks_draw_mdibutton(painter, titleBar, contextHelpButtonRect, hover, sunken);
QColor blend;
QImage image(qt_titlebar_context_help);
QImage image(qt_cleanlooks_titlebar_context_help);
QColor alpha = textColor;
alpha.setAlpha(128);
image.setColor(1, textColor.rgba());
@ -2868,7 +2868,7 @@ void QCleanlooksStyle::drawComplexControl(ComplexControl control, const QStyleOp
bool hover = (titleBar->activeSubControls & SC_TitleBarShadeButton) && (titleBar->state & State_MouseOver);
bool sunken = (titleBar->activeSubControls & SC_TitleBarShadeButton) && (titleBar->state & State_Sunken);
qt_cleanlooks_draw_mdibutton(painter, titleBar, shadeButtonRect, hover, sunken);
QImage image(qt_scrollbar_button_arrow_up);
QImage image(qt_cleanlooks_scrollbar_button_arrow_up);
image.setColor(1, textColor.rgba());
painter->drawImage(shadeButtonRect.adjusted(5, 7, -5, -7), image);
}
@ -2881,7 +2881,7 @@ void QCleanlooksStyle::drawComplexControl(ComplexControl control, const QStyleOp
bool hover = (titleBar->activeSubControls & SC_TitleBarUnshadeButton) && (titleBar->state & State_MouseOver);
bool sunken = (titleBar->activeSubControls & SC_TitleBarUnshadeButton) && (titleBar->state & State_Sunken);
qt_cleanlooks_draw_mdibutton(painter, titleBar, unshadeButtonRect, hover, sunken);
QImage image(qt_scrollbar_button_arrow_down);
QImage image(qt_cleanlooks_scrollbar_button_arrow_down);
image.setColor(1, textColor.rgba());
painter->drawImage(unshadeButtonRect.adjusted(5, 7, -5, -7), image);
}
@ -3077,9 +3077,9 @@ void QCleanlooksStyle::drawComplexControl(ComplexControl control, const QStyleOp
// Details
QImage subButton;
if (horizontal) {
subButton = QImage(reverse ? qt_scrollbar_button_right : qt_scrollbar_button_left);
subButton = QImage(reverse ? qt_cleanlooks_scrollbar_button_right : qt_cleanlooks_scrollbar_button_left);
} else {
subButton = QImage(qt_scrollbar_button_up);
subButton = QImage(qt_cleanlooks_scrollbar_button_up);
}
subButton.setColor(1, alphaCornerColor.rgba());
subButton.setColor(2, darkOutline.rgba());
@ -3128,9 +3128,9 @@ void QCleanlooksStyle::drawComplexControl(ComplexControl control, const QStyleOp
// Details
QImage addButton;
if (horizontal) {
addButton = QImage(reverse ? qt_scrollbar_button_left : qt_scrollbar_button_right);
addButton = QImage(reverse ? qt_cleanlooks_scrollbar_button_left : qt_cleanlooks_scrollbar_button_right);
} else {
addButton = QImage(qt_scrollbar_button_down);
addButton = QImage(qt_cleanlooks_scrollbar_button_down);
}
addButton.setColor(1, alphaCornerColor.rgba());
addButton.setColor(2, darkOutline.rgba());
@ -3284,9 +3284,9 @@ void QCleanlooksStyle::drawComplexControl(ComplexControl control, const QStyleOp
downArrowRect.center().y() - downArrow.height() / 2 + 1, downArrow);
} else {
// Draw the up/down arrow
QImage upArrow(qt_scrollbar_button_arrow_up);
QImage upArrow(qt_cleanlooks_scrollbar_button_arrow_up);
upArrow.setColor(1, comboBox->palette.foreground().color().rgba());
QImage downArrow(qt_scrollbar_button_arrow_down);
QImage downArrow(qt_cleanlooks_scrollbar_button_arrow_down);
downArrow.setColor(1, comboBox->palette.foreground().color().rgba());
cachePainter.drawImage(downArrowRect.center().x() - downArrow.width() / 2,
downArrowRect.center().y() - upArrow.height() - 1 , upArrow);
@ -4363,12 +4363,12 @@ QPixmap QCleanlooksStyle::standardPixmap(StandardPixmap standardPixmap, const QS
#ifndef QT_NO_IMAGEFORMAT_XPM
switch (standardPixmap) {
case SP_TitleBarNormalButton:
return QPixmap((const char **)dock_widget_restore_xpm);
return QPixmap((const char **)qt_cleanlooks_dock_widget_restore_xpm);
case SP_TitleBarMinButton:
return QPixmap((const char **)workspace_minimize);
return QPixmap((const char **)qt_cleanlooks_workspace_minimize);
case SP_TitleBarCloseButton:
case SP_DockWidgetCloseButton:
return QPixmap((const char **)dock_widget_close_xpm);
return QPixmap((const char **)qt_cleanlooks_dock_widget_close_xpm);
default:
break;

View file

@ -68,14 +68,16 @@
#include "qmotifstyle_p.h"
#include "qdialogbuttonbox.h"
#include "qformlayout.h"
#include <limits.h>
#include <QtGui/qgraphicsproxywidget.h>
#include <QtGui/qgraphicsview.h>
#include "qgraphicsproxywidget.h"
#include "qgraphicsview.h"
#include "qguicommon_p.h"
#ifdef Q_WS_X11
#include "qx11info_x11.h"
#endif
#include <limits.h>
QT_BEGIN_NAMESPACE
// old constants that might still be useful...
@ -2017,7 +2019,7 @@ QMotifStyle::subElementRect(SubElement sr, const QStyleOption *opt, const QWidge
}
#ifndef QT_NO_IMAGEFORMAT_XPM
static const char * const qt_menu_xpm[] = {
static const char * const qt_motif_menu_xpm[] = {
"16 16 11 1",
" c #000000",
", c #336600",
@ -2048,7 +2050,7 @@ static const char * const qt_menu_xpm[] = {
"................"};
static const char * const qt_close_xpm[] = {
static const char * const qt_motif_close_xpm[] = {
"12 12 2 1",
" s None c None",
". c black",
@ -2065,7 +2067,7 @@ static const char * const qt_close_xpm[] = {
" ",
" "};
static const char * const qt_maximize_xpm[] = {
static const char * const qt_motif_maximize_xpm[] = {
"12 12 2 1",
" s None c None",
". c black",
@ -2082,7 +2084,7 @@ static const char * const qt_maximize_xpm[] = {
" ",
" "};
static const char * const qt_minimize_xpm[] = {
static const char * const qt_motif_minimize_xpm[] = {
"12 12 2 1",
" s None c None",
". c black",
@ -2100,7 +2102,7 @@ static const char * const qt_minimize_xpm[] = {
" "};
#if 0 // ### not used???
static const char * const qt_normalize_xpm[] = {
static const char * const qt_motif_normalize_xpm[] = {
"12 12 2 1",
" s None c None",
". c black",
@ -2118,7 +2120,7 @@ static const char * const qt_normalize_xpm[] = {
" "};
#endif
static const char * const qt_normalizeup_xpm[] = {
static const char * const qt_motif_normalizeup_xpm[] = {
"12 12 2 1",
" s None c None",
". c black",
@ -2135,7 +2137,7 @@ static const char * const qt_normalizeup_xpm[] = {
" ",
" "};
static const char * const qt_shade_xpm[] = {
static const char * const qt_motif_shade_xpm[] = {
"12 12 2 1", "# c #000000",
". c None",
"............",
@ -2152,7 +2154,7 @@ static const char * const qt_shade_xpm[] = {
"............"};
static const char * const qt_unshade_xpm[] = {
static const char * const qt_motif_unshade_xpm[] = {
"12 12 2 1",
"# c #000000",
". c None",
@ -2170,7 +2172,7 @@ static const char * const qt_unshade_xpm[] = {
"............"};
static const char * dock_window_close_xpm[] = {
static const char * qt_motif_dock_window_close_xpm[] = {
"8 8 2 1",
"# c #000000",
". c None",
@ -2182,171 +2184,6 @@ static const char * dock_window_close_xpm[] = {
".##..##.",
"##....##",
"........"};
// Message box icons, from page 210 of the Windows style guide.
// Hand-drawn to resemble Microsoft's icons, but in the Mac/Netscape palette.
// Thanks to TrueColor displays, it is slightly more efficient to have
// them duplicated.
/* XPM */
static const char * const information_xpm[]={
"32 32 5 1",
". c None",
"c c #000000",
"* c #999999",
"a c #ffffff",
"b c #0000ff",
"...........********.............",
"........***aaaaaaaa***..........",
"......**aaaaaaaaaaaaaa**........",
".....*aaaaaaaaaaaaaaaaaa*.......",
"....*aaaaaaaabbbbaaaaaaaac......",
"...*aaaaaaaabbbbbbaaaaaaaac.....",
"..*aaaaaaaaabbbbbbaaaaaaaaac....",
".*aaaaaaaaaaabbbbaaaaaaaaaaac...",
".*aaaaaaaaaaaaaaaaaaaaaaaaaac*..",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaaac*.",
"*aaaaaaaaaabbbbbbbaaaaaaaaaaac*.",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
".*aaaaaaaaaaabbbbbaaaaaaaaaac***",
".*aaaaaaaaaaabbbbbaaaaaaaaaac***",
"..*aaaaaaaaaabbbbbaaaaaaaaac***.",
"...caaaaaaabbbbbbbbbaaaaaac****.",
"....caaaaaaaaaaaaaaaaaaaac****..",
".....caaaaaaaaaaaaaaaaaac****...",
"......ccaaaaaaaaaaaaaacc****....",
".......*cccaaaaaaaaccc*****.....",
"........***cccaaaac*******......",
"..........****caaac*****........",
".............*caaac**...........",
"...............caac**...........",
"................cac**...........",
".................cc**...........",
"..................***...........",
"...................**..........."};
/* XPM */
static const char* const warning_xpm[]={
"32 32 4 1",
". c None",
"a c #ffff00",
"* c #000000",
"b c #999999",
".............***................",
"............*aaa*...............",
"...........*aaaaa*b.............",
"...........*aaaaa*bb............",
"..........*aaaaaaa*bb...........",
"..........*aaaaaaa*bb...........",
".........*aaaaaaaaa*bb..........",
".........*aaaaaaaaa*bb..........",
"........*aaaaaaaaaaa*bb.........",
"........*aaaa***aaaa*bb.........",
".......*aaaa*****aaaa*bb........",
".......*aaaa*****aaaa*bb........",
"......*aaaaa*****aaaaa*bb.......",
"......*aaaaa*****aaaaa*bb.......",
".....*aaaaaa*****aaaaaa*bb......",
".....*aaaaaa*****aaaaaa*bb......",
"....*aaaaaaaa***aaaaaaaa*bb.....",
"....*aaaaaaaa***aaaaaaaa*bb.....",
"...*aaaaaaaaa***aaaaaaaaa*bb....",
"...*aaaaaaaaaa*aaaaaaaaaa*bb....",
"..*aaaaaaaaaaa*aaaaaaaaaaa*bb...",
"..*aaaaaaaaaaaaaaaaaaaaaaa*bb...",
".*aaaaaaaaaaaa**aaaaaaaaaaa*bb..",
".*aaaaaaaaaaa****aaaaaaaaaa*bb..",
"*aaaaaaaaaaaa****aaaaaaaaaaa*bb.",
"*aaaaaaaaaaaaa**aaaaaaaaaaaa*bb.",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaa*bbb",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaa*bbb",
".*aaaaaaaaaaaaaaaaaaaaaaaaa*bbbb",
"..*************************bbbbb",
"....bbbbbbbbbbbbbbbbbbbbbbbbbbb.",
".....bbbbbbbbbbbbbbbbbbbbbbbbb.."};
/* XPM */
static const char* const critical_xpm[]={
"32 32 4 1",
". c None",
"a c #999999",
"* c #ff0000",
"b c #ffffff",
"...........********.............",
".........************...........",
".......****************.........",
"......******************........",
".....********************a......",
"....**********************a.....",
"...************************a....",
"..*******b**********b*******a...",
"..******bbb********bbb******a...",
".******bbbbb******bbbbb******a..",
".*******bbbbb****bbbbb*******a..",
"*********bbbbb**bbbbb*********a.",
"**********bbbbbbbbbb**********a.",
"***********bbbbbbbb***********aa",
"************bbbbbb************aa",
"************bbbbbb************aa",
"***********bbbbbbbb***********aa",
"**********bbbbbbbbbb**********aa",
"*********bbbbb**bbbbb*********aa",
".*******bbbbb****bbbbb*******aa.",
".******bbbbb******bbbbb******aa.",
"..******bbb********bbb******aaa.",
"..*******b**********b*******aa..",
"...************************aaa..",
"....**********************aaa...",
"....a********************aaa....",
".....a******************aaa.....",
"......a****************aaa......",
".......aa************aaaa.......",
".........aa********aaaaa........",
"...........aaaaaaaaaaa..........",
".............aaaaaaa............"};
/* XPM */
static const char *const question_xpm[] = {
"32 32 5 1",
". c None",
"c c #000000",
"* c #999999",
"a c #ffffff",
"b c #0000ff",
"...........********.............",
"........***aaaaaaaa***..........",
"......**aaaaaaaaaaaaaa**........",
".....*aaaaaaaaaaaaaaaaaa*.......",
"....*aaaaaaaaaaaaaaaaaaaac......",
"...*aaaaaaaabbbbbbaaaaaaaac.....",
"..*aaaaaaaabaaabbbbaaaaaaaac....",
".*aaaaaaaabbaaaabbbbaaaaaaaac...",
".*aaaaaaaabbbbaabbbbaaaaaaaac*..",
"*aaaaaaaaabbbbaabbbbaaaaaaaaac*.",
"*aaaaaaaaaabbaabbbbaaaaaaaaaac*.",
"*aaaaaaaaaaaaabbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaaabbbaaaaaaaaaaaac**",
"*aaaaaaaaaaaaabbaaaaaaaaaaaaac**",
"*aaaaaaaaaaaaabbaaaaaaaaaaaaac**",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaaac**",
".*aaaaaaaaaaaabbaaaaaaaaaaaac***",
".*aaaaaaaaaaabbbbaaaaaaaaaaac***",
"..*aaaaaaaaaabbbbaaaaaaaaaac***.",
"...caaaaaaaaaabbaaaaaaaaaac****.",
"....caaaaaaaaaaaaaaaaaaaac****..",
".....caaaaaaaaaaaaaaaaaac****...",
"......ccaaaaaaaaaaaaaacc****....",
".......*cccaaaaaaaaccc*****.....",
"........***cccaaaac*******......",
"..........****caaac*****........",
".............*caaac**...........",
"...............caac**...........",
"................cac**...........",
".................cc**...........",
"..................***...........",
"...................**...........",
};
#endif
/*!
@ -2359,21 +2196,21 @@ QMotifStyle::standardPixmap(StandardPixmap standardPixmap, const QStyleOption *o
#ifndef QT_NO_IMAGEFORMAT_XPM
switch (standardPixmap) {
case SP_TitleBarMenuButton:
return QPixmap(qt_menu_xpm);
return QPixmap(qt_motif_menu_xpm);
case SP_TitleBarShadeButton:
return QPixmap(qt_shade_xpm);
return QPixmap(qt_motif_shade_xpm);
case SP_TitleBarUnshadeButton:
return QPixmap(qt_unshade_xpm);
return QPixmap(qt_motif_unshade_xpm);
case SP_TitleBarNormalButton:
return QPixmap(qt_normalizeup_xpm);
return QPixmap(qt_motif_normalizeup_xpm);
case SP_TitleBarMinButton:
return QPixmap(qt_minimize_xpm);
return QPixmap(qt_motif_minimize_xpm);
case SP_TitleBarMaxButton:
return QPixmap(qt_maximize_xpm);
return QPixmap(qt_motif_maximize_xpm);
case SP_TitleBarCloseButton:
return QPixmap(qt_close_xpm);
return QPixmap(qt_motif_close_xpm);
case SP_DockWidgetCloseButton:
return QPixmap(dock_window_close_xpm);
return QPixmap(qt_motif_dock_window_close_xpm);
case SP_MessageBoxInformation:
case SP_MessageBoxWarning:
@ -2383,16 +2220,16 @@ QMotifStyle::standardPixmap(StandardPixmap standardPixmap, const QStyleOption *o
const char * const * xpm_data;
switch (standardPixmap) {
case SP_MessageBoxInformation:
xpm_data = information_xpm;
xpm_data = qt_information_xpm;
break;
case SP_MessageBoxWarning:
xpm_data = warning_xpm;
xpm_data = qt_warning_xpm;
break;
case SP_MessageBoxCritical:
xpm_data = critical_xpm;
xpm_data = qt_critical_xpm;
break;
case SP_MessageBoxQuestion:
xpm_data = question_xpm;
xpm_data = qt_question_xpm;
break;
default:
xpm_data = 0;

View file

@ -92,10 +92,10 @@ static const int blueFrameWidth = 2; // with of line edit focus frame
QT_BEGIN_NAMESPACE
// from windows style
static const int windowsItemFrame = 2; // menu item frame width
static const int windowsItemHMargin = 3; // menu item hor text margin
static const int windowsItemVMargin = 2; // menu item ver text margin
static const int windowsRightBorder = 15; // right border on windows
static const int plastiqueWindowsItemFrame = 2; // menu item frame width
static const int plastiqueWindowsItemHMargin = 3; // menu item hor text margin
static const int plastiqueWindowsItemVMargin = 2; // menu item ver text margin
static const int plastiqueWindowsRightBorder = 15; // right border on windows
static const char * const qt_plastique_slider_verticalhandle[] = {
"15 11 6 1",
@ -185,7 +185,7 @@ static const char * const qt_plastique_slider_horizontalhandle_up[] = {
"$+ddddddd+$",
" $+++++++$ "};
static const char * const qt_scrollbar_button_arrow_left[] = {
static const char * const qt_plastique_scrollbar_button_arrow_left[] = {
"4 7 2 1",
" c None",
"* c #BFBFBF",
@ -197,7 +197,7 @@ static const char * const qt_scrollbar_button_arrow_left[] = {
" **",
" *"};
static const char * const qt_scrollbar_button_arrow_right[] = {
static const char * const qt_plastique_scrollbar_button_arrow_right[] = {
"4 7 2 1",
" c None",
"* c #BFBFBF",
@ -209,7 +209,7 @@ static const char * const qt_scrollbar_button_arrow_right[] = {
"** ",
"* "};
static const char * const qt_scrollbar_button_arrow_up[] = {
static const char * const qt_plastique_scrollbar_button_arrow_up[] = {
"7 4 2 1",
" c None",
"* c #BFBFBF",
@ -218,7 +218,7 @@ static const char * const qt_scrollbar_button_arrow_up[] = {
" ***** ",
"*******"};
static const char * const qt_scrollbar_button_arrow_down[] = {
static const char * const qt_plastique_scrollbar_button_arrow_down[] = {
"7 4 2 1",
" c None",
"* c #BFBFBF",
@ -227,7 +227,7 @@ static const char * const qt_scrollbar_button_arrow_down[] = {
" *** ",
" * "};
static const char * const qt_scrollbar_button_left[] = {
static const char * const qt_plastique_scrollbar_button_left[] = {
"16 16 6 1",
" c None",
". c #BFBFBF",
@ -252,7 +252,7 @@ static const char * const qt_scrollbar_button_left[] = {
".+<<<<<<<<<<<<<+",
" .+++++++++++++."};
static const char * const qt_scrollbar_button_right[] = {
static const char * const qt_plastique_scrollbar_button_right[] = {
"16 16 6 1",
" c None",
". c #BFBFBF",
@ -277,7 +277,7 @@ static const char * const qt_scrollbar_button_right[] = {
"+<<<<<<<<<<<<<+.",
".+++++++++++++. "};
static const char * const qt_scrollbar_button_up[] = {
static const char * const qt_plastique_scrollbar_button_up[] = {
"16 16 6 1",
" c None",
". c #BFBFBF",
@ -302,7 +302,7 @@ static const char * const qt_scrollbar_button_up[] = {
"+<<<<<<<<<<<<<<+",
".++++++++++++++."};
static const char * const qt_scrollbar_button_down[] = {
static const char * const qt_plastique_scrollbar_button_down[] = {
"16 16 6 1",
" c None",
". c #BFBFBF",
@ -327,7 +327,7 @@ static const char * const qt_scrollbar_button_down[] = {
".+<<<<<<<<<<<<+.",
" .++++++++++++. "};
static const char * const qt_scrollbar_slider_pattern_vertical[] = {
static const char * const qt_plastique_scrollbar_slider_pattern_vertical[] = {
"10 18 3 1",
" c None",
". c #BFBFBF",
@ -351,7 +351,7 @@ static const char * const qt_scrollbar_slider_pattern_vertical[] = {
".. .. ..",
".+ .+ .+"};
static const char * const qt_scrollbar_slider_pattern_horizontal[] = {
static const char * const qt_plastique_scrollbar_slider_pattern_horizontal[] = {
"18 10 3 1",
" c None",
". c #BFBFBF",
@ -367,7 +367,7 @@ static const char * const qt_scrollbar_slider_pattern_horizontal[] = {
".. .. .. .. ..",
".+ .+ .+ .+ .+"};
static const char * const qt_toolbarhandle[] = {
static const char * const qt_plastique_toolbarhandle[] = {
"6 6 4 1",
" c None",
". c #C5C5C5",
@ -380,7 +380,7 @@ static const char * const qt_toolbarhandle[] = {
" .+@",
" @@"};
static const char * const qt_simple_toolbarhandle[] = {
static const char * const qt_plastique_simple_toolbarhandle[] = {
"3 3 4 1",
" c None",
". c #C5C5C5",
@ -390,7 +390,7 @@ static const char * const qt_simple_toolbarhandle[] = {
".+@",
" @@"};
static const char * const qt_titlebar_context_help[] = {
static const char * const qt_plastique_titlebar_context_help[] = {
"27 27 5 1",
" c None",
". c #0A0C12",
@ -946,7 +946,7 @@ static void qt_plastique_draw_handle(QPainter *painter, const QStyleOption *opti
} else {
alphaCornerColor = mergedColors(option->palette.background().color(), borderColor);
}
QImage handle(qt_simple_toolbarhandle);
QImage handle(qt_plastique_simple_toolbarhandle);
alphaCornerColor.setAlpha(170);
handle.setColor(1, alphaCornerColor.rgba());
handle.setColor(2, mergedColors(alphaCornerColor, option->palette.light().color()).rgba());
@ -1449,7 +1449,7 @@ void QPlastiqueStyle::drawPrimitive(PrimitiveElement element, const QStyleOption
else
cachePainter.fillRect(cacheRect, option->palette.background());
QImage handle(qt_toolbarhandle);
QImage handle(qt_plastique_toolbarhandle);
alphaCornerColor.setAlpha(170);
handle.setColor(1, alphaCornerColor.rgba());
handle.setColor(2, mergedColors(alphaCornerColor, option->palette.light().color()).rgba());
@ -2910,9 +2910,9 @@ void QPlastiqueStyle::drawControl(ControlElement element, const QStyleOption *op
discol = textBrush.color();
p->setPen(discol);
}
int xm = windowsItemFrame + checkcol + windowsItemHMargin;
int xm = plastiqueWindowsItemFrame + checkcol + plastiqueWindowsItemHMargin;
int xpos = menuitem->rect.x() + xm;
QRect textRect(xpos, y + windowsItemVMargin, w - xm - windowsRightBorder - tab + 1, h - 2 * windowsItemVMargin);
QRect textRect(xpos, y + plastiqueWindowsItemVMargin, w - xm - plastiqueWindowsRightBorder - tab + 1, h - 2 * plastiqueWindowsItemVMargin);
QRect vTextRect = visualRect(opt->direction, menuitem->rect, textRect);
QString s = menuitem->text;
if (!s.isEmpty()) { // draw text
@ -3160,7 +3160,7 @@ void QPlastiqueStyle::drawControl(ControlElement element, const QStyleOption *op
QString title = elliditide(dockWidget->title, dockWidget->fontMetrics, titleRect, &textWidth);
// Draw the toolbar handle pattern to the left and right of the text
QImage handle(qt_toolbarhandle);
QImage handle(qt_plastique_toolbarhandle);
alphaCornerColor.setAlpha(170);
handle.setColor(1, alphaCornerColor.rgba());
handle.setColor(2, mergedColors(alphaCornerColor, option->palette.light().color()).rgba());
@ -3359,9 +3359,9 @@ void QPlastiqueStyle::drawControl(ControlElement element, const QStyleOption *op
// Details
QImage addButton;
if (horizontal) {
addButton = QImage(reverse ? qt_scrollbar_button_left : qt_scrollbar_button_right);
addButton = QImage(reverse ? qt_plastique_scrollbar_button_left : qt_plastique_scrollbar_button_right);
} else {
addButton = QImage(qt_scrollbar_button_down);
addButton = QImage(qt_plastique_scrollbar_button_down);
}
addButton.setColor(1, alphaCornerColor.rgba());
addButton.setColor(2, borderColor.rgba());
@ -3377,14 +3377,14 @@ void QPlastiqueStyle::drawControl(ControlElement element, const QStyleOption *op
// Arrow
if (horizontal) {
QImage arrow(reverse ? qt_scrollbar_button_arrow_left : qt_scrollbar_button_arrow_right);
QImage arrow(reverse ? qt_plastique_scrollbar_button_arrow_left : qt_plastique_scrollbar_button_arrow_right);
arrow.setColor(1, scrollBar->palette.foreground().color().rgba());
if ((scrollBar->activeSubControls & SC_ScrollBarAddLine) && sunken)
addLinePainter.translate(1, 1);
addLinePainter.drawImage(QPoint(pixmapRect.center().x() - 2, pixmapRect.center().y() - 3), arrow);
} else {
QImage arrow(qt_scrollbar_button_arrow_down);
QImage arrow(qt_plastique_scrollbar_button_arrow_down);
arrow.setColor(1, scrollBar->palette.foreground().color().rgba());
if ((scrollBar->activeSubControls & SC_ScrollBarAddLine) && sunken)
@ -3491,9 +3491,9 @@ void QPlastiqueStyle::drawControl(ControlElement element, const QStyleOption *op
// Details
QImage subButton;
if (horizontal) {
subButton = QImage(reverse ? qt_scrollbar_button_right : qt_scrollbar_button_left);
subButton = QImage(reverse ? qt_plastique_scrollbar_button_right : qt_plastique_scrollbar_button_left);
} else {
subButton = QImage(qt_scrollbar_button_up);
subButton = QImage(qt_plastique_scrollbar_button_up);
}
subButton.setColor(1, alphaCornerColor.rgba());
subButton.setColor(2, borderColor.rgba());
@ -3509,14 +3509,14 @@ void QPlastiqueStyle::drawControl(ControlElement element, const QStyleOption *op
// Arrows
if (horizontal) {
QImage arrow(reverse ? qt_scrollbar_button_arrow_right : qt_scrollbar_button_arrow_left);
QImage arrow(reverse ? qt_plastique_scrollbar_button_arrow_right : qt_plastique_scrollbar_button_arrow_left);
arrow.setColor(1, scrollBar->palette.foreground().color().rgba());
if ((scrollBar->activeSubControls & SC_ScrollBarSubLine) && sunken)
subLinePainter.translate(1, 1);
subLinePainter.drawImage(QPoint(pixmapRect.center().x() - 2, pixmapRect.center().y() - 3), arrow);
} else {
QImage arrow(qt_scrollbar_button_arrow_up);
QImage arrow(qt_plastique_scrollbar_button_arrow_up);
arrow.setColor(1, scrollBar->palette.foreground().color().rgba());
if ((scrollBar->activeSubControls & SC_ScrollBarSubLine) && sunken)
@ -3596,8 +3596,8 @@ void QPlastiqueStyle::drawControl(ControlElement element, const QStyleOption *op
int sliderMinLength = proxy()->pixelMetric(PM_ScrollBarSliderMin, scrollBar, widget);
if ((horizontal && scrollBar->rect.width() > sliderMinLength)
|| (!horizontal && scrollBar->rect.height() > sliderMinLength)) {
QImage pattern(horizontal ? qt_scrollbar_slider_pattern_horizontal
: qt_scrollbar_slider_pattern_vertical);
QImage pattern(horizontal ? qt_plastique_scrollbar_slider_pattern_horizontal
: qt_plastique_scrollbar_slider_pattern_vertical);
pattern.setColor(1, alphaCornerColor.rgba());
pattern.setColor(2, (sunken ? gradientStartColor.lighter(110) : gradientStartColor.lighter(105)).rgba());
@ -4747,7 +4747,7 @@ void QPlastiqueStyle::drawComplexControl(ComplexControl control, const QStyleOpt
blend = mergedColors(QColor(hover ? 0x9e9e9e : 0x818181),
QColor(hover ? 0xababab : 0x929292));
}
QImage image(qt_titlebar_context_help);
QImage image(qt_plastique_titlebar_context_help);
image.setColor(4, textColor.rgba());
image.setColor(3, mergedColors(blend, textColor, 30).rgba());
image.setColor(2, mergedColors(blend, textColor, 70).rgba());

View file

@ -60,7 +60,7 @@
QT_BEGIN_NAMESPACE
static const int MaxBits = 8 * sizeof(QSizePolicy::ControlType);
static const int MaxStyleBits = 8 * sizeof(QSizePolicy::ControlType);
static int unpackControlTypes(QSizePolicy::ControlTypes controls, QSizePolicy::ControlType *array)
{
@ -74,7 +74,7 @@ static int unpackControlTypes(QSizePolicy::ControlTypes controls, QSizePolicy::C
}
int count = 0;
for (int i = 0; i < MaxBits; ++i) {
for (int i = 0; i < MaxStyleBits; ++i) {
if (uint bit = (controls & (0x1 << i)))
array[count++] = QSizePolicy::ControlType(bit);
}
@ -2243,8 +2243,8 @@ int QStyle::combinedLayoutSpacing(QSizePolicy::ControlTypes controls1,
QSizePolicy::ControlTypes controls2, Qt::Orientation orientation,
QStyleOption *option, QWidget *widget) const
{
QSizePolicy::ControlType array1[MaxBits];
QSizePolicy::ControlType array2[MaxBits];
QSizePolicy::ControlType array1[MaxStyleBits];
QSizePolicy::ControlType array2[MaxStyleBits];
int count1 = unpackControlTypes(controls1, array1);
int count2 = unpackControlTypes(controls2, array2);
int result = -1;

View file

@ -126,7 +126,7 @@ class QStyleSheetStyleRecursionGuard
if (globalStyleSheetStyle != 0 && globalStyleSheetStyle != this) { RETURN; } \
QStyleSheetStyleRecursionGuard recursion_guard(this);
#define ceil(x) ((int)(x) + ((x) > 0 && (x) != (int)(x)))
#define ceilInt(x) ((int)(x) + ((x) > 0 && (x) != (int)(x)))
enum PseudoElement {
PseudoElement_None,
@ -3842,7 +3842,7 @@ void QStyleSheetStyle::drawControl(ControlElement ce, const QStyleOption *opt, Q
} else {
int x = reverse ? r.left() + r.width() - chunkWidth : r.x();
for (int i = 0; i < ceil(qreal(fillWidth)/chunkWidth); ++i) {
for (int i = 0; i < ceilInt(qreal(fillWidth)/chunkWidth); ++i) {
r.setRect(x, rect.y(), chunkWidth, rect.height());
r = m.mapRect(QRectF(r)).toRect();
subRule.drawRule(p, r);

View file

@ -65,51 +65,20 @@
#include "qpixmapcache.h"
#include "qwizard.h"
#include "qlistview.h"
#include <qmath_p.h>
#include <qmath.h>
#include "qmath_p.h"
#include "qmath.h"
#include "qguicommon_p.h"
#ifdef Q_WS_X11
#include "qfileinfo.h"
#include "qdir.h"
#include <qt_x11_p.h>
#include "qt_x11_p.h"
#endif
#include <qstylehelper_p.h>
#include "qstylehelper_p.h"
QT_BEGIN_NAMESPACE
#if defined(Q_WS_WIN)
QT_BEGIN_INCLUDE_NAMESPACE
#include "qt_windows.h"
QT_END_INCLUDE_NAMESPACE
# ifndef COLOR_GRADIENTACTIVECAPTION
# define COLOR_GRADIENTACTIVECAPTION 27
# endif
# ifndef COLOR_GRADIENTINACTIVECAPTION
# define COLOR_GRADIENTINACTIVECAPTION 28
# endif
typedef struct
{
DWORD cbSize;
HICON hIcon;
int iSysImageIndex;
int iIcon;
WCHAR szPath[MAX_PATH];
} QSHSTOCKICONINFO;
#define _SHGFI_SMALLICON 0x000000001
#define _SHGFI_LARGEICON 0x000000000
#define _SHGFI_ICON 0x000000100
#define _SIID_SHIELD 77
typedef HRESULT (WINAPI *PtrSHGetStockIconInfo)(int siid, int uFlags, QSHSTOCKICONINFO *psii);
static PtrSHGetStockIconInfo pSHGetStockIconInfo = 0;
#endif //Q_WS_WIN
QT_BEGIN_INCLUDE_NAMESPACE
#include <limits.h>
QT_END_INCLUDE_NAMESPACE
@ -284,13 +253,6 @@ QWindowsStyle::~QWindowsStyle()
{
}
#ifdef Q_WS_WIN
static inline QRgb colorref2qrgb(COLORREF col)
{
return qRgb(GetRValue(col), GetGValue(col), GetBValue(col));
}
#endif
/*! \reimp */
void QWindowsStyle::polish(QApplication *app)
{
@ -305,21 +267,6 @@ void QWindowsStyle::polish(QApplication *app)
d->inactiveCaptionColor = app->palette().dark().color();
d->inactiveGradientCaptionColor = app->palette().dark().color();
d->inactiveCaptionText = app->palette().background().color();
#if defined(Q_WS_WIN) //fetch native title bar colors
if(app->desktopSettingsAware()){
DWORD activeCaption = GetSysColor(COLOR_ACTIVECAPTION);
DWORD gradientActiveCaption = GetSysColor(COLOR_GRADIENTACTIVECAPTION);
DWORD inactiveCaption = GetSysColor(COLOR_INACTIVECAPTION);
DWORD gradientInactiveCaption = GetSysColor(COLOR_GRADIENTINACTIVECAPTION);
DWORD inactiveCaptionText = GetSysColor(COLOR_INACTIVECAPTIONTEXT);
d->activeCaptionColor = colorref2qrgb(activeCaption);
d->activeGradientCaptionColor = colorref2qrgb(gradientActiveCaption);
d->inactiveCaptionColor = colorref2qrgb(inactiveCaption);
d->inactiveGradientCaptionColor = colorref2qrgb(gradientInactiveCaption);
d->inactiveCaptionText = colorref2qrgb(inactiveCaptionText);
}
#endif
}
/*! \reimp */
@ -384,16 +331,7 @@ int QWindowsStyle::pixelMetric(PixelMetric pm, const QStyleOption *opt, const QW
break;
#endif
case PM_MaximumDragDistance:
#if defined(Q_WS_WIN)
{
HDC hdcScreen = GetDC(0);
int dpi = GetDeviceCaps(hdcScreen, LOGPIXELSX);
ReleaseDC(0, hdcScreen);
ret = (int)(dpi * 1.375);
}
#else
ret = 60;
#endif
break;
#ifndef QT_NO_SLIDER
@ -492,7 +430,7 @@ int QWindowsStyle::pixelMetric(PixelMetric pm, const QStyleOption *opt, const QW
#ifndef QT_NO_IMAGEFORMAT_XPM
/* XPM */
static const char * const qt_menu_xpm[] = {
static const char * const qt_windows_menu_xpm[] = {
"16 16 72 1",
" c None",
". c #65AF36",
@ -583,7 +521,7 @@ static const char * const qt_menu_xpm[] = {
"++++++FG+++++++.",
"++++++++++++++. "};
static const char * const qt_close_xpm[] = {
static const char * const qt_windows_close_xpm[] = {
"10 10 2 1",
"# c #000000",
". c None",
@ -598,7 +536,7 @@ static const char * const qt_close_xpm[] = {
"..........",
".........."};
static const char * const qt_maximize_xpm[]={
static const char * const qt_windows_maximize_xpm[]={
"10 10 2 1",
"# c #000000",
". c None",
@ -613,7 +551,7 @@ static const char * const qt_maximize_xpm[]={
"#########.",
".........."};
static const char * const qt_minimize_xpm[] = {
static const char * const qt_windows_minimize_xpm[] = {
"10 10 2 1",
"# c #000000",
". c None",
@ -628,7 +566,7 @@ static const char * const qt_minimize_xpm[] = {
".#######..",
".........."};
static const char * const qt_normalizeup_xpm[] = {
static const char * const qt_windows_normalizeup_xpm[] = {
"10 10 2 1",
"# c #000000",
". c None",
@ -643,7 +581,7 @@ static const char * const qt_normalizeup_xpm[] = {
".######...",
".........."};
static const char * const qt_help_xpm[] = {
static const char * const qt_windows_help_xpm[] = {
"10 10 2 1",
". c None",
"# c #000000",
@ -658,7 +596,7 @@ static const char * const qt_help_xpm[] = {
"....##....",
".........."};
static const char * const qt_shade_xpm[] = {
static const char * const qt_windows_shade_xpm[] = {
"10 10 2 1",
"# c #000000",
". c None",
@ -673,7 +611,7 @@ static const char * const qt_shade_xpm[] = {
"..........",
".........."};
static const char * const qt_unshade_xpm[] = {
static const char * const qt_windows_unshade_xpm[] = {
"10 10 2 1",
"# c #000000",
". c None",
@ -688,7 +626,7 @@ static const char * const qt_unshade_xpm[] = {
"..........",
".........."};
static const char * dock_widget_close_xpm[] = {
static const char * qt_windows_dock_widget_close_xpm[] = {
"8 8 2 1",
"# c #000000",
". c None",
@ -700,166 +638,6 @@ static const char * dock_widget_close_xpm[] = {
".##..##.",
"........",
"........"};
/* XPM */
static const char * const information_xpm[]={
"32 32 5 1",
". c None",
"c c #000000",
"* c #999999",
"a c #ffffff",
"b c #0000ff",
"...........********.............",
"........***aaaaaaaa***..........",
"......**aaaaaaaaaaaaaa**........",
".....*aaaaaaaaaaaaaaaaaa*.......",
"....*aaaaaaaabbbbaaaaaaaac......",
"...*aaaaaaaabbbbbbaaaaaaaac.....",
"..*aaaaaaaaabbbbbbaaaaaaaaac....",
".*aaaaaaaaaaabbbbaaaaaaaaaaac...",
".*aaaaaaaaaaaaaaaaaaaaaaaaaac*..",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaaac*.",
"*aaaaaaaaaabbbbbbbaaaaaaaaaaac*.",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaabbbbbaaaaaaaaaaac**",
".*aaaaaaaaaaabbbbbaaaaaaaaaac***",
".*aaaaaaaaaaabbbbbaaaaaaaaaac***",
"..*aaaaaaaaaabbbbbaaaaaaaaac***.",
"...caaaaaaabbbbbbbbbaaaaaac****.",
"....caaaaaaaaaaaaaaaaaaaac****..",
".....caaaaaaaaaaaaaaaaaac****...",
"......ccaaaaaaaaaaaaaacc****....",
".......*cccaaaaaaaaccc*****.....",
"........***cccaaaac*******......",
"..........****caaac*****........",
".............*caaac**...........",
"...............caac**...........",
"................cac**...........",
".................cc**...........",
"..................***...........",
"...................**..........."};
/* XPM */
static const char* const warning_xpm[]={
"32 32 4 1",
". c None",
"a c #ffff00",
"* c #000000",
"b c #999999",
".............***................",
"............*aaa*...............",
"...........*aaaaa*b.............",
"...........*aaaaa*bb............",
"..........*aaaaaaa*bb...........",
"..........*aaaaaaa*bb...........",
".........*aaaaaaaaa*bb..........",
".........*aaaaaaaaa*bb..........",
"........*aaaaaaaaaaa*bb.........",
"........*aaaa***aaaa*bb.........",
".......*aaaa*****aaaa*bb........",
".......*aaaa*****aaaa*bb........",
"......*aaaaa*****aaaaa*bb.......",
"......*aaaaa*****aaaaa*bb.......",
".....*aaaaaa*****aaaaaa*bb......",
".....*aaaaaa*****aaaaaa*bb......",
"....*aaaaaaaa***aaaaaaaa*bb.....",
"....*aaaaaaaa***aaaaaaaa*bb.....",
"...*aaaaaaaaa***aaaaaaaaa*bb....",
"...*aaaaaaaaaa*aaaaaaaaaa*bb....",
"..*aaaaaaaaaaa*aaaaaaaaaaa*bb...",
"..*aaaaaaaaaaaaaaaaaaaaaaa*bb...",
".*aaaaaaaaaaaa**aaaaaaaaaaa*bb..",
".*aaaaaaaaaaa****aaaaaaaaaa*bb..",
"*aaaaaaaaaaaa****aaaaaaaaaaa*bb.",
"*aaaaaaaaaaaaa**aaaaaaaaaaaa*bb.",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaa*bbb",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaa*bbb",
".*aaaaaaaaaaaaaaaaaaaaaaaaa*bbbb",
"..*************************bbbbb",
"....bbbbbbbbbbbbbbbbbbbbbbbbbbb.",
".....bbbbbbbbbbbbbbbbbbbbbbbbb.."};
/* XPM */
static const char* const critical_xpm[]={
"32 32 4 1",
". c None",
"a c #999999",
"* c #ff0000",
"b c #ffffff",
"...........********.............",
".........************...........",
".......****************.........",
"......******************........",
".....********************a......",
"....**********************a.....",
"...************************a....",
"..*******b**********b*******a...",
"..******bbb********bbb******a...",
".******bbbbb******bbbbb******a..",
".*******bbbbb****bbbbb*******a..",
"*********bbbbb**bbbbb*********a.",
"**********bbbbbbbbbb**********a.",
"***********bbbbbbbb***********aa",
"************bbbbbb************aa",
"************bbbbbb************aa",
"***********bbbbbbbb***********aa",
"**********bbbbbbbbbb**********aa",
"*********bbbbb**bbbbb*********aa",
".*******bbbbb****bbbbb*******aa.",
".******bbbbb******bbbbb******aa.",
"..******bbb********bbb******aaa.",
"..*******b**********b*******aa..",
"...************************aaa..",
"....**********************aaa...",
"....a********************aaa....",
".....a******************aaa.....",
"......a****************aaa......",
".......aa************aaaa.......",
".........aa********aaaaa........",
"...........aaaaaaaaaaa..........",
".............aaaaaaa............"};
/* XPM */
static const char *const question_xpm[] = {
"32 32 5 1",
". c None",
"c c #000000",
"* c #999999",
"a c #ffffff",
"b c #0000ff",
"...........********.............",
"........***aaaaaaaa***..........",
"......**aaaaaaaaaaaaaa**........",
".....*aaaaaaaaaaaaaaaaaa*.......",
"....*aaaaaaaaaaaaaaaaaaaac......",
"...*aaaaaaaabbbbbbaaaaaaaac.....",
"..*aaaaaaaabaaabbbbaaaaaaaac....",
".*aaaaaaaabbaaaabbbbaaaaaaaac...",
".*aaaaaaaabbbbaabbbbaaaaaaaac*..",
"*aaaaaaaaabbbbaabbbbaaaaaaaaac*.",
"*aaaaaaaaaabbaabbbbaaaaaaaaaac*.",
"*aaaaaaaaaaaaabbbbaaaaaaaaaaac**",
"*aaaaaaaaaaaaabbbaaaaaaaaaaaac**",
"*aaaaaaaaaaaaabbaaaaaaaaaaaaac**",
"*aaaaaaaaaaaaabbaaaaaaaaaaaaac**",
"*aaaaaaaaaaaaaaaaaaaaaaaaaaaac**",
".*aaaaaaaaaaaabbaaaaaaaaaaaac***",
".*aaaaaaaaaaabbbbaaaaaaaaaaac***",
"..*aaaaaaaaaabbbbaaaaaaaaaac***.",
"...caaaaaaaaaabbaaaaaaaaaac****.",
"....caaaaaaaaaaaaaaaaaaaac****..",
".....caaaaaaaaaaaaaaaaaac****...",
"......ccaaaaaaaaaaaaaacc****....",
".......*cccaaaaaaaaccc*****.....",
"........***cccaaaac*******......",
"..........****caaac*****........",
".............*caaac**...........",
"...............caac**...........",
"................cac**...........",
".................cc**...........",
"..................***...........",
"...................**..........."};
#endif //QT_NO_IMAGEFORMAT_XPM
/*!
@ -871,31 +649,31 @@ QPixmap QWindowsStyle::standardPixmap(StandardPixmap standardpixmap, const QStyl
#ifndef QT_NO_IMAGEFORMAT_XPM
switch (standardpixmap) {
case SP_TitleBarMenuButton:
return QPixmap(qt_menu_xpm);
return QPixmap(qt_windows_menu_xpm);
case SP_TitleBarShadeButton:
return QPixmap(qt_shade_xpm);
return QPixmap(qt_windows_shade_xpm);
case SP_TitleBarUnshadeButton:
return QPixmap(qt_unshade_xpm);
return QPixmap(qt_windows_unshade_xpm);
case SP_TitleBarNormalButton:
return QPixmap(qt_normalizeup_xpm);
return QPixmap(qt_windows_normalizeup_xpm);
case SP_TitleBarMinButton:
return QPixmap(qt_minimize_xpm);
return QPixmap(qt_windows_minimize_xpm);
case SP_TitleBarMaxButton:
return QPixmap(qt_maximize_xpm);
return QPixmap(qt_windows_maximize_xpm);
case SP_TitleBarCloseButton:
return QPixmap(qt_close_xpm);
return QPixmap(qt_windows_close_xpm);
case SP_TitleBarContextHelpButton:
return QPixmap(qt_help_xpm);
return QPixmap(qt_windows_help_xpm);
case SP_DockWidgetCloseButton:
return QPixmap(dock_widget_close_xpm);
return QPixmap(qt_windows_dock_widget_close_xpm);
case SP_MessageBoxInformation:
return QPixmap(information_xpm);
return QPixmap(qt_information_xpm);
case SP_MessageBoxWarning:
return QPixmap(warning_xpm);
return QPixmap(qt_warning_xpm);
case SP_MessageBoxCritical:
return QPixmap(critical_xpm);
return QPixmap(qt_critical_xpm);
case SP_MessageBoxQuestion:
return QPixmap(question_xpm);
return QPixmap(qt_question_xpm);
default:
break;
}
@ -937,37 +715,6 @@ int QWindowsStyle::styleHint(StyleHint hint, const QStyleOption *opt, const QWid
ret = 0;
break;
#if defined(Q_WS_WIN)
case SH_UnderlineShortcut:
{
ret = 1;
BOOL cues = false;
SystemParametersInfo(SPI_GETKEYBOARDCUES, 0, &cues, 0);
ret = int(cues);
// Do nothing if we always paint underlines
Q_D(const QWindowsStyle);
if (!ret && widget && d) {
#ifndef QT_NO_MENUBAR
const QMenuBar *menuBar = qobject_cast<const QMenuBar *>(widget);
if (!menuBar && qobject_cast<const QMenu *>(widget)) {
QWidget *w = QApplication::activeWindow();
if (w && w != widget)
menuBar = w->findChild<QMenuBar *>();
}
// If we paint a menu bar draw underlines if is in the keyboardState
if (menuBar) {
if (menuBar->d_func()->keyboardState || d->altDown())
ret = 1;
// Otherwise draw underlines if the toplevel widget has seen an alt-press
} else
#endif // QT_NO_MENUBAR
if (d->hasSeenAlt(widget)) {
ret = 1;
}
}
break;
}
#endif
#ifndef QT_NO_RUBBERBAND
case SH_RubberBand_Mask:
if (const QStyleOptionRubberBand *rbOpt = qstyleoption_cast<const QStyleOptionRubberBand *>(opt)) {
@ -987,15 +734,6 @@ int QWindowsStyle::styleHint(StyleHint hint, const QStyleOption *opt, const QWid
#endif // QT_NO_RUBBERBAND
case SH_LineEdit_PasswordCharacter:
{
#ifdef Q_WS_WIN
if (widget && (QSysInfo::WindowsVersion >= QSysInfo::WV_XP && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))) {
const QFontMetrics &fm = widget->fontMetrics();
if (fm.inFont(QChar(0x25CF)))
ret = 0x25CF;
else if (fm.inFont(QChar(0x2022)))
ret = 0x2022;
}
#endif
if (!ret)
ret = '*';
}

View file

@ -56,7 +56,7 @@ QT_BEGIN_NAMESPACE
#include "qcssscanner.cpp"
using namespace QCss;
namespace QCss {
struct QCssKnownValue
{
@ -2052,19 +2052,6 @@ QString Scanner::preprocess(const QString &input, bool *hasEscapeSequences)
return output;
}
int QCssScanner_Generated::handleCommentStart()
{
while (pos < input.size() - 1) {
if (input.at(pos) == QLatin1Char('*')
&& input.at(pos + 1) == QLatin1Char('/')) {
pos += 2;
break;
}
++pos;
}
return S;
}
void Scanner::scan(const QString &preprocessedInput, QVector<Symbol> *symbols)
{
QCssScanner_Generated scanner(preprocessedInput);
@ -2764,6 +2751,21 @@ bool Parser::testTokenAndEndsWith(QCss::TokenType t, const QLatin1String &str)
return true;
}
} // namespace QCss
int QCssScanner_Generated::handleCommentStart()
{
while (pos < input.size() - 1) {
if (input.at(pos) == QLatin1Char('*')
&& input.at(pos + 1) == QLatin1Char('/')) {
pos += 2;
break;
}
++pos;
}
return QCss::TokenType::S;
}
QT_END_NAMESPACE
#endif // QT_NO_CSSPARSER

View file

@ -414,23 +414,25 @@ static const char * xlfd_for_id(int id)
return xlfd_encoding[id].name;
}
enum XLFDFieldNames {
Foundry,
Family,
Weight,
Slant,
Width,
AddStyle,
PixelSize,
PointSize,
ResolutionX,
ResolutionY,
Spacing,
AverageWidth,
CharsetRegistry,
CharsetEncoding,
NFontFields
};
namespace XLFDFieldNames {
enum Fields {
Foundry,
Family,
Weight,
Slant,
Width,
AddStyle,
PixelSize,
PointSize,
ResolutionX,
ResolutionY,
Spacing,
AverageWidth,
CharsetRegistry,
CharsetEncoding,
NFontFields
};
}
// Splits an X font name into fields separated by '-'
static bool parseXFontName(char *fontName, char **tokens)
@ -442,7 +444,7 @@ static bool parseXFontName(char *fontName, char **tokens)
int i;
++fontName;
for (i = 0; i < NFontFields && fontName && fontName[0]; ++i) {
for (i = 0; i < XLFDFieldNames::NFontFields && fontName && fontName[0]; ++i) {
tokens[i] = fontName;
for (;; ++fontName) {
if (*fontName == '-')
@ -456,8 +458,8 @@ static bool parseXFontName(char *fontName, char **tokens)
if (fontName) *fontName++ = '\0';
}
if (i < NFontFields) {
for (int j = i ; j < NFontFields; ++j)
if (i < XLFDFieldNames::NFontFields) {
for (int j = i ; j < XLFDFieldNames::NFontFields; ++j)
tokens[j] = 0;
return false;
}
@ -472,23 +474,23 @@ static inline bool isZero(char *x)
static inline bool isScalable(char **tokens)
{
return (isZero(tokens[PixelSize]) &&
isZero(tokens[PointSize]) &&
isZero(tokens[AverageWidth]));
return (isZero(tokens[XLFDFieldNames::PixelSize]) &&
isZero(tokens[XLFDFieldNames::PointSize]) &&
isZero(tokens[XLFDFieldNames::AverageWidth]));
}
static inline bool isSmoothlyScalable(char **tokens)
{
return (isZero(tokens[ResolutionX]) &&
isZero(tokens[ResolutionY]));
return (isZero(tokens[XLFDFieldNames::ResolutionX]) &&
isZero(tokens[XLFDFieldNames::ResolutionY]));
}
static inline bool isFixedPitch(char **tokens)
{
return (tokens[Spacing][0] == 'm' ||
tokens[Spacing][0] == 'c' ||
tokens[Spacing][0] == 'M' ||
tokens[Spacing][0] == 'C');
return (tokens[XLFDFieldNames::Spacing][0] == 'm' ||
tokens[XLFDFieldNames::Spacing][0] == 'c' ||
tokens[XLFDFieldNames::Spacing][0] == 'M' ||
tokens[XLFDFieldNames::Spacing][0] == 'C');
}
/*
@ -499,37 +501,37 @@ static inline bool isFixedPitch(char **tokens)
*/
bool qt_fillFontDef(const QByteArray &xlfd, QFontDef *fd, int dpi, QtFontDesc *desc)
{
char *tokens[NFontFields];
char *tokens[XLFDFieldNames::NFontFields];
QByteArray buffer = xlfd;
if (! parseXFontName(buffer.data(), tokens))
return false;
capitalize(tokens[Family]);
capitalize(tokens[Foundry]);
capitalize(tokens[XLFDFieldNames::Family]);
capitalize(tokens[XLFDFieldNames::Foundry]);
fd->styleStrategy |= QFont::NoAntialias;
fd->family = QString::fromLatin1(tokens[Family]);
QString foundry = QString::fromLatin1(tokens[Foundry]);
fd->family = QString::fromLatin1(tokens[XLFDFieldNames::Family]);
QString foundry = QString::fromLatin1(tokens[XLFDFieldNames::Foundry]);
if (! foundry.isEmpty() && foundry != QLatin1String("*") && (!desc || desc->family->count > 1))
fd->family +=
QLatin1String(" [") + foundry + QLatin1Char(']');
if (qstrlen(tokens[AddStyle]) > 0)
fd->addStyle = QString::fromLatin1(tokens[AddStyle]);
if (qstrlen(tokens[XLFDFieldNames::AddStyle]) > 0)
fd->addStyle = QString::fromLatin1(tokens[XLFDFieldNames::AddStyle]);
else
fd->addStyle.clear();
fd->pointSize = atoi(tokens[PointSize])/10.;
fd->pointSize = atoi(tokens[XLFDFieldNames::PointSize])/10.;
fd->styleHint = QFont::AnyStyle; // ### any until we match families
char slant = tolower((uchar) tokens[Slant][0]);
char slant = tolower((uchar) tokens[XLFDFieldNames::Slant][0]);
fd->style = (slant == 'o' ? QFont::StyleOblique : (slant == 'i' ? QFont::StyleItalic : QFont::StyleNormal));
char fixed = tolower((uchar) tokens[Spacing][0]);
char fixed = tolower((uchar) tokens[XLFDFieldNames::Spacing][0]);
fd->fixedPitch = (fixed == 'm' || fixed == 'c');
fd->weight = getFontWeight(QLatin1String(tokens[Weight]));
fd->weight = getFontWeight(QLatin1String(tokens[XLFDFieldNames::Weight]));
int r = atoi(tokens[ResolutionY]);
fd->pixelSize = atoi(tokens[PixelSize]);
int r = atoi(tokens[XLFDFieldNames::ResolutionY]);
fd->pixelSize = atoi(tokens[XLFDFieldNames::PixelSize]);
// not "0" or "*", or required DPI
if (r && fd->pixelSize && r != dpi) {
// calculate actual pointsize for display DPI
@ -567,11 +569,11 @@ static QtFontStyle::Key getStyle(char ** tokens)
{
QtFontStyle::Key key;
char slant0 = tolower((uchar) tokens[Slant][0]);
char slant0 = tolower((uchar) tokens[XLFDFieldNames::Slant][0]);
if (slant0 == 'r') {
if (tokens[Slant][1]) {
char slant1 = tolower((uchar) tokens[Slant][1]);
if (tokens[XLFDFieldNames::Slant][1]) {
char slant1 = tolower((uchar) tokens[XLFDFieldNames::Slant][1]);
if (slant1 == 'o')
key.style = QFont::StyleOblique;
@ -583,16 +585,16 @@ static QtFontStyle::Key getStyle(char ** tokens)
else if (slant0 == 'i')
key.style = QFont::StyleItalic;
key.weight = getFontWeight(QLatin1String(tokens[Weight]));
key.weight = getFontWeight(QLatin1String(tokens[XLFDFieldNames::Weight]));
if (qstrcmp(tokens[Width], "normal") == 0) {
if (qstrcmp(tokens[XLFDFieldNames::Width], "normal") == 0) {
key.stretch = 100;
} else if (qstrcmp(tokens[Width], "semi condensed") == 0 ||
qstrcmp(tokens[Width], "semicondensed") == 0) {
} else if (qstrcmp(tokens[XLFDFieldNames::Width], "semi condensed") == 0 ||
qstrcmp(tokens[XLFDFieldNames::Width], "semicondensed") == 0) {
key.stretch = 90;
} else if (qstrcmp(tokens[Width], "condensed") == 0) {
} else if (qstrcmp(tokens[XLFDFieldNames::Width], "condensed") == 0) {
key.stretch = 80;
} else if (qstrcmp(tokens[Width], "narrow") == 0) {
} else if (qstrcmp(tokens[XLFDFieldNames::Width], "narrow") == 0) {
key.stretch = 60;
}
@ -628,7 +630,7 @@ static void loadXlfds(const char *reqFamily, int encoding_id)
// qDebug("requesting xlfd='%s', got %d fonts", xlfd_pattern.data(), fontCount);
char *tokens[NFontFields];
char *tokens[XLFDFieldNames::NFontFields];
for(int i = 0 ; i < fontCount ; i++) {
if (! parseXFontName(fontList[i], tokens))
@ -637,14 +639,14 @@ static void loadXlfds(const char *reqFamily, int encoding_id)
// get the encoding_id for this xlfd. we need to do this
// here, since we can pass -1 to this function to do full
// database population
*(tokens[CharsetEncoding] - 1) = '-';
int encoding_id = qt_xlfd_encoding_id(tokens[CharsetRegistry]);
*(tokens[XLFDFieldNames::CharsetEncoding] - 1) = '-';
int encoding_id = qt_xlfd_encoding_id(tokens[XLFDFieldNames::CharsetRegistry]);
if (encoding_id == -1)
continue;
char *familyName = tokens[Family];
char *familyName = tokens[XLFDFieldNames::Family];
capitalize(familyName);
char *foundryName = tokens[Foundry];
char *foundryName = tokens[XLFDFieldNames::Foundry];
capitalize(foundryName);
QtFontStyle::Key styleKey = getStyle(tokens);
@ -656,11 +658,11 @@ static void loadXlfds(const char *reqFamily, int encoding_id)
else
bitmap_scalable = true;
}
uint pixelSize = atoi(tokens[PixelSize]);
uint xpointSize = atoi(tokens[PointSize]);
uint xres = atoi(tokens[ResolutionX]);
uint yres = atoi(tokens[ResolutionY]);
uint avgwidth = atoi(tokens[AverageWidth]);
uint pixelSize = atoi(tokens[XLFDFieldNames::PixelSize]);
uint xpointSize = atoi(tokens[XLFDFieldNames::PointSize]);
uint xres = atoi(tokens[XLFDFieldNames::ResolutionX]);
uint yres = atoi(tokens[XLFDFieldNames::ResolutionY]);
uint avgwidth = atoi(tokens[XLFDFieldNames::AverageWidth]);
bool fixedPitch = isFixedPitch(tokens);
if (avgwidth == 0 && pixelSize != 0) {
@ -682,9 +684,9 @@ static void loadXlfds(const char *reqFamily, int encoding_id)
QtFontStyle *style = foundry->style(styleKey, QString(), true);
delete [] style->weightName;
style->weightName = qstrdup(tokens[Weight]);
style->weightName = qstrdup(tokens[XLFDFieldNames::Weight]);
delete [] style->setwidthName;
style->setwidthName = qstrdup(tokens[Width]);
style->setwidthName = qstrdup(tokens[XLFDFieldNames::Width]);
if (smooth_scalable) {
style->smoothScalable = true;
@ -699,7 +701,7 @@ static void loadXlfds(const char *reqFamily, int encoding_id)
QtFontSize *size = style->pixelSize(pixelSize, true);
QtFontEncoding *enc =
size->encodingID(encoding_id, xpointSize, xres, yres, avgwidth, true);
enc->pitch = *tokens[Spacing];
enc->pitch = *tokens[XLFDFieldNames::Spacing];
if (!enc->pitch) enc->pitch = '*';
for (int i = 0; i < QFontDatabase::WritingSystemsCount; ++i) {

View file

@ -56,7 +56,6 @@ set(GUI_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/text/qtextcontrol.cpp
${CMAKE_CURRENT_SOURCE_DIR}/text/qtextengine.cpp
${CMAKE_CURRENT_SOURCE_DIR}/text/qtextlayout.cpp
${CMAKE_CURRENT_SOURCE_DIR}/text/qtextformat.cpp
${CMAKE_CURRENT_SOURCE_DIR}/text/qtextobject.cpp
${CMAKE_CURRENT_SOURCE_DIR}/text/qtextoption.cpp
${CMAKE_CURRENT_SOURCE_DIR}/text/qfragmentmap.cpp

View file

@ -127,7 +127,6 @@ set(GUI_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/widgets/qstatusbar.cpp
${CMAKE_CURRENT_SOURCE_DIR}/widgets/qtabbar.cpp
${CMAKE_CURRENT_SOURCE_DIR}/widgets/qtabwidget.cpp
${CMAKE_CURRENT_SOURCE_DIR}/widgets/qtextedit.cpp
${CMAKE_CURRENT_SOURCE_DIR}/widgets/qtextbrowser.cpp
${CMAKE_CURRENT_SOURCE_DIR}/widgets/qtoolbar.cpp
${CMAKE_CURRENT_SOURCE_DIR}/widgets/qtoolbarlayout.cpp