Zajima me vas nazor na tento problem:

Mam swingovou aplikaci, v ni je jako soucast navigace JTree a JList.
V JTree je seznam vsech formularu, v JList je seznam otevrenych formularu.
JList prebira polozky z JTree (stejne instance).

Zadani bylo ze pokud je formular otevren pro editaci, ma se to v JListu nejak
projevit. Rozhodl jsem se pridat prefix '(edit)'. Problem byl jak do kodu naroubovat tento priznak. Resil jsem to booleanem, gety+sety a upravenou toString.

Stejny prefix se ale zacal objevovat i v puvodnim JTree. Asi jsem si ulechcil praci a pouzil StackTrace:

 private String getPrefix() {
     //pokud je volan z jTree, tak se na nej vykasli a vrat ""
     if("javax.swing.tree.DefaultTreeCellRenderer".equals(
         Thread.currentThread().getStackTrace()[6].getClassName()))
         return "";
          String prefix="";
     if(editing)
         prefix = "(edit) ";
     return prefix;
 }

Zajima me jestli je tohle pouziti korektni, nebo je to prasarna. Dik Jan Kotek



Odpovedet emailem