You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pivot.apache.org by gb...@apache.org on 2010/06/24 22:55:09 UTC

svn commit: r957711 - in /pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer: ./ basic/ boundedrange/ buttons/ calendars/ colorchoosers/ filebrowsing/ layout/ lists/ menus/ navigation/ progress/ separators/ tables/ text/ trees/

Author: gbrown
Date: Thu Jun 24 20:55:07 2010
New Revision: 957711

URL: http://svn.apache.org/viewvc?rev=957711&view=rev
Log:
Update Component Explorer to use Bindable; consolidate example BXML files into a single directory (to reduce package sprawl when viewed in Eclipse).

Added:
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorerWindow.java
      - copied, changed from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/Ruler.java
      - copied, changed from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/Ruler.java
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerListener.java
      - copied, changed from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/RulerListener.java
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerSkin.java
      - copied, changed from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/RulerSkin.java
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/accordion.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/accordion.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/activity_indicator.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/progress/activity_indicator.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/background.png
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/background.png
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/bell.png
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/bell.png
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/border.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/border.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/box_pane.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/box_pane.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/calendar.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/calendars/calendar.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/calendar_button.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/calendars/calendar_button.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/card_pane.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/card_pane.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/checkbox.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/buttons/checkbox.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/clock.png
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/clock.png
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/coins.png
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/menus/coins.png
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/color_chooser.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/colorchoosers/color_chooser.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/color_chooser_button.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/colorchoosers/color_chooser_button.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer_window.bxml
      - copied, changed from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/expander.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/expander.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/file_browser.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/filebrowsing/file_browser.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/flow_pane.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/flow_pane.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/form.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/form.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/grid_pane.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/grid_pane.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/house.png
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/house.png
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/image_view.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/basic/image_view.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/label.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/basic/label.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/link_button.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/buttons/link_button.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/list_button.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/lists/list_button.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/list_view.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/lists/list_view.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/menu_bar.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/menus/menu_bar.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/menu_button.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/menus/menu_button.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/meter.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/progress/meter.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/panel.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/panel.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/panorama.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/panorama.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/push_button.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/buttons/push_button.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/radio_button.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/buttons/radio_button.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/resultset_next.png
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/buttons/resultset_next.png
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/rollup.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/rollup.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/scroll_bar.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/boundedrange/scroll_bar.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/scroll_pane.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/scroll_pane.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/separator.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/separators/separator.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/slider.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/boundedrange/slider.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/spinner.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/boundedrange/spinner.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/split_pane.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/split_pane.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/stack_pane.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/stack_pane.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/star.png
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/star.png
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/tab_pane.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/tab_pane.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/table_pane.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/table_pane.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/table_view.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/tables/table_view.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/text_area.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/text/text_area.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/text_area.txt
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/text/text_area.txt
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/text_input.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/text/text_input.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/tree_view.bxml
      - copied unchanged from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/trees/tree_view.bxml
Removed:
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/basic/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/boundedrange/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/buttons/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/calendars/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/colorchoosers/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer.bxml
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/filebrowsing/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/layout/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/lists/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/menus/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/progress/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/separators/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/tables/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/text/
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/trees/
Modified:
    pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java

Modified: pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java
URL: http://svn.apache.org/viewvc/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java?rev=957711&r1=957710&r2=957711&view=diff
==============================================================================
--- pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java (original)
+++ pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java Thu Jun 24 20:55:07 2010
@@ -16,325 +16,28 @@
  */
 package org.apache.pivot.tutorials.explorer;
 
-import java.io.BufferedInputStream;
-import java.io.InputStream;
-import java.io.IOException;
-import java.net.URL;
-
 import org.apache.pivot.beans.BeanSerializer;
-import org.apache.pivot.collections.List;
 import org.apache.pivot.collections.Map;
-import org.apache.pivot.collections.Sequence;
-import org.apache.pivot.collections.Sequence.Tree;
-import org.apache.pivot.collections.Sequence.Tree.Path;
-import org.apache.pivot.serialization.SerializationException;
-import org.apache.pivot.tools.wtk.ComponentPropertyInspector;
-import org.apache.pivot.tools.wtk.ComponentStyleInspector;
-import org.apache.pivot.tools.wtk.EventLogger;
 import org.apache.pivot.util.Resources;
 import org.apache.pivot.wtk.Application;
-import org.apache.pivot.wtk.ApplicationContext;
-import org.apache.pivot.wtk.Border;
-import org.apache.pivot.wtk.Button;
-import org.apache.pivot.wtk.ButtonGroup;
-import org.apache.pivot.wtk.ButtonGroupListener;
-import org.apache.pivot.wtk.Component;
-import org.apache.pivot.wtk.ComponentMouseButtonListener;
 import org.apache.pivot.wtk.DesktopApplicationContext;
 import org.apache.pivot.wtk.Display;
-import org.apache.pivot.wtk.Mouse;
-import org.apache.pivot.wtk.ScrollPane;
-import org.apache.pivot.wtk.ScrollPane.ScrollBarPolicy;
-import org.apache.pivot.wtk.SplitPane;
-import org.apache.pivot.wtk.TextArea;
-import org.apache.pivot.wtk.TreeView;
-import org.apache.pivot.wtk.TreeViewSelectionListener;
-import org.apache.pivot.wtk.Window;
-import org.apache.pivot.wtk.text.Document;
-import org.apache.pivot.wtk.text.PlainTextSerializer;
 
 public class ComponentExplorer implements Application {
-    private Window window = null;
-    private SplitPane splitPane = null;
-    private TreeView treeView = null;
-    private ScrollPane contentScrollPane = null;
-    private Border contentPane = null;
-    private TextArea sourceTextArea = null;
-    private ComponentPropertyInspector componentPropertyInspector = null;
-    private ComponentStyleInspector componentStyleInspector = null;
-    private EventLogger eventLogger = null;
-
-    private ButtonGroup horizontalScrollBarPolicyGroup = null;
-    private ButtonGroup verticalScrollBarPolicyGroup = null;
-    private Button horizontalAutoButton = null;
-    private Button horizontalFillButton = null;
-    private Button horizontalFillToCapacityButton = null;
-    private Button horizontalNeverButton = null;
-    private Button horizontalAlwaysButton = null;
-    private Button verticalAutoButton = null;
-    private Button verticalFillButton = null;
-    private Button verticalFillToCapacityButton = null;
-    private Button verticalNeverButton = null;
-    private Button verticalAlwaysButton = null;
+    private ComponentExplorerWindow window = null;
 
     public static final String CLASS_PROPERTY = "class";
 
     @Override
-    public void startup(Display display, Map<String, String> properties)
-        throws Exception {
-        Resources resources = new Resources(getClass().getName());
-        BeanSerializer beanSerializer = new BeanSerializer(resources);
-        window = (Window)beanSerializer.readObject(this, "component_explorer.bxml");
-
-        splitPane = beanSerializer.getValue("splitPane");
-        treeView = beanSerializer.getValue("treeView");
-        contentScrollPane = beanSerializer.getValue("contentScrollPane");
-        contentPane = beanSerializer.getValue("contentPane");
-        sourceTextArea = beanSerializer.getValue("sourceTextArea");
-        componentPropertyInspector = beanSerializer.getValue("componentPropertyInspector");
-        componentStyleInspector = beanSerializer.getValue("componentStyleInspector");
-        eventLogger = beanSerializer.getValue("eventLogger");
-
-        horizontalScrollBarPolicyGroup = beanSerializer.getValue("horizontalScrollBarPolicyGroup");
-        verticalScrollBarPolicyGroup = beanSerializer.getValue("verticalScrollBarPolicyGroup");
-        horizontalAutoButton = beanSerializer.getValue("horizontalAutoButton");
-        horizontalFillButton = beanSerializer.getValue("horizontalFillButton");
-        horizontalFillToCapacityButton = beanSerializer.getValue("horizontalFillToCapacityButton");
-        horizontalNeverButton = beanSerializer.getValue("horizontalNeverButton");
-        horizontalAlwaysButton = beanSerializer.getValue("horizontalAlwaysButton");
-        verticalAutoButton = beanSerializer.getValue("verticalAutoButton");
-        verticalFillButton = beanSerializer.getValue("verticalFillButton");
-        verticalFillToCapacityButton = beanSerializer.getValue("verticalFillToCapacityButton");
-        verticalNeverButton = beanSerializer.getValue("verticalNeverButton");
-        verticalAlwaysButton = beanSerializer.getValue("verticalAlwaysButton");
-
-        treeView.getTreeViewSelectionListeners().add(new TreeViewSelectionListener.Adapter() {
-            @Override
-            public void selectedPathsChanged(TreeView treeView,
-                Sequence<Path> previousSelectedPaths) {
-                Component component = null;
-
-                Object node = treeView.getSelectedNode();
-                if (node instanceof ComponentNode) {
-                    ComponentNode componentNode = (ComponentNode)node;
-                    URL url = componentNode.getSrc();
-
-                    Document document = null;
-
-                    try {
-                        PlainTextSerializer plainTextSerializer = new PlainTextSerializer("UTF-8");
-                        InputStream inputStream = new BufferedInputStream(url.openStream());
-
-                        try {
-                            document = plainTextSerializer.readObject(inputStream);
-                        } finally {
-                            inputStream.close();
-                        }
-                    } catch (IOException exception) {
-                        throw new RuntimeException(exception);
-                    } catch (SerializationException exception) {
-                        throw new RuntimeException(exception);
-                    }
-
-                    sourceTextArea.setDocument(document);
-
-                    BeanSerializer beanSerializer = new BeanSerializer();
-                    try {
-                        component = (Component)beanSerializer.readObject(url);
-                    } catch (IOException exception) {
-                        throw new RuntimeException(exception);
-                    } catch (SerializationException exception) {
-                        throw new RuntimeException(exception);
-                    }
-
-                    switch (componentNode.getHorizontalScrollBarPolicy()) {
-                    case AUTO:
-                        horizontalScrollBarPolicyGroup.setSelection(horizontalAutoButton);
-                        break;
-                    case FILL:
-                        horizontalScrollBarPolicyGroup.setSelection(horizontalFillButton);
-                        break;
-                    case FILL_TO_CAPACITY:
-                        horizontalScrollBarPolicyGroup.setSelection(horizontalFillToCapacityButton);
-                        break;
-                    case NEVER:
-                        horizontalScrollBarPolicyGroup.setSelection(horizontalNeverButton);
-                        break;
-                    case ALWAYS:
-                        horizontalScrollBarPolicyGroup.setSelection(horizontalAlwaysButton);
-                        break;
-                    }
-
-                    switch (componentNode.getVerticalScrollBarPolicy()) {
-                    case AUTO:
-                        verticalScrollBarPolicyGroup.setSelection(verticalAutoButton);
-                        break;
-                    case FILL:
-                        verticalScrollBarPolicyGroup.setSelection(verticalFillButton);
-                        break;
-                    case FILL_TO_CAPACITY:
-                        verticalScrollBarPolicyGroup.setSelection(verticalFillToCapacityButton);
-                        break;
-                    case NEVER:
-                        verticalScrollBarPolicyGroup.setSelection(verticalNeverButton);
-                        break;
-                    case ALWAYS:
-                        verticalScrollBarPolicyGroup.setSelection(verticalAlwaysButton);
-                        break;
-                    }
-                } else {
-                    sourceTextArea.setText((String)null);
-                }
-
-                contentPane.setContent(component);
-                componentPropertyInspector.setSource(component);
-                componentStyleInspector.setSource(component);
-                eventLogger.setSource(component);
-                eventLogger.clearLog();
-            }
-        });
-
-        treeView.getComponentMouseButtonListeners().add(new ComponentMouseButtonListener.Adapter() {
-            @Override
-            public boolean mouseClick(Component component, Mouse.Button button, int x, int y,
-                int count) {
-                if (button == Mouse.Button.LEFT && count == 2) {
-                    Path path = treeView.getNodeAt(y);
-
-                    if (path != null) {
-                        List<?> treeData = treeView.getTreeData();
-                        Object node = Tree.get(treeData, path);
-
-                        if (node instanceof List<?>) {
-                            treeView.setBranchExpanded(path, !treeView.isBranchExpanded(path));
-                        }
-                    }
-                }
-
-                return false;
-            }
-        });
-
-        horizontalScrollBarPolicyGroup.getButtonGroupListeners().add
-            (new ButtonGroupListener.Adapter() {
-            @Override
-            public void selectionChanged(ButtonGroup buttonGroup, Button previousSelection) {
-                Button button = buttonGroup.getSelection();
-
-                ScrollBarPolicy horizontalScrollBarPolicy = null;
-
-                if (button == horizontalAutoButton) {
-                    horizontalScrollBarPolicy = ScrollBarPolicy.AUTO;
-                } else if (button == horizontalFillButton) {
-                    horizontalScrollBarPolicy = ScrollBarPolicy.FILL;
-                } else if (button == horizontalFillToCapacityButton) {
-                    horizontalScrollBarPolicy = ScrollBarPolicy.FILL_TO_CAPACITY;
-                } else if (button == horizontalNeverButton) {
-                    horizontalScrollBarPolicy = ScrollBarPolicy.NEVER;
-                } else if (button == horizontalAlwaysButton) {
-                    horizontalScrollBarPolicy = ScrollBarPolicy.ALWAYS;
-                }
-
-                if (horizontalScrollBarPolicy != null) {
-                    contentScrollPane.setHorizontalScrollBarPolicy(horizontalScrollBarPolicy);
-                }
-            }
-        });
-
-        verticalScrollBarPolicyGroup.getButtonGroupListeners().add
-            (new ButtonGroupListener.Adapter() {
-            @Override
-            public void selectionChanged(ButtonGroup buttonGroup, Button previousSelection) {
-                Button button = buttonGroup.getSelection();
-
-                ScrollBarPolicy verticalScrollBarPolicy = null;
-
-                if (button == verticalAutoButton) {
-                    verticalScrollBarPolicy = ScrollBarPolicy.AUTO;
-                } else if (button == verticalFillButton) {
-                    verticalScrollBarPolicy = ScrollBarPolicy.FILL;
-                } else if (button == verticalFillToCapacityButton) {
-                    verticalScrollBarPolicy = ScrollBarPolicy.FILL_TO_CAPACITY;
-                } else if (button == verticalNeverButton) {
-                    verticalScrollBarPolicy = ScrollBarPolicy.NEVER;
-                } else if (button == verticalAlwaysButton) {
-                    verticalScrollBarPolicy = ScrollBarPolicy.ALWAYS;
-                }
-
-                if (verticalScrollBarPolicy != null) {
-                    contentScrollPane.setVerticalScrollBarPolicy(verticalScrollBarPolicy);
-                }
-            }
-        });
-
-        Path initialSelectedPath = null;
-        Path firstComponentPath = null;
-
-        String classProperty = properties.get(CLASS_PROPERTY);
-
-        Tree.ItemIterator<?> itemIterator = Tree.depthFirstIterator(treeView.getTreeData());
-        while (itemIterator.hasNext()) {
-            Object node = itemIterator.next();
-
-            if (node instanceof ComponentNode) {
-                ComponentNode componentNode = (ComponentNode)node;
-                Path path = itemIterator.getPath();
-
-                if (firstComponentPath == null) {
-                    firstComponentPath = path;
-                }
-
-                if (classProperty != null) {
-                    // class property was set; open the corresponding
-                    // component node
-                    if (componentNode.getText().equals(classProperty)) {
-                        splitPane.setSplitRatio(0);
-                        splitPane.setLocked(true);
-
-                        initialSelectedPath = path;
-                        break;
-                    }
-                } else {
-                    // class property was *not* set; open the first component
-                    // node we find
-                    initialSelectedPath = path;
-                    break;
-                }
-            }
-        }
-
-        // Default the initial selected path to the first component
-        if (initialSelectedPath == null) {
-            initialSelectedPath = firstComponentPath;
-        }
-
-        if (initialSelectedPath != null) {
-            // Select the path
-            treeView.setSelectedPath(initialSelectedPath);
-
-            // Ensure that it's visible to the user
-            Path branchPath = new Path(initialSelectedPath, initialSelectedPath.getLength() - 1);
-            while (branchPath.getLength() > 0) {
-                treeView.expandBranch(branchPath);
-                branchPath.remove(branchPath.getLength() - 1, 1);
-            }
-
-            final Path path = initialSelectedPath;
-            ApplicationContext.queueCallback(new Runnable() {
-                @Override
-                public void run() {
-                    treeView.scrollAreaToVisible(treeView.getNodeBounds(path));
-                }
-            });
-        }
-
+    public void startup(Display display, Map<String, String> properties) throws Exception {
+        BeanSerializer beanSerializer = new BeanSerializer(new Resources(getClass().getName()));
+        window = (ComponentExplorerWindow)beanSerializer.readObject(getClass().getResource("component_explorer_window.bxml"));
+        window.setClassProperty(properties.get(CLASS_PROPERTY));
         window.open(display);
-
-        treeView.requestFocus();
     }
 
     @Override
-    public boolean shutdown(boolean optional) throws Exception {
+    public boolean shutdown(boolean optional) {
         if (window != null) {
             window.close();
         }
@@ -354,3 +57,4 @@ public class ComponentExplorer implement
         DesktopApplicationContext.main(ComponentExplorer.class, args);
     }
 }
+

Copied: pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorerWindow.java (from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java)
URL: http://svn.apache.org/viewvc/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorerWindow.java?p2=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorerWindow.java&p1=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java&r1=957549&r2=957711&rev=957711&view=diff
==============================================================================
--- pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorer.java (original)
+++ pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/ComponentExplorerWindow.java Thu Jun 24 20:55:07 2010
@@ -22,17 +22,16 @@ import java.io.IOException;
 import java.net.URL;
 
 import org.apache.pivot.beans.BeanSerializer;
+import org.apache.pivot.beans.Bindable;
+import org.apache.pivot.collections.Dictionary;
 import org.apache.pivot.collections.List;
-import org.apache.pivot.collections.Map;
 import org.apache.pivot.collections.Sequence;
-import org.apache.pivot.collections.Sequence.Tree;
 import org.apache.pivot.collections.Sequence.Tree.Path;
 import org.apache.pivot.serialization.SerializationException;
 import org.apache.pivot.tools.wtk.ComponentPropertyInspector;
 import org.apache.pivot.tools.wtk.ComponentStyleInspector;
 import org.apache.pivot.tools.wtk.EventLogger;
 import org.apache.pivot.util.Resources;
-import org.apache.pivot.wtk.Application;
 import org.apache.pivot.wtk.ApplicationContext;
 import org.apache.pivot.wtk.Border;
 import org.apache.pivot.wtk.Button;
@@ -40,7 +39,6 @@ import org.apache.pivot.wtk.ButtonGroup;
 import org.apache.pivot.wtk.ButtonGroupListener;
 import org.apache.pivot.wtk.Component;
 import org.apache.pivot.wtk.ComponentMouseButtonListener;
-import org.apache.pivot.wtk.DesktopApplicationContext;
 import org.apache.pivot.wtk.Display;
 import org.apache.pivot.wtk.Mouse;
 import org.apache.pivot.wtk.ScrollPane;
@@ -53,8 +51,9 @@ import org.apache.pivot.wtk.Window;
 import org.apache.pivot.wtk.text.Document;
 import org.apache.pivot.wtk.text.PlainTextSerializer;
 
-public class ComponentExplorer implements Application {
-    private Window window = null;
+public class ComponentExplorerWindow extends Window implements Bindable {
+    private String classProperty;
+
     private SplitPane splitPane = null;
     private TreeView treeView = null;
     private ScrollPane contentScrollPane = null;
@@ -80,33 +79,28 @@ public class ComponentExplorer implement
     public static final String CLASS_PROPERTY = "class";
 
     @Override
-    public void startup(Display display, Map<String, String> properties)
-        throws Exception {
-        Resources resources = new Resources(getClass().getName());
-        BeanSerializer beanSerializer = new BeanSerializer(resources);
-        window = (Window)beanSerializer.readObject(this, "component_explorer.bxml");
-
-        splitPane = beanSerializer.getValue("splitPane");
-        treeView = beanSerializer.getValue("treeView");
-        contentScrollPane = beanSerializer.getValue("contentScrollPane");
-        contentPane = beanSerializer.getValue("contentPane");
-        sourceTextArea = beanSerializer.getValue("sourceTextArea");
-        componentPropertyInspector = beanSerializer.getValue("componentPropertyInspector");
-        componentStyleInspector = beanSerializer.getValue("componentStyleInspector");
-        eventLogger = beanSerializer.getValue("eventLogger");
-
-        horizontalScrollBarPolicyGroup = beanSerializer.getValue("horizontalScrollBarPolicyGroup");
-        verticalScrollBarPolicyGroup = beanSerializer.getValue("verticalScrollBarPolicyGroup");
-        horizontalAutoButton = beanSerializer.getValue("horizontalAutoButton");
-        horizontalFillButton = beanSerializer.getValue("horizontalFillButton");
-        horizontalFillToCapacityButton = beanSerializer.getValue("horizontalFillToCapacityButton");
-        horizontalNeverButton = beanSerializer.getValue("horizontalNeverButton");
-        horizontalAlwaysButton = beanSerializer.getValue("horizontalAlwaysButton");
-        verticalAutoButton = beanSerializer.getValue("verticalAutoButton");
-        verticalFillButton = beanSerializer.getValue("verticalFillButton");
-        verticalFillToCapacityButton = beanSerializer.getValue("verticalFillToCapacityButton");
-        verticalNeverButton = beanSerializer.getValue("verticalNeverButton");
-        verticalAlwaysButton = beanSerializer.getValue("verticalAlwaysButton");
+    public void initialize(Dictionary<String, Object> context, Resources resources) {
+        splitPane = (SplitPane)context.get("splitPane");
+        treeView = (TreeView)context.get("treeView");
+        contentScrollPane = (ScrollPane)context.get("contentScrollPane");
+        contentPane = (Border)context.get("contentPane");
+        sourceTextArea = (TextArea)context.get("sourceTextArea");
+        componentPropertyInspector = (ComponentPropertyInspector)context.get("componentPropertyInspector");
+        componentStyleInspector = (ComponentStyleInspector)context.get("componentStyleInspector");
+        eventLogger = (EventLogger)context.get("eventLogger");
+
+        horizontalScrollBarPolicyGroup = (ButtonGroup)context.get("horizontalScrollBarPolicyGroup");
+        verticalScrollBarPolicyGroup = (ButtonGroup)context.get("verticalScrollBarPolicyGroup");
+        horizontalAutoButton = (Button)context.get("horizontalAutoButton");
+        horizontalFillButton = (Button)context.get("horizontalFillButton");
+        horizontalFillToCapacityButton = (Button)context.get("horizontalFillToCapacityButton");
+        horizontalNeverButton = (Button)context.get("horizontalNeverButton");
+        horizontalAlwaysButton = (Button)context.get("horizontalAlwaysButton");
+        verticalAutoButton = (Button)context.get("verticalAutoButton");
+        verticalFillButton = (Button)context.get("verticalFillButton");
+        verticalFillToCapacityButton = (Button)context.get("verticalFillToCapacityButton");
+        verticalNeverButton = (Button)context.get("verticalNeverButton");
+        verticalAlwaysButton = (Button)context.get("verticalAlwaysButton");
 
         treeView.getTreeViewSelectionListeners().add(new TreeViewSelectionListener.Adapter() {
             @Override
@@ -215,8 +209,7 @@ public class ComponentExplorer implement
             }
         });
 
-        horizontalScrollBarPolicyGroup.getButtonGroupListeners().add
-            (new ButtonGroupListener.Adapter() {
+        horizontalScrollBarPolicyGroup.getButtonGroupListeners().add(new ButtonGroupListener.Adapter() {
             @Override
             public void selectionChanged(ButtonGroup buttonGroup, Button previousSelection) {
                 Button button = buttonGroup.getSelection();
@@ -241,8 +234,7 @@ public class ComponentExplorer implement
             }
         });
 
-        verticalScrollBarPolicyGroup.getButtonGroupListeners().add
-            (new ButtonGroupListener.Adapter() {
+        verticalScrollBarPolicyGroup.getButtonGroupListeners().add(new ButtonGroupListener.Adapter() {
             @Override
             public void selectionChanged(ButtonGroup buttonGroup, Button previousSelection) {
                 Button button = buttonGroup.getSelection();
@@ -266,12 +258,15 @@ public class ComponentExplorer implement
                 }
             }
         });
+    }
+
+    @Override
+    public void open(Display display, Window owner) {
+        super.open(display, owner);
 
         Path initialSelectedPath = null;
         Path firstComponentPath = null;
 
-        String classProperty = properties.get(CLASS_PROPERTY);
-
         Tree.ItemIterator<?> itemIterator = Tree.depthFirstIterator(treeView.getTreeData());
         while (itemIterator.hasNext()) {
             Object node = itemIterator.next();
@@ -328,29 +323,14 @@ public class ComponentExplorer implement
             });
         }
 
-        window.open(display);
-
         treeView.requestFocus();
     }
 
-    @Override
-    public boolean shutdown(boolean optional) throws Exception {
-        if (window != null) {
-            window.close();
-        }
-
-        return false;
-    }
-
-    @Override
-    public void suspend() {
-    }
-
-    @Override
-    public void resume() {
+    public String getClassProperty() {
+        return classProperty;
     }
 
-    public static void main(String[] args) {
-        DesktopApplicationContext.main(ComponentExplorer.class, args);
+    public void setClassProperty(String classProperty) {
+        this.classProperty = classProperty;
     }
 }

Copied: pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/Ruler.java (from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/Ruler.java)
URL: http://svn.apache.org/viewvc/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/Ruler.java?p2=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/Ruler.java&p1=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/Ruler.java&r1=957549&r2=957711&rev=957711&view=diff
==============================================================================
--- pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/Ruler.java (original)
+++ pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/Ruler.java Thu Jun 24 20:55:07 2010
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.pivot.tutorials.explorer.navigation;
+package org.apache.pivot.tutorials.explorer;
 
 import org.apache.pivot.util.ListenerList;
 import org.apache.pivot.wtk.Component;

Copied: pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerListener.java (from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/RulerListener.java)
URL: http://svn.apache.org/viewvc/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerListener.java?p2=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerListener.java&p1=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/RulerListener.java&r1=957549&r2=957711&rev=957711&view=diff
==============================================================================
--- pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/RulerListener.java (original)
+++ pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerListener.java Thu Jun 24 20:55:07 2010
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.pivot.tutorials.explorer.navigation;
+package org.apache.pivot.tutorials.explorer;
 
 public interface RulerListener {
     public void orientationChanged(Ruler ruler);

Copied: pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerSkin.java (from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/RulerSkin.java)
URL: http://svn.apache.org/viewvc/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerSkin.java?p2=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerSkin.java&p1=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/RulerSkin.java&r1=957549&r2=957711&rev=957711&view=diff
==============================================================================
--- pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/navigation/RulerSkin.java (original)
+++ pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/RulerSkin.java Thu Jun 24 20:55:07 2010
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.pivot.tutorials.explorer.navigation;
+package org.apache.pivot.tutorials.explorer;
 
 import java.awt.Color;
 import java.awt.Graphics2D;

Copied: pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer_window.bxml (from r957549, pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer.bxml)
URL: http://svn.apache.org/viewvc/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer_window.bxml?p2=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer_window.bxml&p1=pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer.bxml&r1=957549&r2=957711&rev=957711&view=diff
==============================================================================
--- pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer.bxml (original)
+++ pivot/trunk/tutorials/src/org/apache/pivot/tutorials/explorer/component_explorer_window.bxml Thu Jun 24 20:55:07 2010
@@ -16,7 +16,7 @@ See the License for the specific languag
 limitations under the License.
 -->
 
-<Window title="%title" maximized="true"
+<explorer:ComponentExplorerWindow title="%title" maximized="true"
     xmlns:bxml="http://pivot.apache.org/bxml"
     xmlns:content="org.apache.pivot.wtk.content"
     xmlns:tools="org.apache.pivot.tools.wtk"
@@ -42,13 +42,13 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="Label"
                                                 icon="@../page_white.png"
-                                                src="@basic/label.bxml"
+                                                src="@label.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                             <explorer:ComponentNode
                                                 text="ImageView"
                                                 icon="@../page_white.png"
-                                                src="@basic/image_view.bxml"
+                                                src="@image_view.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                         </content:TreeBranch>
@@ -58,25 +58,25 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="PushButton"
                                                 icon="@../page_white.png"
-                                                src="@buttons/push_button.bxml"
+                                                src="@push_button.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="RadioButton"
                                                 icon="@../page_white.png"
-                                                src="@buttons/radio_button.bxml"
+                                                src="@radio_button.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="Checkbox"
                                                 icon="@../page_white.png"
-                                                src="@buttons/checkbox.bxml"
+                                                src="@checkbox.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="LinkButton"
                                                 icon="@../page_white.png"
-                                                src="@buttons/link_button.bxml"
+                                                src="@link_button.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -86,13 +86,13 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="ListView"
                                                 icon="@../page_white.png"
-                                                src="@lists/list_view.bxml"
+                                                src="@list_view.bxml"
                                                 horizontalScrollBarPolicy="fill_to_capacity"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="ListButton"
                                                 icon="@../page_white.png"
-                                                src="@lists/list_button.bxml"
+                                                src="@list_button.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -102,13 +102,13 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="TextInput"
                                                 icon="@../page_white.png"
-                                                src="@text/text_input.bxml"
+                                                src="@text_input.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="TextArea"
                                                 icon="@../page_white.png"
-                                                src="@text/text_area.bxml"
+                                                src="@text_area.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill_to_capacity"/>
                                         </content:TreeBranch>
@@ -118,7 +118,7 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="Separator"
                                                 icon="@../page_white.png"
-                                                src="@separators/separator.bxml"
+                                                src="@separator.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -128,55 +128,55 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="FlowPane"
                                                 icon="@../page_white.png"
-                                                src="@layout/flow_pane.bxml"
+                                                src="@flow_pane.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                             <explorer:ComponentNode
                                                 text="BoxPane"
                                                 icon="@../page_white.png"
-                                                src="@layout/box_pane.bxml"
+                                                src="@box_pane.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                             <explorer:ComponentNode
                                                 text="TablePane"
                                                 icon="@../page_white.png"
-                                                src="@layout/table_pane.bxml"
+                                                src="@table_pane.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                             <explorer:ComponentNode
                                                 text="GridPane"
                                                 icon="@../page_white.png"
-                                                src="@layout/grid_pane.bxml"
+                                                src="@grid_pane.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                             <explorer:ComponentNode
                                                 text="Border"
                                                 icon="@../page_white.png"
-                                                src="@layout/border.bxml"
+                                                src="@border.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                             <explorer:ComponentNode
                                                 text="StackPane"
                                                 icon="@../page_white.png"
-                                                src="@layout/stack_pane.bxml"
+                                                src="@stack_pane.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                             <explorer:ComponentNode
                                                 text="SplitPane"
                                                 icon="@../page_white.png"
-                                                src="@layout/split_pane.bxml"
+                                                src="@split_pane.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                             <explorer:ComponentNode
                                                 text="Form"
                                                 icon="@../page_white.png"
-                                                src="@layout/form.bxml"
+                                                src="@form.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="Panel"
                                                 icon="@../page_white.png"
-                                                src="@layout/panel.bxml"
+                                                src="@panel.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                         </content:TreeBranch>
@@ -186,31 +186,31 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="CardPane"
                                                 icon="@../page_white.png"
-                                                src="@navigation/card_pane.bxml"
+                                                src="@card_pane.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="fill"/>
                                             <explorer:ComponentNode
                                                 text="TabPane"
                                                 icon="@../page_white.png"
-                                                src="@navigation/tab_pane.bxml"
+                                                src="@tab_pane.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="Accordion"
                                                 icon="@../page_white.png"
-                                                src="@navigation/accordion.bxml"
+                                                src="@accordion.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="Expander"
                                                 icon="@../page_white.png"
-                                                src="@navigation/expander.bxml"
+                                                src="@expander.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="Rollup"
                                                 icon="@../page_white.png"
-                                                src="@navigation/rollup.bxml"
+                                                src="@rollup.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <content:TreeBranch
@@ -219,13 +219,13 @@ limitations under the License.
                                                 <explorer:ComponentNode
                                                     text="ScrollPane"
                                                     icon="@../page_white.png"
-                                                    src="@navigation/scroll_pane.bxml"
+                                                    src="@scroll_pane.bxml"
                                                     horizontalScrollBarPolicy="fill"
                                                     verticalScrollBarPolicy="fill"/>
                                                 <explorer:ComponentNode
                                                     text="Panorama"
                                                     icon="@../page_white.png"
-                                                    src="@navigation/panorama.bxml"
+                                                    src="@panorama.bxml"
                                                     horizontalScrollBarPolicy="fill"
                                                     verticalScrollBarPolicy="fill"/>
                                             </content:TreeBranch>
@@ -236,13 +236,13 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="Meter"
                                                 icon="@../page_white.png"
-                                                src="@progress/meter.bxml"
+                                                src="@meter.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="ActivityIndicator"
                                                 icon="@../page_white.png"
-                                                src="@progress/activity_indicator.bxml"
+                                                src="@activity_indicator.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -252,19 +252,19 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="ScrollBar"
                                                 icon="@../page_white.png"
-                                                src="@boundedrange/scroll_bar.bxml"
+                                                src="@scroll_bar.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="Slider"
                                                 icon="@../page_white.png"
-                                                src="@boundedrange/slider.bxml"
+                                                src="@slider.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="Spinner"
                                                 icon="@../page_white.png"
-                                                src="@boundedrange/spinner.bxml"
+                                                src="@spinner.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -274,13 +274,13 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="Calendar"
                                                 icon="@../page_white.png"
-                                                src="@calendars/calendar.bxml"
+                                                src="@calendar.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="CalendarButton"
                                                 icon="@../page_white.png"
-                                                src="@calendars/calendar_button.bxml"
+                                                src="@calendar_button.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -290,13 +290,13 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="ColorChooser"
                                                 icon="@../page_white.png"
-                                                src="@colorchoosers/color_chooser.bxml"
+                                                src="@color_chooser.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="ColorChooserButton"
                                                 icon="@../page_white.png"
-                                                src="@colorchoosers/color_chooser_button.bxml"
+                                                src="@color_chooser_button.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -306,13 +306,13 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="MenuBar"
                                                 icon="@../page_white.png"
-                                                src="@menus/menu_bar.bxml"
+                                                src="@menu_bar.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                             <explorer:ComponentNode
                                                 text="MenuButton"
                                                 icon="@../page_white.png"
-                                                src="@menus/menu_button.bxml"
+                                                src="@menu_button.bxml"
                                                 horizontalScrollBarPolicy="auto"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -322,7 +322,7 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="TableView"
                                                 icon="@../page_white.png"
-                                                src="@tables/table_view.bxml"
+                                                src="@table_view.bxml"
                                                 horizontalScrollBarPolicy="fill_to_capacity"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -332,7 +332,7 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="TreeView"
                                                 icon="@../page_white.png"
-                                                src="@trees/tree_view.bxml"
+                                                src="@tree_view.bxml"
                                                 horizontalScrollBarPolicy="fill_to_capacity"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -342,7 +342,7 @@ limitations under the License.
                                             <explorer:ComponentNode
                                                 text="FileBrowser"
                                                 icon="@../page_white.png"
-                                                src="@filebrowsing/file_browser.bxml"
+                                                src="@file_browser.bxml"
                                                 horizontalScrollBarPolicy="fill"
                                                 verticalScrollBarPolicy="auto"/>
                                         </content:TreeBranch>
@@ -497,4 +497,4 @@ limitations under the License.
             </right>
         </SplitPane>
     </CardPane>
-</Window>
+</explorer:ComponentExplorerWindow>