class RBT::GUI::UniversalWidgets::InstalledPrograms
Constants
- FEEDBACK_EXTENDED_INFORMATION
#¶ ↑
FEEDBACK_EXTENDED_INFORMATION
¶ ↑#¶ ↑
- HEIGHT
#¶ ↑
HEIGHT
¶ ↑#¶ ↑
- LARGER_FONT
#¶ ↑
LARGER_FONT
¶ ↑#¶ ↑
- SMALLER_FONT
#¶ ↑
SMALLER_FONT
¶ ↑#¶ ↑
- TITLE
#¶ ↑
TITLE
¶ ↑#¶ ↑
- USE_DATABASE
#¶ ↑
USE_DATABASE
¶ ↑#¶ ↑
- USE_THESE_CSS_RULES
#¶ ↑
USE_THESE_CSS_RULES
¶ ↑#¶ ↑
- USE_THIS_FONT
#¶ ↑
USE_THIS_FONT
¶ ↑#¶ ↑
- USE_THIS_MONOSPACED_FONT
#¶ ↑
USE_THIS_MONOSPACED_FONT
¶ ↑#¶ ↑
- WIDTH
#¶ ↑
WIDTH
¶ ↑#¶ ↑
Public Class Methods
[](i = ARGV)
click to toggle source
new( commandline_arguments = ARGV, run_already = true )
click to toggle source
#¶ ↑
initialize¶ ↑
#¶ ↑
Calls superclass method
RBT::LeanPrototype::new
# File lib/rbt/gui/universal_widgets/installed_programs/installed_programs.rb, line 94 def initialize( commandline_arguments = ARGV, run_already = true ) super(:vertical) if use_gtk3? determine_the_GUI_to_be_used(commandline_arguments) # This must come first, even before reset(). reset set_commandline_arguments( commandline_arguments ) on_delete_event_quit_the_application run if run_already end
run( i = ARGV )
click to toggle source
#¶ ↑
RBT::GUI::Gtk::InstalledPrograms.run¶ ↑
#¶ ↑
# File lib/rbt/gui/universal_widgets/installed_programs/installed_programs.rb, line 393 def self.run( i = ARGV ) require 'gtk_paradise/run' _ = ::RBT::GUI::Gtk::InstalledPrograms.new(i) r = ::Gtk.run _.set_parent_widget(r) # Must come before we enable the key-combinations. r << _ r.automatic_size_then_automatic_title r.enable_quick_exit r.set_background :white r.is_resizable # <- This line was added due to a possible prior .maximize action. r.top_left_then_run end
Public Instance Methods
border_size?()
click to toggle source
connect_the_skeleton()
click to toggle source
#¶ ↑
connect_the_skeleton
(connect tag)¶ ↑
#¶ ↑
# File lib/rbt/gui/universal_widgets/installed_programs/installed_programs.rb, line 338 def connect_the_skeleton abort_on_exception outer_vbox = create_vbox # A new vbox. mini_hbox = create_hbox mini_hbox.minimal(@button_update, 4) @v_box.add(@tree_view).add(mini_hbox) @scrolled_window.add_with_viewport(@v_box) outer_vbox.add(@scrolled_window) window = create_window_or_runner window << outer_vbox properly_prepare_this_window(window, { title: title?, font: font?, width: width?, height: height?, padding: padding?, border_size: border_size? } ) window.show_all window.top_left do_all_startup_related_actions run_main end
create_the_liststore()
click to toggle source
create_the_scrolled_window()
click to toggle source
#¶ ↑
create_the_scrolled_window
¶ ↑
#¶ ↑
# File lib/rbt/gui/universal_widgets/installed_programs/installed_programs.rb, line 210 def create_the_scrolled_window @scrolled_window = create_scrolled_window @scrolled_window.shadow_in @scrolled_window.policy = [:never, :automatic] @scrolled_window.set_size_request(800, 600) end
create_the_skeleton()
click to toggle source
create_the_treeview()
click to toggle source
#¶ ↑
create_the_treeview
¶ ↑
#¶ ↑
# File lib/rbt/gui/universal_widgets/installed_programs/installed_programs.rb, line 273 def create_the_treeview @tree_view = create_tree_view(@list_store) @tree_view.do_use_clickable_headers @tree_view.use_these_headers('Program Name', 'Program Version') @tree_view.enable_drag_and_drop @tree_view.on_button_press_event { |widget, event| if event.event_type == Gdk::EventType::BUTTON2_PRESS and event.button == 1 # event.event_type.name elsif event.event_type == :button_press # left click here. # =================================================================== # # If the user clicks on the left name, we will feedback # extended information, if a top-constant was set to true. # =================================================================== # if feedback_extended_information? if @tree_view and @tree_view.selection and @tree_view.selection.selected program_name = @tree_view.selection.selected[0] return_dataset(program_name).report end end end } end
create_the_vbox()
click to toggle source
favicon?()
click to toggle source
feedback_extended_information?()
click to toggle source
handle_CSS_rules()
click to toggle source
padding?()
click to toggle source
reset()
click to toggle source
#¶ ↑
reset (reset tag)¶ ↑
#¶ ↑
Calls superclass method
RBT::LeanPrototype#reset
# File lib/rbt/gui/universal_widgets/installed_programs/installed_programs.rb, line 111 def reset super() if respond_to?(:super) reset_the_shared_module # This can come early. reset_the_base_module reset_the_internal_variables infer_the_namespace # ======================================================================= # # === @configuration # ======================================================================= # @configuration = [true, __dir__, namespace?] # ======================================================================= # # === Set the title, width, height and the font in use. # ======================================================================= # title_width_height_font(TITLE, WIDTH, HEIGHT, USE_THIS_FONT) if use_gtk3? handle_CSS_rules end infer_the_size_automatically # ======================================================================= # # === @use_database # ======================================================================= # @use_database = USE_DATABASE # ======================================================================= # # === @array_lsmod_result # ======================================================================= # @array_lsmod_result = [] # ======================================================================= # # === @renderer # ======================================================================= # @renderer = cell_renderer_text @renderer.editable = true end
return_dataset(i)
click to toggle source
run()
click to toggle source
#¶ ↑
run (run tag)¶ ↑
#¶ ↑
# File lib/rbt/gui/universal_widgets/installed_programs/installed_programs.rb, line 309 def run run_super end
Also aliased as: start_gui_application
sanitize_data()
click to toggle source
#¶ ↑
sanitize_data
¶ ↑
#¶ ↑
# File lib/rbt/gui/universal_widgets/installed_programs/installed_programs.rb, line 186 def sanitize_data _ = '' if @use_database x = StdDatabases.new x.set_handle x.sqlite3_select_all _ = x.sqlite3_return_all_programs else # else we use RBT. _ = RBT.available_programs? _.map! {|entry| version = RBT.swift_return_version_of(entry) # sanitize_cookbook_dataset.version? # =================================================================== # # Store the name and the version. # =================================================================== # [entry, version] } # We must add the versions in this case though. end return _ end
smaller_font?()
click to toggle source
update_listing()
click to toggle source
update_the_liststore()
click to toggle source
#¶ ↑
update_the_liststore
¶ ↑
#¶ ↑
# File lib/rbt/gui/universal_widgets/installed_programs/installed_programs.rb, line 228 def update_the_liststore dataset = sanitize_data array = [] # ======================================================================= # # The dataset can be a String or an Array. If it is a String, we must # convert it into an Array first. # ======================================================================= # _ = dataset if _.is_a? String _ = dataset.split(N) _.each { |entry| # =================================================================== # # We split on ' →' Strings. # =================================================================== # array << [ entry.split(' →')[0].downcase.to_s, entry.split(' →')[1].to_s ] } _ = array end _.sort.each { |entry| iter = @list_store.append iter.set_value(0, entry[0] ) iter.set_value(1, entry[1] ) } end