Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(555)

Side by Side Diff: dart/editor/tools/plugins/com.google.dart.tools.debug.ui/src/com/google/dart/tools/debug/ui/internal/view/DartVariablesView.java

Issue 64033002: Version 0.8.10.8 (Closed) Base URL: http://dart.googlecode.com/svn/trunk/
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012, the Dart project authors. 2 * Copyright (c) 2012, the Dart project authors.
3 * 3 *
4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u se this file except 4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u se this file except
5 * in compliance with the License. You may obtain a copy of the License at 5 * in compliance with the License. You may obtain a copy of the License at
6 * 6 *
7 * http://www.eclipse.org/legal/epl-v10.html 7 * http://www.eclipse.org/legal/epl-v10.html
8 * 8 *
9 * Unless required by applicable law or agreed to in writing, software distribut ed under the License 9 * Unless required by applicable law or agreed to in writing, software distribut ed under the License
10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K IND, either express 10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K IND, either express
11 * or implied. See the License for the specific language governing permissions a nd limitations under 11 * or implied. See the License for the specific language governing permissions a nd limitations under
12 * the License. 12 * the License.
13 */ 13 */
14 package com.google.dart.tools.debug.ui.internal.view; 14 package com.google.dart.tools.debug.ui.internal.view;
15 15
16 import com.google.dart.tools.debug.core.util.IDartDebugVariable; 16 import com.google.dart.tools.debug.core.util.IDartDebugVariable;
17 import com.google.dart.tools.internal.corext.refactoring.util.ReflectionUtils; 17 import com.google.dart.tools.internal.corext.refactoring.util.ReflectionUtils;
18 import com.google.dart.tools.ui.DartToolsPlugin; 18 import com.google.dart.tools.ui.DartToolsPlugin;
19 import com.google.dart.tools.ui.internal.util.SWTUtil; 19 import com.google.dart.tools.ui.internal.util.SWTUtil;
20 20
21 import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer; 21 import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer;
22 import org.eclipse.debug.internal.ui.views.variables.AvailableLogicalStructuresA ction;
22 import org.eclipse.debug.internal.ui.views.variables.VariablesView; 23 import org.eclipse.debug.internal.ui.views.variables.VariablesView;
24 import org.eclipse.debug.internal.ui.views.variables.details.AvailableDetailPane sAction;
23 import org.eclipse.debug.internal.ui.views.variables.details.DetailPaneProxy; 25 import org.eclipse.debug.internal.ui.views.variables.details.DetailPaneProxy;
26 import org.eclipse.debug.ui.IDebugUIConstants;
27 import org.eclipse.jface.action.IAction;
28 import org.eclipse.jface.action.IMenuManager;
24 import org.eclipse.jface.action.IToolBarManager; 29 import org.eclipse.jface.action.IToolBarManager;
30 import org.eclipse.jface.action.Separator;
25 import org.eclipse.jface.preference.IPreferenceStore; 31 import org.eclipse.jface.preference.IPreferenceStore;
26 import org.eclipse.jface.util.IPropertyChangeListener; 32 import org.eclipse.jface.util.IPropertyChangeListener;
27 import org.eclipse.jface.util.PropertyChangeEvent; 33 import org.eclipse.jface.util.PropertyChangeEvent;
28 import org.eclipse.jface.viewers.ISelectionProvider; 34 import org.eclipse.jface.viewers.ISelectionProvider;
29 import org.eclipse.jface.viewers.StructuredSelection; 35 import org.eclipse.jface.viewers.StructuredSelection;
30 import org.eclipse.swt.SWT; 36 import org.eclipse.swt.SWT;
31 import org.eclipse.swt.custom.StyledText; 37 import org.eclipse.swt.custom.StyledText;
32 import org.eclipse.swt.widgets.Composite; 38 import org.eclipse.swt.widgets.Composite;
33 import org.eclipse.swt.widgets.Event; 39 import org.eclipse.swt.widgets.Event;
34 import org.eclipse.swt.widgets.Listener; 40 import org.eclipse.swt.widgets.Listener;
35 import org.eclipse.swt.widgets.Tree; 41 import org.eclipse.swt.widgets.Tree;
36 import org.eclipse.swt.widgets.TreeItem; 42 import org.eclipse.swt.widgets.TreeItem;
43 import org.eclipse.ui.IWorkbenchActionConstants;
37 44
38 /** 45 /**
39 * This custom subclass of the debugger VariablesView allows us to customize the actions that the 46 * This custom subclass of the debugger VariablesView allows us to customize the actions that the
40 * view exposes, and override some visibility behavior that is necessary to embe d this view in other 47 * view exposes, and override some visibility behavior that is necessary to embe d this view in other
41 * views. 48 * views.
42 */ 49 */
43 @SuppressWarnings("restriction") 50 @SuppressWarnings("restriction")
44 public class DartVariablesView extends VariablesView { 51 public class DartVariablesView extends VariablesView {
45 private boolean visible; 52 private boolean visible;
46 53
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 protected void configureToolBar(IToolBarManager tbm) { 158 protected void configureToolBar(IToolBarManager tbm) {
152 // tbm.add(new Separator(this.getClass().getName())); 159 // tbm.add(new Separator(this.getClass().getName()));
153 // tbm.add(new Separator(IDebugUIConstants.RENDER_GROUP)); 160 // tbm.add(new Separator(IDebugUIConstants.RENDER_GROUP));
154 // 161 //
155 // //tbm.add(getAction("ShowTypeNames")); //$NON-NLS-1$ 162 // //tbm.add(getAction("ShowTypeNames")); //$NON-NLS-1$
156 // tbm.add(getAction("ToggleContentProviders")); //$NON-NLS-1$ 163 // tbm.add(getAction("ToggleContentProviders")); //$NON-NLS-1$
157 // //tbm.add(getAction("CollapseAll")); //$NON-NLS-1$ 164 // //tbm.add(getAction("CollapseAll")); //$NON-NLS-1$
158 } 165 }
159 166
160 @Override 167 @Override
168 protected void fillContextMenu(IMenuManager menu) {
169 menu.add(new Separator(IDebugUIConstants.EMPTY_VARIABLE_GROUP));
170 menu.add(new Separator(IDebugUIConstants.VARIABLE_GROUP));
171 menu.add(new Separator());
172 IAction action = new AvailableLogicalStructuresAction(this);
173 if (action.isEnabled()) {
174 menu.add(action);
175 }
176 action = new AvailableDetailPanesAction(this);
177 if (isDetailPaneVisible() && action.isEnabled()) {
178 menu.add(action);
179 }
180 menu.add(new Separator(IDebugUIConstants.EMPTY_RENDER_GROUP));
181 menu.add(new Separator(IDebugUIConstants.EMPTY_NAVIGATION_GROUP));
182 menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
183 }
184
185 @Override
161 protected int[] getLastSashWeights() { 186 protected int[] getLastSashWeights() {
162 return new int[] {12, 4}; 187 return new int[] {12, 4};
163 } 188 }
164 189
165 protected void updateColors() { 190 protected void updateColors() {
166 IPreferenceStore prefs = getPreferences(); 191 IPreferenceStore prefs = getPreferences();
167 StyledText detailsText = getDetailsText(); 192 StyledText detailsText = getDetailsText();
168 SWTUtil.setColors(treeViewer.getTree(), prefs); 193 SWTUtil.setColors(treeViewer.getTree(), prefs);
169 SWTUtil.setColors(detailsText, prefs); 194 SWTUtil.setColors(detailsText, prefs);
170 } 195 }
171 196
172 private void doPropertyChange(PropertyChangeEvent event) { 197 private void doPropertyChange(PropertyChangeEvent event) {
173 updateColors(); 198 updateColors();
174 treeViewer.refresh(false); 199 treeViewer.refresh(false);
175 } 200 }
176 201
177 private StyledText getDetailsText() { 202 private StyledText getDetailsText() {
178 // Warning: fragile code! 203 // Warning: fragile code!
179 DetailPaneProxy detailProxy = ReflectionUtils.getFieldObject(this, "fDetailP ane"); 204 DetailPaneProxy detailProxy = ReflectionUtils.getFieldObject(this, "fDetailP ane");
180 StyledText text = ReflectionUtils.getFieldObject(detailProxy, "fCurrentContr ol"); 205 StyledText text = ReflectionUtils.getFieldObject(detailProxy, "fCurrentContr ol");
181 return text; 206 return text;
182 } 207 }
183 208
184 private IPreferenceStore getPreferences() { 209 private IPreferenceStore getPreferences() {
185 return preferences; 210 return preferences;
186 } 211 }
187 } 212 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698