Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 84202 Details for
Bug 211610
[Forms] Adopt new MPE key binding API
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
patch
patch184074forms.txt (text/plain), 8.12 KB, created by
Adam Archer
on 2007-11-30 11:54:52 EST
(
hide
)
Description:
patch
Filename:
MIME Type:
Creator:
Adam Archer
Created:
2007-11-30 11:54:52 EST
Size:
8.12 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.ui.forms >Index: src/org/eclipse/ui/forms/editor/SharedHeaderFormEditor.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.forms/src/org/eclipse/ui/forms/editor/SharedHeaderFormEditor.java,v >retrieving revision 1.4 >diff -u -r1.4 SharedHeaderFormEditor.java >--- src/org/eclipse/ui/forms/editor/SharedHeaderFormEditor.java 25 Apr 2007 17:52:06 -0000 1.4 >+++ src/org/eclipse/ui/forms/editor/SharedHeaderFormEditor.java 30 Nov 2007 16:52:56 -0000 >@@ -16,14 +16,11 @@ > import org.eclipse.swt.widgets.Event; > import org.eclipse.swt.widgets.Listener; > import org.eclipse.ui.IEditorPart; >-import org.eclipse.ui.IKeyBindingService; >-import org.eclipse.ui.INestableKeyBindingService; > import org.eclipse.ui.forms.IFormPart; > import org.eclipse.ui.forms.IManagedForm; > import org.eclipse.ui.forms.ManagedForm; > import org.eclipse.ui.forms.widgets.ScrolledForm; > import org.eclipse.ui.internal.forms.widgets.FormUtil; >-import org.eclipse.ui.internal.services.INestable; > > /** > * A variation of {@link FormEditor}, this editor has a stable header that does >@@ -131,28 +128,13 @@ > public void handleEvent(Event event) { > boolean wasHeaderActive = event.widget != getContainer(); > >- // fix for https://bugs.eclipse.org/bugs/show_bug.cgi?id=177331 > int activePage = getActivePage(); > if (SharedHeaderFormEditor.this.wasHeaderActive != wasHeaderActive && activePage != -1 && pages.get(activePage) instanceof IEditorPart) { >- IEditorPart activePart = (IEditorPart) pages.get(activePage); >- IKeyBindingService keyBindingService = getSite().getKeyBindingService(); > > if (wasHeaderActive) { >- >- if (activePart.getSite() instanceof INestable) >- ((INestable) activePart.getSite()).deactivate(); >- >- if (keyBindingService instanceof INestableKeyBindingService) >- ((INestableKeyBindingService) keyBindingService).activateKeyBindingService(null); >- >+ deactivateSite(true, true); > } else { >- >- if (keyBindingService instanceof INestableKeyBindingService) >- ((INestableKeyBindingService) keyBindingService).activateKeyBindingService(activePart.getSite()); >- >- if (activePart.getSite() instanceof INestable) >- ((INestable) activePart.getSite()).activate(); >- >+ activateSite(); > } > } > >Index: src/org/eclipse/ui/forms/editor/FormEditor.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.forms/src/org/eclipse/ui/forms/editor/FormEditor.java,v >retrieving revision 1.35 >diff -u -r1.35 FormEditor.java >--- src/org/eclipse/ui/forms/editor/FormEditor.java 28 Aug 2007 15:20:48 -0000 1.35 >+++ src/org/eclipse/ui/forms/editor/FormEditor.java 30 Nov 2007 16:52:56 -0000 >@@ -620,10 +620,9 @@ > // this should be called only when the editor is first opened > if (pages.size() > pageIndex > && pages.get(pageIndex) instanceof IFormPage) { >- pageChange(pageIndex); >+ super.setActivePage(pageIndex); > IFormPage activePage = (IFormPage) pages.get(pageIndex); > activePage.setActive(true); >- super.setActivePage(pageIndex); > } else > super.setActivePage(pageIndex); > updateActionBarContributor(pageIndex); >#P org.eclipse.ui.forms.examples >Index: plugin.xml >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.forms.examples/plugin.xml,v >retrieving revision 1.22 >diff -u -r1.22 plugin.xml >--- plugin.xml 19 Feb 2007 20:52:00 -0000 1.22 >+++ plugin.xml 30 Nov 2007 16:52:56 -0000 >@@ -18,6 +18,7 @@ > <import plugin="org.eclipse.ui.forms"/> > <import plugin="org.eclipse.core.runtime"/> > <import plugin="org.eclipse.ui.ide"/> >+ <import plugin="org.eclipse.core.expressions"/> > </requires> > <extension > point="org.eclipse.ui.commands"> >@@ -43,6 +44,11 @@ > id="org.eclipse.ui.forms.examples.openDialog" > name="Open Form Dialog..."> > </command> >+ <command >+ categoryId="org.eclipse.ui.forms.examples.category" >+ id="org.eclipse.ui.forms.examples.showPage" >+ name="Show Page"> >+ </command> > </extension> > > >@@ -110,4 +116,13 @@ > id="org.eclipse.ui.forms.examples.views.FormView"> > </view> > </extension> >+ <extension >+ point="org.eclipse.ui.bindings"> >+ <key >+ commandId="org.eclipse.ui.forms.examples.showPage" >+ contextId="org.eclipse.ui.contexts.window" >+ schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" >+ sequence="CTRL+5 P"> >+ </key> >+ </extension> > </plugin> >Index: src/org/eclipse/ui/forms/examples/internal/rcp/SingleHeaderEditor.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.forms.examples/src/org/eclipse/ui/forms/examples/internal/rcp/SingleHeaderEditor.java,v >retrieving revision 1.5 >diff -u -r1.5 SingleHeaderEditor.java >--- src/org/eclipse/ui/forms/examples/internal/rcp/SingleHeaderEditor.java 16 Mar 2007 20:24:49 -0000 1.5 >+++ src/org/eclipse/ui/forms/examples/internal/rcp/SingleHeaderEditor.java 30 Nov 2007 16:52:56 -0000 >@@ -10,6 +10,9 @@ > *******************************************************************************/ > package org.eclipse.ui.forms.examples.internal.rcp; > >+import org.eclipse.core.commands.AbstractHandler; >+import org.eclipse.core.commands.ExecutionEvent; >+import org.eclipse.core.commands.ExecutionException; > import org.eclipse.core.runtime.IProgressMonitor; > import org.eclipse.jface.action.Action; > import org.eclipse.jface.action.ControlContribution; >@@ -27,11 +30,15 @@ > import org.eclipse.ui.forms.widgets.Form; > import org.eclipse.ui.forms.widgets.FormToolkit; > import org.eclipse.ui.forms.widgets.ScrolledForm; >+import org.eclipse.ui.handlers.IHandlerService; >+import org.eclipse.ui.services.IServiceLocator; > > /** > * A form editor that has several pages but only one stable header. > */ > public class SingleHeaderEditor extends SharedHeaderFormEditor { >+ private static final String SHOW_PAGE_ID = "org.eclipse.ui.forms.examples.showPage"; >+ > /** > * > */ >@@ -51,7 +58,7 @@ > > protected void createHeaderContents(IManagedForm headerForm) { > final ScrolledForm sform = headerForm.getForm(); >- //sform.setText("Shared header for all the pages"); >+ // sform.setText("Shared header for all the pages"); > getToolkit().decorateFormHeading(sform.getForm()); > addToolBar(sform.getForm()); > sform.setImage(PlatformUI.getWorkbench().getSharedImages().getImage( >@@ -61,9 +68,20 @@ > sform.setText("<Another text>"); > } > }); >- //sform.setMessage("Static text", 0); >+ // sform.setMessage("Static text", 0); > } > >+ private static class PageHandler extends AbstractHandler { >+ private int page; >+ public PageHandler(int i) { >+ page = i; >+ } >+ public Object execute(ExecutionEvent event) throws ExecutionException { >+ System.out.println("Now on page " + page); >+ return null; >+ } >+ >+ } > /* > * (non-Javadoc) > * >@@ -71,9 +89,23 @@ > */ > protected void addPages() { > try { >- addPage(new HeadlessPage(this, 1)); >- addPage(new HeadlessPage(this, 2)); >- addPage(new HeadlessPage(this, 3)); >+ int idx = addPage(new HeadlessPage(this, 1)); >+ IServiceLocator pageSite = getPageSite(idx); >+ IHandlerService handlers = (IHandlerService) pageSite >+ .getService(IHandlerService.class); >+ handlers.activateHandler(SHOW_PAGE_ID, new PageHandler(1)); >+ >+ idx = addPage(new HeadlessPage(this, 2)); >+ pageSite = getPageSite(idx); >+ handlers = (IHandlerService) pageSite >+ .getService(IHandlerService.class); >+ handlers.activateHandler(SHOW_PAGE_ID, new PageHandler(2)); >+ >+ idx = addPage(new HeadlessPage(this, 3)); >+ pageSite = getPageSite(idx); >+ handlers = (IHandlerService) pageSite >+ .getService(IHandlerService.class); >+ handlers.activateHandler(SHOW_PAGE_ID, new PageHandler(3)); > } catch (PartInitException e) { > // > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 211610
: 84202