Make badge and debug extend ui

Permits further ui extension
This commit is contained in:
Arlo Breault 2019-05-07 14:36:23 -04:00
parent 5b18729e77
commit 2b1852c1a5
6 changed files with 49 additions and 52 deletions

View file

@ -3,17 +3,29 @@ All of Snowflake's DOM manipulation and inputs.
###
class UI
debug: false # True when there's no badge
setStatus: (msg) =>
setActive: (connected) =>
log: (msg) =>
class BadgeUI extends UI
$badge: null
constructor: ->
@$badge = document.getElementById('badge')
setActive: (connected) =>
@$badge.className = if connected then 'active' else ''
class DebugUI extends UI
# DOM elements references.
$msglog: null
$status: null
constructor: ->
@$badge = document.getElementById('badge')
@debug = null == @$badge
return if !@debug
# Setup other DOM handlers if it's debug mode.
@$status = document.getElementById('status')
@$msglog = document.getElementById('msglog')
@ -21,17 +33,12 @@ class UI
# Status bar
setStatus: (msg) =>
return if !@debug
@$status.innerHTML = 'Status: ' + msg
setActive: (connected) =>
if @debug
@$msglog.className = if connected then 'active' else ''
else
@$badge.className = if connected then 'active' else ''
@$msglog.className = if connected then 'active' else ''
log: (msg) =>
return if !@debug
# Scroll to latest
@$msglog.value += msg + '\n'
@$msglog.scrollTop = @$msglog.scrollHeight