summaryrefslogtreecommitdiff
authorspiralman <spiralman>2002-07-23 22:34:51 (UTC)
committer spiralman <spiralman>2002-07-23 22:34:51 (UTC)
commit7b69ef59464072521adb20148d49f9c654c066ee (patch) (unidiff)
tree449ef1dbfeac19f18b1ded20b4865353fa71452c
parentc344a4f4d0a614cfeb75d1d935e1f519d473c068 (diff)
downloadopie-7b69ef59464072521adb20148d49f9c654c066ee.zip
opie-7b69ef59464072521adb20148d49f9c654c066ee.tar.gz
opie-7b69ef59464072521adb20148d49f9c654c066ee.tar.bz2
Added code for irrecord frontend, doesnt work yet.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/tools/remote/Makefile431
-rw-r--r--noncore/tools/remote/Makefile.in325
-rw-r--r--noncore/tools/remote/help_instructions1
-rw-r--r--noncore/tools/remote/helptab.cpp27
-rw-r--r--noncore/tools/remote/helptab.h26
-rw-r--r--noncore/tools/remote/learntab.cpp171
-rw-r--r--noncore/tools/remote/learntab.h31
-rw-r--r--noncore/tools/remote/mainview.cpp7
-rw-r--r--noncore/tools/remote/mainview.h2
-rw-r--r--noncore/tools/remote/recorddialog.cpp81
-rw-r--r--noncore/tools/remote/recorddialog.h43
-rw-r--r--noncore/tools/remote/remote.pro6
12 files changed, 1139 insertions, 12 deletions
diff --git a/noncore/tools/remote/Makefile b/noncore/tools/remote/Makefile
new file mode 100644
index 0000000..68b388b
--- a/dev/null
+++ b/noncore/tools/remote/Makefile
@@ -0,0 +1,431 @@
1#############################################################################
2# Automatically generated from noncore/tools/remote/Makefile.in
3# Build options from
4#############################################################################
5
6# Compiling
7 INTERFACE_DECL_PATH = .
8 SYSCONF_CXX = arm-linux-g++
9 SYSCONF_CC = arm-linux-gcc
10 DASHCROSS = -arm
11
12# Compiling with support libraries
13 SYSCONF_CXXFLAGS_X11=
14 SYSCONF_CXXFLAGS_QT= -I$(QTDIR)/include
15 SYSCONF_CXXFLAGS_OPENGL= -I/usr/X11R6/include
16
17# Compiling YACC output
18SYSCONF_CXXFLAGS_YACC = -Wno-unused -Wno-parentheses
19
20# Linking with support libraries
21 SYSCONF_RPATH_X11=
22 SYSCONF_RPATH_QT= -Wl,-rpath,$(QTDIR)/lib
23 SYSCONF_RPATH_OPENGL= -Wl,-rpath,/usr/X11R6/lib
24
25# Linking with support libraries
26# X11
27 SYSCONF_LFLAGS_X11=
28 SYSCONF_LIBS_X11=
29# Qt, Qt+OpenGL
30 SYSCONF_LFLAGS_QT= -L$(QTDIR)/lib
31 SYSCONF_LIBS_QT = -lqte$(QT_THREAD_SUFFIX)
32 SYSCONF_LIBS_QT_OPENGL=
33# OpenGL
34 SYSCONF_LFLAGS_OPENGL= -L/usr/X11R6/lib
35 SYSCONF_LIBS_OPENGL=
36# Yacc
37 SYSCONF_LIBS_YACC=
38
39# Linking applications
40 SYSCONF_LINK = arm-linux-gcc
41 SYSCONF_LFLAGS =
42 SYSCONF_LIBS =
43
44# Link flags for shared objects
45 SYSCONF_LFLAGS_SHOBJ= -shared
46
47# Flags for threading
48 SYSCONF_CFLAGS_THREAD= -D_REENTRANT
49 SYSCONF_CXXFLAGS_THREAD= -D_REENTRANT
50 SYSCONF_LFLAGS_THREAD=
51 SYSCONF_LIBS_THREAD= -lpthread
52
53# Meta-object compiler
54 SYSCONF_MOC = $(QTDIR)/bin/moc
55
56# UI compiler
57 SYSCONF_UIC = $(QTDIR)/bin/uic
58
59# Linking shared libraries
60# - Build the $(TARGET) library, eg. lib$(TARGET).so.2.2.2
61# - Place target in $(DESTDIR) - which has a trailing /
62# - Usually needs to incorporate $(VER_MAJ), $(VER_MIN) and $(VER_PATCH)
63#
64 SYSCONF_LINK_SHLIB= arm-linux-gcc
65 SYSCONF_LINK_TARGET_SHARED= lib$(TARGET).so.$(VER_MAJ).$(VER_MIN).$(VER_PATCH)
66 SYSCONF_LINK_LIB_SHARED= $(SYSCONF_LINK_SHLIB) -shared -Wl,-soname,lib$(TARGET).so.$(VER_MAJ) \
67 $(LFLAGS) -o $(SYSCONF_LINK_TARGET_SHARED) \
68 $(OBJECTS) $(OBJMOC) $(LIBS) && \
69 mv $(SYSCONF_LINK_TARGET_SHARED) $(DESTDIR); \
70 cd $(DESTDIR) && \
71 rm -f lib$(TARGET).so lib$(TARGET).so.$(VER_MAJ) lib$(TARGET).so.$(VER_MAJ).$(VER_MIN); \
72 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so; \
73 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so.$(VER_MAJ); \
74 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).so.$(VER_MAJ).$(VER_MIN)
75
76# Linking static libraries
77# - Build the $(TARGET) library, eg. lib$(TARGET).a
78# - Place target in $(DESTDIR) - which has a trailing /
79#
80 SYSCONF_AR = arm-linux-ar cqs
81SYSCONF_LINK_TARGET_STATIC = lib$(TARGET).a
82 SYSCONF_LINK_LIB_STATIC= rm -f $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) ; \
83 $(SYSCONF_AR) $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) $(OBJECTS) $(OBJMOC)
84# Compiling application source
85 SYSCONF_CXXFLAGS= -pipe -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti -O2 -Wall -W
86 SYSCONF_CFLAGS = -pipe -O2 -Wall -W
87# Default link type (static linking is still be used where required)
88 SYSCONF_LINK_LIB= $(SYSCONF_LINK_LIB_SHARED)
89 SYSCONF_LINK_TARGET= $(SYSCONF_LINK_TARGET_SHARED)
90# Compiling library source
91 SYSCONF_CXXFLAGS_LIB= -fPIC
92 SYSCONF_CFLAGS_LIB= -fPIC
93# Compiling shared-object source
94 SYSCONF_CXXFLAGS_SHOBJ= -fPIC
95 SYSCONF_CFLAGS_SHOBJ= -fPIC
96# Linking Qt
97 SYSCONF_LIBS_QTLIB= $(SYSCONF_LFLAGS_X11) $(QT_LIBS_MT) $(QT_LIBS_OPT)
98# Linking Qt applications
99 SYSCONF_LIBS_QTAPP=
100#############################################################################
101
102####### Compiler, tools and options
103
104 CXX =$(SYSCONF_CXX) $(QT_CXX_MT)
105 CXXFLAGS=$(SYSCONF_CXXFLAGS_QT) $(SYSCONF_CXXFLAGS)
106 CC =$(SYSCONF_CC) $(QT_C_MT)
107 CFLAGS =$(SYSCONF_CFLAGS)
108 INCPATH =-I$(OPIEDIR)/include
109 LFLAGS =$(SYSCONF_LFLAGS_QT) $(SYSCONF_RPATH_QT) $(SYSCONF_LFLAGS) $(QT_LFLAGS_MT)
110 LIBS =$(SUBLIBS) -lqpe -lopie $(SYSCONF_LIBS_QT) $(SYSCONF_LIBS) $(SYSCONF_LIBS_QTAPP)
111 MOC =$(SYSCONF_MOC)
112 UIC =$(SYSCONF_UIC)
113
114####### Target
115
116DESTDIR = $(OPIEDIR)/bin/
117VER_MAJ = 1
118VER_MIN = 0
119VER_PATCH = 0
120 TARGET= remote
121TARGET1 = lib$(TARGET).so.$(VER_MAJ)
122
123####### Files
124
125 HEADERS =remotetab.h \
126 learntab.h \
127 configtab.h \
128 topgroup.h \
129 dvdgroup.h \
130 channelgroup.h \
131 vcrgroup.h \
132 buttondialog.h \
133 topgroupconf.h \
134 dvdgroupconf.h \
135 channelgroupconf.h \
136 vcrgroupconf.h \
137 mainview.h \
138 recorddialog.h \
139 helptab.h
140 SOURCES =remote.cpp \
141 remotetab.cpp \
142 learntab.cpp \
143 configtab.cpp \
144 topgroup.cpp \
145 dvdgroup.cpp \
146 channelgroup.cpp \
147 vcrgroup.cpp \
148 buttondialog.cpp \
149 topgroupconf.cpp \
150 dvdgroupconf.cpp \
151 channelgroupconf.cpp \
152 vcrgroupconf.cpp \
153 mainview.cpp \
154 recorddialog.cpp \
155 helptab.cpp
156 OBJECTS =remote.o \
157 remotetab.o \
158 learntab.o \
159 configtab.o \
160 topgroup.o \
161 dvdgroup.o \
162 channelgroup.o \
163 vcrgroup.o \
164 buttondialog.o \
165 topgroupconf.o \
166 dvdgroupconf.o \
167 channelgroupconf.o \
168 vcrgroupconf.o \
169 mainview.o \
170 recorddialog.o \
171 helptab.o
172INTERFACES =
173UICDECLS =
174UICIMPLS =
175 SRCMOC =moc_remotetab.cpp \
176 moc_learntab.cpp \
177 moc_configtab.cpp \
178 moc_buttondialog.cpp \
179 moc_mainview.cpp \
180 moc_recorddialog.cpp
181 OBJMOC =moc_remotetab.o \
182 moc_learntab.o \
183 moc_configtab.o \
184 moc_buttondialog.o \
185 moc_mainview.o \
186 moc_recorddialog.o
187
188
189####### Implicit rules
190
191.SUFFIXES: .cpp .cxx .cc .C .c
192
193.cpp.o:
194 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
195
196.cxx.o:
197 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
198
199.cc.o:
200 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
201
202.C.o:
203 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
204
205.c.o:
206 $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
207
208####### Build rules
209
210
211all: $(DESTDIR)$(TARGET)
212
213$(DESTDIR)$(TARGET): $(UICDECLS) $(OBJECTS) $(OBJMOC) $(SUBLIBS)
214 $(SYSCONF_LINK) $(LFLAGS) -o $(DESTDIR)$(TARGET) $(OBJECTS) $(OBJMOC) $(LIBS)
215
216moc: $(SRCMOC)
217
218tmake:
219 tmake remote.pro
220
221clean:
222 -rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(UICIMPLS) $(UICDECLS)
223 -rm -f *~ core
224 -rm -f allmoc.cpp
225
226####### Extension Modules
227
228listpromodules:
229 @echo
230
231listallmodules:
232 @echo
233
234listaddonpromodules:
235 @echo
236
237listaddonentmodules:
238 @echo
239
240
241REQUIRES=
242
243####### Sub-libraries
244
245
246###### Combined headers
247
248
249
250####### Compile
251
252remote.o: remote.cpp \
253 $(OPIEDIR)/include/qpe/qpeapplication.h \
254 $(OPIEDIR)/include/qpe/resource.h \
255 $(OPIEDIR)/include/qpe/config.h \
256 mainview.h \
257 remotetab.h \
258 topgroup.h \
259 dvdgroup.h \
260 channelgroup.h \
261 vcrgroup.h \
262 learntab.h \
263 recorddialog.h \
264 $(OPIEDIR)/include/opie/oprocess.h \
265 configtab.h \
266 buttondialog.h \
267 channelgroupconf.h \
268 dvdgroupconf.h \
269 topgroupconf.h \
270 vcrgroupconf.h \
271 helptab.h
272
273remotetab.o: remotetab.cpp \
274 remotetab.h \
275 $(OPIEDIR)/include/qpe/config.h \
276 topgroup.h \
277 dvdgroup.h \
278 $(OPIEDIR)/include/qpe/resource.h \
279 channelgroup.h \
280 vcrgroup.h
281
282learntab.o: learntab.cpp \
283 learntab.h \
284 recorddialog.h \
285 $(OPIEDIR)/include/opie/oprocess.h
286
287configtab.o: configtab.cpp \
288 configtab.h \
289 $(OPIEDIR)/include/qpe/config.h \
290 buttondialog.h \
291 channelgroupconf.h \
292 dvdgroupconf.h \
293 topgroupconf.h \
294 vcrgroupconf.h
295
296topgroup.o: topgroup.cpp \
297 topgroup.h \
298 $(OPIEDIR)/include/qpe/config.h
299
300dvdgroup.o: dvdgroup.cpp \
301 dvdgroup.h \
302 $(OPIEDIR)/include/qpe/resource.h
303
304channelgroup.o: channelgroup.cpp \
305 channelgroup.h
306
307vcrgroup.o: vcrgroup.cpp \
308 vcrgroup.h \
309 $(OPIEDIR)/include/qpe/resource.h
310
311buttondialog.o: buttondialog.cpp \
312 buttondialog.h
313
314topgroupconf.o: topgroupconf.cpp \
315 topgroupconf.h \
316 $(OPIEDIR)/include/qpe/config.h
317
318dvdgroupconf.o: dvdgroupconf.cpp \
319 dvdgroupconf.h
320
321channelgroupconf.o: channelgroupconf.cpp \
322 channelgroupconf.h
323
324vcrgroupconf.o: vcrgroupconf.cpp \
325 vcrgroupconf.h
326
327mainview.o: mainview.cpp \
328 mainview.h \
329 $(OPIEDIR)/include/qpe/qpeapplication.h \
330 $(OPIEDIR)/include/qpe/resource.h \
331 $(OPIEDIR)/include/qpe/config.h \
332 remotetab.h \
333 topgroup.h \
334 dvdgroup.h \
335 channelgroup.h \
336 vcrgroup.h \
337 learntab.h \
338 recorddialog.h \
339 $(OPIEDIR)/include/opie/oprocess.h \
340 configtab.h \
341 buttondialog.h \
342 channelgroupconf.h \
343 dvdgroupconf.h \
344 topgroupconf.h \
345 vcrgroupconf.h \
346 helptab.h
347
348recorddialog.o: recorddialog.cpp \
349 recorddialog.h \
350 $(OPIEDIR)/include/opie/oprocess.h
351
352helptab.o: helptab.cpp \
353 helptab.h
354
355moc_remotetab.o: moc_remotetab.cpp \
356 remotetab.h \
357 $(OPIEDIR)/include/qpe/config.h \
358 topgroup.h \
359 dvdgroup.h \
360 $(OPIEDIR)/include/qpe/resource.h \
361 channelgroup.h \
362 vcrgroup.h
363
364moc_learntab.o: moc_learntab.cpp \
365 learntab.h \
366 recorddialog.h \
367 $(OPIEDIR)/include/opie/oprocess.h
368
369moc_configtab.o: moc_configtab.cpp \
370 configtab.h \
371 $(OPIEDIR)/include/qpe/config.h \
372 buttondialog.h \
373 channelgroupconf.h \
374 dvdgroupconf.h \
375 topgroupconf.h \
376 vcrgroupconf.h
377
378moc_buttondialog.o: moc_buttondialog.cpp \
379 buttondialog.h
380
381moc_mainview.o: moc_mainview.cpp \
382 mainview.h \
383 $(OPIEDIR)/include/qpe/qpeapplication.h \
384 $(OPIEDIR)/include/qpe/resource.h \
385 $(OPIEDIR)/include/qpe/config.h \
386 remotetab.h \
387 topgroup.h \
388 dvdgroup.h \
389 channelgroup.h \
390 vcrgroup.h \
391 learntab.h \
392 recorddialog.h \
393 $(OPIEDIR)/include/opie/oprocess.h \
394 configtab.h \
395 buttondialog.h \
396 channelgroupconf.h \
397 dvdgroupconf.h \
398 topgroupconf.h \
399 vcrgroupconf.h \
400 helptab.h
401
402moc_recorddialog.o: moc_recorddialog.cpp \
403 recorddialog.h \
404 $(OPIEDIR)/include/opie/oprocess.h
405
406moc_remotetab.cpp: remotetab.h
407 $(MOC) remotetab.h -o moc_remotetab.cpp
408
409moc_learntab.cpp: learntab.h
410 $(MOC) learntab.h -o moc_learntab.cpp
411
412moc_configtab.cpp: configtab.h
413 $(MOC) configtab.h -o moc_configtab.cpp
414
415moc_buttondialog.cpp: buttondialog.h
416 $(MOC) buttondialog.h -o moc_buttondialog.cpp
417
418moc_mainview.cpp: mainview.h
419 $(MOC) mainview.h -o moc_mainview.cpp
420
421moc_recorddialog.cpp: recorddialog.h
422 $(MOC) recorddialog.h -o moc_recorddialog.cpp
423
424
425
426lupdate:
427 lupdate remote.pro
428
429lrelease:
430 lrelease remote.pro
431
diff --git a/noncore/tools/remote/Makefile.in b/noncore/tools/remote/Makefile.in
new file mode 100644
index 0000000..631c999
--- a/dev/null
+++ b/noncore/tools/remote/Makefile.in
@@ -0,0 +1,325 @@
1#############################################################################
2
3####### Compiler, tools and options
4
5 CXX =$(SYSCONF_CXX) $(QT_CXX_MT)
6 CXXFLAGS=$(SYSCONF_CXXFLAGS_QT) $(SYSCONF_CXXFLAGS)
7 CC =$(SYSCONF_CC) $(QT_C_MT)
8 CFLAGS =$(SYSCONF_CFLAGS)
9 INCPATH =-I$(OPIEDIR)/include
10 LFLAGS =$(SYSCONF_LFLAGS_QT) $(SYSCONF_RPATH_QT) $(SYSCONF_LFLAGS) $(QT_LFLAGS_MT)
11 LIBS =$(SUBLIBS) -lqpe -lopie $(SYSCONF_LIBS_QT) $(SYSCONF_LIBS) $(SYSCONF_LIBS_QTAPP)
12 MOC =$(SYSCONF_MOC)
13 UIC =$(SYSCONF_UIC)
14
15####### Target
16
17DESTDIR = $(OPIEDIR)/bin/
18VER_MAJ = 1
19VER_MIN = 0
20VER_PATCH = 0
21 TARGET= remote
22TARGET1 = lib$(TARGET).so.$(VER_MAJ)
23
24####### Files
25
26 HEADERS =remotetab.h \
27 learntab.h \
28 configtab.h \
29 topgroup.h \
30 dvdgroup.h \
31 channelgroup.h \
32 vcrgroup.h \
33 buttondialog.h \
34 topgroupconf.h \
35 dvdgroupconf.h \
36 channelgroupconf.h \
37 vcrgroupconf.h \
38 mainview.h \
39 recorddialog.h \
40 helptab.h
41 SOURCES =remote.cpp \
42 remotetab.cpp \
43 learntab.cpp \
44 configtab.cpp \
45 topgroup.cpp \
46 dvdgroup.cpp \
47 channelgroup.cpp \
48 vcrgroup.cpp \
49 buttondialog.cpp \
50 topgroupconf.cpp \
51 dvdgroupconf.cpp \
52 channelgroupconf.cpp \
53 vcrgroupconf.cpp \
54 mainview.cpp \
55 recorddialog.cpp \
56 helptab.cpp
57 OBJECTS =remote.o \
58 remotetab.o \
59 learntab.o \
60 configtab.o \
61 topgroup.o \
62 dvdgroup.o \
63 channelgroup.o \
64 vcrgroup.o \
65 buttondialog.o \
66 topgroupconf.o \
67 dvdgroupconf.o \
68 channelgroupconf.o \
69 vcrgroupconf.o \
70 mainview.o \
71 recorddialog.o \
72 helptab.o
73INTERFACES =
74UICDECLS =
75UICIMPLS =
76 SRCMOC =moc_remotetab.cpp \
77 moc_learntab.cpp \
78 moc_configtab.cpp \
79 moc_buttondialog.cpp \
80 moc_mainview.cpp \
81 moc_recorddialog.cpp
82 OBJMOC =moc_remotetab.o \
83 moc_learntab.o \
84 moc_configtab.o \
85 moc_buttondialog.o \
86 moc_mainview.o \
87 moc_recorddialog.o
88
89
90####### Implicit rules
91
92.SUFFIXES: .cpp .cxx .cc .C .c
93
94.cpp.o:
95 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
96
97.cxx.o:
98 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
99
100.cc.o:
101 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
102
103.C.o:
104 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
105
106.c.o:
107 $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
108
109####### Build rules
110
111
112all: $(DESTDIR)$(TARGET)
113
114$(DESTDIR)$(TARGET): $(UICDECLS) $(OBJECTS) $(OBJMOC) $(SUBLIBS)
115 $(SYSCONF_LINK) $(LFLAGS) -o $(DESTDIR)$(TARGET) $(OBJECTS) $(OBJMOC) $(LIBS)
116
117moc: $(SRCMOC)
118
119tmake:
120 tmake remote.pro
121
122clean:
123 -rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(UICIMPLS) $(UICDECLS)
124 -rm -f *~ core
125 -rm -f allmoc.cpp
126
127####### Extension Modules
128
129listpromodules:
130 @echo
131
132listallmodules:
133 @echo
134
135listaddonpromodules:
136 @echo
137
138listaddonentmodules:
139 @echo
140
141
142REQUIRES=
143
144####### Sub-libraries
145
146
147###### Combined headers
148
149
150
151####### Compile
152
153remote.o: remote.cpp \
154 $(OPIEDIR)/include/qpe/qpeapplication.h \
155 $(OPIEDIR)/include/qpe/resource.h \
156 $(OPIEDIR)/include/qpe/config.h \
157 mainview.h \
158 remotetab.h \
159 topgroup.h \
160 dvdgroup.h \
161 channelgroup.h \
162 vcrgroup.h \
163 learntab.h \
164 recorddialog.h \
165 $(OPIEDIR)/include/opie/oprocess.h \
166 configtab.h \
167 buttondialog.h \
168 channelgroupconf.h \
169 dvdgroupconf.h \
170 topgroupconf.h \
171 vcrgroupconf.h \
172 helptab.h
173
174remotetab.o: remotetab.cpp \
175 remotetab.h \
176 $(OPIEDIR)/include/qpe/config.h \
177 topgroup.h \
178 dvdgroup.h \
179 $(OPIEDIR)/include/qpe/resource.h \
180 channelgroup.h \
181 vcrgroup.h
182
183learntab.o: learntab.cpp \
184 learntab.h \
185 recorddialog.h \
186 $(OPIEDIR)/include/opie/oprocess.h
187
188configtab.o: configtab.cpp \
189 configtab.h \
190 $(OPIEDIR)/include/qpe/config.h \
191 buttondialog.h \
192 channelgroupconf.h \
193 dvdgroupconf.h \
194 topgroupconf.h \
195 vcrgroupconf.h
196
197topgroup.o: topgroup.cpp \
198 topgroup.h \
199 $(OPIEDIR)/include/qpe/config.h
200
201dvdgroup.o: dvdgroup.cpp \
202 dvdgroup.h \
203 $(OPIEDIR)/include/qpe/resource.h
204
205channelgroup.o: channelgroup.cpp \
206 channelgroup.h
207
208vcrgroup.o: vcrgroup.cpp \
209 vcrgroup.h \
210 $(OPIEDIR)/include/qpe/resource.h
211
212buttondialog.o: buttondialog.cpp \
213 buttondialog.h
214
215topgroupconf.o: topgroupconf.cpp \
216 topgroupconf.h \
217 $(OPIEDIR)/include/qpe/config.h
218
219dvdgroupconf.o: dvdgroupconf.cpp \
220 dvdgroupconf.h
221
222channelgroupconf.o: channelgroupconf.cpp \
223 channelgroupconf.h
224
225vcrgroupconf.o: vcrgroupconf.cpp \
226 vcrgroupconf.h
227
228mainview.o: mainview.cpp \
229 mainview.h \
230 $(OPIEDIR)/include/qpe/qpeapplication.h \
231 $(OPIEDIR)/include/qpe/resource.h \
232 $(OPIEDIR)/include/qpe/config.h \
233 remotetab.h \
234 topgroup.h \
235 dvdgroup.h \
236 channelgroup.h \
237 vcrgroup.h \
238 learntab.h \
239 recorddialog.h \
240 $(OPIEDIR)/include/opie/oprocess.h \
241 configtab.h \
242 buttondialog.h \
243 channelgroupconf.h \
244 dvdgroupconf.h \
245 topgroupconf.h \
246 vcrgroupconf.h \
247 helptab.h
248
249recorddialog.o: recorddialog.cpp \
250 recorddialog.h \
251 $(OPIEDIR)/include/opie/oprocess.h
252
253helptab.o: helptab.cpp \
254 helptab.h
255
256moc_remotetab.o: moc_remotetab.cpp \
257 remotetab.h \
258 $(OPIEDIR)/include/qpe/config.h \
259 topgroup.h \
260 dvdgroup.h \
261 $(OPIEDIR)/include/qpe/resource.h \
262 channelgroup.h \
263 vcrgroup.h
264
265moc_learntab.o: moc_learntab.cpp \
266 learntab.h \
267 recorddialog.h \
268 $(OPIEDIR)/include/opie/oprocess.h
269
270moc_configtab.o: moc_configtab.cpp \
271 configtab.h \
272 $(OPIEDIR)/include/qpe/config.h \
273 buttondialog.h \
274 channelgroupconf.h \
275 dvdgroupconf.h \
276 topgroupconf.h \
277 vcrgroupconf.h
278
279moc_buttondialog.o: moc_buttondialog.cpp \
280 buttondialog.h
281
282moc_mainview.o: moc_mainview.cpp \
283 mainview.h \
284 $(OPIEDIR)/include/qpe/qpeapplication.h \
285 $(OPIEDIR)/include/qpe/resource.h \
286 $(OPIEDIR)/include/qpe/config.h \
287 remotetab.h \
288 topgroup.h \
289 dvdgroup.h \
290 channelgroup.h \
291 vcrgroup.h \
292 learntab.h \
293 recorddialog.h \
294 $(OPIEDIR)/include/opie/oprocess.h \
295 configtab.h \
296 buttondialog.h \
297 channelgroupconf.h \
298 dvdgroupconf.h \
299 topgroupconf.h \
300 vcrgroupconf.h \
301 helptab.h
302
303moc_recorddialog.o: moc_recorddialog.cpp \
304 recorddialog.h \
305 $(OPIEDIR)/include/opie/oprocess.h
306
307moc_remotetab.cpp: remotetab.h
308 $(MOC) remotetab.h -o moc_remotetab.cpp
309
310moc_learntab.cpp: learntab.h
311 $(MOC) learntab.h -o moc_learntab.cpp
312
313moc_configtab.cpp: configtab.h
314 $(MOC) configtab.h -o moc_configtab.cpp
315
316moc_buttondialog.cpp: buttondialog.h
317 $(MOC) buttondialog.h -o moc_buttondialog.cpp
318
319moc_mainview.cpp: mainview.h
320 $(MOC) mainview.h -o moc_mainview.cpp
321
322moc_recorddialog.cpp: recorddialog.h
323 $(MOC) recorddialog.h -o moc_recorddialog.cpp
324
325
diff --git a/noncore/tools/remote/help_instructions b/noncore/tools/remote/help_instructions
new file mode 100644
index 0000000..e52f513
--- a/dev/null
+++ b/noncore/tools/remote/help_instructions
@@ -0,0 +1 @@
<qt><h1>Opie-Remote Usage Instructions</h1><p>First, some definitions. A Remote is a remote entry in an lircd.conf file, it represents one remote you want to emulate. A Remote Layout is one entry in your ~/Settings/Remote.conf file. It represents the buttons that you see on your screen. Each button on a Remote Layout can be mapped to any button in a Remote. This way you can have, for example, a vcr remote layout, in which all the play/pause/etc buttons are mapped to the buttons on your vcr's remote. However, most VCR's don't have volume controls, so the volume buttons can be mapped to the volume buttons on your TV.</p><p>The first things you need the lirc and lirc-modules ipkgs. If you installed this from an ipkg, they should already be there, thanks to the wonderful world of dependencies. If not, get them. The next thing you need is an lircd.conf file. you can get these at <a href=http://www.lirc.org/>http://www.lirc.org/</a>. Read the documentation there to figure out how to make your own, if one for your remote doesn't exist, or how to have multiple remotes in one lircd.conf file. Once you have a good lircd.conf file, put it in /etc, kill the lircd daemon (if its running) and do a modprobe lirc_sir. Then, run lircd again.</p><p>The next thing you want to do is to create a remote layout. Go to the config tab, and enter a name for your remote layout in the pulldown menu. Dont use the name Remotes, as that could confuse the app. Hopefully, that will be fixed soon. after entering the name you want to use, press New, and then select the name again from the pulldown menu (another oddity that i hope to fix). Then, press each button that you want to map, and a dialog should appear. Select the remote and button that you want to use, and click OK. Once you are done, go to the Remote tab, and select the new remote from the dropdown menu. It should works fine. If at any time you want to change a remote layout, go to the Config tab, select the layout from the dropdown menu, and change the buttons you want to change.</p><p>This is program is written and maintaned by Thomas (spiralman) Stephens. <a href=mailto:spiralman@softhome.net>spiralman@softhome.net</a>. Or, look for me on #opie or #handhelds.org on irc.openprojects.net.</p></qt>"); \ No newline at end of file
diff --git a/noncore/tools/remote/helptab.cpp b/noncore/tools/remote/helptab.cpp
new file mode 100644
index 0000000..3c53ab6
--- a/dev/null
+++ b/noncore/tools/remote/helptab.cpp
@@ -0,0 +1,27 @@
1/*
2Opie-Remote. emulates remote controlls on an iPaq (and maybe a Zaurus) in Opie.
3Copyright (C) 2002 Thomas Stephens
4
5This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public
6License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later
7version.
8
9This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
10implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
11Public License for more details.
12
13You should have received a copy of the GNU General Public License along with this program; if not, write to the Free
14Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
15*/
16
17#include "helptab.h"
18
19HelpTab::HelpTab(QWidget *parent=0, const char *name=0):QWidget(parent, name)
20{
21 QVBoxLayout *layout = new QVBoxLayout(this);
22 QString *string = new QString("<qt><h1>Opie-Remote Usage Instructions</h1><p>First, some definitions. A Remote is a remote entry in an lircd.conf file, it represents one remote you want to emulate. A Remote Layout is one entry in your ~/Settings/Remote.conf file. It represents the buttons that you see on your screen. Each button on a Remote Layout can be mapped to any button in a Remote. This way you can have, for example, a vcr remote layout, in which all the play/pause/etc buttons are mapped to the buttons on your vcr's remote. However, most VCR's don't have volume controls, so the volume buttons can be mapped to the volume buttons on your TV.</p><p>The first things you need the lirc and lirc-modules ipkgs. If you installed this from an ipkg, they should already be there, thanks to the wonderful world of dependencies. If not, get them. The next thing you need is an lircd.conf file. you can get these at <a href=http://www.lirc.org/>http://www.lirc.org/</a>. Read the documentation there to figure out how to make your own, if one for your remote doesn't exist, or how to have multiple remotes in one lircd.conf file. Once you have a good lircd.conf file, put it in /etc, kill the lircd daemon (if its running) and do a modprobe lirc_sir. Then, run lircd again.</p><p>The next thing you want to do is to create a remote layout. Go to the config tab, and enter a name for your remote layout in the pulldown menu. Dont use the name Remotes, as that could confuse the app. Hopefully, that will be fixed soon. after entering the name you want to use, press New, and then select the name again from the pulldown menu (another oddity that i hope to fix). Then, press each button that you want to map, and a dialog should appear. Select the remote and button that you want to use, and click OK. Once you are done, go to the Remote tab, and select the new remote from the dropdown menu. It should works fine. If at any time you want to change a remote layout, go to the Config tab, select the layout from the dropdown menu, and change the buttons you want to change.</p><p>This is program is written and maintaned by Thomas (spiralman) Stephens. <a href=mailto:spiralman@softhome.net>spiralman@softhome.net</a>. Or, look for me on #opie or #handhelds.org on irc.openprojects.net.</p></qt>");
23 QTextView *view = new QTextView((const QString &)*string, 0, this, "view");
24 layout->insertSpacing( -1, 5);
25 layout->insertWidget(-1, view);
26 layout->insertSpacing(-1, 5);
27} \ No newline at end of file
diff --git a/noncore/tools/remote/helptab.h b/noncore/tools/remote/helptab.h
new file mode 100644
index 0000000..f3f99b3
--- a/dev/null
+++ b/noncore/tools/remote/helptab.h
@@ -0,0 +1,26 @@
1/*
2Opie-Remote. emulates remote controlls on an iPaq (and maybe a Zaurus) in Opie.
3Copyright (C) 2002 Thomas Stephens
4
5This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public
6License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later
7version.
8
9This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
10implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
11Public License for more details.
12
13You should have received a copy of the GNU General Public License along with this program; if not, write to the Free
14Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
15*/
16
17#include <qwidget.h>
18#include <qtextview.h>
19#include <qstring.h>
20#include <qlayout.h>
21
22class HelpTab : public QWidget
23{
24public:
25 HelpTab(QWidget *parent=0, const char *name=0);
26}; \ No newline at end of file
diff --git a/noncore/tools/remote/learntab.cpp b/noncore/tools/remote/learntab.cpp
index 998f449..1c746c5 100644
--- a/noncore/tools/remote/learntab.cpp
+++ b/noncore/tools/remote/learntab.cpp
@@ -18,9 +18,174 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 18
19LearnTab::LearnTab(QWidget *parent, const char *name):QWidget(parent,name) 19LearnTab::LearnTab(QWidget *parent, const char *name):QWidget(parent,name)
20{ 20{
21 QVBoxLayout *layout = new QVBoxLayout(this); 21 QVBoxLayout *layout = new QVBoxLayout(this);
22 QString *string = new QString("<qt><h1>Opie-Remote Usage Instructions</h1><p>First, some definitions. A Remote is a remote entry in an lircd.conf file, it represents one remote you want to emulate. A Remote Layout is one entry in your ~/Settings/Remote.conf file. It represents the buttons that you see on your screen. Each button on a Remote Layout can be mapped to any button in a Remote. This way you can have, for example, a vcr remote layout, in which all the play/pause/etc buttons are mapped to the buttons on your vcr's remote. However, most VCR's don't have volume controls, so the volume buttons can be mapped to the volume buttons on your TV.</p><p>The first things you need the lirc and lirc-modules ipkgs. If you installed this from an ipkg, they should already be there, thanks to the wonderful world of dependencies. If not, get them. The next thing you need is an lircd.conf file. you can get these at <a href=http://www.lirc.org/>http://www.lirc.org/</a>. Read the documentation there to figure out how to make your own, if one for your remote doesn't exist, or how to have multiple remotes in one lircd.conf file. Once you have a good lircd.conf file, put it in /etc, kill the lircd daemon (if its running) and do a modprobe lirc_sir. Then, run lircd again.</p><p>The next thing you want to do is to create a remote layout. Go to the config tab, and enter a name for your remote layout in the pulldown menu. Dont use the name Remotes, as that could confuse the app. Hopefully, that will be fixed soon. after entering the name you want to use, press New, and then select the name again from the pulldown menu (another oddity that i hope to fix). Then, press each button that you want to map, and a dialog should appear. Select the remote and button that you want to use, and click OK. Once you are done, go to the Remote tab, and select the new remote from the dropdown menu. It should works fine. If at any time you want to change a remote layout, go to the Config tab, select the layout from the dropdown menu, and change the buttons you want to change.</p><p>This is program is written and maintaned by Thomas (spiralman) Stephens. <a href=mailto:spiralman@softhome.net>spiralman@softhome.net</a>. Or, look for me on #opie or #handhelds.org on irc.openprojects.net.</p></qt>"); 22 QHBoxLayout *bottomLayout = new QHBoxLayout(this);
23 23
24 QTextView *textView = new QTextView(*string, 0, this); 24 layout->insertSpacing(0,5);
25 layout->addWidget(textView); 25 remotesBox = new QListBox(this, "remotesBox");
26 layout->insertWidget(0, remotesBox, 1);
27 remotesBox->insertStringList(getRemotes());
28
29 layout->insertSpacing(-1,5);
30 layout->insertLayout(-1, bottomLayout);
31 layout->insertSpacing(-1,5);
32
33 QPushButton *add = new QPushButton("Add", this, "add");
34 bottomLayout->insertSpacing(-1, 5);
35 bottomLayout->insertWidget(-1, add);
36 bottomLayout->insertSpacing(-1, 5);
37 QPushButton *edit = new QPushButton("Edit", this, "edit");
38 bottomLayout->insertWidget(-1, edit);
39 bottomLayout->insertSpacing(-1, 5);
40 QPushButton *del = new QPushButton("Delete", this, "delete");
41 bottomLayout->insertWidget(-1, del);
42 bottomLayout->insertSpacing(-1, 5);
43
44 connect(add, SIGNAL(clicked()), this, SLOT(add()) );
45 connect(edit, SIGNAL(clicked()), this, SLOT(edit()) );
46 connect(del, SIGNAL(clicked()), this, SLOT(del()) );
26} 47}
48
49void LearnTab::add()
50{
51 printf("LearnTab::add: add pressed\n");
52 RecordDialog *dialog = new RecordDialog(this);
53 dialog->showMaximized();
54}
55
56void LearnTab::edit()
57{
58}
59
60void LearnTab::del()
61{
62}
63
64QStringList LearnTab::getRemotes()
65{
66 const char write_buffer[] = "LIST\n";
67 const char *readbuffer;
68 int i, numlines;
69 QStringList list;
70
71 addr.sun_family=AF_UNIX;
72 strcpy(addr.sun_path,"/dev/lircd");
73
74 fd = socket(AF_UNIX, SOCK_STREAM, 0);
75 if(fd == -1)
76 {
77 QMessageBox *mb = new QMessageBox("Error!",
78 "couldnt connect to socket",
79 QMessageBox::NoIcon,
80 QMessageBox::Ok,
81 QMessageBox::NoButton,
82 QMessageBox::NoButton);
83 mb->exec();
84 perror("ButtonDialog::GetRemotes");
85 return NULL;
86 }
87
88 if(::connect(fd,(struct sockaddr *) &addr, sizeof(addr) ) == -1)
89 {
90 QMessageBox *mb = new QMessageBox("Error!",
91 "couldnt connect to socket",
92 QMessageBox::NoIcon,
93 QMessageBox::Ok,
94 QMessageBox::NoButton,
95 QMessageBox::NoButton);
96 mb->exec();
97 perror("ButtonDialog::GetRemotes");
98 return NULL;
99 }
100
101 write(fd, write_buffer, strlen(write_buffer));
102
103 for(i=0; i<5; i++)
104 {
105 printf("%d\n", i);
106 readbuffer = readPacket();
107 printf("%s", readbuffer);
108 printf("%d\n", i);
109 }
110
111 numlines = atoi(readbuffer);
112
113 for(i=0; i<numlines; i++)
114 {
115 list+=readPacket();
116 }
117
118 if(strcasecmp(readPacket(), "END") != 0)
119 {
120 QMessageBox *mb = new QMessageBox("Error!",
121 "bad packet",
122 QMessageBox::NoIcon,
123 QMessageBox::Ok,
124 QMessageBox::NoButton,
125 QMessageBox::NoButton);
126 mb->exec();
127 perror("ButtonDialog::GetRemotes");
128 return NULL;
129 }
130
131 ::close(fd);
132 return list;
133}
134
135//this function was ripped for rc.c in xrc, it is available here: http://www.lirc.org/software.html
136const char *LearnTab::readPacket()
137{
138 static char buffer[PACKET_SIZE+1]="";
139 char *end;
140 static int ptr=0,end_len=0;
141 ssize_t ret;
142 timeout = 0;
143
144 if(ptr>0)
145 {
146 memmove(buffer,buffer+ptr,strlen(buffer+ptr)+1);
147 ptr=strlen(buffer);
148 end=strchr(buffer,'\n');
149 }
150 else
151 {
152 end=NULL;
153 }
154 alarm(TIMEOUT);
155 while(end==NULL)
156 {
157 if(PACKET_SIZE<=ptr)
158 {
159 fprintf(stderr,"bad packet\n");
160 ptr=0;
161 return(NULL);
162 }
163 ret=read(fd,buffer+ptr,PACKET_SIZE-ptr);
164
165 if(ret<=0 || timeout)
166 {
167 if(timeout)
168 {
169 fprintf(stderr,"timeout\n");
170 }
171 else
172 {
173 alarm(0);
174 }
175 ptr=0;
176 return(NULL);
177 }
178 buffer[ptr+ret]=0;
179 ptr=strlen(buffer);
180 end=strchr(buffer,'\n');
181 }
182 alarm(0);timeout=0;
183
184 end[0]=0;
185 ptr=strlen(buffer)+1;
186//# ifdef DEBUG
187 //printf("buffer: -%s-\n",buffer);
188//# endif
189 return(buffer);
190}
191
diff --git a/noncore/tools/remote/learntab.h b/noncore/tools/remote/learntab.h
index c03f605..cb84600 100644
--- a/noncore/tools/remote/learntab.h
+++ b/noncore/tools/remote/learntab.h
@@ -14,13 +14,42 @@ You should have received a copy of the GNU General Public License along with thi
14Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 14Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
15*/ 15*/
16 16
17#include <qwidget.h> 17#include <qwidget.h>
18#include <qtextview.h> 18#include <qlistbox.h>
19#include <qstring.h> 19#include <qstring.h>
20#include <qstringlist.h>
20#include <qlayout.h> 21#include <qlayout.h>
22#include <qpushbutton.h>
23#include <qmessagebox.h>
24
25#include <stdio.h>
26#include <stdlib.h>
27#include <string.h>
28#include <sys/socket.h>
29#include <sys/types.h>
30#include <sys/un.h>
31#include <unistd.h>
32#include <errno.h>
33
34#include "recorddialog.h"
35
36#define PACKET_SIZE 256
37#define TIMEOUT 3
21 38
22class LearnTab : public QWidget 39class LearnTab : public QWidget
23{ 40{
41 Q_OBJECT
24public: 42public:
25 LearnTab(QWidget *parent=0, const char *name=0); 43 LearnTab(QWidget *parent=0, const char *name=0);
44 const char *readPacket();
45 QStringList getRemotes();
46public slots:
47 void add();
48 void edit();
49 void del();
50private:
51 QListBox *remotesBox;
52 int fd;
53 int timeout;
54 struct sockaddr_un addr;
26}; 55};
diff --git a/noncore/tools/remote/mainview.cpp b/noncore/tools/remote/mainview.cpp
index a7be9e3..eaba7df 100644
--- a/noncore/tools/remote/mainview.cpp
+++ b/noncore/tools/remote/mainview.cpp
@@ -25,23 +25,20 @@ MainView::MainView(QWidget *parent, const char *name) : QWidget(parent, name)
25 QTabWidget *tabs = new QTabWidget(this); 25 QTabWidget *tabs = new QTabWidget(this);
26 26
27 layout->addWidget(tabs); 27 layout->addWidget(tabs);
28 28
29 printf("MainView: 1\n");
30 remote = new RemoteTab(tabs); 29 remote = new RemoteTab(tabs);
31 printf("MainView: 2\n");
32 learn = new LearnTab(tabs); 30 learn = new LearnTab(tabs);
33 printf("MainView: 3\n");
34 config = new ConfigTab(tabs); 31 config = new ConfigTab(tabs);
35 printf("MainView: 4\n"); 32 help = new HelpTab(tabs);
36 connect(config, SIGNAL(remotesChanged()), this, SLOT(updateRemotesList()) ); 33 connect(config, SIGNAL(remotesChanged()), this, SLOT(updateRemotesList()) );
37 printf("MainView: 5\n");
38 34
39 remote->setIRSocket(fd); 35 remote->setIRSocket(fd);
40 36
41 tabs->addTab(remote, tr("Remote") ); 37 tabs->addTab(remote, tr("Remote") );
42 tabs->addTab(learn,tr("Learn") ); 38 tabs->addTab(learn,tr("Learn") );
43 tabs->addTab(config,tr("Config") ); 39 tabs->addTab(config,tr("Config") );
40 tabs->addTab(help, tr("Help") );
44 41
45 printf("1\n"); 42 printf("1\n");
46 cfg = new Config("Remote"); 43 cfg = new Config("Remote");
47 printf("2\n"); 44 printf("2\n");
diff --git a/noncore/tools/remote/mainview.h b/noncore/tools/remote/mainview.h
index 2434064..e93da5c 100644
--- a/noncore/tools/remote/mainview.h
+++ b/noncore/tools/remote/mainview.h
@@ -32,8 +32,9 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
32 32
33#include "remotetab.h" 33#include "remotetab.h"
34#include "learntab.h" 34#include "learntab.h"
35#include "configtab.h" 35#include "configtab.h"
36#include "helptab.h"
36 37
37#define BUFFERSIZE 256 38#define BUFFERSIZE 256
38 39
39class MainView : public QWidget 40class MainView : public QWidget
@@ -49,6 +50,7 @@ private:
49 int fd; 50 int fd;
50 RemoteTab *remote; 51 RemoteTab *remote;
51 ConfigTab *config; 52 ConfigTab *config;
52 LearnTab *learn; 53 LearnTab *learn;
54 HelpTab *help;
53 Config *cfg; 55 Config *cfg;
54}; 56};
diff --git a/noncore/tools/remote/recorddialog.cpp b/noncore/tools/remote/recorddialog.cpp
new file mode 100644
index 0000000..642e99c
--- a/dev/null
+++ b/noncore/tools/remote/recorddialog.cpp
@@ -0,0 +1,81 @@
1/*
2Opie-Remote. emulates remote controlls on an iPaq (and maybe a Zaurus) in Opie.
3Copyright (C) 2002 Thomas Stephens
4
5This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public
6License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later
7version.
8
9This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
10implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
11Public License for more details.
12
13You should have received a copy of the GNU General Public License along with this program; if not, write to the Free
14Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
15*/
16
17#include "recorddialog.h"
18
19RecordDialog::RecordDialog(QWidget *parent=0, const char *name=0):QDialog(parent, name)
20{
21 QVBoxLayout *layout = new QVBoxLayout(this);
22 QHBoxLayout *hlayout = new QHBoxLayout(this);
23
24 layout->insertSpacing(0,5);
25 output = new QTextView("Please enter the name of the new remote, and press Return\n", 0, this, "output");
26 layout->insertWidget(-1, output);
27 layout->insertSpacing(-1, 5);
28 layout->insertLayout(-1, hlayout);
29 layout->insertSpacing(-1, 5);
30
31 hlayout->insertSpacing(0, 5);
32 input = new QLineEdit(this, "input");
33 hlayout->insertWidget(-1, input, 1);
34 hlayout->insertSpacing(-1, 5);
35
36 QPushButton *ret = new QPushButton("Return", this, "return");
37 hlayout->insertWidget(-1, ret);
38 hlayout->insertSpacing(-1, 5);
39 connect(ret, SIGNAL(clicked()), this, SLOT(retPressed()) );
40 where = 0;
41
42 record = new OProcess;
43}
44
45void RecordDialog::retPressed()
46{
47 printf("RecordDialog::retPressed: ret pressed\n");
48
49 if(where == 0)
50 {
51 connect(record, SIGNAL(receivedStdout(OProcess *, char *, int)), this, SLOT(incoming(OProcess *, char *, int)) );
52 connect(record, SIGNAL(receivedStderr(OProcess *, char *, int)), this, SLOT(incoming(OProcess *, char *, int)) );
53 connect(record, SIGNAL(processExited(OProcess *)), this, SLOT(done(OProcess *)) );
54 printf("RecordDialog::retPressed: starting irrecord\n");
55 QString file = "/tmp/" + input->text();
56 *record<<"irrecord"<<file.latin1();
57 if(!record->start(OProcess::NotifyOnExit, OProcess::AllOutput))
58 {
59 QMessageBox *mb = new QMessageBox("Error!",
60 "Could not start irrecord. You must<br>use an lirc ipkg that includes<br>irrecord",
61 QMessageBox::NoIcon,
62 QMessageBox::Ok,
63 QMessageBox::NoButton,
64 QMessageBox::NoButton);
65 mb->exec();
66 return;
67 }
68 // record->resume();
69 where = 1;
70 }
71}
72
73void RecordDialog::incoming(OProcess *proc, char *buffer, int len)
74{
75 output->setText(output->text() + QString(buffer).truncate(len-1));
76 printf("RecordDialog::incoming: got text from irrecord\n");
77}
78
79void RecordDialog::done(OProcess *proc)
80{
81}
diff --git a/noncore/tools/remote/recorddialog.h b/noncore/tools/remote/recorddialog.h
new file mode 100644
index 0000000..38b2bb4
--- a/dev/null
+++ b/noncore/tools/remote/recorddialog.h
@@ -0,0 +1,43 @@
1/*
2Opie-Remote. emulates remote controlls on an iPaq (and maybe a Zaurus) in Opie.
3Copyright (C) 2002 Thomas Stephens
4
5This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public
6License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later
7version.
8
9This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
10implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
11Public License for more details.
12
13You should have received a copy of the GNU General Public License along with this program; if not, write to the Free
14Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
15*/
16
17#include <qdialog.h>
18#include <qtextview.h>
19#include <qlineedit.h>
20#include <qpushbutton.h>
21#include <qwidget.h>
22#include <qlayout.h>
23#include <qmessagebox.h>
24
25#include <stdio.h>
26
27#include <opie/oprocess.h>
28
29class RecordDialog : public QDialog
30{
31 Q_OBJECT
32public:
33 RecordDialog(QWidget *parent=0, const char *name=0);
34public slots:
35 void retPressed();
36 void incoming(OProcess *proc, char *buffer, int len);
37 void done(OProcess *proc);
38private:
39 QTextView *output;
40 QLineEdit *input;
41 OProcess *record;
42 int where;
43}; \ No newline at end of file
diff --git a/noncore/tools/remote/remote.pro b/noncore/tools/remote/remote.pro
index 9cd33d2..e5fc3fb 100644
--- a/noncore/tools/remote/remote.pro
+++ b/noncore/tools/remote/remote.pro
@@ -1,12 +1,12 @@
1 TEMPLATE=app 1 TEMPLATE=app
2 CONFIG +=qt warn_on release 2 CONFIG +=qt warn_on release
3 DESTDIR =$(OPIEDIR)/bin 3 DESTDIR =$(OPIEDIR)/bin
4 HEADERS = remotetab.h learntab.h configtab.h topgroup.h dvdgroup.h channelgroup.h vcrgroup.h buttondialog.h topgroupconf.h dvdgroupconf.h channelgroupconf.h vcrgroupconf.h mainview.h 4 HEADERS = remotetab.h learntab.h configtab.h topgroup.h dvdgroup.h channelgroup.h vcrgroup.h buttondialog.h topgroupconf.h dvdgroupconf.h channelgroupconf.h vcrgroupconf.h mainview.h recorddialog.h helptab.h
5 SOURCES =remote.cpp remotetab.cpp learntab.cpp configtab.cpp topgroup.cpp dvdgroup.cpp channelgroup.cpp vcrgroup.cpp buttondialog.cpp topgroupconf.cpp dvdgroupconf.cpp channelgroupconf.cpp vcrgroupconf.cpp mainview.cpp 5 SOURCES =remote.cpp remotetab.cpp learntab.cpp configtab.cpp topgroup.cpp dvdgroup.cpp channelgroup.cpp vcrgroup.cpp buttondialog.cpp topgroupconf.cpp dvdgroupconf.cpp channelgroupconf.cpp vcrgroupconf.cpp mainview.cpp recorddialog.cpp helptab.cpp
6 INCLUDEPATH+=$(OPIEDIR)/include 6 INCLUDEPATH+=$(OPIEDIR)/include
7 DEPENDPATH+=$(OPIEDIR)/include 7 DEPENDPATH+=$(OPIEDIR)/include
8 LIBS +=-lqpe 8 LIBS +=-lqpe -lopie
9TARGET = remote 9TARGET = remote
10 10
11TRANSLATIONS = ../../../i18n/de/remote.ts \ 11TRANSLATIONS = ../../../i18n/de/remote.ts \
12 ../../../i18n/en/remote.ts \ 12 ../../../i18n/en/remote.ts \