summaryrefslogtreecommitdiff
authorzecke <zecke>2005-02-08 22:59:18 (UTC)
committer zecke <zecke>2005-02-08 22:59:18 (UTC)
commitf24d8318de30b47ec8f877293fd175deaa0b914c (patch) (side-by-side diff)
tree980c18e803b7b85573e1ab11a9ade2b281273d3e
parent7cff42233a2e0e2761f54fea89db785c7b519c94 (diff)
downloadopie-f24d8318de30b47ec8f877293fd175deaa0b914c.zip
opie-f24d8318de30b47ec8f877293fd175deaa0b914c.tar.gz
opie-f24d8318de30b47ec8f877293fd175deaa0b914c.tar.bz2
-Kill the need to compile Opie against a patched version of Qt/E
Remove the setStyle and setFont overrides as a result remove settings from the buildsystem and the Apperance GUI We do this as we won't run NeoCal or TKC Apps on a GCC3 (now default compiler) libqpe, to run these applications one can use oz-compat
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--Rules.make6
-rw-r--r--config.in8
-rw-r--r--library/library.pro6
-rw-r--r--library/qpeapplication.cpp40
-rw-r--r--library/qpeapplication.h5
-rw-r--r--library/qt_override.cpp170
-rw-r--r--library/qt_override_p.h25
-rw-r--r--noncore/settings/appearance2/appearance.cpp210
-rw-r--r--noncore/settings/appearance2/appearance.h8
9 files changed, 5 insertions, 473 deletions
diff --git a/Rules.make b/Rules.make
index 3fbce76..64237cf 100644
--- a/Rules.make
+++ b/Rules.make
@@ -54,18 +54,12 @@ ifeq ($(CONFIG_SQL_PIM_BACKEND),y)
else
echo ENABLE_SQL_PIM_BACKEND=n >> $@
endif
-ifeq ($(CONFIG_OPIE_NO_OVERRIDE_QT),y)
- echo CONFIG += no-override >> $@
-endif
ifeq ($(CONFIG_OPIELOGIN_USEPAM),y)
echo CONFIG += OPIELOGIN_USEPAM >> $@
endif
ifeq ($(CONFIG_LIBQPE_WITHROHFEEDBACK),y)
echo CONFIG += LIBQPE_WITHROHFEEDBACK >> $@
endif
-ifeq ($(CONFIG_OPIE_NO_ERASERECT_FIX),y)
- echo DEFINES += OPIE_NO_ERASE_RECT_HACKFIX >> $@
-endif
ifeq ($(CONFIG_OPIE_NO_BUILTIN_SHUTDOWN),y)
echo DEFINES += OPIE_NO_BUILTIN_SHUTDOWN >> $@
endif
diff --git a/config.in b/config.in
index 323ca51..f913aad 100644
--- a/config.in
+++ b/config.in
@@ -123,14 +123,6 @@ config USE_CCACHE
endmenu
menu "Configuration"
-config OPIE_NO_OVERRIDE_QT
- boolean "Build Opie against an unpatched version of Qt"
- default n
-
-config OPIE_NO_ERASERECT_FIX
- boolean "Disable Fixup eraseRect for HancomMobileWord,neocal.. to make libopiecore work on Sharps libqpe"
- default n
-
config OPIE_NO_BUILTIN_SHUTDOWN
boolean "Disable the built in shutdown application"
default y
diff --git a/library/library.pro b/library/library.pro
index 04e125f..95c18a2 100644
--- a/library/library.pro
+++ b/library/library.pro
@@ -59,7 +59,6 @@ HEADERS = calendar.h \
windowdecorationinterface.h \
textcodecinterface.h \
imagecodecinterface.h \
- qt_override_p.h \
qpeglobal.h
SOURCES = calendar.cpp \
@@ -117,7 +116,6 @@ SOURCES = calendar.cpp \
findwidget_p.cpp \
finddialog.cpp \
lnkproperties.cpp \
- qt_override.cpp \
widget_showing.cpp
@@ -134,10 +132,6 @@ VERSION = 1.5.0.1
include( $(OPIEDIR)/include.pro )
-contains( CONFIG, no-override ){
- DEFINES += OPIE_NO_OVERRIDE_QT
-}
-
contains( CONFIG, LIBQPE_WITHROHFEEDBACK ){
DEFINES += OPIE_WITHROHFEEDBACK
SOURCES += backend/rohfeedback.cpp
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index 1c5ced3..2bd7cbe 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -96,7 +96,6 @@
#ifndef QT_NO_SOUND
#include <sys/soundcard.h>
#endif
-#include "qt_override_p.h"
#include <backend/rohfeedback.h>
@@ -1352,31 +1351,9 @@ void QPEApplication::applyStyle()
config.setGroup( "Appearance" );
#if QT_VERSION > 233
-#if !defined(OPIE_NO_OVERRIDE_QT)
- // don't block ourselves ...
- Opie::force_appearance = 0;
-
- static QString appname = Opie::binaryName ( );
-
- QStringList ex = config. readListEntry ( "NoStyle", ';' );
- int nostyle = 0;
- for ( QStringList::Iterator it = ex. begin ( ); it != ex. end ( ); ++it ) {
- if ( QRegExp (( *it ). mid ( 1 ), false, true ). find ( appname, 0 ) >= 0 ) {
- nostyle = ( *it ). left ( 1 ). toInt ( 0, 32 );
- break;
- }
- }
-#else
- int nostyle = 0;
-#endif
-
// Widget style
QString style = config.readEntry( "Style", "FlatStyle" );
- // don't set a custom style
- if ( nostyle & Opie::Force_Style )
- style = "FlatStyle";
-
internalSetStyle ( style );
// Colors - from /etc/colors/Liquid.scheme
@@ -1407,11 +1384,6 @@ void QPEApplication::applyStyle()
// Window Decoration
QString dec = config.readEntry( "Decoration", "Flat" );
- // don't set a custom deco
- if ( nostyle & Opie::Force_Decoration )
- dec = "";
-
-
if ( dec != d->decorationName ) {
qwsSetDecoration( new QPEDecoration( dec ) );
d->decorationName = dec;
@@ -1421,19 +1393,7 @@ void QPEApplication::applyStyle()
QString ff = config.readEntry( "FontFamily", font().family() );
int fs = config.readNumEntry( "FontSize", font().pointSize() );
- // don't set a custom font
- if ( nostyle & Opie::Force_Font ) {
- ff = "Vera";
- fs = 10;
- }
-
setFont ( QFont ( ff, fs ), true );
-
-#if !defined(OPIE_NO_OVERRIDE_QT)
- // revert to global blocking policy ...
- Opie::force_appearance = config. readBoolEntry ( "ForceStyle", false ) ? Opie::Force_All : Opie::Force_None;
- Opie::force_appearance &= ~nostyle;
-#endif
#endif
}
diff --git a/library/qpeapplication.h b/library/qpeapplication.h
index 849d5b3..167fe69 100644
--- a/library/qpeapplication.h
+++ b/library/qpeapplication.h
@@ -166,11 +166,6 @@ protected:
void timerEvent( QTimerEvent * );
bool raiseAppropriateWindow();
virtual void tryQuit();
-#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:
void mapToDefaultAction( QWSKeyEvent *ke, int defKey );
void processQCopFile();
diff --git a/library/qt_override.cpp b/library/qt_override.cpp
deleted file mode 100644
index a0d753b..0000000
--- a/library/qt_override.cpp
+++ b/dev/null
@@ -1,170 +0,0 @@
-
-#include <qpe/qpeapplication.h>
-#include <qfontdatabase.h>
-
-#include <unistd.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <limits.h>
-#include <sys/param.h> // for toolchains with old libc headers
-
-#include <qtopia/qpeglobal.h>
-#include "qt_override_p.h"
-
-#if QT_VERSION > 233
-
-#ifndef OPIE_NO_ERASE_RECT_HACKFIX
-struct color_fix_t {
- char *m_app;
- char *m_class;
- char *m_name;
- QColorGroup::ColorRole m_set;
- QColorGroup::ColorRole m_get;
-};
-
-
-
-static const color_fix_t apps_that_need_special_colors [] = {
- { "HancomMobileWord", "HTextEdit", 0, QColorGroup::Background, QColorGroup::Base },
- { "neocal", "Display", 0, QColorGroup::Background, QColorGroup::Base },
-
- { 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",
- "HancomPresenterViewer",
-
- 0
-};
-
-
-
-
-int Opie::force_appearance = 0;
-
-
-// Return the *real* name of the binary - not just a quick guess
-// by looking at argv [0] (which could be anything)
-
-static void binaryNameFree ( )
-{
- ::free ((void *) Opie::binaryName ( )); // we need to cast away the const here
-}
-
-const char *Opie::binaryName ( )
-{
- static const char *appname = 0;
-
- if ( !appname ) {
- char dst [PATH_MAX + 1];
- int l = ::readlink ( "/proc/self/exe", dst, PATH_MAX );
-
- if ( l <= 0 )
- l = 0;
-
- dst [l] = 0;
- const char *b = ::strrchr ( dst, '/' );
- appname = ::strdup ( b ? b + 1 : dst );
-
- ::atexit ( binaryNameFree );
- }
- return appname;
-}
-
-#else
-int Opie::force_appearance = 0;
-#endif
-
-// Fix for a toolchain incompatibility (binaries compiled with
-// old tcs using shared libs compiled with newer tcs)
-
-extern "C" {
-
-extern void __gmon_start__ ( ) QPE_WEAK_SYMBOL;
-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 ...)
-
-void QPEApplication::polish ( QWidget *w )
-{
-#ifndef OPIE_NO_OVERRIDE_QT
- for ( const color_fix_t *ptr = apps_that_need_special_colors; ptr-> m_app; ptr++ ) {
- if (( ::strcmp ( Opie::binaryName ( ), ptr-> m_app ) == 0 ) &&
- ( ptr-> m_class ? w-> inherits ( ptr-> m_class ) : true ) &&
- ( ptr-> m_name ? ( ::strcmp ( w-> name ( ), ptr-> m_name ) == 0 ) : true )) {
- QPalette pal = w-> palette ( );
- pal. setColor ( ptr-> m_set, pal. color ( QPalette::Active, ptr-> m_get ));
- w-> setPalette ( pal );
- }
- }
-#endif
- QApplication::polish ( w );
-}
-#endif
-
-
-#ifndef OPIE_NO_OVERRIDE_QT
-// Fix for the binary incompatibility that TT introduced in Qt/E 2.3.4 -- point sizes
-// were multiplied by 10 (which was incorrect)
-
-QValueList <int> QFontDatabase::pointSizes ( QString const &family, QString const &style, QString const &charset )
-{
- QValueList <int> sl = pointSizes_NonWeak ( family, style, charset );
-
- for ( const char * const *ptr = apps_that_need_pointsizes_times_10; *ptr; ptr++ ) {
- if ( ::strcmp ( Opie::binaryName ( ), *ptr ) == 0 ) {
- for ( QValueList <int>::Iterator it = sl. begin ( ); it != sl. end ( ); ++it )
- *it *= 10;
- }
- }
- return sl;
-}
-
-
-// Various style/font/color related overrides for weak symbols in Qt/E,
-// which allows us to force the usage of the global Opie appearance.
-
-void QApplication::setStyle ( QStyle *style )
-{
- if ( Opie::force_appearance & Opie::Force_Style )
- delete style;
- else
- QApplication::setStyle_NonWeak ( style );
-}
-
-void QApplication::setPalette ( const QPalette &pal, bool informWidgets, const char *className )
-{
- if (!( Opie::force_appearance & Opie::Force_Style ))
- QApplication::setPalette_NonWeak ( pal, informWidgets, className );
-}
-
-void QApplication::setFont ( const QFont &fnt, bool informWidgets, const char *className )
-{
- if (!( Opie::force_appearance & Opie::Force_Font ))
- QApplication::setFont_NonWeak ( fnt, informWidgets, className );
-}
-
-
-void QApplication::qwsSetDecoration ( QWSDecoration *deco )
-{
- if ( Opie::force_appearance & Opie::Force_Decoration )
- delete deco;
- else
- QApplication::qwsSetDecoration_NonWeak ( deco );
-}
-#endif
-#endif
diff --git a/library/qt_override_p.h b/library/qt_override_p.h
deleted file mode 100644
index cb05d15..0000000
--- a/library/qt_override_p.h
+++ b/dev/null
@@ -1,25 +0,0 @@
-#ifndef __QT_OVERRIDE_H__
-#define __QT_OVERRIDE_H__
-
-#if QT_VERSION > 233
-
-namespace Opie {
-
-enum ForceAppearance {
- Force_Style = 0x01,
- Force_Font = 0x02,
- Force_Decoration = 0x04,
-
- Force_All = 0xff,
- Force_None = 0x00,
-};
-
-extern const char *binaryName ( );
-
-extern int force_appearance;
-
-}
-
-#endif // (QT_VERSION >233)
-
-#endif
diff --git a/noncore/settings/appearance2/appearance.cpp b/noncore/settings/appearance2/appearance.cpp
index 088171c..d649ed6 100644
--- a/noncore/settings/appearance2/appearance.cpp
+++ b/noncore/settings/appearance2/appearance.cpp
@@ -293,85 +293,6 @@ QWidget *Appearance::createAdvancedTab ( QWidget *parent, Config &cfg )
QWidget *tab = new QWidget ( parent );
QVBoxLayout *vertLayout = new QVBoxLayout( tab, 3, 3 );
- QGridLayout *lay = new QGridLayout ( vertLayout, 0, 0, 3, 0 );
-
- m_force = new QCheckBox ( tr( "Force styling for all applications." ), tab );
- m_force-> setChecked ( cfg. readBoolEntry ( "ForceStyle" ));
- lay-> addMultiCellWidget ( m_force, 0, 0, 0, 1 );
- QWhatsThis::add( m_force, tr( "Click here to allow all applications to use global appearance settings." ) );
-
- QLabel *l = new QLabel ( tab );
- l-> setText ( QString ( "<p>%1</p>" ). arg ( tr( "Disable styling for these applications ( <b>*</b> can be used as a wildcard):" )));
- lay-> addMultiCellWidget ( l, 1, 1, 0, 1 );
- QWhatsThis::add( l, tr( "If some applications do not display correctly with the global appearance settings, certain features can be turned off for that application.\n\nThis area allows you to select an application and which settings you wish to disable." ) );
-
- m_except = new QListView ( tab );
- m_except-> addColumn ( Resource::loadIconSet ( "appearance" ), "", 24 );
- m_except-> addColumn ( Resource::loadIconSet ( "font" ), "", 24 );
- m_except-> addColumn ( Resource::loadIconSet ( "appearance/deco" ), "", 24 );
- m_except-> addColumn ( tr( "Binary file(s)" ));
- m_except-> setColumnAlignment ( 0, AlignCenter );
- m_except-> setColumnAlignment ( 1, AlignCenter );
- m_except-> setColumnAlignment ( 2, AlignCenter );
- m_except-> setAllColumnsShowFocus ( true );
- m_except-> setMinimumHeight ( 30 );
- m_except-> header ( )-> setClickEnabled ( false );
- m_except-> header ( )-> setResizeEnabled ( false );
- m_except-> header ( )-> setMovingEnabled ( false );
- m_except-> setSorting ( -1 );
- lay-> addMultiCellWidget ( m_except, 2, 6, 0, 0 );
- QWhatsThis::add( m_except, tr( "If some applications do not display correctly with the global appearance settings, certain features can be turned off for that application.\n\nThis area allows you to select an application and which settings you wish to disable." ) );
-
- connect ( m_except, SIGNAL( clicked(QListViewItem*,const QPoint&,int)), this, SLOT( clickedExcept(QListViewItem*,const QPoint&,int)));
-
- QToolButton *tb = new QToolButton ( tab );
- tb-> setIconSet ( Resource::loadIconSet ( "appearance/add" ));
- tb-> setFocusPolicy ( QWidget::StrongFocus );
- lay-> addWidget ( tb, 2, 1 );
- connect ( tb, SIGNAL( clicked()), this, SLOT( addExcept()));
- QWhatsThis::add( tb, tr( "Click here to add an application to the list above." ) );
-
- tb = new QToolButton ( tab );
- tb-> setIconSet ( Resource::loadIconSet ( "editdelete" ));
- tb-> setFocusPolicy ( QWidget::StrongFocus );
- lay-> addWidget ( tb, 3, 1 );
- connect ( tb, SIGNAL( clicked()), this, SLOT( delExcept()));
- QWhatsThis::add( tb, tr( "Click here to delete the currently selected application." ) );
-
- tb = new QToolButton ( tab );
- tb-> setIconSet ( Resource::loadIconSet ( "up" ));
- tb-> setFocusPolicy ( QWidget::StrongFocus );
- lay-> addWidget ( tb, 4, 1 );
- connect ( tb, SIGNAL( clicked()), this, SLOT( upExcept()));
- QWhatsThis::add( tb, tr( "Click here to move the currently selected application up in the list." ) );
-
- tb = new QToolButton ( tab );
- tb-> setIconSet ( Resource::loadIconSet ( "down" ));
- tb-> setFocusPolicy ( QWidget::StrongFocus );
- lay-> addWidget ( tb, 5, 1 );
- connect ( tb, SIGNAL( clicked()), this, SLOT( downExcept()));
- QWhatsThis::add( tb, tr( "Click here to move the currently selected application down in the list." ) );
-
- lay-> setRowStretch ( 6, 10 );
- lay-> setColStretch ( 0, 10 );
-
- QStringList sl = cfg. readListEntry ( "NoStyle", ';' );
- QListViewItem *lvit = 0;
- for ( QStringList::Iterator it = sl. begin ( ); it != sl. end ( ); ++it )
- {
- int fl = ( *it ). left ( 1 ). toInt ( 0, 32 );
-
- lvit = new ExceptListItem ( m_except, lvit, ( *it ). mid ( 1 ), fl & 0x01, fl & 0x02, fl & 0x04 );
- }
-
-
- vertLayout-> addSpacing ( 3 );
- QFrame *f = new QFrame ( tab );
- f-> setFrameStyle ( QFrame::HLine | QFrame::Sunken );
- vertLayout-> addWidget ( f );
- vertLayout-> addSpacing ( 3 );
-
-
QGridLayout* gridLayout = new QGridLayout ( vertLayout, 0, 0, 3, 0 );
int style = cfg. readNumEntry ( "TabStyle", 2 ) - 1;
@@ -455,6 +376,11 @@ QWidget *Appearance::createAdvancedTab ( QWidget *parent, Config &cfg )
m_rotdir_ccw-> setChecked ( rot == CCW );
m_rotdir_flip-> setChecked ( rot == Flip );
+
+ /*
+ * add a spacing
+ */
+ vertLayout->addItem( new QSpacerItem( 1, 1, QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding ) );
return tab;
}
@@ -567,23 +493,6 @@ void Appearance::accept ( )
}
config. writeEntry ( "rotatedir", (int)rot );
- m_except-> setFocus ( ); // if the focus was on the embedded line-edit, we have to move it away first, so the contents are updated
-
- QStringList sl;
- QString exceptstr;
- for ( ExceptListItem *it = (ExceptListItem *) m_except-> firstChild ( ); it; it = (ExceptListItem *) it-> nextSibling ( ))
- {
- int fl = 0;
- fl |= ( it-> noStyle ( ) ? 0x01 : 0 );
- fl |= ( it-> noFont ( ) ? 0x02 : 0 );
- fl |= ( it-> noDeco ( ) ? 0x04 : 0 );
- exceptstr = QString::number ( fl, 32 );
- exceptstr.append( it-> pattern ( ));
- sl << exceptstr;
- }
- config. writeEntry ( "NoStyle", sl, ';' );
- config. writeEntry ( "ForceStyle", m_force-> isChecked ( ));
-
config. write ( ); // need to flush the config info first
Global::applyStyle ( );
@@ -781,112 +690,3 @@ void Appearance::deleteSchemeClicked()
QMessageBox::information( this, tr( "Delete scheme" ), tr( "Unable to delete current scheme." ));
}
}
-
-
-void Appearance::addExcept ( )
-{
- ExceptListItem *it = new ExceptListItem ( m_except, 0, tr( "<new>" ), true, true, true );
- m_except-> ensureItemVisible ( it );
- m_except-> setSelected ( it, true );
-}
-
-void Appearance::delExcept ( )
-{
- if ( m_except-> selectedItem ( ))
- {
- m_except-> setFocus ( );
- delete m_except-> selectedItem ( );
- }
-}
-
-void Appearance::upExcept ( )
-{
- ExceptListItem *it = (ExceptListItem *) m_except-> selectedItem ( );
-
- if ( it && it-> itemAbove ( ))
- it-> itemAbove ( )-> moveItem ( it );
-}
-
-void Appearance::downExcept ( )
-{
- ExceptListItem *it = (ExceptListItem *) m_except-> selectedItem ( );
-
- if ( it && it-> itemBelow ( ))
- it-> moveItem ( it-> itemBelow ( ));
-}
-
-class ExEdit : public QLineEdit
-{
-public:
- ExEdit ( ExceptListItem *item )
- : QLineEdit ( item-> listView ( )-> viewport ( ), "exedit" ), it ( item )
- {
- setFrame ( false );
-
- QRect r = it-> listView ( )-> itemRect ( it );
-
- int x = it-> listView ( )-> header ( )-> cellPos ( 3 ) - 1;
- int y = r. y ( );
- int w = it-> listView ( )-> viewport ( )-> width ( ) - x;
- int h = r. height ( ); // + 2;
-
- setText ( it-> pattern ( ));
- setGeometry ( x, y, w, h );
-
- odebug << "ExEdit: [" << it->text(2).latin1() << "] at "
- << x << "," << y << " " << w << "," << h << oendl;
-
- m_out = true;
-
- show ( );
- setFocus ( );
- selectAll ( );
- end ( true );
- }
-
- virtual void focusOutEvent ( QFocusEvent * )
- {
- hide ( );
- if ( m_out )
- it-> setPattern ( text ( ));
- delete this;
- }
-
- virtual void keyPressEvent ( QKeyEvent *e )
- {
- if ( e-> key ( ) == Key_Return )
- it-> listView ( )-> setFocus ( );
- else if ( e-> key ( ) == Key_Escape )
- {
- m_out = false;
- it-> listView ( )-> setFocus ( );
- }
- else
- QLineEdit::keyPressEvent ( e );
- }
-
-private:
- ExceptListItem *it;
- bool m_out;
-};
-
-void Appearance::clickedExcept ( QListViewItem *item, const QPoint &, int c )
-{
- if ( !item || c < 0 || c > 3 )
- return;
-
- ExceptListItem *it = (ExceptListItem *) item;
-
- if ( c == 0 )
- it-> setNoStyle ( !it-> noStyle ( ));
- else if ( c == 1 )
- it-> setNoFont ( !it-> noFont ( ));
- else if ( c == 2 )
- it-> setNoDeco ( !it-> noDeco ( ));
- else if ( c == 3 )
- {
- m_except-> ensureItemVisible ( it );
- new ExEdit ( it );
- }
-}
-
diff --git a/noncore/settings/appearance2/appearance.h b/noncore/settings/appearance2/appearance.h
index 134a918..de2f1ab 100644
--- a/noncore/settings/appearance2/appearance.h
+++ b/noncore/settings/appearance2/appearance.h
@@ -78,12 +78,6 @@ protected slots:
void tabChanged ( QWidget * );
- void addExcept ( );
- void delExcept ( );
- void upExcept ( );
- void downExcept ( );
- void clickedExcept ( QListViewItem *, const QPoint &, int );
-
private:
void changeText();
@@ -125,8 +119,6 @@ private:
QRadioButton *m_rotdir_flip;
QWidget * m_advtab;
- QListView * m_except;
- QCheckBox * m_force;
};
#endif