summaryrefslogtreecommitdiff
path: root/core/launcher/irserver.cpp
authorkergoth <kergoth>2002-01-25 22:14:26 (UTC)
committer kergoth <kergoth>2002-01-25 22:14:26 (UTC)
commit15318cad33835e4e2dc620d033e43cd930676cdd (patch) (side-by-side diff)
treec2fa0399a2c47fda8e2cd0092c73a809d17f68eb /core/launcher/irserver.cpp
downloadopie-15318cad33835e4e2dc620d033e43cd930676cdd.zip
opie-15318cad33835e4e2dc620d033e43cd930676cdd.tar.gz
opie-15318cad33835e4e2dc620d033e43cd930676cdd.tar.bz2
Initial revision
Diffstat (limited to 'core/launcher/irserver.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/launcher/irserver.cpp50
1 files changed, 50 insertions, 0 deletions
diff --git a/core/launcher/irserver.cpp b/core/launcher/irserver.cpp
new file mode 100644
index 0000000..b22e064
--- a/dev/null
+++ b/core/launcher/irserver.cpp
@@ -0,0 +1,50 @@
+#include "irserver.h"
+
+#include <qpe/qlibrary.h>
+#include <qpe/qpeapplication.h>
+
+#include <qtranslator.h>
+#include <stdlib.h>
+
+#include "obexinterface.h"
+
+#include <qdir.h>
+
+IrServer::IrServer( QObject *parent, const char *name )
+ : QObject( parent, name )
+{
+ lib = 0;
+ QString path = QPEApplication::qpeDir() + "/plugins/obex/";
+ QDir dir( path, "lib*.so" );
+ QStringList list = dir.entryList();
+ QStringList::Iterator it;
+ for ( it = list.begin(); it != list.end(); ++it ) {
+ ObexInterface *iface = 0;
+ QLibrary *trylib = new QLibrary( path + *it );
+ qDebug("trying lib %s", (path + (*it)).latin1() );
+ if ( trylib->queryInterface( IID_ObexInterface, (QUnknownInterface**)&iface ) == QS_OK ) {
+ lib = trylib;
+ qDebug("found obex lib" );
+ QString lang = getenv( "LANG" );
+ QTranslator * trans = new QTranslator(qApp);
+ QString type = (*it).left( (*it).find(".") );
+ QString tfn = QPEApplication::qpeDir()+"/i18n/"+lang+"/"+type+".qm";
+ qDebug("tr fpr obex: %s", tfn.latin1() );
+ if ( trans->load( tfn ))
+ qApp->installTranslator( trans );
+ else
+ delete trans;
+
+ break;
+ } else {
+ delete lib;
+ }
+ }
+ if ( !lib )
+ qDebug("could not load IR plugin" );
+}
+
+IrServer::~IrServer()
+{
+ delete lib;
+}