mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-23 17:05:26 +02:00
Bugzilla 297269.
randy
This commit is contained in:
parent
5df49fc5d3
commit
5689e4da5d
3 changed files with 46 additions and 8 deletions
|
@ -30,5 +30,8 @@
|
||||||
<viewShortcut id="org.eclipse.cdt.debug.ui.memory.memorybrowser.MemoryBrowser"/>
|
<viewShortcut id="org.eclipse.cdt.debug.ui.memory.memorybrowser.MemoryBrowser"/>
|
||||||
</perspectiveExtension>
|
</perspectiveExtension>
|
||||||
</extension>
|
</extension>
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.core.runtime.preferences">
|
||||||
|
<initializer class="org.eclipse.cdt.debug.ui.memory.memorybrowser.MemoryBrowserPreferenceInitializer"/>
|
||||||
|
</extension>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
|
@ -55,6 +55,7 @@ import org.eclipse.jface.action.IToolBarManager;
|
||||||
import org.eclipse.jface.action.MenuManager;
|
import org.eclipse.jface.action.MenuManager;
|
||||||
import org.eclipse.jface.action.Separator;
|
import org.eclipse.jface.action.Separator;
|
||||||
import org.eclipse.jface.dialogs.IDialogConstants;
|
import org.eclipse.jface.dialogs.IDialogConstants;
|
||||||
|
import org.eclipse.jface.preference.IPreferenceStore;
|
||||||
import org.eclipse.jface.resource.ColorRegistry;
|
import org.eclipse.jface.resource.ColorRegistry;
|
||||||
import org.eclipse.jface.resource.JFaceResources;
|
import org.eclipse.jface.resource.JFaceResources;
|
||||||
import org.eclipse.jface.util.IPropertyChangeListener;
|
import org.eclipse.jface.util.IPropertyChangeListener;
|
||||||
|
@ -126,6 +127,9 @@ public class MemoryBrowser extends ViewPart implements IDebugContextListener, IL
|
||||||
private final static String KEY_MEMORY_BLOCK = "MEMORY"; //$NON-NLS-1$
|
private final static String KEY_MEMORY_BLOCK = "MEMORY"; //$NON-NLS-1$
|
||||||
private final static String KEY_RETRIEVAL = "RETRIEVAL"; //$NON-NLS-1$
|
private final static String KEY_RETRIEVAL = "RETRIEVAL"; //$NON-NLS-1$
|
||||||
private final static String KEY_CONTAINER = "CONTAINER"; //$NON-NLS-1$
|
private final static String KEY_CONTAINER = "CONTAINER"; //$NON-NLS-1$
|
||||||
|
|
||||||
|
public static final String PREF_DEFAULT_RENDERING = "org.eclipse.cdt.debug.ui.memory.memorybrowser.defaultRendering"; //$NON-NLS-1$
|
||||||
|
|
||||||
|
|
||||||
public MemoryBrowser() {
|
public MemoryBrowser() {
|
||||||
}
|
}
|
||||||
|
@ -138,19 +142,25 @@ public class MemoryBrowser extends ViewPart implements IDebugContextListener, IL
|
||||||
public void createPartControl(Composite parent) {
|
public void createPartControl(Composite parent) {
|
||||||
// set default rendering type. use the traditional rendering if available. fallback on first registered type.
|
// set default rendering type. use the traditional rendering if available. fallback on first registered type.
|
||||||
// this should eventually be configurable via a preference page.
|
// this should eventually be configurable via a preference page.
|
||||||
boolean isTraditionalRenderingAvailable = false;
|
boolean isDefaultRenderingAvailable = false;
|
||||||
final String traditionalRenderingId = "org.eclipse.cdt.debug.ui.memory.traditional.TraditionalRendering"; //$NON-NLS-1$
|
IPreferenceStore store = MemoryBrowserPlugin.getDefault().getPreferenceStore();
|
||||||
|
String defaultRendering = store.getString(PREF_DEFAULT_RENDERING);
|
||||||
|
if(defaultRendering == null || defaultRendering.trim().length() == 0)
|
||||||
|
{
|
||||||
|
defaultRendering = "org.eclipse.cdt.debug.ui.memory.traditional.TraditionalRendering"; //$NON-NLS-1$
|
||||||
|
}
|
||||||
|
|
||||||
IMemoryRenderingType[] types = getRenderingTypes();
|
IMemoryRenderingType[] types = getRenderingTypes();
|
||||||
for(final IMemoryRenderingType type : types)
|
for(final IMemoryRenderingType type : types)
|
||||||
{
|
{
|
||||||
if(type.getId().equals(traditionalRenderingId))
|
if(type.getId().equals(defaultRendering))
|
||||||
{
|
{
|
||||||
isTraditionalRenderingAvailable = true;
|
isDefaultRenderingAvailable = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(isTraditionalRenderingAvailable)
|
if(isDefaultRenderingAvailable)
|
||||||
defaultRenderingTypeId = traditionalRenderingId;
|
defaultRenderingTypeId = defaultRendering;
|
||||||
else if(types.length > 0)
|
else if(types.length > 0)
|
||||||
defaultRenderingTypeId = types[0].getId();
|
defaultRenderingTypeId = types[0].getId();
|
||||||
|
|
||||||
|
@ -581,9 +591,11 @@ public class MemoryBrowser extends ViewPart implements IDebugContextListener, IL
|
||||||
return defaultRenderingTypeId;
|
return defaultRenderingTypeId;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setDefaultRenderingTypeId(String id)
|
public void setDefaultRenderingTypeId(String id)
|
||||||
{
|
{
|
||||||
defaultRenderingTypeId = id;
|
defaultRenderingTypeId = id;
|
||||||
|
IPreferenceStore store = MemoryBrowserPlugin.getDefault().getPreferenceStore();
|
||||||
|
store.setValue(PREF_DEFAULT_RENDERING, defaultRenderingTypeId);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void populateTabWithRendering(final CTabItem tab, final IMemoryBlockRetrieval retrieval, Object context)
|
private void populateTabWithRendering(final CTabItem tab, final IMemoryBlockRetrieval retrieval, Object context)
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
package org.eclipse.cdt.debug.ui.memory.memorybrowser;
|
||||||
|
|
||||||
|
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
|
||||||
|
import org.eclipse.jface.preference.IPreferenceStore;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class used to initialize default preference values.
|
||||||
|
*/
|
||||||
|
public class MemoryBrowserPreferenceInitializer extends AbstractPreferenceInitializer {
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (non-Javadoc)
|
||||||
|
*
|
||||||
|
* @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
|
||||||
|
*/
|
||||||
|
public void initializeDefaultPreferences() {
|
||||||
|
IPreferenceStore store = MemoryBrowserPlugin.getDefault().getPreferenceStore();
|
||||||
|
|
||||||
|
// The following preferences should be kept in the store
|
||||||
|
store.setDefault(MemoryBrowser.PREF_DEFAULT_RENDERING, "");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue