Sha256: 224a2b8cdd95deb4aa602aa1c69dd9d5b906b6d94d3d2bfa16e259abb2540871

Contents?: true

Size: 850 Bytes

Versions: 6

Compression:

Stored size: 850 Bytes

Contents

#
# Simple notification example.
#
$LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..', 'lib')
require 'gir_ffi-gtk3'

GirFFI.setup :Notify

# Both Gtk and Notify need to be init'ed.
Gtk.init
Notify.init "notification test"

# Basic set up of the notification.
nf = Notify::Notification.new "Hello!", "Hi there.", "gtk-dialog-info"
nf.timeout = 3000
nf.urgency = :critical

# Show a button 'Test' in the notification, with a callback function.
nf.add_action "test", "Test", Proc.new { |obj, action, user_data|
  puts "Action #{action} clicked."
}, nil, nil

# In this case, we want the program to end once the notification is gone,
# but not before.
GObject.signal_connect(nf, "closed") {
  puts "Notification closed."
  Gtk.main_quit
}

# Show the notification.
nf.show

# Start a main loop to wait for the notification to be closed.
Gtk.main

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
gir_ffi-gtk-0.7.1 examples/05_notification.rb
gir_ffi-gtk-0.7.0 examples/05_notification.rb
gir_ffi-gtk-0.6.0 examples/05_notification.rb
gir_ffi-gtk-0.5.0 examples/05_notification.rb
gir_ffi-gtk-0.4.1 examples/05_notification.rb
gir_ffi-gtk-0.4.0 examples/05_notification.rb