mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-05 10:49:34 +02:00
GT-3456 - Toolbar action update review fixes
This commit is contained in:
parent
9f61911860
commit
0fdb689588
14 changed files with 36 additions and 66 deletions
|
@ -78,10 +78,6 @@ public abstract class CompareFunctionsAction extends DockingAction {
|
|||
return !functions.isEmpty();
|
||||
}
|
||||
|
||||
protected boolean isToolBarAction() {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the icon to use for the action
|
||||
*
|
||||
|
@ -104,11 +100,9 @@ public abstract class CompareFunctionsAction extends DockingAction {
|
|||
setPopupMenuData(new MenuData(new String[] { "Compare Selected Functions" },
|
||||
getToolBarIcon(), CREATE_COMPARISON_GROUP));
|
||||
|
||||
if (isToolBarAction()) {
|
||||
ToolBarData newToolBarData =
|
||||
new ToolBarData(getToolBarIcon(), CREATE_COMPARISON_GROUP);
|
||||
setToolBarData(newToolBarData);
|
||||
}
|
||||
ToolBarData newToolBarData =
|
||||
new ToolBarData(getToolBarIcon(), CREATE_COMPARISON_GROUP);
|
||||
setToolBarData(newToolBarData);
|
||||
|
||||
setHelpLocation(new HelpLocation("FunctionComparison", "Function_Comparison"));
|
||||
|
||||
|
|
|
@ -38,12 +38,9 @@ public class CompareFunctionsFromListingAction extends CompareFunctionsAction {
|
|||
*/
|
||||
public CompareFunctionsFromListingAction(PluginTool tool, String owner) {
|
||||
super(tool, owner);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isToolBarAction() {
|
||||
// this action is used as a global action--do not add it to the toolbar
|
||||
return false;
|
||||
setToolBarData(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -28,7 +28,7 @@ import javax.swing.ImageIcon;
|
|||
|
||||
import docking.ActionContext;
|
||||
import docking.action.DockingAction;
|
||||
import docking.action.MenuData;
|
||||
import docking.action.ToolBarData;
|
||||
import ghidra.app.CorePluginPackage;
|
||||
import ghidra.app.plugin.PluginCategoryNames;
|
||||
import ghidra.app.plugin.ProgramPlugin;
|
||||
|
@ -104,11 +104,12 @@ public class MyProgramChangesDisplayPlugin extends ProgramPlugin implements Doma
|
|||
folderListener = new ProgramFolderListener();
|
||||
transactionListener = new ProgramTransactionListener();
|
||||
tool.getProject().getProjectData().addDomainFolderChangeListener(folderListener);
|
||||
|
||||
createActions();
|
||||
}
|
||||
|
||||
private void createActions() {
|
||||
|
||||
String menuGroup = "DomainObjectVersionControl";
|
||||
ImageIcon icon = ResourceManager.loadImage("images/vcMerge.png");
|
||||
mergeAction = new DockingAction("Update", getName()) {
|
||||
@Override
|
||||
|
@ -122,8 +123,7 @@ public class MyProgramChangesDisplayPlugin extends ProgramPlugin implements Doma
|
|||
}
|
||||
};
|
||||
|
||||
mergeAction.setMenuBarData(
|
||||
new MenuData(new String[] { "File", "Update..." }, icon, menuGroup));
|
||||
mergeAction.setToolBarData(new ToolBarData(icon, "Repository"));
|
||||
mergeAction.setDescription("Update checked out file with latest version");
|
||||
mergeAction.setHelpLocation(new HelpLocation("VersionControl", mergeAction.getName()));
|
||||
|
||||
|
@ -141,8 +141,7 @@ public class MyProgramChangesDisplayPlugin extends ProgramPlugin implements Doma
|
|||
}
|
||||
};
|
||||
|
||||
checkInAction.setMenuBarData(
|
||||
new MenuData(new String[] { "File", "Check In..." }, icon, menuGroup));
|
||||
checkInAction.setToolBarData(new ToolBarData(icon, "Repository"));
|
||||
checkInAction.setDescription("Check in file");
|
||||
checkInAction.setHelpLocation(new HelpLocation("VersionControl", checkInAction.getName()));
|
||||
|
||||
|
@ -150,34 +149,6 @@ public class MyProgramChangesDisplayPlugin extends ProgramPlugin implements Doma
|
|||
tool.addAction(checkInAction);
|
||||
}
|
||||
|
||||
private void updateActions() {
|
||||
|
||||
if (currentProgram == null || currentProgram.getDomainFile() == null) {
|
||||
removeVcActions();
|
||||
return;
|
||||
}
|
||||
|
||||
if (currentProgram.getDomainFile().isVersioned()) {
|
||||
maybeAddVcActions();
|
||||
}
|
||||
}
|
||||
|
||||
private void maybeAddVcActions() {
|
||||
|
||||
if (mergeAction == null) {
|
||||
createActions();
|
||||
}
|
||||
}
|
||||
|
||||
private void removeVcActions() {
|
||||
if (mergeAction != null) {
|
||||
tool.removeAction(mergeAction);
|
||||
tool.removeAction(checkInAction);
|
||||
mergeAction = null;
|
||||
checkInAction = null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init() {
|
||||
markerService = tool.getService(MarkerService.class);
|
||||
|
@ -190,7 +161,6 @@ public class MyProgramChangesDisplayPlugin extends ProgramPlugin implements Doma
|
|||
program.addListener(this);
|
||||
program.addTransactionListener(transactionListener);
|
||||
updateForDomainFileChanged();
|
||||
updateActions();
|
||||
|
||||
createMarkerSets(program);
|
||||
intializeChangeMarkers();
|
||||
|
@ -199,8 +169,6 @@ public class MyProgramChangesDisplayPlugin extends ProgramPlugin implements Doma
|
|||
@Override
|
||||
protected void programDeactivated(Program program) {
|
||||
|
||||
updateActions();
|
||||
|
||||
serverVersion = -1;
|
||||
localVersion = -1;
|
||||
programChangedLocally = false;
|
||||
|
@ -381,7 +349,6 @@ public class MyProgramChangesDisplayPlugin extends ProgramPlugin implements Doma
|
|||
}
|
||||
|
||||
updateManager.update();
|
||||
updateActions();
|
||||
}
|
||||
|
||||
Worker getWorker() {
|
||||
|
|
|
@ -43,7 +43,7 @@ public abstract class AbstractNextPreviousAction extends CodeViewerContextAction
|
|||
this.tool = tool;
|
||||
|
||||
ToolBarData toolBarData =
|
||||
new ToolBarData(getIcon(), ToolConstants.TOOLBAR_GROUP_NAV_FOUR);
|
||||
new ToolBarData(getIcon(), ToolConstants.TOOLBAR_GROUP_FOUR);
|
||||
toolBarData.setToolBarSubGroup(subGroup);
|
||||
setToolBarData(toolBarData);
|
||||
MenuData menuData =
|
||||
|
|
|
@ -40,7 +40,7 @@ public class NextHighlightedRangeAction extends NextRangeAction {
|
|||
|
||||
setToolBarData(new ToolBarData(
|
||||
ResourceManager.loadImage("images/NextHighlightBlock16.gif"),
|
||||
ToolConstants.TOOLBAR_GROUP_NAV_THREE, NextPrevHighlightRangePlugin.ACTION_SUB_GROUP));
|
||||
ToolConstants.TOOLBAR_GROUP_THREE, NextPrevHighlightRangePlugin.ACTION_SUB_GROUP));
|
||||
setKeyBindingData(
|
||||
new KeyBindingData(KeyEvent.VK_0, DockingUtils.CONTROL_KEY_MODIFIER_MASK));
|
||||
|
||||
|
|
|
@ -309,7 +309,7 @@ public class NextPrevAddressPlugin extends Plugin {
|
|||
this.isNext = isNext;
|
||||
|
||||
setToolBarData(new ToolBarData(isNext ? nextIcon : previousIcon,
|
||||
ToolConstants.TOOLBAR_GROUP_NAV_TWO));
|
||||
ToolConstants.TOOLBAR_GROUP_TWO));
|
||||
setHelpLocation(new HelpLocation(HelpTopics.NAVIGATION, name));
|
||||
int keycode = isNext ? KeyEvent.VK_RIGHT : KeyEvent.VK_LEFT;
|
||||
setKeyBindingData(new KeyBindingData(keycode, InputEvent.ALT_DOWN_MASK));
|
||||
|
|
|
@ -132,7 +132,7 @@ public class NextPrevCodeUnitPlugin extends Plugin {
|
|||
menuData.setMenuSubGroup(subGroup);
|
||||
setMenuBarData(menuData);
|
||||
setToolBarData(new ToolBarData(forwardIcon,
|
||||
ToolConstants.TOOLBAR_GROUP_NAV_FOUR, subGroup));
|
||||
ToolConstants.TOOLBAR_GROUP_FOUR, subGroup));
|
||||
setKeyBindingData(new KeyBindingData(KeyEvent.VK_T, InputEvent.CTRL_DOWN_MASK |
|
||||
InputEvent.ALT_DOWN_MASK));
|
||||
|
||||
|
|
|
@ -58,7 +58,7 @@ public class NextPreviousBookmarkAction extends MultiStateDockingAction<String>
|
|||
this.tool = tool;
|
||||
|
||||
ToolBarData toolBarData =
|
||||
new ToolBarData(bookmarkIcon, ToolConstants.TOOLBAR_GROUP_NAV_FOUR);
|
||||
new ToolBarData(bookmarkIcon, ToolConstants.TOOLBAR_GROUP_FOUR);
|
||||
toolBarData.setToolBarSubGroup(subGroup);
|
||||
setToolBarData(toolBarData);
|
||||
|
||||
|
|
|
@ -72,7 +72,7 @@ public class NextPreviousMarkerAction extends MultiStateDockingAction<String> {
|
|||
this.tool = tool;
|
||||
|
||||
ToolBarData toolBarData =
|
||||
new ToolBarData(markerIcon, ToolConstants.TOOLBAR_GROUP_NAV_FOUR);
|
||||
new ToolBarData(markerIcon, ToolConstants.TOOLBAR_GROUP_FOUR);
|
||||
toolBarData.setToolBarSubGroup(subGroup);
|
||||
setToolBarData(toolBarData);
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ public class NextSelectedRangeAction extends NextRangeAction {
|
|||
|
||||
setToolBarData(new ToolBarData(
|
||||
ResourceManager.loadImage("images/NextSelectionBlock16.gif"),
|
||||
ToolConstants.TOOLBAR_GROUP_NAV_THREE, NextPrevSelectedRangePlugin.ACTION_SUB_GROUP));
|
||||
ToolConstants.TOOLBAR_GROUP_THREE, NextPrevSelectedRangePlugin.ACTION_SUB_GROUP));
|
||||
setKeyBindingData(
|
||||
new KeyBindingData(KeyEvent.VK_BRACERIGHT, DockingUtils.CONTROL_KEY_MODIFIER_MASK));
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ public class PreviousHighlightedRangeAction extends PreviousRangeAction {
|
|||
|
||||
setToolBarData(new ToolBarData(
|
||||
ResourceManager.loadImage("images/PreviousHighlightBlock16.gif"),
|
||||
ToolConstants.TOOLBAR_GROUP_NAV_THREE, NextPrevHighlightRangePlugin.ACTION_SUB_GROUP));
|
||||
ToolConstants.TOOLBAR_GROUP_THREE, NextPrevHighlightRangePlugin.ACTION_SUB_GROUP));
|
||||
setKeyBindingData(
|
||||
new KeyBindingData(KeyEvent.VK_9, DockingUtils.CONTROL_KEY_MODIFIER_MASK));
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ public class PreviousSelectedRangeAction extends PreviousRangeAction {
|
|||
"Previous Selected Range" }, icon, PluginCategoryNames.NAVIGATION,
|
||||
MenuData.NO_MNEMONIC, NextPrevSelectedRangePlugin.ACTION_SUB_GROUP));
|
||||
|
||||
setToolBarData(new ToolBarData(icon, ToolConstants.TOOLBAR_GROUP_NAV_THREE,
|
||||
setToolBarData(new ToolBarData(icon, ToolConstants.TOOLBAR_GROUP_THREE,
|
||||
NextPrevSelectedRangePlugin.ACTION_SUB_GROUP));
|
||||
setKeyBindingData(
|
||||
new KeyBindingData(KeyEvent.VK_BRACELEFT, DockingUtils.CONTROL_KEY_MODIFIER_MASK));
|
||||
|
|
|
@ -629,7 +629,7 @@ public class ProgramManagerPlugin extends Plugin implements ProgramManager {
|
|||
};
|
||||
String[] saveMenuPath = { ToolConstants.MENU_FILE, "&Save" };
|
||||
Icon saveIcon = ResourceManager.loadImage("images/disk.png");
|
||||
String saveGroup = ToolConstants.TOOLBAR_GROUP_NAV_ONE;
|
||||
String saveGroup = ToolConstants.TOOLBAR_GROUP_ONE;
|
||||
subMenuGroupOrder = 0;
|
||||
|
||||
menuData = new MenuData(saveMenuPath, saveIcon, saveGroup);
|
||||
|
|
|
@ -122,10 +122,22 @@ public interface ToolConstants extends DockingToolConstants {
|
|||
public static final String MENU_GROUP_NEXT_CODE_UNIT_NAV = "NextPrevCodeUnit";
|
||||
|
||||
/**
|
||||
*
|
||||
* Primary toolbar group number 1, starting from the left
|
||||
*/
|
||||
public static final String TOOLBAR_GROUP_NAV_ONE = "1_Toolbar_Navigation_Group";
|
||||
public static final String TOOLBAR_GROUP_NAV_TWO = "2_Toolbar_Navigation_Group";
|
||||
public static final String TOOLBAR_GROUP_NAV_THREE = "3_Toolbar_Navigation_Group";
|
||||
public static final String TOOLBAR_GROUP_NAV_FOUR = "4_Toolbar_Navigation_Group";
|
||||
public static final String TOOLBAR_GROUP_ONE = "1_Toolbar_Navigation_Group";
|
||||
|
||||
/**
|
||||
* Primary toolbar group number 2, starting from the left
|
||||
*/
|
||||
public static final String TOOLBAR_GROUP_TWO = "2_Toolbar_Navigation_Group";
|
||||
|
||||
/**
|
||||
* Primary toolbar group number 3, starting from the left
|
||||
*/
|
||||
public static final String TOOLBAR_GROUP_THREE = "3_Toolbar_Navigation_Group";
|
||||
|
||||
/**
|
||||
* Primary toolbar group number 4, starting from the left
|
||||
*/
|
||||
public static final String TOOLBAR_GROUP_FOUR = "4_Toolbar_Navigation_Group";
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue