mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-08 10:16:03 +02:00
Persistence of visibility setting for Enclosing Definition column.
This commit is contained in:
parent
f8ea863db6
commit
a16a16e0b4
1 changed files with 18 additions and 9 deletions
|
@ -1,5 +1,5 @@
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Copyright (c) 2006, 2008 QNX Software Systems and others.
|
* Copyright (c) 2006, 2010 QNX Software Systems and others.
|
||||||
* All rights reserved. This program and the accompanying materials
|
* All rights reserved. This program and the accompanying materials
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
* which accompanies this distribution, and is available at
|
* which accompanies this distribution, and is available at
|
||||||
|
@ -9,6 +9,7 @@
|
||||||
* QNX - Initial API and implementation
|
* QNX - Initial API and implementation
|
||||||
* Ed Swartz (Nokia)
|
* Ed Swartz (Nokia)
|
||||||
* Andrey Eremchenko (LEDAS)
|
* Andrey Eremchenko (LEDAS)
|
||||||
|
* Sergey Prigogin (Google)
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.cdt.internal.ui.search;
|
package org.eclipse.cdt.internal.ui.search;
|
||||||
|
|
||||||
|
@ -17,6 +18,7 @@ import org.eclipse.core.runtime.IPath;
|
||||||
import org.eclipse.core.runtime.IStatus;
|
import org.eclipse.core.runtime.IStatus;
|
||||||
import org.eclipse.jface.action.Action;
|
import org.eclipse.jface.action.Action;
|
||||||
import org.eclipse.jface.action.IMenuManager;
|
import org.eclipse.jface.action.IMenuManager;
|
||||||
|
import org.eclipse.jface.dialogs.IDialogSettings;
|
||||||
import org.eclipse.jface.viewers.StructuredViewer;
|
import org.eclipse.jface.viewers.StructuredViewer;
|
||||||
import org.eclipse.jface.viewers.TableViewer;
|
import org.eclipse.jface.viewers.TableViewer;
|
||||||
import org.eclipse.jface.viewers.TableViewerColumn;
|
import org.eclipse.jface.viewers.TableViewerColumn;
|
||||||
|
@ -50,7 +52,6 @@ import org.eclipse.cdt.internal.ui.viewsupport.ColoringLabelProvider;
|
||||||
* Implementation of the search view page for index based searches.
|
* Implementation of the search view page for index based searches.
|
||||||
*/
|
*/
|
||||||
public class PDOMSearchViewPage extends AbstractTextSearchViewPage {
|
public class PDOMSearchViewPage extends AbstractTextSearchViewPage {
|
||||||
|
|
||||||
public static final int LOCATION_COLUMN_INDEX = 0;
|
public static final int LOCATION_COLUMN_INDEX = 0;
|
||||||
public static final int DEFINITION_COLUMN_INDEX = 1;
|
public static final int DEFINITION_COLUMN_INDEX = 1;
|
||||||
public static final int MATCH_COLUMN_INDEX = 2;
|
public static final int MATCH_COLUMN_INDEX = 2;
|
||||||
|
@ -69,7 +70,7 @@ public class PDOMSearchViewPage extends AbstractTextSearchViewPage {
|
||||||
private IPDOMSearchContentProvider contentProvider;
|
private IPDOMSearchContentProvider contentProvider;
|
||||||
private boolean fShowEnclosingDefinitions;
|
private boolean fShowEnclosingDefinitions;
|
||||||
private ShowEnclosingDefinitionsAction fShowEnclosingDefinitionsAction;
|
private ShowEnclosingDefinitionsAction fShowEnclosingDefinitionsAction;
|
||||||
private int[] fColumnWidths = { 300, 300, 300 };
|
private int[] fColumnWidths = { 300, 150, 300 };
|
||||||
|
|
||||||
private class ShowEnclosingDefinitionsAction extends Action {
|
private class ShowEnclosingDefinitionsAction extends Action {
|
||||||
public ShowEnclosingDefinitionsAction() {
|
public ShowEnclosingDefinitionsAction() {
|
||||||
|
@ -100,14 +101,18 @@ public class PDOMSearchViewPage extends AbstractTextSearchViewPage {
|
||||||
menuManager.updateAll(true);
|
menuManager.updateAll(true);
|
||||||
pageSite.getActionBars().updateActionBars();
|
pageSite.getActionBars().updateActionBars();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void restoreState(IMemento memento) {
|
public void restoreState(IMemento memento) {
|
||||||
super.restoreState(memento);
|
super.restoreState(memento);
|
||||||
|
IDialogSettings settings = getSettings();
|
||||||
|
boolean showEnclosingDefinitions = true;
|
||||||
|
if (settings.get(KEY_SHOW_ENCLOSING_DEFINITIONS) != null)
|
||||||
|
showEnclosingDefinitions = settings.getBoolean(KEY_SHOW_ENCLOSING_DEFINITIONS);
|
||||||
if (memento != null) {
|
if (memento != null) {
|
||||||
Boolean showEnclosingDefinitions = memento.getBoolean(KEY_SHOW_ENCLOSING_DEFINITIONS);
|
Boolean value = memento.getBoolean(KEY_SHOW_ENCLOSING_DEFINITIONS);
|
||||||
if (showEnclosingDefinitions != null)
|
if (value != null)
|
||||||
setShowEnclosingDefinitions(showEnclosingDefinitions);
|
showEnclosingDefinitions = value.booleanValue();
|
||||||
String[] keys = { KEY_LOCATION_COLUMN_WIDTH, KEY_DEFINITION_COLUMN_WIDTH, KEY_MATCH_COLUMN_WIDTH };
|
String[] keys = { KEY_LOCATION_COLUMN_WIDTH, KEY_DEFINITION_COLUMN_WIDTH, KEY_MATCH_COLUMN_WIDTH };
|
||||||
for (int i = 0; i < keys.length; i++) {
|
for (int i = 0; i < keys.length; i++) {
|
||||||
Integer width = memento.getInteger(keys[i]);
|
Integer width = memento.getInteger(keys[i]);
|
||||||
|
@ -117,6 +122,7 @@ public class PDOMSearchViewPage extends AbstractTextSearchViewPage {
|
||||||
fColumnWidths[i] = width;
|
fColumnWidths[i] = width;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
setShowEnclosingDefinitions(showEnclosingDefinitions);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -130,7 +136,10 @@ public class PDOMSearchViewPage extends AbstractTextSearchViewPage {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setShowEnclosingDefinitions(boolean showEnclosingDefinitions) {
|
public void setShowEnclosingDefinitions(boolean showEnclosingDefinitions) {
|
||||||
|
if (fShowEnclosingDefinitions == showEnclosingDefinitions)
|
||||||
|
return;
|
||||||
fShowEnclosingDefinitions = showEnclosingDefinitions;
|
fShowEnclosingDefinitions = showEnclosingDefinitions;
|
||||||
|
getSettings().put(KEY_SHOW_ENCLOSING_DEFINITIONS, fShowEnclosingDefinitions);
|
||||||
if (fShowEnclosingDefinitionsAction.isChecked() != showEnclosingDefinitions)
|
if (fShowEnclosingDefinitionsAction.isChecked() != showEnclosingDefinitions)
|
||||||
fShowEnclosingDefinitionsAction.setChecked(showEnclosingDefinitions);
|
fShowEnclosingDefinitionsAction.setChecked(showEnclosingDefinitions);
|
||||||
StructuredViewer viewer = getViewer();
|
StructuredViewer viewer = getViewer();
|
||||||
|
@ -149,11 +158,11 @@ public class PDOMSearchViewPage extends AbstractTextSearchViewPage {
|
||||||
if (viewer != null)
|
if (viewer != null)
|
||||||
viewer.refresh();
|
viewer.refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isShowEnclosingDefinitions() {
|
public boolean isShowEnclosingDefinitions() {
|
||||||
return fShowEnclosingDefinitions;
|
return fShowEnclosingDefinitions;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void elementsChanged(Object[] objects) {
|
protected void elementsChanged(Object[] objects) {
|
||||||
if (contentProvider != null)
|
if (contentProvider != null)
|
||||||
|
|
Loading…
Add table
Reference in a new issue