Merge branch 'master' of github.com:pragmagic/karax
This commit is contained in:
commit
c00d7dc340
2 changed files with 12 additions and 6 deletions
|
|
@ -9,7 +9,7 @@ var
|
||||||
selectedEntry = -1
|
selectedEntry = -1
|
||||||
filter: Filter
|
filter: Filter
|
||||||
entriesLen: int
|
entriesLen: int
|
||||||
|
doneswitch = true
|
||||||
const
|
const
|
||||||
contentSuffix = cstring"content"
|
contentSuffix = cstring"content"
|
||||||
completedSuffix = cstring"completed"
|
completedSuffix = cstring"completed"
|
||||||
|
|
@ -62,9 +62,9 @@ proc toggleEntry(ev: Event; n: VNode) =
|
||||||
markAsCompleted(id, not isCompleted(id))
|
markAsCompleted(id, not isCompleted(id))
|
||||||
|
|
||||||
proc onAllDone(ev: Event; n: VNode) =
|
proc onAllDone(ev: Event; n: VNode) =
|
||||||
clear()
|
for i in 0..<entriesLen:
|
||||||
selectedEntry = -1
|
markAsCompleted(i, doneswitch)
|
||||||
|
doneswitch = not doneswitch
|
||||||
proc clearCompleted(ev: Event, n: VNode) =
|
proc clearCompleted(ev: Event, n: VNode) =
|
||||||
for i in 0..<entriesLen:
|
for i in 0..<entriesLen:
|
||||||
if isCompleted(i): setEntryContent(i, nil)
|
if isCompleted(i): setEntryContent(i, nil)
|
||||||
|
|
@ -124,8 +124,8 @@ proc createDom(data: RouterData): VNode =
|
||||||
section(class = "todoapp"):
|
section(class = "todoapp"):
|
||||||
makeHeader()
|
makeHeader()
|
||||||
section(class = "main"):
|
section(class = "main"):
|
||||||
input(class = "toggle-all", `type` = "checkbox", name = "toggle")
|
input(class = "toggle-all", `type` = "checkbox", id = "toggle", onclick = onAllDone)
|
||||||
label(`for` = "toggle-all", onclick = onAllDone):
|
label(`for` = "toggle"):
|
||||||
text "Mark all as complete"
|
text "Mark all as complete"
|
||||||
var entriesCount = 0
|
var entriesCount = 0
|
||||||
var completedCount = 0
|
var completedCount = 0
|
||||||
|
|
|
||||||
|
|
@ -45,6 +45,10 @@ type
|
||||||
keygen, output, progress, meter,
|
keygen, output, progress, meter,
|
||||||
details, summary, command, menu
|
details, summary, command, menu
|
||||||
|
|
||||||
|
const selfClosing = {area, base, br, col, embed, hr, img, input,
|
||||||
|
link, meta, param, source, track, wbr}
|
||||||
|
|
||||||
|
|
||||||
type
|
type
|
||||||
EventKind* {.pure.} = enum ## The events supported by the virtual DOM.
|
EventKind* {.pure.} = enum ## The events supported by the virtual DOM.
|
||||||
onclick, ## An element is clicked.
|
onclick, ## An element is clicked.
|
||||||
|
|
@ -434,6 +438,8 @@ proc add*(result: var string, n: VNode, indent = 0, indWidth = 2) =
|
||||||
result.add("</")
|
result.add("</")
|
||||||
result.add(kind)
|
result.add(kind)
|
||||||
result.add(">")
|
result.add(">")
|
||||||
|
elif n.kind in selfClosing:
|
||||||
|
result.add(" />")
|
||||||
else:
|
else:
|
||||||
result.add(">")
|
result.add(">")
|
||||||
result.add("</")
|
result.add("</")
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue