TopButton < UIButton
  size: 26 26
  image-source: images/top_button.png
  image-clip: 0 0 26 26
  image-border: 3
  image-color: #ffffffff
  icon-color: #ffffffff

  $hover !disabled:
    image-color: #ffffff99
    image-clip: 26 0 26 26

  $pressed:
    image-clip: 52 0 26 26

  $disabled:
    image-color: #ffffff44
    icon-color: #ffffff44

TopToggleButton < UIButton
  size: 26 26
  image-source: images/top_game_button.png
  image-clip: 26 0 26 26
  image-color: #ffffffff
  image-border: 3
  icon-color: #ffffffff

  $on:
    image-clip: 0 0 26 26
    image-color: #ffffffff
    icon-color: #ffffffff

TopMenuButtonsPanel < Panel
  layout:
    type: horizontalBox
    spacing: 4
    fit-children: true
  padding: 6 4

TopPanel < Panel
  height: 36
  image-source: images/top_panel.png
  image-repeated: true
  focusable: false

TopPanel
  id: topMenu
  anchors.top: parent.top
  anchors.left: parent.left
  anchors.right: parent.right

  TopMenuButtonsPanel
    id: leftButtonsPanel
    anchors.top: parent.top
    anchors.bottom: parent.bottom
    anchors.left: parent.left

  TopMenuButtonsPanel
    id: leftGameButtonsPanel
    anchors.top: parent.top
    anchors.bottom: parent.bottom
    anchors.left: prev.right
    visible: false

  UILabel
    id: frameCounter
    text-align: right
    text-auto-resize: true
    color: white
    id: frameCounter
    anchors.top: parent.top
    anchors.left: prev.right
    margin-top: 8
    margin-right: 5
    @onSetup: |
      cycleEvent(function()
        local frameCounter = rootWidget:recursiveGetChildById('frameCounter')
        if frameCounter then
          local text = 'FPS: ' .. g_app.getBackgroundPaneFps()
          frameCounter:setText(text)
          --print(text)
        end
      end, 250)

  TopMenuButtonsPanel
    id: rightButtonsPanel
    anchors.top: parent.top
    anchors.bottom: parent.bottom
    anchors.right: parent.right

  TopMenuButtonsPanel
    id: rightGameButtonsPanel
    anchors.top: parent.top
    anchors.bottom: parent.bottom
    anchors.right: prev.left
    visible: false
