summaryrefslogtreecommitdiffstats
path: root/korundum/rubylib/examples/dcop/dcoppredicate.rb
blob: 82a9c8b4dfebd969454a84c70e4a784c1fed630b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/env ruby

require 'Korundum'
include KDE

class SenderWidget < PushButton
	def initialize(parent, name)
		super
		connect(self, SIGNAL('clicked()'), self, SLOT('doit()'))
	end
	
	slots 'doit()'
	
	def doit()
		dcopRef = DCOPRef.new("dcopslot", "MyWidget")
		#
		# A synonym for isFoo()
		result = dcopRef.foo?
		if result.nil?
			puts "DCOP predicate failed"
		else
			puts "foo? is #{result}"
		end
		
		# A synonym for hasBar()
		result = dcopRef.bar?
		if result.nil?
			puts "DCOP predicate failed"
		else
			puts "bar? is #{result}"
		end
	end
end

about = AboutData.new("dcoppredicate", "DCOP Predicate Test", "0.1")
CmdLineArgs.init(ARGV, about)
a = UniqueApplication.new
calltest = SenderWidget.new(nil, "predicatetest") { setText 'DCOP Predicate Test' }
a.mainWidget = calltest
calltest.show
a.exec