cleanup menu code
This commit is contained in:
parent
d0f196a467
commit
cdb83f744a
@ -173,7 +173,6 @@ Filter =
|
|||||||
textContent: 'Filter'
|
textContent: 'Filter'
|
||||||
|
|
||||||
entry =
|
entry =
|
||||||
type: 'post'
|
|
||||||
el: div
|
el: div
|
||||||
order: 50
|
order: 50
|
||||||
open: (post) ->
|
open: (post) ->
|
||||||
@ -198,7 +197,7 @@ Filter =
|
|||||||
# Add a sub entry for each filter type.
|
# Add a sub entry for each filter type.
|
||||||
entry.subEntries.push Filter.menu.createSubEntry type[0], type[1]
|
entry.subEntries.push Filter.menu.createSubEntry type[0], type[1]
|
||||||
|
|
||||||
UI.addMenuEntry entry
|
Menu.menu.addEntry entry
|
||||||
|
|
||||||
createSubEntry: (text, type) ->
|
createSubEntry: (text, type) ->
|
||||||
el = $.el 'a',
|
el = $.el 'a',
|
||||||
|
|||||||
@ -39,8 +39,7 @@ PostHiding =
|
|||||||
replies = UI.checkbox 'replies', ' Hide replies', Conf['Recursive Hiding']
|
replies = UI.checkbox 'replies', ' Hide replies', Conf['Recursive Hiding']
|
||||||
makeStub = UI.checkbox 'makeStub', ' Make stub', Conf['Stubs']
|
makeStub = UI.checkbox 'makeStub', ' Make stub', Conf['Stubs']
|
||||||
|
|
||||||
UI.addMenuEntry
|
Menu.menu.addEntry
|
||||||
type: 'post'
|
|
||||||
el: div
|
el: div
|
||||||
order: 20
|
order: 20
|
||||||
open: (post) ->
|
open: (post) ->
|
||||||
@ -75,8 +74,7 @@ PostHiding =
|
|||||||
href: 'javascript:;'
|
href: 'javascript:;'
|
||||||
$.on hideStubLink, 'click', PostHiding.menu.hideStub
|
$.on hideStubLink, 'click', PostHiding.menu.hideStub
|
||||||
|
|
||||||
UI.addMenuEntry
|
Menu.menu.addEntry
|
||||||
type: 'post'
|
|
||||||
el: div
|
el: div
|
||||||
order: 20
|
order: 20
|
||||||
open: (post) ->
|
open: (post) ->
|
||||||
@ -96,8 +94,7 @@ PostHiding =
|
|||||||
el: replies
|
el: replies
|
||||||
]
|
]
|
||||||
|
|
||||||
UI.addMenuEntry
|
Menu.menu.addEntry
|
||||||
type: 'post'
|
|
||||||
el: hideStubLink
|
el: hideStubLink
|
||||||
order: 15
|
order: 15
|
||||||
open: (post) ->
|
open: (post) ->
|
||||||
|
|||||||
@ -77,8 +77,7 @@ ThreadHiding =
|
|||||||
|
|
||||||
makeStub = UI.checkbox 'Stubs', ' Make stub'
|
makeStub = UI.checkbox 'Stubs', ' Make stub'
|
||||||
|
|
||||||
UI.addMenuEntry
|
Menu.menu.addEntry
|
||||||
type: 'post'
|
|
||||||
el: div
|
el: div
|
||||||
order: 20
|
order: 20
|
||||||
open: ({thread, isReply}) ->
|
open: ({thread, isReply}) ->
|
||||||
@ -94,8 +93,7 @@ ThreadHiding =
|
|||||||
href: 'javascript:;'
|
href: 'javascript:;'
|
||||||
$.on div, 'click', ThreadHiding.menu.show
|
$.on div, 'click', ThreadHiding.menu.show
|
||||||
|
|
||||||
UI.addMenuEntry
|
Menu.menu.addEntry
|
||||||
type: 'post'
|
|
||||||
el: div
|
el: div
|
||||||
order: 20
|
order: 20
|
||||||
open: ({thread, isReply}) ->
|
open: ({thread, isReply}) ->
|
||||||
@ -109,8 +107,7 @@ ThreadHiding =
|
|||||||
href: 'javascript:;'
|
href: 'javascript:;'
|
||||||
$.on hideStubLink, 'click', ThreadHiding.menu.hideStub
|
$.on hideStubLink, 'click', ThreadHiding.menu.hideStub
|
||||||
|
|
||||||
UI.addMenuEntry
|
Menu.menu.addEntry
|
||||||
type: 'post'
|
|
||||||
el: hideStubLink
|
el: hideStubLink
|
||||||
order: 15
|
order: 15
|
||||||
open: ({thread, isReply}) ->
|
open: ({thread, isReply}) ->
|
||||||
|
|||||||
@ -54,8 +54,7 @@ Header =
|
|||||||
|
|
||||||
@addShortcut menuButton
|
@addShortcut menuButton
|
||||||
|
|
||||||
UI.addMenuEntry
|
@menu.addEntry
|
||||||
type: 'header'
|
|
||||||
el: $.el 'span',
|
el: $.el 'span',
|
||||||
textContent: 'Header'
|
textContent: 'Header'
|
||||||
order: 107
|
order: 107
|
||||||
|
|||||||
@ -55,8 +55,7 @@ Index =
|
|||||||
when 'Anchor Hidden Threads'
|
when 'Anchor Hidden Threads'
|
||||||
$.on input, 'change', @cb.sort
|
$.on input, 'change', @cb.sort
|
||||||
|
|
||||||
UI.addMenuEntry
|
Header.menu.addEntry
|
||||||
type: 'header'
|
|
||||||
el: $.el 'span',
|
el: $.el 'span',
|
||||||
textContent: 'Index Navigation'
|
textContent: 'Index Navigation'
|
||||||
order: 98
|
order: 98
|
||||||
|
|||||||
@ -18,10 +18,6 @@ UI = do ->
|
|||||||
el
|
el
|
||||||
|
|
||||||
menus = {}
|
menus = {}
|
||||||
addMenuEntry = (entry) ->
|
|
||||||
menus[entry.type].addEntry entry
|
|
||||||
rmMenuEntry = (entry) ->
|
|
||||||
menus[entry.type].addEntry entry
|
|
||||||
|
|
||||||
class Menu
|
class Menu
|
||||||
currentMenu = null
|
currentMenu = null
|
||||||
@ -391,6 +387,4 @@ UI = do ->
|
|||||||
Menu: Menu
|
Menu: Menu
|
||||||
hover: hoverstart
|
hover: hoverstart
|
||||||
checkbox: checkbox
|
checkbox: checkbox
|
||||||
addMenuEntry: addMenuEntry
|
|
||||||
rmMenuEntry: rmMenuEntry
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,8 +10,7 @@ FappeTyme =
|
|||||||
FappeTyme[lc] = input = el.firstElementChild
|
FappeTyme[lc] = input = el.firstElementChild
|
||||||
$.on input, 'change', FappeTyme.cb.toggle.bind input
|
$.on input, 'change', FappeTyme.cb.toggle.bind input
|
||||||
|
|
||||||
UI.addMenuEntry
|
Header.menu.addEntry
|
||||||
type: 'header'
|
|
||||||
el: el
|
el: el
|
||||||
order: 97
|
order: 97
|
||||||
|
|
||||||
|
|||||||
@ -61,8 +61,7 @@ Gallery =
|
|||||||
for name of Config.gallery
|
for name of Config.gallery
|
||||||
{el} = createSubEntry name
|
{el} = createSubEntry name
|
||||||
|
|
||||||
UI.addMenuEntry
|
nodes.menu.addEntry
|
||||||
type: 'gallery'
|
|
||||||
el: el
|
el: el
|
||||||
order: 0
|
order: 0
|
||||||
|
|
||||||
@ -235,8 +234,7 @@ Gallery =
|
|||||||
for name of Config.gallery
|
for name of Config.gallery
|
||||||
subEntries.push createSubEntry name
|
subEntries.push createSubEntry name
|
||||||
|
|
||||||
UI.addMenuEntry
|
Header.menu.addEntry
|
||||||
type: 'header'
|
|
||||||
el: el
|
el: el
|
||||||
order: 105
|
order: 105
|
||||||
subEntries: subEntries
|
subEntries: subEntries
|
||||||
|
|||||||
@ -249,8 +249,7 @@ ImageExpand =
|
|||||||
for name, conf of Config.imageExpansion
|
for name, conf of Config.imageExpansion
|
||||||
subEntries.push createSubEntry name, conf[1]
|
subEntries.push createSubEntry name, conf[1]
|
||||||
|
|
||||||
UI.addMenuEntry
|
Header.menu.addEntry
|
||||||
type: 'header'
|
|
||||||
el: el
|
el: el
|
||||||
order: 105
|
order: 105
|
||||||
subEntries: subEntries
|
subEntries: subEntries
|
||||||
|
|||||||
@ -19,8 +19,7 @@ ImageLoader =
|
|||||||
@el = prefetch.firstElementChild
|
@el = prefetch.firstElementChild
|
||||||
$.on @el, 'change', @toggle
|
$.on @el, 'change', @toggle
|
||||||
|
|
||||||
UI.addMenuEntry
|
Header.menu.addEntry
|
||||||
type: 'header'
|
|
||||||
el: prefetch
|
el: prefetch
|
||||||
order: 104
|
order: 104
|
||||||
|
|
||||||
|
|||||||
@ -6,7 +6,6 @@ ArchiveLink =
|
|||||||
textContent: 'Archive'
|
textContent: 'Archive'
|
||||||
|
|
||||||
entry =
|
entry =
|
||||||
type: 'post'
|
|
||||||
el: div
|
el: div
|
||||||
order: 90
|
order: 90
|
||||||
open: ({ID, thread, board}) ->
|
open: ({ID, thread, board}) ->
|
||||||
@ -25,7 +24,7 @@ ArchiveLink =
|
|||||||
# Add a sub entry for each type.
|
# Add a sub entry for each type.
|
||||||
entry.subEntries.push @createSubEntry type[0], type[1]
|
entry.subEntries.push @createSubEntry type[0], type[1]
|
||||||
|
|
||||||
UI.addMenuEntry entry
|
Menu.menu.addEntry entry
|
||||||
|
|
||||||
createSubEntry: (text, type) ->
|
createSubEntry: (text, type) ->
|
||||||
el = $.el 'a',
|
el = $.el 'a',
|
||||||
@ -51,4 +50,4 @@ ArchiveLink =
|
|||||||
return {
|
return {
|
||||||
el: el
|
el: el
|
||||||
open: open
|
open: open
|
||||||
}
|
}
|
||||||
|
|||||||
@ -26,8 +26,7 @@ DeleteLink =
|
|||||||
$.on fileEl, 'click', DeleteLink.delete
|
$.on fileEl, 'click', DeleteLink.delete
|
||||||
true
|
true
|
||||||
|
|
||||||
UI.addMenuEntry
|
Menu.menu.addEntry
|
||||||
type: 'post'
|
|
||||||
el: div
|
el: div
|
||||||
order: 40
|
order: 40
|
||||||
open: (post) ->
|
open: (post) ->
|
||||||
|
|||||||
@ -17,8 +17,7 @@ DownloadLink =
|
|||||||
else
|
else
|
||||||
new Notice 'error', "Could not download #{file.URL}", 30
|
new Notice 'error', "Could not download #{file.URL}", 30
|
||||||
|
|
||||||
UI.addMenuEntry
|
Menu.menu.addEntry
|
||||||
type: 'post'
|
|
||||||
el: a
|
el: a
|
||||||
order: 100
|
order: 100
|
||||||
open: ({file}) ->
|
open: ({file}) ->
|
||||||
|
|||||||
@ -7,8 +7,7 @@ ReportLink =
|
|||||||
href: 'javascript:;'
|
href: 'javascript:;'
|
||||||
textContent: 'Report this post'
|
textContent: 'Report this post'
|
||||||
$.on a, 'click', ReportLink.report
|
$.on a, 'click', ReportLink.report
|
||||||
UI.addMenuEntry
|
Menu.menu.addEntry
|
||||||
type: 'post'
|
|
||||||
el: a
|
el: a
|
||||||
order: 10
|
order: 10
|
||||||
open: (post) ->
|
open: (post) ->
|
||||||
@ -19,4 +18,4 @@ ReportLink =
|
|||||||
url = "//sys.4chan.org/#{post.board}/imgboard.php?mode=report&no=#{post}"
|
url = "//sys.4chan.org/#{post.board}/imgboard.php?mode=report&no=#{post}"
|
||||||
id = Date.now()
|
id = Date.now()
|
||||||
set = "toolbar=0,scrollbars=0,location=0,status=1,menubar=0,resizable=1,width=685,height=200"
|
set = "toolbar=0,scrollbars=0,location=0,status=1,menubar=0,resizable=1,width=685,height=200"
|
||||||
window.open url, id, set
|
window.open url, id, set
|
||||||
|
|||||||
@ -12,14 +12,13 @@ PSAHiding =
|
|||||||
return
|
return
|
||||||
|
|
||||||
entry =
|
entry =
|
||||||
type: 'header'
|
|
||||||
el: $.el 'a',
|
el: $.el 'a',
|
||||||
textContent: 'Show announcement'
|
textContent: 'Show announcement'
|
||||||
className: 'show-announcement'
|
className: 'show-announcement'
|
||||||
href: 'javascript:;'
|
href: 'javascript:;'
|
||||||
order: 50
|
order: 50
|
||||||
open: -> psa.hidden
|
open: -> psa.hidden
|
||||||
UI.addMenuEntry entry
|
Header.menu.addEntry entry
|
||||||
$.on entry.el, 'click', PSAHiding.toggle
|
$.on entry.el, 'click', PSAHiding.toggle
|
||||||
|
|
||||||
PSAHiding.btn = btn = $.el 'span',
|
PSAHiding.btn = btn = $.el 'span',
|
||||||
|
|||||||
@ -8,8 +8,7 @@ CatalogLinks =
|
|||||||
$.on input, 'change', @toggle
|
$.on input, 'change', @toggle
|
||||||
$.sync 'Header catalog links', CatalogLinks.set
|
$.sync 'Header catalog links', CatalogLinks.set
|
||||||
|
|
||||||
UI.addMenuEntry
|
Header.menu.addEntry
|
||||||
type: 'header'
|
|
||||||
el: el
|
el: el
|
||||||
order: 95
|
order: 95
|
||||||
|
|
||||||
|
|||||||
@ -52,8 +52,7 @@ ThreadUpdater =
|
|||||||
|
|
||||||
subEntries.push el: @settings
|
subEntries.push el: @settings
|
||||||
|
|
||||||
UI.addMenuEntry @entry =
|
Header.menu.addEntry @entry =
|
||||||
type: 'header'
|
|
||||||
el: $.el 'span',
|
el: $.el 'span',
|
||||||
textContent: 'Updater'
|
textContent: 'Updater'
|
||||||
order: 110
|
order: 110
|
||||||
|
|||||||
@ -227,7 +227,7 @@ ThreadWatcher =
|
|||||||
refreshers: []
|
refreshers: []
|
||||||
init: ->
|
init: ->
|
||||||
return if !Conf['Thread Watcher']
|
return if !Conf['Thread Watcher']
|
||||||
menu = new UI.Menu 'thread watcher'
|
menu = @menu = new UI.Menu 'thread watcher'
|
||||||
$.on $('.menu-button', ThreadWatcher.dialog), 'click', (e) ->
|
$.on $('.menu-button', ThreadWatcher.dialog), 'click', (e) ->
|
||||||
menu.toggle e, @, ThreadWatcher
|
menu.toggle e, @, ThreadWatcher
|
||||||
@addHeaderMenuEntry()
|
@addHeaderMenuEntry()
|
||||||
@ -237,8 +237,7 @@ ThreadWatcher =
|
|||||||
return if g.VIEW isnt 'thread'
|
return if g.VIEW isnt 'thread'
|
||||||
entryEl = $.el 'a',
|
entryEl = $.el 'a',
|
||||||
href: 'javascript:;'
|
href: 'javascript:;'
|
||||||
UI.addMenuEntry
|
Header.menu.addEntry
|
||||||
type: 'header'
|
|
||||||
el: entryEl
|
el: entryEl
|
||||||
order: 60
|
order: 60
|
||||||
$.on entryEl, 'click', -> ThreadWatcher.toggle g.threads["#{g.BOARD}.#{g.THREADID}"]
|
$.on entryEl, 'click', -> ThreadWatcher.toggle g.threads["#{g.BOARD}.#{g.THREADID}"]
|
||||||
@ -258,7 +257,6 @@ ThreadWatcher =
|
|||||||
entries.push
|
entries.push
|
||||||
cb: ThreadWatcher.cb.openAll
|
cb: ThreadWatcher.cb.openAll
|
||||||
entry:
|
entry:
|
||||||
type: 'thread watcher'
|
|
||||||
el: $.el 'a',
|
el: $.el 'a',
|
||||||
textContent: 'Open all threads'
|
textContent: 'Open all threads'
|
||||||
refresh: -> (if ThreadWatcher.list.firstElementChild then $.rmClass else $.addClass) @el, 'disabled'
|
refresh: -> (if ThreadWatcher.list.firstElementChild then $.rmClass else $.addClass) @el, 'disabled'
|
||||||
@ -267,7 +265,6 @@ ThreadWatcher =
|
|||||||
entries.push
|
entries.push
|
||||||
cb: ThreadWatcher.cb.checkThreads
|
cb: ThreadWatcher.cb.checkThreads
|
||||||
entry:
|
entry:
|
||||||
type: 'thread watcher'
|
|
||||||
el: $.el 'a',
|
el: $.el 'a',
|
||||||
textContent: 'Check 404\'d threads'
|
textContent: 'Check 404\'d threads'
|
||||||
refresh: -> (if $('div:not(.dead-thread)', ThreadWatcher.list) then $.rmClass else $.addClass) @el, 'disabled'
|
refresh: -> (if $('div:not(.dead-thread)', ThreadWatcher.list) then $.rmClass else $.addClass) @el, 'disabled'
|
||||||
@ -276,7 +273,6 @@ ThreadWatcher =
|
|||||||
entries.push
|
entries.push
|
||||||
cb: ThreadWatcher.cb.pruneDeads
|
cb: ThreadWatcher.cb.pruneDeads
|
||||||
entry:
|
entry:
|
||||||
type: 'thread watcher'
|
|
||||||
el: $.el 'a',
|
el: $.el 'a',
|
||||||
textContent: 'Prune 404\'d threads'
|
textContent: 'Prune 404\'d threads'
|
||||||
refresh: -> (if $('.dead-thread', ThreadWatcher.list) then $.rmClass else $.addClass) @el, 'disabled'
|
refresh: -> (if $('.dead-thread', ThreadWatcher.list) then $.rmClass else $.addClass) @el, 'disabled'
|
||||||
@ -287,7 +283,6 @@ ThreadWatcher =
|
|||||||
subEntries.push @createSubEntry name, conf[1]
|
subEntries.push @createSubEntry name, conf[1]
|
||||||
entries.push
|
entries.push
|
||||||
entry:
|
entry:
|
||||||
type: 'thread watcher'
|
|
||||||
el: $.el 'span',
|
el: $.el 'span',
|
||||||
textContent: 'Settings'
|
textContent: 'Settings'
|
||||||
subEntries: subEntries
|
subEntries: subEntries
|
||||||
@ -296,7 +291,7 @@ ThreadWatcher =
|
|||||||
entry.el.href = 'javascript:;' if entry.el.nodeName is 'A'
|
entry.el.href = 'javascript:;' if entry.el.nodeName is 'A'
|
||||||
$.on entry.el, 'click', cb if cb
|
$.on entry.el, 'click', cb if cb
|
||||||
@refreshers.push refresh.bind entry if refresh
|
@refreshers.push refresh.bind entry if refresh
|
||||||
UI.addMenuEntry entry
|
@menu.addEntry entry
|
||||||
return
|
return
|
||||||
createSubEntry: (name, desc) ->
|
createSubEntry: (name, desc) ->
|
||||||
entry =
|
entry =
|
||||||
|
|||||||
@ -13,8 +13,7 @@ QuoteThreading =
|
|||||||
input = $ 'input', @controls
|
input = $ 'input', @controls
|
||||||
$.on input, 'change', @toggle
|
$.on input, 'change', @toggle
|
||||||
|
|
||||||
UI.addMenuEntry @entry =
|
Header.menu.addEntry @entry =
|
||||||
type: 'header'
|
|
||||||
el: @controls
|
el: @controls
|
||||||
order: 98
|
order: 98
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user