Class: Yast::ViewAnymsgClient
- Inherits:
-
Client
- Object
- Client
- Yast::ViewAnymsgClient
- Defined in:
- library/system/src/lib/yast2/clients/view_anymsg.rb
Overview
Reads a \n separated list of filenames from /var/lib/YaST2/filenames Lines starting with "#" are ignored (comments) A line starting with "" is taken as the default filename, the "" is stripped
All files are listed in an editable combo box, where the user can easily switch between files and even add a new file
At finish, the list of filenames is written back to /var/lib/YaST2/filenames adapting the default line (starting with "*") accordingly.
The default is either given as WFM::Args(0) or is the file last viewed.
Constant Summary collapse
- DEFAULT_FILENAMES =
[String] Default list of log files
[ "/var/log/boot.log", "/var/log/messages", "/var/log/YaST2/y2log" ].freeze
Instance Method Summary collapse
Instance Method Details
#main ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
# File 'library/system/src/lib/yast2/clients/view_anymsg.rb', line 60 def main textdomain "base" # the command line description map return CommandLine.Run("id" => "view_anymsg") if WFM.Args.first == "help" # set up dialogue UI.OpenDialog( Opt(:decorated, :defaultsize), dialog_content ) # wait until user clicks "OK" # check if ComboBox selected and change view accordingly res = nil loop do # Fill the LogView with file content UI.ChangeWidget(Id(:log), :Value, file_content(selected_filename)) heading = Builtins.sformat(_("System Log (%1)"), selected_filename) UI.ChangeWidget(Id(:log), :Label, heading) if start_journal? res = :journal break end # wait for user input res = UI.UserInput case res when :ok, :cancel then break when :custom_file # adapt to combo box settings new_file = UI.QueryWidget(Id(:custom_file), :Value) self.selected_filename = new_file if !new_file.nil? else Builtins.y2milestone("bad UserInput (%1)", res) end end write_new_filenames if res == :ok UI.CloseDialog Yast::WFM.CallFunction("journal") if res == :journal true end |