1
0

wxQt compilation problem fixes

OBS-URL: https://build.opensuse.org/package/show/X11:wxWidgets/wxWidgets-3_2?expand=0&rev=8
This commit is contained in:
Jan Engelhardt 2014-12-17 13:01:27 +00:00 committed by Git OBS Bridge
parent d584a99941
commit 8ccc7f9aaa
2 changed files with 323 additions and 1 deletions

View File

@ -43,6 +43,7 @@ Source6: wxpython-mkdiff.sh
Source50: baselibs.conf Source50: baselibs.conf
Patch1: soversion.diff Patch1: soversion.diff
Patch2: wxqt-compile.diff Patch2: wxqt-compile.diff
Patch3: wxqt-color.diff
BuildRoot: %_tmppath/%name-%version-build BuildRoot: %_tmppath/%name-%version-build
BuildRequires: SDL-devel BuildRequires: SDL-devel
BuildRequires: autoconf BuildRequires: autoconf
@ -205,7 +206,7 @@ read %_docdir/%name/README.SUSE to pick a correct variant.
%prep %prep
echo "=== RPM build flags: WX_DEBUG=0%{?WX_DEBUG}" echo "=== RPM build flags: WX_DEBUG=0%{?WX_DEBUG}"
%setup -q -n %tarball_name-trunk %setup -q -n %tarball_name-trunk
%patch -P 1 -P 2 -p1 %patch -P 1 -P 2 -P 3 -p1
cp %{S:2} . cp %{S:2} .
%build %build

321
wxqt-color.diff Normal file
View File

