Class: Yast::StorageSettingsClass

Inherits:
Module
  • Object
show all
Defined in:
../../src/modules/StorageSettings.rb

Instance Method Summary (collapse)

Instance Method Details

- (Object) DisplayName(data)



83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# File '../../src/modules/StorageSettings.rb', line 83

def DisplayName(data)
  data = deep_copy(data)
  ret = ""

  case GetDisplayName()
    when :path
      ret = Ops.get_string(data, "udev_path", "")
    when :id
      ret = Ops.get_string(data, ["udev_id", 0], "")
  end

  ret = Ops.get_string(data, "name", "") if Builtins.isempty(ret)

  ret
end

- (Object) FilterOverview(fields)



146
147
148
149
150
151
# File '../../src/modules/StorageSettings.rb', line 146

def FilterOverview(fields)
  fields = deep_copy(fields)
  hidden = GetHiddenFields()

  Builtins.filter(fields) { |field| !Builtins.setcontains(hidden, field) }
end

- (Object) FilterTable(fields)



126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# File '../../src/modules/StorageSettings.rb', line 126

def FilterTable(fields)
  fields = deep_copy(fields)
  hidden = GetHiddenFields()

  if GetDisplayName() != :path
    hidden = Builtins::Multiset.union(hidden, [:udev_path])
  else
    hidden = Builtins::Multiset.difference(hidden, [:udev_path])
  end

  if GetDisplayName() != :id
    hidden = Builtins::Multiset.union(hidden, [:udev_id])
  else
    hidden = Builtins::Multiset.difference(hidden, [:udev_id])
  end

  Builtins.filter(fields) { |field| !Builtins.setcontains(hidden, field) }
end

- (Object) GetDisplayName



67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# File '../../src/modules/StorageSettings.rb', line 67

def GetDisplayName
  if @display_name == nil
    tmp = Convert.to_string(
      SCR.Read(path(".sysconfig.storage.DISPLAY_NAME"))
    )
    if tmp == nil ||
        !Builtins.contains(["device", "id", "path"], Builtins.tolower(tmp))
      tmp = "device"
    end

    @display_name = Builtins.tosymbol(Builtins.tolower(tmp))
  end

  @display_name
end

- (Object) GetHiddenFields



108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File '../../src/modules/StorageSettings.rb', line 108

def GetHiddenFields
  if @hidden_fields == nil
    tmp = Convert.to_string(
      SCR.Read(path(".sysconfig.storage.HIDDEN_FIELDS"))
    )
    tmp = "" if tmp == nil

    @hidden_fields = Builtins.toset(
      Builtins.maplist(Builtins.splitstring(tmp, " \t")) do |field|
        Builtins.tosymbol(Builtins.tolower(field))
      end
    )
  end

  deep_copy(@hidden_fields)
end

- (Object) GetModified



50
51
52
# File '../../src/modules/StorageSettings.rb', line 50

def GetModified
  @modified
end

- (Object) InvertVisibleFields(all_fields, selected)



153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
# File '../../src/modules/StorageSettings.rb', line 153

def InvertVisibleFields(all_fields, selected)
  all_fields = deep_copy(all_fields)
  selected = deep_copy(selected)
  Builtins.foreach(Integer.Range(Builtins.size(all_fields))) do |i|
    fields = Ops.get_list(all_fields, [i, :fields], [])
    label = Ops.get_string(all_fields, [i, :label], "")
    if Builtins.contains(selected, i)
      @hidden_fields = Builtins::Multiset.difference(@hidden_fields, fields)
      @visible_fields = Builtins::Multiset.union(@visible_fields, [label])
    else
      @hidden_fields = Builtins::Multiset.union(@hidden_fields, fields)
      @visible_fields = Builtins::Multiset.difference(
        @visible_fields,
        [label]
      )
    end
  end

  nil
end

- (Object) main



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File '../../src/modules/StorageSettings.rb', line 30

def main


  textdomain "storage"


  Yast.import "Storage"
  Yast.import "Partitions"
  Yast.import "Integer"
  Yast.import "HTML"


  @display_name = nil

  @hidden_fields = nil
  @visible_fields = []

  @modified = false
end

- (Object) Save



188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
# File '../../src/modules/StorageSettings.rb', line 188

def Save
  if @display_name != nil
    tmp = @display_name.id2name
    SCR.Write(path(".sysconfig.storage.DISPLAY_NAME"), tmp)
  end

  if @hidden_fields != nil
    tmp = (@hidden_fields.map { |field| field.id2name }).join(" ")
    SCR.Write(path(".sysconfig.storage.HIDDEN_FIELDS"), tmp)
  end

  if true
    tmp = Storage.GetDefaultMountBy().id2name
    SCR.Write(path(".sysconfig.storage.DEVICE_NAMES"), tmp)
  end

  if true
    tmp = Partitions.DefaultFs().id2name
    SCR.Write(path(".sysconfig.storage.DEFAULT_FS"), tmp)
  end

  if true
    tmp = Storage.GetPartitionAlignment().id2name[6..-1]
    SCR.Write(path(".sysconfig.storage.PARTITION_ALIGN"), tmp)
  end
end

- (Object) SetDisplayName(new_display_name)



61
62
63
64
65
# File '../../src/modules/StorageSettings.rb', line 61

def SetDisplayName(new_display_name)
  @display_name = new_display_name

  nil
end

- (Object) SetHiddenFields(new_hidden_fields)



100
101
102
103
104
105
# File '../../src/modules/StorageSettings.rb', line 100

def SetHiddenFields(new_hidden_fields)
  new_hidden_fields = deep_copy(new_hidden_fields)
  @hidden_fields = Builtins.toset(new_hidden_fields)

  nil
end

- (Object) SetModified



54
55
56
57
58
# File '../../src/modules/StorageSettings.rb', line 54

def SetModified
  @modified = true

  nil
end

- (Object) Summary



175
176
177
178
179
180
181
182
183
184
185
# File '../../src/modules/StorageSettings.rb', line 175

def Summary
  tmp = [
    _("Default Mount-by:") + " " + Storage.GetDefaultMountBy().id2name,
    _("Default File System:") + " " + Partitions.DefaultFs().id2name,
    _("Show Storage Devices by:") + " " + GetDisplayName().id2name,
    _("Partition Alignment:") + " " + Storage.GetPartitionAlignment().id2name[6..-1],
    _("Visible Information on Storage Devices:") + " " + HTML.List(@visible_fields)
  ]

  HTML.List(tmp)
end