SCT: Better Sheet support for "Go To" menu [1] Bug Number: n/a Release notes (y/n): Yes For Release Nums: 7.2 See original analysis. This is am implementation (with a few nuances) of Proposal 2: http://cadswes2.colorado.edu/~philw/2017/SCT/GoToMenu/SctGoToMenuWithSheetSupport-Analysis.html If the SCT doesn't use "Sheets", then the "Go To" menu is built as it had been in prior RiverWare versions. That is, if there are fewer than a certain number of dividers* in the SCT, the "Go To" menu has a single single menu -- with items for each divider (with the text either coming from the divider -- or, if that is blank, the text of the subsequent slot item). If there are more than that number of dividers, a two-level cascaded menu is built, with just numbered high-level items. http://cadswes2.colorado.edu/~philw/2017/SCT/GoToMenu/Ref/TvaGreg-SctGotoMenu1b.png *This number (SCT divider count) had been 20, but was bumped up to 22 for better treatment of an established TVA SCT. See this symbol in QtSCT/SctDialog.cpp: static const int MAX_ITEMS_PER_JUMP_MENU (22); NEW BEHAVIOR: With this change, if the SCT DOES use "Sheets", the top-level items are based on the Sheet names. Sheets which lack any "internal" Slot Dividers are presented as just a top-level menu item. Sheets having "internal" Slot Dividers are presented as a submenu of items for those dividers, with an initial "Start of Sheet" item to go to the top row (or leftmost column) of the sheet. An option has been developed, but is disabled, to break a Sheet's "Go To" submenu into MULTIPLE submenus if the number of internal slot dividers exceeds the "MAX_ITEMS..." value (see above). This behavior is determined with this compile-time symbol: static const bool LIMIT_SHEET_JUMP_SUBMENU_SIZE (false); // 7.2: false These two screenshots demonstrate the result with actual production TVA SCTs (one with a slight modification, to test one of the nuances described above) -- with the "LIMIT_SHEET_JUMP_SUBMENU_SIZE" ON: http://cadswes2.colorado.edu/~philw/2017/SCT/GoToMenu/2017-06-19/SctGoToMenus1.png http://cadswes2.colorado.edu/~philw/2017/SCT/GoToMenu/2017-06-19/SctGoToMenus2.png Here is a demonstration of the two modes, with an annotation of a mouse path for a particular item selection: http://cadswes2.colorado.edu/~philw/2017/SCT/GoToMenu/2017-06-20/MousePaths-Comparison.png Note that IF there are more items than will fit within the height of the screen, the submenu DOES wrap. See this demonstration: http://cadswes2.colorado.edu/~philw/2017/SCT/GoToMenu/2017-06-20/HugeSheet-ManyDivs.png ---