• exec/load/dd_lightbar_menu.js

    From nightfox@VERT to CVS commit on Saturday, March 23, 2019 01:00:05
    exec/load dd_lightbar_menu.js 1.1 1.2
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv15817

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    Added the AddAdditionalQuitKeys() method, to add additional key characters to quit out of the meu in addition to ESC. It takes an array of key characters as strings. For example:
    lbMenu.AddAdditionalQuitKeys(["q", "Q"]);

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Saturday, May 11, 2019 14:06:44
    exec/load dd_lightbar_menu.js 1.2 1.3
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv24802

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    Now supports a title in the top border line: Added a new property for the DDLightbarMenu object, menuTitle, which is a string that specifies the title text to write in the top border (if the border is being displayed). It defaults to an empty string (for no title). Synchronet attribute codes are supported.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Saturday, May 11, 2019 14:22:14
    exec/load dd_lightbar_menu.js 1.3 1.4
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv26881

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    Fixed a bug that somehow crept in: Tthe check mark for selections in multi-select mode was being displayed in the wrong place when using a menu border.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Sunday, May 12, 2019 20:12:20
    exec/load dd_lightbar_menu.js 1.4 1.5
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv15387

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    Renamed the menuTitle property to topBorderText. Added a bottomBorderText property, for text to be displayed in the bottom border.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Sunday, February 09, 2020 11:15:02
    exec/load dd_lightbar_menu.js 1.5 1.6
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv15577

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    New function: AddAdditionalSelectItemKeys(), which adds additional keys that can be used to select any item (in addition to Enter). This function takes an array, and the keys are case-sensitive. For example, to add the key E to select any item (assuming the menu object is lbMenu):
    lbMenu.AddAdditionalSelectItemKeys(["E"]);
    To make a case-insensitive verison, both the uppercase and lowercase letter would need to be added, as in the following example for E:
    lbMenu.AddAdditionalSelectItemKeys(["E", "e"]);

    Also, after showing the menu & getting a value from the user (using the GetVal() function), the lastUserInput property will have the user's last keypress.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Digital Man@VERT to nightfox on Sunday, February 09, 2020 11:53:09
    Re: exec/load/dd_lightbar_menu.js
    By: nightfox to CVS commit on Sun Feb 09 2020 11:15 am

    exec/load dd_lightbar_menu.js 1.5 1.6
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv15577

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    New function: AddAdditionalSelectItemKeys(), which adds additional keys that can be used to select any item (in addition to Enter). This function takes an array, and the keys are case-sensitive. For example, to add the key E to

    An array of strings is an odd way to represent an array of keys. Is each only only one character? If so, then a string is the normal way to represent an array of characters.

    digital man

    This Is Spinal Tap quote #8:
    Derek Smalls: Making a big thing out of it would have been a good idea.
    Norco, CA WX: 56.7øF, 70.0% humidity, 4 mph WNW wind, 0.00 inches rain/24hrs ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Nightfox@VERT/DIGDIST to Digital Man on Sunday, February 09, 2020 20:05:37
    Re: exec/load/dd_lightbar_menu.js
    By: Digital Man to nightfox on Sun Feb 09 2020 11:53 am

    An array of strings is an odd way to represent an array of keys. Is each only only one character? If so, then a string is the normal way to represent an array of characters.

    I suppose that's true. I should probably change it as such.

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From nightfox@VERT to CVS commit on Sunday, February 09, 2020 20:38:58
    exec/load dd_lightbar_menu.js 1.6 1.7
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv3623

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    AddAdditionalSelectItemKeys() now takes a string specifying additional keys rather than an array of strings. For instance, if you want both lowercase 'e' and uppercase 'E' to allow selecting an item, the call would look like this (assuming lbMenu is the menu object):
    lbMenu.AddAdditionalSelectItemKeys("eE");

    Also, changed AddAdditionalQuitKeys() to work the same way.

    Note: If you are using SlyVote, you will need to also update SlyVote, since SlyVote has also been updated to call AddAdditionalQuitKeys() this way.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Sunday, March 29, 2020 16:08:05
    exec/load dd_lightbar_menu.js 1.7 1.8
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv25167

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    The HOME and END keys now go to the first and last item in the whole list, rather than just the current page. This behavior is more consistent with things like sbbslist.js.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Monday, March 30, 2020 17:50:24
    exec/load dd_lightbar_menu.js 1.8 1.9
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv6073

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    Now uses console.strlen() to measure printed text length rather than strip_ctrl(text).length.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Tuesday, March 31, 2020 21:06:54
    exec/load dd_lightbar_menu.js 1.9 1.10
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv15214

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    Scrollbar functionality finally exists now, even though there was already a property to toggle a scrollbar from the beginning.. A scrollbar can be useful to visually show how far the user is in the list of items, particularly if the list is long.
    You can enable the display of a scrollbar by setting the scrollbarEnabled property to true. By default, it is false. For instance (assuming the menu object is lbMenu):
    lbMenu.scrollbarEnabled = true;
    When enabled, the scrollbar will appear on the right side of the menu. If borders are enabled, the scrollbar will appear just inside the right border. Also, if the scrollbar is enabled but all the items would fit in a single "page" in the menu, then the scrollbar won't be displayed.
    The scrollbar uses block characters to draw the scrollbar: ASCII character 176 for the background and ASCII 177 for the block that moves on the scrollbar. If you want to change those characters, you can change the scrollbarInfo.BGChar and scrollbarInfo.blockChar properties in the menu object.
    By default, the scrollbar colors are high (bright) black for the background and high (bright) white for the moving block character. If desired, those can be changed with the colors.scrollbarBGColor and colors.scrollbarScrollBlockColor properties in the menu object.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Saturday, April 04, 2020 15:06:12
    exec/load dd_lightbar_menu.js 1.10 1.11
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv941

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    When displaying the menu items, rather than directly referring to the list of menu item objects, there are now a couple of functions (mainly for internal use), NumItems() (which returns the number of items) and GetItem() (which returns a specific menu item object). The intent is that calling code can replace these two functions in the DDLightbarMenu object to have the DDLightbarMenu effectively access a different list of items rather than its own list of items. This can be more efficient, for instance, in scripts that are working with a Synchronet messagebase, to avoid calling DDLightbarMenu's Add() function to add/copy a bunch of data, which can take significant time (i.e., if a messagebase contains a lot of messages).

    The colors.itemColor and colors.selectedItemColor properties in a DDLightbarMenu object can now be either a string (with Synchronet color/attribute codes for the item text) or an array with objects specifying color/attribute codes for different parts of an item's text string displayed on the menu.
    Item color arrays: Currently, colors.itemColor and colors.seletedItemColor within a DDLightbarMenu object can be either a string (containing color/attribute codes) or an array with color/attribute codes for different sections of the item strings to display in the menu. The array is to contain objects with the following properties:
    start: The index of the first character in the item string to apply the colors to
    end: One past the last character index in the string to apply the colors to
    attrs: The Synchronet attribute codes to apply to the section of the item string
    For the last item, the 'end' property can be -1, 0, or greater than the length of the item to apply the color/attribute codes to the rest of the string.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Saturday, April 04, 2020 19:21:34
    exec/load dd_lightbar_menu.js 1.11 1.12
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv15919

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    The list of hotkeys for a menu item is now a string instead of an array of strings

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Saturday, April 04, 2020 21:22:38
    exec/load dd_lightbar_menu.js 1.12 1.13
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv2433

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    DDLightbarMenu now has a couple of alternate item color properties, colors.altItemColor and colors.altSelectedItemColor. The menu item objects have a new property, useAltColors, which is a boolean that specifies whether to use the alternate colors (if false, the menu will use the regular colors). useAltColors is false by default.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Sunday, April 05, 2020 14:02:29
    exec/load dd_lightbar_menu.js 1.13 1.14
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv28841

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    Typo fixed: GetTopItemIdxToTopOfLastPage -> GetTopItemIdxOfLastPage

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Monday, April 06, 2020 17:03:29
    exec/load dd_lightbar_menu.js 1.16 1.17
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv2612

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    For a screen update optimization, implemented a way to temporarily restrict which part of the items to draw the next time Draw() is called (and thus when WriteItem() is called for each tiem). There is a new property in the DDLightbarMenu class, nextDrawOnlyItemSubstr, that can be set to an object with 'start' and 'end' properties specifyign the start and end indexes (1 past the last char index) of the item strings to write in the menu the next time Draw() is called. Draw() will then set nextDrawOnlyItemSubstr to null when it's done.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Tuesday, April 07, 2020 13:40:20
    exec/load dd_lightbar_menu.js 1.17 1.18
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv1241

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    The F and L keys now nagivate to the first & last pages, respectfully (unless the calling code has added either of those keys as additional keys to exit the input loop in case the calling code wants to handle those keys for something). Also, fixed a minor bug in calculating the length of items to print when the scrollbar is enabled but not refreshed on the screen when writing the items.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From nightfox@VERT to CVS commit on Tuesday, April 07, 2020 16:31:55
    exec/load dd_lightbar_menu.js 1.18 1.19
    Update of /cvsroot/sbbs/exec/load
    In directory cvs:/tmp/cvs-serv27288

    Modified Files:
    dd_lightbar_menu.js
    Log Message:
    On second thought, F and L for first & last page isn't really needed, since Home and End do that.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net