backup_paradise 1.2.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of backup_paradise might be problematic. Click here for more details.
- checksums.yaml +7 -0
- data/README.md +231 -0
- data/backup_paradise.gemspec +51 -0
- data/bin/backup_paradise +7 -0
- data/doc/README.gen +214 -0
- data/doc/TODO.md +221 -0
- data/lib/backup_paradise.rb +5 -0
- data/lib/backup_paradise/advanced_backup/advanced_backup.rb +53 -0
- data/lib/backup_paradise/advanced_backup/audio.rb +124 -0
- data/lib/backup_paradise/advanced_backup/constants.rb +34 -0
- data/lib/backup_paradise/advanced_backup/data_directory.rb +50 -0
- data/lib/backup_paradise/advanced_backup/do_perform_the_backup_tasks.rb +95 -0
- data/lib/backup_paradise/advanced_backup/initialize.rb +38 -0
- data/lib/backup_paradise/advanced_backup/menu.rb +280 -0
- data/lib/backup_paradise/advanced_backup/misc.rb +836 -0
- data/lib/backup_paradise/advanced_backup/reset.rb +56 -0
- data/lib/backup_paradise/advanced_backup/run.rb +26 -0
- data/lib/backup_paradise/advanced_backup/system_directory.rb +35 -0
- data/lib/backup_paradise/base/base.rb +440 -0
- data/lib/backup_paradise/base/colours.rb +123 -0
- data/lib/backup_paradise/base/constants.rb +16 -0
- data/lib/backup_paradise/constants/constants.rb +192 -0
- data/lib/backup_paradise/gui/gtk2/backup.rb +345 -0
- data/lib/backup_paradise/gui/gtk3/backup.rb +383 -0
- data/lib/backup_paradise/project/project_base_directory.rb +22 -0
- data/lib/backup_paradise/requires/require_the_backup_paradise_project.rb +14 -0
- data/lib/backup_paradise/tab/tab.rb +84 -0
- data/lib/backup_paradise/toplevel_methods/cliner.rb +16 -0
- data/lib/backup_paradise/toplevel_methods/colours.rb +80 -0
- data/lib/backup_paradise/toplevel_methods/e.rb +16 -0
- data/lib/backup_paradise/toplevel_methods/help.rb +88 -0
- data/lib/backup_paradise/toplevel_methods/misc.rb +343 -0
- data/lib/backup_paradise/toplevel_methods/mountpoint.rb +80 -0
- data/lib/backup_paradise/toplevel_methods/opnn.rb +21 -0
- data/lib/backup_paradise/version/version.rb +19 -0
- data/lib/backup_paradise/yaml/config.yml +22 -0
- metadata +178 -0
@@ -0,0 +1,383 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# === AdvancedBackup::GUI::Gtk::BackupWidget
|
6
|
+
# =========================================================================== #
|
7
|
+
# This is the base widget collection for the gtk3-backup functionality
|
8
|
+
# via a GUI.
|
9
|
+
# =========================================================================== #
|
10
|
+
# require 'backup_paradise/gui/gtk3/backup.rb'
|
11
|
+
# =========================================================================== #
|
12
|
+
begin
|
13
|
+
require 'colours'
|
14
|
+
rescue LoadError; end
|
15
|
+
require 'backup_paradise/advanced_backup/advanced_backup.rb'
|
16
|
+
require 'backup_paradise/base/base.rb'
|
17
|
+
begin
|
18
|
+
require 'gtk3'
|
19
|
+
rescue LoadError; end
|
20
|
+
|
21
|
+
begin
|
22
|
+
require 'gtk_paradise/gtk_classes/about.rb'
|
23
|
+
rescue LoadError; end
|
24
|
+
|
25
|
+
begin
|
26
|
+
require 'gtk_paradise/gtk_classes_menu_item.rb'
|
27
|
+
rescue LoadError; end
|
28
|
+
|
29
|
+
begin
|
30
|
+
require 'gtk_paradise/requires/require_the_base_module.rb'
|
31
|
+
rescue LoadError; end
|
32
|
+
|
33
|
+
module AdvancedBackup
|
34
|
+
|
35
|
+
module GUI
|
36
|
+
|
37
|
+
module Gtk
|
38
|
+
|
39
|
+
class BackupWidget < ::Gtk::Window # === AdvancedBackup::GUI::Gtk::BackupWidget
|
40
|
+
|
41
|
+
include Colours::E
|
42
|
+
include Gtk::BaseModule
|
43
|
+
|
44
|
+
# ========================================================================= #
|
45
|
+
# === WIDTH
|
46
|
+
# ========================================================================= #
|
47
|
+
WIDTH = 800
|
48
|
+
|
49
|
+
# ========================================================================= #
|
50
|
+
# === HEIGHT
|
51
|
+
# ========================================================================= #
|
52
|
+
HEIGHT = 600
|
53
|
+
|
54
|
+
# ========================================================================= #
|
55
|
+
# === USE_THIS_FONT_SIZE
|
56
|
+
# ========================================================================= #
|
57
|
+
USE_THIS_FONT_SIZE = '26'
|
58
|
+
|
59
|
+
# ========================================================================= #
|
60
|
+
# === initialize
|
61
|
+
# ========================================================================= #
|
62
|
+
def initialize
|
63
|
+
super()
|
64
|
+
reset
|
65
|
+
run
|
66
|
+
end
|
67
|
+
|
68
|
+
# ========================================================================= #
|
69
|
+
# === reset
|
70
|
+
# ========================================================================= #
|
71
|
+
def reset
|
72
|
+
@file_chooser_dialog = nil
|
73
|
+
determine_the_title_of_the_main_window
|
74
|
+
::Gtk::Settings.default.gtk_font_name = 'DejaVu Sans Mono '+USE_THIS_FONT_SIZE
|
75
|
+
::Gtk::Settings.default.gtk_tooltip_timeout = 2000
|
76
|
+
@advanced_rbackup = BackupParadise::AdvancedBackup.new(
|
77
|
+
nil, :do_not_run_yet
|
78
|
+
)
|
79
|
+
end
|
80
|
+
|
81
|
+
# ========================================================================= #
|
82
|
+
# === determine_the_title_of_the_main_window
|
83
|
+
# ========================================================================= #
|
84
|
+
def determine_the_title_of_the_main_window
|
85
|
+
@title_to_use = 'Backup Data'
|
86
|
+
set_title @title_to_use
|
87
|
+
end
|
88
|
+
|
89
|
+
# ========================================================================= #
|
90
|
+
# === add_components_for_individual_transfer_of_files_or_directories
|
91
|
+
#
|
92
|
+
# The widget that goes in here, onto the main vbox, will hold the relevant
|
93
|
+
# parts that can be used to do a per-file backup.
|
94
|
+
# ========================================================================= #
|
95
|
+
def add_components_for_individual_transfer_of_files_or_directories(
|
96
|
+
vbox
|
97
|
+
)
|
98
|
+
vbox.pack_start(gtk_label(
|
99
|
+
'Input the file that you wish to copy next:')
|
100
|
+
)
|
101
|
+
@entry_for_transfer_of_a_single_file = gtk_entry
|
102
|
+
vbox.pack_start(@entry_for_transfer_of_a_single_file)
|
103
|
+
@button_transfer_file = gtk_button(label: 'Transfer this ^^^ file')
|
104
|
+
@button_transfer_file.signal_connect(:clicked) {
|
105
|
+
do_transfer_a_single_file
|
106
|
+
}
|
107
|
+
vbox.pack_start(@button_transfer_file)
|
108
|
+
end
|
109
|
+
|
110
|
+
# ========================================================================= #
|
111
|
+
# === create_the_backup_button
|
112
|
+
# ========================================================================= #
|
113
|
+
def create_the_backup_button
|
114
|
+
@backup_button = gtk_button(
|
115
|
+
label: 'Backup the data'
|
116
|
+
)
|
117
|
+
@backup_button.signal_connect(:clicked) {
|
118
|
+
do_backup_the_data
|
119
|
+
}
|
120
|
+
@backup_button.set_border_width(4)
|
121
|
+
@backup_button.tooltip_text = 'Click this button to backup your data.'
|
122
|
+
end
|
123
|
+
|
124
|
+
# ========================================================================= #
|
125
|
+
# === do_backup_the_data
|
126
|
+
# ========================================================================= #
|
127
|
+
def do_backup_the_data
|
128
|
+
from = @backup_from_this_target.text
|
129
|
+
to = @backup_to_this_target.text
|
130
|
+
@label_showing_results.set_text(
|
131
|
+
'Command that will be run: '+"\n\n"+' cp -rv '+from+' '+to+"\n"
|
132
|
+
)
|
133
|
+
e 'Backing up the data next, from `'+sfile(from)+'` to `'+sfile(to)+'`.'
|
134
|
+
copy_from_to(from, to)
|
135
|
+
end
|
136
|
+
|
137
|
+
# ========================================================================= #
|
138
|
+
# === main_target?
|
139
|
+
#
|
140
|
+
# This method will "return" our main target.
|
141
|
+
# ========================================================================= #
|
142
|
+
def main_target?
|
143
|
+
@backup_to_this_target.text
|
144
|
+
end
|
145
|
+
|
146
|
+
# ========================================================================= #
|
147
|
+
# === copy_from_to
|
148
|
+
#
|
149
|
+
# This is the method that can be used for backing up the data.
|
150
|
+
# ========================================================================= #
|
151
|
+
def copy_from_to(from, to)
|
152
|
+
unless File.directory? from
|
153
|
+
e "#{sfile(from)} should be a directory."
|
154
|
+
end
|
155
|
+
begin
|
156
|
+
FileUtils.cp_r(from, to)
|
157
|
+
rescue Exception => error
|
158
|
+
pp error
|
159
|
+
end
|
160
|
+
end
|
161
|
+
|
162
|
+
# ========================================================================= #
|
163
|
+
# === create_user_interface
|
164
|
+
# ========================================================================= #
|
165
|
+
def create_user_interface
|
166
|
+
override_background_color(
|
167
|
+
:normal,
|
168
|
+
Gdk::RGBA.new(0.999, 0.999, 0.999, 1)
|
169
|
+
)
|
170
|
+
# ======================================================================= #
|
171
|
+
# First create the @menu_bar which will holds the individual menus.
|
172
|
+
# ======================================================================= #
|
173
|
+
@menu_bar = gtk_menu_bar # <- The menu-bar.
|
174
|
+
filemenu1 = gtk_menu
|
175
|
+
# ======================================================================= #
|
176
|
+
# Add the menu-item label called file.
|
177
|
+
# ======================================================================= #
|
178
|
+
filem1 = ::Gtk.menu_item_with_this_label('File')
|
179
|
+
filem1.set_submenu(filemenu1)
|
180
|
+
exit = ::Gtk.menu_item_with_this_label('Exit')
|
181
|
+
exit.signal_connect(:activate) { do_exit }
|
182
|
+
filemenu1.append(exit)
|
183
|
+
# ======================================================================= #
|
184
|
+
# Add it onto the main menu-bar:
|
185
|
+
# ======================================================================= #
|
186
|
+
@menu_bar.append(filem1)
|
187
|
+
|
188
|
+
filemenu2 = gtk_menu
|
189
|
+
# ======================================================================= #
|
190
|
+
# Add the menu-item label called file.
|
191
|
+
# ======================================================================= #
|
192
|
+
filem2 = ::Gtk.menu_item_with_this_label('Options')
|
193
|
+
filem2.set_submenu(filemenu2)
|
194
|
+
about = ::Gtk.menu_item_with_this_label('About')
|
195
|
+
about.signal_connect(:activate) {
|
196
|
+
::Gtk.return_about_dialog_widget
|
197
|
+
}
|
198
|
+
exit = ::Gtk.menu_item_with_this_label('Exit2')
|
199
|
+
exit.signal_connect(:activate) { do_exit }
|
200
|
+
filemenu2.append(about)
|
201
|
+
# ======================================================================= #
|
202
|
+
# Add it onto the main menu-bar:
|
203
|
+
# ======================================================================= #
|
204
|
+
@menu_bar.append(filem2)
|
205
|
+
|
206
|
+
# filemenu2 = ::Gtk::Menu.new
|
207
|
+
# options = ::Gtk.menu_item_with_this_label('Options')
|
208
|
+
# options.set_submenu(filemenu2)
|
209
|
+
# filemenu2.append(options)
|
210
|
+
#
|
211
|
+
# filemenu2.append(about)
|
212
|
+
# # ======================================================================= #
|
213
|
+
# # Add it onto the main menu-bar:
|
214
|
+
# # ======================================================================= #
|
215
|
+
# @menu_bar.append(filemenu2)
|
216
|
+
add_main_box
|
217
|
+
signal_connect(:destroy) { do_exit }
|
218
|
+
determine_the_default_size
|
219
|
+
set_window_position :center
|
220
|
+
# ======================================================================= #
|
221
|
+
# Next, run the main application.
|
222
|
+
# ======================================================================= #
|
223
|
+
end
|
224
|
+
|
225
|
+
# ========================================================================= #
|
226
|
+
# === run_the_application
|
227
|
+
# ========================================================================= #
|
228
|
+
def run_the_application
|
229
|
+
show_all
|
230
|
+
maximize
|
231
|
+
::Gtk.main
|
232
|
+
end
|
233
|
+
|
234
|
+
# ========================================================================= #
|
235
|
+
# === do_exit
|
236
|
+
# ========================================================================= #
|
237
|
+
def do_exit
|
238
|
+
::Gtk.main_quit
|
239
|
+
end; alias exit_application do_exit # === exit_application
|
240
|
+
|
241
|
+
# ========================================================================= #
|
242
|
+
# === add_the_default_accel_groups
|
243
|
+
# ========================================================================= #
|
244
|
+
def add_the_default_accel_groups
|
245
|
+
@accel_group = ::Gtk::AccelGroup.new
|
246
|
+
# ======================================================================= #
|
247
|
+
# ctrl+q
|
248
|
+
# ======================================================================= #
|
249
|
+
@accel_group.connect( Gdk::Keyval::KEY_Q, :control_mask,
|
250
|
+
:visible) { exit_application }
|
251
|
+
add_accel_group(@accel_group)
|
252
|
+
end
|
253
|
+
|
254
|
+
# ========================================================================= #
|
255
|
+
# === determine_the_default_size
|
256
|
+
# ========================================================================= #
|
257
|
+
def determine_the_default_size
|
258
|
+
set_default_size(WIDTH, HEIGHT)
|
259
|
+
end
|
260
|
+
|
261
|
+
# ========================================================================= #
|
262
|
+
# === copy_this_file
|
263
|
+
# ========================================================================= #
|
264
|
+
def copy_this_file(a, b)
|
265
|
+
::BackupParadise.copy_this_file(a, b)
|
266
|
+
end
|
267
|
+
|
268
|
+
# ========================================================================= #
|
269
|
+
# === do_transfer_a_single_file
|
270
|
+
# ========================================================================= #
|
271
|
+
def do_transfer_a_single_file
|
272
|
+
_ = @entry_for_transfer_of_a_single_file.text.to_s.strip
|
273
|
+
target = main_target?
|
274
|
+
if _.empty?
|
275
|
+
e 'Please supply a file to transfer.'
|
276
|
+
else
|
277
|
+
e "Now trying to copy #{_} to #{target}."
|
278
|
+
copy_this_file(_, target)
|
279
|
+
end
|
280
|
+
end
|
281
|
+
|
282
|
+
# ========================================================================= #
|
283
|
+
# === add_main_box
|
284
|
+
#
|
285
|
+
# This method will create a vbox that will be added.
|
286
|
+
# ========================================================================= #
|
287
|
+
def add_main_box
|
288
|
+
vbox = ::Gtk::Box.new(:vertical, 2)
|
289
|
+
vbox.pack_start(@menu_bar,
|
290
|
+
expand: false,
|
291
|
+
fill: false,
|
292
|
+
padding: 0
|
293
|
+
)
|
294
|
+
label_backup_from_source = gtk_label('Backup from (source):')
|
295
|
+
label_backup_from_source.set_markup(
|
296
|
+
%Q(<span weight="bold">#{label_backup_from_source.text}</span>)
|
297
|
+
)
|
298
|
+
vbox.pack_start(
|
299
|
+
label_backup_from_source, padding: 1
|
300
|
+
)
|
301
|
+
@backup_from_this_target = gtk_entry
|
302
|
+
@backup_from_this_target.set_text('C::\ingrid')
|
303
|
+
|
304
|
+
# ======================================================================= #
|
305
|
+
# Next add a hbox that will also hold a button for the choose-file
|
306
|
+
# dialog.
|
307
|
+
# ======================================================================= #
|
308
|
+
hbox = ::Gtk::Box.new(:horizontal, 2)
|
309
|
+
hbox.pack_start(@backup_from_this_target, expand: true, fill: true, padding: 1)
|
310
|
+
@button_choose_file = gtk_button(file: 'choose file')
|
311
|
+
@button_choose_file.signal_connect(:clicked) {
|
312
|
+
create_file_chooser_dialog_widget
|
313
|
+
run_file_chooser_dialog
|
314
|
+
}
|
315
|
+
hbox.pack_start(@button_choose_file, expand: false, fill: false, padding: 5)
|
316
|
+
vbox.pack_start(hbox, padding: 1)
|
317
|
+
label_backup_to_this_target = gtk_label('Backup to this device (target):')
|
318
|
+
label_backup_to_this_target.set_markup(
|
319
|
+
%Q(<span weight="bold">#{label_backup_to_this_target.text}</span>)
|
320
|
+
)
|
321
|
+
vbox.pack_start(
|
322
|
+
label_backup_to_this_target, padding: 1
|
323
|
+
)
|
324
|
+
@backup_to_this_target = gtk_entry
|
325
|
+
@backup_to_this_target.set_text('D::\ingrid')
|
326
|
+
vbox.pack_start(
|
327
|
+
@backup_to_this_target, padding: 1
|
328
|
+
)
|
329
|
+
create_the_backup_button
|
330
|
+
vbox.pack_start(@backup_button)
|
331
|
+
vbox.pack_start(::Gtk::Separator.new(:horizontal))
|
332
|
+
@label_showing_results = gtk_label
|
333
|
+
vbox.pack_start(@label_showing_results)
|
334
|
+
add_components_for_individual_transfer_of_files_or_directories(vbox)
|
335
|
+
add(vbox)
|
336
|
+
end
|
337
|
+
|
338
|
+
# ========================================================================= #
|
339
|
+
# === run_file_chooser_dialog
|
340
|
+
# ========================================================================= #
|
341
|
+
def run_file_chooser_dialog
|
342
|
+
_ = @file_chooser_dialog
|
343
|
+
if _ and (_.run == ::Gtk::ResponseType::ACCEPT)
|
344
|
+
filename = _.filename
|
345
|
+
e "filename = #{filename}"
|
346
|
+
e "uri = #{_.uri}"
|
347
|
+
end
|
348
|
+
end
|
349
|
+
|
350
|
+
# ========================================================================= #
|
351
|
+
# === create_file_chooser_dialog_widget
|
352
|
+
# ========================================================================= #
|
353
|
+
def create_file_chooser_dialog_widget
|
354
|
+
@file_chooser_dialog = ::Gtk::FileChooserDialog.new(
|
355
|
+
self: self,
|
356
|
+
title: 'Choose a file or directory',
|
357
|
+
action: ::Gtk::FileChooserAction::OPEN,
|
358
|
+
buttons: [[::Gtk::Stock::OPEN, ::Gtk::ResponseType::ACCEPT],
|
359
|
+
[::Gtk::Stock::CANCEL, ::Gtk::ResponseType::CANCEL]]
|
360
|
+
)
|
361
|
+
@file_chooser_dialog.add_shortcut_folder('/Depot/Temp/')
|
362
|
+
@file_chooser_dialog.add_shortcut_folder(HOME_DIRECTORY_OF_THE_USER_X+'DATA/')
|
363
|
+
@file_chooser_dialog.add_shortcut_folder('/Ingrid')
|
364
|
+
@file_chooser_dialog.current_folder = Dir.pwd
|
365
|
+
@file_chooser_dialog.show_hidden = true # <- Show hidden files.
|
366
|
+
#@file_chooser_dialog.destroy
|
367
|
+
end
|
368
|
+
|
369
|
+
# ========================================================================= #
|
370
|
+
# === run
|
371
|
+
# ========================================================================= #
|
372
|
+
def run
|
373
|
+
add_the_default_accel_groups
|
374
|
+
create_file_chooser_dialog_widget
|
375
|
+
create_user_interface
|
376
|
+
run_the_application
|
377
|
+
end
|
378
|
+
|
379
|
+
end; end; end; end
|
380
|
+
|
381
|
+
if __FILE__ == $PROGRAM_NAME
|
382
|
+
AdvancedBackup::GUI::Gtk::BackupWidget.new
|
383
|
+
end # gtkbackup
|
@@ -0,0 +1,22 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'backup_paradise/project/project_base_directory.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module BackupParadise
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === PROJECT_BASE_DIRECTORY
|
11
|
+
# ========================================================================= #
|
12
|
+
PROJECT_BASE_DIRECTORY =
|
13
|
+
File.absolute_path("#{__dir__}/..")+'/'
|
14
|
+
|
15
|
+
# ========================================================================= #
|
16
|
+
# === BackupParadise.project_base_dir?
|
17
|
+
# ========================================================================= #
|
18
|
+
def self.project_base_dir?
|
19
|
+
BackupParadise::PROJECT_BASE_DIRECTORY
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# When you wish to require the whole project, this is the file to go for.
|
6
|
+
# =========================================================================== #
|
7
|
+
# require 'backup_paradise/requires/require_the_backup_paradise_project.rb'
|
8
|
+
# =========================================================================== #
|
9
|
+
require 'backup_paradise/project/project_base_directory.rb'
|
10
|
+
require 'backup_paradise/toplevel_methods/e.rb'
|
11
|
+
require 'backup_paradise/toplevel_methods/mountpoint.rb'
|
12
|
+
require 'backup_paradise/toplevel_methods/misc.rb'
|
13
|
+
require 'backup_paradise/advanced_backup/advanced_backup.rb'
|
14
|
+
require 'backup_paradise/tab/tab.rb'
|
@@ -0,0 +1,84 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# === BackupParadise::Tab
|
6
|
+
#
|
7
|
+
# This file handles tab-related activities, most normally renaming a tab.
|
8
|
+
# Right now we have only some support for KDE tabs and mrxvt tabs.
|
9
|
+
# =========================================================================== #
|
10
|
+
# require 'backup_paradise/tab/tab.rb'
|
11
|
+
# =========================================================================== #
|
12
|
+
module BackupParadise
|
13
|
+
|
14
|
+
module Tab # === BackupParadise::Tab
|
15
|
+
|
16
|
+
begin
|
17
|
+
require 'roebe/classes/mrxvt_options.rb'
|
18
|
+
rescue LoadError; end
|
19
|
+
|
20
|
+
# ========================================================================= #
|
21
|
+
# === BackupParadise::Tab.rename_tab
|
22
|
+
#
|
23
|
+
# This method does some additional checks before invoking the method
|
24
|
+
# set_mrxvt_tab_title. set_konsole_tab_title() may work, if the
|
25
|
+
# user at hand has the roebe gem installed (aka, on my home system).
|
26
|
+
# ========================================================================= #
|
27
|
+
def self.rename_tab(
|
28
|
+
i = :mrxvt,
|
29
|
+
optional_title = 'Backup', # <- This is the new title.
|
30
|
+
use_this_program_to_rename_tabs = :mrxvt
|
31
|
+
)
|
32
|
+
case i.to_sym # case tag
|
33
|
+
# ======================================================================= #
|
34
|
+
# === :konsole
|
35
|
+
# ======================================================================= #
|
36
|
+
when :konsole,
|
37
|
+
:default
|
38
|
+
set_konsole_tab_title(optional_title)
|
39
|
+
# ======================================================================= #
|
40
|
+
# === :mrxvt
|
41
|
+
# ======================================================================= #
|
42
|
+
when :mrxvt
|
43
|
+
set_mrxvt_tab_title(optional_title) # Defined in this module here.
|
44
|
+
# ======================================================================= #
|
45
|
+
# === :blank
|
46
|
+
#
|
47
|
+
# This entry point re-sets the title of the terminal tab again to
|
48
|
+
# empty.
|
49
|
+
# ======================================================================= #
|
50
|
+
when :blank
|
51
|
+
case use_this_program_to_rename_tabs
|
52
|
+
when :konsole
|
53
|
+
set_konsole_tab_title(optional_title)
|
54
|
+
when :mrxvt
|
55
|
+
set_mrxvt_tab_title(optional_title)
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
# ========================================================================= #
|
61
|
+
# === BackupParadise::Tab.set_mrxvt_tab_title
|
62
|
+
# ========================================================================= #
|
63
|
+
def self.set_mrxvt_tab_title(i)
|
64
|
+
if Object.const_defined? :Roebe
|
65
|
+
begin
|
66
|
+
require 'roebe/classes/mrxvt_options.rb'
|
67
|
+
rescue LoadError; end
|
68
|
+
Roebe::MrxvtOptions.set_title(i)
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
# ========================================================================= #
|
73
|
+
# === BackupParadise::Tab.set_konsole_tab_title
|
74
|
+
# ========================================================================= #
|
75
|
+
def self.set_konsole_tab_title(i)
|
76
|
+
if Object.const_defined? :Roebe
|
77
|
+
begin
|
78
|
+
require 'roebe/classes/kde/kde_konsole.rb'
|
79
|
+
rescue LoadError; end
|
80
|
+
Roebe.rename_konsole_title_to(i, :be_quiet)
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
end; end
|