summaryrefslogtreecommitdiff
authorpaule <paule>2007-02-07 10:31:30 (UTC)
committer paule <paule>2007-02-07 10:31:30 (UTC)
commit5f5827b8e28311589e821f199dcefeb964538301 (patch) (unidiff)
treeedb64c2c0d4ab9795e18a95121a63df393ca55bf
parent83d7fd04cc8e1fcafb345f74bc861515e17c5414 (diff)
downloadopie-5f5827b8e28311589e821f199dcefeb964538301.zip
opie-5f5827b8e28311589e821f199dcefeb964538301.tar.gz
opie-5f5827b8e28311589e821f199dcefeb964538301.tar.bz2
Start up gracefully when lircd is not properly configured yet
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/tools/remote/mainview.cpp5
-rw-r--r--noncore/tools/remote/mainview.h1
-rw-r--r--noncore/tools/remote/remote.cpp18
3 files changed, 20 insertions, 4 deletions
diff --git a/noncore/tools/remote/mainview.cpp b/noncore/tools/remote/mainview.cpp
index 8c87785..a00a75a 100644
--- a/noncore/tools/remote/mainview.cpp
+++ b/noncore/tools/remote/mainview.cpp
@@ -43,12 +43,17 @@ MainView::MainView(QWidget *parent, const char *name) : QWidget(parent, name)
43 cfg = new Config("Remote"); 43 cfg = new Config("Remote");
44 printf("2\n"); 44 printf("2\n");
45 45
46 remote->setConfig(cfg); 46 remote->setConfig(cfg);
47 config->setConfig(cfg); 47 config->setConfig(cfg);
48} 48}
49 49
50void MainView::updateRemotesList() 50void MainView::updateRemotesList()
51{ 51{
52 remote->updateRemotesList(); 52 remote->updateRemotesList();
53 printf("MainView: got remotes changed signal\n"); 53 printf("MainView: got remotes changed signal\n");
54} 54}
55
56void MainView::updateLearnTab()
57{
58 learn->updateRemotesList();
59}
diff --git a/noncore/tools/remote/mainview.h b/noncore/tools/remote/mainview.h
index b1ddde4..26b8086 100644
--- a/noncore/tools/remote/mainview.h
+++ b/noncore/tools/remote/mainview.h
@@ -34,19 +34,20 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
34#include "configtab.h" 34#include "configtab.h"
35#include "helptab.h" 35#include "helptab.h"
36 36
37#define BUFFERSIZE 256 37#define BUFFERSIZE 256
38 38
39class MainView : public QWidget 39class MainView : public QWidget
40{ 40{
41 Q_OBJECT 41 Q_OBJECT
42public: 42public:
43 MainView(QWidget *parent=0, const char *name=0); 43 MainView(QWidget *parent=0, const char *name=0);
44public slots: 44public slots:
45 void updateRemotesList(); 45 void updateRemotesList();
46 void updateLearnTab();
46private: 47private:
47 RemoteTab *remote; 48 RemoteTab *remote;
48 ConfigTab *config; 49 ConfigTab *config;
49 LearnTab *learn; 50 LearnTab *learn;
50 HelpTab *help; 51 HelpTab *help;
51 Config *cfg; 52 Config *cfg;
52}; 53};
diff --git a/noncore/tools/remote/remote.cpp b/noncore/tools/remote/remote.cpp
index 5b756cb..03d70c4 100644
--- a/noncore/tools/remote/remote.cpp
+++ b/noncore/tools/remote/remote.cpp
@@ -33,32 +33,42 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
33#include <sys/types.h> 33#include <sys/types.h>
34#include <sys/un.h> 34#include <sys/un.h>
35#include <unistd.h> 35#include <unistd.h>
36#include <stdio.h> 36#include <stdio.h>
37#include <signal.h> 37#include <signal.h>
38 38
39 39
40int main( int argc, char **argv ) 40int main( int argc, char **argv )
41{ 41{
42 QPEApplication a( argc, argv ); 42 QPEApplication a( argc, argv );
43 43
44 LircHandler lh; 44 LircHandler lh;
45 bool disablelirc = false;
45 46
46 lh.disableIrDA(); 47 lh.disableIrDA();
47 lh.setupModules(); 48 lh.setupModules();
48 lh.startLircd(); 49 lh.startLircd();
49 if(!lh.isLircdRunning()) { 50
50 QMessageBox::critical(NULL, QObject::tr("Error"), 51 if(lh.checkLircdConfValid(false)) {
51 QObject::tr("Unable to start lircd"), 52 if(!lh.isLircdRunning()) {
52 QMessageBox::Ok, QMessageBox::NoButton); 53 QMessageBox::critical(NULL, QObject::tr("Error"),
54 QObject::tr("Unable to start lircd"),
55 QMessageBox::Ok, QMessageBox::NoButton);
56 disablelirc = true;
57 }
58 }
59 else {
60 disablelirc = true;
53 } 61 }
54 62
55 MainView w; 63 MainView w;
64 if(!disablelirc)
65 w.updateLearnTab();
56 a.setMainWidget( &w ); 66 a.setMainWidget( &w );
57 QPEApplication::showWidget( &w ); 67 QPEApplication::showWidget( &w );
58 int result = a.exec(); 68 int result = a.exec();
59 69
60 lh.stopLircd(); 70 lh.stopLircd();
61 lh.cleanupModules(); 71 lh.cleanupModules();
62 72
63 return result; 73 return result;
64} 74}