Skip to content

Commit 6a05821

Browse files
author
jmbowman
committed
Build fixes and translation updates
1 parent a8e970c commit 6a05821

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+4608
-4765
lines changed

Diff for: CHANGES

+7
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
2004-03-05 JMB Zaurus build fixes, translation file updates
2+
3+
Fixed some places where compilation for the Zaurus broke during the
4+
process of desktop version development. Also updated all the UI
5+
translation files with the current set of messages used so that they
6+
are ready for the translators to prepare for the version 1.9 release.
7+
18
2004-02-27 JMB Localization improvements
29

310
Made several changes that let PortaBase work better for non-English

Diff for: INSTALL

+46-29
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,10 @@ will need the following:
3030
Metakit Compilation
3131
-------------------
3232
To compile PortaBase, Metakit must be compiled first. PortaBase uses a
33-
version of 2.4.9.3 patched to allow case-sensitive searches and
34-
locale-sensitive sorting. Therefore, the patch file metakit-2.4.9.3.patch
35-
must be applied to the Metakit 2.4.9.3 source tree before building.
33+
version of 2.4.9.3 patched to allow case-sensitive searches, locale-sensitive
34+
sorting, and unicode filename support where available. Therefore, the patch
35+
file metakit-2.4.9.3.patch must be applied to the Metakit 2.4.9.3 source tree
36+
before building.
3637

3738
To build Metakit for the desktop test environment, run dev-x86-qpe.sh and then
3839
follow the Metakit installation instructions (in the Metakit README file).
@@ -60,51 +61,63 @@ Metakit for use in Linux desktop PortaBase, just follow the README directions.
6061
BeeCrypt compilation
6162
--------------------
6263
Get BeeCrypt version 3.1.0. For the desktop versions of PortaBase, just
63-
follow the build instructions found in Beecrypt's INSTALL file. For the
64+
follow the build instructions found in BeeCrypt's INSTALL file. For the
6465
Zaurus version, run the configure script as follows:
6566

66-
NM=arm-linux-nm LD=arm-linux-ld CC=arm-linux-gcc CXX=arm-linux-g++ RANLIB=arm-linux-ranlib AR=arm-linux-ar ./configure --prefix=/output/dir --host=arm-linux --enable-aio=no --with-javaglue=no --enable-static --enable-optimized=no
67+
NM=arm-linux-nm LD=arm-linux-ld CC=arm-linux-gcc CXX=arm-linux-g++ RANLIB=arm-linux-ranlib AR=arm-linux-ar ./configure --prefix=/output/dir --host=arm-linux --enable-aio=no
6768

6869
As with Metakit, replace /output/dir with the directory in which to place
6970
the results. Copy libbeecrypt.a to the same place the Metakit library went.
7071

7172
libjpeg compilation
7273
-------------------
73-
Get version 6b from http://www.ijg.org. For the desktop versions, follow the
74-
build instructions from the install.doc file that comes with the source code.
75-
For the Zaurus version, run the configure script as follows:
74+
For desktop Linux, this is probably already on your system; just make sure to
75+
install the appropriate dev package if it hasn't already been installed (for
76+
Debian this is libjpeg62-dev). For Windows, get version 6b from
77+
http://www.ijg.org and follow the build instructions from the install.doc file
78+
that comes with the source code. For the Zaurus version, it's easiest to just
79+
use the Debian arm package for libjpeg62-dev; after downloading the .deb file,
80+
you can extract the necessary files by running:
7681

77-
NM=arm-linux-nm LD=arm-linux-ld CC=arm-linux-gcc CXX=arm-linux-g++ RANLIB=arm-linux-ranlib AR=arm-linux-ar ./configure --prefix=/output/dir --host=arm-linux
82+
ar x libjpeg62-dev_6b-9_arm.deb
83+
tar xzf data.tar.gz
84+
85+
Move libjpeg.a to /opt/Qtopia/sharp/lib and the include files to
86+
/opt/Qtopia/sharp/include.
7887

