To create new connections/commands/scripts/plugins user have to add them on the LauncherTree. To use (execute) connections/commands/scripts/plugins, user have to double-click them on LauncherTree. Double click on the new “connection” (SHELL-TERMINAL, TELNET-TERMINAL, COM-PORT-TERMINAL launcher) will create new Terminal window in the current workspace and connect it according to the connection info that is stored in the launcher (SHELL-TERMINAL, TELNET-TERMINAL, COM-PORT-TERMINAL) itself. Double-click on “terminal automation launcher” (COMMAND, SCRIPT, I-SCRIPT, PLUGIN, I-PLUGIN) will execute it into existing active (highlighted with red frame) terminal. This is the basic mode of operation of Proxy32 and it is assuming that user has to keep LauncherTree window visible (to create, execute and store all user configuration: connections/commands/scripts/plugins).

On the other hand as the LauncherTree grows, only some parts of it (some launchers) needed for day-to-day operations. It would make sense to re-order the Launcher Tree in a way that most frequently used Launchers are the ones that are located closer to the top of the tree so that they are easier to find. On the flip-side, the best way to organize the LauncherTree is to group launchers by their purpose, not by frequency of their use. Indeed, user would rather create folder (SUBTREE) on the launcher tree and name it according to the purpose of the collection of the launchers that are stored in this SUBTREE. It has nothing to do with how often this SUBTREE will be used. Then the problem would be that most frequently used launchers would end up deep in the tree and in completely different branches of the tree. So, finding them for daily use would be a pain.

Opening right-click menu on the launcher and selecting bookmark

Opening right-click menu on the launcher and selecting bookmark

To help quickly find most frequently used launchers (without any regards to the order in which Launchers are grouped on the LauncherTree), the concept of bookmarking on the LauncherTree was introduced a while ago. While the LauncherTree can be organized by grouping the Launchers according to their purpose, user can also bookmark most frequently used launcher into some other menu called LauncherTree bookmarks menu. User can right-click on any frequently used launcher on the LauncherTree and request to add it to bookmark menu. The dialog will popup asking for (1) the name of the new bookmark (default name of the bookmark is Launcher Tooltip text), (2) whether the bookmark should just locate (highlight) bookmarked Launcher on the LauncherTree or should actually execute (double-click) it when the bookmark is selected from bookmark menu, (3) into which of the ten bookmark submenus the bookmark should be added. There are ten bookmark submenus, each of them can be renamed and each of them can hold unlimited number of bookmarks. In every bookmark submenu bookmarks are sorted alphabetically according to their names.

Add bookmark dialog allows to edit name of the bookmark, choose one of the ten submenus to insert it to and select action (show or execute bookmarked launcher) that will be performed when bookmark is selected

Add bookmark dialog allows to edit name of the bookmark, choose one of the ten submenus to insert it to and select action (show or execute bookmarked launcher) that will be performed when bookmark is selected

Bookmarks are stored as part of the Launcher configuration and saved to disk as part of XML representation of the Launcher. When LauncherTree is loaded from XML file, as Launcher is being read from file and created its bookmark(s) (if present) is automatically added to the proper submenu in the bookmark menu. If the bookmark is intended for direct execution, it is also labeled with check mark in front of it when it appears in the bookmark menu.

One launcher can have multiple bookmarks that can reside in different bookmark submenus. This makes sense if one launcher (say, certain command or script) can be re-used in many different maintenance or troubleshooting procedures that are recorded by user into different bookmarking submenus. One can think of ten bookmarking submenus as the way to build ten different most frequently used maintenance or troubleshooting procedures by adding different launcher's bookmarks to them in the order of steps in the procedure. While actual launchers needed in the procedure can reside anywhere in the Launcher Tree, in particular bookmarking submenu their bookmarks will appear in the order reflecting the steps of particular procedure. One actual launcher (say, certain command or script) may be used as a step in more than one procedure, that is why one launcher is allowed to have more than one bookmark representing it in LauncherTree bookmark menu.

When bookmark is selected in the bookmark menu (clicked with the left button of the mouse) it is being executed. Th emeaning of executed depends on the type of the bookmark. If bookmark does not have a check mark in front of it, when clicked with the left mouse Button it will simply highlight bookmarked Launcher on the LauncherTree for user to see it. When such bookmark is clicked with the left mouse Button and shift key is pressed also, it will execute (double-click) bookmarked Launcher on the LauncherTree. Terminal automation launcher (COMMAND, SCRIPT, I-SCRIPT, PLUGIN, I-PLUGIN) will execute into existing active (highlighted with red frame) terminal. Connection (SHELL-TERMINAL, TELNET-TERMINAL, COM-PORT-TERMINAL launcher) will create new Terminal window in the current workspace and connect it according to the connection info that is stored in the launcher. When any bookmark is clicked with the left mouse Button and ctrl is pressed also, such bookmark will be deleted from the bookmark menu and from the launcher itself.

Holding shift while clicking the bookmark will inverse the meaning of the check mark in front of the name of the bookmark. Bookmark without check mark will highlight bookmarked launcher on left click and execute it of Shift-LeftClick. Bookmark with the check mark will execute bookmarked launcher on left click and highlight it of Shift-LeftClick.

Bookmark menu is invoked by left click on the drop-down-arrow located to the right of the search button (the button with the picture of the binocular) on the toolbar of LauncherTree Window. This way the LauncherTree is also visible and user can look at the bookmarked launcher before executing it by double-clicking on it. The idea was that it is safer for user to see what he/she will be executing (by looking at actual Launcher) before actually executing it. Bookmark itself providing only the name that user gave it, it does not tell what type of bookmarked launcher will be executed and what kind of configuration information it contains. User would rather use bookmarks to locate needed launcher rather than execute them directly. If user still wants to execute bookmarked launcher directly without looking at it first, then such bookmark should be created with check mark in front of its name.

Opening LauncherTree bookmark menu via drop-down arrow of TreeSearch button

Opening LauncherTree bookmark menu via drop-down arrow of TreeSearch button

After looking at the other automated terminals one can see that most of them have customized button bar at the bottom of the terminal window and allow the user to assign commands and scripts to the named buttons on the terminal’s customized button bar. Those button names are given by the user and they may not be very clear as to what action button will be performing when it is pressed. While LauncherTree is very powerful way to maintain and execute user connections/commands/script and plugins, accessing predefined connections/commands/script and plugins directly from terminal window or workspace window (without having to open full LauncherTree all the time) has its own appeal for simple use.

To execute predefined connections/commands/script and plugins directly from terminal window or workspace window (without having to open full LauncherTree all the time) in the new version of Proxy32 (May 9th 2012) I have added two new buttons (one in workspace window and one in terminal window) to invoke the same LauncherTree Bookmark menu. The advantage is that bookmarked launchers can now be executed without even having LauncherTree window visible.

Accessing LauncherTree bookmarks menu via button in the Menubar of workspace window (with LauncherTree window hidden)

Accessing LauncherTree bookmarks menu via button in the Menubar of workspace window (with LauncherTree window hidden)

Accessing LauncherTree bookmarks menu via button in terminal window (while LauncherTree window is hidden)

Accessing LauncherTree bookmarks menu via button in terminal window (while LauncherTree window is hidden)