Package ghidra.framework.main.datatree
Class VersionControlDataTypeArchiveUndoCheckoutAction
java.lang.Object
docking.action.DockingAction
ghidra.framework.main.datatable.DomainFileProviderContextAction
ghidra.framework.main.projectdata.actions.VersionControlAction
ghidra.framework.main.datatree.VersionControlDataTypeArchiveUndoCheckoutAction
- All Implemented Interfaces:
DockingActionIf,HelpDescriptor
Action to undo checkouts for domain files in the repository.
-
Field Summary
Fields inherited from class ghidra.framework.main.projectdata.actions.VersionControlAction
GROUP, repository, toolFields inherited from interface docking.action.DockingActionIf
DESCRIPTION_PROPERTY, ENABLEMENT_PROPERTY, GLOBALCONTEXT_PROPERTY, KEYBINDING_DATA_PROPERTY, MENUBAR_DATA_PROPERTY, POPUP_MENU_DATA_PROPERTY, TOOLBAR_DATA_PROPERTY -
Constructor Summary
ConstructorsConstructorDescriptionVersionControlDataTypeArchiveUndoCheckoutAction(ghidra.app.plugin.core.datamgr.DataTypeManagerPlugin plugin, ArchiveProvider provider) Creates an action to undo checkouts for domain files in the repository. -
Method Summary
Modifier and TypeMethodDescriptionvoidactionPerformed(DomainFileContext context) booleanisEnabledForContext(DomainFileContext context) protected voidsaveCheckOutChanges(List<DomainFile> changedList) Saves all checked out changes.protected voidGets the domain files from the provider and then undoes the checkout on any that are checked out.protected voidundoCheckOuts(List<ghidra.app.plugin.core.datamgr.archive.DomainFileArchive> unmodifiedArchivesList, List<ghidra.app.plugin.core.datamgr.archive.DomainFileArchive> modifiedArchivesList) Displays the undo checkout confirmation dialog for each checked out file and then undoes the checkout while keeping a copy of the working version of the file if the user chooses to do so.
All unmodified checkouts will be undone.Methods inherited from class ghidra.framework.main.projectdata.actions.VersionControlAction
checkRepositoryConnected, isAddToPopup, isFileSystemBusyMethods inherited from class ghidra.framework.main.datatable.DomainFileProviderContextAction
actionPerformed, isAddToPopup, isEnabledForContext, isValidContext, isValidContextMethods inherited from class docking.action.DockingAction
addPropertyChangeListener, addToWindowWhen, createButton, createMenuItem, dispose, doCreateButton, doCreateMenuItem, enabledWhen, firePropertyChanged, getContextClass, getDefaultKeyBindingData, getDescription, getFullName, getHelpInfo, getHelpLocation, getHelpObject, getInceptionFromTheFirstClassThatIsNotUsOrABuilder, getInceptionInformation, getKeyBinding, getKeyBindingData, getKeyBindingType, getMenuBarData, getName, getOwner, getPopupMenuData, getPreferredKeyBindingType, getToolBarData, isEnabled, markHelpUnnecessary, popupWhen, removePropertyChangeListener, setAddToAllWindows, setContextClass, setDescription, setEnabled, setHelpLocation, setKeyBindingData, setMenuBarData, setPopupMenuData, setToolBarData, setUnvalidatedKeyBindingData, shouldAddToWindow, supportsDefaultContext, toString, validContextWhenMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface docking.action.DockingActionIf
createMenuComponent, getOwnerDescription
-
Constructor Details
-
VersionControlDataTypeArchiveUndoCheckoutAction
public VersionControlDataTypeArchiveUndoCheckoutAction(ghidra.app.plugin.core.datamgr.DataTypeManagerPlugin plugin, ArchiveProvider provider) Creates an action to undo checkouts for domain files in the repository.- Parameters:
plugin- the plug-in that owns this action.provider- provides a list of domain files to be affected by this action.
-
-
Method Details
-
actionPerformed
- Specified by:
actionPerformedin classDomainFileProviderContextAction
-
isEnabledForContext
- Overrides:
isEnabledForContextin classDomainFileProviderContextAction
-
undoCheckOut
protected void undoCheckOut()Gets the domain files from the provider and then undoes the checkout on any that are checked out. -
undoCheckOuts
protected void undoCheckOuts(List<ghidra.app.plugin.core.datamgr.archive.DomainFileArchive> unmodifiedArchivesList, List<ghidra.app.plugin.core.datamgr.archive.DomainFileArchive> modifiedArchivesList) throws CancelledException Displays the undo checkout confirmation dialog for each checked out file and then undoes the checkout while keeping a copy of the working version of the file if the user chooses to do so.
All unmodified checkouts will be undone. Only modified checkouts the user chooses will be undone.- Parameters:
unmodifiedArchivesList- the list of unmodified archivesmodifiedArchivesList- the list of archives that have been modified- Throws:
CancelledException- if cancelled
-
saveCheckOutChanges
Saves all checked out changes.- Parameters:
changedList- the list of changes- Throws:
CancelledException- if cancelled
-