7988
Note that if you're attempting to compile using Borland C++, you'll have to
8089
make a few changes to the code: see http://www.bcbdev.com/articles/jpeg.htm
8190
for details.
8291

8392
PortaBase for Zaurus Compilation
8493
--------------------------------
85-
After compiling Metakit and Beecrypt as described above, PortaBase can be
86-
compiled in the usual manner for Qtopia applications. Use tmake on
87-
portabase_test.pro for desktop testing and portabase.pro when building for
88-
the Zaurus; tmake usage is described in the compiler setup HOWTO mentioned
89-
above. "arm-linux-strip" should be run on the Arm version of the
90-
"portabase" executable in order to reduce its size by removing unneeded
91-
debugging information and such.
94+
After compiling Metakit, BeeCrypt, and libjpeg as described above, PortaBase
95+
can be compiled in the usual manner for Qtopia applications. Use tmake on
96+
portabase.pro; tmake usage is described in the compiler setup HOWTO mentioned
97+
above. Use "qtopia" as one of the CONFIG parameters in the file.
98+
"arm-linux-strip" should be run on the resulting "portabase" executable in
99+
order to reduce its size by removing unneeded debugging information and such.
92100

93101
To compile a version with support for the file navigation widget on
94-
newer Sharp ROMs, use portabase_sharp.pro instead. You will also need the
95-
development files for Sharp's custom Zaurus libraries; these are available
96-
from the following (Japanese) page:
102+
newer Sharp ROMs, replace the "qtopia" CONFIG parameter with "sharp". You
103+
will also need the development files for Sharp's custom Zaurus libraries;
104+
these are available from the following (Japanese) page:
97105

98106
http://developer.ezaurus.com/sl_j/doc/reference.htm
99107

