summaryrefslogtreecommitdiff
path: root/noncore
Side-by-side diff
Diffstat (limited to 'noncore') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/applets/networkapplet/opie-networkapplet.control2
-rw-r--r--noncore/applets/notesapplet/opie-notesapplet.control4
-rw-r--r--noncore/applets/wirelessapplet/opie-wirelessapplet.control2
-rw-r--r--noncore/apps/odict/configdlg.cpp22
-rw-r--r--noncore/apps/odict/configdlg.h2
-rw-r--r--noncore/apps/odict/odict.cpp12
-rw-r--r--noncore/apps/odict/odict.h2
-rw-r--r--noncore/apps/odict/odict.pro2
-rw-r--r--noncore/apps/odict/opie-odict.control2
-rw-r--r--noncore/apps/tableviewer/db/xmlsource.cpp6
-rw-r--r--noncore/apps/tableviewer/tableviewer.pro2
-rw-r--r--noncore/apps/tableviewer/ui/tvbrowseview.cpp7
-rw-r--r--noncore/apps/tableviewer/xmlencodeattr.cpp48
-rw-r--r--noncore/apps/tableviewer/xmlencodeattr.h26
-rw-r--r--noncore/comm/keypebble/keypebble.pro3
-rw-r--r--noncore/comm/keypebble/opie-keypebble.control2
-rw-r--r--noncore/comm/mobilemsg/opie-mobilemsg.control2
-rw-r--r--noncore/decorations/flat/opie-deco-flat.control2
-rw-r--r--noncore/decorations/liquid/opie-deco-liquid.control2
-rw-r--r--noncore/decorations/polished/opie-deco-polished.control2
-rw-r--r--noncore/games/backgammon/backgammon.control2
-rw-r--r--noncore/games/backgammon/backgammon.cpp2
-rw-r--r--noncore/games/backgammon/backgammon.h1
-rw-r--r--noncore/games/bounce/kbounce.cpp6
-rw-r--r--noncore/games/buzzword/buzzword.cpp8
-rw-r--r--noncore/games/fifteen/opie-fifteen.control2
-rw-r--r--noncore/games/go/opie-go.control2
-rw-r--r--noncore/games/kpacman/kpacman.cpp2
-rw-r--r--noncore/games/mindbreaker/opie-mindbreaker.control2
-rw-r--r--noncore/games/minesweep/opie-minesweep.control2
-rw-r--r--noncore/games/parashoot/opie-parashoot.control2
-rw-r--r--noncore/games/qasteroids/opie-qasteroids.control2
-rw-r--r--noncore/games/sfcave-sdl/sfcave-sdl.control2
-rw-r--r--noncore/games/sfcave/opie-sfcave.control2
-rw-r--r--noncore/games/snake/interface.cpp4
-rw-r--r--noncore/games/snake/opie-snake.control2
-rw-r--r--noncore/games/solitaire/canvascardwindow.cpp14
-rw-r--r--noncore/games/solitaire/opie-solitaire.control2
-rw-r--r--noncore/games/tetrix/opie-tetrix.control2
-rw-r--r--noncore/games/tictac/main.cpp2
-rw-r--r--noncore/games/tictac/opie-tictac.control2
-rw-r--r--noncore/games/wordgame/opie-wordgame.control2
-rw-r--r--noncore/games/wordgame/wordgame.cpp4
-rw-r--r--noncore/graphics/drawpad/drawpad.cpp6
-rw-r--r--noncore/graphics/drawpad/drawpad.h1
-rw-r--r--noncore/graphics/drawpad/drawpadcanvas.cpp20
-rw-r--r--noncore/graphics/drawpad/exportdialog.cpp11
-rw-r--r--noncore/graphics/drawpad/importdialog.cpp14
-rw-r--r--noncore/graphics/drawpad/importdialog.h4
-rw-r--r--noncore/graphics/drawpad/main.cpp2
-rw-r--r--noncore/graphics/drawpad/opie-drawpad.control2
-rw-r--r--noncore/graphics/drawpad/texttool.h1
-rw-r--r--noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-Pod.control2
-rw-r--r--noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default-landscape.control2
-rw-r--r--noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default.control2
-rw-r--r--noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-techno.control2
-rw-r--r--noncore/multimedia/opieplayer2/audiowidget.cpp16
-rw-r--r--noncore/multimedia/opieplayer2/audiowidget.h7
-rw-r--r--noncore/multimedia/opieplayer2/lib.cpp59
-rw-r--r--noncore/multimedia/opieplayer2/lib.h5
-rw-r--r--noncore/multimedia/opieplayer2/mediadetect.cpp43
-rw-r--r--noncore/multimedia/opieplayer2/mediadetect.h31
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayer.cpp11
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayer.h3
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.cpp2
-rw-r--r--noncore/multimedia/opieplayer2/om3u.cpp10
-rw-r--r--noncore/multimedia/opieplayer2/opie-mediaplayer2-codecs.control10
-rwxr-xr-xnoncore/multimedia/opieplayer2/opie-mediaplayer2-codecs.postinst5
-rw-r--r--noncore/multimedia/opieplayer2/opie-mediaplayer2.control4
-rw-r--r--noncore/multimedia/opieplayer2/opieplayer2.pro2
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.cpp31
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.h7
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidgetgui.cpp28
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidgetgui.h10
-rw-r--r--noncore/multimedia/opieplayer2/videowidget.cpp14
-rw-r--r--noncore/multimedia/opieplayer2/videowidget.h4
-rw-r--r--noncore/multimedia/opieplayer2/xinecontrol.cpp12
-rw-r--r--noncore/multimedia/opieplayer2/xinecontrol.h1
-rw-r--r--noncore/multimedia/opieplayer2/yuv2rgb_arm2.c875
-rw-r--r--noncore/multimedia/opierec/opierec.control6
-rw-r--r--noncore/multimedia/opierec/qtrec.cpp30
-rw-r--r--noncore/multimedia/showimg/opie-showimg.control2
-rw-r--r--noncore/net/ftplib/ftplib.control2
-rw-r--r--noncore/net/mailit/opie-mailit.control2
-rw-r--r--noncore/net/opieftp/opie-ftp.control2
-rw-r--r--noncore/net/opieirc/opie-irc.control2
-rw-r--r--noncore/net/opietooth/applet/opie-bluetoothapplet.control2
-rw-r--r--noncore/net/opietooth/lib/libopietooth1.control2
-rw-r--r--noncore/unsupported/gsmtool/gsmtool.pro2
-rw-r--r--noncore/unsupported/mail2/addresspicker.cpp1
-rw-r--r--noncore/unsupported/mail2/bend/opie-mailapplet.control4
-rw-r--r--noncore/unsupported/mail2/opie-mail2.control2
-rw-r--r--noncore/unsupported/mailit/opie-mailit.control2
-rw-r--r--noncore/unsupported/qpdf/QOutputDev.cpp367
-rw-r--r--noncore/unsupported/qpdf/opie-qpdf.control2
-rw-r--r--noncore/unsupported/qpdf/qpdf.cpp2
96 files changed, 1386 insertions, 528 deletions
diff --git a/noncore/applets/networkapplet/opie-networkapplet.control b/noncore/applets/networkapplet/opie-networkapplet.control
index ae07eb3..f4ee7be 100644
--- a/noncore/applets/networkapplet/opie-networkapplet.control
+++ b/noncore/applets/networkapplet/opie-networkapplet.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/system
Maintainer: Michael 'Mickey' Lauer <mickeyl@handhelds.org>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal, libopie2 (1.8.1), opie-networksettings
Description: Network Applet
A taskbar applet for controlling network interfaces
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/applets/notesapplet/opie-notesapplet.control b/noncore/applets/notesapplet/opie-notesapplet.control
index da02b44..f19b964 100644
--- a/noncore/applets/notesapplet/opie-notesapplet.control
+++ b/noncore/applets/notesapplet/opie-notesapplet.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/system
Maintainer: L. J. Potter <ljp@llornkcor.com>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
-Description: Screenshot Applet
+Description: Notes Applet
A simple taskbar applet for making quick notes.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/applets/wirelessapplet/opie-wirelessapplet.control b/noncore/applets/wirelessapplet/opie-wirelessapplet.control
index ac7fad2..6dfa214 100644
--- a/noncore/applets/wirelessapplet/opie-wirelessapplet.control
+++ b/noncore/applets/wirelessapplet/opie-wirelessapplet.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/system
Maintainer: Michael 'Mickey' Lauer <mickey@tm.informatik.uni-frankfurt.de>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION.1
Depends: task-opie-minimal
Description: Wireless Applet
A wireless network card status taskbar applet for the Opie environment
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/apps/odict/configdlg.cpp b/noncore/apps/odict/configdlg.cpp
index 400298d..2103df9 100644
--- a/noncore/apps/odict/configdlg.cpp
+++ b/noncore/apps/odict/configdlg.cpp
@@ -29,20 +29,11 @@
#include <qlineedit.h>
#include <qstringlist.h>
-#include <opie/otabwidget.h>
-
ConfigDlg::ConfigDlg(QWidget *parent, const char *name, bool modal) : QDialog(parent, name, modal)
{
setCaption( tr( "Options" ) );
QVBoxLayout *vbox_layout = new QVBoxLayout( this );
- tab = new OTabWidget( this, "OTabWidget_tab", OTabWidget::Global, OTabWidget::Bottom );
- vbox_layout->addWidget( tab );
-
- /*general settings*/
- settings_tab = new QWidget( tab , "settings_tab" );
-
- /*searchmethods*/
- search_tab = new QWidget( tab , "search_tab" );
+ search_tab = new QWidget( this , "search_tab" );
QVBoxLayout *vbox_layout_searchtab = new QVBoxLayout( search_tab, 4 , 4 ,"blah" );
QHBox *hbox = new QHBox( search_tab );
@@ -51,18 +42,17 @@ ConfigDlg::ConfigDlg(QWidget *parent, const char *name, bool modal) : QDialog(pa
loadSearchMethodNames();
QVBox *vbox = new QVBox( hbox );
- new_button = new QPushButton( "New" , vbox );
- change_button = new QPushButton( "Change" , vbox );
- delete_button = new QPushButton( "Delete" , vbox );
+ new_button = new QPushButton( tr( "New" ) , vbox );
+ change_button = new QPushButton( tr( "Change" ) , vbox );
+ delete_button = new QPushButton( tr( "Delete" ) , vbox );
connect( new_button, SIGNAL( clicked() ), this, SLOT( slotNewMethod() ) );
connect( change_button, SIGNAL( clicked() ), this, SLOT( slotChangeMethod() ));
connect( delete_button, SIGNAL( clicked() ), this, SLOT( slotDeleteMethod() ));
vbox_layout_searchtab->addWidget( hbox );
- /*add the tabs and maximize*/
- tab->addTab( settings_tab, "pass", tr( "General Settings" ) );
- tab->addTab( search_tab, "zoom", tr( "Searchmethods" ) );
+ vbox_layout->addWidget( search_tab );
+
showMaximized();
}
diff --git a/noncore/apps/odict/configdlg.h b/noncore/apps/odict/configdlg.h
index e3ef3ce..6c85989 100644
--- a/noncore/apps/odict/configdlg.h
+++ b/noncore/apps/odict/configdlg.h
@@ -8,7 +8,6 @@
**************************************************************************/
class QWidget;
-class OTabWidget;
class QListView;
class QPushButton;
@@ -22,7 +21,6 @@ class ConfigDlg : public QDialog
ConfigDlg(QWidget *parent, const char *name, bool modal=FALSE );
private:
- OTabWidget *tab;
QWidget *settings_tab, *search_tab;
QListView *list;
QPushButton *new_button, *change_button, *delete_button;
diff --git a/noncore/apps/odict/odict.cpp b/noncore/apps/odict/odict.cpp
index 2028701..010545e 100644
--- a/noncore/apps/odict/odict.cpp
+++ b/noncore/apps/odict/odict.cpp
@@ -41,7 +41,7 @@ ODict::ODict() : QMainWindow()
activated_name = QString::null;
vbox = new QVBox( this );
- setCaption( tr( "OPIE-Dictionary" ) );
+ setCaption( tr( "Opie-Dictionary" ) );
setupMenus();
QHBox *hbox = new QHBox( vbox );
@@ -76,7 +76,6 @@ void ODict::loadConfig()
Config cfg ( "odict" );
cfg.setGroup( "generalsettings" );
casesens = cfg.readEntry( "casesens" ).toInt();
- regexp = cfg.readEntry( "regexp" ).toInt();
QString lastDict = cfg.readEntry( "lastdict" );
int i = 0, e = 0;
@@ -127,7 +126,6 @@ void ODict::saveConfig()
Config cfg ( "odict" );
cfg.setGroup( "generalsettings" );
cfg.writeEntry( "casesens" , casesens );
- cfg.writeEntry( "regexp" , regexp );
cfg.writeEntry( "lastdict" , query_co->currentText() );
}
@@ -185,13 +183,6 @@ void ODict::slotSetParameter( int count )
casesens = true;
}
- if ( count == 1 )
- {
- if ( regexp )
- regexp = false;
- else
- regexp = true;
- }
saveConfig();
}
@@ -222,7 +213,6 @@ void ODict::setupMenus()
parameter = new QPopupMenu( menu );
connect( parameter, SIGNAL( activated( int ) ), this, SLOT( slotSetParameter( int ) ) );
parameter->insertItem( tr( "C&ase sensitive" ), 0 ,0 );
- parameter->insertItem( tr( "Allow &reg. expressions" ), 2 );
parameter->insertSeparator();
menu->insertItem( tr( "Settings" ) , settings );
diff --git a/noncore/apps/odict/odict.h b/noncore/apps/odict/odict.h
index 9c037ea..be2a532 100644
--- a/noncore/apps/odict/odict.h
+++ b/noncore/apps/odict/odict.h
@@ -49,7 +49,7 @@ class ODict : public QMainWindow
void setupMenus();
- bool casesens, completewords, regexp;
+ bool casesens, completewords;
void loadConfig();
void saveConfig();
diff --git a/noncore/apps/odict/odict.pro b/noncore/apps/odict/odict.pro
index 427a5c6..82f6a41 100644
--- a/noncore/apps/odict/odict.pro
+++ b/noncore/apps/odict/odict.pro
@@ -4,7 +4,7 @@ CONFIG = qt warn_on debug
HEADERS = odict.h \
searchmethoddlg.h \
configdlg.h \
- dingwidget.h \
+ dingwidget.h
SOURCES = main.cpp \
odict.cpp \
diff --git a/noncore/apps/odict/opie-odict.control b/noncore/apps/odict/opie-odict.control
index 2fa731f..f684716 100644
--- a/noncore/apps/odict/opie-odict.control
+++ b/noncore/apps/odict/opie-odict.control
@@ -4,7 +4,7 @@ Priority: optional
Section: applications
Maintainer: Carsten Niehaus <cniehaus@handhelds.org>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Dictionarylookupprogram
Look up words :)
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/apps/tableviewer/db/xmlsource.cpp b/noncore/apps/tableviewer/db/xmlsource.cpp
index 7418a85..94fec36 100644
--- a/noncore/apps/tableviewer/db/xmlsource.cpp
+++ b/noncore/apps/tableviewer/db/xmlsource.cpp
@@ -21,6 +21,8 @@
#include <qdict.h>
#include <stdlib.h>
#include <qtextstream.h>
+#include "../xmlencodeattr.h"
+
DBXml::DBXml(DBStore *d)
@@ -68,7 +70,7 @@ bool DBXml::saveSource(QIODevice *outDev)
outstream << "type=\""
<< TVVariant::typeToName(it.current()->type())
<< "\">";
- outstream << it.current()->name() << "</key>" << endl;
+ outstream << encodeAttr(it.current()->name()) << "</key>" << endl;
}
++it;
}
@@ -94,7 +96,7 @@ bool DBXml::saveSource(QIODevice *outDev)
<< date.month() << "/"
<< date.year();
} else {
- outstream << elem->toQString(i);
+ outstream << encodeAttr(elem->toQString(i));
}
outstream << "</KEYID" << i << ">" << endl;
}
diff --git a/noncore/apps/tableviewer/tableviewer.pro b/noncore/apps/tableviewer/tableviewer.pro
index 6f73400..f047e0b 100644
--- a/noncore/apps/tableviewer/tableviewer.pro
+++ b/noncore/apps/tableviewer/tableviewer.pro
@@ -3,6 +3,7 @@ CONFIG = qt warn_on debug
DESTDIR = $(OPIEDIR)/bin
SUBDIRS = db ui
HEADERS = tableviewer.h \
+ xmlencodeattr.h \
ui/commonwidgets.h \
ui/tvbrowseview.h \
ui/tvlistview.h \
@@ -17,6 +18,7 @@ HEADERS = tableviewer.h \
db/csvsource.h
SOURCES = main.cpp \
tableviewer.cpp \
+ xmlencodeattr.cpp \
ui/commonwidgets.cpp \
ui/tvbrowseview.cpp \
ui/tvfilterview.cpp \
diff --git a/noncore/apps/tableviewer/ui/tvbrowseview.cpp b/noncore/apps/tableviewer/ui/tvbrowseview.cpp
index f5f2555..22bac55 100644
--- a/noncore/apps/tableviewer/ui/tvbrowseview.cpp
+++ b/noncore/apps/tableviewer/ui/tvbrowseview.cpp
@@ -23,6 +23,7 @@
#include <qtextview.h>
#include <qtextbrowser.h>
#include <qlayout.h>
+#include "../xmlencodeattr.h"
/*!
\class TVBrowseView
@@ -102,12 +103,12 @@ void TVBrowseView::setDisplayText(const DataElem *element)
if (element->hasValidValue(it.currentKey())) {
if(it.currentKey() == ts->current_column) {
rep += "<A name=\"ckey\"></A><B><FONT COLOR=#FF0000>"
- + it.current()->name()
+ + encodeAttr(it.current()->name())
+ ":</FONT></B> ";
} else {
- rep += "<B>" + it.current()->name() + ":</B> ";
+ rep += "<B>" + encodeAttr(it.current()->name()) + ":</B> ";
}
- rep += element->toQString(it.currentKey()) + "<BR>";
+ rep += encodeAttr(element->toQString(it.currentKey())) + "<BR>";
}
++it;
}
diff --git a/noncore/apps/tableviewer/xmlencodeattr.cpp b/noncore/apps/tableviewer/xmlencodeattr.cpp
new file mode 100644
index 0000000..de264f7
--- a/dev/null
+++ b/noncore/apps/tableviewer/xmlencodeattr.cpp
@@ -0,0 +1,48 @@
+/*
+ * xmlencodeattr.h
+ *
+ * copyright : (c) 2003 by Joseph Wenninger
+ * except for a small modification it's identical to qdom.cpp:encodeAttr
+ * email : jowenn@handhelds.org
+ *
+ */
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "xmlencodeattr.h"
+QString encodeAttr( const QString& str )
+{
+ QString tmp( str );
+ uint len = tmp.length();
+ uint i = 0;
+ while ( i < len ) {
+ if ( tmp[(int)i] == '<' ) {
+ tmp.replace( i, 1, "&lt;" );
+ len += 3;
+ i += 4;
+ } else if ( tmp[(int)i] == '"' ) {
+ tmp.replace( i, 1, "&quot;" );
+ len += 5;
+ i += 6;
+ } else if ( tmp[(int)i] == '&' ) {
+ tmp.replace( i, 1, "&amp;" );
+ len += 4;
+ i += 5;
+ } else if ( tmp[(int)i] == '>' ) {
+ tmp.replace( i, 1, "&gt;" );
+ len += 3;
+ i += 4;
+ } else {
+ ++i;
+ }
+ }
+
+ return tmp;
+}
+
diff --git a/noncore/apps/tableviewer/xmlencodeattr.h b/noncore/apps/tableviewer/xmlencodeattr.h
new file mode 100644
index 0000000..5fd3b95
--- a/dev/null
+++ b/noncore/apps/tableviewer/xmlencodeattr.h
@@ -0,0 +1,26 @@
+/*
+ * xmlencodeattr.h
+ *
+ * copyright : (c) 2003 by Joseph Wenninger
+ * except for a small modification it's identical to qdom.cpp:encodeAttr
+ * email : jowenn@handhelds.org
+ *
+ */
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef _XML_ENCODE_ATTR_
+#define _XML_ENCODE_ATTR_
+
+#include <qstring.h>
+
+QString encodeAttr( const QString& str );
+
+#endif
+
diff --git a/noncore/comm/keypebble/keypebble.pro b/noncore/comm/keypebble/keypebble.pro
index 04f4b64..7af60f9 100644
--- a/noncore/comm/keypebble/keypebble.pro
+++ b/noncore/comm/keypebble/keypebble.pro
@@ -11,8 +11,7 @@ HEADERS = d3des.h \
krfbserverinfo.h \
kvnc.h \
kvncconndlg.h \
- kvncbookmarkdlg.h \
- version.h \
+ kvncbookmarkdlg.h \
vncauth.h
SOURCES = d3des.c \
vncauth.c \
diff --git a/noncore/comm/keypebble/opie-keypebble.control b/noncore/comm/keypebble/opie-keypebble.control
index 123f307..23e4e89 100644
--- a/noncore/comm/keypebble/opie-keypebble.control
+++ b/noncore/comm/keypebble/opie-keypebble.control
@@ -5,7 +5,7 @@ Section: opie/applications
Maintainer: Martin Imobersteg <imm@gmx.ch>
Architecture: arm
Arch: iPAQ
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: VNC Viewer
Virtual Network Computing (VNC) viewer
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/comm/mobilemsg/opie-mobilemsg.control b/noncore/comm/mobilemsg/opie-mobilemsg.control
index 1713af5..c5fbc7f 100644
--- a/noncore/comm/mobilemsg/opie-mobilemsg.control
+++ b/noncore/comm/mobilemsg/opie-mobilemsg.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/comm
Maintainer: Bruno Rodrigues <bruno.rodrigues@litux.org>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Mobile Messaging
For the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/decorations/flat/opie-deco-flat.control b/noncore/decorations/flat/opie-deco-flat.control
index ae64aae..311f37b 100644
--- a/noncore/decorations/flat/opie-deco-flat.control
+++ b/noncore/decorations/flat/opie-deco-flat.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/decorations
Maintainer: Robert Griebl <sandman@handhelds.org>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION.1
Depends: task-opie-minimal
Description: OPIE window decoration style
Flat window decoration style for OPIE.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/decorations/liquid/opie-deco-liquid.control b/noncore/decorations/liquid/opie-deco-liquid.control
index 2f91612..c14b8bf 100644
--- a/noncore/decorations/liquid/opie-deco-liquid.control
+++ b/noncore/decorations/liquid/opie-deco-liquid.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/decorations
Maintainer: Robert Griebl <sandman@handhelds.org>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION.1
Depends: task-opie-minimal
Description: OPIE window decoration style
Liquid (KDE3) window decoration style for OPIE.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/decorations/polished/opie-deco-polished.control b/noncore/decorations/polished/opie-deco-polished.control
index 4d4b4e3..15afa83 100644
--- a/noncore/decorations/polished/opie-deco-polished.control
+++ b/noncore/decorations/polished/opie-deco-polished.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/decorations
Maintainer: Robert Griebl <sandman@handhelds.org>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION.1
Depends: task-opie-minimal
Description: OPIE window decoration style
Blended window decoration style for OPIE.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/backgammon/backgammon.control b/noncore/games/backgammon/backgammon.control
index b75bc60..6468181 100644
--- a/noncore/games/backgammon/backgammon.control
+++ b/noncore/games/backgammon/backgammon.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/games
Maintainer: Ralf Waspe <rwaspe@web.de>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Backgammon Game
A Backgammon game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/backgammon/backgammon.cpp b/noncore/games/backgammon/backgammon.cpp
index db1a058..06523f1 100644
--- a/noncore/games/backgammon/backgammon.cpp
+++ b/noncore/games/backgammon/backgammon.cpp
@@ -135,8 +135,6 @@ BackGammon::BackGammon(QWidget* parent, const char* name, WFlags fl)
//the main area
QBoxLayout* layout=new QBoxLayout(mainarea,QBoxLayout::TopToBottom);
area=new QCanvas(235,235);
- QColor bgColor=palette().color(QPalette::Normal,QColorGroup::Background);
- area->setBackgroundColor(bgColor);
boardview=new BackGammonView(area,mainarea);
boardview->setMaximumHeight(240);
layout->addWidget(boardview);
diff --git a/noncore/games/backgammon/backgammon.h b/noncore/games/backgammon/backgammon.h
index d803489..e3276f1 100644
--- a/noncore/games/backgammon/backgammon.h
+++ b/noncore/games/backgammon/backgammon.h
@@ -18,6 +18,7 @@ class BackGammon : public QMainWindow
{
Q_OBJECT
private:
+ //GUI
//the "status" bar
QLabel* message;
//the main drawing area
diff --git a/noncore/games/bounce/kbounce.cpp b/noncore/games/bounce/kbounce.cpp
index 5d8aba3..50f4ef6 100644
--- a/noncore/games/bounce/kbounce.cpp
+++ b/noncore/games/bounce/kbounce.cpp
@@ -113,8 +113,8 @@ void KJezzball::newGame()
void KJezzball::about()
{
- QMessageBox::information( this, "About",
- "Written by: Stefan Schimanski\n"
+ QMessageBox::information( this, tr("About"),
+ tr("Written by: Stefan Schimanski\n"
"Ported by: Martin Imobersteg\n"
"\n"
"Click to form walls.\n"
@@ -122,7 +122,7 @@ void KJezzball::about()
"Try to reduce total space by 75%.\n"
"\n"
"This program is distributed under\n"
- "the terms of the GPL v2." );
+ "the terms of the GPL v2.") );
}
void KJezzball::closeGame()
diff --git a/noncore/games/buzzword/buzzword.cpp b/noncore/games/buzzword/buzzword.cpp
index b870a59..97a17a1 100644
--- a/noncore/games/buzzword/buzzword.cpp
+++ b/noncore/games/buzzword/buzzword.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2002 Martin Imobersteg <imm@gmx.ch>
+ * Copyright (C) 2002 Martin Imobersteg <imm@gmx.ch>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
@@ -102,14 +102,14 @@ void BuzzWord::drawGrid()
f.close();
grid = new QGrid(gridVal, this);
- grid->setFixedSize(240,240);
+// grid->setFixedSize( 480, 480 );
for( int c = 0 ; c < gridVal ; c++ )
{
for( int r = 0 ; r < gridVal ; r++ )
{
uint pos = rand() % l. count();
-
+
QString word = QStringList::split(" ", l[pos]).join("\n");
BuzzItem* bi = new BuzzItem( c, r, word, grid );
connect( bi, SIGNAL(clicked(int, int)), this, SLOT(clicked(int,int)) );
@@ -128,7 +128,7 @@ void BuzzWord::clicked(int row, int column)
int columnTotal = 0;
map[column][row] = 1;
-
+
for( int c = 0 ; c < gridVal ; c++ )
{
for( int r = 0 ; r < gridVal ; r++ )
diff --git a/noncore/games/fifteen/opie-fifteen.control b/noncore/games/fifteen/opie-fifteen.control
index 662fd03..8fa355f 100644
--- a/noncore/games/fifteen/opie-fifteen.control
+++ b/noncore/games/fifteen/opie-fifteen.control
@@ -5,7 +5,7 @@ Section: opie/games
Maintainer: Martin Imobersteg <imm@gmx.ch>
Architecture: arm
Arch: iPAQ
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Fifteen pieces game
A game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/go/opie-go.control b/noncore/games/go/opie-go.control
index 061c02c..24929de 100644
--- a/noncore/games/go/opie-go.control
+++ b/noncore/games/go/opie-go.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/games
Maintainer: Warwick Allison <warwick@trolltech.com>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: The game of Go
A game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/kpacman/kpacman.cpp b/noncore/games/kpacman/kpacman.cpp
index 812e9ea..df27c76 100644
--- a/noncore/games/kpacman/kpacman.cpp
+++ b/noncore/games/kpacman/kpacman.cpp
@@ -34,7 +34,7 @@ Kpacman::Kpacman(QWidget *parent, const char *name)
view = new KpacmanWidget( this, QString(name)+"widget");
m_layout->addWidget( view, 0, 0 );
- setCaption( "KPacman" );
+ setCaption( tr("KPacman") );
view->referee->setFocus();
diff --git a/noncore/games/mindbreaker/opie-mindbreaker.control b/noncore/games/mindbreaker/opie-mindbreaker.control
index 7623d6a..7b5ead6 100644
--- a/noncore/games/mindbreaker/opie-mindbreaker.control
+++ b/noncore/games/mindbreaker/opie-mindbreaker.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/games
Maintainer: Martin Imobersteg <imm@gmx.ch>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Game: crack the coloured code
A game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/minesweep/opie-minesweep.control b/noncore/games/minesweep/opie-minesweep.control
index 7236cf8..32f0352 100644
--- a/noncore/games/minesweep/opie-minesweep.control
+++ b/noncore/games/minesweep/opie-minesweep.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/games
Maintainer: Martin Imobersteg <imm@gmx.ch>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Game: find the mines
A game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/parashoot/opie-parashoot.control b/noncore/games/parashoot/opie-parashoot.control
index ad955f5..758d24d 100644
--- a/noncore/games/parashoot/opie-parashoot.control
+++ b/noncore/games/parashoot/opie-parashoot.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/games
Maintainer: Martin Imobersteg <imm@gmx.ch>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Game: shoot the parachutists
A game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/qasteroids/opie-qasteroids.control b/noncore/games/qasteroids/opie-qasteroids.control
index 49cc6b2..25a49b4 100644
--- a/noncore/games/qasteroids/opie-qasteroids.control
+++ b/noncore/games/qasteroids/opie-qasteroids.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/games
Maintainer: Martin Jones <mjones@trolltech.com>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Game: shoot the asteroids
A game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/sfcave-sdl/sfcave-sdl.control b/noncore/games/sfcave-sdl/sfcave-sdl.control
index c017280..9bf43ba 100644
--- a/noncore/games/sfcave-sdl/sfcave-sdl.control
+++ b/noncore/games/sfcave-sdl/sfcave-sdl.control
@@ -2,9 +2,9 @@ Files: bin/sfcave-sdl apps/Games/sfcave-sdl.desktop pics/sfcave-sdl sounds/sfcav
Package: sfcave-sdl
Priority: optional
Section: Games
-Version: $QPE_VERSION-$SUB_VERSION
Architecture: arm
Maintainer: Andy Qua (andy.qua@blueyonder.co.uk)
Depends: libSDL,libSDL_-mixer,libSDL-image,libSDL-gfx
Description: SFCave SDL for the Zaurus. Fly though the cave avoiding the walls.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/sfcave/opie-sfcave.control b/noncore/games/sfcave/opie-sfcave.control
index 1566959..0ff3e2c 100644
--- a/noncore/games/sfcave/opie-sfcave.control
+++ b/noncore/games/sfcave/opie-sfcave.control
@@ -4,6 +4,6 @@ Priority: optional
Section: opie/games
Maintainer: Andy Qua <andy.qua@blueyonder.co.uk>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: SFCave for the Zaurus. Fly the dot though the cave avoiding the walls.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/snake/interface.cpp b/noncore/games/snake/interface.cpp
index 0f312ac..68e0f14 100644
--- a/noncore/games/snake/interface.cpp
+++ b/noncore/games/snake/interface.cpp
@@ -100,7 +100,7 @@ void SnakeGame::welcomescreen()
instr->move(canvas.width()/2-w/2, canvas.height()/2-20);
instr->setColor(white);
instr->show();
- QCanvasText* cont = new QCanvasText(tr("Press Any Key To Start"), &canvas);
+ QCanvasText* cont = new QCanvasText(tr("Press any key to start"), &canvas);
w = cont->boundingRect().width();
cont->move(canvas.width()/2-w/2, canvas.height()-20);
cont->setColor(yellow);
@@ -196,7 +196,7 @@ void SnakeGame::wait()
{
waitover = true;
pauseTimer->stop();
- QCanvasText* cont = new QCanvasText(tr("Press Any Key to Begin a New Game."),
+ QCanvasText* cont = new QCanvasText(tr("Press any key to begin a new game."),
&canvas);
cont->setZ(100);
cont->setColor(white);
diff --git a/noncore/games/snake/opie-snake.control b/noncore/games/snake/opie-snake.control
index 3ab6640..ef4fc61 100644
--- a/noncore/games/snake/opie-snake.control
+++ b/noncore/games/snake/opie-snake.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/games
Maintainer: Martin Imobersteg <imm@gmx.ch>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Game: control the snake
A game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/solitaire/canvascardwindow.cpp b/noncore/games/solitaire/canvascardwindow.cpp
index e836eb2..317a02d 100644
--- a/noncore/games/solitaire/canvascardwindow.cpp
+++ b/noncore/games/solitaire/canvascardwindow.cpp
@@ -70,8 +70,8 @@ CanvasCardWindow::CanvasCardWindow(QWidget* parent, const char* name, WFlags f)
menu->insertSeparator();
settings = new QPopupMenu;
- settings->insertItem(tr("&Change Card Backs"), this, SLOT(changeCardBacks()), Key_F2);
- snap_id = settings->insertItem(tr("&Snap To Position"), this, SLOT(snapToggle()), Key_F3);
+ settings->insertItem(tr("&Change card backs"), this, SLOT(changeCardBacks()), Key_F2);
+ snap_id = settings->insertItem(tr("&Snap to position"), this, SLOT(snapToggle()), Key_F3);
settings->setCheckable(TRUE);
menu->insertItem(tr("&Settings"),settings);
@@ -96,11 +96,11 @@ CanvasCardWindow::CanvasCardWindow(QWidget* parent, const char* name, WFlags f)
settings = new QPopupMenu;
settings->setCheckable(TRUE);
- settings->insertItem(tr("Change Card Backs"), this, SLOT(changeCardBacks()));
- snap_id = settings->insertItem(tr("Snap To Position"), this, SLOT(snapToggle()));
+ settings->insertItem(tr("Change card backs"), this, SLOT(changeCardBacks()));
+ snap_id = settings->insertItem(tr("Snap to position"), this, SLOT(snapToggle()));
QString m;
- drawId = settings->insertItem(tr("Turn One Card"), this, SLOT(drawnToggle()));
+ drawId = settings->insertItem(tr("Turn one card"), this, SLOT(drawnToggle()));
menu->insertItem(tr("Settings"),settings);
settings->setCheckable(TRUE);
@@ -283,9 +283,9 @@ void CanvasCardWindow::drawnToggle()
void CanvasCardWindow::updateDraw() {
if(cardGame->cardsDrawn() == 3){
- settings->changeItem(drawId, tr("Turn One Card"));
+ settings->changeItem(drawId, tr("Turn one card"));
} else {
- settings->changeItem(drawId, tr("Turn Three Cards"));
+ settings->changeItem(drawId, tr("Turn three cards"));
}
}
diff --git a/noncore/games/solitaire/opie-solitaire.control b/noncore/games/solitaire/opie-solitaire.control
index 76e7208..5fa521f 100644
--- a/noncore/games/solitaire/opie-solitaire.control
+++ b/noncore/games/solitaire/opie-solitaire.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/games
Maintainer: Martin Imobersteg <imm@gmx.ch>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Game: solitaire card games
A solitaire game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/tetrix/opie-tetrix.control b/noncore/games/tetrix/opie-tetrix.control
index e335507..e901dbf 100644
--- a/noncore/games/tetrix/opie-tetrix.control
+++ b/noncore/games/tetrix/opie-tetrix.control
@@ -5,7 +5,7 @@ Section: opie/games
Maintainer: Martin Imobersteg <imm@gmx.ch>
Architecture: arm
Arch: iPAQ
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Game: control falling blocks
A game for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/tictac/main.cpp b/noncore/games/tictac/main.cpp
index f2ab334..78fb3b7 100644
--- a/noncore/games/tictac/main.cpp
+++ b/noncore/games/tictac/main.cpp
@@ -25,7 +25,7 @@ int main( int argc, char **argv )
}
TicTacToe ttt( n ); // create game
a.setMainWidget( &ttt );
- ttt.setCaption("TicTac");
+ ttt.setCaption( QObject::tr("TicTac") );
ttt.show(); // show widget
return a.exec(); // go
}
diff --git a/noncore/games/tictac/opie-tictac.control b/noncore/games/tictac/opie-tictac.control
index c4ee36c..0074505 100644
--- a/noncore/games/tictac/opie-tictac.control
+++ b/noncore/games/tictac/opie-tictac.control
@@ -4,6 +4,6 @@ Priority: optional
Section: opie/games
Maintainer: ljp <ljp@llornkcor.com>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Tic Tac Toe game.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/wordgame/opie-wordgame.control b/noncore/games/wordgame/opie-wordgame.control
index 3be8e8f..c7dc126 100644
--- a/noncore/games/wordgame/opie-wordgame.control
+++ b/noncore/games/wordgame/opie-wordgame.control
@@ -4,8 +4,8 @@ Priority: optional
Section: opie/games
Maintainer: Martin Imobersteg <imm@gmx.ch>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Crossword game
A crossword game for the Opie environment.
Play against the computer or human opponents.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/games/wordgame/wordgame.cpp b/noncore/games/wordgame/wordgame.cpp
index d3160f4..d46e824 100644
--- a/noncore/games/wordgame/wordgame.cpp
+++ b/noncore/games/wordgame/wordgame.cpp
@@ -290,7 +290,7 @@ bool WordGame::loadRules(const QString &name)
QString title = name;
title.truncate( title.length() - 6 );
- setCaption( title );
+ //setCaption( title );
QString shapepixmap;
ts >> shapepixmap;
@@ -314,7 +314,7 @@ bool WordGame::loadRules(const QString &name)
if ( re++ < 10 ) ts >> e;
}
- QImage shim = Resource::loadImage("wordgame/wordgame_shapes.xpm");
+ QImage shim = Resource::loadImage("wordgame/wordgame_shapes");
shim = shim.smoothScale((re-1)*TileItem::smallWidth(),TileItem::smallHeight());
QPixmap bgshapes;
bgshapes.convertFromImage(shim);
diff --git a/noncore/graphics/drawpad/drawpad.cpp b/noncore/graphics/drawpad/drawpad.cpp
index 4db6208..aac6bc1 100644
--- a/noncore/graphics/drawpad/drawpad.cpp
+++ b/noncore/graphics/drawpad/drawpad.cpp
@@ -278,6 +278,11 @@ DrawPad::DrawPad(QWidget* parent, const char* name)
changeBrushColor(Qt::white);
+}
+
+
+void DrawPad::finishStartup()
+{
// init pages
QFile file(Global::applicationFileName("drawpad", "drawpad.xml"));
@@ -290,6 +295,7 @@ DrawPad::DrawPad(QWidget* parent, const char* name)
}
loadConfig();
+
}
DrawPad::~DrawPad()
diff --git a/noncore/graphics/drawpad/drawpad.h b/noncore/graphics/drawpad/drawpad.h
index 7306228..2cae700 100644
--- a/noncore/graphics/drawpad/drawpad.h
+++ b/noncore/graphics/drawpad/drawpad.h
@@ -40,6 +40,7 @@ public:
QBrush brush() { return m_brush; }
bool antiAliasing();
+ void finishStartup();
private slots:
void newPage();
diff --git a/noncore/graphics/drawpad/drawpadcanvas.cpp b/noncore/graphics/drawpad/drawpadcanvas.cpp
index 025bebb..dec498b 100644
--- a/noncore/graphics/drawpad/drawpadcanvas.cpp
+++ b/noncore/graphics/drawpad/drawpadcanvas.cpp
@@ -182,7 +182,9 @@ void DrawPadCanvas::load(QIODevice* ioDevice)
m_pages = drawPadCanvasXmlHandler.pages();
if (m_pages.isEmpty()) {
- m_pages.append(new Page("", contentsRect().size()));
+ m_pages.append(new Page("",
+ clipper()->width()+(verticalScrollBar()->isVisible()?verticalScrollBar()->width():0),
+ clipper()->height()+(horizontalScrollBar()->isVisible()?horizontalScrollBar()->height():0)));
m_pages.current()->pixmap()->fill(Qt::white);
}
@@ -194,7 +196,11 @@ void DrawPadCanvas::load(QIODevice* ioDevice)
void DrawPadCanvas::initialPage()
{
- m_pages.append(new Page("", 236, 232));
+ m_pages.append(new Page("",
+ clipper()->width()+(verticalScrollBar()->isVisible()?verticalScrollBar()->width():0),
+ clipper()->height()+(horizontalScrollBar()->isVisible()?horizontalScrollBar()->height():0)));
+ //236, 232)); no more fixed sizes
+
m_pages.current()->pixmap()->fill(Qt::white);
resizeContents(m_pages.current()->pixmap()->width(), m_pages.current()->pixmap()->height());
@@ -349,7 +355,10 @@ void DrawPadCanvas::deleteAll()
{
m_pages.clear();
- m_pages.append(new Page("", contentsRect().size()));
+ m_pages.append(new Page("",
+ clipper()->width()+(verticalScrollBar()->isVisible()?verticalScrollBar()->width():0),
+ clipper()->height()+(horizontalScrollBar()->isVisible()?horizontalScrollBar()->height():0)));
+
m_pages.current()->pixmap()->fill(Qt::white);
resizeContents(m_pages.current()->pixmap()->width(), m_pages.current()->pixmap()->height());
@@ -382,7 +391,10 @@ void DrawPadCanvas::deletePage()
m_pages.remove(m_pages.current());
if (m_pages.isEmpty()) {
- m_pages.append(new Page("", contentsRect().size()));
+ m_pages.append(new Page("",
+ clipper()->width()+(verticalScrollBar()->isVisible()?verticalScrollBar()->width():0),
+ clipper()->height()+(horizontalScrollBar()->isVisible()?horizontalScrollBar()->height():0)));
+
m_pages.current()->pixmap()->fill(Qt::white);
}
diff --git a/noncore/graphics/drawpad/exportdialog.cpp b/noncore/graphics/drawpad/exportdialog.cpp
index 5b11c0e..adbd612 100644
--- a/noncore/graphics/drawpad/exportdialog.cpp
+++ b/noncore/graphics/drawpad/exportdialog.cpp
@@ -13,7 +13,7 @@
#include "exportdialog.h"
-#include <qpe/fileselector.h>
+#include <opie/ofileselector.h>
#include <qbuttongroup.h>
#include <qcombobox.h>
@@ -66,9 +66,12 @@ ExportDialog::ExportDialog(uint pageAt, uint pageCount, QWidget* parent, const c
m_pFormatComboBox = new QComboBox(exportGroupBox);
m_pFormatComboBox->insertStrList(QImageIO::outputFormats());
- FileSelector* fileSelector = new FileSelector("image/*", this, "fileselector");
- fileSelector->setNewVisible(false);
- fileSelector->setCloseVisible(false);
+ MimeTypes types; types.insert( tr("All Images"), "image/*" );
+ OFileSelector* fileSelector = new OFileSelector(this, OFileSelector::FileSelector,
+ OFileSelector::Normal,
+ QString::null, QString::null,
+ types );
+ fileSelector->setNameVisible( false );
QVBoxLayout* mainLayout = new QVBoxLayout(this, 4, 4);
selectionButtonGroup->layout()->setSpacing(4);
diff --git a/noncore/graphics/drawpad/importdialog.cpp b/noncore/graphics/drawpad/importdialog.cpp
index 1c447cb..9a59a20 100644
--- a/noncore/graphics/drawpad/importdialog.cpp
+++ b/noncore/graphics/drawpad/importdialog.cpp
@@ -14,7 +14,7 @@
#include "importdialog.h"
#include <qpe/applnk.h>
-#include <qpe/fileselector.h>
+#include <opie/ofileselector.h>
#include <qcheckbox.h>
#include <qimage.h>
@@ -27,10 +27,14 @@ ImportDialog::ImportDialog(QWidget* parent, const char* name)
{
setCaption(tr("DrawPad - Import"));
- m_pFileSelector = new FileSelector("image/*", this, "fileselector");
+ MimeTypes types; types.insert( tr("All images"),"image/*" );
+ m_pFileSelector = new OFileSelector(this,
+ OFileSelector::FileSelector,
+ OFileSelector::Normal,
+ QString::null,
+ QString::null, types );
+ m_pFileSelector->setNameVisible( false );
connect(m_pFileSelector, SIGNAL(fileSelected(const DocLnk&)), this, SLOT(fileChanged()));
- m_pFileSelector->setNewVisible(false);
- m_pFileSelector->setCloseVisible(false);
m_pPreviewLabel = new QLabel(this);
m_pPreviewLabel->setFrameStyle(QFrame::Panel | QFrame::Sunken);
@@ -68,7 +72,7 @@ ImportDialog::~ImportDialog()
const DocLnk* ImportDialog::selected()
{
// FIXME change from pointer to reference -zecke
- DocLnk *lnk = new DocLnk( m_pFileSelector->selectedDocument() );
+ DocLnk *lnk = new DocLnk( m_pFileSelector->selectedDocument() );
return lnk;
}
diff --git a/noncore/graphics/drawpad/importdialog.h b/noncore/graphics/drawpad/importdialog.h
index ef51d7c..ed655a5 100644
--- a/noncore/graphics/drawpad/importdialog.h
+++ b/noncore/graphics/drawpad/importdialog.h
@@ -17,7 +17,7 @@
#include <qdialog.h>
class DocLnk;
-class FileSelector;
+class OFileSelector;
class QCheckBox;
class QLabel;
@@ -37,7 +37,7 @@ private slots:
void preview();
private:
- FileSelector* m_pFileSelector;
+ OFileSelector* m_pFileSelector;
QLabel* m_pPreviewLabel;
QCheckBox* m_pAutomaticPreviewCheckBox;
};
diff --git a/noncore/graphics/drawpad/main.cpp b/noncore/graphics/drawpad/main.cpp
index ec628cc..12f8084 100644
--- a/noncore/graphics/drawpad/main.cpp
+++ b/noncore/graphics/drawpad/main.cpp
@@ -21,7 +21,7 @@ int main(int argc, char **argv)
DrawPad mw; // = new DrawPad();;
a.showMainWidget(&mw );
-
+ mw.finishStartup();
return a.exec();
}
diff --git a/noncore/graphics/drawpad/opie-drawpad.control b/noncore/graphics/drawpad/opie-drawpad.control
index 1c22186..5095b52 100644
--- a/noncore/graphics/drawpad/opie-drawpad.control
+++ b/noncore/graphics/drawpad/opie-drawpad.control
@@ -4,9 +4,9 @@ Priority: optional
Section: opie/applications
Maintainer: Sébastien Prud'homme <prudhomme@laposte.net>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal, libopie1
Description: A note taking program with basic draw tools
DrawPad is an easy note taking program for Zaurus. It can also
be used to draw simple images. DrawPad was developed for the Opie
project, an alternative to the standard Zaurus environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/graphics/drawpad/texttool.h b/noncore/graphics/drawpad/texttool.h
index 3187675..17556a1 100644
--- a/noncore/graphics/drawpad/texttool.h
+++ b/noncore/graphics/drawpad/texttool.h
@@ -22,6 +22,7 @@ class QLineEdit;
class TextToolDialog : public QDialog
{
+ Q_OBJECT
public:
TextToolDialog(QWidget* parent = 0, const char* name = 0);
~TextToolDialog();
diff --git a/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-Pod.control b/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-Pod.control
index 2de15e9..faa041b 100644
--- a/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-Pod.control
+++ b/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-Pod.control
@@ -3,6 +3,6 @@ Files: pics/mediaplayer/skins/Pod
Priority: optional
Section: opie/applications
Maintainer: ljp <llornkcor@handhelds.org>
-Version: $QPE_VERSION-$SUB_VERSION
Description: Opie Mediaplayer's skin.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default-landscape.control b/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default-landscape.control
index 570b25a..4bc3c60 100644
--- a/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default-landscape.control
+++ b/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default-landscape.control
@@ -4,6 +4,6 @@ Priority: optional
Section: opie/playerskins
Maintainer: L.J.Potter <ljp@llornkcor.com>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Landscape skin for opie mediaplayer's
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default.control b/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default.control
index 5cd7509..d076fab 100644
--- a/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default.control
+++ b/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-default.control
@@ -4,6 +4,6 @@ Priority: optional
Section: opie/playerskins
Maintainer: L.J.Potter <ljp@llornkcor.com>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Default skin for opie mediaplayer's
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-techno.control b/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-techno.control
index 0ff1427..ad8c1f8 100644
--- a/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-techno.control
+++ b/noncore/multimedia/mediaplayerskins/opie-mediaplayer2-skin-techno.control
@@ -3,6 +3,6 @@ Files: pics/mediaplayer/skins/techno
Priority: optional
Section: opie/applications
Maintainer: ljp <llornkcor@handhelds.org>
-Version: $QPE_VERSION-$SUB_VERSION
Description: Techno Opie Mediaplayer's skin. Adapted from Qtopia
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/multimedia/opieplayer2/audiowidget.cpp b/noncore/multimedia/opieplayer2/audiowidget.cpp
index 5d929cb..2c54ae6 100644
--- a/noncore/multimedia/opieplayer2/audiowidget.cpp
+++ b/noncore/multimedia/opieplayer2/audiowidget.cpp
@@ -31,20 +31,6 @@
*/
-#include <qpe/qpeapplication.h>
-#include <qpe/resource.h>
-#include <qpe/config.h>
-#include <opie/oticker.h>
-
-#include <qwidget.h>
-#include <qpixmap.h>
-#include <qbutton.h>
-#include <qpainter.h>
-#include <qframe.h>
-#include <qlayout.h>
-#include <qdir.h>
-#include <stdlib.h>
-#include <stdio.h>
#include "audiowidget.h"
#include "mediaplayerstate.h"
@@ -190,7 +176,7 @@ void AudioWidget::loadSkin()
time.setFocusPolicy( QWidget::NoFocus );
time.setAlignment( Qt::AlignCenter );
-
+
// time.setFrame(FALSE);
// changeTextColor( &time );
diff --git a/noncore/multimedia/opieplayer2/audiowidget.h b/noncore/multimedia/opieplayer2/audiowidget.h
index 53dbb88..b436239 100644
--- a/noncore/multimedia/opieplayer2/audiowidget.h
+++ b/noncore/multimedia/opieplayer2/audiowidget.h
@@ -34,14 +34,7 @@
#ifndef AUDIO_WIDGET_H
#define AUDIO_WIDGET_H
-#include <qpainter.h>
-#include <qdrawutil.h>
-#include <qpixmap.h>
-#include <qstring.h>
-#include <qslider.h>
-#include <qframe.h>
#include <qlineedit.h>
-#include <qimage.h>
#include <opie/oticker.h>
diff --git a/noncore/multimedia/opieplayer2/lib.cpp b/noncore/multimedia/opieplayer2/lib.cpp
index d04af08..11ad745 100644
--- a/noncore/multimedia/opieplayer2/lib.cpp
+++ b/noncore/multimedia/opieplayer2/lib.cpp
@@ -31,13 +31,9 @@
*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <qimage.h>
+
#include <qtextstream.h>
-#include <qpe/resource.h>
-#include <qfile.h>
#include <qdir.h>
#include <qgfx_qws.h>
@@ -72,7 +68,7 @@ extern "C" {
using namespace XINE;
-Lib::Lib( InitializationMode initMode, XineVideoWidget* widget )
+Lib::Lib( InitializationMode initMode, XineVideoWidget* widget )
{
m_initialized = false;
m_duringInitialization = false;
@@ -88,6 +84,16 @@ Lib::Lib( InitializationMode initMode, XineVideoWidget* widget )
f.open(IO_WriteOnly);
QTextStream ts( &f );
ts << "misc.memcpy_method:glibc\n";
+ ts << "# uncomment if you experience double speed audio \n #audio.oss_sync_method:softsync\n";
+ ts << "codec.ffmpeg_pp_quality:3\n";
+ ts << "audio.num_buffers:50\n";
+ ts << "audio.size_buffers:4160\n";
+ ts << "video.num_buffers:20\n";
+ ts << "video.size_buffers:4096\n";
+ ts << "audio.out_num_audio_buf:16\n";
+ ts << "audio.out_size_audio_buf:8096\n";
+ ts << "audio.out_size_zero_buf:1024\n";
+ ts << "audio.passthrough_offset:0\n";
f.close();
}
@@ -139,7 +145,7 @@ void Lib::initialize()
xine_event_create_listener_thread (m_queue, xine_event_handler, this);
- ::null_preload_decoders( m_stream );
+ ::null_preload_decoders( m_stream );
m_duringInitialization = false;
}
@@ -191,8 +197,16 @@ int Lib::subVersion() {
int Lib::play( const QString& fileName, int startPos, int start_time ) {
assert( m_initialized );
+ // FIXME actually a hack imho. Should not be needed to dispose the whole stream
+ // but without we get wrong media length reads from libxine for the second media
+ //xine_dispose ( m_stream );
QString str = fileName.stripWhiteSpace();
+
+ //m_stream = xine_stream_new (m_xine, m_audioOutput, m_videoOutput );
+ //m_queue = xine_event_new_queue (m_stream);
+ //xine_event_create_listener_thread (m_queue, xine_event_handler, this);
+
if ( !xine_open( m_stream, QFile::encodeName(str.utf8() ).data() ) ) {
return 0;
}
@@ -243,15 +257,36 @@ int Lib::currentTime() const {
int pos, time, length;
xine_get_pos_length( m_stream, &pos, &time, &length );
- return time/1000;
+ if ( time > 0 ) {
+ return time/1000;
+ } else {
+ return 0;
+ }
}
int Lib::length() const {
assert( m_initialized );
int pos, time, length;
- xine_get_pos_length( m_stream, &pos, &time, &length );
- return length/1000;
+/* dilb: patch to solve the wrong stream length reported to the GUI*/
+ int iRetVal=0, iTestLoop=0;
+
+ do
+ {
+ iRetVal = xine_get_pos_length( m_stream, &pos, &time, &length );
+ if (iRetVal)
+ {/* if the function didn't return 0, then pos, time and length are valid.*/
+ return length/1000;
+ }
+ /*don't poll too much*/
+ usleep(100000);
+ iTestLoop++;
+ }
+ while ( iTestLoop < 10 ); /* if after 1s, we still don't have any
+valid stream, then return -1 (this value could be used to make the stream
+unseekable, but it should never occur!! Mr. Murphy ? :) ) */
+
+ return -1;
}
bool Lib::isSeekable() const {
@@ -366,9 +401,7 @@ void Lib::setScaling( bool scale ) {
void Lib::setGamma( int value ) {
assert( m_initialized );
- //qDebug( QString( "%1").arg(value) );
- /* int gammaValue = ( 100 + value ); */
- ::null_set_videoGamma( m_videoOutput, value );
+ ::null_set_videoGamma( m_videoOutput, value );
}
bool Lib::isScaling() const {
diff --git a/noncore/multimedia/opieplayer2/lib.h b/noncore/multimedia/opieplayer2/lib.h
index 181735c..0ff14d0 100644
--- a/noncore/multimedia/opieplayer2/lib.h
+++ b/noncore/multimedia/opieplayer2/lib.h
@@ -34,12 +34,7 @@
#ifndef ZECKEXINELIB_H
#define ZECKEXINELIB_H
-#include <qcstring.h>
-#include <qstring.h>
-#include <qobject.h>
-
#include <xine.h>
-//#include "xine.h"
#include "threadutil.h"
diff --git a/noncore/multimedia/opieplayer2/mediadetect.cpp b/noncore/multimedia/opieplayer2/mediadetect.cpp
deleted file mode 100644
index 91137db..0000000
--- a/noncore/multimedia/opieplayer2/mediadetect.cpp
+++ b/dev/null
@@ -1,43 +0,0 @@
-#include <qstring.h>
-#include "mediadetect.h"
-
-
-MediaDetect::MediaDetect() {
-}
-
-MediaDetect::~MediaDetect() {
-}
-
-char MediaDetect::videoOrAudio( const QString& fileName ) {
- if( (fileName.lower()).right(4) == ".avi" ||
- (fileName.lower()).right(4) == ".mpg" ||
- (fileName.lower()).right(4) == ".asf" ||
- (fileName.lower()).right(4) == ".mov" ||
- (fileName.lower()).right(5) == ".mpeg" ) {
- qDebug("Video out taken");
- return 'v';
- } else if ( (fileName.lower()).right(4) == "·mp1" ||
- (fileName.lower()).right(4) == ".mp3" ||
- (fileName.lower()).right(4) == ".ogg" ||
- (fileName.lower()).right(4) == ".wav" ) {
- qDebug("AUDIO out taken");
- return 'a';
- } else if ( (fileName.lower()).left(7) == "http://" &&
- (fileName.lower()).right(1) == "/" ) {
- return 'a';
- } else {
- return 'f';
- }
-}
-
-bool MediaDetect::isStreaming( const QString& fileName ) {
- // ugly
- if( (fileName.lower()).left(4) == "http" ) {
- return true;
- } else if ( (fileName.lower()).left(3) == "ftp" ) {
- return true;
- } else {
- return false;
- }
-}
-
diff --git a/noncore/multimedia/opieplayer2/mediadetect.h b/noncore/multimedia/opieplayer2/mediadetect.h
deleted file mode 100644
index bd5ea1d..0000000
--- a/noncore/multimedia/opieplayer2/mediadetect.h
+++ b/dev/null
@@ -1,31 +0,0 @@
-
-#ifndef MEDIADETECT_H
-#define MEDIADETECT_H
-
-
-class QString;
-class MediaDetect {
-
-public:
- MediaDetect();
- ~MediaDetect();
-
- /**
- * Look at the filename and decide which gui is to be used
- *
- * @param filename the filename
- * @return the char - a for audio gui, v for video, f for error
- */
- char videoOrAudio( const QString& fileName );
-
- /**
- * Find out if it is a streaming media file
- *
- * @param filename the filename
- * @return if it is a streaming url or not
- */
- bool isStreaming( const QString& fileName );
-
-};
-
-#endif
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.cpp b/noncore/multimedia/opieplayer2/mediaplayer.cpp
index d4396d2..9f51006 100644
--- a/noncore/multimedia/opieplayer2/mediaplayer.cpp
+++ b/noncore/multimedia/opieplayer2/mediaplayer.cpp
@@ -1,15 +1,8 @@
#include <qpe/qpeapplication.h>
-#include <qpe/qlibrary.h>
-#include <qpe/resource.h>
#include <qpe/config.h>
#include <qpe/qcopenvelope_qws.h>
#include <qfileinfo.h>
-#include <qmainwindow.h>
-#include <qmessagebox.h>
-#include <qwidgetstack.h>
-#include <qfile.h>
-
#include "mediaplayer.h"
#include "playlistwidget.h"
#include "audiowidget.h"
@@ -19,14 +12,12 @@
#include "mediaplayerstate.h"
-// for setBacklight()
+ // for setBacklight()
#include <linux/fb.h>
#include <sys/file.h>
#include <sys/ioctl.h>
-
-
#define FBIOBLANK 0x4611
MediaPlayer::MediaPlayer( PlayListWidget &_playList, MediaPlayerState &_mediaPlayerState, QObject *parent, const char *name )
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.h b/noncore/multimedia/opieplayer2/mediaplayer.h
index cbe4d86..34ff064 100644
--- a/noncore/multimedia/opieplayer2/mediaplayer.h
+++ b/noncore/multimedia/opieplayer2/mediaplayer.h
@@ -34,9 +34,6 @@
#ifndef MEDIA_PLAYER_H
#define MEDIA_PLAYER_H
-#include <qmainwindow.h>
-#include <qframe.h>
-
#include "xinecontrol.h"
#include "playlistwidget.h"
diff --git a/noncore/multimedia/opieplayer2/mediawidget.cpp b/noncore/multimedia/opieplayer2/mediawidget.cpp
index 3953d92..b1f88c9 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.cpp
+++ b/noncore/multimedia/opieplayer2/mediawidget.cpp
@@ -20,6 +20,8 @@
Boston, MA 02111-1307, USA.
*/
+#include <assert.h>
+
#include "mediawidget.h"
#include "playlistwidget.h"
#include "skin.h"
diff --git a/noncore/multimedia/opieplayer2/om3u.cpp b/noncore/multimedia/opieplayer2/om3u.cpp
index 841d950..7183fb4 100644
--- a/noncore/multimedia/opieplayer2/om3u.cpp
+++ b/noncore/multimedia/opieplayer2/om3u.cpp
@@ -74,15 +74,9 @@ void Om3u::readM3u() {
append(s);
// qDebug(s);
} else { // is url
- s.replace( QRegExp( "%20" )," " );
QString name;
-// if( name.left( 4 ) == "http" ) {
-// name = s.right( s.length() - 7 );
-// } else {
- name = s;
-// }
+ name = s;
append(name);
-// qDebug(name);
}
}
}
@@ -147,7 +141,7 @@ void Om3u::remove(const QString &filePath) { //removes from m3u list
for ( QStringList::ConstIterator it = begin(); it != end(); ++it ) {
currentFile=*it;
// qDebug(*it);
-
+
if( filePath != currentFile)
list += currentFile+"\n";
}
diff --git a/noncore/multimedia/opieplayer2/opie-mediaplayer2-codecs.control b/noncore/multimedia/opieplayer2/opie-mediaplayer2-codecs.control
new file mode 100644
index 0000000..0e71fc5
--- a/dev/null
+++ b/noncore/multimedia/opieplayer2/opie-mediaplayer2-codecs.control
@@ -0,0 +1,10 @@
+Package: opie-mediaplayer2-codecs
+Files: root/usr/lib/libao.so* root/usr/lib/libogg* root/usr/lib/libvorbisidec.so* root/usr/lib/libxine.so* root/usr/lib/xine/*
+Section: opie/multimedia
+Essential: no
+Priority: optional
+Version: 0.7-$SUB_VERSION.3
+Architecture: arm
+Maintainer: Maximilian Reiss <harlekin@handhelds.org>
+Depends: libc6 (>= 2.1), opie-mediaplayer2
+Description: Codecs for opieplayer 2
diff --git a/noncore/multimedia/opieplayer2/opie-mediaplayer2-codecs.postinst b/noncore/multimedia/opieplayer2/opie-mediaplayer2-codecs.postinst
new file mode 100755
index 0000000..8e60212
--- a/dev/null
+++ b/noncore/multimedia/opieplayer2/opie-mediaplayer2-codecs.postinst
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+[ "$1" = "configure" ] || exit 1
+
+ldconfig \ No newline at end of file
diff --git a/noncore/multimedia/opieplayer2/opie-mediaplayer2.control b/noncore/multimedia/opieplayer2/opie-mediaplayer2.control
index c072308..10c5d19 100644
--- a/noncore/multimedia/opieplayer2/opie-mediaplayer2.control
+++ b/noncore/multimedia/opieplayer2/opie-mediaplayer2.control
@@ -4,8 +4,8 @@ Priority: optional
Section: opie/applications
Maintainer: L.J.Potter <ljp@llornkcor.com>, Maximilian Reiss <harlekin@handhelds.org>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
-Depends: task-opie-minimal, libopie1, zlib1g, opie-mediaplayer2-skin-default | opie-mediaplayer2-skin-default-landscape , libxine1 | opie-mediaplayer-codecs
+Depends: task-opie-minimal, libopie1, zlib1g, libstdc++2.10-glibc2.2, opie-mediaplayer2-skin-default | opie-mediaplayer2-skin-default-landscape , libxine1 | opie-mediaplayer2-codecs
Description: The Opie media player
The mediaplayer for Opie. It plays mp3, mpeg, wav, ogg, quicktime, divx and
more. Also it is streaming capable.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/multimedia/opieplayer2/opieplayer2.pro b/noncore/multimedia/opieplayer2/opieplayer2.pro
index 57cd18f..5dabbab 100644
--- a/noncore/multimedia/opieplayer2/opieplayer2.pro
+++ b/noncore/multimedia/opieplayer2/opieplayer2.pro
@@ -11,7 +11,7 @@ SOURCES = main.cpp \
videowidget.cpp audiowidget.cpp playlistwidget.cpp om3u.cpp mediaplayer.cpp inputDialog.cpp \
frame.cpp lib.cpp nullvideo.c xinevideowidget.cpp volumecontrol.cpp \
playlistwidgetgui.cpp\
- alphablend.c yuv2rgb.c yuv2rgb_arm.c yuv2rgb_arm4l.S \
+ alphablend.c yuv2rgb.c yuv2rgb_arm2.c yuv2rgb_arm4l.S \
threadutil.cpp mediawidget.cpp playlistview.cpp playlistfileview.cpp \
skin.cpp
TARGET = opieplayer2
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp
index 5f750ba..a1a1016 100644
--- a/noncore/multimedia/opieplayer2/playlistwidget.cpp
+++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp
@@ -31,21 +31,11 @@
*/
-#include <qpe/qpetoolbar.h>
-#include <qpe/qpeapplication.h>
-#include <qpe/storage.h>
-#include <qpe/mimetype.h>
-#include <qpe/global.h>
-#include <qpe/resource.h>
-#include <qpe/config.h>
+#include <qtoolbar.h>
#include <opie/ofiledialog.h>
-#include <qdatetime.h>
-#include <qdir.h>
#include <qmessagebox.h>
-#include <qregexp.h>
-#include <qtextstream.h>
#include "playlistselection.h"
#include "playlistwidget.h"
@@ -55,7 +45,6 @@
#include "playlistfileview.h"
//only needed for the random play
-#include <stdlib.h>
#include <assert.h>
PlayListWidget::PlayListWidget( MediaPlayerState &mediaPlayerState, QWidget* parent, const char* name )
@@ -667,6 +656,7 @@ void PlayListWidget::openFile() {
QStringList audio, video, all;
audio << "audio/*";
audio << "playlist/plain";
+ audio << "application/ogg";
audio << "audio/x-mpegurl";
video << "video/*";
@@ -679,27 +669,28 @@ void PlayListWidget::openFile() {
types.insert("Video", video );
QString str = OFileDialog::getOpenFileName( 1,
- cfg.readEntry("LastDirectory",QPEApplication::documentDir()),"",
- types, 0 );
- if(str.left(2) == "//") str=str.right(str.length()-1);
- cfg.writeEntry("LastDirectory" ,QFileInfo(str).dirPath());
+ cfg.readEntry("LastDirectory",QPEApplication::documentDir()),"",
+ types, 0 );
+ if(str.left(2) == "//") {
+ str=str.right(str.length()-1);
+ }
+ cfg.writeEntry( "LastDirectory" ,QFileInfo( str ).dirPath() );
if( !str.isEmpty() ) {
+
qDebug( "Selected filename is " + str );
filename = str;
DocLnk lnk;
- Config cfg( "OpiePlayer" );
- cfg.setGroup("PlayList");
if( filename.right( 3) == "m3u" || filename.right(3) == "pls" ) {
readListFromFile( filename );
} else {
lnk.setName( QFileInfo(filename).baseName() ); //sets name
lnk.setFile( filename ); //sets file name
- d->selectedFiles->addToSelection( lnk);
+ d->selectedFiles->addToSelection( lnk );
writeCurrentM3u();
- d->selectedFiles->setSelectedItem( lnk.name());
+ d->selectedFiles->setSelectedItem( lnk.name() );
}
}
}
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.h b/noncore/multimedia/opieplayer2/playlistwidget.h
index 5230b03..fc305cd 100644
--- a/noncore/multimedia/opieplayer2/playlistwidget.h
+++ b/noncore/multimedia/opieplayer2/playlistwidget.h
@@ -34,18 +34,13 @@
#ifndef PLAY_LIST_WIDGET_H
#define PLAY_LIST_WIDGET_H
-#include <qmainwindow.h>
-#include <qpe/applnk.h>
-#include <qtabwidget.h>
-#include <qpe/fileselector.h>
+
#include <qpushbutton.h>
#include <qpopupmenu.h>
#include <qpe/qcopenvelope_qws.h>
#include "playlistwidgetgui.h"
-
-//class PlayListWidgetPrivate;
class Config;
class QListViewItem;
class QListView;
diff --git a/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp b/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp
index 5fc0c39..293bf45 100644
--- a/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp
+++ b/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp
@@ -31,21 +31,12 @@
*/
-#include <qpe/qpemenubar.h>
-#include <qpe/qpetoolbar.h>
-#include <qpe/fileselector.h>
+
+#include <qtoolbar.h>
#include <qpe/qpeapplication.h>
-#include <qpe/storage.h>
-#include <qpe/mimetype.h>
-#include <qpe/config.h>
-#include <qpe/global.h>
-#include <qpe/resource.h>
-
-#include <qpopupmenu.h>
-#include <qaction.h>
-#include <qcursor.h>
-#include <qdir.h>
+
#include <qlayout.h>
+#include <qmenubar.h>
#include "playlistselection.h"
#include "playlistwidget.h"
@@ -53,9 +44,6 @@
#include "inputDialog.h"
#include "playlistfileview.h"
-//only needed for the random play
-#include <stdlib.h>
-
#include "mediaplayerstate.h"
PlayListWidgetGui::PlayListWidgetGui( MediaPlayerState &_mediaPlayerState, QWidget* parent, const char* name )
@@ -68,14 +56,14 @@ PlayListWidgetGui::PlayListWidgetGui( MediaPlayerState &_mediaPlayerState, QWidg
setToolBarsMovable( FALSE );
// Create Toolbar
- QPEToolBar *toolbar = new QPEToolBar( this );
+ QToolBar *toolbar = new QToolBar( this );
toolbar->setHorizontalStretchable( TRUE );
// Create Menubar
- QPEMenuBar *menu = new QPEMenuBar( toolbar );
+ QMenuBar *menu = new QMenuBar( toolbar );
menu->setMargin( 0 );
- bar = new QPEToolBar( this );
+ bar = new QToolBar( this );
bar->setLabel( tr( "Play Operations" ) );
tbDeletePlaylist = new QPushButton( Resource::loadIconSet( "trash" ), "", bar, "close" );
@@ -148,7 +136,7 @@ PlayListWidgetGui::PlayListWidgetGui( MediaPlayerState &_mediaPlayerState, QWidg
Alayout->setSpacing( 2 );
Alayout->setMargin( 2 );
// no m3u's here please
- audioView = new PlayListFileView( "audio/mpeg;audio/x-wav;audio/x-ogg", "opieplayer2/musicfile", aTab, "Audioview" );
+ audioView = new PlayListFileView( "audio/mpeg;audio/x-wav;application/ogg", "opieplayer2/musicfile", aTab, "Audioview" );
Alayout->addMultiCellWidget( audioView, 0, 0, 0, 1 );
tabWidget->insertTab( aTab, tr( "Audio" ) );
diff --git a/noncore/multimedia/opieplayer2/playlistwidgetgui.h b/noncore/multimedia/opieplayer2/playlistwidgetgui.h
index c965b0d..c0cd37a 100644
--- a/noncore/multimedia/opieplayer2/playlistwidgetgui.h
+++ b/noncore/multimedia/opieplayer2/playlistwidgetgui.h
@@ -35,15 +35,12 @@
#define PLAY_LIST_WIDGET_GUI_H
#include <qmainwindow.h>
-#include <qpe/applnk.h>
#include <qpe/resource.h>
-#include <qpe/qpemenubar.h>
#include <qtabwidget.h>
#include <qpe/fileselector.h>
-#include <qpushbutton.h>
-#include <qpopupmenu.h>
#include <qaction.h>
+#include <qtoolbutton.h>
#include <qslider.h>
#include <qlcdnumber.h>
@@ -53,7 +50,7 @@ class MediaPlayerState;
class PlayListFileView;
class Config;
-class QPEToolBar;
+class QToolBar;
class QListViewItem;
class QListView;
class QPoint;
@@ -80,7 +77,6 @@ public:
setFocusPolicy( QWidget::NoFocus );
setToggleButton( t );
connect( this, t ? SIGNAL( toggled(bool) ) : SIGNAL( clicked() ), handler, slot );
- QPEMenuToolFocusManager::manager()->addWidget( this );
}
};
@@ -121,7 +117,7 @@ protected:
PlayListWidgetPrivate *d; // Private implementation data
QVBox *vbox1;
QVBox *vbox5;
- QPEToolBar *bar;
+ QToolBar *bar;
QWidget *playListTab;
void setActiveWindow(); // need to handle this to show the right view
void setView( char );
diff --git a/noncore/multimedia/opieplayer2/videowidget.cpp b/noncore/multimedia/opieplayer2/videowidget.cpp
index 755cd22..c829e03 100644
--- a/noncore/multimedia/opieplayer2/videowidget.cpp
+++ b/noncore/multimedia/opieplayer2/videowidget.cpp
@@ -31,16 +31,6 @@
*/
-#include <qpe/qpeapplication.h>
-#include <qpe/resource.h>
-#include <qpe/config.h>
-
-
-#include <qwidget.h>
-#include <qpainter.h>
-#include <qpixmap.h>
-#include <qslider.h>
-#include <qdrawutil.h>
#include "videowidget.h"
#include "mediaplayerstate.h"
#include "playlistwidget.h"
@@ -74,7 +64,7 @@ const uint buttonCount = sizeof( skinInfo ) / sizeof( skinInfo[ 0 ] );
}
-VideoWidget::VideoWidget( PlayListWidget &playList, MediaPlayerState &mediaPlayerState, QWidget* parent, const char* name )
+VideoWidget::VideoWidget( PlayListWidget &playList, MediaPlayerState &mediaPlayerState, QWidget* parent, const char* name )
: MediaWidget( playList, mediaPlayerState, parent, name ), scaledWidth( 0 ), scaledHeight( 0 ), videoSliderBeingMoved( false )
{
setCaption( tr("OpiePlayer - Video") );
@@ -95,7 +85,7 @@ VideoWidget::VideoWidget( PlayListWidget &playList, MediaPlayerState &mediaPlaye
}
-VideoWidget::~VideoWidget()
+VideoWidget::~VideoWidget()
{
}
diff --git a/noncore/multimedia/opieplayer2/videowidget.h b/noncore/multimedia/opieplayer2/videowidget.h
index 84bc964..8c6896b 100644
--- a/noncore/multimedia/opieplayer2/videowidget.h
+++ b/noncore/multimedia/opieplayer2/videowidget.h
@@ -34,11 +34,7 @@
#ifndef VIDEO_WIDGET_H
#define VIDEO_WIDGET_H
-#include <qwidget.h>
-#include <qimage.h>
-#include <qpixmap.h>
#include "xinevideowidget.h"
-
#include "mediawidget.h"
class QPixmap;
diff --git a/noncore/multimedia/opieplayer2/xinecontrol.cpp b/noncore/multimedia/opieplayer2/xinecontrol.cpp
index 1c489e3..a392f4a 100644
--- a/noncore/multimedia/opieplayer2/xinecontrol.cpp
+++ b/noncore/multimedia/opieplayer2/xinecontrol.cpp
@@ -36,12 +36,13 @@
#include <qmessagebox.h>
#include <qpe/qcopenvelope_qws.h>
#include <qpe/qpeapplication.h>
+
#include "xinecontrol.h"
#include "mediaplayerstate.h"
#include "xinevideowidget.h"
-XineControl::XineControl( XineVideoWidget *xineWidget,
- MediaPlayerState &_mediaPlayerState,
+XineControl::XineControl( XineVideoWidget *xineWidget,
+ MediaPlayerState &_mediaPlayerState,
QObject *parent, const char *name )
: QObject( parent, name ), mediaPlayerState( _mediaPlayerState ), xineVideoWidget( xineWidget )
{
@@ -50,8 +51,8 @@ XineControl::XineControl( XineVideoWidget *xineWidget,
init();
}
-XineControl::XineControl( XINE::Lib *xine, XineVideoWidget *xineWidget,
- MediaPlayerState &_mediaPlayerState,
+XineControl::XineControl( XINE::Lib *xine, XineVideoWidget *xineWidget,
+ MediaPlayerState &_mediaPlayerState,
QObject *parent, const char *name )
: QObject( parent, name ), libXine( xine ), mediaPlayerState( _mediaPlayerState ), xineVideoWidget( xineWidget )
{
@@ -88,6 +89,7 @@ XineControl::~XineControl() {
}
void XineControl::play( const QString& fileName ) {
+
hasVideoChannel = FALSE;
hasAudioChannel = FALSE;
m_fileName = fileName;
@@ -103,7 +105,6 @@ void XineControl::play( const QString& fileName ) {
mediaPlayerState.setPlaying( true );
MediaPlayerState::DisplayType displayType;
- // qDebug( QString( "libXine->hasVideo() return : %1 ").arg( libXine->hasVideo() ) );
if ( !libXine->hasVideo() ) {
displayType = MediaPlayerState::Audio;
qDebug("HAS AUDIO");
@@ -197,7 +198,6 @@ long XineControl::position() {
// needs to be stopped the media is stopped
QTimer::singleShot( 1000, this, SLOT( position() ) );
}
- // qDebug("POSITION : %d", m_position);
return m_position;
}
diff --git a/noncore/multimedia/opieplayer2/xinecontrol.h b/noncore/multimedia/opieplayer2/xinecontrol.h
index 0e985d6..3f44f2e 100644
--- a/noncore/multimedia/opieplayer2/xinecontrol.h
+++ b/noncore/multimedia/opieplayer2/xinecontrol.h
@@ -35,7 +35,6 @@
#define XINECONTROL_H
#include "lib.h"
-#include <qobject.h>
#include "mediaplayerstate.h"
diff --git a/noncore/multimedia/opieplayer2/yuv2rgb_arm2.c b/noncore/multimedia/opieplayer2/yuv2rgb_arm2.c
new file mode 100644
index 0000000..cbd32e8
--- a/dev/null
+++ b/noncore/multimedia/opieplayer2/yuv2rgb_arm2.c
@@ -0,0 +1,875 @@
+/*
+ * yuv2rgb_arm2.c
+ * Copyright (C) 2002 Frederic 'dilb' Boulay.
+ * All Rights Reserved.
+ *
+ * Author: Frederic Boulay <dilb@handhelds.org>
+ *
+ * you can redistribute this file and/or modify
+ * it under the terms of the GNU General Public License (version 2)
+ * as published by the Free Software Foundation.
+ *
+ * This file is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * The function defined in this file, are derived from work done in the xine
+ * project.
+ * In order to improve performance, by strongly reducing memory bandwidth
+ * needed, the scaling functions are merged with the yuv2rgb function.
+ */
+
+#ifdef __arm__
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <inttypes.h>
+
+#include "yuv2rgb.h"
+#include <xine/xineutils.h>
+
+/* Prototypes of the "local" functions available here: */
+/* first prototype, function called when no scaling is needed: */
+static void arm_rgb16_noscale(yuv2rgb_t*, uint8_t*, uint8_t*, uint8_t*, uint8_t*);
+/* second prototype, function called when no horizontal scaling is needed: */
+static void arm_rgb16_step_dx_32768(yuv2rgb_t*, uint8_t*, uint8_t*, uint8_t*, uint8_t*);
+/* third prototype, function called when scaling is needed for zooming in: */
+static void arm_rgb16_step_dx_inf_32768(yuv2rgb_t*, uint8_t*, uint8_t*, uint8_t*, uint8_t*);
+/* fourth prototype, function called when scaling is needed for zooming out (between 1x and 2x): */
+static void arm_rgb16_step_dx_bet_32768_65536(yuv2rgb_t*, uint8_t*, uint8_t*, uint8_t*, uint8_t*);
+/* fifth prototype, function called when scaling is needed for zooming out (greater than 2x): */
+static void arm_rgb16_step_dx_sup_65536(yuv2rgb_t*, uint8_t*, uint8_t*, uint8_t*, uint8_t*);
+/* sixth prototype, function where the decision of the scaling function to use is made.*/
+static void arm_rgb16_2 (yuv2rgb_t*, uint8_t*, uint8_t*, uint8_t*, uint8_t*);
+
+
+
+
+/* extern function: */
+
+/* Function: */
+void yuv2rgb_init_arm (yuv2rgb_factory_t *this)
+/* This function initialise the member yuv2rgb_fun, if everything is right
+the function optimised for the arm target should be used.*/
+ {
+ if (this->swapped)
+ return; /*no swapped pixel output upto now*/
+
+ switch (this->mode)
+ {
+ case MODE_16_RGB:
+ this->yuv2rgb_fun = arm_rgb16_2;
+ break;
+ default:
+ }
+ }
+
+
+
+/* local functions: */
+
+/* Function: */
+static void arm_rgb16_2 (yuv2rgb_t *this, uint8_t * _dst, uint8_t * _py, uint8_t * _pu, uint8_t * _pv)
+/* This function takes care of applying the right scaling conversion
+(yuv2rgb is included in each scaling function!)*/
+ {
+ if (!this->do_scale)
+ {
+ arm_rgb16_noscale(this, _dst, _py, _pu, _pv);
+ return;
+ }
+ if (this->step_dx<32768)
+ {
+ arm_rgb16_step_dx_inf_32768(this, _dst, _py, _pu, _pv);
+ return;
+ }
+ if (this->step_dx==32768)
+ {
+ arm_rgb16_step_dx_32768(this, _dst, _py, _pu, _pv);
+ return;
+ }
+ if (this->step_dx<65536)
+ {
+ arm_rgb16_step_dx_bet_32768_65536(this, _dst, _py, _pu, _pv);
+ return;
+ }
+ arm_rgb16_step_dx_sup_65536(this, _dst, _py, _pu, _pv);
+ return;
+ }
+
+
+/* Function: */
+static void arm_rgb16_noscale(yuv2rgb_t *this, uint8_t * _dst, uint8_t * _py, uint8_t * _pu, uint8_t * _pv)
+/* This function is called when the source and the destination pictures have the same size.
+ In this case, scaling part is not needed.
+ (This code is probably far from being optimised, in particular, the asm
+ generated is not the most efficient, a pure asm version will probably
+ emerge sooner or later). But at least, this version is faster than what
+ was used before.*/
+ {
+ int height;
+
+ height=this->dest_height;
+
+ while (height>0)
+ {
+ uint16_t *r, *g, *b;
+ uint8_t *py, *py2, *pu, *pv;
+ uint16_t *dst, *dst2;
+ int width;
+ register uint8_t p1y, p1u, p1v;
+
+ height-=2;
+ width=this->dest_width;
+ dst = _dst;
+ dst2 = _dst + this->rgb_stride;
+ py = _py;
+ py2 = _py + this->y_stride;
+ pu = _pu;
+ pv = _pv;
+
+ while (width>0)
+ {
+ width-=2;
+ p1y=*py++;
+ p1u=*pu++;
+ p1v=*pv++;
+
+ r = this->table_rV[p1v];
+ g = (void *) (((uint8_t *)this->table_gU[p1u]) + this->table_gV[p1v]);
+ b = this->table_bU[p1u];
+
+ *dst++ = r[p1y] + g[p1y] + b[p1y];
+ p1y=*py++;
+ *dst++ = r[p1y] + g[p1y] + b[p1y];
+
+ p1y=*py2++;
+
+ *dst2++ = r[p1y] + g[p1y] + b[p1y];
+ p1y=*py2++;
+ *dst2++ = r[p1y] + g[p1y] + b[p1y];
+ }
+ _dst += (this->rgb_stride)<<1;
+ _py += (this->y_stride)<<1;
+ _pu += this->uv_stride;
+ _pv += this->uv_stride;
+ }
+ }
+
+
+/* Function: */
+static void arm_rgb16_step_dx_inf_32768(yuv2rgb_t *this, uint8_t * _dst, uint8_t * _py, uint8_t * _pu, uint8_t * _pv)
+/* This function is called when the destination picture is bigger than the size
+ of the source picture.
+*/
+ {
+ int recal_uv, height; /* Note about recal_uv: bit0 is for
+applying scale on u and v, bit1 is for increments of u and v pointers.*/
+ int dy;
+
+ dy = 0;
+ height = this->dest_height;
+ recal_uv=1; // 1 for evaluation of scale_line, needed the first time
+
+ while(1)
+ {
+ register int dxy;
+ register int dxuv;
+ register uint8_t p1y, p2y;
+ uint8_t dest1y, dest2y;
+ register uint8_t p1u, p2u;
+ register uint8_t p1v, p2v;
+ uint8_t dest1u;
+ uint8_t dest1v;
+ int width;
+ uint8_t *u_buffer;
+ uint8_t *v_buffer;
+ uint16_t *r, *g, *b;
+ uint8_t *py, *pu, *pv;
+ uint16_t *dst;
+
+ dxy = 0;
+ dxuv = 0;
+ width = this->dest_width;
+ u_buffer=this->u_buffer;
+ v_buffer=this->v_buffer;
+ dst = (uint16_t*)_dst;
+ py = _py;
+ pu = _pu;
+ pv = _pv;
+
+ //proceed with line scaling/conversion
+ if ((recal_uv&1)!=0)
+ {
+ recal_uv^=1; //reset bit0.
+ // init values:
+ p1u = *pu++;
+ p2u = *pu++;
+ p1v = *pv++;
+ p2v = *pv++;
+ p1y = *py++;
+ p2y = *py++;
+
+ //width loop (compute all data for a line).
+ while (width>0)
+ {
+ // proceed with u and v first (ok, and y too finally :)) [scaling part]:
+ // evaluate 1u, 1v, and 2y
+ //block1_uvy
+ dest1u=p1u + ((dxuv*(p2u-p1u))>>15);
+ dest1v=p1v + ((dxuv*(p2v-p1v))>>15);
+ // as u and v are evaluated, better save them now
+ *u_buffer++ = (uint8_t)dest1u;
+ *v_buffer++ = (uint8_t)dest1v;
+
+ dest1y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxuv += this->step_dx;
+ dxy += this->step_dx;
+ if (dxuv > 32768)
+ {
+ dxuv -= 32768;
+ p1u = p2u;
+ p2u = *pu++; //idee pour asm, cf cas then, un merge est possible!!!
+ p1v = p2v;
+ p2v = *pv++;
+ }
+ if (dxy > 32768)
+ {
+ dxy -= 32768;
+ p1y = p2y;
+ p2y = *py++;
+ }
+ //end block1_uvy
+
+ //block2_y
+ dest2y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxy += this->step_dx;
+ if (dxy > 32768)
+ {
+ dxy -= 32768;
+ p1y = p2y;
+ p2y = *py++; // idee pour asm, cf cas then, un merge est possible!!!
+ }
+ //end block2_y
+
+ // proceed now with YUV2RGB [conversion part]:
+ // u and v are currently in dest1u and dest1v
+ // the 2 y are in dest1y and dest2y.
+ // RGB(0),DST1(0), RGB(1), DST1(1)
+ r = this->table_rV[dest1v];
+ g = (void *) (((uint8_t *)this->table_gU[dest1u]) + this->table_gV[dest1v]);
+ b = this->table_bU[dest1u];
+
+ *dst++ = r[dest1y] + g[dest1y] + b[dest1y];
+ *dst++ = r[dest2y] + g[dest2y] + b[dest2y];
+
+ width -=2;
+ }
+ }
+ else
+ {
+ // this case is simple, u and v are already evaluated,
+ // Note pour moi: r, g et b pourraient etre reutilises!!
+
+ // init values:
+ p1y = *py++;
+ p2y = *py++;
+
+ //width loop (compute all data for a line).
+ while (width>0)
+ {
+ // proceed with y [scaling part]:
+ // evaluate 2y
+ //block1_y
+ dest1y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxy += this->step_dx;
+ if (dxy > 32768)
+ {
+ dxy -= 32768;
+ p1y = p2y;
+ p2y = *py++;
+ }
+ //end block1_uvy
+
+ //block2_y
+ dest2y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxy += this->step_dx;
+ if (dxy > 32768)
+ {
+ dxy -= 32768;
+ p1y = p2y;
+ p2y = *py++; // idee pour asm, cf cas then, un merge est possible!!!
+ }
+ //end block2_y
+
+ // proceed now with YUV2RGB [conversion part]:
+ // u and v are currently in dest1u and dest1v
+ // the 2 y are in dest1y and dest2y.
+ // RGB(0),DST1(0)
+ dest1u=*u_buffer++;
+ dest1v=*v_buffer++;
+ r = this->table_rV[dest1v];
+ g = (void *) (((uint8_t *)this->table_gU[dest1u]) + this->table_gV[dest1v]);
+ b = this->table_bU[dest1u];
+
+ *dst++ = r[dest1y] + g[dest1y] + b[dest1y];
+ *dst++ = r[dest2y] + g[dest2y] + b[dest2y];
+
+ width -=2;
+ }
+ }
+ // end of line scaling/conversion
+ dy += this->step_dy;
+ _dst += this->rgb_stride;
+
+ while (--height > 0 && dy < 32768)
+ {
+ xine_fast_memcpy (_dst, (uint8_t*)_dst-this->rgb_stride, this->dest_width*2); // *2 because of int8 cast!
+ dy += this->step_dy;
+ _dst += this->rgb_stride;
+ }
+
+
+ if (height <= 0)
+ break;
+
+ do
+ {
+ dy -= 32768;
+ _py += this->y_stride;
+
+ recal_uv^=2; /*bit 0 for reevaluation of scanline, bit 1 for offset.*/
+
+ if ((recal_uv&2)==0)
+ {
+ _pu += this->uv_stride;
+ _pv += this->uv_stride;
+ recal_uv|=1; // if update, then reevaluate scanline!
+ }
+ }
+ while( dy>=32768);
+ }
+ }
+
+
+
+/* Function: */
+static void arm_rgb16_step_dx_32768(yuv2rgb_t *this, uint8_t * _dst, uint8_t * _py, uint8_t * _pu, uint8_t * _pv)
+/* This function is called when the widht of the destination picture is the
+ same as the size of the source picture.
+*/
+ {
+ int recal_uv, height;
+ int dy;
+
+ dy = 0;
+ height=this->dest_height;
+ recal_uv=0;
+
+ while (1)
+ {
+ uint16_t *r, *g, *b;
+ uint8_t *py, *pu, *pv;
+ uint16_t *dst;
+ int width;
+ register uint8_t p1y, p1u, p1v;
+
+ width=this->dest_width;
+ dst = (uint16_t*)_dst;
+ py = _py;
+ pu = _pu;
+ pv = _pv;
+
+ while (width>0)
+ {
+ width-=2;
+ p1y=*py++;
+ p1u=*pu++;
+ p1v=*pv++;
+
+ r = this->table_rV[p1v];
+ g = (void *) (((uint8_t *)this->table_gU[p1u]) + this->table_gV[p1v]);
+ b = this->table_bU[p1u];
+
+ *dst++ = r[p1y] + g[p1y] + b[p1y];
+ p1y=*py++;
+ *dst++ = r[p1y] + g[p1y] + b[p1y];
+ }
+
+
+
+ // end of line scaling/conversion
+ dy += this->step_dy;
+ _dst += this->rgb_stride;
+
+ while (--height > 0 && dy < 32768)
+ {
+ xine_fast_memcpy (_dst, (uint8_t*)_dst-this->rgb_stride, this->dest_width*2); // *2 because of int8 cast!
+ dy += this->step_dy;
+ _dst += this->rgb_stride;
+ }
+
+
+ if (height <= 0)
+ break;
+
+ do
+ {
+ dy -= 32768;
+ _py += this->y_stride;
+
+ recal_uv^=2; /*bit 0 for reevaluation of scanline, bit 1 for offset.*/
+
+ if ((recal_uv&2)==0)
+ {
+ _pu += this->uv_stride;
+ _pv += this->uv_stride;
+ recal_uv|=1; // if update, then reevaluate scanline!
+ }
+ }
+ while( dy>=32768);
+ }
+ }
+
+
+
+/* Function: */
+static void arm_rgb16_step_dx_bet_32768_65536(yuv2rgb_t *this, uint8_t * _dst, uint8_t * _py, uint8_t * _pu, uint8_t * _pv)
+/* This function is called when the destination picture is between the size
+ of the source picture, and half its size.
+*/
+ {
+ int recal_uv, height; /* Note about recal_uv: bit0 is for
+applying scale on u and v, bit1 is for increments of u and v pointers.*/
+ int dy;
+
+ dy = 0;
+ height = this->dest_height;
+ recal_uv=1; // 1 for evaluation of scale_line, needed the first time
+
+ while(1)
+ {
+ register int dxy;
+ register int dxuv;
+ register uint8_t p1y, p2y;
+ uint8_t dest1y, dest2y;
+ register uint8_t p1u, p2u;
+ register uint8_t p1v, p2v;
+ uint8_t dest1u;
+ uint8_t dest1v;
+ int width;
+ uint8_t *u_buffer;
+ uint8_t *v_buffer;
+ uint16_t *r, *g, *b;
+ uint8_t *py, *pu, *pv;
+ uint16_t *dst;
+
+ dxy = 0;
+ dxuv = 0;
+ width = this->dest_width;
+ u_buffer=this->u_buffer;
+ v_buffer=this->v_buffer;
+ dst = (uint16_t*)_dst;
+ py = _py;
+ pu = _pu;
+ pv = _pv;
+
+ //proceed with line scaling/conversion
+ if ((recal_uv&1)!=0)
+ {
+ recal_uv^=1; //reset bit0.
+ // init values:
+ p1u = *pu++;
+ p2u = *pu++;
+ p1v = *pv++;
+ p2v = *pv++;
+ p1y = *py++;
+ p2y = *py++;
+
+ //width loop (compute all data for a line).
+ while (width>0)
+ {
+ // proceed with u and v first (ok, and y too finally :)) [scaling part]:
+ // evaluate 1u, 1v, and 2y
+ //block1_uvy
+ dest1u=p1u + ((dxuv*(p2u-p1u))>>15);
+ dest1v=p1v + ((dxuv*(p2v-p1v))>>15);
+ // as u and v are evaluated, better save them now
+ *u_buffer++ = (uint8_t)dest1u;
+ *v_buffer++ = (uint8_t)dest1v;
+
+ dest1y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxuv += this->step_dx;
+ dxy += this->step_dx;
+ if (dxuv > 65536)
+ {
+ dxuv -= 65536;
+ p1u = *pu++;
+ p2u = *pu++;
+ p1v = *pv++;
+ p2v = *pv++;
+ }
+ else
+ {
+ dxuv -= 32768;
+ p1u = p2u;
+ p2u = *pu++; //idee pour asm, cf cas then, un merge est possible!!!
+ p1v = p2v;
+ p2v = *pv++;
+ }
+ if (dxy > 65536)
+ {
+ dxy -= 65536;
+ p1y = *py++;
+ p2y = *py++;
+ }
+ else
+ {
+ dxy -= 32768;
+ p1y = p2y;
+ p2y = *py++;
+ }
+ //end block1_uvy
+
+ //block2_y
+ dest2y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxy += this->step_dx;
+ if (dxy > 65536)
+ {
+ dxy -= 65536;
+ p1y = *py++;
+ p2y = *py++;
+ }
+ else
+ {
+ dxy -= 32768;
+ p1y = p2y;
+ p2y = *py++; // idee pour asm, cf cas then, un merge est possible!!!
+ }
+ //end block2_y
+
+ // proceed now with YUV2RGB [conversion part]:
+ // u and v are currently in dest1u and dest1v
+ // the 2 y are in dest1y and dest2y.
+ // RGB(0),DST1(0), RGB(1), DST1(1)
+ r = this->table_rV[dest1v];
+ g = (void *) (((uint8_t *)this->table_gU[dest1u]) + this->table_gV[dest1v]);
+ b = this->table_bU[dest1u];
+
+ *dst++ = r[dest1y] + g[dest1y] + b[dest1y];
+ *dst++ = r[dest2y] + g[dest2y] + b[dest2y];
+
+ width -=2;
+ }
+ }
+ else
+ {
+ // this case is simple, u and v are already evaluated,
+ // Note pour moi: r, g et b pourraient etre reutilises!!
+
+ // init values:
+ p1y = *py++;
+ p2y = *py++;
+
+ //width loop (compute all data for a line).
+ while (width>0)
+ {
+ // proceed with y [scaling part]:
+ // evaluate 2y
+ //block1_y
+ dest1y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxy += this->step_dx;
+ if (dxy > 65536)
+ {
+ dxy -= 65536;
+ p1y = *py++;
+ p2y = *py++;
+ }
+ else
+ {
+ dxy -= 32768;
+ p1y = p2y;
+ p2y = *py++;
+ }
+ //end block1_uvy
+
+ //block2_y
+ dest2y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxy += this->step_dx;
+ if (dxy > 65536)
+ {
+ dxy -= 65536;
+ p1y = *py++;
+ p2y = *py++;
+ }
+ else
+ {
+ dxy -= 32768;
+ p1y = p2y;
+ p2y = *py++; // idee pour asm, cf cas then, un merge est possible!!!
+ }
+ //end block2_y
+
+ // proceed now with YUV2RGB [conversion part]:
+ // u and v are currently in dest1u and dest1v
+ // the 2 y are in dest1y and dest2y.
+ // RGB(0),DST1(0)
+ dest1u=*u_buffer++;
+ dest1v=*v_buffer++;
+ r = this->table_rV[dest1v];
+ g = (void *) (((uint8_t *)this->table_gU[dest1u]) + this->table_gV[dest1v]);
+ b = this->table_bU[dest1u];
+
+ *dst++ = r[dest1y] + g[dest1y] + b[dest1y];
+ *dst++ = r[dest2y] + g[dest2y] + b[dest2y];
+
+ width -=2;
+ }
+ }
+ // end of line scaling/conversion
+ dy += this->step_dy;
+ _dst += this->rgb_stride;
+
+ while (--height > 0 && dy < 32768)
+ {
+ xine_fast_memcpy (_dst, (uint8_t*)_dst-this->rgb_stride, this->dest_width*2); // *2 because of int8 cast!
+ dy += this->step_dy;
+ _dst += this->rgb_stride;
+ }
+
+
+ if (height <= 0)
+ break;
+
+ do
+ {
+ dy -= 32768;
+ _py += this->y_stride;
+
+ recal_uv^=2; /*bit 0 for reevaluation of scanline, bit 1 for offset.*/
+
+ if ((recal_uv&2)==0)
+ {
+ _pu += this->uv_stride;
+ _pv += this->uv_stride;
+ recal_uv|=1; // if update, then reevaluate scanline!
+ }
+ }
+ while( dy>=32768);
+ }
+ }
+
+
+
+/* Function: */
+static void arm_rgb16_step_dx_sup_65536(yuv2rgb_t *this, uint8_t * _dst, uint8_t * _py, uint8_t * _pu, uint8_t * _pv)
+/* This function is called when the destination picture is smaller than half
+ the size of the source picture, and half its size.
+*/
+ {
+ int recal_uv, height; /* Note about recal_uv: bit0 is for
+applying scale on u and v, bit1 is for increments of u and v pointers.*/
+ int dy;
+
+ dy = 0;
+ height = this->dest_height;
+ recal_uv=1; // 1 for evaluation of scale_line, needed the first time
+
+ while(1)
+ {
+ register int dxy;
+ register int dxuv;
+ int offdxy, offdxuv;
+ register uint8_t p1y, p2y;
+ uint8_t dest1y, dest2y;
+ register uint8_t p1u, p2u;
+ register uint8_t p1v, p2v;
+ uint8_t dest1u;
+ uint8_t dest1v;
+ int width;
+ uint8_t *u_buffer;
+ uint8_t *v_buffer;
+ uint16_t *r, *g, *b;
+ uint8_t *py, *pu, *pv;
+ uint16_t *dst;
+
+ dxy = 0;
+ dxuv = 0;
+ width = this->dest_width;
+ u_buffer=this->u_buffer;
+ v_buffer=this->v_buffer;
+ dst = (uint16_t*)_dst;
+ py = _py;
+ pu = _pu;
+ pv = _pv;
+
+ //proceed with line scaling/conversion
+ if ((recal_uv&1)!=0)
+ {
+ recal_uv^=1; //reset bit0.
+ // init values:
+ p1u = *pu++;
+ p2u = *pu++;
+ p1v = *pv++;
+ p2v = *pv++;
+ p1y = *py++;
+ p2y = *py++;
+
+ //width loop (compute all data for a line).
+ while (width>0)
+ {
+ // proceed with u and v first (ok, and y too finally :)) [scaling part]:
+ // evaluate 1u, 1v, and 2y
+ //block1_uvy
+ dest1u=p1u + ((dxuv*(p2u-p1u))>>15);
+ dest1v=p1v + ((dxuv*(p2v-p1v))>>15);
+ // as u and v are evaluated, better save them now
+ *u_buffer++ = (uint8_t)dest1u;
+ *v_buffer++ = (uint8_t)dest1v;
+
+ dest1y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxuv += this->step_dx;
+ dxy += this->step_dx;
+
+ offdxuv=((dxuv-1)>>15);
+ dxuv-=offdxuv<<15;
+ pu+=offdxuv-2;
+ pv+=offdxuv-2;
+ p1u = *pu++;
+ p2u = *pu++;
+ p1v = *pv++;
+ p2v = *pv++;
+ offdxy=((dxy-1)>>15);
+ dxy-=offdxy<<15;
+ py+=offdxy-2;
+ p1y = *py++;
+ p2y = *py++;
+
+ //block2_y
+ dest2y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxy += this->step_dx;
+ offdxy=((dxy-1)>>15);
+ dxy-=offdxy<<15;
+ py+=offdxy-2;
+ p1y = *py++;
+ p2y = *py++;
+
+ // proceed now with YUV2RGB [conversion part]:
+ // u and v are currently in dest1u and dest1v
+ // the 2 y are in dest1y and dest2y.
+ // RGB(0),DST1(0), RGB(1), DST1(1)
+ r = this->table_rV[dest1v];
+ g = (void *) (((uint8_t *)this->table_gU[dest1u]) + this->table_gV[dest1v]);
+ b = this->table_bU[dest1u];
+
+ *dst++ = r[dest1y] + g[dest1y] + b[dest1y];
+ *dst++ = r[dest2y] + g[dest2y] + b[dest2y];
+
+ width -=2;
+ }
+ }
+ else
+ {
+ // this case is simple, u and v are already evaluated,
+ // Note pour moi: r, g et b pourraient etre reutilises!!
+
+ // init values:
+ p1y = *py++;
+ p2y = *py++;
+
+ //width loop (compute all data for a line).
+ while (width>0)
+ {
+ // proceed with y [scaling part]:
+ // evaluate 2y
+ //block1_y
+ dest1y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxy += this->step_dx;
+ offdxy=((dxy-1)>>15);
+ dxy-=offdxy<<15;
+ py+=offdxy-2;
+ p1y = *py++;
+ p2y = *py++;
+
+ //end block1_uvy
+
+ //block2_y
+ dest2y=p1y + ((dxy*(p2y-p1y))>>15);
+
+ dxy += this->step_dx;
+ offdxy=((dxy-1)>>15);
+ dxy-=offdxy<<15;
+ py+=offdxy-2;
+ p1y = *py++;
+ p2y = *py++;
+ //end block2_y
+
+ // proceed now with YUV2RGB [conversion part]:
+ // u and v are currently in dest1u and dest1v
+ // the 2 y are in dest1y and dest2y.
+ // RGB(0),DST1(0)
+ dest1u=*u_buffer++;
+ dest1v=*v_buffer++;
+ r = this->table_rV[dest1v];
+ g = (void *) (((uint8_t *)this->table_gU[dest1u]) + this->table_gV[dest1v]);
+ b = this->table_bU[dest1u];
+
+ *dst++ = r[dest1y] + g[dest1y] + b[dest1y];
+ *dst++ = r[dest2y] + g[dest2y] + b[dest2y];
+
+ width -=2;
+ }
+ }
+ // end of line scaling/conversion
+ dy += this->step_dy;
+ _dst += this->rgb_stride;
+
+ while (--height > 0 && dy < 32768)
+ {
+ xine_fast_memcpy (_dst, (uint8_t*)_dst-this->rgb_stride, this->dest_width*2); // *2 because of int8 cast!
+ dy += this->step_dy;
+ _dst += this->rgb_stride;
+ }
+
+
+ if (height <= 0)
+ break;
+
+ do
+ {
+ dy -= 32768;
+ _py += this->y_stride;
+
+ recal_uv^=2; /*bit 0 for reevaluation of scanline, bit 1 for offset.*/
+
+ if ((recal_uv&2)==0)
+ {
+ _pu += this->uv_stride;
+ _pv += this->uv_stride;
+ recal_uv|=1; // if update, then reevaluate scanline!
+ }
+ }
+ while( dy>=32768);
+ }
+ }
+
+
+#endif
diff --git a/noncore/multimedia/opierec/opierec.control b/noncore/multimedia/opierec/opierec.control
index 96c1b69..a1a2b7e 100644
--- a/noncore/multimedia/opierec/opierec.control
+++ b/noncore/multimedia/opierec/opierec.control
@@ -1,10 +1,10 @@
-Package: opie-rec
+Package: opierec
Files: bin/opierec pics/opierec apps/Applications/opierec.desktop
Priority: optional
Section: multimedia/applications
Maintainer: L.J. Potter <ljp@llornkcor.com>
Architecture: arm
-Version: 1.5-2
-Depends: task-opie-minimal
+Depends: opie ($QPE_VERSION)
Description: audio sampling recorder
A simple audio recording/playing application.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/multimedia/opierec/qtrec.cpp b/noncore/multimedia/opierec/qtrec.cpp
index 0307d99..147f63d 100644
--- a/noncore/multimedia/opierec/qtrec.cpp
+++ b/noncore/multimedia/opierec/qtrec.cpp
@@ -449,7 +449,7 @@ void QtRec::init() {
layout1->addMultiCellWidget( timeLabel, 0, 0, 0, 3);
playLabel2 = new QLabel(tab, "PlayLabel2" );
- playLabel2->setText("Play");
+ playLabel2->setText(tr("Play") );
playLabel2->setFixedHeight(18);
layout1->addMultiCellWidget( playLabel2, 0, 0, 4, 4);
@@ -470,7 +470,7 @@ void QtRec::init() {
QLabel *recLabel2;
recLabel2 = new QLabel( tab, "recLabel2" );
- recLabel2->setText("Rec");
+ recLabel2->setText(tr("Rec"));
recLabel2->setFixedHeight(18);
layout1->addMultiCellWidget( recLabel2, 0, 0, 7, 7);
@@ -500,9 +500,9 @@ void QtRec::init() {
ListView1->setSorting( 1, false);
ListView1->addColumn( tr( "Time" ) ); //in seconds
ListView1->setColumnWidth(1,50);
- ListView1->addColumn( "Location");
+ ListView1->addColumn( tr("Location") );
ListView1->setColumnWidth(2,50);
- ListView1->addColumn( "Date");
+ ListView1->addColumn( tr("Date") );
ListView1->setColumnWidth(3,63);
ListView1->setColumnWidthMode(0,QListView::Manual);
@@ -594,10 +594,10 @@ void QtRec::init() {
Layout18->addWidget( bitGroup );
- compressionCheckBox = new QCheckBox ( "Wave Compression (smaller files)", tab_3 );
+ compressionCheckBox = new QCheckBox ( tr("Wave Compression (smaller files)"), tab_3 );
Layout18->addWidget( compressionCheckBox );
- autoMuteCheckBox= new QCheckBox ( "auto Mute", tab_3 );
+ autoMuteCheckBox= new QCheckBox ( tr("auto Mute"), tab_3 );
Layout18->addWidget( autoMuteCheckBox );
Layout19->addLayout( Layout18 );
@@ -644,10 +644,10 @@ void QtRec::init() {
Layout15b->addWidget( OutputSlider );
- outMuteCheckBox = new QCheckBox ( "mute", tab_5 );
+ outMuteCheckBox = new QCheckBox ( tr("mute"), tab_5 );
Layout15->addWidget( outMuteCheckBox );
- inMuteCheckBox = new QCheckBox ( "mute", tab_5 );
+ inMuteCheckBox = new QCheckBox ( tr("mute"), tab_5 );
inMuteCheckBox-> setFocusPolicy ( QWidget::NoFocus );
Layout15b->addWidget( inMuteCheckBox );
@@ -691,10 +691,10 @@ void QtRec::init() {
Layout15b->addWidget( OutputSlider );
- outMuteCheckBox = new QCheckBox ( "mute", tab_3 );
+ outMuteCheckBox = new QCheckBox ( tr("mute"), tab_3 );
Layout15->addWidget( outMuteCheckBox );
- inMuteCheckBox = new QCheckBox ( "mute", tab_3 );
+ inMuteCheckBox = new QCheckBox ( tr("mute"), tab_3 );
inMuteCheckBox-> setFocusPolicy ( QWidget::NoFocus );
Layout15b->addWidget( inMuteCheckBox );
@@ -875,11 +875,11 @@ void QtRec::stop() {
void QtRec::doPlayBtn() {
if(!stopped) {
- playLabel2->setText("Play");
+ playLabel2->setText(tr("Play"));
stop();
} else {
if(ListView1->currentItem() == 0) return;
- playLabel2->setText("Stop");
+ playLabel2->setText(tr("Stop"));
currentFile = ListView1->currentItem()->text(0);
start();
}
@@ -910,7 +910,7 @@ bool QtRec::rec() { //record
} else {
qDebug("go ahead and record");
secCount=1;
- playLabel2->setText("Stop");
+ playLabel2->setText(tr("Stop"));
monitoring=false;
setRecordButton(true);
stopped=false;
@@ -2159,7 +2159,7 @@ void QtRec::setRecordButton(bool b) {
Stop_PushButton->setPixmap( image3 );
if(Stop_PushButton->isDown())
Stop_PushButton->setDown(true);
- playLabel2->setText("Stop");
+ playLabel2->setText(tr("Stop") );
} else { //about to stop
@@ -2167,7 +2167,7 @@ void QtRec::setRecordButton(bool b) {
Stop_PushButton->setPixmap( image4);
if(Stop_PushButton->isDown())
Stop_PushButton->setDown(false);
- playLabel2->setText("Play");
+ playLabel2->setText(tr("Play") );
if(Rec_PushButton->isDown())
Rec_PushButton->setDown( false);
}
diff --git a/noncore/multimedia/showimg/opie-showimg.control b/noncore/multimedia/showimg/opie-showimg.control
index 9dacd94..c543335 100644
--- a/noncore/multimedia/showimg/opie-showimg.control
+++ b/noncore/multimedia/showimg/opie-showimg.control
@@ -4,8 +4,8 @@ Priority: optional
Section: opie/applications
Maintainer: Warwick Allison <warwick@trolltech.com>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Image Viewer
The image viewer for the Opie environment. Supports
Whichever formats are compiled into Qt/Embedded (eg. PNG).
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/net/ftplib/ftplib.control b/noncore/net/ftplib/ftplib.control
index 3dcb02a..918bcd2 100644
--- a/noncore/net/ftplib/ftplib.control
+++ b/noncore/net/ftplib/ftplib.control
@@ -4,7 +4,7 @@ Priority: optional
Section: Communications
Maintainer: L.J. Potter <ljp@llornkcor.com>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal
Description: Libftp
The ftp library for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/net/mailit/opie-mailit.control b/noncore/net/mailit/opie-mailit.control
index 65b5b36..77d4102 100644
--- a/noncore/net/mailit/opie-mailit.control
+++ b/noncore/net/mailit/opie-mailit.control
@@ -4,6 +4,6 @@ Priority: optional
Section: opie
Maintainer: L.J. Potter <llornkcor@handhelds.org>
Architecture: arm
-Version: $OPIE_VERSION-$SUB_VERSION
+Version: $QPE_VERSION$EXTRAVERSION
Description: EMail
A simple POP3 email client for the Opie environment.
diff --git a/noncore/net/opieftp/opie-ftp.control b/noncore/net/opieftp/opie-ftp.control
index 090e9a8..1e82523 100644
--- a/noncore/net/opieftp/opie-ftp.control
+++ b/noncore/net/opieftp/opie-ftp.control
@@ -4,8 +4,8 @@ Priority: optional
Section: Communications
Maintainer: L.J. Potter <ljp@llornkcor.com>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal, ftplib
Replaces: opieftp
Description: Opie-Ftp
The ftp client for the Opie environment.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/net/opieirc/opie-irc.control b/noncore/net/opieirc/opie-irc.control
index f1e6ff8..51a8049 100644
--- a/noncore/net/opieirc/opie-irc.control
+++ b/noncore/net/opieirc/opie-irc.control
@@ -4,6 +4,6 @@ Priority: optional
Section: Communications
Maintainer: Wenzel Jakob <root@wazlaf.de>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal, libopie1
Description: The Opie IRC client lets you chat on your favorite IRC server using your handheld computer
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/net/opietooth/applet/opie-bluetoothapplet.control b/noncore/net/opietooth/applet/opie-bluetoothapplet.control
index b9bd63c..55b9ab0 100644
--- a/noncore/net/opietooth/applet/opie-bluetoothapplet.control
+++ b/noncore/net/opietooth/applet/opie-bluetoothapplet.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/system
Maintainer: Maximilian Reiss <max.reiss@gmx.de>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION.1
Depends: task-opie-minimal, libopietooth1
Description: Bluetooth Applet
An bluetooth taskbar applet for the Opie environment
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/net/opietooth/lib/libopietooth1.control b/noncore/net/opietooth/lib/libopietooth1.control
index 041c9d5..850f0dc 100644
--- a/noncore/net/opietooth/lib/libopietooth1.control
+++ b/noncore/net/opietooth/lib/libopietooth1.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/system
Maintainer: Maximilian Reiß <max.reiss@gmx.de>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Replaces: libopietooth
Depends: libqte2 (>=2.3.4), libopie, task-bluez
Description: Opie bluetooth library
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/unsupported/gsmtool/gsmtool.pro b/noncore/unsupported/gsmtool/gsmtool.pro
index 180195f..40d5942 100644
--- a/noncore/unsupported/gsmtool/gsmtool.pro
+++ b/noncore/unsupported/gsmtool/gsmtool.pro
@@ -7,7 +7,7 @@ SOURCES = main.cpp gsmtool.cpp
# This doesn't actually work...
TMAKE_CXXFLAGS += -fexceptions
INCLUDEPATH += $(OPIEDIR)/include
-INCLUDEPATH += $(GSMLIBDIR)
+#INCLUDEPATH += $(GSMLIBDIR)
DEPENDPATH += $(OPIEDIR)/include
LIBS += -lqpe -L$(GSMLIBDIR)/gsmlib/.libs -lgsmme
INTERFACES = gsmtoolbase.ui
diff --git a/noncore/unsupported/mail2/addresspicker.cpp b/noncore/unsupported/mail2/addresspicker.cpp
index 7f32725..a97b33f 100644
--- a/noncore/unsupported/mail2/addresspicker.cpp
+++ b/noncore/unsupported/mail2/addresspicker.cpp
@@ -24,6 +24,7 @@ AddressPicker::AddressPicker(QWidget *parent, const char *name, bool modal,
if (f.open(IO_ReadOnly)) {
QTextStream stream(&f);
+ stream.setEncoding( QTextStream::UnicodeUTF8 );
QString content;
while (!f.atEnd()) content += stream.readLine() + "\n";
QStringList lines = QStringList::split(QRegExp("\\n"), content);
diff --git a/noncore/unsupported/mail2/bend/opie-mailapplet.control b/noncore/unsupported/mail2/bend/opie-mailapplet.control
index e5d3c6e..d618643 100644
--- a/noncore/unsupported/mail2/bend/opie-mailapplet.control
+++ b/noncore/unsupported/mail2/bend/opie-mailapplet.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/applications
Maintainer: Constantin Bergemann <cbergemann@lisa.de>
Architecture: arm
-Version: 0.0.9-$SUB_VERSION
-Depends: task-opie-minimal libopie1 opie-mail2
+Version: $QPE_VERSION$EXTRAVERSION
+Depends: task-opie-minimal, libopie1, opie-mail2
Description: A Biff-Like mailchecker
License: LGPL
diff --git a/noncore/unsupported/mail2/opie-mail2.control b/noncore/unsupported/mail2/opie-mail2.control
index 7f8aeb6..976dc0b 100644
--- a/noncore/unsupported/mail2/opie-mail2.control
+++ b/noncore/unsupported/mail2/opie-mail2.control
@@ -4,7 +4,7 @@ Priority: optional
Section: opie/applications
Maintainer: Constantin Bergemann <cbergemann@lisa.de>
Architecture: arm
-Version: 0.0.9-$SUB_VERSION
+Version: $QPE_VERSION$EXTRAVERSION
Depends: task-opie-minimal, libopie1
Description: An IMAP mail client
License: LGPL
diff --git a/noncore/unsupported/mailit/opie-mailit.control b/noncore/unsupported/mailit/opie-mailit.control
index 65b5b36..77d4102 100644
--- a/noncore/unsupported/mailit/opie-mailit.control
+++ b/noncore/unsupported/mailit/opie-mailit.control
@@ -4,6 +4,6 @@ Priority: optional
Section: opie
Maintainer: L.J. Potter <llornkcor@handhelds.org>
Architecture: arm
-Version: $OPIE_VERSION-$SUB_VERSION
+Version: $QPE_VERSION$EXTRAVERSION
Description: EMail
A simple POP3 email client for the Opie environment.
diff --git a/noncore/unsupported/qpdf/QOutputDev.cpp b/noncore/unsupported/qpdf/QOutputDev.cpp
index 52237f5..022d938 100644
--- a/noncore/unsupported/qpdf/QOutputDev.cpp
+++ b/noncore/unsupported/qpdf/QOutputDev.cpp
@@ -86,7 +86,7 @@ static QOutFontSubst qStdFonts [] = {
{ "Symbol", 0, false, false, QFont::AnyStyle },
{ "Zapf-Dingbats", 0, false, false, QFont::AnyStyle },
-
+
{ 0, 0, false, false, QFont::AnyStyle }
};
@@ -96,15 +96,15 @@ static QOutFontSubst qStdFonts [] = {
-QFont QOutputDev::matchFont ( GfxFont *gfxFont, fp_t m11, fp_t m12, fp_t m21, fp_t m22 )
+QFont QOutputDev::matchFont ( GfxFont *gfxFont, fp_t m11, fp_t m12, fp_t m21, fp_t m22 )
{
static QDict<QOutFontSubst> stdfonts;
-
- // build dict for std. fonts on first invocation
+
+ // build dict for std. fonts on first invocation
if ( stdfonts. isEmpty ( )) {
for ( QOutFontSubst *ptr = qStdFonts; ptr-> m_name; ptr++ ) {
stdfonts. insert ( QString ( ptr-> m_name ), ptr );
- }
+ }
}
// compute size and normalized transform matrix
@@ -119,8 +119,8 @@ QFont QOutputDev::matchFont ( GfxFont *gfxFont, fp_t m11, fp_t m12, fp_t m21, fp
gfxFont-> isSerif ( ),
gfxFont-> isSymbolic ( ),
gfxFont-> isCIDFont ( ),
- ( gfxFont-> getEmbeddedFontName ( ) ? gfxFont-> getEmbeddedFontName ( ) : "<n/a>" ),
- (double) m11, (double) m12, (double) m21, (double) m22 ));
+ ( gfxFont-> getEmbeddedFontName ( ) ? gfxFont-> getEmbeddedFontName()-> getCString ( ) : "<n/a>" ),
+ (double) m11, (double) m12, (double) m21, (double) m22 ) );
QString fname (( gfxFont-> getName ( )) ? gfxFont-> getName ( )-> getCString ( ) : "<n/a>" );
@@ -130,32 +130,32 @@ QFont QOutputDev::matchFont ( GfxFont *gfxFont, fp_t m11, fp_t m12, fp_t m21, fp
// fast lookup for std. fonts
QOutFontSubst *subst = stdfonts [fname];
-
+
if ( subst ) {
if ( subst-> m_sname )
f. setFamily ( subst-> m_sname );
- f. setStyleHint ( subst-> m_hint, (QFont::StyleStrategy) ( QFont::PreferOutline | QFont::PreferQuality ));
+ f. setStyleHint ( subst-> m_hint, (QFont::StyleStrategy) ( QFont::PreferOutline | QFont::PreferQuality ));
f. setBold ( subst-> m_bold );
f. setItalic ( subst-> m_italic );
}
else {
QFont::StyleHint sty;
-
+
if ( gfxFont-> isSerif ( ))
sty = QFont::Serif;
else if ( gfxFont-> isFixedWidth ( ))
sty = QFont::TypeWriter;
else
sty = QFont::Helvetica;
-
- f. setStyleHint ( sty, (QFont::StyleStrategy) ( QFont::PreferOutline | QFont::PreferQuality ));
+
+ f. setStyleHint ( sty, (QFont::StyleStrategy) ( QFont::PreferOutline | QFont::PreferQuality ));
f. setBold ( gfxFont-> isBold ( ) > 0 );
f. setItalic ( gfxFont-> isItalic ( ) > 0 );
f. setFixedPitch ( gfxFont-> isFixedWidth ( ) > 0 );
-
- // common specifiers in font names
+
+ // common specifiers in font names
if ( fname. contains ( "Oblique" ) || fname. contains ( "Italic" ))
- f. setItalic ( true );
+ f. setItalic ( true );
if ( fname. contains ( "Bold" ))
f. setWeight ( QFont::Bold );
if ( fname. contains ( "Demi" ))
@@ -164,11 +164,11 @@ QFont QOutputDev::matchFont ( GfxFont *gfxFont, fp_t m11, fp_t m12, fp_t m21, fp
f. setWeight ( QFont::Light );
if ( fname. contains ( "Black" ))
f. setWeight ( QFont::Black );
- }
+ }
// Treat x-sheared fonts as italic
if (( m12 > -0.1 ) && ( m12 < 0.1 ) && ((( m21 > -5.0 ) && ( m21 < -0.1 )) || (( m21 > 0.1 ) && ( m21 < 5.0 )))) {
- f. setItalic ( true );
- }
+ f. setItalic ( true );
+ }
return f;
}
@@ -182,12 +182,12 @@ QOutputDev::QOutputDev ( QWidget *parent, const char *name, int flags ) : QScrol
{
m_pixmap = 0;
m_painter = 0;
-
+
// create text object
m_text = new TextPage ( gFalse );
}
-QOutputDev::~QOutputDev ( )
+QOutputDev::~QOutputDev ( )
{
delete m_painter;
delete m_pixmap;
@@ -195,46 +195,53 @@ QOutputDev::~QOutputDev ( )
}
-void QOutputDev::startPage ( int /*pageNum*/, GfxState *state )
+void QOutputDev::startPage ( int /*pageNum*/, GfxState *state )
{
delete m_pixmap;
delete m_painter;
-
+
m_pixmap = new QPixmap ( lrint ( state-> getPageWidth ( )), lrint ( state-> getPageHeight ( )));
m_painter = new QPainter ( m_pixmap );
QPDFDBG( printf ( "NEW PIXMAP (%ld x %ld)\n", lrint ( state-> getPageWidth ( )), lrint ( state-> getPageHeight ( ))));
-
+
resizeContents ( m_pixmap-> width ( ), m_pixmap-> height ( ));
setContentsPos ( 0, 0 );
m_pixmap-> fill ( white ); // clear window
- m_text-> clear ( ); // cleat text object
- viewport ( )-> repaint ( );
+ m_text-> clear ( ); // cleat text object
+ viewport ( )-> repaint ( );
}
-void QOutputDev::endPage ( )
+void QOutputDev::endPage ( )
{
+ QPDFDBG( printf("End page\n") );
m_text-> coalesce ( );
-
+
+ /*
+ * I get stupid crashes after endPage is called and then we do clipping
+ * and other stuff.....
+ */
+#if 0
delete m_painter;
m_painter = 0;
-
+#endif
+
updateContents ( 0, 0, contentsWidth ( ), contentsHeight ( ));
}
-void QOutputDev::drawLink ( Link *link, Catalog */*catalog*/ )
+void QOutputDev::drawLink ( Link *link, Catalog */*catalog*/ )
{
fp_t x1, y1, x2, y2, w;
link-> getBorder ( &x1, &y1, &x2, &y2, &w );
-
+
if ( w > 0 ) {
int x, y, dx, dy;
-
+
cvtUserToDev ( x1, y1, &x, &y );
cvtUserToDev ( x2, y2, &dx, &dy );
-
+
QPen oldpen = m_painter-> pen ( );
m_painter-> setPen ( blue );
m_painter-> drawRect ( x, y, dx, dy );
@@ -242,23 +249,29 @@ void QOutputDev::drawLink ( Link *link, Catalog */*catalog*/ )
}
}
-void QOutputDev::saveState ( GfxState */*state*/ )
+void QOutputDev::saveState ( GfxState */*state*/ )
{
+ if ( ! m_painter )
+ return;
+
QPDFDBG( printf ( "SAVE (CLIP=%d/%d)\n", m_painter-> hasClipping ( ), !m_painter-> clipRegion ( ). isEmpty ( )));
- m_painter-> save ( );
+ m_painter-> save ( );
}
-void QOutputDev::restoreState ( GfxState */*state*/ )
+void QOutputDev::restoreState ( GfxState */*state*/ )
{
+ if( ! m_painter )
+ return;
+
m_painter-> restore ( );
-
+
// m_painter-> setClipRegion ( QRect ( 0, 0, m_pixmap-> width ( ), m_pixmap-> height ( )));
// m_painter-> setClipping ( false );
QPDFDBG ( printf ( "RESTORE (CLIP=%d/%d)\n", m_painter-> hasClipping ( ), !m_painter-> clipRegion ( ). isEmpty ( )));
}
-void QOutputDev::updateAll ( GfxState *state )
+void QOutputDev::updateAll ( GfxState *state )
{
updateLineAttrs ( state, gTrue );
// updateFlatness ( state );
@@ -268,44 +281,44 @@ void QOutputDev::updateAll ( GfxState *state )
updateFont ( state );
}
-void QOutputDev::updateCTM ( GfxState *state, fp_t /*m11*/, fp_t /*m12*/, fp_t /*m21*/, fp_t /*m22*/, fp_t /*m31*/, fp_t /*m32*/ )
+void QOutputDev::updateCTM ( GfxState *state, fp_t /*m11*/, fp_t /*m12*/, fp_t /*m21*/, fp_t /*m22*/, fp_t /*m31*/, fp_t /*m32*/ )
{
updateLineAttrs ( state, gTrue );
}
-void QOutputDev::updateLineDash ( GfxState *state )
+void QOutputDev::updateLineDash ( GfxState *state )
{
updateLineAttrs ( state, gTrue );
}
-void QOutputDev::updateFlatness ( GfxState */*state*/ )
+void QOutputDev::updateFlatness ( GfxState */*state*/ )
{
// not supported
QPDFDBG( printf ( "updateFlatness not supported !\n" ));
}
-void QOutputDev::updateLineJoin ( GfxState *state )
+void QOutputDev::updateLineJoin ( GfxState *state )
{
updateLineAttrs ( state, gFalse );
}
-void QOutputDev::updateLineCap ( GfxState *state )
+void QOutputDev::updateLineCap ( GfxState *state )
{
updateLineAttrs ( state, gFalse );
}
// unimplemented
-void QOutputDev::updateMiterLimit ( GfxState */*state*/ )
+void QOutputDev::updateMiterLimit ( GfxState */*state*/ )
{
QPDFDBG( printf ( "updateMiterLimit not supported !\n" ));
}
-void QOutputDev::updateLineWidth ( GfxState *state )
+void QOutputDev::updateLineWidth ( GfxState *state )
{
updateLineAttrs ( state, gFalse );
}
-void QOutputDev::updateLineAttrs ( GfxState *state, GBool updateDash )
+void QOutputDev::updateLineAttrs ( GfxState *state, GBool updateDash )
{
fp_t *dashPattern;
int dashLength;
@@ -316,7 +329,7 @@ void QOutputDev::updateLineAttrs ( GfxState *state, GBool updateDash )
int width;
width = lrint ( state-> getTransformedLineWidth ( ));
-
+
switch ( state-> getLineCap ( )) {
case 0: cap = FlatCap; break;
case 1: cap = RoundCap; break;
@@ -326,7 +339,7 @@ void QOutputDev::updateLineAttrs ( GfxState *state, GBool updateDash )
cap = FlatCap;
break;
}
-
+
switch (state->getLineJoin()) {
case 0: join = MiterJoin; break;
case 1: join = RoundJoin; break;
@@ -336,7 +349,7 @@ void QOutputDev::updateLineAttrs ( GfxState *state, GBool updateDash )
join = MiterJoin;
break;
}
-
+
state-> getLineDash ( &dashPattern, &dashLength, &dashStart );
QColor oldcol = m_painter-> pen ( ). color ( );
@@ -349,7 +362,7 @@ void QOutputDev::updateLineAttrs ( GfxState *state, GBool updateDash )
if ( updateDash && ( dashLength > 0 )) {
// Not supported by QT
-/*
+/*
char dashList[20];
if (dashLength > 20)
dashLength = 20;
@@ -363,7 +376,7 @@ void QOutputDev::updateLineAttrs ( GfxState *state, GBool updateDash )
}
}
-void QOutputDev::updateFillColor ( GfxState *state )
+void QOutputDev::updateFillColor ( GfxState *state )
{
GfxRGB rgb;
state-> getFillRGB ( &rgb );
@@ -371,35 +384,35 @@ void QOutputDev::updateFillColor ( GfxState *state )
m_painter-> setBrush ( q_col ( rgb ));
}
-void QOutputDev::updateStrokeColor ( GfxState *state )
+void QOutputDev::updateStrokeColor ( GfxState *state )
{
GfxRGB rgb;
state-> getStrokeRGB ( &rgb );
-
+
QPen pen = m_painter-> pen ( );
pen. setColor ( q_col ( rgb ));
m_painter-> setPen ( pen );
}
-void QOutputDev::updateFont ( GfxState *state )
+void QOutputDev::updateFont ( GfxState *state )
{
fp_t m11, m12, m21, m22;
GfxFont *gfxFont = state-> getFont ( );
-
+
if ( !gfxFont )
return;
-
+
state-> getFontTransMat ( &m11, &m12, &m21, &m22 );
m11 *= state-> getHorizScaling ( );
m12 *= state-> getHorizScaling ( );
-
+
QFont font = matchFont ( gfxFont, m11, m12, m21, m22 );
-
+
m_painter-> setFont ( font );
m_text-> updateFont ( state );
}
-void QOutputDev::stroke ( GfxState *state )
+void QOutputDev::stroke ( GfxState *state )
{
QPointArray points;
QArray<int> lengths;
@@ -408,31 +421,31 @@ void QOutputDev::stroke ( GfxState *state )
int n = convertPath ( state, points, lengths );
QPDFDBG( printf ( "DRAWING: %d POLYS\n", n ));
-
+
// draw each subpath
int j = 0;
for ( int i = 0; i < n; i++ ) {
int len = lengths [i];
-
+
if ( len >= 2 ) {
QPDFDBG( printf ( " - POLY %d: ", i ));
QPDFDBG( for ( int ii = 0; ii < len; ii++ ))
QPDFDBG( printf ( "(%d/%d) ", points [j+ii]. x ( ), points [j+ii]. y ( )));
QPDFDBG( printf ( "\n" ));
-
+
m_painter-> drawPolyline ( points, j, len );
- }
+ }
j += len;
}
qApp-> processEvents ( );
}
-void QOutputDev::fill ( GfxState *state )
+void QOutputDev::fill ( GfxState *state )
{
doFill ( state, true );
}
-void QOutputDev::eoFill ( GfxState *state )
+void QOutputDev::eoFill ( GfxState *state )
{
doFill ( state, false );
}
@@ -446,7 +459,7 @@ void QOutputDev::eoFill ( GfxState *state )
// only for single-component polygons, since it's not very
// compatible with the compound polygon kludge (see convertPath()).
//
-void QOutputDev::doFill ( GfxState *state, bool winding )
+void QOutputDev::doFill ( GfxState *state, bool winding )
{
QPointArray points;
QArray<int> lengths;
@@ -455,23 +468,23 @@ void QOutputDev::doFill ( GfxState *state, bool winding )
int n = convertPath ( state, points, lengths );
QPDFDBG( printf ( "FILLING: %d POLYS\n", n ));
-
+
QPen oldpen = m_painter-> pen ( );
m_painter-> setPen ( QPen ( NoPen ));
-
+
// draw each subpath
int j = 0;
for ( int i = 0; i < n; i++ ) {
int len = lengths [i];
-
+
if ( len >= 3 ) {
QPDFDBG( printf ( " - POLY %d: ", i ));
QPDFDBG( for ( int ii = 0; ii < len; ii++ ))
QPDFDBG( printf ( "(%d/%d) ", points [j+ii]. x ( ), points [j+ii]. y ( )));
QPDFDBG( printf ( "\n" ));
-
+
m_painter-> drawPolygon ( points, winding, j, len );
- }
+ }
j += len;
}
m_painter-> setPen ( oldpen );
@@ -479,17 +492,17 @@ void QOutputDev::doFill ( GfxState *state, bool winding )
qApp-> processEvents ( );
}
-void QOutputDev::clip ( GfxState *state )
+void QOutputDev::clip ( GfxState *state )
{
doClip ( state, true );
}
-void QOutputDev::eoClip ( GfxState *state )
+void QOutputDev::eoClip ( GfxState *state )
{
doClip ( state, false );
}
-void QOutputDev::doClip ( GfxState *state, bool winding )
+void QOutputDev::doClip ( GfxState *state, bool winding )
{
QPointArray points;
QArray<int> lengths;
@@ -498,35 +511,35 @@ void QOutputDev::doClip ( GfxState *state, bool winding )
int n = convertPath ( state, points, lengths );
QRegion region;
-
+
QPDFDBG( printf ( "CLIPPING: %d POLYS\n", n ));
-
+
// draw each subpath
int j = 0;
for ( int i = 0; i < n; i++ ) {
int len = lengths [i];
-
- if ( len >= 3 ) {
+
+ if ( len >= 3 ) {
QPointArray dummy;
dummy. setRawData ( points. data ( ) + j, len );
-
+
QPDFDBG( printf ( " - POLY %d: ", i ));
QPDFDBG( for ( int ii = 0; ii < len; ii++ ) printf ( "(%d/%d) ", points [j+ii]. x ( ), points [j+ii]. y ( )));
QPDFDBG( printf ( "\n" ));
-
+
region |= QRegion ( dummy, winding );
-
+
dummy. resetRawData ( points. data ( ) + j, len );
- }
+ }
j += len;
}
-
- if ( m_painter-> hasClipping ( ))
+
+ if ( m_painter && m_painter-> hasClipping ( ))
region &= m_painter-> clipRegion ( );
// m_painter-> setClipRegion ( region );
// m_painter-> setClipping ( true );
-
+
// m_painter-> fillRect ( 0, 0, m_pixmap-> width ( ), m_pixmap-> height ( ), red );
// m_painter-> drawText ( points [0]. x ( ) + 10, points [0]. y ( ) + 10, "Bla bla" );
qApp-> processEvents ( );
@@ -541,7 +554,7 @@ void QOutputDev::doClip ( GfxState *state, bool winding )
// Then it connects subaths within a single compound polygon to a single
// point so that X can fill the polygon (sort of).
//
-int QOutputDev::convertPath ( GfxState *state, QPointArray &points, QArray<int> &lengths )
+int QOutputDev::convertPath ( GfxState *state, QPointArray &points, QArray<int> &lengths )
{
GfxPath *path = state-> getPath ( );
int n = path-> getNumSubpaths ( );
@@ -569,36 +582,36 @@ int QOutputDev::convertSubpath ( GfxState *state, GfxSubpath *subpath, QPointArr
int m = subpath-> getNumPoints ( );
int i = 0;
-
+
while ( i < m ) {
if ( i >= 1 && subpath-> getCurve ( i )) {
state-> transform ( subpath-> getX ( i - 1 ), subpath-> getY ( i - 1 ), &x0, &y0 );
state-> transform ( subpath-> getX ( i ), subpath-> getY ( i ), &x1, &y1 );
state-> transform ( subpath-> getX ( i + 1 ), subpath-> getY ( i + 1 ), &x2, &y2 );
state-> transform ( subpath-> getX ( i + 2 ), subpath-> getY ( i + 2 ), &x3, &y3 );
-
+
QPointArray tmp;
tmp. setPoints ( 4, lrint ( x0 ), lrint ( y0 ), lrint ( x1 ), lrint ( y1 ),
lrint ( x2 ), lrint ( y2 ), lrint ( x3 ), lrint ( y3 ));
#if QT_VERSION < 300
tmp = tmp. quadBezier ( );
-
+
for ( uint loop = 0; loop < tmp. count ( ); loop++ ) {
QPoint p = tmp. point ( loop );
points. putPoints ( points. count ( ), 1, p. x ( ), p. y ( ));
}
#else
tmp = tmp. cubicBezier ( );
- points. putPoints ( points. count ( ), tmp. count ( ), tmp );
+ points. putPoints ( points. count ( ), tmp. count ( ), tmp );
#endif
i += 3;
- }
+ }
else {
state-> transform ( subpath-> getX ( i ), subpath-> getY ( i ), &x1, &y1 );
-
- points. putPoints ( points. count ( ), 1, lrint ( x1 ), lrint ( y1 ));
+
+ points. putPoints ( points. count ( ), 1, lrint ( x1 ), lrint ( y1 ));
++i;
}
}
@@ -606,22 +619,22 @@ int QOutputDev::convertSubpath ( GfxState *state, GfxSubpath *subpath, QPointArr
}
-void QOutputDev::beginString ( GfxState *state, GString */*s*/ )
+void QOutputDev::beginString ( GfxState *state, GString */*s*/ )
{
m_text-> beginString ( state );
}
-void QOutputDev::endString ( GfxState */*state*/ )
+void QOutputDev::endString ( GfxState */*state*/ )
{
m_text-> endString ( );
}
void QOutputDev::drawChar ( GfxState *state, fp_t x, fp_t y,
fp_t dx, fp_t dy, fp_t originX, fp_t originY,
- CharCode code, Unicode *u, int uLen )
+ CharCode code, Unicode *u, int uLen )
{
fp_t x1, y1, dx1, dy1;
-
+
if ( uLen > 0 )
m_text-> addChar ( state, x, y, dx, dy, u, uLen );
@@ -639,10 +652,10 @@ void QOutputDev::drawChar ( GfxState *state, fp_t x, fp_t y,
if ( uLen > 0 ) {
QString str;
QFontMetrics fm = m_painter-> fontMetrics ( );
-
+
for ( int i = 0; i < uLen; i++ ) {
QChar c = QChar ( u [i] );
-
+
if ( fm. inFont ( c )) {
str [i] = QChar ( u [i] );
}
@@ -651,61 +664,61 @@ void QOutputDev::drawChar ( GfxState *state, fp_t x, fp_t y,
QPDFDBG( printf ( "CHARACTER NOT IN FONT: %hx\n", c. unicode ( )));
}
}
-
+
if (( uLen == 1 ) && ( str [0] == ' ' ))
return;
-
-
+
+
fp_t m11, m12, m21, m22;
-
+
state-> getFontTransMat ( &m11, &m12, &m21, &m22 );
m11 *= state-> getHorizScaling ( );
m12 *= state-> getHorizScaling ( );
-
+
fp_t fsize = m_painter-> font ( ). pixelSize ( );
#ifndef QT_NO_TRANSFORMATIONS
QWMatrix oldmat;
-
- bool dorot = (( m12 < -0.1 ) || ( m12 > 0.1 )) && (( m21 < -0.1 ) || ( m21 > 0.1 ));
- if ( dorot ) {
+ bool dorot = (( m12 < -0.1 ) || ( m12 > 0.1 )) && (( m21 < -0.1 ) || ( m21 > 0.1 ));
+
+ if ( dorot ) {
oldmat = m_painter-> worldMatrix ( );
std::cerr << std::endl << "ROTATED: " << m11 << ", " << m12 << ", " << m21 << ", " << m22 << " / SIZE: " << fsize << " / TEXT: " << str. local8Bit ( ) << endl << endl;
-
+
QWMatrix mat ( lrint ( m11 / fsize ), lrint ( m12 / fsize ), -lrint ( m21 / fsize ), -lrint ( m22 / fsize ), lrint ( x1 ), lrint ( y1 ));
-
+
m_painter-> setWorldMatrix ( mat );
x1 = 0;
- y1 = 0;
+ y1 = 0;
}
#endif
-
+
QPen oldpen = m_painter-> pen ( );
-
+
if (!( state-> getRender ( ) & 1 )) {
QPen fillpen = oldpen;
-
+
fillpen. setColor ( m_painter-> brush ( ). color ( ));
m_painter-> setPen ( fillpen );
- }
+ }
if ( fsize > 5 )
m_painter-> drawText ( lrint ( x1 ), lrint ( y1 ), str );
else
m_painter-> fillRect ( lrint ( x1 ), lrint ( y1 ), lrint ( QMAX( fp_t(1), dx1 )), lrint ( QMAX( fsize, dy1 )), m_painter-> pen ( ). color ( ));
-
+
m_painter-> setPen ( oldpen );
-
+
#ifndef QT_NO_TRANSFORMATIONS
if ( dorot )
m_painter-> setWorldMatrix ( oldmat );
-#endif
-
+#endif
+
QPDFDBG( printf ( "DRAW TEXT: \"%s\" at (%ld/%ld)\n", str. local8Bit ( ). data ( ), lrint ( x1 ), lrint ( y1 )));
- }
+ }
else if ( code != 0 ) {
// some PDF files use CID 0, which is .notdef, so just ignore it
qWarning ( "Unknown character (CID=%d Unicode=%hx)\n", code, (unsigned short) ( uLen > 0 ? u [0] : (Unicode) 0 ));
@@ -715,14 +728,14 @@ void QOutputDev::drawChar ( GfxState *state, fp_t x, fp_t y,
-void QOutputDev::drawImageMask ( GfxState *state, Object */*ref*/, Stream *str, int width, int height, GBool invert, GBool inlineImg )
+void QOutputDev::drawImageMask ( GfxState *state, Object */*ref*/, Stream *str, int width, int height, GBool invert, GBool inlineImg )
{
// get CTM, check for singular matrix
fp_t *ctm = state-> getCTM ( );
-
+
if ( fabs ( ctm [0] * ctm [3] - ctm [1] * ctm [2] ) < 0.000001 ) {
qWarning ( "Singular CTM in drawImage\n" );
-
+
if ( inlineImg ) {
str-> reset ( );
int j = height * (( width + 7 ) / 8 );
@@ -733,13 +746,13 @@ void QOutputDev::drawImageMask ( GfxState *state, Object */*ref*/, Stream *str,
}
return;
}
-
- GfxRGB rgb;
+
+ GfxRGB rgb;
state-> getFillRGB ( &rgb );
uint val = ( lrint ( rgb. r * 255 ) & 0xff ) << 16 | ( lrint ( rgb. g * 255 ) & 0xff ) << 8 | ( lrint ( rgb. b * 255 ) & 0xff );
-
-
- QImage img ( width, height, 32 );
+
+
+ QImage img ( width, height, 32 );
img. setAlphaBuffer ( true );
QPDFDBG( printf ( "IMAGE MASK (%dx%d)\n", width, height ));
@@ -749,39 +762,39 @@ void QOutputDev::drawImageMask ( GfxState *state, Object */*ref*/, Stream *str,
imgStr-> reset ( );
uchar **scanlines = img. jumpTable ( );
-
+
if ( ctm [3] > 0 )
scanlines += ( height - 1 );
-
+
for ( int y = 0; y < height; y++ ) {
QRgb *scanline = (QRgb *) *scanlines;
-
+
if ( ctm [0] < 0 )
scanline += ( width - 1 );
-
+
for ( int x = 0; x < width; x++ ) {
Guchar alpha;
-
+
imgStr-> getPixel ( &alpha );
-
+
if ( invert )
alpha ^= 1;
-
+
*scanline = ( alpha == 0 ) ? 0xff000000 | val : val;
-
+
ctm [0] < 0 ? scanline-- : scanline++;
}
ctm [3] > 0 ? scanlines-- : scanlines++;
qApp-> processEvents ( );
}
-
-#ifndef QT_NO_TRANSFORMATIONS
+
+#ifndef QT_NO_TRANSFORMATIONS
QWMatrix mat ( ctm [0] / width, ctm [1], ctm [2], ctm [3] / height, ctm [4], ctm [5] );
-
- std::cerr << "MATRIX T=" << mat. dx ( ) << "/" << mat. dy ( ) << std::endl
+
+ std::cerr << "MATRIX T=" << mat. dx ( ) << "/" << mat. dy ( ) << std::endl
<< " - M=" << mat. m11 ( ) << "/" << mat. m12 ( ) << "/" << mat. m21 ( ) << "/" << mat. m22 ( ) << std::endl;
-
+
QWMatrix oldmat = m_painter-> worldMatrix ( );
m_painter-> setWorldMatrix ( mat, true );
@@ -802,10 +815,10 @@ void QOutputDev::drawImageMask ( GfxState *state, Object */*ref*/, Stream *str,
else {
int x = lrint ( ctm [4] );
int y = lrint ( ctm [5] );
-
+
int w = lrint ( ctm [0] );
int h = lrint ( ctm [3] );
-
+
if ( w < 0 ) {
x += w;
w = -w;
@@ -814,25 +827,25 @@ void QOutputDev::drawImageMask ( GfxState *state, Object */*ref*/, Stream *str,
y += h;
h = -h;
}
-
+
QPDFDBG( printf ( "DRAWING IMAGE MASKED: %d/%d - %dx%d\n", x, y, w, h ));
img = img. smoothScale ( w, h );
- qApp-> processEvents ( );
+ qApp-> processEvents ( );
m_painter-> drawImage ( x, y, img );
}
#endif
-
- delete imgStr;
+
+ delete imgStr;
qApp-> processEvents ( );
}
-void QOutputDev::drawImage(GfxState *state, Object */*ref*/, Stream *str, int width, int height, GfxImageColorMap *colorMap, int *maskColors, GBool inlineImg )
+void QOutputDev::drawImage(GfxState *state, Object */*ref*/, Stream *str, int width, int height, GfxImageColorMap *colorMap, int *maskColors, GBool inlineImg )
{
int nComps, nVals, nBits;
-
+
// image parameters
nComps = colorMap->getNumPixelComps ( );
nVals = width * nComps;
@@ -840,10 +853,10 @@ void QOutputDev::drawImage(GfxState *state, Object */*ref*/, Stream *str, int wi
// get CTM, check for singular matrix
fp_t *ctm = state-> getCTM ( );
-
+
if ( fabs ( ctm [0] * ctm [3] - ctm [1] * ctm [2] ) < 0.000001 ) {
qWarning ( "Singular CTM in drawImage\n" );
-
+
if ( inlineImg ) {
str-> reset ( );
int j = height * (( nVals * nBits + 7 ) / 8 );
@@ -856,7 +869,7 @@ void QOutputDev::drawImage(GfxState *state, Object */*ref*/, Stream *str, int wi
}
QImage img ( width, height, 32 );
-
+
if ( maskColors )
img. setAlphaBuffer ( true );
@@ -868,47 +881,47 @@ void QOutputDev::drawImage(GfxState *state, Object */*ref*/, Stream *str, int wi
Guchar pixBuf [gfxColorMaxComps];
GfxRGB rgb;
-
+
uchar **scanlines = img. jumpTable ( );
-
+
if ( ctm [3] > 0 )
scanlines += ( height - 1 );
-
+
for ( int y = 0; y < height; y++ ) {
QRgb *scanline = (QRgb *) *scanlines;
-
+
if ( ctm [0] < 0 )
scanline += ( width - 1 );
-
+
for ( int x = 0; x < width; x++ ) {
imgStr-> getPixel ( pixBuf );
colorMap-> getRGB ( pixBuf, &rgb );
-
+
uint val = ( lrint ( rgb. r * 255 ) & 0xff ) << 16 | ( lrint ( rgb. g * 255 ) & 0xff ) << 8 | ( lrint ( rgb. b * 255 ) & 0xff );
-
+
if ( maskColors ) {
for ( int k = 0; k < nComps; ++k ) {
- if (( pixBuf [k] < maskColors [2 * k] ) || ( pixBuf [k] > maskColors [2 * k] )) {
+ if (( pixBuf [k] < maskColors [2 * k] ) || ( pixBuf [k] > maskColors [2 * k] )) {
val |= 0xff000000;
break;
}
}
}
*scanline = val;
-
+
ctm [0] < 0 ? scanline-- : scanline++;
}
ctm [3] > 0 ? scanlines-- : scanlines++;
-
+
qApp-> processEvents ( );
}
-#ifndef QT_NO_TRANSFORMATIONS
+#ifndef QT_NO_TRANSFORMATIONS
QWMatrix mat ( ctm [0] / width, ctm [1], ctm [2], ctm [3] / height, ctm [4], ctm [5] );
- std::cerr << "MATRIX T=" << mat. dx ( ) << "/" << mat. dy ( ) << std::endl
+ std::cerr << "MATRIX T=" << mat. dx ( ) << "/" << mat. dy ( ) << std::endl
<< " - M=" << mat. m11 ( ) << "/" << mat. m12 ( ) << "/" << mat. m21 ( ) << "/" << mat. m22 ( ) << std::endl;
QWMatrix oldmat = m_painter-> worldMatrix ( );
@@ -918,8 +931,8 @@ void QOutputDev::drawImage(GfxState *state, Object */*ref*/, Stream *str, int wi
QPixmap pm;
pm. convertFromImage ( img );
m_painter-> drawPixmap ( 0, 0, pm );
-#else
- m_painter-> drawImage ( QPoint ( 0, 0 ), img );
+#else
+ m_painter-> drawImage ( QPoint ( 0, 0 ), img );
#endif
m_painter-> setWorldMatrix ( oldmat );
@@ -932,10 +945,10 @@ void QOutputDev::drawImage(GfxState *state, Object */*ref*/, Stream *str, int wi
else {
int x = lrint ( ctm [4] );
int y = lrint ( ctm [5] );
-
+
int w = lrint ( ctm [0] );
int h = lrint ( ctm [3] );
-
+
if ( w < 0 ) {
x += w;
w = -w;
@@ -944,14 +957,14 @@ void QOutputDev::drawImage(GfxState *state, Object */*ref*/, Stream *str, int wi
y += h;
h = -h;
}
-
+
QPDFDBG( printf ( "DRAWING IMAGE: %d/%d - %dx%d\n", x, y, w, h ));
- img = img. smoothScale ( w, h );
- qApp-> processEvents ( );
+ img = img. smoothScale ( w, h );
+ qApp-> processEvents ( );
m_painter-> drawImage ( x, y, img );
}
-
+
#endif
@@ -977,7 +990,7 @@ bool QOutputDev::findText ( const QString &str, int &l, int &t, int &w, int &h,
bool found = false;
uint len = str. length ( );
Unicode *s = new Unicode [len];
-
+
for ( uint i = 0; i < len; i++ )
s [i] = str [i]. unicode ( );
@@ -986,7 +999,7 @@ bool QOutputDev::findText ( const QString &str, int &l, int &t, int &w, int &h,
fp_t x2 = (fp_t) l + w - 1;
fp_t y2 = (fp_t) t + h - 1;
- if ( m_text-> findText ( s, len, top, bottom, &x1, &y1, &x2, &y2 )) {
+ if ( m_text-> findText ( s, len, top, bottom, &x1, &y1, &x2, &y2 )) {
l = lrint ( x1 );
t = lrint ( y1 );
w = lrint ( x2 ) - l + 1;
@@ -994,7 +1007,7 @@ bool QOutputDev::findText ( const QString &str, int &l, int &t, int &w, int &h,
found = true;
}
delete [] s;
-
+
return found;
}
@@ -1005,7 +1018,7 @@ GBool QOutputDev::findText ( Unicode *s, int len, GBool top, GBool bottom, int *
fp_t yMin1 = (double) *yMin;
fp_t xMax1 = (double) *xMax;
fp_t yMax1 = (double) *yMax;
-
+
if ( m_text-> findText ( s, len, top, bottom, &xMin1, &yMin1, &xMax1, &yMax1 )) {
*xMin = lrint ( xMin1 );
*xMax = lrint ( xMax1 );
@@ -1021,10 +1034,10 @@ QString QOutputDev::getText ( int l, int t, int w, int h )
GString *gstr = m_text-> getText ( l, t, l + w - 1, t + h - 1 );
QString str = gstr-> getCString ( );
delete gstr;
- return str;
+ return str;
}
-QString QOutputDev::getText ( const QRect &r )
+QString QOutputDev::getText ( const QRect &r )
{
return getText ( r. left ( ), r. top ( ), r. width ( ), r. height ( ));
}
@@ -1035,6 +1048,6 @@ void QOutputDev::drawContents ( QPainter *p, int clipx, int clipy, int clipw, in
{
if ( m_pixmap )
p-> drawPixmap ( clipx, clipy, *m_pixmap, clipx, clipy, clipw, cliph );
- else
+ else
p-> fillRect ( clipx, clipy, clipw, cliph, white );
}
diff --git a/noncore/unsupported/qpdf/opie-qpdf.control b/noncore/unsupported/qpdf/opie-qpdf.control
index 33df3e1..208dcb1 100644
--- a/noncore/unsupported/qpdf/opie-qpdf.control
+++ b/noncore/unsupported/qpdf/opie-qpdf.control
@@ -4,6 +4,6 @@ Priority: optional
Section: opie/applications
Maintainer: Robert Griebl <sandman@handhelds.org>
Architecture: arm
-Version: $QPE_VERSION-$SUB_VERSION
Depends: task-opie-minimal, gzip
Description: A PDF viewer for OPIE.
+Version: $QPE_VERSION$EXTRAVERSION
diff --git a/noncore/unsupported/qpdf/qpdf.cpp b/noncore/unsupported/qpdf/qpdf.cpp
index 61f097b..de1dcf3 100644
--- a/noncore/unsupported/qpdf/qpdf.cpp
+++ b/noncore/unsupported/qpdf/qpdf.cpp
@@ -507,7 +507,7 @@ void QPdfDlg::openFile ( const DocLnk &f )
updateCaption ( );
}
else
- QMessageBox::warning ( this, tr( "Error" ), tr( "File does not exist !" ));
+ QMessageBox::warning ( this, tr( "Error" ), tr( "File does not exist!" ));
}
void QPdfDlg::setDocument ( const QString &f )