1. As far as the icons, it seems the default gravity was changed at some point from 100 to -1, meaning that icons added to the toolbar by apps end up at the beginning instead of the end. You can make them appear at the end by manually specifying a toolbar gravity as follows:
cyAction.setToolbarGravity(100.0f); // for CyActions
// or
taskFactoryProps.setProperty("toolBarGravity", "100.0f"); // for Task Factories
2. To add a separator, you would have to get the JToolBar object using CySwingApplication's getToolBar method, and then call addSeparator(), which will add a separator at the end of the toolbar.
3. The toolbar icons update their state when a row value is set because that state is automatically updated each time the state is changed in Cytoscape. It is determined using either the TaskFactory.isReady() method (for TaskFactory), or the value of the enableFor property (for AbstractCyAction or TaskFactory - specified in properties object or AbstractCyAction constructor).
Acceptable values for the enableFor property can be found at:
Hope this helps...
Tim