Offset Null Entertainment, LLC Software and Graphic Design Solutions

18Jan/13

BlowTorch v2 New Features Guide

There is a demo video that I made about a year ago that shows how to use some of the new features. Some things had changed since then and I am in the process of recording a newer video and getting a better visual demonstration of how the features work. But here is some text as well as the old video.

http://www.youtube.com/watch?v=s02ga1Xfsyg
The video has some things that have changed (namely that little tab on the button set editor has been folded into the android menu system) as well as things that aren't available at the current moment (like the stat/vitals window, map and the scrollable container). This demo was very hacked together when the plugin system was still very very green and it was house of cards. These features are certainly coming back, but I need to port them over from the old hacked together version and clean up the scripts. The miniwindow system is not the most straightforward thing to explain.

New Menu System:

In order to embrace some of the new operating system features added in Android Honeycomb (3.0) and beyond, I needed to adopt the "Action Bar" style menus that are required of newer android applications. The result is a transparent menu button in the upper right of the screen that will reveal the new menu options. The menu has been reorganized and some of the old features involving settings management have been moved into the main menu instead of in the "Options" menu.

Plugin System:

I'm not going to put much detail here about this for now, but plugins are loaded through the "Plugins" option item from the menu. Pressing MENU->Plugins will open a dialog that lists the currently installed plugins. This dialog has 2 buttons at the bottom, the left one is the "Load" button that will launch the plugin loading dialog which is essentially a basic file system explorer that targets the /BlowTorch/plugins/ directory on the sdcard and searches out BlowTorch plugin files. Only files that are valid plugins and directories will be listed here. Clicking on a plugin will load the info page for it and give the option to install it.

Auto-Reconnect:

BlowTorch can now attempt to automatically reconnect to the server when an interruption is encountered. Accessible through the Menu->Options->Service options as "Auto Reconnect?" and "Auto Reconnect Tries" options. This is somewhat experimental at this stage and may cause unintended battery drain in the wrong situation. Cell phones and tablets can have somewhat flaky wifi systems that drop out from time to time, when an interruption is encountered it will to reconnect after 3 seconds. Sometimes this is not long enough and the actual "network hardware" of the device has shut off, when this happens it gives the system 20 seconds to bring back up the interface before trying again. If it does not reconnect after the number of retries allowed it will give up the ghost it will stop trying. There is an instance where this will cause problems though, which is if there is a problem with the login info, e.g. an invalid password to aardwolf or automatic-login triggers have been disabled, where the connection will successfully connect, and sit at the login prompt until it is disconnected (by the server), in which case the automatic reconnect will kick in and a viscous cycle of disconnects and reconnects will happen until the user intervenes.

Multiple Connections:

BlowTorch can now connect to multiple servers at once. Doing so is rather kludgey at this point but here is how to do it. Open the launcher and pick a connection from the list, after it is opened and connected press the BACK button and answer Yes to keeping the service alive in the background. The launcher now displays "open" connections in green. Pick a different connection from the list and it will open that connection and remain connected to the already connected server. Switching back and fourth at this point is not great at this point and the only way to do it is to hit BACK and answer Yes to the dialog, and then pick the desired connection from the list. There will be better methods in the future but for now this is how it is done.

Text Selection:

Simply long press text in the chat window to launch the text selection widget. There are 8 clickable regions of the widget and are enumerated as follows

  • Clicking offset center (left, right, up or down) - The widget will move the selected cursor 1 unit in that direction.
  • Center click and drag - moves the selected cursor to follow your finger.
  • Copy - copies the selected text to the clipboard.
  • Close - closes the selection widget.
  • Switch Cursor - switches the cursor to the other selection boundary.

That is pretty much it at this point. The selection cursors can be dragged to non text areas, this is intentional.

Toggle Triggers and Aliases:

Selecting an item from the Triggers or Aliases dialog now pops out a toolbar rollout with quick options to toggle, modify or delete the item. To close the toolbar rollout click on the tab or the row item (off of the toolbar).

More Trigger Response Actions:

These are available through the trigger editor dialog just like all the old features (toast, ack or notification). The new options are

  • Gag Triggered Line - this will remove the triggered line from the output. There is also an option to send it to a different window than the output window but that is an advanced thing and will be better outlined in the scripting section.
  • Replace Triggered Text - Does exactly what it says, this will replace the triggered text with the given text.
  • Colorize Triggered Text - Colorize the triggered text with a custom foreground and background color. Colors at this point are limited to xterm 256 colors and only 1 foreground/background color can be supplied.
  • Execute script function - This will call the given script function when the trigger fires. There is more info coming about this in the scripting section.

New Button System:

This section deserves its own page and will in due time. I would suggest watching the demo video section that shows how to use it. The major difference is the new button set editor and the ditching of the long press to move and long press + hold to launch the editor. In the new system long pressing a button will launch the button set editor. In this mode the MENU buttons change (to save, cancel and options). It has a grid that is automatically set to the dimensions of the default button size (at this point the origin of the grid is always at 0,0 in the upper left and there is no offset option). This is a list of the UI actions that can be done
  • Clicking in empty space - will create a new button.
  • Clicking on a button - Selects the button.
  • Clicking on a selected button - will bring up the MOVE, DELETE or EDIT option dialog.
  • Alternative: Click and drag a button - it will start moving to follow your finger. Once a button has started moving it is in "move mode" denoted by the transparent selection box over it. Clicking anywhere off the button will exit the move mode and place the button at the new coordinates.
  • Click and drag starting on empty space - This will start a selection marquee box that can select multiple buttons. These group selected buttons may be edited or moved in the same way a single button can be. This can be used to quickly align, change color or label size
  • Clicking BACK will cancel all changes made in the editor - This is not exactly how I want this to work, in the future there will be a dialog asking to discard changes.
  • To save changes, press the green checkmark button from the Action Bar or press MENU->Save.
  • The button set editor has its own set of options that can be launched through the menu, these options at this time include
    • Grid snapping toggle - controls weather the buttons will snap to the grid.
    • Button set defaults - this is the same dialog that is shown when long pressing and item from the button set dialog in the old version.
    • Grid width and height - I don't like these on sliders, but for now that is how they work. Adjusting these should re-draw the grid in real time so changes can be seen.
    • Background Transparency - if you want to align buttons to a multi-window setup and need to see where the windows are, this can be used to adjust the opacity of the grid layer.
    • Selection box test - this radio button controls the test used by the selection box to see if the button will be selected
      • Intersect - with this option selected, any button that touches the selection box will be selected
      • Contains - with this option selected, a button will only be selected of it is completely contained within the selection box.
That is about it for the quick and dirty details of the new button system. Currently at this point multi finger clicks and gestures are not recognized or processed, this will change in the future.
Filed under: BlowTorch Comments Off
Comments (0) Trackbacks (0)

Sorry, the comment form is closed at this time.

No trackbacks yet.