Sha256: 51693b911a3ee83f8bc25e71a768450b67b3f3f123fdb200cd7885b836472652

Contents?: true

Size: 1.14 KB

Versions: 57

Compression:

Stored size: 1.14 KB

Contents

require 'time'
require 'opsicle/monitor/panel'
require 'opsicle/stack'

module Opsicle
  module Monitor
    module Panels
      class Header < Opsicle::Monitor::Panel

        attr_accessor :panel_main

        def initialize(height, width, top, left)
          @stack = Opsicle::Stack.new(App.client)

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

        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

      end
    end
  end
end

Version data entries

57 entries across 57 versions & 1 rubygems

Version Path
opsicle-2.15.0 lib/opsicle/monitor/panels/header.rb
opsicle-2.14.2 lib/opsicle/monitor/panels/header.rb
opsicle-2.14.1 lib/opsicle/monitor/panels/header.rb
opsicle-2.14.0 lib/opsicle/monitor/panels/header.rb
opsicle-2.13.1 lib/opsicle/monitor/panels/header.rb
opsicle-2.13.0 lib/opsicle/monitor/panels/header.rb
opsicle-2.12.5 lib/opsicle/monitor/panels/header.rb
opsicle-2.12.3 lib/opsicle/monitor/panels/header.rb
opsicle-2.12.2 lib/opsicle/monitor/panels/header.rb
opsicle-2.12.1 lib/opsicle/monitor/panels/header.rb
opsicle-2.12.0 lib/opsicle/monitor/panels/header.rb
opsicle-2.11.3 lib/opsicle/monitor/panels/header.rb
opsicle-2.11.1 lib/opsicle/monitor/panels/header.rb
opsicle-2.11.0 lib/opsicle/monitor/panels/header.rb
opsicle-2.10.1 lib/opsicle/monitor/panels/header.rb
opsicle-2.10.0 lib/opsicle/monitor/panels/header.rb
opsicle-2.9.6 lib/opsicle/monitor/panels/header.rb
opsicle-2.9.4 lib/opsicle/monitor/panels/header.rb
opsicle-2.9.3 lib/opsicle/monitor/panels/header.rb
opsicle-2.9.2 lib/opsicle/monitor/panels/header.rb