@@ -34,6 +34,7 @@ public class ScriptEditorBase : EditorContentPanel
34
34
private const string GO_TO_DEFINITION_COMMAND = "ScriptGoToDefiniton" ;
35
35
private const string FIND_ALL_USAGES_COMMAND = "ScriptFindAllUsages" ;
36
36
private const string GO_TO_SPRITE_COMMAND = "ScriptGoToSprite" ;
37
+ private const string ADD_TO_WATCH_PANE_COMMAND = "ScriptAddToWatch" ;
37
38
38
39
protected AGSEditor _agsEditor ;
39
40
// Loaded script reference, is assigned by the child class.
@@ -54,6 +55,7 @@ public class ScriptEditorBase : EditorContentPanel
54
55
_menuCmdCopy ,
55
56
_menuCmdPaste ,
56
57
_menuCmdGoToDefinition ,
58
+ _menuCmdAddToWatchPane ,
57
59
_menuCmdFindAllUsages ,
58
60
_menuCmdGoToSprite ;
59
61
@@ -163,13 +165,16 @@ private void InitEditorMenus()
163
165
164
166
_menuCmdGoToDefinition = new MenuCommand ( GO_TO_DEFINITION_COMMAND , "Go to Definition" , Keys . F12 ) ;
165
167
_menuCmdGoToDefinition . Enabled = false ;
168
+ _menuCmdAddToWatchPane = new MenuCommand ( ADD_TO_WATCH_PANE_COMMAND , "Add to Watch" , null ) ;
169
+ _menuCmdAddToWatchPane . Enabled = false ;
166
170
_menuCmdFindAllUsages = new MenuCommand ( FIND_ALL_USAGES_COMMAND , "Find All Usages" , Keys . Shift | Keys . F12 ) ;
167
171
_menuCmdFindAllUsages . Enabled = false ;
168
172
_menuCmdGoToSprite = new MenuCommand ( GO_TO_SPRITE_COMMAND , "Go to Sprite" , Keys . Shift | Keys . F7 ) ;
169
173
_menuCmdGoToSprite . Enabled = false ;
170
174
171
175
_extraMenu . Commands . Add ( MenuCommand . Separator ) ;
172
176
_extraMenu . Commands . Add ( _menuCmdGoToDefinition ) ;
177
+ _extraMenu . Commands . Add ( _menuCmdAddToWatchPane ) ;
173
178
_extraMenu . Commands . Add ( _menuCmdFindAllUsages ) ;
174
179
_extraMenu . Commands . Add ( _menuCmdGoToSprite ) ;
175
180
@@ -246,7 +251,11 @@ protected override void OnCommandClick(string command)
246
251
}
247
252
else if ( IsContextCommand ( command ) )
248
253
{
249
- if ( command == GO_TO_DEFINITION_COMMAND ||
254
+ if ( command == ADD_TO_WATCH_PANE_COMMAND )
255
+ {
256
+ Factory . GUIController . AddVariableToWatchPanel ( _goToDefinition ) ;
257
+ }
258
+ else if ( command == GO_TO_DEFINITION_COMMAND ||
250
259
command == FIND_ALL_USAGES_COMMAND )
251
260
{
252
261
string [ ] structAndMember = _goToDefinition . Split ( '.' ) ;
@@ -340,6 +349,7 @@ protected virtual void UpdateUICommands()
340
349
( _menuCmdUndo . Enabled != canUndo ) ||
341
350
( _menuCmdRedo . Enabled != canRedo ) ||
342
351
( _menuCmdGoToDefinition . Enabled != canGoToDefinition ) ||
352
+ ( _menuCmdAddToWatchPane . Enabled != canGoToDefinition ) ||
343
353
( _menuCmdFindAllUsages . Enabled != canGoToDefinition ) ||
344
354
( _menuCmdGoToSprite . Enabled != canGoToSprite ) ;
345
355
@@ -350,7 +360,9 @@ protected virtual void UpdateUICommands()
350
360
_menuCmdPaste . Enabled = canPaste ;
351
361
_menuCmdUndo . Enabled = canUndo ;
352
362
_menuCmdRedo . Enabled = canRedo ;
353
- _menuCmdGoToDefinition . Enabled = _menuCmdFindAllUsages . Enabled = canGoToDefinition ;
363
+ _menuCmdGoToDefinition . Enabled = canGoToDefinition ;
364
+ _menuCmdAddToWatchPane . Enabled = canGoToDefinition ;
365
+ _menuCmdFindAllUsages . Enabled = canGoToDefinition ;
354
366
_menuCmdGoToSprite . Enabled = canGoToSprite ;
355
367
356
368
Factory . ToolBarManager . RefreshCurrentPane ( ) ;
@@ -365,7 +377,10 @@ protected static bool IsStandardEditCommand(string c)
365
377
366
378
protected static bool IsContextCommand ( string c )
367
379
{
368
- return ( c == GO_TO_DEFINITION_COMMAND ) || ( c == FIND_ALL_USAGES_COMMAND ) || ( c == GO_TO_SPRITE_COMMAND ) ;
380
+ return ( c == GO_TO_DEFINITION_COMMAND ) ||
381
+ ( c == FIND_ALL_USAGES_COMMAND ) ||
382
+ ( c == GO_TO_SPRITE_COMMAND ) ||
383
+ ( c == ADD_TO_WATCH_PANE_COMMAND ) ;
369
384
}
370
385
371
386
protected void UpdateScriptDocumentContext ( int clickedPositionInDocument )
@@ -421,12 +436,18 @@ private void scintilla_ConstructContextMenu(ContextMenuStrip menuStrip, int clic
421
436
UpdateScriptDocumentContext ( clickedPositionInDocument ) ;
422
437
423
438
string typeName = _goToDefinition != null ? ( " of " + _goToDefinition ) : string . Empty ;
439
+ string varName = _goToDefinition != null ? ( _goToDefinition + " to Watch Panel" ) : string . Empty ;
424
440
425
441
menuItem = new ToolStripMenuItem ( _menuCmdGoToDefinition . Name + typeName , null , onClick , GO_TO_DEFINITION_COMMAND ) ;
426
442
menuItem . ShortcutKeys = _menuCmdGoToDefinition . ShortcutKey ;
427
443
menuItem . Enabled = ( _goToDefinition != null ) ;
428
444
menuStrip . Items . Add ( menuItem ) ;
429
445
446
+ menuItem = new ToolStripMenuItem ( "Add " + varName , null , onClick , ADD_TO_WATCH_PANE_COMMAND ) ;
447
+ menuItem . ShortcutKeys = _menuCmdAddToWatchPane . ShortcutKey ;
448
+ menuItem . Enabled = ( _goToDefinition != null ) ;
449
+ menuStrip . Items . Add ( menuItem ) ;
450
+
430
451
menuItem = new ToolStripMenuItem ( _menuCmdFindAllUsages . Name + typeName , null , onClick , FIND_ALL_USAGES_COMMAND ) ;
431
452
menuItem . ShortcutKeys = _menuCmdFindAllUsages . ShortcutKey ;
432
453
menuItem . Enabled = ( _goToDefinition != null ) ;
0 commit comments