108+
To compile for the desktop Qtopia test environment, add "test" to the list of
109+
CONFIG parameters.
110+
100111
PortaBase for Windows Compilation, Packaging
101112
--------------------------------------------
102113
- Install Qt version 3.2 or newer and configure it (make sure the "bin"
103114
directory is in your path and that the QTDIR and QMAKESPEC environment
104115
variables are set correctly).
105-
- Adjust the value of INCLUDEPATH in portabase_desktop.pro as needed to locate
106-
the library header files on your system.
107-
- Run "qmake -t vcapp -o portabase.dsp portabase_desktop.pro"
116+
- Adjust the value of INCLUDEPATH in portabase.pro as needed to locate the
117+
library header files on your system.
118+
- Make sure that "desktop" is among the CONFIG parameters in portabase.pro
119+
(and that "qtopia", "sharp", and "test" aren't).
120+
- Run "qmake -t vcapp -o portabase.dsp portabase.pro"
108121
- Copy beecrypt.dll, beecrypt.lib, libjpeg.lib, and mk4vc60s.lib to the
109122
PortaBase source directory.
110123
- Open the generated portabase.dsp file in Visual C++, and from
@@ -113,7 +126,7 @@ PortaBase for Windows Compilation, Packaging
113126
- Copy qt-mtnc321.dll from Qt's "lib" directory to the Release subdirectory
114127
created by Visual C++.
115128
- Copy msvcrt.dll to the PortaBase source directory.
116-
- Run "lrelease portabase_desktop.pro" to generate the UI translation files.
129+
- Run "lrelease portabase.pro" to generate the UI translation files.
117130
- Open portabase.iss with Inno Setup and choose "Compile"
118131

119132
Debian Package Building
@@ -130,9 +143,11 @@ Linux/UNIX compilation
130143
----------------------
131144
- Set the QMAKESPEC and QTDIR environment variables as appropriate for your
132145
platform
133-
- Make sure the Metakit and Beecrypt static libraries (.a) are in your
146+
- Make sure the Metakit and BeeCrypt static libraries (.a) are in your
134147
LD_LIBRARY_PATH, and that the other library files (.so, .la, etc.) aren't.
135-
- Run qmake on portabase_desktop.pro
148+
- Make sure that "desktop" is among the CONFIG parameters in portabase.pro
149+
(and that "qtopia", "sharp", and "test" aren't).
150+
- Run qmake on portabase.pro
136151
- Run make
137152

138153
Linux/UNIX installation
@@ -154,8 +169,8 @@ files into the correct locations:
154169
/usr/share/doc/portabase/ja/portabase.html
155170
/usr/share/doc/portabase/ja/portabase.qm
156171

157-
...and so on. (The portabase.qm files are created by running lrelease on the
158-
.pro file.)
172+
...and so on. (The portabase.qm files are created by running lrelease on
173+
portabase.pro.)
159174

160175
Package Building
161176
----------------
@@ -168,17 +183,19 @@ directory hierarchy as root in a directory of your choice:
168183
/portabase/opt/QtPalmtop/bin/portabase
169184
/portabase/opt/QtPalmtop/help/en/html/portabase.html
170185
/portabase/opt/QtPalmtop/help/ja/html/portabase.html
171-
/portabase/opt/QtPalmtop/help/tw/html/portabase.html
186+
/portabase/opt/QtPalmtop/help/zh_TW/html/portabase.html
172187
/portabase/opt/QtPalmtop/i18n/cs/portabase.qm
173188
/portabase/opt/QtPalmtop/i18n/fr/portabase.qm
174189
/portabase/opt/QtPalmtop/i18n/ja/portabase.qm
175-
/portabase/opt/QtPalmtop/i18n/tw/portabase.qm
190+
/portabase/opt/QtPalmtop/i18n/zh_TW/portabase.qm
176191
/portabase/opt/QtPalmtop/pics/PortaBase.png
177192
/portabase/opt/QtPalmtop/pics/portabase/QtaDatePickerNext.xpm
178193
/portabase/opt/QtPalmtop/pics/portabase/QtaDatePickerPrev.xpm
179194
/portabase/opt/QtPalmtop/pics/portabase/calc.png
180195
/portabase/opt/QtPalmtop/pics/portabase/calendar.xpm
181196
/portabase/opt/QtPalmtop/pics/portabase/checked.png
197+
/portabase/opt/QtPalmtop/pics/portabase/image.png
198+
/portabase/opt/QtPalmtop/pics/portabase/note.png
182199
/portabase/opt/QtPalmtop/pics/portabase/save.png
183200
/portabase/opt/QtPalmtop/pics/portabase/save_disabled.png
184201
/portabase/opt/QtPalmtop/pics/portabase/unchecked.png

Diff for: QtaDatePicker.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ QDatePicker::QDatePicker(QDate *inDate, QWidget *parent)
120120
new QWidget(hbox);
121121

122122
// Create the 'OK' button
123-
QPushButton *okButton = new QPushButton(tr("OK"), hbox);
123+
QPushButton *okButton = new QPushButton(PBDialog::tr("OK"), hbox);
124124
connect(okButton, SIGNAL(clicked()), this, SLOT(accept()));
125125
new QWidget(hbox);
126126

@@ -130,7 +130,7 @@ QDatePicker::QDatePicker(QDate *inDate, QWidget *parent)
130130
new QWidget(hbox);
131131

132132
// Create the 'Cancel' button
133-
QPushButton *cancelButton = new QPushButton(tr("Cancel"), hbox);
133+
QPushButton *cancelButton = new QPushButton(PBDialog::tr("Cancel"), hbox);
134134
connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject()));
135135
new QWidget(hbox);
136136

Diff for: README.txt

