### Eclipse Workspace Patch 1.0 #P org.eclipse.mylyn.context.ui Index: src/org/eclipse/mylyn/internal/context/ui/editors/ContextEditorFormPage.java =================================================================== RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.context.ui/src/org/eclipse/mylyn/internal/context/ui/editors/ContextEditorFormPage.java,v retrieving revision 1.65 diff -u -r1.65 ContextEditorFormPage.java --- src/org/eclipse/mylyn/internal/context/ui/editors/ContextEditorFormPage.java 3 Dec 2008 04:27:05 -0000 1.65 +++ src/org/eclipse/mylyn/internal/context/ui/editors/ContextEditorFormPage.java 27 Dec 2008 14:19:41 -0000 @@ -89,10 +89,14 @@ private ScrolledForm form; + private Composite sectionClient; + private FormToolkit toolkit; private CommonViewer commonViewer; + private Hyperlink retrieveHyperlink; + private final ScalableInterestFilter interestFilter = new ScalableInterestFilter(); private Scale doiScale; @@ -146,11 +150,17 @@ @Override public void contextActivated(IInteractionContext context) { + doiScale.setEnabled(task.equals(TasksUi.getTaskActivityManager().getActiveTask())); + createDisplayBody(); + sectionClient.layout(); refresh(); } @Override public void contextDeactivated(IInteractionContext context) { + doiScale.setEnabled(task.equals(TasksUi.getTaskActivityManager().getActiveTask())); + createDisplayBody(); + sectionClient.layout(); refresh(); } @@ -237,7 +247,8 @@ doiScale.setLayoutData(scaleGridData); doiScale.setPageIncrement(1); doiScale.setMinimum(0); - doiScale.setSelection(SCALE_STEPS / 2); + //doiScale.setSelection(SCALE_STEPS / 2); + doiScale.setSelection(0); doiScale.setMaximum(SCALE_STEPS); doiScale.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { @@ -429,9 +440,15 @@ section.setText(Messages.ContextEditorFormPage_Elements); section.setLayoutData(new GridData(GridData.FILL_BOTH)); - Composite sectionClient = toolkit.createComposite(section); + /*Composite*/sectionClient = toolkit.createComposite(section); section.setClient(sectionClient); + createDisplayBody(); + + section.setExpanded(true); + } + + private void createDisplayBody() { if (task.equals(TasksUi.getTaskActivityManager().getActiveTask())) { sectionClient.setLayout(new Layout() { @@ -448,10 +465,23 @@ } }); + + if (retrieveHyperlink != null) { + retrieveHyperlink.dispose(); + retrieveHyperlink = null; + } + createViewer(sectionClient); } else { sectionClient.setLayout(new GridLayout()); - Hyperlink retrieveHyperlink = toolkit.createHyperlink(sectionClient, + + if (commonViewer != null) { + commonViewer.getControl().dispose(); + commonViewer.dispose(); + commonViewer = null; + } + + /*Hyperlink*/retrieveHyperlink = toolkit.createHyperlink(sectionClient, Messages.ContextEditorFormPage_Activate_task_to_edit_context, SWT.NONE); retrieveHyperlink.addMouseListener(new MouseListener() { @@ -467,9 +497,8 @@ // ignore } }); + retrieveHyperlink.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL)); } - - section.setExpanded(true); } private void createViewer(Composite aParent) {