class Opsicle::Monitor::Panels::Header

Attributes

panel_main[RW]

Public Class Methods

new(height, width, top, left) click to toggle source
Calls superclass method Opsicle::Monitor::Panel::new
# File lib/opsicle/monitor/panels/header.rb, line 12
def initialize(height, width, top, left)
  @stack = Opsicle::Stack.new(App.client)

  super(height, width, top, left, structure, :divider_r => " ")
end

Public Instance Methods

structure() click to toggle source
# File lib/opsicle/monitor/panels/header.rb, line 18
def structure
  @panel_main = nil # set by Display::Screen#main_panel=

  # [
  #   [relative_column_width, data_left, data_right]
  # ]
  [
    [
      [2, translate[:program], nil],
      [2, -> {
        [:deployments, :instances, :help].map do |e|
          translate[:menu][(e == @panel_main ? :active : :inactive)][e]
        end.join("  ")
      }, nil],
      [1, nil, -> { Time.now.strftime("%T %z") }],
    ],
    [
      [1, nil, nil],
    ],
    [
      [1, "Stack name:", @stack.name],
      [1, nil, nil],
      [1, nil, nil]
    ]
  ]
end