aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFritz Elfert <felfert@to.com>2002-03-20 02:18:51 +0000
committerFritz Elfert <felfert@to.com>2002-03-20 02:18:51 +0000
commit1d9b2e0e156f9a58bd642b9f9e8b2a08e768f5ed (patch)
tree580f6fa06ce0d114f3861c709203af4c3d86237a
parentbedd0177bc1ec1bf3c425e034958209554c20171 (diff)
downloadplptools-1d9b2e0e156f9a58bd642b9f9e8b2a08e768f5ed.tar.gz
plptools-1d9b2e0e156f9a58bd642b9f9e8b2a08e768f5ed.tar.bz2
plptools-1d9b2e0e156f9a58bd642b9f9e8b2a08e768f5ed.zip
- rpcs: Implemented scratch RAM access.
- Updated spec file (not complete) - Updated KDE translations - kioslave and property-dialog now translate correctly - ppsocket: Added a patch for FreeBSD - plpftp: Some experimental code for testing
-rw-r--r--etc/plptools.spec.in46
-rw-r--r--kde2/kioslave/kio_plp.cpp89
-rw-r--r--kde2/plugins/plpprops.cc93
-rw-r--r--kde2/plugins/plppropsFactory.cc44
-rw-r--r--kde2/po/de/klipsi.po28
-rw-r--r--kde2/po/de/kpsion.po159
-rw-r--r--kde2/po/de/libplpprops.po248
-rw-r--r--kde2/po/klipsi.pot23
-rw-r--r--kde2/po/kpsion.pot146
-rw-r--r--kde2/po/libplpprops.pot246
-rw-r--r--lib/plpintl.h4
-rw-r--r--lib/ppsocket.cc7
-rw-r--r--lib/rpcs.h98
-rw-r--r--lib/rpcs32.cc72
-rw-r--r--lib/rpcs32.h15
-rw-r--r--plpftp/ftp.cc43
-rw-r--r--plpprint/plpprintd.cc1
17 files changed, 848 insertions, 514 deletions
diff --git a/etc/plptools.spec.in b/etc/plptools.spec.in
index 86679bf..05603cb 100644
--- a/etc/plptools.spec.in
+++ b/etc/plptools.spec.in
@@ -25,17 +25,21 @@ Requires: %{name} = %{version} kdelibs >= 2.1 qt >= 2.2.4
%description
This package contains the programs (client and server), necessary to
-communicate with a psion series 5. The psion's file-system will
+communicate with a Psion palmtop. The psion's file-system will
be automatically mounted under /mnt/psion at the time it is
connected to your computer. If the psion is shut down or
disconnected, the contents of /mnt/psion will automatically
-disappear. A second program (plpftp) allows you to transfer
-files in a ftp-like manner, view and modifiy processes on your
-psion and some other useful stuff.
+disappear. Other programs included are:
+ - plpftp, a program which allows you to transfer files in a ftp-like
+ manner, view and modifiy processes on your psion.
+ - plpbackup, a backup/restore utility.
+ - plpprintd, a daemon for enabling printing from a Psion Series 5 via any
+ accessible printer.
+ - sisinstall, an installer for Psion's SIS software package format.
%description devel
This package contains the static library and include files for building
-programs which can communicate with a psion series 5.
+programs which can communicate with a Psion palmtop.
%description kde
This package provides support for a new protocol prefix "psion:/" for
@@ -45,17 +49,22 @@ dialog provides access to Psions proprietary file attributes and information
about the Psion's drives as well as generic machine information.
%description -l de
-Dieses Packet enthält Programme zur Kommunikation mit einem Psion 5.
+Dieses Packet enthält Programme zur Kommunikation mit einem Psion Palmtop.
Das Dateisystem des Psion wird beim Anschließen automatisch unter
/mnt/psion eingehängt. Wird der Psion ausgeschaltet oder das Kabel
gezogen, so verschwindet der Inhalt dieses Verzeichnisses automatisch
-und erscheint erneuten Anschließen wieder. Ein weiteres Programm ist
-plpftp, welches eine FTP-ähnliche Oberfläche für Dateitransfer
-bietet.
+und erscheint erneuten Anschließen wieder. Weiterhin sind enthalten:
+ - plpftp, ein Programm welches eine FTP-ähnliche Oberfläche für Dateitransfer
+ bietet und Prozesse auf dem Psion stoppen und starten kann.
+ - plpbackup, ein Backup/Restore Utility für die Kommandozeile.
+ - plpprintd, ein Daemon welcher Ausdrucken von einem Psion Serie 5 über
+ beliebige vefügbare Drucker ermöglicht
+ - sisinstall, ein Installationsprogramm für das Psion-eigene SIS
+ packetformat.
%description -l de devel
Dieses Packet enthält die statische Bibliothek und include-Dateien
-zur Programm-Entwicklung von Kommunikations-software für den Psion 5.
+zur Programm-Entwicklung von Kommunikations-software für den Psion.
%description -l de kde
Dieses Packet stellt Unterstützung für eine neues Protokoll-Präfix "psion:/"
@@ -75,7 +84,7 @@ This package contains a KDE utility program for backup, restore and formatting
Psion drives.
%description -l de -n kpsion
-Dieses Packet enthält ein KDE werkzeug zum Backup, Restore und Formatieren
+Dieses Packet enthält ein KDE Werkzeug zum Backup, Restore und Formatieren
von Psion Laufwerken.
%package -n klipsi
@@ -133,6 +142,21 @@ ldconfig
test ! -d /mnt/psion && mkdir -p /mnt/psion
/sbin/chkconfig --add psion
/etc/rc.d/init.d/psion condrestart
+KONQRC=`kde-config --expandvars --install config`/konquerorrc
+if grep -q '\[Notification Messages\]' $KONQRC ; then
+(
+ sed -n -e '1,/\[Notification Messages\]/p'
+ echo askSaveinode/x-psion-drive=No
+ sed -n -e '/\[Notification Messages\]/,$p' | tail +1
+) > /tmp/$$
+mv /tmp/$$ $KONQRC
+else
+cat>>$KONQRC<<EOF
+
+[Notification Messages]
+askSaveinode/x-psion-drive=No
+EOF
+fi
%preun
if [ "$1" = 0 ]
diff --git a/kde2/kioslave/kio_plp.cpp b/kde2/kioslave/kio_plp.cpp
index f8dc9dd..125c2ed 100644
--- a/kde2/kioslave/kio_plp.cpp
+++ b/kde2/kioslave/kio_plp.cpp
@@ -3,8 +3,7 @@
*
* This file is part of plptools.
*
- * Copyright (C) 1999 Philip Proudman <philip.proudman@btinternet.com>
- * Copyright (C) 2000, 2001 Fritz Elfert <felfert@to.com>
+ * Copyright (C) 2000-2002 Fritz Elfert <felfert@to.com>
*
* 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
@@ -70,7 +69,8 @@ kdemain( int argc, char **argv ) {
KInstance instance("kio_plp");
if (argc != 4) {
- fprintf(stderr, "Usage: kio_plp protocol domain-socket1 domain-socket2\n");
+ fprintf(stderr,
+ "Usage: kio_plp protocol domain-socket1 domain-socket2\n");
exit(-1);
}
kdDebug(PLP_DEBUGAREA) << "PLP: kdemain: starting" << endl;
@@ -277,7 +277,7 @@ openConnection() {
return;
}
- /* If we have a S5, get the Psion's Owner- and Mach- info.
+ /* Get the Psion's Ownerinfo and - if we have an S5 - the Machineinfo.
* This implicitely sets the Timezone info of the Psion also.
*/
bufferArray b;
@@ -384,13 +384,15 @@ listDir(const KURL& _url) {
//in this case we don't need to do a real listdir
UDSEntry entry;
UDSAtom atom;
- for (QStringList::Iterator it = drives.begin(); it != drives.end(); it++) {
+ QStringList::Iterator it;
+ for (it = drives.begin(); it != drives.end(); it++) {
entry.clear();
atom.m_uds = KIO::UDS_NAME;
atom.m_str = (*it);
kdDebug(PLP_DEBUGAREA) << "listing " << (*it) << endl;
entry.append(atom);
- createVirtualDirEntry(entry, drivechars[*it] == 'Z', PLP_FTYPE_DRIVE);
+ createVirtualDirEntry(entry, drivechars[*it] == 'Z',
+ PLP_FTYPE_DRIVE);
listEntry(entry, false);
}
listEntry(entry, true);
@@ -473,9 +475,9 @@ createVirtualDirEntry(UDSEntry & entry, bool rdonly, int type) {
break;
case PLP_FTYPE_DRIVE:
atom.m_uds = KIO::UDS_FILE_TYPE;
- atom.m_long = S_IFREG;
+ atom.m_long = S_IFDIR;
entry.append(atom);
- atom.m_uds = KIO::UDS_GUESSED_MIME_TYPE;
+ atom.m_uds = KIO::UDS_MIME_TYPE;
atom.m_str = QString("inode/x-psion-drive");
entry.append(atom);
break;
@@ -732,7 +734,8 @@ mkdir(const KURL& url, int) {
return;
kdDebug(PLP_DEBUGAREA) << "mkdir(" << name << ")" << endl;
if (isRomDrive(name)) {
- error(ERR_ACCESS_DENIED, i18n("%1: read only filesystem").arg(url.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: read only filesystem").arg(url.path()));
return;
}
if (isRoot(name) || isDrive(name)) {
@@ -750,7 +753,7 @@ bool PLPProtocol::
checkForError(Enum<rfsv::errs> res, QString n1, QString n2) {
if (res != rfsv::E_PSI_GEN_NONE) {
kdDebug(PLP_DEBUGAREA) << "plp error: " << res << endl;
- QString reason(res);
+ QString reason(KGlobal::locale()->translate(res));
QString text;
if (!!n1 && !!n2)
text = i18n("%1 or %2: %3").arg(n1).arg(n2).arg(reason);
@@ -791,17 +794,19 @@ del( const KURL& url, bool isfile) {
return;
kdDebug(PLP_DEBUGAREA) << "del(" << name << ")" << endl;
if (isRomDrive(name)) {
- error(ERR_ACCESS_DENIED, i18n("%1: read only filesystem").arg(url.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: read only filesystem").arg(url.path()));
return;
}
if (isRoot(name) || isDrive(name)) {
- error(ERR_ACCESS_DENIED, i18n("%1: virtual directory").arg(url.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: virtual directory").arg(url.path()));
return;
}
convertName(name);
- Enum<rfsv::errs> res =
- (isfile) ? plpRfsv->remove(name.latin1()) : plpRfsv->rmdir(name.latin1());
+ Enum<rfsv::errs> res = (isfile) ?
+ plpRfsv->remove(name.latin1()) : plpRfsv->rmdir(name.latin1());
if (checkForError(res, url.path()))
return;
finished();
@@ -816,7 +821,8 @@ chmod( const KURL& url, int permissions ) {
return;
kdDebug(PLP_DEBUGAREA) << "chmod(" << name << ")" << endl;
if (isRomDrive(name)) {
- error(ERR_ACCESS_DENIED, i18n("%1: read only filesystem").arg(url.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: read only filesystem").arg(url.path()));
return;
}
if (isRoot(name) || isDrive(name)) {
@@ -898,11 +904,13 @@ put( const KURL& url, int _mode, bool _overwrite, bool /*_resume*/ ) {
return;
kdDebug(PLP_DEBUGAREA) << "put(" << name << ")" << endl;
if (isRomDrive(name)) {
- error(ERR_ACCESS_DENIED, i18n("%1: read only filesystem").arg(url.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: read only filesystem").arg(url.path()));
return;
}
if (isRoot(name) || isDrive(name)) {
- error(ERR_ACCESS_DENIED, i18n("%1: virtual directory").arg(url.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: virtual directory").arg(url.path()));
return;
}
convertName(name);
@@ -911,9 +919,11 @@ put( const KURL& url, int _mode, bool _overwrite, bool /*_resume*/ ) {
u_int32_t handle;
int result;
- res = plpRfsv->fcreatefile(plpRfsv->opMode(rfsv::PSI_O_RDWR), name.latin1(), handle);
+ res = plpRfsv->fcreatefile(
+ plpRfsv->opMode(rfsv::PSI_O_RDWR), name.latin1(), handle);
if ((res == rfsv::E_PSI_FILE_EXIST) && _overwrite)
- res = plpRfsv->freplacefile(plpRfsv->opMode(rfsv::PSI_O_RDWR), name.latin1(), handle);
+ res = plpRfsv->freplacefile(
+ plpRfsv->opMode(rfsv::PSI_O_RDWR), name.latin1(), handle);
if (checkForError(res, url.path()))
return;
@@ -950,12 +960,15 @@ rename(const KURL &src, const KURL &dest, bool _overwrite) {
return;
kdDebug(PLP_DEBUGAREA) << "rename(" << from << "," << to << ")" << endl;
if ((driveChar(from) != driveChar(to)) && (driveChar(to) != '\0')) {
- error(ERR_ACCESS_DENIED, i18n("%1 or %2: virtual directory").arg(src.path()).arg(dest.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1 or %2: virtual directory").arg(
+ src.path()).arg(dest.path()));
kdDebug(PLP_DEBUGAREA) << "from FS != to FS" << endl;
return;
}
if (isRomDrive(from)) {
- error(ERR_ACCESS_DENIED, i18n("%1: read only filesystem").arg(src.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: read only filesystem").arg(src.path()));
kdDebug(PLP_DEBUGAREA) << "from ROFS" << endl;
return;
}
@@ -966,7 +979,8 @@ rename(const KURL &src, const KURL &dest, bool _overwrite) {
}
bool volRename = isDrive(from);
if (isRomDrive(to)) {
- error(ERR_ACCESS_DENIED, i18n("%1: read only filesystem").arg(dest.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: read only filesystem").arg(dest.path()));
kdDebug(PLP_DEBUGAREA) << "to ROFS" << endl;
return;
}
@@ -991,7 +1005,8 @@ rename(const KURL &src, const KURL &dest, bool _overwrite) {
convertName(to);
if (!_overwrite) {
u_int32_t attr;
- if ((res = plpRfsv->fgetattr(to.latin1(), attr)) == rfsv::E_PSI_GEN_NONE) {
+ if ((res = plpRfsv->fgetattr(
+ to.latin1(), attr)) == rfsv::E_PSI_GEN_NONE) {
error(ERR_FILE_ALREADY_EXIST, to);
return;
@@ -1032,23 +1047,28 @@ copy( const KURL &src, const KURL &dest, int _mode, bool _overwrite ) {
return;
kdDebug(PLP_DEBUGAREA) << "copy(" << from << "," << to << ")" << endl;
if (isRoot(from) || isDrive(from)) {
- error(ERR_ACCESS_DENIED, i18n("%1 or %2: virtual directory").arg(src.path()).arg(dest.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1 or %2: virtual directory").arg(
+ src.path()).arg(dest.path()));
return;
}
convertName(from);
if (isRomDrive(to)) {
- error(ERR_ACCESS_DENIED, i18n("%1: read only filesystem").arg(dest.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: read only filesystem").arg(dest.path()));
return;
}
if (isRoot(to) || isDrive(to)) {
- error(ERR_ACCESS_DENIED, i18n("%1: virtual directory").arg(dest.path()));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: virtual directory").arg(dest.path()));
return;
}
convertName(to);
Enum <rfsv::errs> res;
if (!_overwrite) {
u_int32_t attr;
- if ((res = plpRfsv->fgetattr(to.latin1(), attr)) == rfsv::E_PSI_GEN_NONE) {
+ if ((res = plpRfsv->fgetattr(to.latin1(), attr))
+ == rfsv::E_PSI_GEN_NONE) {
error(ERR_FILE_ALREADY_EXIST, to);
return;
}
@@ -1056,7 +1076,8 @@ copy( const KURL &src, const KURL &dest, int _mode, bool _overwrite ) {
if (emitTotalSize(from))
return;
t_last = t_start = time(0);
- res = plpRfsv->copyOnPsion(from.latin1(), to.latin1(), (void *)this, progresswrapper);
+ res = plpRfsv->copyOnPsion(from.latin1(),
+ to.latin1(), (void *)this, progresswrapper);
if (checkForError(res, src.path(), dest.path()))
return;
finished();
@@ -1136,7 +1157,8 @@ special(const QByteArray &a) {
Enum<rfsv::errs>res = plpRpcs->getOwnerInfo(b);
if (res != rfsv::E_PSI_GEN_NONE) {
- kdDebug(PLP_DEBUGAREA) << "get Ownerinfo returned " << res << endl;
+ kdDebug(PLP_DEBUGAREA) <<
+ "get Ownerinfo returned " << res << endl;
error(ERR_COULD_NOT_STAT, "Owner");
return;
}
@@ -1166,7 +1188,8 @@ special(const QByteArray &a) {
return;
}
if (isRoot(name) || isDrive(name)) {
- error(ERR_ACCESS_DENIED, i18n("%1: virtual directory").arg(name));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: virtual directory").arg(name));
return;
}
isRoFS = isRomDrive(name);
@@ -1206,11 +1229,13 @@ special(const QByteArray &a) {
return;
}
if (isRoot(name) || isDrive(name)) {
- error(ERR_ACCESS_DENIED, i18n("%1: virtual directory").arg(name));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: virtual directory").arg(name));
return;
}
if (isRomDrive(name)) {
- error(ERR_ACCESS_DENIED, i18n("%1: read only filesystem").arg(name));
+ error(ERR_ACCESS_DENIED,
+ i18n("%1: read only filesystem").arg(name));
return;
}
convertName(name);
diff --git a/kde2/plugins/plpprops.cc b/kde2/plugins/plpprops.cc
index 769b938..6bc71f0 100644
--- a/kde2/plugins/plpprops.cc
+++ b/kde2/plugins/plpprops.cc
@@ -3,7 +3,7 @@
*
* This file is part of plptools.
*
- * Copyright (C) 2001 Fritz Elfert <felfert@to.com>
+ * Copyright (C) 2001-2002 Fritz Elfert <felfert@to.com>
*
* 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
@@ -39,12 +39,23 @@
#include <qcheckbox.h>
#include <qwhatsthis.h>
-#include <rfsv.h>
-#include <rpcs.h>
-
#include <strstream>
#include <iomanip>
+#ifdef ENABLE_NLS
+#define _PLPINTL_H_ // Override NLS stuff in headers from libplp
+static inline QString X_(const char *t) {
+ return KGlobal::locale()->translate(t);
+}
+static inline QString _(const char *t) {
+ return KGlobal::locale()->translate(t);
+}
+static inline const char *N_(const char *t) { return t; }
+#endif
+
+#include <rfsv.h>
+#include <rpcs.h>
+
#define PLP_CMD_DRIVEINFO 1
#define PLP_CMD_OWNERINFO 2
#define PLP_CMD_GETATTR 3
@@ -742,7 +753,7 @@ PlpMachinePage::PlpMachinePage( KPropertiesDialog *_props ) {
box = new QVBoxLayout(d->f, KDialog::spacingHint());
gb = new QGroupBox(i18n("General"), d->f, "genInfBox");
box->addWidget(gb);
- d->g = new QGridLayout(gb, 1, 1, KDialog::marginHint(),
+ d->g = new QGridLayout(gb, 8, 2, KDialog::marginHint(),
KDialog::spacingHint());
d->machType = makeEntry(i18n("Machine type:"), gb, 1);
@@ -769,7 +780,7 @@ PlpMachinePage::PlpMachinePage( KPropertiesDialog *_props ) {
gb = new QGroupBox(i18n("Time"), d->f, "timeInfBox");
box->addWidget(gb);
- d->g = new QGridLayout(gb, 1, 1, KDialog::marginHint(),
+ d->g = new QGridLayout(gb, 5, 2, KDialog::marginHint(),
KDialog::spacingHint());
d->machTime = makeEntry(i18n("Date/Time:"), gb, 1);
QWhatsThis::add(d->machTime,
@@ -789,7 +800,7 @@ PlpMachinePage::PlpMachinePage( KPropertiesDialog *_props ) {
box = new QVBoxLayout(d->f, KDialog::spacingHint());
gb = new QGroupBox(i18n("Main battery"), d->f, "mbatInfBox");
box->addWidget(gb);
- d->g = new QGridLayout(gb, 1, 1, KDialog::marginHint(),
+ d->g = new QGridLayout(gb, 9, 2, KDialog::marginHint(),
KDialog::spacingHint());
d->mbattChanged = makeEntry(i18n("Changed at:"), gb, 1);
QWhatsThis::add(d->mbattChanged,
@@ -818,7 +829,7 @@ PlpMachinePage::PlpMachinePage( KPropertiesDialog *_props ) {
gb = new QGroupBox(i18n("Backup battery"), d->f, "bbatInfBox");
box->addWidget(gb);
- d->g = new QGridLayout(gb, 1, 1, KDialog::marginHint(),
+ d->g = new QGridLayout(gb, 5, 2, KDialog::marginHint(),
KDialog::spacingHint());
d->bbattStatus = makeEntry(i18n("Status:"), gb, 1);
QWhatsThis::add(d->bbattStatus,
@@ -835,12 +846,15 @@ PlpMachinePage::PlpMachinePage( KPropertiesDialog *_props ) {
gb = new QGroupBox(i18n("External power"), d->f, "epowerInfBox");
box->addWidget(gb);
+ d->g = new QGridLayout(gb, 4, 2, KDialog::marginHint(),
+ KDialog::spacingHint());
d->epowerSupplied = makeEntry(i18n("Supplied:"), gb, 1);
QWhatsThis::add(d->epowerSupplied,
i18n("This shows whether external power is currently supplied."));
d->epowerUsage = makeEntry(i18n("Usage time:"), gb, 2);
QWhatsThis::add(d->epowerUsage,
i18n("This shows the accumulated time of running on external power."));
+ d->g->addRowSpacing(0, KDialog::marginHint());
d->g->setColStretch(0, 1);
d->g->setColStretch(1, 1);
box->addStretch(10);
@@ -850,7 +864,7 @@ PlpMachinePage::PlpMachinePage( KPropertiesDialog *_props ) {
box = new QVBoxLayout(d->f, KDialog::spacingHint());
gb = new QGroupBox(i18n("ROM"), d->f, "romInfBox");
box->addWidget(gb);
- d->g = new QGridLayout(gb, 1, 1, KDialog::marginHint(),
+ d->g = new QGridLayout(gb, 5, 2, KDialog::marginHint(),
KDialog::spacingHint());
d->romVersion = makeEntry(i18n("Version:"), gb, 1);
QWhatsThis::add(d->romVersion,
@@ -867,7 +881,7 @@ PlpMachinePage::PlpMachinePage( KPropertiesDialog *_props ) {
gb = new QGroupBox(i18n("RAM"), d->f, "ramInfBox");
box->addWidget(gb);
- d->g = new QGridLayout(gb, 1, 1, KDialog::marginHint(),
+ d->g = new QGridLayout(gb, 6, 2, KDialog::marginHint(),
KDialog::spacingHint());
d->ramSize = makeEntry(i18n("Size:"), gb, 1);
QWhatsThis::add(d->ramSize,
@@ -910,10 +924,8 @@ bool PlpMachinePage::supports(KFileItemList _items) {
}
void PlpMachinePage::slotJobData(KIO::Job *job, const QByteArray &data) {
- cout << "Mjdata" << endl;
if (data.size() == sizeof(d->mi)) {
memcpy((char *)&d->mi, data, sizeof(d->mi));
- cout << "got machInfo" << endl;
d->machType->setText(KGlobal::locale()->translate(d->mi.machineType));
d->machName->setText(QString(d->mi.machineName));
@@ -922,20 +934,35 @@ void PlpMachinePage::slotJobData(KIO::Job *job, const QByteArray &data) {
s << hex << setw(16) << d->mi.machineUID << '\0';
d->machUID->setText(QString(s.str()));
d->machLang->setText(KGlobal::locale()->translate(d->mi.uiLanguage));
- d->dispGeo->setText(QString("%1x%2").arg(d->mi.displayWidth).arg(d->mi.displayHeight));
- d->regSize->setText(QString("%1 (%2)").arg(KIO::convertSize(d->mi.registrySize)).arg(KGlobal::locale()->formatNumber(d->mi.registrySize, 0)));
+ d->dispGeo->setText(QString("%1x%2").arg(
+ d->mi.displayWidth).arg(d->mi.displayHeight));
+ d->regSize->setText(
+ QString("%1 (%2)").arg(
+ KIO::convertSize(d->mi.registrySize)).arg(
+ KGlobal::locale()->formatNumber(d->mi.registrySize, 0)));
QString rev;
rev.sprintf("%d.%02d(%d)", d->mi.romMajor, d->mi.romMinor,
d->mi.romBuild);
d->romVersion->setText(rev);
- d->romSize->setText(QString("%1 (%2)").arg(KIO::convertSize(d->mi.romSize)).arg(KGlobal::locale()->formatNumber(d->mi.romSize, 0)));
+ d->romSize->setText(
+ QString("%1 (%2)").arg(KIO::convertSize(d->mi.romSize)).arg(
+ KGlobal::locale()->formatNumber(d->mi.romSize, 0)));
d->romProg->setText(d->mi.romProgrammable ? i18n("yes") : i18n("no"));
- d->ramSize->setText(QString("%1 (%2)").arg(KIO::convertSize(d->mi.ramSize)).arg(KGlobal::locale()->formatNumber(d->mi.ramSize, 0)));
- d->ramFree->setText(QString("%1 (%2)").arg(KIO::convertSize(d->mi.ramFree)).arg(KGlobal::locale()->formatNumber(d->mi.ramFree, 0)));
- d->ramMaxFree->setText(QString("%1 (%2)").arg(KIO::convertSize(d->mi.ramMaxFree)).arg(KGlobal::locale()->formatNumber(d->mi.ramMaxFree, 0)));
- d->ramDiskSz->setText(QString("%1 (%2)").arg(KIO::convertSize(d->mi.ramDiskSize)).arg(KGlobal::locale()->formatNumber(d->mi.ramDiskSize, 0)));
+ d->ramSize->setText(
+ QString("%1 (%2)").arg(
+ KIO::convertSize(d->mi.ramSize)).arg(
+ KGlobal::locale()->formatNumber(d->mi.ramSize, 0)));
+ d->ramFree->setText(
+ QString("%1 (%2)").arg(KIO::convertSize(d->mi.ramFree)).arg(
+ KGlobal::locale()->formatNumber(d->mi.ramFree, 0)));
+ d->ramMaxFree->setText(
+ QString("%1 (%2)").arg(KIO::convertSize(d->mi.ramMaxFree)).arg(
+ KGlobal::locale()->formatNumber(d->mi.ramMaxFree, 0)));
+ d->ramDiskSz->setText(
+ QString("%1 (%2)").arg(KIO::convertSize(d->mi.ramDiskSize)).arg(
+ KGlobal::locale()->formatNumber(d->mi.ramDiskSize, 0)));
PsiTime pt(&d->mi.time, &d->mi.tz);
@@ -943,7 +970,8 @@ void PlpMachinePage::slotJobData(KIO::Job *job, const QByteArray &data) {
dt.setTime_t(pt.getTime());
d->machTime->setText(KGlobal::locale()->formatDateTime(dt, false));
d->machUTCo->setText(i18n("%1 seconds").arg(d->mi.tz.utc_offset));
- d->machDST->setText((d->mi.tz.dst_zones & PsiTime::PSI_TZ_HOME) ? i18n("yes") : i18n("no"));
+ d->machDST->setText((d->mi.tz.dst_zones & PsiTime::PSI_TZ_HOME)
+ ? i18n("yes") : i18n("no"));
ostrstream mbs;
mbs << d->mi.mainBatteryUsedTime << '\0';
@@ -953,15 +981,27 @@ void PlpMachinePage::slotJobData(KIO::Job *job, const QByteArray &data) {
d->mbattChanged->setText(KGlobal::locale()->formatDateTime(dt, false));
d->mbattStatus->setText(
KGlobal::locale()->translate(d->mi.mainBatteryStatus));
- d->mbattPower->setText(QString("%1 mAs").arg(KGlobal::locale()->formatNumber(d->mi.mainBatteryUsedPower, 0)));
- d->mbattCurrent->setText(QString("%1 mA").arg(KGlobal::locale()->formatNumber(d->mi.mainBatteryCurrent, 0)));
- d->mbattVoltage->setText(QString("%1 mV").arg(KGlobal::locale()->formatNumber(d->mi.mainBatteryVoltage, 0)));
- d->mbattMaxVoltage->setText(QString("%1 mV").arg(KGlobal::locale()->formatNumber(d->mi.mainBatteryMaxVoltage, 0)));
+ d->mbattPower->setText(
+ QString("%1 mAs").arg(
+ KGlobal::locale()->formatNumber(d->mi.mainBatteryUsedPower, 0)));
+ d->mbattCurrent->setText(
+ QString("%1 mA").arg(
+ KGlobal::locale()->formatNumber(d->mi.mainBatteryCurrent, 0)));
+ d->mbattVoltage->setText(
+ QString("%1 mV").arg(
+ KGlobal::locale()->formatNumber(d->mi.mainBatteryVoltage, 0)));
+ d->mbattMaxVoltage->setText(
+ QString("%1 mV").arg(KGlobal::locale()->formatNumber(
+ d->mi.mainBatteryMaxVoltage, 0)));
d->bbattStatus->setText(
KGlobal::locale()->translate(d->mi.backupBatteryStatus));
- d->bbattVoltage->setText(QString("%1 mV").arg(KGlobal::locale()->formatNumber(d->mi.backupBatteryVoltage, 0)));
- d->bbattMaxVoltage->setText(QString("%1 mV").arg(KGlobal::locale()->formatNumber(d->mi.backupBatteryMaxVoltage, 0)));
+ d->bbattVoltage->setText(
+ QString("%1 mV").arg(
+ KGlobal::locale()->formatNumber(d->mi.backupBatteryVoltage, 0)));
+ d->bbattMaxVoltage->setText(
+ QString("%1 mV").arg(KGlobal::locale()->formatNumber(
+ d->mi.backupBatteryMaxVoltage, 0)));
ostrstream bbs;
bbs << d->mi.externalPowerUsedTime << '\0';
@@ -976,7 +1016,6 @@ void PlpMachinePage::slotJobFinished(KIO::Job *job) {
if (mJob->error())
job->showErrorDialog(d->props->dialog());
- cout << "MachInfo job has finished" << endl;
}
class PlpOwnerPage::PlpOwnerPagePrivate
diff --git a/kde2/plugins/plppropsFactory.cc b/kde2/plugins/plppropsFactory.cc
index f483ef9..e9b6219 100644
--- a/kde2/plugins/plppropsFactory.cc
+++ b/kde2/plugins/plppropsFactory.cc
@@ -2,18 +2,6 @@
#include <config.h>
#endif
-#ifdef ENABLE_NLS
-namespace LIBPLP {
-extern "C" {
-#include <plpintl.h>
- void init_libplp_i18n() {
- setlocale(LC_ALL, "");
- textdomain(PACKAGE);
- }
-};
-};
-#endif
-
#include "plppropsFactory.h"
#include "plpprops.h"
@@ -22,35 +10,31 @@ extern "C" {
#include <klocale.h>
extern "C" {
- void *init_libplpprops() {
- return new plppropsFactory();
- }
+ void *init_libplpprops() {
+ return new plppropsFactory();
+ }
};
plppropsFactory::plppropsFactory(QObject *parent, const char *name)
- : KLibFactory(parent, name) {
- s_global = new KInstance("plpprops");
- // Install the translations
-#ifdef ENABLE_NLS
- LIBPLP::init_libplp_i18n();
-#endif
- KGlobal::locale()->insertCatalogue(QString::fromLatin1("plptools"));
- KGlobal::locale()->insertCatalogue(QString::fromLatin1("libplpprops"));
+ : KLibFactory(parent, name) {
+ s_global = new KInstance("plpprops");
+ // Install the translations
+ KGlobal::locale()->insertCatalogue(QString::fromLatin1("plptools"));
+ KGlobal::locale()->insertCatalogue(QString::fromLatin1("libplpprops"));
}
plppropsFactory::~plppropsFactory() {
- delete s_global;
+ delete s_global;
}
QObject* plppropsFactory::createObject(QObject* parent, const char *name, const char *classname, const QStringList & ) {
- QObject *obj = 0L;
+ QObject *obj = 0L;
- if ((strcmp(classname, "KPropsDlgPlugin") == 0) &&
- parent &&
- parent->inherits("KPropertiesDialog"))
- obj = new PlpPropsPlugin(static_cast<KPropertiesDialog *>(parent));
- return obj;
+ if ((strcmp(classname, "KPropsDlgPlugin") == 0) && parent &&
+ parent->inherits("KPropertiesDialog"))
+ obj = new PlpPropsPlugin(static_cast<KPropertiesDialog *>(parent));
+ return obj;
}
#include <plppropsFactory.moc>
diff --git a/kde2/po/de/klipsi.po b/kde2/po/de/klipsi.po
index b653c50..992d9f1 100644
--- a/kde2/po/de/klipsi.po
+++ b/kde2/po/de/klipsi.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: plptools 0.11\n"
-"POT-Creation-Date: 2002-02-11 12:56+0100\n"
-"PO-Revision-Date: 2002-02-13 07:26CET\n"
+"POT-Creation-Date: 2002-03-20 02:52+0100\n"
+"PO-Revision-Date: 2002-03-20 03:00CET\n"
"Last-Translator: Fritz Elfert <felfert@to.com>\n"
"Language-Team: Deutsch <de@li.org>\n"
"MIME-Version: 1.0\n"
@@ -26,15 +26,29 @@ msgstr "Psion Zwischenablage"
msgid "Original Developer/Maintainer"
msgstr "Original Entwickler/Betreuer"
-#: toplevel.cpp:70
+#: toplevel.cpp:71
msgid "Klipsi - Psion Clipboard"
msgstr "Klipsi - Psion Zwischenablage"
-#: toplevel.cpp:72
+#: toplevel.cpp:73
msgid "&Quit"
msgstr "B&eenden"
-#: toplevel.cpp:732
+#: toplevel.cpp:562
+msgid ""
+"<QT>Your Psion is reported to be a <B>Series 3</B> machine. This type of "
+"machine does <B>not support</B> the remote clipboard protocol; Sorry.<BR/"
+"><B>Klipsi</B> will now terminate.</QT>"
+msgstr ""
+"<QT>Ihr Psion wurde als <B>Serie 3</B> Gerät erkannt. Dieser Gerätetyp "
+"unterstützt leider <B>nicht</B> das nötige Protokoll; Sorry.<BR/> "
+"<B>Klipsi</B> wird sich nun beenden.</QT>"
+
+#: toplevel.cpp:566 toplevel.cpp:591
+msgid "Protocol not supported"
+msgstr "Protokoll nicht unterstützt"
+
+#: toplevel.cpp:582
msgid ""
"<QT>Your Psion does not support the remote clipboard protocol.<BR/>The "
"reason for that is usually a missing server library on your Psion.<BR/>Make "
@@ -52,10 +66,6 @@ msgstr ""
"aktivieren. Sie können sie auch manuell aus dem PsiWin-Installationsordner "
"auf Ihren Psion kopieren.<BR/> <B>Klipsi</B> wird sich nun beenden.</QT>"
-#: toplevel.cpp:741
-msgid "Protocol not supported"
-msgstr "Protokoll nicht unterstützt"
-
#: toplevel.moc.cpp:42 toplevel.moc.cpp:47
msgid "TopLevel"
msgstr "TopLevel"
diff --git a/kde2/po/de/kpsion.po b/kde2/po/de/kpsion.po
index 133cc80..420feb8 100644
--- a/kde2/po/de/kpsion.po
+++ b/kde2/po/de/kpsion.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: plptools 0.11\n"
-"POT-Creation-Date: 2002-02-11 13:08+0100\n"
-"PO-Revision-Date: 2002-02-13 07:27CET\n"
+"POT-Creation-Date: 2002-03-20 02:52+0100\n"
+"PO-Revision-Date: 2002-03-20 03:08CET\n"
"Last-Translator: Fritz Elfert <felfert@to.com>\n"
"Language-Team: Deutsch <de@li.org>\n"
"MIME-Version: 1.0\n"
@@ -148,30 +148,47 @@ msgstr "Formatiere ausgewählte Laufwerke"
msgid "Retrieving machine info ..."
msgstr "Ermittle Geräte-Info ..."
-#: kpsion.cpp:297
+#: kpsion.cpp:298
+msgid "Could not get Psion machine type"
+msgstr "Konnte Psion Gerätetyp nicht ermitteln"
+
+#: kpsion.cpp:306
msgid "Could not get Psion machine info"
msgstr "Konnte Psion Geräteinfo nicht ermitteln"
-#: kpsion.cpp:312
+#: kpsion.cpp:329
+msgid "Could not read SIBO UID file"
+msgstr "Konnte SIBO UID Datei nicht lesen"
+
+#: kpsion.cpp:336
+msgid "Could not get Psion owner info"
+msgstr "Konnte Psion Eigner-Info nicht ermitteln"
+
+#: kpsion.cpp:365
+#, c-format
+msgid "Could not write SIBO UID file %1"
+msgstr "Konnte SIBO UID Datei %1 nicht schreiben."
+
+#: kpsion.cpp:381
msgid "an unknown machine"
msgstr "einem unbekannten Gerät"
-#: kpsion.cpp:323
+#: kpsion.cpp:392
msgid "Retrieving drive list ..."
msgstr "Ermittle Laufwerks-Liste ..."
-#: kpsion.cpp:326
+#: kpsion.cpp:395
msgid "Could not get list of drives"
msgstr "Konnte Liste der Laufwerke nicht ermitteln"
-#: kpsion.cpp:357 kpsion.cpp:778 kpsion.cpp:801 kpsion.cpp:825 kpsion.cpp:950
-#: kpsion.cpp:1201 kpsion.cpp:1362 kpsion.cpp:1371 kpsion.cpp:1402
-#: kpsion.cpp:1420 kpsion.cpp:1431
+#: kpsion.cpp:426 kpsion.cpp:847 kpsion.cpp:870 kpsion.cpp:894 kpsion.cpp:1031
+#: kpsion.cpp:1281 kpsion.cpp:1442 kpsion.cpp:1451 kpsion.cpp:1482
+#: kpsion.cpp:1500 kpsion.cpp:1511
#, c-format
msgid "Connected to %1"
msgstr "Verbunden mit %1"
-#: kpsion.cpp:473
+#: kpsion.cpp:542
msgid ""
"<QT>The selected drive <B>Z:</B> is a <B>ROM</B> drive and therefore cannot "
"be restored.</QT>"
@@ -179,7 +196,7 @@ msgstr ""
"<QT>Das gewählte Laufwerk <B>Z:</B> ist ein <B>ROM</B> Laufwerk und kann "
"deshalb nicht rückgesichert werden.</QT>"
-#: kpsion.cpp:525
+#: kpsion.cpp:594
msgid ""
"A backup is running.\n"
"Do you really want to quit?"
@@ -187,7 +204,7 @@ msgstr ""
"Eine Sicherung läuft.\n"
"Wollen Sie wirklich das Programm beenden?"
-#: kpsion.cpp:527
+#: kpsion.cpp:596
msgid ""
"A restore is running.\n"
"Do you really want to quit?"
@@ -195,7 +212,7 @@ msgstr ""
"Eine Rücksicherung läuft.\n"
"Wollen Sie wirklich das Programm beenden?"
-#: kpsion.cpp:529
+#: kpsion.cpp:598
msgid ""
"A format is running.\n"
"Do you really want to quit?"
@@ -203,109 +220,117 @@ msgstr ""
"Eine Formatierung läuft.\n"
"Wollen Sie wirklich das Programm beenden?"
-#: kpsion.cpp:549
+#: kpsion.cpp:618
msgid "Starting ncpd daemon ..."
msgstr "Starte ncpd Dämon ..."
-#: kpsion.cpp:585
+#: kpsion.cpp:654
msgid "Connecting ..."
msgstr "Verbindungsaufbau ..."
-#: kpsion.cpp:591
+#: kpsion.cpp:660
msgid "RFSV could not connect to ncpd at %1:%2. "
msgstr "RFSV konnte ncpd auf %1:%2 nicht erreichen. "
-#: kpsion.cpp:594 kpsion.cpp:620 kpsion.cpp:647 kpsion.cpp:676
+#: kpsion.cpp:663 kpsion.cpp:689 kpsion.cpp:716 kpsion.cpp:745
msgid " (Retry in %1 seconds.)"
msgstr " (Wiederholung in %1 Sekunden.)"
-#: kpsion.cpp:615
+#: kpsion.cpp:684
#, c-format
msgid "RFSV could not establish link: %1."
msgstr "RFSV konnte keine Verbindung aufbauen: %1."
-#: kpsion.cpp:640
+#: kpsion.cpp:709
msgid "RPCS could not connect to ncpd at %1:%2."
msgstr "RPCS konnte ncpd auf %1:%2 nicht erreichen."
-#: kpsion.cpp:667
+#: kpsion.cpp:736
#, c-format
msgid "RPCS could not establish link: %1."
msgstr "RPCS konnte keine Verbindung aufbauen: %1."
-#: kpsion.cpp:782
+#: kpsion.cpp:851
#, c-format
msgid "Could not retrieve drive details for drive %1"
msgstr "Konnte Details des Laufwerks %1 nicht ermitteln."
-#: kpsion.cpp:787
+#: kpsion.cpp:856
#, c-format
msgid "Scanning drive %1"
msgstr "Durchsuche Laufwerk %1"
-#: kpsion.cpp:797
+#: kpsion.cpp:866
msgid "%1 files need backup"
msgstr "%1 Dateien müssen gesichert werden"
-#: kpsion.cpp:805
+#: kpsion.cpp:874
msgid "No files need backup"
msgstr "Keine Dateien zu sichern"
-#: kpsion.cpp:827
+#: kpsion.cpp:896
#, c-format
msgid "Could not create backup folder %1"
msgstr "Konnte Sicherungs-Ordner %1 nicht anlegen."
-#: kpsion.cpp:850
+#: kpsion.cpp:919
#, c-format
msgid "Backup %1% done"
msgstr "Sicherung %1% beendet"
-#: kpsion.cpp:870
-msgid "<QT>Could not open<BR/><B>%1</B></QT>"
-msgstr "<QT>Konnte<BR/><B>%1</B><BR/>nicht öffnen</QT>"
+#: kpsion.cpp:956
+msgid "<QT>Could not backup<BR/><B>%1</B><BR/><FONT COLOR=RED>%2</FONT><BR/></QT>"
+msgstr ""
+"<QT>Sicherung von<BR/><B>%1</B> gescheitert.<BR/>"
+"<FONT COLOR=RED>%2</FONT><BR/></QT>"
-#: kpsion.cpp:890
-msgid "<QT>Could not read<BR/><B>%1</B></QT>"
-msgstr "<QT>Konnte<BR/><B>%1</B><BR/>nicht lesen</QT>"
+#: kpsion.cpp:959
+msgid "Retry"
+msgstr "Wiederholen"
-#: kpsion.cpp:903
+#: kpsion.cpp:959
+msgid "Ignore"
+msgstr "Ignorieren"
+
+#: kpsion.cpp:984
msgid "Resetting archive attributes"
msgstr "Setze Archiv-Attribute zurück"
-#: kpsion.cpp:918
-msgid "<QT>Could not set attributes of<BR/><B>%1</B></QT>"
-msgstr "<QT>Konnte Attribute der Datei<BR/><B>%1</B><BR/>nicht setzen</QT>"
+#: kpsion.cpp:999
+msgid ""
+"<QT>Could not set attributes of<BR/><B>%1</B><BR/><FONT COLOR=red>%2</"
+"FONT><BR/>Continue?</QT>"
+msgstr "<QT>Konnte Attribute der Datei<BR/><B>%1</B>nicht setzen.<BR/><FONT COLOR=red>%2</FONT><BR/>Fortfahren?</QT>"
-#: kpsion.cpp:943
+#: kpsion.cpp:1024
msgid "<QT>Could not rename backup archive from<BR/><B>%1</B> to<BR/><B>%2</B></QT>"
msgstr ""
"<QT>Konnte das Sicherungs-Archiv nicht von<BR/><B>%1</B> nach<BR/><B>%2</"
"B><BR/>umbenennen.</QT>"
-#: kpsion.cpp:954
+#: kpsion.cpp:1035
msgid "Backup done"
msgstr "Sicherung beendet"
-#: kpsion.cpp:990
+#: kpsion.cpp:1071
msgid "Removing old backups ..."
msgstr "Entferne alte Sicherungsdaten ..."
-#: kpsion.cpp:1085 kpsion.cpp:1315
+#: kpsion.cpp:1165 kpsion.cpp:1395
msgid "<QT>Could not get attributes of<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr ""
"<QT>Konnte Attribute der Datei<BR/><B>%1</B> nicht abfragen<BR/>Grund: %2</"
"QT>"
-#: kpsion.cpp:1114
+#: kpsion.cpp:1194
msgid "Overwrite"
msgstr "Ãœberschreiben"
-#: kpsion.cpp:1117
+#: kpsion.cpp:1197
msgid "Overwrite &All"
msgstr "Ãœberschreibe &Alles"
-#: kpsion.cpp:1130
+#: kpsion.cpp:1210
msgid ""
"<QT>The file <B>%1</B> exists already on the Psion with different size and/"
"or attributes.<P><B>On the Psion:</B><BR/> Size: %2<BR/> Date: %3<BR/> "
@@ -318,62 +343,62 @@ msgstr ""
"5<BR/> Datum: %6<BR/> Attribute: %7</P>Wollen Sie die Datei überschreiben?"
"</QT>"
-#: kpsion.cpp:1168
+#: kpsion.cpp:1248
msgid "Reading backups ..."
msgstr "Lese Sicherungsdaten ..."
-#: kpsion.cpp:1173
+#: kpsion.cpp:1253
msgid "Selecting backups ..."
msgstr "Wähle Sicherungsdaten ..."
-#: kpsion.cpp:1206 kpsion.cpp:1254
+#: kpsion.cpp:1286 kpsion.cpp:1334
#, c-format
msgid "Restore %1% done"
msgstr "Rücksicherung %1% abgeschlossen"
-#: kpsion.cpp:1270
+#: kpsion.cpp:1350
msgid "<QT>Could not create directory<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr "<QT>Konnte den Ordner<BR/><B>%1</B> nicht anlegen.<BR/>Grund: %2</QT>"
-#: kpsion.cpp:1285
+#: kpsion.cpp:1365
msgid "<QT>Could not create<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr "<QT>Konnte<BR/><B>%1</B> nicht anlegen<BR/>Grund: %2</QT>"
-#: kpsion.cpp:1307
+#: kpsion.cpp:1387
msgid "<QT>Could not write to<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr "<QT>Konnte nicht auf <BR/><B>%1</B> schreiben<BR/>Grund: %2</QT>"
-#: kpsion.cpp:1333
+#: kpsion.cpp:1413
msgid "<QT>Could not set attributes of<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr "<QT>Konnte Attribute der Datei<BR/><B>%1</B>nicht setzen.<BR/>Grund: %2</QT>"
-#: kpsion.cpp:1346
+#: kpsion.cpp:1426
msgid "<QT>Could not set modification time of<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr ""
-"<QT>Konnte Änderungszeit der Datei<BR/><B>%1</B> nicht setzen<BR/>Grund: %"
-"2</QT>"
+"<QT>Konnte Änderungszeit der Datei<BR/><B>%1</B> nicht setzen<BR/>Grund: %2</"
+"QT>"
-#: kpsion.cpp:1373
+#: kpsion.cpp:1453
msgid "Restore done"
msgstr "Rücksicherung abgeschlossen"
-#: kpsion.cpp:1387
+#: kpsion.cpp:1467
msgid "Formatting drive %1:"
msgstr "Formatiere Laufwerk %1:"
-#: kpsion.cpp:1398
+#: kpsion.cpp:1478
msgid "<QT>Could not format drive %1:<BR/>%2</QT>"
msgstr "<QT>Konnte Laufwerk %1 nicht formatieren:<BR/>%2</QT>"
-#: kpsion.cpp:1415
+#: kpsion.cpp:1495
msgid "<QT>Error during format of drive %1:<BR/>%2</QT>"
msgstr "<QT>Fehler beim Formatieren von Laufwerk %1:<BR/>%2</QT>"
-#: kpsion.cpp:1433
+#: kpsion.cpp:1513
msgid "Format done"
msgstr "Formatierung beendet"
-#: kpsion.cpp:1439
+#: kpsion.cpp:1519
msgid ""
"<QT>This erases <B>ALL</B> data on the drive(s).<BR/>Do you really want to "
"proceed?"
@@ -381,11 +406,11 @@ msgstr ""
"<QT>Hierdurch werden <B>ALLE</B> Daten auf dem(den) Laufwerk(en) gelöscht."
"<BR/>Wollen Sie wirklich fortfahren?</QT>"
-#: kpsion.cpp:1460
+#: kpsion.cpp:1540
msgid "Assign drive name"
msgstr "Weise Laufwerksnamen zu"
-#: kpsion.cpp:1469
+#: kpsion.cpp:1549
msgid ""
"<QT>Formatting of drive %1: finished. Please assign a name for that drive.</"
"QT>"
@@ -393,16 +418,16 @@ msgstr ""
"<QT>Die Formatierung des Laufwerks %1 ist beendet. Bitte weisen Sie dem "
"Laufwerk nun einen Namen zu.</QT>"
-#: kpsion.cpp:1473
+#: kpsion.cpp:1553
msgid "New name of drive %1:"
msgstr "Neuer Name für Laufwerk %1:"
-#: kpsion.cpp:1619
+#: kpsion.cpp:1684
#, c-format
msgid "Stopping %1"
msgstr "Stoppe %1"
-#: kpsion.cpp:1637
+#: kpsion.cpp:1702
msgid ""
"<QT>Could not stop all processes.<BR/>Please stop running programs manually "
"on the Psion, then klick <B>Ok</B>."
@@ -410,7 +435,7 @@ msgstr ""
"<QT>Konnte nicht alle Prozesse stoppen.<BR/>Bitte beenden Sie laufende "
"Programme auf dem Psion manuell. Klicken Sie dann <B>Ok</B>."
-#: kpsion.cpp:1660
+#: kpsion.cpp:1725
#, c-format
msgid "Starting %1"
msgstr "Starte %1"
@@ -954,11 +979,11 @@ msgstr "Verfügbare Laufwerke"
msgid "<QT><BIG><B>Specify drives to backup<B></BIG></QT>"
msgstr "<QT><BIG><B>Wahl der zu sichernden Laufwerke<B></BIG></QT>"
-#: wizards.cpp:532
+#: wizards.cpp:531
msgid "The name cannot be empty."
msgstr "Der Name darf nicht leer sein."
-#: wizards.cpp:539
+#: wizards.cpp:538
msgid ""
"<QT>The name <B>%1</B> is already assigned to another machine.<BR/>Please "
"choose a different name.</QT>"
diff --git a/kde2/po/de/libplpprops.po b/kde2/po/de/libplpprops.po
index a3c313a..2abd63b 100644
--- a/kde2/po/de/libplpprops.po
+++ b/kde2/po/de/libplpprops.po
@@ -5,8 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: plptools 0.11\n"
-"POT-Creation-Date: 2002-02-11 13:09+0100\n"
-"PO-Revision-Date: 2002-02-13 07:27CET\n"
+"POT-Creation-Date: 2002-03-20 02:52+0100\n"
+"PO-Revision-Date: 2002-03-20 02:55CET\n"
"Last-Translator: Fritz Elfert <felfert@to.com>\n"
"Language-Team: Deutsch <de@li.org>\n"
"MIME-Version: 1.0\n"
@@ -14,19 +14,19 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 0.9.5\n"
-#: plpprops.cc:142
+#: plpprops.cc:153
msgid "&Permissions"
msgstr "&Berechtigungen"
-#: plpprops.cc:144 plpprops.cc:660
+#: plpprops.cc:155 plpprops.cc:671
msgid "&General"
msgstr "&Allgemein"
-#: plpprops.cc:206
+#: plpprops.cc:217
msgid "Readable"
msgstr "Lesen"
-#: plpprops.cc:207
+#: plpprops.cc:218
msgid ""
"If this is checked, read permission is granted. On series 5, this cannot "
"swiched off."
@@ -34,21 +34,21 @@ msgstr ""
"Wird dieser Schalter aktiviert, so wird die Berechtigung zum Lesen erteilt. "
"Auf einem Serie 5 kann dieser Schalter <B>nicht</B> abgeschaltet werden."
-#: plpprops.cc:212
+#: plpprops.cc:223
msgid "Writeable"
msgstr "Schreiben"
-#: plpprops.cc:213
+#: plpprops.cc:224
msgid "If this is checked, write permission is granted."
msgstr ""
"Ist dieser Schalter aktiviert, so wird die Berechtigung zum Schreiben "
"erteilt."
-#: plpprops.cc:218
+#: plpprops.cc:229
msgid "Hidden"
msgstr "Versteckt"
-#: plpprops.cc:219 plpprops.cc:225
+#: plpprops.cc:230 plpprops.cc:236
msgid ""
"If this is checked, the file is not shown when displaying the directory on "
"the Psion."
@@ -56,25 +56,25 @@ msgstr ""
"Ist dieser Schalter aktiviert, so wird die Datei bei der Anzeige des Ordners "
"auf dem Psion nicht angezeigt."
-#: plpprops.cc:224
+#: plpprops.cc:235
msgid "System"
msgstr "System"
-#: plpprops.cc:230
+#: plpprops.cc:241
msgid "Archive"
msgstr "Archiv"
-#: plpprops.cc:231
+#: plpprops.cc:242
msgid "If this is checked, the file will be included in the next incremental backup."
msgstr ""
"Ist dieser Schalter aktiviert, so wird die Datei in die nächste "
"inkrementelle Sicherung einbezogen."
-#: plpprops.cc:239
+#: plpprops.cc:250
msgid "Executable"
msgstr "Ausführen"
-#: plpprops.cc:240
+#: plpprops.cc:251
msgid ""
"If this is checked, the file can be executed on the Psion. This Attribute "
"does not apply to directories."
@@ -82,11 +82,11 @@ msgstr ""
"Ist dieser Schalter aktiviert, so kann die Datei auf dem Psion ausgeführt "
"werden. Dieses Attribut ist nicht auf Ordner anwendbar."
-#: plpprops.cc:245
+#: plpprops.cc:256
msgid "Stream"
msgstr "Stream"
-#: plpprops.cc:246
+#: plpprops.cc:257
msgid ""
"If this is checked, the file is a stream. This Attribute does not apply to "
"directories."
@@ -94,11 +94,11 @@ msgstr ""
"Ist dieser Schalter aktiviert, so ist die Datei ein Stream. Dieses Attribut "
"ist nicht auf Ordner anwendbar."
-#: plpprops.cc:251
+#: plpprops.cc:262
msgid "Text"
msgstr "Text"
-#: plpprops.cc:252
+#: plpprops.cc:263
msgid ""
"If this is checked, the file is opened in text mode. This Attribute does not "
"apply to directories."
@@ -106,11 +106,11 @@ msgstr ""
"Ist dieser Schalter aktiviert, so wird die Datei im Text-Modus geöffnet. "
"Dieses Attribut ist nicht auf Ordner anwendbar."
-#: plpprops.cc:260
+#: plpprops.cc:271
msgid "Normal"
msgstr "Normal"
-#: plpprops.cc:261
+#: plpprops.cc:272
msgid ""
"If this is checked, the file is considered regular. This Attribute does not "
"apply to directories."
@@ -118,11 +118,11 @@ msgstr ""
"Ist dieser Schalter aktiviert, so wird die Datei als normal angesehen. "
"Dieses Attribut ist nicht auf Ordner anwendbar."
-#: plpprops.cc:266
+#: plpprops.cc:277
msgid "Temporary"
msgstr "Temporär"
-#: plpprops.cc:267
+#: plpprops.cc:278
msgid ""
"If this is checked, the file considered temporary. This Attribute does not "
"apply to directories."
@@ -130,11 +130,11 @@ msgstr ""
"Ist dieser Schalter aktiviert, so wird die Datei als temporär angesehen. "
"Dieses Attribut ist nicht auf Ordner anwendbar."
-#: plpprops.cc:272
+#: plpprops.cc:283
msgid "Compressed"
msgstr "Komprimiert"
-#: plpprops.cc:273
+#: plpprops.cc:284
msgid ""
"If this is checked, the file is stored in compressed mode. This Attribute "
"does not apply to directories."
@@ -142,69 +142,69 @@ msgstr ""
"Ist dieser Schalter aktiviert, so wird die Datei komprimiert gespeichert. "
"Dieses Attribut ist nicht auf Ordner anwendbar."
-#: plpprops.cc:293
+#: plpprops.cc:304
msgid "Psion &Attributes"
msgstr "Psion &Attribute"
-#: plpprops.cc:298
+#: plpprops.cc:309
msgid "Path on Psion:"
msgstr "Pfad auf dem Psion:"
-#: plpprops.cc:305
+#: plpprops.cc:316
msgid "Generic attributes"
msgstr "Allgemeine Attribute"
-#: plpprops.cc:319
+#: plpprops.cc:330
msgid "Machine specific attributes"
msgstr "Geräte-spezifische Attribute"
-#: plpprops.cc:503
+#: plpprops.cc:514
msgid "Psion &Drive"
msgstr "Psion &Laufwerk"
-#: plpprops.cc:513
+#: plpprops.cc:524
msgid "Information"
msgstr "Information"
-#: plpprops.cc:519
+#: plpprops.cc:530
msgid "Type"
msgstr "Typ"
-#: plpprops.cc:525
+#: plpprops.cc:536
msgid "The type of the drive is shown here."
msgstr "Der Laufwerkstyp wird hier angezeigt."
-#: plpprops.cc:527
+#: plpprops.cc:538
msgid "Total capacity"
msgstr "Gesamtkapazität"
-#: plpprops.cc:530 plpprops.cc:538 plpprops.cc:546
+#: plpprops.cc:541 plpprops.cc:549 plpprops.cc:557
msgid " "
msgstr " "
-#: plpprops.cc:533
+#: plpprops.cc:544
msgid "This shows the total capacity of the drive."
msgstr "Hier wird die Gesamtkapazität des Laufwerks angezeigt."
-#: plpprops.cc:535
+#: plpprops.cc:546
msgid "Free space"
msgstr "Freier Speicherplatz"
-#: plpprops.cc:541
+#: plpprops.cc:552
msgid "This shows the available space of the drive."
msgstr "Hier können Sie den freien Speicherplatz des Laufwerks ablesen."
-#: plpprops.cc:543
+#: plpprops.cc:554
msgid "Unique ID"
msgstr "Eindeutige ID"
-#: plpprops.cc:549
+#: plpprops.cc:560
msgid "This shows unique ID of the drive. For ROM drives, this is always 0."
msgstr ""
"Hier wird die eindeutige ID des Laufwerks angezeigt. Für ROM-Laufwerke ist "
"dies stets 0."
-#: plpprops.cc:553
+#: plpprops.cc:564
msgid ""
"Here, the usage of the drive is shown in a pie diagram. The purple area "
"shows used space, the blue area shows free space."
@@ -213,11 +213,11 @@ msgstr ""
"Bereich kennzeichnet den belegten Speicherplatz, der blaue Bereich "
"repräsentiert den freien Speicherplatz."
-#: plpprops.cc:561
+#: plpprops.cc:572
msgid "Backup"
msgstr "Sicherung"
-#: plpprops.cc:565
+#: plpprops.cc:576
msgid ""
"Click here, to do a backup of this drive. This launches KPsion to perform "
"that task."
@@ -225,11 +225,11 @@ msgstr ""
"Klicken Sie hier, um eine Sicherung dieses Laufwerks durchzuführen. Zu "
"diesem Zweck wird KPsion gestartet."
-#: plpprops.cc:567
+#: plpprops.cc:578
msgid "Restore"
msgstr "Rücksicherung"
-#: plpprops.cc:572
+#: plpprops.cc:583
msgid ""
"Click here, to do a restore of this drive. This launches KPsion to perform "
"that task."
@@ -237,95 +237,95 @@ msgstr ""
"Klicken Sie hier, um eine Rücksicherung dieses Laufwerks durchzuführen. Zu "
"diesem Zweck wird KPsion gestartet."
-#: plpprops.cc:574
+#: plpprops.cc:585
msgid "Format"
msgstr "Formatieren"
-#: plpprops.cc:579
+#: plpprops.cc:590
msgid "Click here, to format this drive. This launches KPsion to perform that task."
msgstr ""
"Klicken Sie hier, um dieses Laufwerk zu formatieren. Zu diesem Zweck wird "
"KPsion gestartet."
-#: plpprops.cc:665
+#: plpprops.cc:676
msgid "Information for Psion drive %1: (%2)"
msgstr "Information zum Psion Laufwerk %1: (%2)"
-#: plpprops.cc:738
+#: plpprops.cc:751
msgid "Psion &Machine"
msgstr "Psion &Gerät"
-#: plpprops.cc:741
+#: plpprops.cc:754
msgid "General"
msgstr "Allgemein"
-#: plpprops.cc:746
+#: plpprops.cc:759
msgid "Machine type:"
msgstr "Gerätetyp"
-#: plpprops.cc:748
+#: plpprops.cc:761
msgid "Here, the type of the connected device is shown."
msgstr "Dies ist der Typ des angeschlossenen Geräts."
-#: plpprops.cc:749
+#: plpprops.cc:762
msgid "Model name:"
msgstr "Modellbezeichnung:"
-#: plpprops.cc:751
+#: plpprops.cc:764
msgid "Here, the model name of the connected device is shown."
msgstr "Dies ist die Modellbezeichnung des gerade angeschlossenen Geräts."
-#: plpprops.cc:752
+#: plpprops.cc:765
msgid "Machine UID:"
msgstr "Gerätenummer:"
-#: plpprops.cc:754
+#: plpprops.cc:767
msgid "Here, the unique ID of the connected device is shown."
msgstr "Dies ist die Seriennummer des gerade angeschlossenen Geräts."
-#: plpprops.cc:755
+#: plpprops.cc:768
msgid "UI language:"
msgstr "Schnittstellensprache:"
-#: plpprops.cc:757
+#: plpprops.cc:770
msgid "Here, the user interface language of the connected device is shown."
msgstr ""
"Hier wird die Sprache der Benutzerschnittstelle des angeschlossenen Geräts "
"angezeigt."
-#: plpprops.cc:758
+#: plpprops.cc:771
msgid "Display geometry:"
msgstr "Anzeigeformat:"
-#: plpprops.cc:760
+#: plpprops.cc:773
msgid "Here, the display geometry of the connected device is shown."
msgstr "Hier sehen Sie die Größe der Anzeigeeinheit des angeschlossenen Geräts."
-#: plpprops.cc:761
+#: plpprops.cc:774
msgid "Registry size:"
msgstr "Registrierdatenbank:"
-#: plpprops.cc:763
+#: plpprops.cc:776
msgid "Here, the size of the registry data is shown."
msgstr "Hier wird die Größe der Registrierdatenbank angezeigt."
-#: plpprops.cc:768
+#: plpprops.cc:781
msgid "Time"
msgstr "Zeit"
-#: plpprops.cc:772
+#: plpprops.cc:785
msgid "Date/Time:"
msgstr "Datum/Zeit:"
-#: plpprops.cc:774
+#: plpprops.cc:787
msgid "Here, the current time setting of the connected device is shown."
msgstr "Hier wird die aktuell eingestellte Zeit des angeschlossenen Geräts angezeigt."
-#: plpprops.cc:775
+#: plpprops.cc:788
msgid "UTC offset"
msgstr "UTC-Abweichung:"
-#: plpprops.cc:777
+#: plpprops.cc:790
msgid ""
"Here, the offset of the connected device's time zone relative to GMT is "
"shown."
@@ -333,11 +333,11 @@ msgstr ""
"Hier sehen Sie die Zeitdifferenz der auf dem angeschlossenen Gerät "
"eingestellten Zeitzone relativ zur Greenwich Medium Time."
-#: plpprops.cc:778
+#: plpprops.cc:791
msgid "Daylight saving"
msgstr "Sommerzeit:"
-#: plpprops.cc:780
+#: plpprops.cc:793
msgid ""
"Here, you can see, if daylight saving time is currently active on the "
"connected device."
@@ -345,171 +345,191 @@ msgstr ""
"Hier können Sie ablesen, ob auf dem angeschlossenen Gerät gerade Sommerzeit "
"aktiv ist."
-#: plpprops.cc:786
+#: plpprops.cc:799
msgid "Psion &Battery"
msgstr "Psion &Batterie"
-#: plpprops.cc:788
+#: plpprops.cc:801
msgid "Main battery"
msgstr "Haupt-Batterie"
-#: plpprops.cc:792
+#: plpprops.cc:805
msgid "Changed at:"
msgstr "Gewechselt am:"
-#: plpprops.cc:794
+#: plpprops.cc:807
msgid "This shows the time of last battery change."
msgstr "Hier wird die Zeit des letzten Batteriewechsels angezeigt."
-#: plpprops.cc:795 plpprops.cc:821
+#: plpprops.cc:808 plpprops.cc:854
msgid "Usage time:"
msgstr "Nutzungszeit:"
-#: plpprops.cc:797
+#: plpprops.cc:810
msgid "This shows the accumulated time of running on battery power."
msgstr "Hier wird die aufsummierte Nutzungszeit mit Batteriestrom angezeigt."
-#: plpprops.cc:798 plpprops.cc:824
+#: plpprops.cc:811 plpprops.cc:834
msgid "Status:"
msgstr "Status:"
-#: plpprops.cc:800
+#: plpprops.cc:813
msgid "This shows current status of the battery."
msgstr "Dies zeigt den aktuellen Zustand der Batterie an."
-#: plpprops.cc:801
+#: plpprops.cc:814
msgid "Total consumed power:"
msgstr "Leistungsverbrauch:"
-#: plpprops.cc:803
+#: plpprops.cc:816
msgid "This shows accumulated power consumtion of the device."
msgstr "Hier wird die aufsummierte Leistungsaufnahme des Geräts angezeigt."
-#: plpprops.cc:804
+#: plpprops.cc:817
msgid "Current:"
msgstr "Strom:"
-#: plpprops.cc:806
+#: plpprops.cc:819
msgid "This shows the current, drawn from power supply (battery or mains)."
msgstr "Hier wird die Stromaufnahme (Batterie oder Netz) angezeigt."
-#: plpprops.cc:807 plpprops.cc:827
+#: plpprops.cc:820 plpprops.cc:837
msgid "Voltage:"
msgstr "Spannung:"
-#: plpprops.cc:809
+#: plpprops.cc:822
msgid "This shows the current battery voltage."
msgstr "Hier sehen Sie die aktuelle Batteriespannung."
-#: plpprops.cc:810 plpprops.cc:830
+#: plpprops.cc:823 plpprops.cc:840
msgid "Max. voltage:"
msgstr "Max. Spannung:"
-#: plpprops.cc:812
+#: plpprops.cc:825
msgid "This shows the maximum battery voltage."
msgstr "Hier wird die maximale Batteriespannung angezeigt."
-#: plpprops.cc:817
+#: plpprops.cc:830
msgid "Backup battery"
msgstr "Sicherungs-Batterie"
-#: plpprops.cc:823
-msgid "This shows the accumulated time of running on backup battery power."
-msgstr "Hier wird die aufsummierte Nutzungszeit der Sicherungsbatterie angezeigt."
-
-#: plpprops.cc:826
+#: plpprops.cc:836
msgid "This shows current status of the backup battery."
msgstr "Hier Sehen Sie den aktuellen Zustand der Sicherungsbatterie."
-#: plpprops.cc:829
+#: plpprops.cc:839
msgid "This shows the current backup battery voltage."
msgstr "Hier wird die aktuelle Spannung der Sicherungsbatterie angezeigt."
-#: plpprops.cc:832
+#: plpprops.cc:842
msgid "This shows the maximum backup battery voltage."
msgstr "Hier wird die maximale Spannung der Sicherungsbatterie angezeigt."
-#: plpprops.cc:838
+#: plpprops.cc:847
+msgid "External power"
+msgstr "Externe Stromversorgung"
+
+#: plpprops.cc:851
+msgid "Supplied:"
+msgstr "Angeschlossen:"
+
+#: plpprops.cc:853
+msgid "This shows whether external power is currently supplied."
+msgstr "Hier wird angezeigt, ob der Psion im Moment extern versort wird."
+
+#: plpprops.cc:856
+msgid "This shows the accumulated time of running on external power."
+msgstr "Hier wird die aufsummierte Nutzungszeit mit externer Versorgung angezeigt."
+
+#: plpprops.cc:862
msgid "Psion M&emory"
msgstr "Psion &Speicher"
-#: plpprops.cc:841
+#: plpprops.cc:865
msgid "ROM"
msgstr "ROM"
-#: plpprops.cc:845
+#: plpprops.cc:869
msgid "Version:"
msgstr "Version:"
-#: plpprops.cc:847
+#: plpprops.cc:871
msgid "This shows the firmware version."
msgstr "Hier wird die Firmware-Version angezeigt."
-#: plpprops.cc:848 plpprops.cc:862
+#: plpprops.cc:872 plpprops.cc:886
msgid "Size:"
msgstr "Größe:"
-#: plpprops.cc:850
+#: plpprops.cc:874
msgid "This shows the size of the ROM."
msgstr "Hier wird die Speicherkapazität des ROM angezeigt."
-#: plpprops.cc:851
+#: plpprops.cc:875
msgid "Programmable:"
msgstr "Programmierbar:"
-#: plpprops.cc:853
+#: plpprops.cc:877
msgid "This shows, whether the ROM is flashable or not."
msgstr "Hier wird angezeigt, ob das ROM programmierbar (flashbar) ist."
-#: plpprops.cc:858
+#: plpprops.cc:882
msgid "RAM"
msgstr "RAM"
-#: plpprops.cc:864
+#: plpprops.cc:888
msgid "This shows the total capacity of the RAM."
msgstr "Hier wird die Gesamt-Speicherkapazität des RAM angezeigt."
-#: plpprops.cc:865
+#: plpprops.cc:889
msgid "Free:"
msgstr "Frei:"
-#: plpprops.cc:867
+#: plpprops.cc:891
msgid "This shows the free capacity of the RAM."
msgstr "Dies zeigt die freie Speicherkapazität des RAM an."
-#: plpprops.cc:868
+#: plpprops.cc:892
msgid "Max. free:"
msgstr "Max. frei:"
-#: plpprops.cc:870
+#: plpprops.cc:894
msgid "This shows the size of the largest free block of the RAM."
msgstr "Dies zeigt die Speicherkapazität des größten freien Speicherblocks im RAM an."
-#: plpprops.cc:871
+#: plpprops.cc:895
msgid "RAMDisk size:"
msgstr "RAMDisk Größe:"
-#: plpprops.cc:873
+#: plpprops.cc:897
msgid "This shows, how much RAM is currently used for the RAMDisc."
msgstr "Hier wird angezeigt, wieviel Speicher gerade von der RAMDisk belegt wird."
-#: plpprops.cc:925 plpprops.cc:938
+#: plpprops.cc:951 plpprops.cc:974
msgid "yes"
msgstr "ja"
-#: plpprops.cc:925 plpprops.cc:938
+#: plpprops.cc:951 plpprops.cc:974
msgid "no"
msgstr "nein"
-#: plpprops.cc:937
+#: plpprops.cc:972
msgid "%1 seconds"
msgstr "%1 Sekunden"
-#: plpprops.cc:985
+#: plpprops.cc:1010
+msgid "Yes"
+msgstr "Ja"
+
+#: plpprops.cc:1010
+msgid "No"
+msgstr "Nein"
+
+#: plpprops.cc:1035
msgid "Psion &Owner"
msgstr "Psion &Eigner"
-#: plpprops.cc:991
+#: plpprops.cc:1041
msgid "This shows the owner's information of the connected device."
msgstr "Hier wird die Eigentümer-Information des angeschlossenen Geräts angezeigt."
diff --git a/kde2/po/klipsi.pot b/kde2/po/klipsi.pot
index 67a5f8d..0b10cf6 100644
--- a/kde2/po/klipsi.pot
+++ b/kde2/po/klipsi.pot
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2002-02-11 12:56+0100\n"
+"POT-Creation-Date: 2002-03-20 02:52+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -26,15 +26,26 @@ msgstr ""
msgid "Original Developer/Maintainer"
msgstr ""
-#: toplevel.cpp:70
+#: toplevel.cpp:71
msgid "Klipsi - Psion Clipboard"
msgstr ""
-#: toplevel.cpp:72
+#: toplevel.cpp:73
msgid "&Quit"
msgstr ""
-#: toplevel.cpp:732
+#: toplevel.cpp:562
+msgid ""
+"<QT>Your Psion is reported to be a <B>Series 3</B> machine. This type of "
+"machine does <B>not support</B> the remote clipboard protocol; Sorry.<BR/"
+"><B>Klipsi</B> will now terminate.</QT>"
+msgstr ""
+
+#: toplevel.cpp:566 toplevel.cpp:591
+msgid "Protocol not supported"
+msgstr ""
+
+#: toplevel.cpp:582
msgid ""
"<QT>Your Psion does not support the remote clipboard protocol.<BR/>The "
"reason for that is usually a missing server library on your Psion.<BR/>Make "
@@ -45,10 +56,6 @@ msgid ""
"QT>"
msgstr ""
-#: toplevel.cpp:741
-msgid "Protocol not supported"
-msgstr ""
-
#: toplevel.moc.cpp:42 toplevel.moc.cpp:47
msgid "TopLevel"
msgstr ""
diff --git a/kde2/po/kpsion.pot b/kde2/po/kpsion.pot
index 92eaa15..6db64b1 100644
--- a/kde2/po/kpsion.pot
+++ b/kde2/po/kpsion.pot
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2002-02-11 13:08+0100\n"
+"POT-Creation-Date: 2002-03-20 02:52+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -140,153 +140,177 @@ msgstr ""
msgid "Retrieving machine info ..."
msgstr ""
-#: kpsion.cpp:297
+#: kpsion.cpp:298
+msgid "Could not get Psion machine type"
+msgstr ""
+
+#: kpsion.cpp:306
msgid "Could not get Psion machine info"
msgstr ""
-#: kpsion.cpp:312
+#: kpsion.cpp:329
+msgid "Could not read SIBO UID file"
+msgstr ""
+
+#: kpsion.cpp:336
+msgid "Could not get Psion owner info"
+msgstr ""
+
+#: kpsion.cpp:365
+#, c-format
+msgid "Could not write SIBO UID file %1"
+msgstr ""
+
+#: kpsion.cpp:381
msgid "an unknown machine"
msgstr ""
-#: kpsion.cpp:323
+#: kpsion.cpp:392
msgid "Retrieving drive list ..."
msgstr ""
-#: kpsion.cpp:326
+#: kpsion.cpp:395
msgid "Could not get list of drives"
msgstr ""
-#: kpsion.cpp:357 kpsion.cpp:778 kpsion.cpp:801 kpsion.cpp:825 kpsion.cpp:950
-#: kpsion.cpp:1201 kpsion.cpp:1362 kpsion.cpp:1371 kpsion.cpp:1402
-#: kpsion.cpp:1420 kpsion.cpp:1431
+#: kpsion.cpp:426 kpsion.cpp:847 kpsion.cpp:870 kpsion.cpp:894 kpsion.cpp:1031
+#: kpsion.cpp:1281 kpsion.cpp:1442 kpsion.cpp:1451 kpsion.cpp:1482
+#: kpsion.cpp:1500 kpsion.cpp:1511
#, c-format
msgid "Connected to %1"
msgstr ""
-#: kpsion.cpp:473
+#: kpsion.cpp:542
msgid ""
"<QT>The selected drive <B>Z:</B> is a <B>ROM</B> drive and therefore cannot "
"be restored.</QT>"
msgstr ""
-#: kpsion.cpp:525
+#: kpsion.cpp:594
msgid ""
"A backup is running.\n"
"Do you really want to quit?"
msgstr ""
-#: kpsion.cpp:527
+#: kpsion.cpp:596
msgid ""
"A restore is running.\n"
"Do you really want to quit?"
msgstr ""
-#: kpsion.cpp:529
+#: kpsion.cpp:598
msgid ""
"A format is running.\n"
"Do you really want to quit?"
msgstr ""
-#: kpsion.cpp:549
+#: kpsion.cpp:618
msgid "Starting ncpd daemon ..."
msgstr ""
-#: kpsion.cpp:585
+#: kpsion.cpp:654
msgid "Connecting ..."
msgstr ""
-#: kpsion.cpp:591
+#: kpsion.cpp:660
msgid "RFSV could not connect to ncpd at %1:%2. "
msgstr ""
-#: kpsion.cpp:594 kpsion.cpp:620 kpsion.cpp:647 kpsion.cpp:676
+#: kpsion.cpp:663 kpsion.cpp:689 kpsion.cpp:716 kpsion.cpp:745
msgid " (Retry in %1 seconds.)"
msgstr ""
-#: kpsion.cpp:615
+#: kpsion.cpp:684
#, c-format
msgid "RFSV could not establish link: %1."
msgstr ""
-#: kpsion.cpp:640
+#: kpsion.cpp:709
msgid "RPCS could not connect to ncpd at %1:%2."
msgstr ""
-#: kpsion.cpp:667
+#: kpsion.cpp:736
#, c-format
msgid "RPCS could not establish link: %1."
msgstr ""
-#: kpsion.cpp:782
+#: kpsion.cpp:851
#, c-format
msgid "Could not retrieve drive details for drive %1"
msgstr ""
-#: kpsion.cpp:787
+#: kpsion.cpp:856
#, c-format
msgid "Scanning drive %1"
msgstr ""
-#: kpsion.cpp:797
+#: kpsion.cpp:866
msgid "%1 files need backup"
msgstr ""
-#: kpsion.cpp:805
+#: kpsion.cpp:874
msgid "No files need backup"
msgstr ""
-#: kpsion.cpp:827
+#: kpsion.cpp:896
#, c-format
msgid "Could not create backup folder %1"
msgstr ""
-#: kpsion.cpp:850
+#: kpsion.cpp:919
#, c-format
msgid "Backup %1% done"
msgstr ""
-#: kpsion.cpp:870
-msgid "<QT>Could not open<BR/><B>%1</B></QT>"
+#: kpsion.cpp:956
+msgid ""
+"<QT>Could not backup<BR/><B>%1</B><BR/><FONT COLOR=RED>%2</FONT><BR/></QT>"
+msgstr ""
+
+#: kpsion.cpp:959
+msgid "Retry"
msgstr ""
-#: kpsion.cpp:890
-msgid "<QT>Could not read<BR/><B>%1</B></QT>"
+#: kpsion.cpp:959
+msgid "Ignore"
msgstr ""
-#: kpsion.cpp:903
+#: kpsion.cpp:984
msgid "Resetting archive attributes"
msgstr ""
-#: kpsion.cpp:918
-msgid "<QT>Could not set attributes of<BR/><B>%1</B></QT>"
+#: kpsion.cpp:999
+msgid ""
+"<QT>Could not set attributes of<BR/><B>%1</B><BR/><FONT COLOR=red>%2</"
+"FONT><BR/>Continue?</QT>"
msgstr ""
-#: kpsion.cpp:943
+#: kpsion.cpp:1024
msgid ""
"<QT>Could not rename backup archive from<BR/><B>%1</B> to<BR/><B>%2</B></QT>"
msgstr ""
-#: kpsion.cpp:954
+#: kpsion.cpp:1035
msgid "Backup done"
msgstr ""
-#: kpsion.cpp:990
+#: kpsion.cpp:1071
msgid "Removing old backups ..."
msgstr ""
-#: kpsion.cpp:1085 kpsion.cpp:1315
+#: kpsion.cpp:1165 kpsion.cpp:1395
msgid "<QT>Could not get attributes of<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr ""
-#: kpsion.cpp:1114
+#: kpsion.cpp:1194
msgid "Overwrite"
msgstr ""
-#: kpsion.cpp:1117
+#: kpsion.cpp:1197
msgid "Overwrite &All"
msgstr ""
-#: kpsion.cpp:1130
+#: kpsion.cpp:1210
msgid ""
"<QT>The file <B>%1</B> exists already on the Psion with different size and/"
"or attributes.<P><B>On the Psion:</B><BR/> Size: %2<BR/> Date: %3<BR/> "
@@ -294,92 +318,92 @@ msgid ""
"Attributes: %7</P>Do you want to overwrite it?</QT>"
msgstr ""
-#: kpsion.cpp:1168
+#: kpsion.cpp:1248
msgid "Reading backups ..."
msgstr ""
-#: kpsion.cpp:1173
+#: kpsion.cpp:1253
msgid "Selecting backups ..."
msgstr ""
-#: kpsion.cpp:1206 kpsion.cpp:1254
+#: kpsion.cpp:1286 kpsion.cpp:1334
#, c-format
msgid "Restore %1% done"
msgstr ""
-#: kpsion.cpp:1270
+#: kpsion.cpp:1350
msgid "<QT>Could not create directory<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr ""
-#: kpsion.cpp:1285
+#: kpsion.cpp:1365
msgid "<QT>Could not create<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr ""
-#: kpsion.cpp:1307
+#: kpsion.cpp:1387
msgid "<QT>Could not write to<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr ""
-#: kpsion.cpp:1333
+#: kpsion.cpp:1413
msgid "<QT>Could not set attributes of<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr ""
-#: kpsion.cpp:1346
+#: kpsion.cpp:1426
msgid ""
"<QT>Could not set modification time of<BR/><B>%1</B><BR/>Reason: %2</QT>"
msgstr ""
-#: kpsion.cpp:1373
+#: kpsion.cpp:1453
msgid "Restore done"
msgstr ""
-#: kpsion.cpp:1387
+#: kpsion.cpp:1467
msgid "Formatting drive %1:"
msgstr ""
-#: kpsion.cpp:1398
+#: kpsion.cpp:1478
msgid "<QT>Could not format drive %1:<BR/>%2</QT>"
msgstr ""
-#: kpsion.cpp:1415
+#: kpsion.cpp:1495
msgid "<QT>Error during format of drive %1:<BR/>%2</QT>"
msgstr ""
-#: kpsion.cpp:1433
+#: kpsion.cpp:1513
msgid "Format done"
msgstr ""
-#: kpsion.cpp:1439
+#: kpsion.cpp:1519
msgid ""
"<QT>This erases <B>ALL</B> data on the drive(s).<BR/>Do you really want to "
"proceed?"
msgstr ""
-#: kpsion.cpp:1460
+#: kpsion.cpp:1540
msgid "Assign drive name"
msgstr ""
-#: kpsion.cpp:1469
+#: kpsion.cpp:1549
msgid ""
"<QT>Formatting of drive %1: finished. Please assign a name for that drive.</"
"QT>"
msgstr ""
-#: kpsion.cpp:1473
+#: kpsion.cpp:1553
msgid "New name of drive %1:"
msgstr ""
-#: kpsion.cpp:1619
+#: kpsion.cpp:1684
#, c-format
msgid "Stopping %1"
msgstr ""
-#: kpsion.cpp:1637
+#: kpsion.cpp:1702
msgid ""
"<QT>Could not stop all processes.<BR/>Please stop running programs manually "
"on the Psion, then klick <B>Ok</B>."
msgstr ""
-#: kpsion.cpp:1660
+#: kpsion.cpp:1725
#, c-format
msgid "Starting %1"
msgstr ""
@@ -811,11 +835,11 @@ msgstr ""
msgid "<QT><BIG><B>Specify drives to backup<B></BIG></QT>"
msgstr ""
-#: wizards.cpp:532
+#: wizards.cpp:531
msgid "The name cannot be empty."
msgstr ""
-#: wizards.cpp:539
+#: wizards.cpp:538
msgid ""
"<QT>The name <B>%1</B> is already assigned to another machine.<BR/>Please "
"choose a different name.</QT>"
diff --git a/kde2/po/libplpprops.pot b/kde2/po/libplpprops.pot
index 792a783..a73f5ea 100644
--- a/kde2/po/libplpprops.pot
+++ b/kde2/po/libplpprops.pot
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2002-02-11 13:09+0100\n"
+"POT-Creation-Date: 2002-03-20 02:52+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -14,466 +14,486 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: plpprops.cc:142
+#: plpprops.cc:153
msgid "&Permissions"
msgstr ""
-#: plpprops.cc:144 plpprops.cc:660
+#: plpprops.cc:155 plpprops.cc:671
msgid "&General"
msgstr ""
-#: plpprops.cc:206
+#: plpprops.cc:217
msgid "Readable"
msgstr ""
-#: plpprops.cc:207
+#: plpprops.cc:218
msgid ""
"If this is checked, read permission is granted. On series 5, this cannot "
"swiched off."
msgstr ""
-#: plpprops.cc:212
+#: plpprops.cc:223
msgid "Writeable"
msgstr ""
-#: plpprops.cc:213
+#: plpprops.cc:224
msgid "If this is checked, write permission is granted."
msgstr ""
-#: plpprops.cc:218
+#: plpprops.cc:229
msgid "Hidden"
msgstr ""
-#: plpprops.cc:219 plpprops.cc:225
+#: plpprops.cc:230 plpprops.cc:236
msgid ""
"If this is checked, the file is not shown when displaying the directory on "
"the Psion."
msgstr ""
-#: plpprops.cc:224
+#: plpprops.cc:235
msgid "System"
msgstr ""
-#: plpprops.cc:230
+#: plpprops.cc:241
msgid "Archive"
msgstr ""
-#: plpprops.cc:231
+#: plpprops.cc:242
msgid ""
"If this is checked, the file will be included in the next incremental backup."
msgstr ""
-#: plpprops.cc:239
+#: plpprops.cc:250
msgid "Executable"
msgstr ""
-#: plpprops.cc:240
+#: plpprops.cc:251
msgid ""
"If this is checked, the file can be executed on the Psion. This Attribute "
"does not apply to directories."
msgstr ""
-#: plpprops.cc:245
+#: plpprops.cc:256
msgid "Stream"
msgstr ""
-#: plpprops.cc:246
+#: plpprops.cc:257
msgid ""
"If this is checked, the file is a stream. This Attribute does not apply to "
"directories."
msgstr ""
-#: plpprops.cc:251
+#: plpprops.cc:262
msgid "Text"
msgstr ""
-#: plpprops.cc:252
+#: plpprops.cc:263
msgid ""
"If this is checked, the file is opened in text mode. This Attribute does not "
"apply to directories."
msgstr ""
-#: plpprops.cc:260
+#: plpprops.cc:271
msgid "Normal"
msgstr ""
-#: plpprops.cc:261
+#: plpprops.cc:272
msgid ""
"If this is checked, the file is considered regular. This Attribute does not "
"apply to directories."
msgstr ""
-#: plpprops.cc:266
+#: plpprops.cc:277
msgid "Temporary"
msgstr ""
-#: plpprops.cc:267
+#: plpprops.cc:278
msgid ""
"If this is checked, the file considered temporary. This Attribute does not "
"apply to directories."
msgstr ""
-#: plpprops.cc:272
+#: plpprops.cc:283
msgid "Compressed"
msgstr ""
-#: plpprops.cc:273
+#: plpprops.cc:284
msgid ""
"If this is checked, the file is stored in compressed mode. This Attribute "
"does not apply to directories."
msgstr ""
-#: plpprops.cc:293
+#: plpprops.cc:304
msgid "Psion &Attributes"
msgstr ""
-#: plpprops.cc:298
+#: plpprops.cc:309
msgid "Path on Psion:"
msgstr ""
-#: plpprops.cc:305
+#: plpprops.cc:316
msgid "Generic attributes"
msgstr ""
-#: plpprops.cc:319
+#: plpprops.cc:330
msgid "Machine specific attributes"
msgstr ""
-#: plpprops.cc:503
+#: plpprops.cc:514
msgid "Psion &Drive"
msgstr ""
-#: plpprops.cc:513
+#: plpprops.cc:524
msgid "Information"
msgstr ""
-#: plpprops.cc:519
+#: plpprops.cc:530
msgid "Type"
msgstr ""
-#: plpprops.cc:525
+#: plpprops.cc:536
msgid "The type of the drive is shown here."
msgstr ""
-#: plpprops.cc:527
+#: plpprops.cc:538
msgid "Total capacity"
msgstr ""
-#: plpprops.cc:530 plpprops.cc:538 plpprops.cc:546
+#: plpprops.cc:541 plpprops.cc:549 plpprops.cc:557
msgid " "
msgstr ""
-#: plpprops.cc:533
+#: plpprops.cc:544
msgid "This shows the total capacity of the drive."
msgstr ""
-#: plpprops.cc:535
+#: plpprops.cc:546
msgid "Free space"
msgstr ""
-#: plpprops.cc:541
+#: plpprops.cc:552
msgid "This shows the available space of the drive."
msgstr ""
-#: plpprops.cc:543
+#: plpprops.cc:554
msgid "Unique ID"
msgstr ""
-#: plpprops.cc:549
+#: plpprops.cc:560
msgid "This shows unique ID of the drive. For ROM drives, this is always 0."
msgstr ""
-#: plpprops.cc:553
+#: plpprops.cc:564
msgid ""
"Here, the usage of the drive is shown in a pie diagram. The purple area "
"shows used space, the blue area shows free space."
msgstr ""
-#: plpprops.cc:561
+#: plpprops.cc:572
msgid "Backup"
msgstr ""
-#: plpprops.cc:565
+#: plpprops.cc:576
msgid ""
"Click here, to do a backup of this drive. This launches KPsion to perform "
"that task."
msgstr ""
-#: plpprops.cc:567
+#: plpprops.cc:578
msgid "Restore"
msgstr ""
-#: plpprops.cc:572
+#: plpprops.cc:583
msgid ""
"Click here, to do a restore of this drive. This launches KPsion to perform "
"that task."
msgstr ""
-#: plpprops.cc:574
+#: plpprops.cc:585
msgid "Format"
msgstr ""
-#: plpprops.cc:579
+#: plpprops.cc:590
msgid ""
"Click here, to format this drive. This launches KPsion to perform that task."
msgstr ""
-#: plpprops.cc:665
+#: plpprops.cc:676
msgid "Information for Psion drive %1: (%2)"
msgstr ""
-#: plpprops.cc:738
+#: plpprops.cc:751
msgid "Psion &Machine"
msgstr ""
-#: plpprops.cc:741
+#: plpprops.cc:754
msgid "General"
msgstr ""
-#: plpprops.cc:746
+#: plpprops.cc:759
msgid "Machine type:"
msgstr ""
-#: plpprops.cc:748
+#: plpprops.cc:761
msgid "Here, the type of the connected device is shown."
msgstr ""
-#: plpprops.cc:749
+#: plpprops.cc:762
msgid "Model name:"
msgstr ""
-#: plpprops.cc:751
+#: plpprops.cc:764
msgid "Here, the model name of the connected device is shown."
msgstr ""
-#: plpprops.cc:752
+#: plpprops.cc:765
msgid "Machine UID:"
msgstr ""
-#: plpprops.cc:754
+#: plpprops.cc:767
msgid "Here, the unique ID of the connected device is shown."
msgstr ""
-#: plpprops.cc:755
+#: plpprops.cc:768
msgid "UI language:"
msgstr ""
-#: plpprops.cc:757
+#: plpprops.cc:770
msgid "Here, the user interface language of the connected device is shown."
msgstr ""
-#: plpprops.cc:758
+#: plpprops.cc:771
msgid "Display geometry:"
msgstr ""
-#: plpprops.cc:760
+#: plpprops.cc:773
msgid "Here, the display geometry of the connected device is shown."
msgstr ""
-#: plpprops.cc:761
+#: plpprops.cc:774
msgid "Registry size:"
msgstr ""
-#: plpprops.cc:763
+#: plpprops.cc:776
msgid "Here, the size of the registry data is shown."
msgstr ""
-#: plpprops.cc:768
+#: plpprops.cc:781
msgid "Time"
msgstr ""
-#: plpprops.cc:772
+#: plpprops.cc:785
msgid "Date/Time:"
msgstr ""
-#: plpprops.cc:774
+#: plpprops.cc:787
msgid "Here, the current time setting of the connected device is shown."
msgstr ""
-#: plpprops.cc:775
+#: plpprops.cc:788
msgid "UTC offset"
msgstr ""
-#: plpprops.cc:777
+#: plpprops.cc:790
msgid ""
"Here, the offset of the connected device's time zone relative to GMT is "
"shown."
msgstr ""
-#: plpprops.cc:778
+#: plpprops.cc:791
msgid "Daylight saving"
msgstr ""
-#: plpprops.cc:780
+#: plpprops.cc:793
msgid ""
"Here, you can see, if daylight saving time is currently active on the "
"connected device."
msgstr ""
-#: plpprops.cc:786
+#: plpprops.cc:799
msgid "Psion &Battery"
msgstr ""
-#: plpprops.cc:788
+#: plpprops.cc:801
msgid "Main battery"
msgstr ""
-#: plpprops.cc:792
+#: plpprops.cc:805
msgid "Changed at:"
msgstr ""
-#: plpprops.cc:794
+#: plpprops.cc:807
msgid "This shows the time of last battery change."
msgstr ""
-#: plpprops.cc:795 plpprops.cc:821
+#: plpprops.cc:808 plpprops.cc:854
msgid "Usage time:"
msgstr ""
-#: plpprops.cc:797
+#: plpprops.cc:810
msgid "This shows the accumulated time of running on battery power."
msgstr ""
-#: plpprops.cc:798 plpprops.cc:824
+#: plpprops.cc:811 plpprops.cc:834
msgid "Status:"
msgstr ""
-#: plpprops.cc:800
+#: plpprops.cc:813
msgid "This shows current status of the battery."
msgstr ""
-#: plpprops.cc:801
+#: plpprops.cc:814
msgid "Total consumed power:"
msgstr ""
-#: plpprops.cc:803
+#: plpprops.cc:816
msgid "This shows accumulated power consumtion of the device."
msgstr ""
-#: plpprops.cc:804
+#: plpprops.cc:817
msgid "Current:"
msgstr ""
-#: plpprops.cc:806
+#: plpprops.cc:819
msgid "This shows the current, drawn from power supply (battery or mains)."
msgstr ""
-#: plpprops.cc:807 plpprops.cc:827
+#: plpprops.cc:820 plpprops.cc:837
msgid "Voltage:"
msgstr ""
-#: plpprops.cc:809
+#: plpprops.cc:822
msgid "This shows the current battery voltage."
msgstr ""
-#: plpprops.cc:810 plpprops.cc:830
+#: plpprops.cc:823 plpprops.cc:840
msgid "Max. voltage:"
msgstr ""
-#: plpprops.cc:812
+#: plpprops.cc:825
msgid "This shows the maximum battery voltage."
msgstr ""
-#: plpprops.cc:817
+#: plpprops.cc:830
msgid "Backup battery"
msgstr ""
-#: plpprops.cc:823
-msgid "This shows the accumulated time of running on backup battery power."
-msgstr ""
-
-#: plpprops.cc:826
+#: plpprops.cc:836
msgid "This shows current status of the backup battery."
msgstr ""
-#: plpprops.cc:829
+#: plpprops.cc:839
msgid "This shows the current backup battery voltage."
msgstr ""
-#: plpprops.cc:832
+#: plpprops.cc:842
msgid "This shows the maximum backup battery voltage."
msgstr ""
-#: plpprops.cc:838
+#: plpprops.cc:847
+msgid "External power"
+msgstr ""
+
+#: plpprops.cc:851
+msgid "Supplied:"
+msgstr ""
+
+#: plpprops.cc:853
+msgid "This shows whether external power is currently supplied."
+msgstr ""
+
+#: plpprops.cc:856
+msgid "This shows the accumulated time of running on external power."
+msgstr ""
+
+#: plpprops.cc:862
msgid "Psion M&emory"
msgstr ""
-#: plpprops.cc:841
+#: plpprops.cc:865
msgid "ROM"
msgstr ""
-#: plpprops.cc:845
+#: plpprops.cc:869
msgid "Version:"
msgstr ""
-#: plpprops.cc:847
+#: plpprops.cc:871
msgid "This shows the firmware version."
msgstr ""
-#: plpprops.cc:848 plpprops.cc:862
+#: plpprops.cc:872 plpprops.cc:886
msgid "Size:"
msgstr ""
-#: plpprops.cc:850
+#: plpprops.cc:874
msgid "This shows the size of the ROM."
msgstr ""
-#: plpprops.cc:851
+#: plpprops.cc:875
msgid "Programmable:"
msgstr ""
-#: plpprops.cc:853
+#: plpprops.cc:877
msgid "This shows, whether the ROM is flashable or not."
msgstr ""
-#: plpprops.cc:858
+#: plpprops.cc:882
msgid "RAM"
msgstr ""
-#: plpprops.cc:864
+#: plpprops.cc:888
msgid "This shows the total capacity of the RAM."
msgstr ""
-#: plpprops.cc:865
+#: plpprops.cc:889
msgid "Free:"
msgstr ""
-#: plpprops.cc:867
+#: plpprops.cc:891
msgid "This shows the free capacity of the RAM."
msgstr ""
-#: plpprops.cc:868
+#: plpprops.cc:892
msgid "Max. free:"
msgstr ""
-#: plpprops.cc:870
+#: plpprops.cc:894
msgid "This shows the size of the largest free block of the RAM."
msgstr ""
-#: plpprops.cc:871
+#: plpprops.cc:895
msgid "RAMDisk size:"
msgstr ""
-#: plpprops.cc:873
+#: plpprops.cc:897
msgid "This shows, how much RAM is currently used for the RAMDisc."
msgstr ""
-#: plpprops.cc:925 plpprops.cc:938
+#: plpprops.cc:951 plpprops.cc:974
msgid "yes"
msgstr ""
-#: plpprops.cc:925 plpprops.cc:938
+#: plpprops.cc:951 plpprops.cc:974
msgid "no"
msgstr ""
-#: plpprops.cc:937
+#: plpprops.cc:972
msgid "%1 seconds"
msgstr ""
-#: plpprops.cc:985
+#: plpprops.cc:1010
+msgid "Yes"
+msgstr ""
+
+#: plpprops.cc:1010
+msgid "No"
+msgstr ""
+
+#: plpprops.cc:1035
msgid "Psion &Owner"
msgstr ""
-#: plpprops.cc:991
+#: plpprops.cc:1041
msgid "This shows the owner's information of the connected device."
msgstr ""
diff --git a/lib/plpintl.h b/lib/plpintl.h
index 79f3359..e28fde0 100644
--- a/lib/plpintl.h
+++ b/lib/plpintl.h
@@ -20,8 +20,8 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
-#ifndef _INTL_H_
-#define _INTL_H_
+#ifndef _PLPINTL_H_
+#define _PLPINTL_H_
#ifdef HAVE_CONFIG_H
#include <config.h>
diff --git a/lib/ppsocket.cc b/lib/ppsocket.cc
index 8f52988..0053436 100644
--- a/lib/ppsocket.cc
+++ b/lib/ppsocket.cc
@@ -204,6 +204,13 @@ accept(string *Peer, IOWatch *iow)
#ifdef sun
int len;
#else
+# ifdef __FreeBSD__
+# if __FreeBSD_version >= 400000
+ socklen_t len;
+# else
+ unsigned len;
+# endif
+# endif
socklen_t len;
#endif
ppsocket *accepted;
diff --git a/lib/rpcs.h b/lib/rpcs.h
index 9c77656..2cb276a 100644
--- a/lib/rpcs.h
+++ b/lib/rpcs.h
@@ -350,22 +350,72 @@ public:
* machines, returns always an error code E_PSI_NOT_SIBO.
*
* @param machineInfo The struct holding all information on return.
- * @return Psion error code. 0 = Ok.
+ *
+ * @returns Psion error code. 0 = Ok.
*/
virtual Enum<rfsv::errs> getMachineInfo(machineInfo &) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> closeHandle(int) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> regOpenIter(u_int32_t, char *, u_int16_t &) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> regReadIter(u_int16_t) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> regWrite(void) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> regRead(void) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> regDelete(void) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> setTime(void) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> configOpen(void) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> configRead(void) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> configWrite(void) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> queryOpen(void) { return rfsv::E_PSI_NOT_SIBO;}
- virtual Enum<rfsv::errs> queryRead(void) { return rfsv::E_PSI_NOT_SIBO;}
+ /**
+ * Release an rpcs handle.
+ *
+ * This function works with EPOC only. Using it with SIBO
+ * machines, returns always an error code E_PSI_NOT_SIBO.
+ * It releases a handle, obtained by a previous call to
+ * @ref rpcs::configOpen .
+ *
+ * @param handle The handle to close.
+ *
+ * @returns A psion error code. 0 = Ok.
+ */
+ virtual Enum<rfsv::errs> closeHandle(u_int32_t handle)
+ { return rfsv::E_PSI_NOT_SIBO; }
+
+ virtual Enum<rfsv::errs> regOpenIter(u_int32_t, char *, u_int16_t &)
+ { return rfsv::E_PSI_NOT_SIBO;}
+ virtual Enum<rfsv::errs> regReadIter(u_int16_t)
+ { return rfsv::E_PSI_NOT_SIBO;}
+ virtual Enum<rfsv::errs> regWrite(void)
+ { return rfsv::E_PSI_NOT_SIBO;}
+ virtual Enum<rfsv::errs> regRead(void)
+ { return rfsv::E_PSI_NOT_SIBO;}
+ virtual Enum<rfsv::errs> regDelete(void)
+ { return rfsv::E_PSI_NOT_SIBO;}
+ virtual Enum<rfsv::errs> setTime(void)
+ { return rfsv::E_PSI_NOT_SIBO;}
+
+ /**
+ * Read from Series 5 scratch RAM
+ *
+ * This function works with EPOC only. Using it with SIBO
+ * machines, returns always an error code E_PSI_NOT_SIBO.
+ * It reads raw data from the scatch RAM of the Series 5.
+ *
+ * @param size The amount of data to me read.
+ * @param data The content of the scratch RAM is returned here.
+ *
+ * @returns A psion error code. 0 = Ok.
+ */
+ virtual Enum<rfsv::errs> configRead(u_int32_t size, bufferStore &data)
+ { return rfsv::E_PSI_NOT_SIBO; }
+
+ /**
+ * Write to Series 5 scratch RAM
+ *
+ * This function works with EPOC only. Using it with SIBO
+ * machines, returns always an error code E_PSI_NOT_SIBO.
+ * It writes raw data to the scatch RAM of the Series 5.
+ *
+ * @param data The data to be written to the scratch RAM.
+ *
+ * @returns A psion error code. 0 = Ok.
+ */
+ virtual Enum<rfsv::errs> configWrite(bufferStore data)
+ { return rfsv::E_PSI_NOT_SIBO;}
+
+ virtual Enum<rfsv::errs> queryOpen(void)
+ { return rfsv::E_PSI_NOT_SIBO;}
+ virtual Enum<rfsv::errs> queryRead(void)
+ { return rfsv::E_PSI_NOT_SIBO;}
protected:
/**
@@ -396,6 +446,7 @@ protected:
GET_CMDLINE = 0x0a,
FUSER = 0x0b,
GET_MACHINE_INFO = 0x64,
+ CLOSE_HANDLE = 0x65,
REG_OPEN_ITER = 0x66,
REG_READ_ITER = 0x67,
REG_WRITE = 0x68,
@@ -416,6 +467,27 @@ protected:
*/
int mtCacheS5mx;
+ /**
+ * Prepare scratch RAM in Series 5 for read/write
+ *
+ * This function works with EPOC only. Using it with SIBO
+ * machines, returns always an error code E_PSI_NOT_SIBO.
+ * It prepares a scratch area on the EPOC machine for a following
+ * use from within @ref rpcs::configRead or @ref rpcs::configWrite .
+ * These functions call @ref rpcs::closeHandle on exit. The contents
+ * of the scratch area is stored in RAM of the Series 5, therefore it
+ * gets lost when the Series 5 is switched off.
+ *
+ * @param handle The handle to be used in @ref rpcs::configRead ,
+ * @ref rpcs::configWrite and @ref rpcs::closeHandle is
+ * returned here.
+ * @param size The number of bytes you want to use.
+ *
+ * @returns A psion error code. 0 = Ok.
+ */
+ virtual Enum<rfsv::errs> configOpen(u_int16_t &handle, u_int32_t size)
+ { return rfsv::E_PSI_NOT_SIBO; }
+
/**
* Sends a command to the remote side.
*
diff --git a/lib/rpcs32.cc b/lib/rpcs32.cc
index 64ac5b4..b1cbe49 100644
--- a/lib/rpcs32.cc
+++ b/lib/rpcs32.cc
@@ -169,45 +169,83 @@ regReadIter(u_int16_t handle)
}
Enum<rfsv::errs> rpcs32::
-configOpen(void)
+configOpen(u_int16_t &handle, u_int32_t size)
{
bufferStore a;
Enum<rfsv::errs> res;
+ a.addDWord(size);
if (!sendCommand(rpcs::CONFIG_OPEN, a))
return rfsv::E_PSI_FILE_DISC;
res = getResponse(a, true);
- cout << "co: r=" << res << " a=" << a << endl;
- if (a.getLen() > 0)
- hhh = a.getDWord(0);
- return rfsv::E_PSI_GEN_NONE;
+ if (res == rfsv::E_PSI_GEN_NONE && (a.getLen() >= 2))
+ handle = a.getWord(0);
+ return res;
}
Enum<rfsv::errs> rpcs32::
-configRead(void)
+configRead(u_int32_t size, bufferStore &ret)
{
bufferStore a;
+ u_int16_t handle;
Enum<rfsv::errs> res;
- int l;
- FILE *f;
- f = fopen("blah", "w");
+ ret.init();
+ if ((res = configOpen(handle, size)) != rfsv::E_PSI_GEN_NONE)
+ return res;
do {
a.init();
- a.addDWord(hhh);
+ a.addWord(handle);
+ a.addDWord(2047);
if (!sendCommand(rpcs::CONFIG_READ, a))
return rfsv::E_PSI_FILE_DISC;
- if ((res = getResponse(a, true)) != rfsv::E_PSI_GEN_NONE)
+ if ((res = getResponse(a, true)) != rfsv::E_PSI_GEN_NONE) {
+ closeHandle(handle);
+ return res;
+ }
+ if (a.getLen() > 0)
+ ret.addBuff(a);
+ } while (a.getLen() > 0);
+ return rfsv::E_PSI_GEN_NONE;
+}
+
+Enum<rfsv::errs> rpcs32::
+configWrite(bufferStore data)
+{
+ bufferStore a;
+ u_int16_t handle;
+ Enum<rfsv::errs> res;
+
+ return rfsv::E_PSI_GEN_NONE;
+ if ((res = configOpen(handle, data.getLen())) != rfsv::E_PSI_GEN_NONE)
+ return res;
+ do {
+ a.init();
+ long l = (data.getLen() > 2047) ? 2047 : data.getLen();
+ a.addWord(handle);
+ a.addBuff(data, l);
+ data.discardFirstBytes(l);
+ if (!sendCommand(rpcs::CONFIG_WRITE, a))
+ return rfsv::E_PSI_FILE_DISC;
+ if ((res = getResponse(a, true)) != rfsv::E_PSI_GEN_NONE) {
+ closeHandle(handle);
return res;
- l = a.getLen();
- cout << "cr: " << l << endl;
- fwrite(a.getString(0), 1, l, f);
- } while (l > 0);
- fclose(f);
-//cout << "cr: r=" << res << " a=" << a << endl;
+ }
+ } while (data.getLen() > 0);
return rfsv::E_PSI_GEN_NONE;
}
+Enum<rfsv::errs> rpcs32::
+closeHandle(u_int16_t handle)
+{
+ bufferStore a;
+
+ a.addWord(handle);
+ if (!sendCommand(rpcs::CLOSE_HANDLE, a))
+ return rfsv::E_PSI_FILE_DISC;
+ return getResponse(a, true);
+}
+
/*
* Local variables:
* c-basic-offset: 4
diff --git a/lib/rpcs32.h b/lib/rpcs32.h
index 9fc9ebb..5adf829 100644
--- a/lib/rpcs32.h
+++ b/lib/rpcs32.h
@@ -42,11 +42,9 @@ class rpcs32 : public rpcs {
public:
Enum<rfsv::errs> getCmdLine(const char *, string &);
Enum<rfsv::errs> getMachineInfo(machineInfo &);
- Enum<rfsv::errs> configOpen(void);
- Enum<rfsv::errs> configRead(void);
-#if 0
- Enum<rfsv::errs> closeHandle(int);
-#endif
+ Enum<rfsv::errs> configRead(u_int32_t, bufferStore &);
+ Enum<rfsv::errs> configWrite(bufferStore);
+ Enum<rfsv::errs> closeHandle(u_int16_t);
Enum<rfsv::errs> regOpenIter(u_int32_t uid, char *match, u_int16_t &handle);
Enum<rfsv::errs> regReadIter(u_int16_t handle);
#if 0
@@ -54,13 +52,14 @@ class rpcs32 : public rpcs {
Enum<rfsv::errs> regRead(void);
Enum<rfsv::errs> regDelete(void);
Enum<rfsv::errs> setTime(void);
- Enum<rfsv::errs> configOpen(void);
- Enum<rfsv::errs> configRead(void);
- Enum<rfsv::errs> configWrite(void);
Enum<rfsv::errs> queryOpen(void);
Enum<rfsv::errs> queryRead(void);
Enum<rfsv::errs> quitServer(void);
#endif
+
+protected:
+ Enum<rfsv::errs> configOpen(u_int16_t &, u_int32_t);
+
private:
rpcs32(ppsocket *);
};
diff --git a/plpftp/ftp.cc b/plpftp/ftp.cc
index 9a2e655..fea9dcd 100644
--- a/plpftp/ftp.cc
+++ b/plpftp/ftp.cc
@@ -775,8 +775,47 @@ session(rfsv & a, rpcs & r, int xargc, char **xargv)
}
continue;
}
- if (!strcmp(argv[0], "y")) {
- r.configRead();
+ if (!strcmp(argv[0], "y") && (argc == 2)) {
+ u_int32_t size;
+ Enum<rfsv::errs> res;
+ bufferStore db;
+ bufferStore db2;
+
+ sscanf(argv[1], "%lu", &size);
+// while (1) {
+ res = r.configRead(size, db);
+ if (res != rfsv::E_PSI_GEN_NONE) {
+ cerr << "err: " << res << endl;
+ break;
+ }
+ if (db.getLen() != db2.getLen())
+ cout << "New length: " << db.getLen() << endl;
+ if (db.getLen() == 1268) {
+ char *p = (char *)db.getString(0);
+// p[0x164] = 2;
+ cout << "wr: " << r.configWrite(db) << endl;
+ }
+ res = r.configRead(size, db2);
+ if (res != rfsv::E_PSI_GEN_NONE) {
+ cerr << "err: " << res << endl;
+ break;
+ }
+// else {
+ for (int i = 0; i < db.getLen(); i++) {
+ unsigned char c = db.getByte(i);
+ unsigned char c2 = db2.getByte(i);
+ if ((c != c2) && ((i < 0x350) || (i > 0x353)))
+ cout << hex << setw(4) << setfill('0') << i
+ << " " << setw(2) << setfill('0') << (int)c2
+ << " " << setw(2) << setfill('0') << (int)c
+ << dec << endl;
+ }
+#if 0
+ }
+ db2 = db;
+ sleep(1);
+#endif
+// }
continue;
}
#endif
diff --git a/plpprint/plpprintd.cc b/plpprint/plpprintd.cc
index 9d43281..c3121ad 100644
--- a/plpprint/plpprintd.cc
+++ b/plpprint/plpprintd.cc
@@ -827,6 +827,7 @@ main(int argc, char **argv)
debuglog("plpprintd: could not connect: %s",
ret.toString().c_str());
delete wPrt;
+ sleep(1);
} else {
errorlog("plpprintd: Could not create wprt object");
exit(1);