Module: MultimediaParadise::GUI::Gtk::MultimediaNotebookModule

Includes:
Gtk::BaseModule
Included in:
MultimediaNotebook
Defined in:
lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb

Constant Summary collapse

NAMESPACE =
#

NAMESPACE

#
inspect
TITLE =
#

TITLE

#
'Notebook for Multimedia Applications'
WIDTH =
#

WIDTH

#
'90%'
HEIGHT =
#

HEIGHT

#
500

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.run(i = ARGV) ⇒ Object

#

GtkParadise::GUI::Gtk::FoobarModule.run

#


160
161
162
163
164
165
166
167
168
169
# File 'lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb', line 160

def self.run(
    i = ARGV
  )
  require 'gtk_paradise/run'
  _ = ::MultimediaParadise::GUI::Gtk::MultimediaNotebook.new(i)
  r = ::Gtk.run
  r << _
  r.set_size_request(_.width?, _.height?)
  r.top_left_then_run
end

Instance Method Details

#border_size?Boolean

#

border_size?

#

Returns:

  • (Boolean)


89
90
91
# File 'lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb', line 89

def border_size?
  2
end

#connect_skeletonObject

#

connect_skeleton (connect tag)

#


110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb', line 110

def connect_skeleton
  Thread.abort_on_exception = true
  require 'multimedia_paradise/gui/gtk3/id_renamer/id_renamer.rb'
  require 'multimedia_paradise/gui/gtk3/lyrics/lyrics.rb'
  require 'multimedia_paradise/gui/gtk3/multimedia_converter/multimedia_converter.rb'
  require 'multimedia_paradise/gui/gtk3/play_from_radio_station/play_from_radio_station.rb'
  require 'multimedia_paradise/gui/gtk3/playlist/playlist.rb'
  require 'multimedia_paradise/gui/gtk3/play_video_from_my_collection/play_video_from_my_collection.rb'
  require 'multimedia_paradise/gui/gtk3/simple_play_widget/simple_play_widget.rb'
  # The next one has not yet been ported.
  # require 'multimedia_paradise/gui/gtk3/video_collection/video_collection.rb'
  require 'multimedia_paradise/gui/gtk3/widget_increase_or_decrease_audio/widget_increase_or_decrease_audio.rb'
  require 'multimedia_paradise/gui/gtk3/youtube_downloader/youtube_downloader.rb'
  # ======================================================================= #
  # The Hash is currently hardcoded. While it could easily be made a 
  # dynamic query, and the Hash removed altogether, for the time being I 
  # think this approach is simpler and faster, even if not as 
  # sophisticated.
  # ======================================================================= #
  @hash = {
    'MultimediaParadise::GUI::Gtk::IdRenamer' => 'ID Renamer',
    'MultimediaParadise::GUI::Gtk::Lyrics' => 'Lyrics',
    'MultimediaParadise::GUI::Gtk::MultimediaConverter' => 'Multimedia Converter',
    'MultimediaParadise::GUI::Gtk::PlayFromRadioStation' => 'Play from Radio Station',
    'MultimediaParadise::GUI::Gtk::Playlist' => 'Playlist',
    'MultimediaParadise::GUI::Gtk::PlayVideoFromMyCollection' => 'Play Video from my Collection',
    'MultimediaParadise::GUI::Gtk::SimplePlayWidget' => 'Simple Play Widget',
    #'MultimediaParadise::GUI::Gtk::VideoCollection' => 'Video Collection',
    'MultimediaParadise::GUI::Gtk::WidgetIncreaseOrDecreaseAudio' => 'Widget Increase or Decrease Audio',
    'MultimediaParadise::GUI::Gtk::YoutubeDownloader' => 'Youtube Downloader'
  }
  @hash.each_pair {|name_of_the_widget, title_that_is_to_be_used_for_the_tab|
    @notebook.append_this_widget(
      eval(name_of_the_widget).new,
      title_that_is_to_be_used_for_the_tab
    )
  }
  add(@notebook)
end

#create_main_notebookObject

#

create_main_notebook

#


103
104
105
# File 'lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb', line 103

def create_main_notebook
  @notebook = gtk_notebook(:useful_default)
end

#create_skeletonObject

#

create_skeleton

#


96
97
98
# File 'lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb', line 96

def create_skeleton
  create_main_notebook
end

#initialize(optional_file = nil, run_already = true) ⇒ Object

#

initialize

#


44
45
46
47
48
49
50
51
# File 'lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb', line 44

def initialize(
    optional_file = nil,
    run_already   = true
  )
  super(:vertical)
  reset
  run if run_already
end

#padding?Boolean

#

padding?

#

Returns:

  • (Boolean)


82
83
84
# File 'lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb', line 82

def padding?
  2
end

#resetObject

#

reset (reset tag)

#


56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb', line 56

def reset
  reset_the_internal_variables
  # ======================================================================= #
  # === @configuration
  # ======================================================================= #
  @configuration = [true, __dir__, NAMESPACE]
  # ======================================================================= #
  # === @title
  # ======================================================================= #
  @title  = TITLE
  # ======================================================================= #
  # === @width
  # ======================================================================= #
  set_width(WIDTH)
  # ======================================================================= #
  # === @height
  # ======================================================================= #
  set_height(HEIGHT)
  set_use_this_font(:dejavu_condensed_22)
  append_project_css_file
  infer_the_size_automatically
end

#runObject

#

run (run tag)

#


153
154
155
# File 'lib/multimedia_paradise/gui/shared_code/multimedia_notebook/multimedia_notebook_module.rb', line 153

def run
  create_skeleton_then_connect_skeleton
end