+8-5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
PortaBase 1.8 (August 2003)
1+
PortaBase 1.9 (March 2004)
22
---------------------------
33
PortaBase (portable database) is a personal database application originally
44
written for the Linux-based models of Sharp Zaurus PDA (and should work on
@@ -8,7 +8,7 @@ run as a Linux or Windows desktop application.
88
The main features PortaBase currently has are:
99
- One data table per file
1010
- String, Integer, Decimal, Boolean, Note (multi-line text), Date, Time,
11-
Calculation, Sequence, and Enum column types
11+
Calculation, Sequence, Image, and Enum column types
1212
- Add, edit, and delete rows of data
1313
- Custom data views (subsets of the columns in any order)
1414
- Filter the displayed rows using sets of conditions
@@ -27,6 +27,7 @@ The main features PortaBase currently has are:
2727
- Pick any available font to use throughout the application
2828
- User-specified alternating row background colors
2929
- Simple calculator widget for entering numeric data
30+
- Customizable menu and toolbar configuration
3031

3132
See the help file (help/html/portabase.html) for more information on features
3233
and usage. This help file is also the online help for the application,
@@ -43,9 +44,9 @@ To upgrade from a previous version of PortaBase, do the following:
4344
3) delete the .ipk file (you don't have to, but it frees up space)
4445

4546
IMPORTANT NOTE: Metakit is no longer installed as a separate library.
46-
PortaBase now also uses the Beecrypt encryption library, and installing
47+
PortaBase now also uses the BeeCrypt and libjpeg libraries, and installing
4748
each library separately makes things more complicated than most people
48-
would prefer. Both libraries are now compiled into the PortaBase
49+
would prefer. All these libraries are now compiled into the PortaBase
4950
executable.
5051

5152
Windows Installation and Upgrades
@@ -64,12 +65,14 @@ available from http://prdownloads.sourceforge.net/zaurus/
6465
- MobileDB import code based on code from ZReader
6566
(http://www.codecubed.com/zreader/index.html)
6667
- CSV import code based on code from KSpread (http://www.koffice.org/kspread/)
67-
- the Beecrypt library (http://www.virtualunlimited.com/products/beecrypt/)
68+
- the BeeCrypt library (http://www.virtualunlimited.com/products/beecrypt/)
6869
for encryption algorithms and good random number generation
6970
- the color picker dialog from HTML@Zaurus
7071
(http://www.codefactor.de/htmlAtZaurus.html), itself based on Qt's QColorDialog
7172
- a modified version of the calculator widget from KMyMoney2
7273
(http://kmymoney2.sourceforge.net/)
74+
- libjpeg (http://www.ijg.org) for efficient loading and manipulation of JPEG
75+
image files
7376

7477
License
7578
-------

Diff for: calc/calcnode.cpp

+13-13
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* calcnode.cpp
33
*
4-
* (c) 2003 by Jeremy Bowman <[email protected]>
4+
* (c) 2003-2004 by Jeremy Bowman <[email protected]>
55
*
66
* This program is free software; you can redistribute it and/or modify
77
* it under the terms of the GNU General Public License as published by
@@ -15,7 +15,7 @@
1515
#include "calcnode.h"
1616
#include "../database.h"
1717

18-
CalcNode::CalcNode(int type, const QString &value) : nodeType(type)
18+
CalcNode::CalcNode(int type, const QString &value) : QObject(), nodeType(type)
1919
{
2020
nodeValue = value;
2121
}
@@ -216,27 +216,27 @@ QString CalcNode::description(Database *db, int type, const QString &value)
216216
case CALC_DIVIDE:
217217
return "/";
218218
case CALC_DAYS:
219-
return QObject::tr("Days_Between");
219+
return tr("Days_Between");
220220
case CALC_MAX:
221-
return QObject::tr("MAX");
221+
return tr("MAX");
222222
case CALC_MIN:
223-
return QObject::tr("MIN");
223+
return tr("MIN");
224224
case CALC_AVERAGE:
225-
return QObject::tr("AVERAGE");
225+
return tr("AVERAGE");
226226
case CALC_ABS:
227-
return QObject::tr("ABS");
227+
return tr("ABS");
228228
case CALC_SQRT:
229-
return QObject::tr("SQRT");
229+
return tr("SQRT");
230230
case CALC_LOG:
231-
return QObject::tr("LOG");
231+
return tr("LOG");
232232
case CALC_LN:
233-
return QObject::tr("LN");
233+
return tr("LN");
234234
case CALC_SECONDS:
235-
return QObject::tr("Seconds_Between");
235+
return tr("Seconds_Between");
236236
case CALC_MINUTES:
237-
return QObject::tr("Minutes_Between");
237+
return tr("Minutes_Between");
238238
case CALC_HOURS:
239-
return QObject::tr("Hours_Between");
239+
return tr("Hours_Between");
240240
default:
241241
return "";
242242
}

Diff for: calc/calcnode.h

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* calcnode.h
33
*
4-
* (c) 2003 by Jeremy Bowman <[email protected]>
4+
* (c) 2003-2004 by Jeremy Bowman <[email protected]>
55
*
66
* This program is free software; you can redistribute it and/or modify
77
* it under the terms of the GNU General Public License as published by
@@ -37,15 +37,17 @@
3737
#define CALC_HOURS 34
3838
#define CALC_LAST_OP 34
3939

40+
#include <qobject.h>
4041
#include <qstringlist.h>
4142

4243
class CalcNode;
4344
class Database;
4445

4546
typedef QValueList<CalcNode*> CalcNodeList;
4647

47-
class CalcNode
48+
class CalcNode : public QObject
4849
{
50+
Q_OBJECT
4951
public:
5052
CalcNode(int type, const QString &value);
5153
~CalcNode();

Diff for: calc/calcnodeeditor.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ bool CalcNodeEditor::isValid()
140140
bool ok = FALSE;
141141
number->getValue().toDouble(&ok);
142142
if (!ok) {
143-
QMessageBox::warning(this, tr("PortaBase"),
143+
QMessageBox::warning(this, QQDialog::tr("PortaBase"),
144144
tr("Constant must be a decimal value"));
145145
}
146146
return ok;

Diff for: calc/calctimeeditor.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ bool CalcTimeEditor::isValid()
125125
QString error = db->isValidValue(TIME, time);
126126
if (error != "") {
127127
QString message = tr("Constant") + ": " + error;
128-
QMessageBox::warning(this, tr("PortaBase"), message);
128+
QMessageBox::warning(this, QQDialog::tr("PortaBase"), message);
129129
return FALSE;
130130
}
131131
return TRUE;

Diff for: calculator.cpp

+3-2
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
#include <qregexp.h>
2929

3030
#include "calculator.h"
31+
#include "pbdialog.h"
3132

3233
Calculator::Calculator(QWidget* parent, const char *name)
3334
: QQDialog("", parent, name, TRUE)
@@ -132,10 +133,10 @@ Calculator::Calculator(QWidget* parent, const char *name)
132133
#if !defined(Q_WS_QWS)
133134
QHBox *hbox = new QHBox(this);
134135
new QWidget(hbox);
135-
QPushButton *okButton = new QPushButton(tr("OK"), hbox);
136+
QPushButton *okButton = new QPushButton(PBDialog::tr("OK"), hbox);
136137
connect(okButton, SIGNAL(clicked()), this, SLOT(accept()));
137138
new QWidget(hbox);
138-
QPushButton *cancelButton = new QPushButton(tr("Cancel"), hbox);
139+
QPushButton *cancelButton = new QPushButton(PBDialog::tr("Cancel"), hbox);
139140
connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject()));
140141
new QWidget(hbox);
141142
grid->addMultiCellWidget(hbox, 5, 5, 0, 4);

Diff for: colorbutton.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@
99
* (at your option) any later version.
1010
*/
1111

12+
#include "colorbutton.h"
13+
1214
#if defined(Q_WS_QWS)
1315
#include "colordialog.h"
1416
#else
1517
#include <qcolordialog.h>
1618
#endif
1719

18-
#include "colorbutton.h"
19-
2020
ColorButton::ColorButton(const QColor &color, QWidget *parent, const char *name)
2121
: QPushButton(parent, name)
2222
{

0 commit comments

Comments
 (0)