Java peculiarities

Hi,

after trying for some time to make sense of the Java samples I did successfully create a 3d view where I could display and select objects without the nasty C++ short cut of the samples. But there is a bit that still puzzles me. One thing are inconsistent states during initialization of 3d views.

In the sample all tabs are constructed in advance and there 3d views are made visible when they are selected. Making the 3d views visible in the constructor of the panel leads to crashes (at least on Linux) which might be uninitialized pointers. I can work around this but a hint what I do wrong would be nice.

The other thing is that menus are obscured by the 3d view. Not only menus but also tooltips except the tooltips of the buttons of my SamplePanel derived panel. Did I anything wrong or is there an especially nasty hack aroung?

Any hints are really appreciated.

vlsolutions's picture

Hi,

Swing doesn't like heavyweight components (awt canvases). You can avoid the menu and tooltip overlay problem with :
TooltipManager.sharedInstance().setLightWeightPopupEnabled(false);
JPopupMenu.setDefaultLightWeightPopupEnabled(false).

This will resolve your overlapping problems (but not the linux inconsistent states)

But be aware not to use open cascade with JInternalFrame : there is no workaround in that case, and overlay problems will remain.

[plug]
You can also have a look at our docking framework (http://www.vlsolutions.com) which has been designed to replace internal frames by a custom set of components to allow overlapping of heavyweight components. It's dual licensed (GPL-like or commercial).
[/plug]

Torsten Sadowski's picture

Thank you, that was it.