Widget Notes

The UI-Widgets Package library has a couple of nodes.

Widget shortcut – can assign shortcuts to the widget as a whole
Widget toolbar – opens a toolbar when the widget is active and closes it along with the widget

The shortcuts only seems to work with simple lower case characters, numbers and some lower case symbols.
The toolbar only works with 1 toolbar at a time. More than one and they sit on top of each other. It seems to open the toolbar near the mouse position.

KeyfilterOut can be connected to the KeyfilterIn to make combinations. For example the Ctrl state nodes KeyfilterOut can be connected to a Mouse LDrag KeyfilterIn and the result is LDrag won’t do anything unless the Ctrl button is also pressed.

Keyboard button state node Key name input can be set to ascii characters and values found in the shortcut_description.txt found in the Scripts folder. Upper case or lower case does not matter. Shifted non-alpha-numerics do not work and are ignored.

The Axis slider widget node has in invalid value in the XRangeHi and YRangeHi connectors. It acts like the value is set to 0.0 They must be changed from the 100.00 value indicated to some other value before it will work. Other widget nodes may have the same issue.

tS WindowsManager Notes

WindowsManager.CloseToolbar operates on the ID not the Prototype of the toolbar

WindowsManager.OpenToolbarFromPrototype(“Main”, 100, 100, 0, 0); uses the Prototype not the ID these values 100,100 is location, 0,0 are dummy size to just fit the toolbar

//frame snapping constants
//_WindowsManager.h
//enum _tagRtWindowCorner
//} 	RtWindowCorner;
WINDOW_CORNER_TOP	= 0
WINDOW_CORNER_BOTTOM	= 1
WINDOW_CORNER_LEFT	= 2
WINDOW_CORNER_RIGHT	= 3
WINDOW_CORNER_CENTER	= 4
WINDOW_CORNER_VERTICAL_CENTER	= 5
WINDOW_CORNER_HORIZONTAL_CENTER	= 6
WINDOW_CORNER_CLIENT_CENTER	= 7
WINDOW_CORNER_CLIENT_VERTICAL_CENTER	= 8
WINDOW_CORNER_CLIENT_HORIZONTAL_CENTER	= 9
WINDOW_CORNER_LEFT_TOP	= 10
WINDOW_CORNER_LEFT_BOTTOM	= 11
WINDOW_CORNER_RIGHT_TOP	= 12
WINDOW_CORNER_RIGHT_BOTTOM	= 13
WINDOW_CORNER_CLIENT_TOP	= 14
WINDOW_CORNER_CLIENT_BOTTOM	= 15
WINDOW_CORNER_CLIENT_LEFT	= 16
WINDOW_CORNER_CLIENT_RIGHT	= 17
WINDOW_CORNER_CLIENT_LEFT_TOP	= 18
WINDOW_CORNER_CLIENT_LEFT_BOTTOM	= 19
WINDOW_CORNER_CLIENT_RIGHT_TOP	= 20
WINDOW_CORNER_CLIENT_RIGHT_BOTTOM	= 21
WINDOW_CORNER_TITLEBAR_RIGHT_TOP	= 22

//only seems to work for actual corners, and offsets set to 0
//WINDOW_CORNER_CLIENT is target and source is WINDOW_CORNER
//snaps the source frame to the target, the second to the first
//HRESULT STDMETHODCALLTYPE SnapFrameToFrameEx( 
//            /* [in] */ BSTR bszFrameTarget,
//            /* [in] */ BSTR bszFrameSource,
//            /* [in] */ VARIANT iFrameTargetCorner,
//            /* [in] */ VARIANT iFrameSourceCorner,
//            /* [in] */ VARIANT iOffsetX,
//            /* [in] */ VARIANT iOffsetY)

//can not figure this one out at all, same args except no offsets
//STDMETHODCALLTYPE SnapFrameToFrame(