mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-05 10:49:34 +02:00
Merge remote-tracking branch 'origin/GT-2763-dragonmacher-unsort-tables'
This commit is contained in:
commit
c048022308
72 changed files with 1453 additions and 1201 deletions
|
@ -794,7 +794,7 @@ public class VTFunctionAssociationProvider extends ComponentProviderAdapter
|
|||
private void getTableFilterString(String tableName, ThreadedTableModel<?, ?> model,
|
||||
StringBuffer buffy) {
|
||||
int filteredCount = model.getRowCount();
|
||||
int unfilteredCount = model.getUnfilteredCount();
|
||||
int unfilteredCount = model.getUnfilteredRowCount();
|
||||
|
||||
buffy.append(tableName).append(" - ").append(filteredCount).append(" functions");
|
||||
if (filteredCount != unfilteredCount) {
|
||||
|
|
|
@ -263,7 +263,7 @@ public class VTImpliedMatchesTableProvider extends ComponentProviderAdapter
|
|||
|
||||
impliedMatchTableModel.addTableModelListener(e -> {
|
||||
int filteredCount = impliedMatchTableModel.getRowCount();
|
||||
int unfilteredCount = impliedMatchTableModel.getUnfilteredCount();
|
||||
int unfilteredCount = impliedMatchTableModel.getUnfilteredRowCount();
|
||||
|
||||
String sessionName = controller.getVersionTrackingSessionName();
|
||||
StringBuffer buffy = new StringBuffer();
|
||||
|
|
|
@ -177,7 +177,7 @@ public class VTMarkupItemsTableModel extends AddressBasedTableModel<VTMarkupItem
|
|||
// Inner Classes
|
||||
//==================================================================================================
|
||||
|
||||
private class MarkupTablePassthroughFilter implements TableFilter<VTMarkupItem> {
|
||||
private static class MarkupTablePassthroughFilter implements TableFilter<VTMarkupItem> {
|
||||
|
||||
private List<Filter<VTMarkupItem>> appliedFilters;
|
||||
|
||||
|
@ -243,6 +243,20 @@ public class VTMarkupItemsTableModel extends AddressBasedTableModel<VTMarkupItem
|
|||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
// not meant to put in hashing structures; the data for equals changes
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
// For now we don't support equals(); if this filter gets re-created,
|
||||
// then the table must be re-filtered. If we decide to implement this method, then
|
||||
// we must also implement equals() on the filters used by this filter.
|
||||
return this == obj;
|
||||
}
|
||||
}
|
||||
|
||||
// column for selecting/editing?
|
||||
|
@ -478,7 +492,7 @@ public class VTMarkupItemsTableModel extends AddressBasedTableModel<VTMarkupItem
|
|||
|
||||
private static final String NO_SOURCE_TEXT = "None";
|
||||
|
||||
private GColumnRenderer<String> sourceCellRenderer = new AbstractGColumnRenderer<String>() {
|
||||
private GColumnRenderer<String> sourceCellRenderer = new AbstractGColumnRenderer<>() {
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
|
||||
|
||||
|
@ -543,30 +557,28 @@ public class VTMarkupItemsTableModel extends AddressBasedTableModel<VTMarkupItem
|
|||
static class IsInDBTableColumn
|
||||
extends AbstractProgramBasedDynamicTableColumn<VTMarkupItem, Boolean> {
|
||||
|
||||
private GColumnRenderer<Boolean> isInDBCellRenderer =
|
||||
new AbstractGColumnRenderer<Boolean>() {
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
|
||||
private GColumnRenderer<Boolean> isInDBCellRenderer = new AbstractGColumnRenderer<>() {
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
|
||||
|
||||
Object value = data.getValue();
|
||||
Object value = data.getValue();
|
||||
|
||||
boolean isInDB = ((Boolean) value).booleanValue();
|
||||
boolean isInDB = ((Boolean) value).booleanValue();
|
||||
|
||||
GTableCellRenderingData renderData =
|
||||
data.copyWithNewValue(isInDB ? "yes" : null);
|
||||
GTableCellRenderingData renderData = data.copyWithNewValue(isInDB ? "yes" : null);
|
||||
|
||||
JLabel renderer = (JLabel) super.getTableCellRendererComponent(renderData);
|
||||
renderer.setOpaque(true);
|
||||
JLabel renderer = (JLabel) super.getTableCellRendererComponent(renderData);
|
||||
renderer.setOpaque(true);
|
||||
|
||||
return renderer;
|
||||
}
|
||||
return renderer;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getFilterString(Boolean t, Settings settings) {
|
||||
boolean isInDB = t.booleanValue();
|
||||
return isInDB ? "yes" : "";
|
||||
}
|
||||
};
|
||||
@Override
|
||||
public String getFilterString(Boolean t, Settings settings) {
|
||||
boolean isInDB = t.booleanValue();
|
||||
return isInDB ? "yes" : "";
|
||||
}
|
||||
};
|
||||
|
||||
@Override
|
||||
public String getColumnName() {
|
||||
|
|
|
@ -321,14 +321,14 @@ public class VTMarkupItemsTableProvider extends ComponentProviderAdapter
|
|||
markupItemsTableModel = new VTMarkupItemsTableModel(controller);
|
||||
markupItemsTableModel.addTableModelListener(e -> {
|
||||
int filteredCount = markupItemsTableModel.getRowCount();
|
||||
int unfilteredCount = markupItemsTableModel.getUnfilteredCount();
|
||||
int unfilteredCount = markupItemsTableModel.getUnfilteredRowCount();
|
||||
|
||||
String sessionName = controller.getVersionTrackingSessionName();
|
||||
StringBuffer buffy = new StringBuffer();
|
||||
buffy.append("[Session: ").append(sessionName).append("] ");
|
||||
buffy.append('-').append(markupItemsTableModel.getRowCount()).append(" markup items");
|
||||
if (filteredCount != unfilteredCount) {
|
||||
buffy.append(" (of ").append(markupItemsTableModel.getUnfilteredCount()).append(
|
||||
buffy.append(" (of ").append(markupItemsTableModel.getUnfilteredRowCount()).append(
|
||||
')');
|
||||
}
|
||||
|
||||
|
@ -848,7 +848,7 @@ public class VTMarkupItemsTableProvider extends ComponentProviderAdapter
|
|||
|
||||
if (filtered) {
|
||||
int filteredCount = markupItemsTableModel.getRowCount();
|
||||
int unfilteredCount = markupItemsTableModel.getUnfilteredCount();
|
||||
int unfilteredCount = markupItemsTableModel.getUnfilteredRowCount();
|
||||
int filteredOutCount = unfilteredCount - filteredCount;
|
||||
ancillaryFilterButton.setToolTipText(
|
||||
"More Filters - " + filteredOutCount + " item(s) hidden");
|
||||
|
|
|
@ -181,7 +181,7 @@ public class VTMatchTableProvider extends ComponentProviderAdapter
|
|||
|
||||
if (filtered) {
|
||||
int filteredCount = matchesTableModel.getRowCount();
|
||||
int unfilteredCount = matchesTableModel.getUnfilteredCount();
|
||||
int unfilteredCount = matchesTableModel.getUnfilteredRowCount();
|
||||
int filteredOutCount = unfilteredCount - filteredCount;
|
||||
ancillaryFilterButton.setToolTipText(
|
||||
"More Filters - " + filteredOutCount + " item(s) hidden");
|
||||
|
@ -231,7 +231,7 @@ public class VTMatchTableProvider extends ComponentProviderAdapter
|
|||
matchesTableModel = new VTMatchTableModel(controller);
|
||||
matchesTableModel.addTableModelListener(e -> {
|
||||
int filteredCount = matchesTableModel.getRowCount();
|
||||
int unfilteredCount = matchesTableModel.getUnfilteredCount();
|
||||
int unfilteredCount = matchesTableModel.getUnfilteredRowCount();
|
||||
|
||||
String sessionName = controller.getVersionTrackingSessionName();
|
||||
StringBuffer buffy = new StringBuffer();
|
||||
|
|
|
@ -137,7 +137,7 @@ public abstract class AbstractVTMatchTableModel extends AddressBasedTableModel<V
|
|||
//==================================================================================================
|
||||
// Inner Classes
|
||||
//==================================================================================================
|
||||
private class MatchTablePassthroughFilter implements TableFilter<VTMatch> {
|
||||
private static class MatchTablePassthroughFilter implements TableFilter<VTMatch> {
|
||||
|
||||
private List<Filter<VTMatch>> appliedFilters;
|
||||
|
||||
|
@ -203,6 +203,20 @@ public abstract class AbstractVTMatchTableModel extends AddressBasedTableModel<V
|
|||
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
// not meant to put in hashing structures; the data for equals changes
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
// For now we don't support equals(); if this filter gets re-created,
|
||||
// then the table must be re-filtered. If we decide to implement this method, then
|
||||
// we must also implement equals() on the filters used by this filter.
|
||||
return this == obj;
|
||||
}
|
||||
}
|
||||
|
||||
static class MarkupStatusColumnComparator implements Comparator<VTMatch> {
|
||||
|
@ -397,7 +411,7 @@ public abstract class AbstractVTMatchTableModel extends AddressBasedTableModel<V
|
|||
return 55;
|
||||
}
|
||||
|
||||
private GColumnRenderer<VTScore> renderer = new AbstractGColumnRenderer<VTScore>() {
|
||||
private GColumnRenderer<VTScore> renderer = new AbstractGColumnRenderer<>() {
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
|
||||
|
||||
|
@ -457,7 +471,7 @@ public abstract class AbstractVTMatchTableModel extends AddressBasedTableModel<V
|
|||
return 55;
|
||||
}
|
||||
|
||||
private GColumnRenderer<VTScore> renderer = new AbstractGColumnRenderer<VTScore>() {
|
||||
private GColumnRenderer<VTScore> renderer = new AbstractGColumnRenderer<>() {
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
|
||||
|
||||
|
@ -550,7 +564,7 @@ public abstract class AbstractVTMatchTableModel extends AddressBasedTableModel<V
|
|||
}
|
||||
|
||||
private GColumnRenderer<DisplayableLabel> labelCellRenderer =
|
||||
new AbstractGColumnRenderer<DisplayableLabel>() {
|
||||
new AbstractGColumnRenderer<>() {
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
|
||||
|
||||
|
@ -681,7 +695,7 @@ public abstract class AbstractVTMatchTableModel extends AddressBasedTableModel<V
|
|||
}
|
||||
|
||||
private GColumnRenderer<DisplayableAddress> addressCellRenderer =
|
||||
new AbstractGColumnRenderer<DisplayableAddress>() {
|
||||
new AbstractGColumnRenderer<>() {
|
||||
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
|
||||
|
@ -788,7 +802,7 @@ public abstract class AbstractVTMatchTableModel extends AddressBasedTableModel<V
|
|||
}
|
||||
|
||||
private GColumnRenderer<DisplayableLabel> labelCellRenderer =
|
||||
new AbstractGColumnRenderer<DisplayableLabel>() {
|
||||
new AbstractGColumnRenderer<>() {
|
||||
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
|
||||
|
@ -921,7 +935,7 @@ public abstract class AbstractVTMatchTableModel extends AddressBasedTableModel<V
|
|||
}
|
||||
|
||||
private GColumnRenderer<DisplayableAddress> addressCellRenderer =
|
||||
new AbstractGColumnRenderer<DisplayableAddress>() {
|
||||
new AbstractGColumnRenderer<>() {
|
||||
@Override
|
||||
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue