Merge remote-tracking branch 'origin/patch'

Conflicts:
	Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/help/ProcessorListPlugin.java
	Ghidra/Framework/Gui/src/main/java/ghidra/util/HTMLUtilities.java
This commit is contained in:
Ryan Kurtz 2024-02-07 11:18:36 -05:00
commit 80d1031d01
50 changed files with 713 additions and 388 deletions

View file

@ -54,9 +54,9 @@ public class ProjectDataTablePanel extends JPanel {
public Set<DomainFile> filesPendingSelection;
private GHtmlLabel capacityExceededText =
new GHtmlLabel("<HTML><CENTER><I>Table view disabled for very large projects, or<BR>" +
new GHtmlLabel("<html><CENTER><I>Table view disabled for very large projects, or<BR>" +
"if an older project/repository filesystem is in use.<BR>" +
"View will remain disabled until project is closed.</I></CENTER></HTML>");
"View will remain disabled until project is closed.</I></CENTER></html>");
private GGlassPanePainter painter = new TableGlassPanePainter();
@ -95,8 +95,9 @@ public class ProjectDataTablePanel extends JPanel {
checkOpen(e);
}
});
gTable.getSelectionModel().addListSelectionListener(
e -> plugin.getTool().contextChanged(null));
gTable.getSelectionModel()
.addListSelectionListener(
e -> plugin.getTool().contextChanged(null));
gTable.setDefaultRenderer(Date.class, new DateCellRenderer());
gTable.setDefaultRenderer(DomainFileType.class, new TypeCellRenderer());
@ -275,7 +276,7 @@ public class ProjectDataTablePanel extends JPanel {
//==================================================================================================
// Inner Classes
//==================================================================================================
//==================================================================================================
private class ProjectDataTableDomainFolderChangeListener implements DomainFolderChangeListener {

View file

@ -89,17 +89,17 @@ public class ProjectDataDeleteAction extends FrontendProjectTreeAction {
if (fileCount == 1) {
if (!selectedFiles.isEmpty()) {
DomainFile file = CollectionUtils.any(selectedFiles);
return "<HTML>Are you sure you want to <B><U>permanently</U></B> delete \"" +
return "<html>Are you sure you want to <B><U>permanently</U></B> delete \"" +
HTMLUtilities.escapeHTML(file.getName()) + "\"?";
}
// only folders are selected, but they contain files
return "<HTML>Are you sure you want to <B><U>permanently</U></B> delete the " +
return "<html>Are you sure you want to <B><U>permanently</U></B> delete the " +
" selected files and folders?";
}
// multiple files selected
return "<HTML>Are you sure you want to <B><U>permanently</U></B> delete the " + fileCount +
return "<html>Are you sure you want to <B><U>permanently</U></B> delete the " + fileCount +
" selected files?";
}

View file

@ -68,7 +68,7 @@ class PluginDetailsPanel extends AbstractDetailsPanel {
List<PluginDescription> dependencies = model.getDependencies(descriptor);
Collections.sort(dependencies, (pd1, pd2) -> pd1.getName().compareTo(pd2.getName()));
StringBuilder buffer = new StringBuilder("<HTML>");
StringBuilder buffer = new StringBuilder("<html>");
buffer.append("<TABLE cellpadding=2>");

View file

@ -57,7 +57,7 @@ class ExtensionDetailsPanel extends AbstractDetailsPanel {
createFieldAttributes();
createMainPanel();
// Any time the table is reloaded or a new selection is made, we want to reload this
// Any time the table is reloaded or a new selection is made, we want to reload this
// panel. This ensures we are always viewing data for the currently-selected item.
tablePanel.getTableModel().addThreadedTableModelListener(new ThreadedTableModelListener() {
@ -94,7 +94,7 @@ class ExtensionDetailsPanel extends AbstractDetailsPanel {
return;
}
StringBuilder buffer = new StringBuilder("<HTML>");
StringBuilder buffer = new StringBuilder("<html>");
buffer.append("<TABLE cellpadding=2>");
insertRowTitle(buffer, "Name");