@ -0,0 +1,321 @@
---
include/wx/qt/colour.h | 29 +++++++++++++----------------
src/qt/bitmap.cpp | 2 +-
src/qt/brush.cpp | 6 +++---
src/qt/calctrl.cpp | 14 +++++++-------
src/qt/colordlg.cpp | 4 ++--
src/qt/colour.cpp | 12 ++++++++++++
src/qt/dc.cpp | 16 ++++++++--------
src/qt/listctrl.cpp | 4 ++--
src/qt/pen.cpp | 6 +++---
9 files changed, 51 insertions(+), 42 deletions(-)
Index: wxWidgets-trunk/include/wx/qt/colour.h
===================================================================
--- wxWidgets-trunk.orig/include/wx/qt/colour.h
+++ wxWidgets-trunk/include/wx/qt/colour.h
@@ -9,37 +9,34 @@
#ifndef _WX_QT_COLOUR_H_
#define _WX_QT_COLOUR_H_
-#include <QtGui/QColor>
+class QColor;
class WXDLLIMPEXP_CORE wxColour : public wxColourBase
{
public:
DEFINE_STD_WXCOLOUR_CONSTRUCTORS
- wxColour(const QColor& color) : m_qtColor(color) {}
+ wxColour(const QColor &);
- virtual bool IsOk() const { return m_qtColor.isValid(); }
+ virtual bool IsOk(void) const;
- virtual ChannelType Red() const { return m_qtColor.red(); }
- virtual ChannelType Green() const { return m_qtColor.green(); }
- virtual ChannelType Blue() const { return m_qtColor.blue(); }
- virtual ChannelType Alpha() const { return m_qtColor.alpha(); }
-
- bool operator==(const wxColour& color) const
- { return m_qtColor == color.m_qtColor; }
- bool operator!=(const wxColour& color) const
- { return m_qtColor != color.m_qtColor; }
+ virtual ChannelType Red(void) const;
+ virtual ChannelType Green(void) const;
+ virtual ChannelType Blue(void) const;
+ virtual ChannelType Alpha(void) const;
+
+ bool operator==(const wxColour &) const;
+ bool operator!=(const wxColour &) const;
int GetPixel() const;
- QColor GetHandle() const { return m_qtColor; };
+ QColor *GetHandle(void) const;
protected:
virtual void
- InitRGBA(ChannelType r, ChannelType g, ChannelType b, ChannelType a)
- { m_qtColor.setRgb(r, g, b, a); }
+ InitRGBA(ChannelType r, ChannelType g, ChannelType b, ChannelType a);
private:
- QColor m_qtColor;
+ QColor *m_qtColor;
DECLARE_DYNAMIC_CLASS(wxColour)
};
Index: wxWidgets-trunk/src/qt/bitmap.cpp
===================================================================
--- wxWidgets-trunk.orig/src/qt/bitmap.cpp
+++ wxWidgets-trunk/src/qt/bitmap.cpp
@@ -496,7 +496,7 @@ bool wxMask::Create(const wxBitmap& bitm
if (m_qtBitmap)
delete m_qtBitmap;
- m_qtBitmap = new QBitmap(bitmap.GetHandle()->createMaskFromColor(colour.GetHandle()));
+ m_qtBitmap = new QBitmap(bitmap.GetHandle()->createMaskFromColor(*colour.GetHandle()));
return true;
}
Index: wxWidgets-trunk/src/qt/brush.cpp
===================================================================
--- wxWidgets-trunk.orig/src/qt/brush.cpp
+++ wxWidgets-trunk/src/qt/brush.cpp
@@ -95,7 +95,7 @@ wxBrush::wxBrush()
wxBrush::wxBrush(const wxColour& col, wxBrushStyle style )
{
m_refData = new wxBrushRefData();
- M_BRUSHDATA.setColor(col.GetHandle());
+ M_BRUSHDATA.setColor(*col.GetHandle());
M_BRUSHDATA.setStyle(ConvertBrushStyle(style));
M_STYLEDATA = style;
}
@@ -103,7 +103,7 @@ wxBrush::wxBrush(const wxColour& col, wx
wxBrush::wxBrush(const wxColour& col, int style)
{
m_refData = new wxBrushRefData();
- M_BRUSHDATA.setColor(col.GetHandle());
+ M_BRUSHDATA.setColor(*col.GetHandle());
M_BRUSHDATA.setStyle(ConvertBrushStyle((wxBrushStyle)style));
M_STYLEDATA = (wxBrushStyle)style;
}
@@ -122,7 +122,7 @@ wxBrush::wxBrush(const wxBitmap& stipple
void wxBrush::SetColour(const wxColour& col)
{
AllocExclusive();
- M_BRUSHDATA.setColor(col.GetHandle());
+ M_BRUSHDATA.setColor(*col.GetHandle());
}
void wxBrush::SetColour(unsigned char r, unsigned char g, unsigned char b)
Index: wxWidgets-trunk/src/qt/calctrl.cpp
===================================================================
--- wxWidgets-trunk.orig/src/qt/calctrl.cpp
+++ wxWidgets-trunk/src/qt/calctrl.cpp
@@ -228,7 +228,7 @@ void wxCalendarCtrl::SetHoliday(size_t d
date.setDate(date.year(), date.month(), day);
QTextCharFormat format = m_qtCalendar->dateTextFormat(date);
- format.setForeground(m_colHolidayFg.GetHandle());
+ format.setForeground(*m_colHolidayFg.GetHandle());
m_qtCalendar->setDateTextFormat(date, format);
}
@@ -248,9 +248,9 @@ void wxCalendarCtrl::RefreshHolidays()
if ( m_windowStyle & wxCAL_SHOW_HOLIDAYS )
{
if ( m_colHolidayFg.IsOk() )
- format.setForeground(m_colHolidayFg.GetHandle());
+ format.setForeground(*m_colHolidayFg.GetHandle());
if ( m_colHolidayBg.IsOk() )
- format.setBackground(m_colHolidayBg.GetHandle());
+ format.setBackground(*m_colHolidayBg.GetHandle());
}
else
{
@@ -277,9 +277,9 @@ void wxCalendarCtrl::SetHeaderColours(co
QTextCharFormat format = m_qtCalendar->headerTextFormat();
if ( m_colHeaderFg.IsOk() )
- format.setForeground(m_colHeaderFg.GetHandle());
+ format.setForeground(*m_colHeaderFg.GetHandle());
if ( m_colHeaderBg.IsOk() )
- format.setBackground(m_colHeaderBg.GetHandle());
+ format.setBackground(*m_colHeaderBg.GetHandle());
m_qtCalendar->setHeaderTextFormat(format);
}
@@ -302,9 +302,9 @@ void wxCalendarCtrl::SetAttr(size_t day,
QTextCharFormat format = m_qtCalendar->dateTextFormat(date);
if ( attr->HasTextColour() )
- format.setForeground(attr->GetTextColour().GetHandle());
+ format.setForeground(*attr->GetTextColour().GetHandle());
if ( attr->HasBackgroundColour() )
- format.setBackground(attr->GetBackgroundColour().GetHandle());
+ format.setBackground(*attr->GetBackgroundColour().GetHandle());
wxMISSING_IMPLEMENTATION( "Setting font" );
Index: wxWidgets-trunk/src/qt/colordlg.cpp
===================================================================
--- wxWidgets-trunk.orig/src/qt/colordlg.cpp
+++ wxWidgets-trunk/src/qt/colordlg.cpp
@@ -29,10 +29,10 @@ bool wxColourDialog::Create(wxWindow *pa
if ( m_data.GetChooseFull() )
{
for (int i=0; i<wxColourData::NUM_CUSTOM; i++)
- QColorDialog::setCustomColor(i, m_data.GetCustomColour(i).GetHandle());
+ QColorDialog::setCustomColor(i, *m_data.GetCustomColour(i).GetHandle());
}
- GetHandle()->setCurrentColor(m_data.GetColour().GetHandle());
+ GetHandle()->setCurrentColor(*m_data.GetColour().GetHandle());
return wxTopLevelWindow::Create( parent, wxID_ANY, "");
}
Index: wxWidgets-trunk/src/qt/colour.cpp
===================================================================
--- wxWidgets-trunk.orig/src/qt/colour.cpp
+++ wxWidgets-trunk/src/qt/colour.cpp
@@ -11,11 +11,23 @@
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#include "wx/qt/private/utils.h"
+#include "wx/colour.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
+wxColour::wxColour(const QColor &color) : m_qtColor(new QColor(color)) {}
+bool wxColour::IsOk(void) const { return m_qtColor->isValid(); }
+unsigned char wxColour::Red(void) const { return m_qtColor->red(); }
+unsigned char wxColour::Green(void) const { return m_qtColor->green(); }
+unsigned char wxColour::Blue(void) const { return m_qtColor->blue(); }
+unsigned char wxColour::Alpha(void) const { return m_qtColor->alpha(); }
+bool wxColour::operator==(const wxColour &color) const { return *m_qtColor == *color.m_qtColor; }
+bool wxColour::operator!=(const wxColour &color) const { return *m_qtColor != *color.m_qtColor; }
+QColor *wxColour::GetHandle(void) const { return m_qtColor; }
+void wxColour::InitRGBA(unsigned char r, unsigned char g, unsigned char b, unsigned char a) { m_qtColor->setRgb(r, g, b, a); }
+
int wxColour::GetPixel() const
{
wxMISSING_IMPLEMENTATION( "wxColour::GetPixel" );
Index: wxWidgets-trunk/src/qt/dc.cpp
===================================================================
--- wxWidgets-trunk.orig/src/qt/dc.cpp
+++ wxWidgets-trunk/src/qt/dc.cpp
@@ -128,7 +128,7 @@ void wxQtDCImpl::SetBrush(const wxBrush&
{
// Use a monochrome mask: use foreground color for the mask
QBrush b(brush.GetHandle());
- b.setColor(m_textForegroundColour.GetHandle());
+ b.setColor(*m_textForegroundColour.GetHandle());
b.setTexture(b.texture().mask());
m_qtPainter->setBrush(b);
}
@@ -553,7 +553,7 @@ void wxQtDCImpl::DoDrawEllipse(wxCoord x
// Save pen/brush
savedBrush = m_qtPainter->brush();
// Fill with text background color ("no fill" like in wxGTK):
- m_qtPainter->setBrush(QBrush(m_textBackgroundColour.GetHandle()));
+ m_qtPainter->setBrush(QBrush(*m_textBackgroundColour.GetHandle()));
}
// Draw
@@ -598,8 +598,8 @@ void wxQtDCImpl::DoDrawBitmap(const wxBi
QPen savedPen = m_qtPainter->pen();
//Use text colors
- m_qtPainter->setBackground(QBrush(m_textBackgroundColour.GetHandle()));
- m_qtPainter->setPen(QPen(m_textForegroundColour.GetHandle()));
+ m_qtPainter->setBackground(QBrush(*m_textBackgroundColour.GetHandle()));
+ m_qtPainter->setPen(QPen(*m_textForegroundColour.GetHandle()));
//Draw
m_qtPainter->drawPixmap(x, y, pix);
@@ -629,7 +629,7 @@ void wxQtDCImpl::DoDrawBitmap(const wxBi
void wxQtDCImpl::DoDrawText(const wxString& text, wxCoord x, wxCoord y)
{
QPen savedPen = m_qtPainter->pen();
- m_qtPainter->setPen(QPen(m_textForegroundColour.GetHandle()));
+ m_qtPainter->setPen(QPen(*m_textForegroundColour.GetHandle()));
// Disable logical function
QPainter::CompositionMode savedOp = m_qtPainter->compositionMode();
@@ -643,7 +643,7 @@ void wxQtDCImpl::DoDrawText(const wxStri
QBrush savedBrush = m_qtPainter->background();
//Use text colors
- m_qtPainter->setBackground(QBrush(m_textBackgroundColour.GetHandle()));
+ m_qtPainter->setBackground(QBrush(*m_textBackgroundColour.GetHandle()));
//Draw
m_qtPainter->drawText(x, y, 1, 1, Qt::TextDontClip, wxQtConvertString(text));
@@ -672,7 +672,7 @@ void wxQtDCImpl::DoDrawRotatedText(const
m_qtPainter->rotate(-angle);
QPen savedPen = m_qtPainter->pen();
- m_qtPainter->setPen(QPen(m_textForegroundColour.GetHandle()));
+ m_qtPainter->setPen(QPen(*m_textForegroundColour.GetHandle()));
// Disable logical function
QPainter::CompositionMode savedOp = m_qtPainter->compositionMode();
@@ -686,7 +686,7 @@ void wxQtDCImpl::DoDrawRotatedText(const
QBrush savedBrush = m_qtPainter->background();
//Use text colors
- m_qtPainter->setBackground(QBrush(m_textBackgroundColour.GetHandle()));
+ m_qtPainter->setBackground(QBrush(*m_textBackgroundColour.GetHandle()));
//Draw
m_qtPainter->drawText(x, y, 1, 1, Qt::TextDontClip, wxQtConvertString(text));
Index: wxWidgets-trunk/src/qt/listctrl.cpp
===================================================================
--- wxWidgets-trunk.orig/src/qt/listctrl.cpp
+++ wxWidgets-trunk/src/qt/listctrl.cpp
@@ -336,9 +336,9 @@ bool wxListCtrl::SetItem(wxListItem& inf
if ( info.GetFont().IsOk() )
qitem->setFont(col, info.GetFont().GetHandle() );
if ( info.GetTextColour().IsOk() )
- qitem->setTextColor(col, info.GetTextColour().GetHandle());
+ qitem->setTextColor(col, *info.GetTextColour().GetHandle());
if ( info.GetBackgroundColour().IsOk() )
- qitem->setBackgroundColor(col, info.GetBackgroundColour().GetHandle());
+ qitem->setBackgroundColor(col, *info.GetBackgroundColour().GetHandle());
}
return true;
}
Index: wxWidgets-trunk/src/qt/pen.cpp
===================================================================
--- wxWidgets-trunk.orig/src/qt/pen.cpp
+++ wxWidgets-trunk/src/qt/pen.cpp
@@ -247,7 +247,7 @@ wxPen::wxPen( const wxColour &colour, in
m_refData = new wxPenRefData();
M_PENDATA.setWidth(width);
M_PENDATA.setStyle(ConvertPenStyle(style));
- M_PENDATA.setColor(colour.GetHandle());
+ M_PENDATA.setColor(*colour.GetHandle());
}
wxPen::wxPen(const wxColour& col, int width, int style)
@@ -255,7 +255,7 @@ wxPen::wxPen(const wxColour& col, int wi
m_refData = new wxPenRefData();
M_PENDATA.setWidth(width);
M_PENDATA.setStyle(ConvertPenStyle((wxPenStyle)style));
- M_PENDATA.setColor(col.GetHandle());
+ M_PENDATA.setColor(*col.GetHandle());
}
@@ -276,7 +276,7 @@ bool wxPen::operator!=(const wxPen& pen)
void wxPen::SetColour(const wxColour& col)
{
AllocExclusive();
- M_PENDATA.setColor(col.GetHandle());
+ M_PENDATA.setColor(*col.GetHandle());
}
void wxPen::SetColour(unsigned char r, unsigned char g, unsigned char b)