tabs.addChangeListener(controller);
    private JComponent buildCenterComponent()    {        switch (model.getEditorType()) {            case Editor.CREATE_EDITOR:                return doBasic;            case Editor.PROPERTIES_EDITOR:                IconManager im = IconManager.getInstance();                tabs = new JTabbedPane(JTabbedPane.TOP,                                                    JTabbedPane.WRAP_TAB_LAYOUT);                tabs.setAlignmentX(LEFT_ALIGNMENT);                tabs.addTab(PROPERTIES_TITLE,                             im.getIcon(IconManager.PROPERTIES), doBasic);                ExperimenterData exp = model.getExperimenterData();                Map details = EditorUtil.transformExperimenterData(exp);                DOInfo info = new DOInfo(this, model, details, true,                                     DOInfo.OWNER_TYPE);                                tabs.addTab(OWNER_TITLE,  im.getIcon(IconManager.OWNER), info);                DataObject hierarchyObject = model.getHierarchyObject();                if (hierarchyObject instanceof ImageData) {                    details = EditorUtil.transformPixelsData(                            ((ImageData) hierarchyObject).getDefaultPixels());                    info = new DOInfo(this, model, details, false,                             DOInfo.INFO_TYPE);                    tabs.addTab(INFO_TITLE, im.getIcon(IconManager.IMAGE),                     			info);                    //Add a tab listeners to the info                    tabs.addChangeListener(controller);                }                int index = model.getSelectedTabbedIndex();                if (index >= 0 && index < MAX_INDEX)                    tabs.setSelectedIndex(index);                return tabs;        }        return null;    }