diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/util/viewer/field/ListingFieldDescriptionProvider.java b/Ghidra/Features/Base/src/main/java/ghidra/app/util/viewer/field/ListingFieldDescriptionProvider.java index f3113d5b72..e02716b3c0 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/util/viewer/field/ListingFieldDescriptionProvider.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/util/viewer/field/ListingFieldDescriptionProvider.java @@ -4,9 +4,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -22,19 +22,28 @@ import ghidra.program.model.address.Address; import ghidra.program.util.ProgramLocation; public class ListingFieldDescriptionProvider implements FieldDescriptionProvider { - + private boolean verbose = false; @Override public String getDescription(FieldLocation loc, Field field) { - if (field instanceof ListingField listingField) { - FieldFactory fieldFactory = listingField.getFieldFactory(); + if (!(field instanceof ListingField listingField)) { + return "No program open"; + } + FieldFactory fieldFactory = listingField.getFieldFactory(); + StringBuilder buf = new StringBuilder(fieldFactory.getFieldName()); + if (verbose) { ProgramLocation location = fieldFactory.getProgramLocation(0, 0, listingField); if (location != null) { Address address = location.getAddress(); - String addressString = - address.toString(address.getAddressSpace().showSpaceName(), 1); - return fieldFactory.getFieldName() + " Field at Address " + addressString; + buf.append(" Field at Address "); + buf.append(address.toString(address.getAddressSpace().showSpaceName(), 1)); } } - return "No program open"; + buf.append(": "); + buf.append(field.getText()); + return buf.toString(); + } + + public void setVerbose(boolean b) { + this.verbose = b; } } diff --git a/Ghidra/Features/ByteViewer/src/main/java/ghidra/app/plugin/core/byteviewer/ByteViewerComponent.java b/Ghidra/Features/ByteViewer/src/main/java/ghidra/app/plugin/core/byteviewer/ByteViewerComponent.java index 85b2362538..7110c00a6f 100644 --- a/Ghidra/Features/ByteViewer/src/main/java/ghidra/app/plugin/core/byteviewer/ByteViewerComponent.java +++ b/Ghidra/Features/ByteViewer/src/main/java/ghidra/app/plugin/core/byteviewer/ByteViewerComponent.java @@ -115,7 +115,7 @@ public class ByteViewerComponent extends FieldPanel if (info != null) { String modelName = model.getName(); String location = getAccessibleLocationInfo(info.getBlock(), info.getOffset()); - return modelName + " format at " + location; + return modelName + " value = " + field.getText() + " at " + location; } return null; }