TEMPORARY - Move to State model once you get height algorithm working
Differences between JMenu and JPopup menu make the algorithm somewhat
tempermental and a bit unpredictable.
Special method that handles the drop in a different thread from the
calling thread (due to some nasty drag and drop event handling bugs that cause
deadlocks if certain gui operations are done at dnd drop event time)
This interface provides means to access the DTD definitions in a manner
that can be independent of whatever third party underlying structures
are used for the implementation.
This enables or disables the proper paste items in the paste menu based on
the node parameter as the parent or sibling and a peek at the Transferable in the
clipboard.
This is a generic node editing panel which provides a component for each attribute
listed with the element it's created to edit, along with a text box for PCDATA.
Create a component based on the attribute type, and get the default from
the node, or if the node doesn't have it set, get the default value from
the attribute definition itself
insert at index (if index > menusize append item)
JMenus do not have a insert(Component, index)
Hence removeAll, then re-add everything inserting the new one
when appropriate.
This is a special encapsulation of a DOM Node because we need to override the
toString() method to return the proper representation for the JTreeTable.
Special version of msg that displays messages in a different thread from the
calling thread (due to some nasty drag and drop event handling bugs that cause
deadlocks if certain gui operations are done at dnd drop event time)