class MultimediaParadise::GUI::Libui::SimplePlayWidget

Constants

EMOJI_PLAY
#

EMOJI_PLAY

#
TITLE
#

TITLE

#
WIDTH
#

WIDTH

#

Public Class Methods

new() click to toggle source
#

initialize

#
# File lib/multimedia_paradise/gui/libui/simple_play_widget/simple_play_widget.rb, line 46
def initialize
  reset
  create_skeleton
  @main_window = ui_main_window(
    TITLE, WIDTH, 250, 0
  )
  outer_vbox = ui_vbox
  outer_vbox.is_padded

  middle_vbox = ui_vbox
  middle_vbox.is_padded
  # ======================================================================= #
  # Add the various buttons next:
  # ======================================================================= #
  populate_the_dataset_with_this_array.each_with_index {|entry, index| index += 1
    hbox = ui_hbox
    hbox.add(
      ui_text(index.to_s), 0
    )
    button = button(
      EMOJI_PLAY+' '+
      File.basename(entry)
    )
    button.on_clicked {
      do_play_this_audio_file(entry)
    }
    hbox.add(button)
    middle_vbox.add(hbox, 0)
   }
  # scrolled_window = ui_scrolled_window(middle_vbox)
  # outer_vbox.add(scrolled_window)
  outer_vbox.add(middle_vbox)
  @main_window.child = outer_vbox
  @main_window.intelligent_exit
end

Public Instance Methods

create_skeleton() click to toggle source
#

create_skeleton

#
# File lib/multimedia_paradise/gui/libui/simple_play_widget/simple_play_widget.rb, line 112
def create_skeleton
end
do_play_this_audio_file(this_song)
play_this_song_via_mpv(this_song) click to toggle source
#

play_this_song_via_mpv

#
# File lib/multimedia_paradise/gui/libui/simple_play_widget/simple_play_widget.rb, line 99
def play_this_song_via_mpv(this_song)
  e
  e "Next playing #{::Colours.steelblue(this_song)} via mpv."
  e
  @array_threads << Thread.new {
    pid = Process.spawn("mpv #{this_song}")
    @array_pids << pid
  }
end
Also aliased as: do_play_this_audio_file
reset() click to toggle source
#

reset (reset tag)

#
# File lib/multimedia_paradise/gui/libui/simple_play_widget/simple_play_widget.rb, line 85
def reset
  # ======================================================================= #
  # === @array_threads
  # ======================================================================= #
  @array_threads = []
  # ======================================================================= #
  # === @array_pids
  # ======================================================================= #
  @array_pids = []
end