qasim gui: Cleanup & moved constants in separate file.
git-svn-id: https://websvn.glenux.net/svn/Upoc/sshfs-mapper/trunk@1704 eaee96b3-f302-0410-b096-c6cfd47f7835
This commit is contained in:
parent
061740d66c
commit
47e8f457a9
3 changed files with 92 additions and 87 deletions
|
@ -4,12 +4,12 @@ $DEBUG = true
|
|||
$VERBOSE = true
|
||||
|
||||
require 'pp'
|
||||
require 'sshfs-mapper/config'
|
||||
require 'sshfs-mapper/map'
|
||||
require 'qasim/config'
|
||||
require 'qasim/map'
|
||||
|
||||
module SshfsMapper
|
||||
module Qasim
|
||||
|
||||
class SshfsMapper
|
||||
class QasimCli
|
||||
#
|
||||
#
|
||||
#
|
||||
|
@ -69,7 +69,7 @@ module SshfsMapper
|
|||
end
|
||||
end
|
||||
|
||||
app = SshfsMapper::SshfsMapper.new
|
||||
app = Qasim::Qasim.new
|
||||
app.run
|
||||
|
||||
|
||||
|
|
165
bin/qasim-gui.rb
165
bin/qasim-gui.rb
|
@ -18,103 +18,106 @@ end
|
|||
|
||||
|
||||
module Qasim
|
||||
class QasimGui
|
||||
|
||||
NAME="Qasim"
|
||||
VERSION="0.1"
|
||||
|
||||
def dbus_notify title, body, icon
|
||||
bus = Qt::DBusConnection.sessionBus
|
||||
if !bus.connected?
|
||||
$stderr.puts("Cannot connect to the D-BUS session bus.\n" \
|
||||
"To start it, run:\n" \
|
||||
"\teval `dbus-launch --auto-syntax`\n")
|
||||
exit 1
|
||||
def initialize
|
||||
end
|
||||
msg = Qt::DBusMessage.create_method_call( 'org.freedesktop.Notifications',
|
||||
'/org/freedesktop/Notifications',
|
||||
'org.freedesktop.Notifications',
|
||||
'Notify' )
|
||||
msg.arguments = [ NAME, Qt::Variant.from_value( 0, "unsigned int" ),
|
||||
icon, title, body, [], {}, -1 ]
|
||||
rep = bus.call( msg )
|
||||
# if rep.type == Qt::DBusMessage
|
||||
|
||||
# si.showMessage("Qasim",
|
||||
# "Sorry dude", 2, 5000 )
|
||||
end
|
||||
|
||||
def build_app
|
||||
|
||||
app = Qt::Application.new(ARGV)
|
||||
si = Qt::SystemTrayIcon.new
|
||||
|
||||
std_icon = Qt::Icon.new( File.join ICON_PATH, "qasim.svg" )
|
||||
alt_icon = Qt::Icon.new
|
||||
blinking = false
|
||||
|
||||
si.icon = std_icon
|
||||
si.show
|
||||
dbus_notify "Hello", "World", 'dialog-information'
|
||||
|
||||
|
||||
si.setToolTip("Qasim %s" % VERSION);
|
||||
|
||||
Qt::Timer.new(app) do |timer|
|
||||
timer.connect(SIGNAL('timeout()')) do
|
||||
si.icon = (si.icon.isNull ? std_icon : alt_icon) if blinking
|
||||
def dbus_notify title, body, icon
|
||||
bus = Qt::DBusConnection.sessionBus
|
||||
if !bus.connected?
|
||||
$stderr.puts("Cannot connect to the D-BUS session bus.\n" \
|
||||
"To start it, run:\n" \
|
||||
"\teval `dbus-launch --auto-syntax`\n")
|
||||
exit 1
|
||||
end
|
||||
timer.start(500)
|
||||
msg = Qt::DBusMessage.create_method_call( 'org.freedesktop.Notifications',
|
||||
'/org/freedesktop/Notifications',
|
||||
'org.freedesktop.Notifications',
|
||||
'Notify' )
|
||||
msg.arguments = [ NAME, Qt::Variant.from_value( 0, "unsigned int" ),
|
||||
icon, title, body, [], {}, -1 ]
|
||||
rep = bus.call( msg )
|
||||
# if rep.type == Qt::DBusMessage
|
||||
|
||||
# si.showMessage("Qasim",
|
||||
# "Sorry dude", 2, 5000 )
|
||||
end
|
||||
|
||||
menu = Qt::Menu.new
|
||||
def self.build_app
|
||||
|
||||
['Diades', 'Daneel', 'Dolos'].each do |name|
|
||||
itemx = Qt::Action.new(name, menu)
|
||||
itemx.setCheckable true;
|
||||
itemx.connect(SIGNAL(:triggered)) do
|
||||
puts "%s => %s" % [name, itemx.checked ]
|
||||
app = Qt::Application.new(ARGV)
|
||||
si = Qt::SystemTrayIcon.new
|
||||
|
||||
std_icon = Qt::Icon.new( File.join APP_ICON_PATH, "qasim.svg" )
|
||||
alt_icon = Qt::Icon.new
|
||||
blinking = false
|
||||
|
||||
si.icon = std_icon
|
||||
si.show
|
||||
dbus_notify "Hello", "World", 'dialog-information'
|
||||
|
||||
|
||||
si.setToolTip("Qasim %s" % VERSION);
|
||||
|
||||
Qt::Timer.new(app) do |timer|
|
||||
timer.connect(SIGNAL('timeout()')) do
|
||||
si.icon = (si.icon.isNull ? std_icon : alt_icon) if blinking
|
||||
end
|
||||
timer.start(500)
|
||||
end
|
||||
menu.addAction itemx;
|
||||
end
|
||||
|
||||
menu.addSeparator
|
||||
menu = Qt::Menu.new
|
||||
|
||||
act_pref = Qt::Action.new _('&Preferences'), menu
|
||||
act_pref.setIcon( Qt::Icon::fromTheme("configure") )
|
||||
act_pref.setIconVisibleInMenu true
|
||||
menu.addAction act_pref;
|
||||
|
||||
act_about = Qt::Action.new '&About', menu
|
||||
act_about.setIcon( Qt::Icon::fromTheme("help-about") )
|
||||
act_about.setIconVisibleInMenu true
|
||||
menu.addAction act_about;
|
||||
|
||||
menu.addSeparator
|
||||
|
||||
act_quit = Qt::Action.new _('Quit'), menu
|
||||
act_quit.setIcon( Qt::Icon::fromTheme("application-exit") )
|
||||
act_quit.setIconVisibleInMenu true
|
||||
act_quit.connect(SIGNAL(:triggered)) { app.quit }
|
||||
menu.addAction act_quit
|
||||
|
||||
si.contextMenu = menu
|
||||
|
||||
si.connect(SIGNAL('activated(QSystemTrayIcon::ActivationReason)')) do |reason|
|
||||
case reason
|
||||
when Qt::SystemTrayIcon::Trigger
|
||||
blinking = !blinking
|
||||
si.icon = blinking ? alt_icon : std_icon
|
||||
when Qt::SystemTrayIcon::MiddleClick: puts 'Middle Click'
|
||||
when Qt::SystemTrayIcon::Context: puts 'Right Click'
|
||||
when Qt::SystemTrayIcon::DoubleClick: puts 'Double Click'
|
||||
['Diades', 'Daneel', 'Dolos'].each do |name|
|
||||
itemx = Qt::Action.new(name, menu)
|
||||
itemx.setCheckable true;
|
||||
itemx.connect(SIGNAL(:triggered)) do
|
||||
puts "%s => %s" % [name, itemx.checked ]
|
||||
end
|
||||
menu.addAction itemx;
|
||||
end
|
||||
|
||||
menu.addSeparator
|
||||
|
||||
act_pref = Qt::Action.new _('&Preferences'), menu
|
||||
act_pref.setIcon( Qt::Icon::fromTheme("configure") )
|
||||
act_pref.setIconVisibleInMenu true
|
||||
menu.addAction act_pref;
|
||||
|
||||
act_about = Qt::Action.new '&About', menu
|
||||
act_about.setIcon( Qt::Icon::fromTheme("help-about") )
|
||||
act_about.setIconVisibleInMenu true
|
||||
menu.addAction act_about;
|
||||
|
||||
menu.addSeparator
|
||||
|
||||
act_quit = Qt::Action.new _('Quit'), menu
|
||||
act_quit.setIcon( Qt::Icon::fromTheme("application-exit") )
|
||||
act_quit.setIconVisibleInMenu true
|
||||
act_quit.connect(SIGNAL(:triggered)) { app.quit }
|
||||
menu.addAction act_quit
|
||||
|
||||
si.contextMenu = menu
|
||||
|
||||
si.connect(SIGNAL('activated(QSystemTrayIcon::ActivationReason)')) do |reason|
|
||||
case reason
|
||||
when Qt::SystemTrayIcon::Trigger
|
||||
blinking = !blinking
|
||||
si.icon = blinking ? alt_icon : std_icon
|
||||
when Qt::SystemTrayIcon::MiddleClick: puts 'Middle Click'
|
||||
when Qt::SystemTrayIcon::Context: puts 'Right Click'
|
||||
when Qt::SystemTrayIcon::DoubleClick: puts 'Double Click'
|
||||
end
|
||||
end
|
||||
|
||||
app.exec
|
||||
end
|
||||
|
||||
app.exec
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
include Qasim
|
||||
Qasim::build_app
|
||||
Qasim::QasimGui::build_app
|
||||
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
module Qasim
|
||||
ICON_PATH = "icons"
|
||||
APP_ICON_PATH = "icons"
|
||||
APP_NAME="Qasim"
|
||||
APP_VERSION="0.1"
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue