Skip to content
Snippets Groups Projects
QuickList.txt 1.7 KiB
Newer Older
  • Learn to ignore specific revisions
  • kidkinster's avatar
    kidkinster committed
    QuickList is built from the interaction of six parts.
    
    1] The Quick List option enable/disable control.
    2] The list context, basically if there are more than one, and the
    
    klorpa's avatar
    klorpa committed
    	context is correct, the toggle, the table will be available.
    
    kidkinster's avatar
    kidkinster committed
    3] The Slave Summary Passage contains the Quick List toggle button,
    
    klorpa's avatar
    klorpa committed
    	clicking it either shows or hides the quick list table.
    
    kidkinster's avatar
    kidkinster committed
    4] The Slave Summary Passage contains the actual quick list table, which
    
    klorpa's avatar
    klorpa committed
    	if shown has a button for each slave name in the list, in columns up
    	to 5 wide.
    
    klorpa's avatar
    klorpa committed
    5] The Slave Summary Passage contains invisible <a> links or any other
    
    klorpa's avatar
    klorpa committed
    	html element nearby or tied to each slave's name. These are
    
    klorpa's avatar
    klorpa committed
    	generated with an html attribute id set to "slave-##" where ## is the
    	slave's ID.
    
    kidkinster's avatar
    kidkinster committed
    6] The JS code to tie a scroll animation from the visible name buttons
    
    klorpa's avatar
    klorpa committed
    	in the quick list table down to the invisible links/elements.
    
    klorpa's avatar
    klorpa committed
    The slave summary passage is called in many strange contexts, and for
    this reason, there is some serious complexity in getting consistent
    results. As it stands now, the passage sometimes calls itself
    recursively (for facilities), but it doesn't do that for the Main
    
    klorpa's avatar
    klorpa committed
    penthouse page.
    
    klorpa's avatar
    klorpa committed
    The list context is duplicated, so that we can quickly loop over the
    
    kidkinster's avatar
    kidkinster committed
    list context to get the slave names in the list, all without disturbing
    the principal list context for the slave data.
    
    
    klorpa's avatar
    klorpa committed
    If the list context has more than one slave, and is either the first
    
    klorpa's avatar
    klorpa committed
    call for the Main/penthouse list, or the recursive call for any other
    
    klorpa's avatar
    klorpa committed
    facility, And we haven't *already* built a quick list table, then we
    
    klorpa's avatar
    klorpa committed
    proceed to build the quick list table.
    
    kidkinster's avatar
    kidkinster committed
    
    We use special attributes on the built button to name the invisible
    
    klorpa's avatar
    klorpa committed
    link to which we'll navigate, the speed that we'll animate our
    
    kidkinster's avatar
    kidkinster committed
    navigation and an offset.