From cdb83f744a06b700f84683d4041055a2bd152118 Mon Sep 17 00:00:00 2001 From: ccd0 Date: Wed, 18 Jun 2014 22:39:19 -0700 Subject: [PATCH] cleanup menu code --- src/Filtering/Filter.coffee | 3 +-- src/Filtering/PostHiding.coffee | 9 +++------ src/Filtering/ThreadHiding.coffee | 9 +++------ src/General/Header.coffee | 3 +-- src/General/Index.coffee | 3 +-- src/General/UI.coffee | 6 ------ src/Images/FappeTyme.coffee | 3 +-- src/Images/Gallery.coffee | 6 ++---- src/Images/ImageExpand.coffee | 3 +-- src/Images/ImageLoader.coffee | 3 +-- src/Menu/ArchiveLink.coffee | 5 ++--- src/Menu/DeleteLink.coffee | 3 +-- src/Menu/DownloadLink.coffee | 3 +-- src/Menu/ReportLink.coffee | 5 ++--- src/Miscellaneous/AnnouncementHiding.coffee | 3 +-- src/Miscellaneous/CatalogLinks.coffee | 3 +-- src/Monitoring/ThreadUpdater.coffee | 3 +-- src/Monitoring/ThreadWatcher.coffee | 11 +++-------- src/Quotelinks/QuoteThreading.coffee | 3 +-- 19 files changed, 27 insertions(+), 60 deletions(-) diff --git a/src/Filtering/Filter.coffee b/src/Filtering/Filter.coffee index 61dfd6110..c759a8bd7 100755 --- a/src/Filtering/Filter.coffee +++ b/src/Filtering/Filter.coffee @@ -173,7 +173,6 @@ Filter = textContent: 'Filter' entry = - type: 'post' el: div order: 50 open: (post) -> @@ -198,7 +197,7 @@ Filter = # Add a sub entry for each filter type. entry.subEntries.push Filter.menu.createSubEntry type[0], type[1] - UI.addMenuEntry entry + Menu.menu.addEntry entry createSubEntry: (text, type) -> el = $.el 'a', diff --git a/src/Filtering/PostHiding.coffee b/src/Filtering/PostHiding.coffee index 454ebcb80..576df9084 100755 --- a/src/Filtering/PostHiding.coffee +++ b/src/Filtering/PostHiding.coffee @@ -39,8 +39,7 @@ PostHiding = replies = UI.checkbox 'replies', ' Hide replies', Conf['Recursive Hiding'] makeStub = UI.checkbox 'makeStub', ' Make stub', Conf['Stubs'] - UI.addMenuEntry - type: 'post' + Menu.menu.addEntry el: div order: 20 open: (post) -> @@ -75,8 +74,7 @@ PostHiding = href: 'javascript:;' $.on hideStubLink, 'click', PostHiding.menu.hideStub - UI.addMenuEntry - type: 'post' + Menu.menu.addEntry el: div order: 20 open: (post) -> @@ -96,8 +94,7 @@ PostHiding = el: replies ] - UI.addMenuEntry - type: 'post' + Menu.menu.addEntry el: hideStubLink order: 15 open: (post) -> diff --git a/src/Filtering/ThreadHiding.coffee b/src/Filtering/ThreadHiding.coffee index e78f7747c..e0555b226 100755 --- a/src/Filtering/ThreadHiding.coffee +++ b/src/Filtering/ThreadHiding.coffee @@ -77,8 +77,7 @@ ThreadHiding = makeStub = UI.checkbox 'Stubs', ' Make stub' - UI.addMenuEntry - type: 'post' + Menu.menu.addEntry el: div order: 20 open: ({thread, isReply}) -> @@ -94,8 +93,7 @@ ThreadHiding = href: 'javascript:;' $.on div, 'click', ThreadHiding.menu.show - UI.addMenuEntry - type: 'post' + Menu.menu.addEntry el: div order: 20 open: ({thread, isReply}) -> @@ -109,8 +107,7 @@ ThreadHiding = href: 'javascript:;' $.on hideStubLink, 'click', ThreadHiding.menu.hideStub - UI.addMenuEntry - type: 'post' + Menu.menu.addEntry el: hideStubLink order: 15 open: ({thread, isReply}) -> diff --git a/src/General/Header.coffee b/src/General/Header.coffee index 80271f4bc..3fab91d85 100755 --- a/src/General/Header.coffee +++ b/src/General/Header.coffee @@ -54,8 +54,7 @@ Header = @addShortcut menuButton - UI.addMenuEntry - type: 'header' + @menu.addEntry el: $.el 'span', textContent: 'Header' order: 107 diff --git a/src/General/Index.coffee b/src/General/Index.coffee index e37339d89..64981b278 100644 --- a/src/General/Index.coffee +++ b/src/General/Index.coffee @@ -55,8 +55,7 @@ Index = when 'Anchor Hidden Threads' $.on input, 'change', @cb.sort - UI.addMenuEntry - type: 'header' + Header.menu.addEntry el: $.el 'span', textContent: 'Index Navigation' order: 98 diff --git a/src/General/UI.coffee b/src/General/UI.coffee index 831641fa5..417e9b6da 100755 --- a/src/General/UI.coffee +++ b/src/General/UI.coffee @@ -18,10 +18,6 @@ UI = do -> el menus = {} - addMenuEntry = (entry) -> - menus[entry.type].addEntry entry - rmMenuEntry = (entry) -> - menus[entry.type].addEntry entry class Menu currentMenu = null @@ -391,6 +387,4 @@ UI = do -> Menu: Menu hover: hoverstart checkbox: checkbox - addMenuEntry: addMenuEntry - rmMenuEntry: rmMenuEntry } diff --git a/src/Images/FappeTyme.coffee b/src/Images/FappeTyme.coffee index 8de110165..a46b704aa 100755 --- a/src/Images/FappeTyme.coffee +++ b/src/Images/FappeTyme.coffee @@ -10,8 +10,7 @@ FappeTyme = FappeTyme[lc] = input = el.firstElementChild $.on input, 'change', FappeTyme.cb.toggle.bind input - UI.addMenuEntry - type: 'header' + Header.menu.addEntry el: el order: 97 diff --git a/src/Images/Gallery.coffee b/src/Images/Gallery.coffee index 364a8fd1f..b551ec371 100644 --- a/src/Images/Gallery.coffee +++ b/src/Images/Gallery.coffee @@ -61,8 +61,7 @@ Gallery = for name of Config.gallery {el} = createSubEntry name - UI.addMenuEntry - type: 'gallery' + nodes.menu.addEntry el: el order: 0 @@ -235,8 +234,7 @@ Gallery = for name of Config.gallery subEntries.push createSubEntry name - UI.addMenuEntry - type: 'header' + Header.menu.addEntry el: el order: 105 subEntries: subEntries diff --git a/src/Images/ImageExpand.coffee b/src/Images/ImageExpand.coffee index fcb678cef..8a6a6530a 100755 --- a/src/Images/ImageExpand.coffee +++ b/src/Images/ImageExpand.coffee @@ -249,8 +249,7 @@ ImageExpand = for name, conf of Config.imageExpansion subEntries.push createSubEntry name, conf[1] - UI.addMenuEntry - type: 'header' + Header.menu.addEntry el: el order: 105 subEntries: subEntries diff --git a/src/Images/ImageLoader.coffee b/src/Images/ImageLoader.coffee index 22c5716f5..e7190e160 100755 --- a/src/Images/ImageLoader.coffee +++ b/src/Images/ImageLoader.coffee @@ -19,8 +19,7 @@ ImageLoader = @el = prefetch.firstElementChild $.on @el, 'change', @toggle - UI.addMenuEntry - type: 'header' + Header.menu.addEntry el: prefetch order: 104 diff --git a/src/Menu/ArchiveLink.coffee b/src/Menu/ArchiveLink.coffee index 2e48c3383..05c8192b5 100755 --- a/src/Menu/ArchiveLink.coffee +++ b/src/Menu/ArchiveLink.coffee @@ -6,7 +6,6 @@ ArchiveLink = textContent: 'Archive' entry = - type: 'post' el: div order: 90 open: ({ID, thread, board}) -> @@ -25,7 +24,7 @@ ArchiveLink = # Add a sub entry for each type. entry.subEntries.push @createSubEntry type[0], type[1] - UI.addMenuEntry entry + Menu.menu.addEntry entry createSubEntry: (text, type) -> el = $.el 'a', @@ -51,4 +50,4 @@ ArchiveLink = return { el: el open: open - } \ No newline at end of file + } diff --git a/src/Menu/DeleteLink.coffee b/src/Menu/DeleteLink.coffee index 0f8fac98e..32ef589cf 100755 --- a/src/Menu/DeleteLink.coffee +++ b/src/Menu/DeleteLink.coffee @@ -26,8 +26,7 @@ DeleteLink = $.on fileEl, 'click', DeleteLink.delete true - UI.addMenuEntry - type: 'post' + Menu.menu.addEntry el: div order: 40 open: (post) -> diff --git a/src/Menu/DownloadLink.coffee b/src/Menu/DownloadLink.coffee index fcc6f278c..be0abc0e8 100755 --- a/src/Menu/DownloadLink.coffee +++ b/src/Menu/DownloadLink.coffee @@ -17,8 +17,7 @@ DownloadLink = else new Notice 'error', "Could not download #{file.URL}", 30 - UI.addMenuEntry - type: 'post' + Menu.menu.addEntry el: a order: 100 open: ({file}) -> diff --git a/src/Menu/ReportLink.coffee b/src/Menu/ReportLink.coffee index 81694460a..f1b359ada 100755 --- a/src/Menu/ReportLink.coffee +++ b/src/Menu/ReportLink.coffee @@ -7,8 +7,7 @@ ReportLink = href: 'javascript:;' textContent: 'Report this post' $.on a, 'click', ReportLink.report - UI.addMenuEntry - type: 'post' + Menu.menu.addEntry el: a order: 10 open: (post) -> @@ -19,4 +18,4 @@ ReportLink = url = "//sys.4chan.org/#{post.board}/imgboard.php?mode=report&no=#{post}" id = Date.now() set = "toolbar=0,scrollbars=0,location=0,status=1,menubar=0,resizable=1,width=685,height=200" - window.open url, id, set \ No newline at end of file + window.open url, id, set diff --git a/src/Miscellaneous/AnnouncementHiding.coffee b/src/Miscellaneous/AnnouncementHiding.coffee index 2aa39e54d..24ab1eee2 100755 --- a/src/Miscellaneous/AnnouncementHiding.coffee +++ b/src/Miscellaneous/AnnouncementHiding.coffee @@ -12,14 +12,13 @@ PSAHiding = return entry = - type: 'header' el: $.el 'a', textContent: 'Show announcement' className: 'show-announcement' href: 'javascript:;' order: 50 open: -> psa.hidden - UI.addMenuEntry entry + Header.menu.addEntry entry $.on entry.el, 'click', PSAHiding.toggle PSAHiding.btn = btn = $.el 'span', diff --git a/src/Miscellaneous/CatalogLinks.coffee b/src/Miscellaneous/CatalogLinks.coffee index 8d753e581..635b09043 100755 --- a/src/Miscellaneous/CatalogLinks.coffee +++ b/src/Miscellaneous/CatalogLinks.coffee @@ -8,8 +8,7 @@ CatalogLinks = $.on input, 'change', @toggle $.sync 'Header catalog links', CatalogLinks.set - UI.addMenuEntry - type: 'header' + Header.menu.addEntry el: el order: 95 diff --git a/src/Monitoring/ThreadUpdater.coffee b/src/Monitoring/ThreadUpdater.coffee index 4eaf3b039..96c655554 100755 --- a/src/Monitoring/ThreadUpdater.coffee +++ b/src/Monitoring/ThreadUpdater.coffee @@ -52,8 +52,7 @@ ThreadUpdater = subEntries.push el: @settings - UI.addMenuEntry @entry = - type: 'header' + Header.menu.addEntry @entry = el: $.el 'span', textContent: 'Updater' order: 110 diff --git a/src/Monitoring/ThreadWatcher.coffee b/src/Monitoring/ThreadWatcher.coffee index c2827a5df..d8932d84f 100755 --- a/src/Monitoring/ThreadWatcher.coffee +++ b/src/Monitoring/ThreadWatcher.coffee @@ -227,7 +227,7 @@ ThreadWatcher = refreshers: [] init: -> 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) -> menu.toggle e, @, ThreadWatcher @addHeaderMenuEntry() @@ -237,8 +237,7 @@ ThreadWatcher = return if g.VIEW isnt 'thread' entryEl = $.el 'a', href: 'javascript:;' - UI.addMenuEntry - type: 'header' + Header.menu.addEntry el: entryEl order: 60 $.on entryEl, 'click', -> ThreadWatcher.toggle g.threads["#{g.BOARD}.#{g.THREADID}"] @@ -258,7 +257,6 @@ ThreadWatcher = entries.push cb: ThreadWatcher.cb.openAll entry: - type: 'thread watcher' el: $.el 'a', textContent: 'Open all threads' refresh: -> (if ThreadWatcher.list.firstElementChild then $.rmClass else $.addClass) @el, 'disabled' @@ -267,7 +265,6 @@ ThreadWatcher = entries.push cb: ThreadWatcher.cb.checkThreads entry: - type: 'thread watcher' el: $.el 'a', textContent: 'Check 404\'d threads' refresh: -> (if $('div:not(.dead-thread)', ThreadWatcher.list) then $.rmClass else $.addClass) @el, 'disabled' @@ -276,7 +273,6 @@ ThreadWatcher = entries.push cb: ThreadWatcher.cb.pruneDeads entry: - type: 'thread watcher' el: $.el 'a', textContent: 'Prune 404\'d threads' refresh: -> (if $('.dead-thread', ThreadWatcher.list) then $.rmClass else $.addClass) @el, 'disabled' @@ -287,7 +283,6 @@ ThreadWatcher = subEntries.push @createSubEntry name, conf[1] entries.push entry: - type: 'thread watcher' el: $.el 'span', textContent: 'Settings' subEntries: subEntries @@ -296,7 +291,7 @@ ThreadWatcher = entry.el.href = 'javascript:;' if entry.el.nodeName is 'A' $.on entry.el, 'click', cb if cb @refreshers.push refresh.bind entry if refresh - UI.addMenuEntry entry + @menu.addEntry entry return createSubEntry: (name, desc) -> entry = diff --git a/src/Quotelinks/QuoteThreading.coffee b/src/Quotelinks/QuoteThreading.coffee index 3f7f14f3d..a54d2cf5d 100755 --- a/src/Quotelinks/QuoteThreading.coffee +++ b/src/Quotelinks/QuoteThreading.coffee @@ -13,8 +13,7 @@ QuoteThreading = input = $ 'input', @controls $.on input, 'change', @toggle - UI.addMenuEntry @entry = - type: 'header' + Header.menu.addEntry @entry = el: @controls order: 98