summaryrefslogtreecommitdiffstats
path: root/qtruby/rubylib/examples/passivepopup/passivepopup.rb
blob: 37f60c1f8bbf5c840a228ecbb019078f87713510 (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
#!/usr/bin/env ruby

require 'Qt'
 
class PassiveWindow < Qt::Frame
	MARGIN = 20
	
    def initialize(message)
        super(nil, "passivedlg",
            Qt::WStyle_Customize | Qt::WX11BypassWM | Qt::WStyle_StaysOnTop |
			Qt::WStyle_Tool | Qt::WStyle_NoBorder)

        setFrameStyle(Qt::Frame::Box| Qt::Frame::Plain)
        setLineWidth(2)

        setMinimumWidth(100)
        layout=Qt::VBoxLayout.new(self, 6, 11)
        layout.setAutoAdd(true)
        Qt::Label.new(message, self)

        quit=Qt::PushButton.new(tr("Close"), self)
        connect(quit, SIGNAL("clicked()"), SLOT("close()"))
	end

    def show
        super
        move(Qt::Application.desktop().width() - width() - MARGIN,
            Qt::Application.desktop().height() - height() - MARGIN)
	end
end
  	
if (Process.fork != nil)
	exit
end
app = Qt::Application.new(ARGV)
win = PassiveWindow.new(ARGV[0])
app.mainWidget = win
win.show
app.exec