Ignore:
Timestamp:
07/08/13 23:04:56 (11 years ago)
Author:
psniegowski
Message:

HIGHLIGHTS:

CHANGELOG:
Get data also on tree expansion.

Use nice framstick icon for empty nodes.

Update panel after reload if it is current.

Add shallow reload procedure.

Cut Gui prefix from several tree classes.

Bring back counter of GuiTreeNode?.

Use IdentityHashMap? were it is more appriopriate.

Remove TreeListener?.

Do not use TreeListener? in GUI.

Minor change.

Done migration to GuiTreeModel?.

BrowserTest? in that version always crashes frams.linux.

Move rendering implementation into GuiAbstractNode?.

Use hand-crafted list in GuiTreeNode?.

Generally, it would be a great place for WeakIdentityHashMap?
(but there is none in Java Collection Framework).

Remove superfluous logging.

Fix bug in GuiTreeNode?.

Use IdentityHashMap? instead of HashMap?.

Improve structure update.

Filter out invalid uids in UniqueListAccess?.

Improve TreeCellRenderer?.

Add filtering in TrackConsole?.

Improve TreeModel?.

More changes.

More improvements.

More changes.

Remove TreeNode?.

Support MetaNode? in the GuiTreeModel?.

Implement more in GuiTreeModel?.

Add CompositeParam? interface to FramsClass? and AccessInterface?.

Allow access by number to UniqueList?.

Add UidComparator?.

Use TreeMap? as a default accessee in unique list.

It keeps order of keys.

Introduce classes to use with new TreeModel?.

Another step.

Migrate from TreeNode? to Node in many places.

Remove some uses of TreeNode? as DefaultMutableTreeNode?.

Remove Path from TreeNode? interface.

Remove Path from TreeNode?.

Add Path recration from node feature.

Reworking TreeCellRenderer?.

Minor change of TreeOperations? interface.

Remove last methods from TreeNode?.

Another minor step.

Do not store reference to TreeAtFrame? in TreeNode?.

Add proxy exceptionHandler to StatusBar?.

Move panels management to TreeAtFrame?.

Store localChanges in the NodeAtFrame?.

More cleanup.

Move name computing to TreeCellRenderer?.

Move tooltip and icon computations to TreeCellRenderer?.

More dispatches removed.

Remove most dispatching from TreeNode?.

TreeNode? does not actually redispatch tasks.

Make Tree embedded in Browser use SwingDispatcher?.

Make lazy binding of Tree with Dispatcher.

Minor changes.

Organizational change in AbstractTree?.

Make AbstractTree? compose from Thread instead of inherit from it.

Make SwingDispatcher? and AtOnceDispatcher? Joinable compatible.

Add ListPanelProvider?.

Improve Controls readonly and enabled handling.

Properly pass ExceptionHandlers? in more places.

Make Tree.get accept ValueParam?.

  • This is to allow access number of list elements.

Remove not needed get redirection in ClientAtServer?.

Rename tryResolve to tryGet.

Unify tryResolveAndGet into tryResolve.

Remove resolveTop from Tree interface.

Make Tree.get accept Future<Path>.

Use get to implement resolveTop also in ObjectTree?.

Unify resolveTop and get in RemoteTree?.

Another minor step.

More minor changes in tree operations.

Minor organizational changes.

In RemoteTree? first fetch info for root.

Reworking resolving.

Minor changes.

Make ListAccess? return proxy iterators (instead of creating temporary collection).

Let AccessInterface? return Iterable<Param>.

Improve resolving.

More improvements.

First working completion in ManagedConsole?.

Rename resolve to resolveTop.

This reflects the actuall functionality.

Change semantic of tryResolve and tryResolveAndGet.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • java/main/src/main/java/com/framsticks/gui/Browser.java

    r97 r98  
    1414import com.framsticks.util.dispatching.ExceptionResultHandler;
    1515import com.framsticks.util.dispatching.Future;
    16 import com.framsticks.util.dispatching.FutureHandler;
    1716import com.framsticks.util.dispatching.Joinable;
    1817import com.framsticks.util.dispatching.JoinableCollection;
     
    4645
    4746        protected final List<PopupMenuEntryProvider> popupMenuEntryProviders = new LinkedList<>();
     47        // protected final SwingDispatcher
    4848
    4949        protected final MainFrame mainFrame;
     
    6363
    6464                mainFrame = new MainFrame(Browser.this);
     65
     66                // mainFrame.getStatusBar().setExceptionHandler(ThrowExceptionHandler.getInstance());
     67
    6568                addFrame(mainFrame);
    6669
     
    120123        public void addTree(Tree tree) {
    121124                log.info("adding tree: " + tree);
     125                tree.setDispatcher(new SwingDispatcher<Tree>());
    122126                trees.add(tree);
    123127        }
    124128
    125129        public void autoResolvePath(final String path, final Future<Path> future) {
    126                 final Tree i = trees.get("localhost");
    127                 i.dispatch(new RunAt<Tree>(future) {
    128                         @Override
    129                         protected void runAt() {
    130                                 TreeOperations.resolveAndGet(i, path, new FutureHandler<Path>(future) {
    131                                         @Override
    132                                         protected void result(final Path p) {
    133                                                 future.pass(p);
    134                                                 mainFrame.dispatch(new RunAt<Frame>(future) {
    135                                                         @Override
    136                                                         protected void runAt() {
    137                                                                 mainFrame.goTo(p);
    138                                                         }
    139                                                 });
    140                                         }
    141                                 });
    142                         }
    143                 });
     130                // final Tree i = trees.get("localhost");
     131                // i.dispatch(new RunAt<Tree>(future) {
     132                //      @Override
     133                //      protected void runAt() {
     134                //              TreeOperations.tryGet(i, path, new FutureHandler<Path>(future) {
     135                //                      @Override
     136                //                      protected void result(final Path p) {
     137                //                              future.pass(p);
     138                //                              mainFrame.dispatch(new RunAt<Frame>(future) {
     139                //                                      @Override
     140                //                                      protected void runAt() {
     141                //                                              mainFrame.goTo(p);
     142                //                                      }
     143                //                              });
     144                //                      }
     145                //              });
     146                //      }
     147                // });
    144148        }
    145149
     
    284288        }
    285289
    286         // @Override
    287         // public boolean isDone() {
    288         //      return frames.isDone() && trees.isDone();
     290        // final protected Map<EventParam, Subscription<?>> userSubscriptions = new HashMap<>();
     291        // public boolean hasSubscribed(EventParam param) {
     292        //      assert frame.isActive();
     293        //      return userSubscriptions.containsKey(param);
    289294        // }
     295
     296        // public void unsubscribe(EventParam eventParam) {
     297        //      assert frame.isActive();
     298        //      if (!hasSubscribed(eventParam)) {
     299        //              log.error("could not unsubscribe from " + eventParam);
     300        //              return;
     301        //      }
     302        //      userSubscriptions.get(eventParam).unsubscribe(new LoggingStateCallback(log, "unsubscribed " + eventParam));
     303        //      userSubscriptions.remove(eventParam);
     304        // }
     305
     306
     307
     308
    290309}
Note: See TracChangeset for help on using the changeset viewer.