[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[news.eclipse.platform] Re: Focus Problems

Tom,

I've attached an image of the perspective. The explorer view has focus when switched to this perspective. But if you click anywhere on the window (including the Explorer view, the Menubar, or any other views), Details views gets selected. This is only with the first click of the mouse. If I use the arrow keys, the tree navigation works fine, but the first click always switches focus to the Details View.


Here is the plugin.xml

Integrated changes from old branch to mainline








<?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.0"?> <plugin>

   <extension
         point="org.eclipse.ui.perspectives">
      <perspective
            class="com.lggi.esp.client.app.catalog.Perspective"
            icon="icons/catalog.png"
            id="com.lggi.esp.client.app.catalog.perspective"
            name="Catalog">
      </perspective>
   </extension>

   <extension
         point="org.eclipse.ui.views">
      <view
      		name="Map"
            allowMultiple="true"
            class="com.lggi.esp.rcp.catalog.map.MapView"
            icon="icons/catalog.png"
            id="com.lggi.esp.rcp.catalog.map.MapView"/>

      <view
      		name="Explorer"
            allowMultiple="true"
            class="com.lggi.esp.rcp.catalog.explorer.tree.ExplorerTreeView"
            icon="icons/catalog.png"
            id="com.lggi.esp.rcp.catalog.explorer.tree.ExplorerTreeView"/>

      <view
      		name="Details"
            allowMultiple="true"

class="com.lggi.esp.rcp.catalog.explorer.detail.CatalogExplorerDetailView"
            icon="icons/catalog.png"

id="com.lggi.esp.rcp.catalog.explorer.detail.CatalogExplorerDetailView"/>

   </extension>

</plugin>



and the createInitialLayout() method from the Perspective class, which implements IPerspectiveFactory


/** * Create the initial views for the perspective. */ public void createInitialLayout(IPageLayout layout) { final float fractionalPosition35 = 0.35f; final float fractionalPosition65 = 0.65f;

User curUser = ApplicationController.getUser();
if (!ApplicationController
.isAuthorised(ApplicationController.getOperatorRoles())) {
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
.getShell();
MessageDialog.openError(shell, "Authorization Failure", "User '"
+ curUser.getName()
+ "' is not authorized to view this perspective");
throw new SecurityException("User '" + curUser.getName()
+ "' is not authorized to view this perspective");
}
String editorArea = layout.getEditorArea();
layout.setEditorAreaVisible(false);


layout.addActionSet("com.lggi.esp.client.gui.catalog.catalogActionSet");

IFolderLayout expFolder = layout.createFolder("Explorer", IPageLayout.TOP, fractionalPosition35, editorArea);
expFolder.addView(ExplorerTreeView.ID);


IFolderLayout propsFolder = layout.createFolder("Properties", IPageLayout.RIGHT,
fractionalPosition65, ExplorerTreeView.ID);
IFolderLayout detailFolder = layout.createFolder("Details", IPageLayout.BOTTOM, fractionalPosition65, editorArea);


        propsFolder.addView(IPageLayout.ID_PROP_SHEET);
        propsFolder.addView(MapView.ID);

        detailFolder.addView(CatalogExplorerDetailView.ID);

        layout.getViewLayout(ExplorerTreeView.ID).setCloseable(false);

layout.getViewLayout(CatalogExplorerDetailView.ID).setCloseable(false);

        layout.addShowViewShortcut(MapView.ID);
        layout.addShowViewShortcut(ExplorerTreeView.ID);
        layout.addShowViewShortcut(CatalogExplorerDetailView.ID);

        // add the properties view
        layout.addShowViewShortcut(IPageLayout.ID_PROP_SHEET);

        // to be removed later
        detailFolder.addView(CatalogExplorerView.ID);
        detailFolder.addView(CatalogJobListView.ID);

        layout.addActionSet("lggi.viewer.actionSet");

        MainPlugin.addPerspectiveShortcuts(layout);
    }

Thanks
Mahesh

Tom Schindl wrote:
Sorry mean eclipse.platform.

Well getting Warnocked (http://en.wikipedia.org/wiki/Warnock's_Dilemma) means that you should rethink your description. Maybe a test-case would make sense?

Tom

Mahesh Soori schrieb:
Tom,

Given the number of responses I have had, I'd say 3 forums definitely was'nt enough ;-) Regardless, I dont see a platform.ui there is a platform.ua, but not ui.

Anyway, thanks for the response. At least one non answer makes it look like somewhat of an active community!
Mahesh


Tom Schindl wrote:
Please stop crossposting on 3 forums. 1 is enough. In your case you can it best fits to platform.ui, I'd say.

Tom

Mahesh Soori schrieb:
Even stranger, if I Alt+Tab to a different application after switching to this perspective and then switch back, it works as expected. I noticed that in Controll.forceFocus(), it blindly sets savedFocus to null and then back again to this as in shell.setSavedFocus (this);
Is this intentional? Anybody back from the MemorialDay yet???


Thanks
Mahesh

Mahesh Soori wrote:
What is even stranger is that if I try to navigate with the keyboard in View A (which contains a tree), the view is properly focussed and expands the nodes as I would expect. However, if I click anywhere in the window, the focus jumps to View B (which has a Pagebook and tables displayed in the Pagebook). I have tried calling setFocus(), etc.

TIA,
Mahesh

Mahesh Soori wrote:
I have 3 views in a perspective, call it A, B and C. When I switch to this perspective, the view A has the focus... but if I click on any of the other two views or the menu bar, the focus always goes to View B. This only happens once, after that the views get the proper focus. I am using Tabbed Folders in the perspective to layout my views. Has anyone else run into this strange behaviour?

Also, I want to add animated icons to certain nodes in a tree to indicate progress activity for that node. I have read in Eclipse release notes that animated gifs are now supported, but when I give an animated icons as the image for the node, its not animated.

TIA
Mahesh

PNG image