Class: LibuiParadise::GUI::LibUI::DaemonizeAndExitAfterDelayExample

Inherits:
Base
  • Object
show all
Defined in:
lib/libui_paradise/examples/complex/033_daemonize_and_exit_after_delay_example.rb

Overview

LibuiParadise::GUI::LibUI::DaemonizeAndExitAfterDelayExample

Constant Summary collapse

TITLE =
#

TITLE

#
'Showcasing Process.daemonize() and exiting after 15 seconds'
DELAY =
#

DELAY

Keep a delay of 15 seconds.

#
3
WIDTH =
#

WIDTH

#
1200
HEIGHT =
#

HEIGHT

#
120

Instance Method Summary collapse

Methods inherited from Base

[], #add_these_widgets_to_the_main_window, #create_the_skeleton, #default_title_width_height, #run_in_the_background, #update_the_main_window

Methods included from BaseModule

#abort_on_exception, #append_this_array_to_that_combobox, #area, #assumed_height?, #assumed_width?, #bold_button, #bold_label, #bold_text_left_aligned, #button, #chdir, #checkbox, #checked_checkbox, #close_properly, #colour_button, #colour_to_rgb, #combobox, #commandline_arguments?, #connect_skeleton, #copy, #copy_file, #create_directory, #create_grid, #create_skeleton_then_connect_skeleton, #create_table, #create_the_skeleton, #current_widget_pointer_type?, #delete_file, #do_quit, #editable_combobox, #entry, #error_msg, #esystem, #exit_from, #fancy_text, #font, #font_button, #free_table_model, #gtk3?, #hbox, #height?, #horizontal_separator, #image, #is_on_roebe?, #is_on_windows?, #label, #last_pointer?, #left_arrow?, #main_hash?, #main_then_quit, #menu, #message_box_error, #multiline_entry, #new_brush, #non_wrapping_multiline_entry, #parse_this_file_into_a_table, #password_entry, #quit_button, #radio_buttons, #register_this_fiddle_pointer_widget, #reset_the_internal_hash, #return_button_for_opening_a_local_file, #return_default_window, #return_pwd, #return_the_resolution_using_xrandr, #run_main, #scrolling_area, #search_entry, #selected?, #set_commandline_arguments, #set_height, #set_main_window, #set_title, #set_width, #set_window, #sfancy, #sfile, #slider, #spinbox, #tab, #table, #text?, #text_layout, #title?, #title_width_height, #title_width_height_font, #try_to_parse_this_config_file, #try_to_use_this_font, #two_elements_hbox, #ui_draw_text_layout_params, #ui_font_descriptor, #ui_margined_main_window, #ui_msg_box, #ui_open_file, #ui_padded_grid, #ui_padded_hbox, #ui_padded_vbox, #ui_sync_connect, #ui_table_params_malloc, #ui_text_then_entry, #use_gtk3?, #use_gtk?, #use_libui?, #vbox, #vertical_separator, #width?, #window, #window?, #without_trailing_comment, #wrapper_new_progress_bar

Constructor Details

#initialize(run_already = true) ⇒ DaemonizeAndExitAfterDelayExample

#

initialize

#


45
46
47
48
49
50
# File 'lib/libui_paradise/examples/complex/033_daemonize_and_exit_after_delay_example.rb', line 45

def initialize(
    run_already = true
  )
  reset
  run if run_already
end

Instance Method Details

#create_skeletonObject

#

create_skeleton (create tag, skeleton tag)

#


63
64
65
66
67
68
# File 'lib/libui_paradise/examples/complex/033_daemonize_and_exit_after_delay_example.rb', line 63

def create_skeleton
  # ======================================================================= #
  # === @window
  # ======================================================================= #
  @window = create_padded_main_window(title?, width?, height?, 0)
end

#resetObject

#

reset (reset tag)

#


55
56
57
58
# File 'lib/libui_paradise/examples/complex/033_daemonize_and_exit_after_delay_example.rb', line 55

def reset
  reset_the_internal_hash
  default_title_width_height(TITLE, WIDTH, HEIGHT)
end

#runObject

#

run

#


73
74
75
76
77
78
79
80
81
82
83
84
85
86
# File 'lib/libui_paradise/examples/complex/033_daemonize_and_exit_after_delay_example.rb', line 73

def run
  super()
  abort_on_exception
  run_in_the_background
  Thread.new {
    add_these_widgets_to_the_main_window(
      text('Oki dokie1!'),
      text('Oki dokie2!')
    )
    # This part does not work yet, though:
    e 'Exiting now.'
    exit
  }.join
end