summaryrefslogtreecommitdiff
path: root/library
authorzecke <zecke>2004-05-17 21:15:42 (UTC)
committer zecke <zecke>2004-05-17 21:15:42 (UTC)
commit598c9bc76840120fa3efdb000461bae2c1fef639 (patch) (side-by-side diff)
tree4cf0c66149f7bee38a2bcface9e7fbfd0d28b85a /library
parent1827ce23d0719a22c14613dc5859093818da1d0a (diff)
downloadopie-598c9bc76840120fa3efdb000461bae2c1fef639.zip
opie-598c9bc76840120fa3efdb000461bae2c1fef639.tar.gz
opie-598c9bc76840120fa3efdb000461bae2c1fef639.tar.bz2
ich@opiezilla:~/programming/opie/head/opie$ nm lib/libopiecore2.so | grep polish
U _ZN14QPEApplication6polishEP7QWidget ich@opiezilla:~/programming/opie/head/opie$ nm lib/libopiecore2.so | grep polish U _ZN12QApplication6polishEP7QWidget in qt_override we had to overwrite the Palette for some widgets for some styles (setting no background liquid and such) we overwrote the polish method. As we did not inherit from QPEApplication the 'polish' symbol was only internal to libqpe and this way Opie apps worked on Opies and Sharps libqpe, and Sharp apps work on our libqpe. Now with libopiecore the compiler tries to include different symbols as shown above. So for now we could disable the legacy palette polishing which shouldn't hurt anyway. OApplication is the source of all evil, we wouldn't 'pull' in the polish symbol... but having a 'shadow' weak symbol as backup isn't good as well. Chicken you may enable the option in config.in...
Diffstat (limited to 'library') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.h4
-rw-r--r--library/qt_override.cpp9
2 files changed, 11 insertions, 2 deletions
diff --git a/library/qpeapplication.h b/library/qpeapplication.h
index 8c85ad0..d2782e4 100644
--- a/library/qpeapplication.h
+++ b/library/qpeapplication.h
@@ -164,8 +164,10 @@ protected:
void timerEvent( QTimerEvent * );
bool raiseAppropriateWindow();
virtual void tryQuit();
-#if QT_VERSION > 233
+#ifndef OPIE_NO_ERASE_RECT_HACKFIX
+ #if QT_VERSION > 233
virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!)
+ #endif
#endif
private:
#ifndef QT_NO_TRANSLATION
diff --git a/library/qt_override.cpp b/library/qt_override.cpp
index 4d1f475..56f82d7 100644
--- a/library/qt_override.cpp
+++ b/library/qt_override.cpp
@@ -12,6 +12,7 @@
#if QT_VERSION > 233
+#ifndef OPIE_NO_ERASE_RECT_HACKFIX
struct color_fix_t {
char *m_app;
char *m_class;
@@ -20,7 +21,7 @@ struct color_fix_t {
QColorGroup::ColorRole m_get;
};
-#ifndef OPIE_NO_OVERRIDE_QT
+
static const color_fix_t apps_that_need_special_colors [] = {
{ "HancomMobileWord", "HTextEdit", 0, QColorGroup::Background, QColorGroup::Base },
@@ -29,6 +30,10 @@ static const color_fix_t apps_that_need_special_colors [] = {
{ 0, 0, 0, QColorGroup::Base, QColorGroup::Base }
};
+#endif
+
+#ifndef OPIE_NO_OVERRIDE_QT
+
static const char * const apps_that_need_pointsizes_times_10 [] = {
"HancomMobileWord",
"hancomsheet",
@@ -89,6 +94,7 @@ extern void __gmon_start__ ( )
}
+#ifndef OPIE_NO_ERASE_RECT_HACKFIX
// Fix for apps, that use QPainter::eraseRect() which doesn't work with styles
// that set a background pixmap (it would be easier to fix eraseRect(), but
// TT made it an inline ...)
@@ -110,6 +116,7 @@ void QPEApplication::polish ( QWidget *w )
#endif
QApplication::polish ( w );
}
+#endif
#ifndef OPIE_NO_OVERRIDE_QT