module MultimediaParadise::GUI::Gtk::WidgetIncreaseOrDecreaseAudioModule
Constants
- HEIGHT
#¶ ↑
HEIGHT
¶ ↑#¶ ↑
- NAMESPACE
#¶ ↑
NAMESPACE
¶ ↑#¶ ↑
- REGEX_TO_USE_FOR_THE_CURRENT_VOLUME_PERCENTAGE_VALUE
#¶ ↑
REGEX_TO_USE_FOR_THE_CURRENT_VOLUME_PERCENTAGE_VALUE
¶ ↑See: rubular.com/r/GVsqtxs4eoMgtH
#¶ ↑
- USE_THIS_FONT
#¶ ↑
USE_THIS_FONT
¶ ↑#¶ ↑
- WIDTH
#¶ ↑
WIDTH
¶ ↑#¶ ↑
Public Class Methods
[](i = '')
click to toggle source
new( commandline_arguments = nil, run_already = true )
click to toggle source
#¶ ↑
initialize¶ ↑
#¶ ↑
Calls superclass method
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 50 def initialize( commandline_arguments = nil, run_already = true ) super(:horizontal) reset set_commandline_arguments( commandline_arguments ) run if run_already end
run()
click to toggle source
#¶ ↑
MultimediaParadise::GUI::Gtk::WidgetIncreaseOrDecreaseAudio.run
¶ ↑
#¶ ↑
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 285 def self.run require 'gtk_paradise/run' _ = MultimediaParadise::GUI::Gtk::WidgetIncreaseOrDecreaseAudio.new(ARGV) r = ::Gtk.run r << _ r.set_size_request(_.width?, _.height?) r.top_left_then_run end
Public Instance Methods
connect_skeleton()
click to toggle source
#¶ ↑
connect_skeleton
¶ ↑
#¶ ↑
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 127 def connect_skeleton # ======================================================================= # # Pack these two buttons into a horizontal-hbox next: # ======================================================================= # # middle_pane = gtk_draggable_vpane vbox_left = gtk_vbox # ======================================================================= # # === eventbox_image_audio_volume_high # ======================================================================= # eventbox_image_audio_volume_high = gtk_eventbox(image_audio_volume_high) eventbox_image_audio_volume_high.clear_background eventbox_image_audio_volume_high.css_class('fancy_button') eventbox_image_audio_volume_high.on_clicked { increase_audio_by_n_percent } vbox_left.minimal(eventbox_image_audio_volume_high) vbox_left.minimal(@array_buttons[0]) # middle_pane.add(hbox_left) vbox_right = gtk_vbox # ======================================================================= # # === eventbox_image_audio_volume_low # ======================================================================= # eventbox_image_audio_volume_low = gtk_eventbox(image_audio_volume_low) eventbox_image_audio_volume_low.clear_background eventbox_image_audio_volume_low.css_class('fancy_button') eventbox_image_audio_volume_low.on_clicked { decrease_audio_by_n_percent } vbox_right.minimal(eventbox_image_audio_volume_low) vbox_right.minimal(@array_buttons[1]) # middle_pane.add(hbox_right) # middle_pane.position = return_inferred_position grid = default_grid grid.left(vbox_left) grid.middle(vbox_right) alignment = gtk_alignment(0.5, 1.0, 1, 1) alignment.add(@volume_percentage_label) grid.middle(alignment) minimal(grid, 2) determine_the_current_volume_percentage_value end
create_skeleton()
click to toggle source
create_volume_percentage_label()
click to toggle source
#¶ ↑
create_volume_percentage_label
¶ ↑
#¶ ↑
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 228 def create_volume_percentage_label # ======================================================================= # # === @volume_percentage_label # ======================================================================= # @volume_percentage_label = gtk_label @volume_percentage_label.justify = ::Gtk::Justification::CENTER end
decrease_audio_by_n_percent()
click to toggle source
#¶ ↑
decrease_audio_by_n_percent
¶ ↑
#¶ ↑
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 270 def decrease_audio_by_n_percent system return_cmd_to_run_for_the_audio_decrease determine_the_current_volume_percentage_value end
determine_the_current_volume_percentage_value()
click to toggle source
#¶ ↑
determine_the_current_volume_percentage_value
¶ ↑
#¶ ↑
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 239 def determine_the_current_volume_percentage_value result = `amixer sget Master` if result.include? "\n" result = result.split("\n").last.strip end # ======================================================================= # # result may look like this now: # # Mono: Playback 56 [88%] [-8.00dB] [on] # # ======================================================================= # percentage_value = result.scan( REGEX_TO_USE_FOR_THE_CURRENT_VOLUME_PERCENTAGE_VALUE ).flatten.first @volume_percentage_label.set_text( percentage_value.to_s. rjust(5, ' ') ) end
handle_CSS_rules()
click to toggle source
#¶ ↑
handle_CSS_rules
(CSS tag)¶ ↑
#¶ ↑
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 86 def handle_CSS_rules use_the_gtk_paradise_css_file more_CSS_then_apply_it ' #BG_paleturquoise_and_black { color: black; background: paleturquoise; } .fancy_button:hover { transition: 2000ms linear; background-color: tomato; } ' end
increase_audio_by_n_percent()
click to toggle source
#¶ ↑
increase_audio_by_n_percent
¶ ↑
#¶ ↑
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 262 def increase_audio_by_n_percent system return_cmd_to_run_for_the_audio_increase determine_the_current_volume_percentage_value end
n_percent_changes?()
click to toggle source
#¶ ↑
n_percent_changes?¶ ↑
#¶ ↑
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 106 def n_percent_changes? @n_percent_changes end
Also aliased as: n_percent?
reset()
click to toggle source
#¶ ↑
reset (reset tag)¶ ↑
#¶ ↑
# File lib/multimedia_paradise/gui/shared_code/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio_module.rb, line 65 def reset reset_the_internal_variables # ======================================================================= # # === @configuration # ======================================================================= # @configuration = [true, __dir__, NAMESPACE] width_height_font(WIDTH, HEIGHT, USE_THIS_FONT) # ======================================================================= # # === @n_percent_changes # # This variable denotes how many steps we may take "up" or "down" when # changing the audio-volume. # ======================================================================= # @n_percent_changes = 3 handle_CSS_rules infer_the_size_automatically end
return_cmd_to_run_for_the_audio_decrease()
click to toggle source
return_cmd_to_run_for_the_audio_increase()
click to toggle source
return_inferred_position( use_this_offset = 200 )
click to toggle source