Class: CopyDlg

Inherits:
Object show all
Defined in:
lib/unixcmd/copydlg.rb

Constant Summary collapse

FILES_FEW =
3

Instance Method Summary collapse

Constructor Details

#initialize(files, dest) ⇒ CopyDlg

Returns a new instance of CopyDlg.



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/unixcmd/copydlg.rb', line 16

def initialize files, dest
  @builder = Gtk::Builder.new
  @builder.add_from_file (Pathname.new(UnixCmdGem.bin_dir) + '../data/forms/copydlg.glade').to_s
  @dlg = @builder.get_object 'CopyDlg'
  @srcline = @builder.get_object 'SrcLine'
  @srclist = @builder.get_object 'SrcList'
  @dstline = @builder.get_object 'DstLine'
  @dstentry = @builder.get_object 'DstEntry'

  @singlesrc = files.count == 1
  @fewsrc = files.count <= FILES_FEW

  unless @singlesrc == true
    @dstline.text = dest
  else
    @dstentry.text = dest
  end

  unless @fewsrc == true
    @srcline.hide
    @srclist.show

    files.each do |file|
      row = @srclist.model.append
      row[0] = file
    end
  else
    @srcline.text = files.join ' '
  end

  @flags = {
    :recursive => @builder.get_object('RecursiveFlag'),
    :archive => @builder.get_object('ArchiveFlag'),
    :verbose => @builder.get_object('VerboseFlag'),
  }
end

Instance Method Details

#archive?Boolean

Returns:

  • (Boolean)


65
66
67
# File 'lib/unixcmd/copydlg.rb', line 65

def archive?
  @flags[:archive].active?
end

#destObject



73
74
75
# File 'lib/unixcmd/copydlg.rb', line 73

def dest
  @singlesrc == true ? @dstentry.text : @dstline.text
end

#destroyObject



57
58
59
# File 'lib/unixcmd/copydlg.rb', line 57

def destroy
  @dlg.destroy
end

#recursive?Boolean

Returns:

  • (Boolean)


61
62
63
# File 'lib/unixcmd/copydlg.rb', line 61

def recursive?
  @flags[:recursive].active?
end

#runObject



53
54
55
# File 'lib/unixcmd/copydlg.rb', line 53

def run
  @dlg.run
end

#verbose?Boolean

Returns:

  • (Boolean)


69
70
71
# File 'lib/unixcmd/copydlg.rb', line 69

def verbose?
  @flags[:verbose].active?
end