Diffstat (limited to 'core/applets/irdaapplet/irda.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/applets/irdaapplet/irda.cpp | 44 |
1 files changed, 40 insertions, 4 deletions
diff --git a/core/applets/irdaapplet/irda.cpp b/core/applets/irdaapplet/irda.cpp index 28a79d1..e21f191 100644 --- a/core/applets/irdaapplet/irda.cpp +++ b/core/applets/irdaapplet/irda.cpp | |||
@@ -44,2 +44,3 @@ | |||
44 | #include <qtimer.h> | 44 | #include <qtimer.h> |
45 | #include <qtextstream.h> | ||
45 | #include <qpopupmenu.h> | 46 | #include <qpopupmenu.h> |
@@ -130,2 +131,23 @@ int IrdaApplet::setIrdaDiscoveryStatus(int d) { | |||
130 | 131 | ||
132 | void IrdaApplet::showDiscovered() { | ||
133 | QFile discovery("/proc/net/irda/discovery"); | ||
134 | |||
135 | if (discovery.open(IO_ReadOnly) ) { | ||
136 | QStringList list; | ||
137 | // since it is /proc we _must_ use QTextStream | ||
138 | QTextStream stream ( &discovery); | ||
139 | QString streamIn; | ||
140 | streamIn = stream.read(); | ||
141 | list = QStringList::split("\n", streamIn); | ||
142 | |||
143 | for(QStringList::Iterator line=list.begin(); line!=list.end(); line++) { | ||
144 | if( (*line).startsWith("nickname:") ){ | ||
145 | discoveredDevice = (*line).mid(((*line).find(':'))+1,(*line).find(',')-(*line).find(':')-1); | ||
146 | qDebug(discoveredDevice); | ||
147 | } | ||
148 | } | ||
149 | } | ||
150 | |||
151 | } | ||
152 | |||
131 | void IrdaApplet::mousePressEvent( QMouseEvent *) { | 153 | void IrdaApplet::mousePressEvent( QMouseEvent *) { |
@@ -134,2 +156,3 @@ void IrdaApplet::mousePressEvent( QMouseEvent *) { | |||
134 | int ret=0; | 156 | int ret=0; |
157 | showDiscovered(); | ||
135 | 158 | ||
@@ -139,11 +162,24 @@ void IrdaApplet::mousePressEvent( QMouseEvent *) { | |||
139 | //menu->insertItem( tr("More..."), 4 ); | 162 | //menu->insertItem( tr("More..."), 4 ); |
140 | if (irdaactive) | 163 | |
164 | menu->insertItem( tr("Discovered Device:"), 9); | ||
165 | |||
166 | if ( !discoveredDevice.isEmpty() ) { | ||
167 | menu->insertItem( discoveredDevice ,7 ); | ||
168 | } else { | ||
169 | menu->insertItem( tr("None"), 8); | ||
170 | } | ||
171 | |||
172 | menu->insertSeparator(); | ||
173 | |||
174 | if (irdaactive) { | ||
141 | menu->insertItem( tr("Disable IrDA"), 0 ); | 175 | menu->insertItem( tr("Disable IrDA"), 0 ); |
142 | else | 176 | } else { |
143 | menu->insertItem( tr("Enable IrDA"), 1 ); | 177 | menu->insertItem( tr("Enable IrDA"), 1 ); |
178 | } | ||
144 | 179 | ||
145 | if (irdaDiscoveryActive) | 180 | if (irdaDiscoveryActive) { |
146 | menu->insertItem( tr("Disable Discovery"), 2 ); | 181 | menu->insertItem( tr("Disable Discovery"), 2 ); |
147 | else | 182 | } else { |
148 | menu->insertItem( tr("Enable Discovery"), 3 ); | 183 | menu->insertItem( tr("Enable Discovery"), 3 ); |
184 | } | ||
149 | 185 | ||