Given a node, or node id, create a window object that can be opened, closed, and dragged.
Class Options:
The following are the options that can be set in the window's constuctor
windowShow: false, a function to call on the window when you want to show it. if false, it will set the display style to block.
the function should take one argument, the window element
windowHide: false, a function to call on the window when you want to show it. if false, it will set the display style to none
the function should take one argument, the window element
windowCheck: false, a function to call on The window when see if it is 'hidden' or 'shown' if false, it will checkthe display style state
to work with the default (false) windowHide and windowShow
the function should take one argument, the window wlement. It should also return true (if 'visible') or false (if not 'visible')
windowDraggable: true, make the window draggable. only applies if windowHide/Show/Check are false
windowDragButtonClass: 'window_drag', the class of an element to idenfity a dragging handle for a floating draggable window. Defaults to 'window_drag_handle'. only matches elements contained within the window
windowDragContainer: false, the container to limit dragging to. Defaults to false meaning there is no containment
windowFloats: false, make the window a floater (if no function is specifed) otherwise affects the style.visible propert.
if false, then the window is not draggable. You can also make a window not floatable by setting the class not_floats
windowShowClass: false, defaults to false. if set to a string, it is the class we set a window to if the window is not a floater nor a function
when we show the class. To set the class, both windowShowClass and windowHideClass need to be strings (possibly empty)
windowHideClass: false, defaults to false. if set to a string, it is the class we set window to if the window is not a floater nor a function
windowPositionVert: 'upper_viewable', where to place the windowmake the window vertically. only applies if windowShow is false
valid options 'upper_viewable' (defaul) , 'lower_viewable', 'center_viewable', 'upper', 'lower' 'center' 'mouse_above' 'mouse_below'
or none of these which means we dont do anything
windowPositionHoriz: 'center_viewable', where to place the windowmake the window vertically. only applies if windowShow is false
valid options 'center_viewable' (default), 'left_viewable', 'right_viewable' , 'left', 'right' 'center' or none of these which means we dont do anything
windowZIndex: 50000, the default z-index set for a floating window
windowRepositions: false, set to true to reposition a floating window on a scroll/pgup event
windowRepositionMorphDuration: 50,
windowLeftPad: 10,
windowRightPad: 10,
windowTopPad: 10,
windowBottomPad: 10,
windowHideOnKeys: [], For example, 27=escape, 18=CTRL-W
windowHideButtonClass: 'window_hide' applies to floating windows and defaults to 'window_hide'.
If set, it is a class we check within the window element to attach a hide on click event
Optional: I2CE_ClassHash.js. If present, window options can be loaded from the class hash values.
Floating Window by class value
The content of the floating window -- 2
You should be able to close me.
You should NOT be able to drag me.
Floating Draggable Window by class value
You should be able to drag me.
The content of the floating draggable window.
This window should reposition on a scroll/resize.
You should be able to close me.