From d9af59df1a4b26c5ec53c3ff9350ecfe2ee3d11d Mon Sep 17 00:00:00 2001 From: dragonmacher <48328597+dragonmacher@users.noreply.github.com> Date: Thu, 19 May 2022 18:33:40 -0400 Subject: [PATCH] GP-1913 - Updated data type synchronization workflow by adding a new action and a home button to the structure editor. Added action to the composite editors and enum editor to show the type being edited in the Data Type Manager's tree. --- .../invm/InVmModelForFridaFactoryTest.java | 6 +- .../InVmModelForFridaInterpreterTest.java | 6 +- .../invm/InVmModelForFridaMethodsTest.java | 6 +- .../InVmModelForFridaRootAttacherTest.java | 9 +- .../InVmModelForFridaRootLauncherTest.java | 6 +- .../InVmModelForFridaScenarioStackTest.java | 6 +- .../InVmModelForFridaX64RegistersTest.java | 8 +- .../topics/DataTypeEditors/EnumEditor.htm | 11 + .../DataTypeEditors/StructureEditor.htm | 12 +- .../DataTypeEditors/images/EnumEditor.png | Bin 21220 -> 21694 bytes .../images/StructureEditor.png | Bin 47126 -> 50721 bytes .../images/StructureEditorPacked.png | Bin 45444 -> 48774 bytes .../images/StructureEditorWithFlexArray.png | Bin 52933 -> 56858 bytes .../DataTypeEditors/images/UnionEditor.png | Bin 33023 -> 35715 bytes .../images/UnionEditorPacked.png | Bin 32009 -> 34640 bytes .../core/compositeeditor/ApplyAction.java | 9 +- .../CompositeEditorTableAction.java | 2 +- .../core/compositeeditor/EditorProvider.java | 19 +- .../FindReferencesToField.java | 8 +- .../ShowDataTypeInTreeAction.java | 60 ++++ .../StructureEditorProvider.java | 18 +- .../compositeeditor/UnionEditorProvider.java | 19 +- .../core/datamgr/DataTypeManagerPlugin.java | 17 +- .../core/datamgr/DataTypeSynchronizer.java | 67 ++-- .../core/datamgr/DataTypesActionContext.java | 53 ++- .../core/datamgr/DataTypesProvider.java | 2 + .../core/datamgr/actions/PasteAction.java | 4 +- .../associate/AssociateDataTypeAction.java | 322 ++++++++++++++++++ .../actions/{ => associate}/CommitAction.java | 17 +- .../CommitSingleDataTypeAction.java | 2 +- .../{ => associate}/DisassociateAction.java | 12 +- .../DisassociateDataTypeAction.java | 23 +- .../actions/{ => associate}/RevertAction.java | 19 +- .../{ => associate}/RevertDataTypeAction.java | 60 ++-- .../actions/{ => associate}/SyncAction.java | 17 +- .../{ => associate}/SyncRefreshAction.java | 2 +- .../actions/{ => associate}/UpdateAction.java | 19 +- .../UpdateSingleDataTypeAction.java | 2 +- .../archive/DataTypeManagerHandler.java | 4 +- .../datamgr/editor/EnumEditorProvider.java | 41 ++- .../tree/DataTypeDragNDropHandler.java | 4 +- .../util/DataTypeTreeCopyMoveTask.java | 103 +++--- .../core/datamgr/util/DataTypeUtils.java | 152 +++------ .../StructureEditorLockedEnablementTest.java | 27 +- ...StructureEditorUnlockedEnablementTest.java | 15 +- .../core/datamgr/DataTypeTestUtils.java | 4 +- .../DeveloperDumpAllTypesScript.java | 2 +- .../widgets/combobox/GhidraComboBox.java | 32 +- .../dialogs/InputWithChoicesDialog.java | 44 ++- .../main/java/docking/widgets/tree/GTree.java | 42 ++- .../main/java/generic/test/AbstractGTest.java | 14 +- .../program/model/data/DataTypeManager.java | 47 +-- .../program/model/data/StructureFactory.java | 34 +- 53 files changed, 955 insertions(+), 453 deletions(-) create mode 100644 Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/ShowDataTypeInTreeAction.java create mode 100644 Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/AssociateDataTypeAction.java rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/CommitAction.java (89%) rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/CommitSingleDataTypeAction.java (98%) rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/DisassociateAction.java (97%) rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/DisassociateDataTypeAction.java (93%) rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/RevertAction.java (85%) rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/RevertDataTypeAction.java (71%) rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/SyncAction.java (97%) rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/SyncRefreshAction.java (98%) rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/UpdateAction.java (85%) rename Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/{ => associate}/UpdateSingleDataTypeAction.java (98%) diff --git a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaFactoryTest.java b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaFactoryTest.java index 5c4c2048d6..220888f928 100644 --- a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaFactoryTest.java +++ b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaFactoryTest.java @@ -15,8 +15,12 @@ */ package agent.frida.model.invm; -import agent.frida.model.AbstractModelForFridaFactoryTest; +import org.junit.experimental.categories.Category; +import agent.frida.model.AbstractModelForFridaFactoryTest; +import generic.test.category.NightlyCategory; + +@Category(NightlyCategory.class) // this may actually be an @PortSensitive test public class InVmModelForFridaFactoryTest extends AbstractModelForFridaFactoryTest { @Override public ModelHost modelHost() throws Throwable { diff --git a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaInterpreterTest.java b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaInterpreterTest.java index 17b36f4627..3b18537083 100644 --- a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaInterpreterTest.java +++ b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaInterpreterTest.java @@ -17,11 +17,14 @@ package agent.frida.model.invm; import org.junit.Ignore; import org.junit.Test; +import org.junit.experimental.categories.Category; import agent.frida.model.AbstractModelForFridaInterpreterTest; +import generic.test.category.NightlyCategory; import ghidra.dbg.test.ProvidesTargetViaLaunchSpecimen; -public class InVmModelForFridaInterpreterTest extends AbstractModelForFridaInterpreterTest +@Category(NightlyCategory.class) // this may actually be an @PortSensitive test +public class InVmModelForFridaInterpreterTest extends AbstractModelForFridaInterpreterTest implements ProvidesTargetViaLaunchSpecimen { @Override public ModelHost modelHost() throws Throwable { @@ -61,4 +64,3 @@ public class InVmModelForFridaInterpreterTest extends AbstractModelForFridaInter } } - diff --git a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaMethodsTest.java b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaMethodsTest.java index 760d548974..20a862a90a 100644 --- a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaMethodsTest.java +++ b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaMethodsTest.java @@ -15,8 +15,12 @@ */ package agent.frida.model.invm; -import agent.frida.model.AbstractModelForFridaMethodsTest; +import org.junit.experimental.categories.Category; +import agent.frida.model.AbstractModelForFridaMethodsTest; +import generic.test.category.NightlyCategory; + +@Category(NightlyCategory.class) // this may actually be an @PortSensitive test public class InVmModelForFridaMethodsTest extends AbstractModelForFridaMethodsTest { @Override public ModelHost modelHost() throws Throwable { diff --git a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaRootAttacherTest.java b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaRootAttacherTest.java index 8859c48c07..23e545f24b 100644 --- a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaRootAttacherTest.java +++ b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaRootAttacherTest.java @@ -17,24 +17,27 @@ package agent.frida.model.invm; import org.junit.Ignore; import org.junit.Test; +import org.junit.experimental.categories.Category; import agent.frida.model.AbstractModelForFridaRootAttacherTest; +import generic.test.category.NightlyCategory; +@Category(NightlyCategory.class) // this may actually be an @PortSensitive test public class InVmModelForFridaRootAttacherTest extends AbstractModelForFridaRootAttacherTest { @Override public ModelHost modelHost() throws Throwable { return new InVmFridaModelHost(); } - + // NB: These tests need debugger rights, which means either: // (1) on macos, codesigning the executables // (2) on linux, "sudo su; echo 0 > /proc/sys/kernel/yama/ptrace_scope" - + @Override @Ignore // test requires ability to attach by object & frida version requires pid @Test public void testAttachByObjBogusThrowsException() throws Throwable { super.testAttachByObjBogusThrowsException(); } - + } diff --git a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaRootLauncherTest.java b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaRootLauncherTest.java index 1e89fe2b39..1f101aaeea 100644 --- a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaRootLauncherTest.java +++ b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaRootLauncherTest.java @@ -15,8 +15,12 @@ */ package agent.frida.model.invm; -import agent.frida.model.AbstractModelForFridaRootLauncherTest; +import org.junit.experimental.categories.Category; +import agent.frida.model.AbstractModelForFridaRootLauncherTest; +import generic.test.category.NightlyCategory; + +@Category(NightlyCategory.class) // this may actually be an @PortSensitive test public class InVmModelForFridaRootLauncherTest extends AbstractModelForFridaRootLauncherTest { @Override public ModelHost modelHost() throws Throwable { diff --git a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaScenarioStackTest.java b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaScenarioStackTest.java index 1b24b51b67..a922224ec1 100644 --- a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaScenarioStackTest.java +++ b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaScenarioStackTest.java @@ -15,8 +15,12 @@ */ package agent.frida.model.invm; -import agent.frida.model.AbstractModelForFridaScenarioStackTest; +import org.junit.experimental.categories.Category; +import agent.frida.model.AbstractModelForFridaScenarioStackTest; +import generic.test.category.NightlyCategory; + +@Category(NightlyCategory.class) // this may actually be an @PortSensitive test public class InVmModelForFridaScenarioStackTest extends AbstractModelForFridaScenarioStackTest { @Override public ModelHost modelHost() throws Throwable { diff --git a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaX64RegistersTest.java b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaX64RegistersTest.java index b0534cd62f..c5152c2aca 100644 --- a/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaX64RegistersTest.java +++ b/Ghidra/Debug/Debugger-agent-frida/src/test/java/agent/frida/model/invm/InVmModelForFridaX64RegistersTest.java @@ -15,13 +15,17 @@ */ package agent.frida.model.invm; -import agent.frida.model.AbstractModelForFridaX64RegistersTest; +import org.junit.experimental.categories.Category; +import agent.frida.model.AbstractModelForFridaX64RegistersTest; +import generic.test.category.NightlyCategory; + +@Category(NightlyCategory.class) // this may actually be an @PortSensitive test public class InVmModelForFridaX64RegistersTest extends AbstractModelForFridaX64RegistersTest { @Override public ModelHost modelHost() throws Throwable { return new InVmFridaModelHost(); } - + } diff --git a/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/EnumEditor.htm b/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/EnumEditor.htm index 75944bace4..e6490270c0 100644 --- a/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/EnumEditor.htm +++ b/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/EnumEditor.htm @@ -98,6 +98,17 @@ the Data Type Manager display is updated to reflect the new name in the tree.

+ + +

Show In Data Type Manager

+ +
+

Select the icon in the toolbar to have the editor's + data type be highlighted in the Data Type Manager's tree. +

+ +
Change the Sort Order

As with most tables in Ghidra, you can change the sort order of a column by diff --git a/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/StructureEditor.htm b/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/StructureEditor.htm index 69c6be97ae..dbb850fea7 100644 --- a/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/StructureEditor.htm +++ b/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/StructureEditor.htm @@ -102,7 +102,17 @@ data items in the program will have changed due to the apply.

-

Closing the Editor

+ +

Show In Data Type Manager

+ +
+

Select the icon in the toolbar to have the editor's + data type be highlighted in the Data Type Manager's tree. +

+ +
+ +

Closing the Editor

Select the Close dockable component icon in diff --git a/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/images/EnumEditor.png b/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/images/EnumEditor.png index 4eceff2d80f2e592aad1665249c1ed615164e530..ece40a8b8a99875d23c1b3e37477b9fc771fc74b 100644 GIT binary patch literal 21694 zcmb4r1yt1C*Dj)1h#)W^NH+{2(ygR)4@2u9Eg&63h^UlwgMf6*z&NC|3PVeW(&^CM zd4Hqt`+fg=@49!bkHvBg=NEI%KIiQHJkQ?8P%RB5qTAHB@$m47l%LA$;NjszfX`Dm zuLJ*H{?Z7-!_#}GEdNB$%WOUUmKV|JbX#5hJ}U1ZuOhFqnq!QsHaonbu<{^1`@nDd z&@_ahibVDWBNLjH)SmPn(*xz`=#Xnqv@6aVb|pjv(j`1Q8e$ka4o@XBQ^l~|6Ez~P z0+}COtxl*JZ@yswetXjcn=YTAYzgmOdqM*Iu9l5?1T{j{Go@*P{@~%gz{`Pw=-dhZ z`~eL#L~|K?M9?jEE+1{lQ5l~sG1D$~trluMu`2ll!&K@O=};%EUrQJ))WJj+LlO+x zkB%&8Gks$fEBEzyB36dohYDj_3mz;D3fhgR$If>2l5j}KaB=4~G1m#z)W1VX+jKUUo0C9RX;+ft{(#nDY;9m05otcYkzKX!vD#nS5P3lBp&NX+M_hbm z>8G+%!Sn&g*@&SMmRG#i&0TwGOkJsZqg32yX(>Z7Dx-9$JSmN?!Dn@8vMv2&Z@9oo zhW7kqbC~}b-@c~B*ROtW0-IKMPe1ty+I$XwyhTPl(4uUsHo|Ya z!}x81(^gGNUN?U^S$zHTv#~uvtEFV=-J3t6Q}Qf+zoad&c}(a>K=^{*dA5lPXkT&qsH&xhCn)zpiLfh|> zOEiY@@n?5q>T!3`m&D{RUGLJ%j$be-?jcry#&WMuk#WEB z=ts8+5mme5Q{FN-6g*gYHBQO&D(UBHOzXw&8$VkwuYBhj$@RlphAp-E*PhfjeP4i{GWI;SgnUKC+>fe*T8JQ9Lq#)>Z90pUKQBYCgGp`{s^BR`X?U0qr-sSHv}LDE3pOd{TY$x?CJT$dXsLPmI=D&h1*)$EbW)O1HOfJ6mq{m=8HK za=({twuBK-GP~LE<>D0vLZ2WRASB=rP|I!D{_XJLyVk@(WglC*yaEi5QqXB-IoeR+Ja1KoHdF^gke?R2lG0kN_U*Qt?{`G%*{;lcbbg;YlH;o&JI|m|M_)B{nb&F!8N-dsY2Ib zn9DM~4j2Y$RM|O`{qn;HmDkan#-LtKNI}oF@WbU*&w)>oU0>KE$8A;zn3*>~u>EwVQSn->dyK#JkN8M?+GAc58?;FZ z{KuZp;Q*pq1^FdOWl|T@Wt37TkK{G2Wp0WmHJ`ReeSl(GCWh(gXl3p>p`om77s}@+ z>y)sBk7v;*hljpdF!z1C;)5+th8e{w67WTRzQ%6HXDFH>CH%Z~hLR0J#!j1mdUzR| zyA(}=IM2`~zvrx~iHy~y(~*BsmI2LsY8fffLx`@0AKv?gl(vk4va+5l_rQ5qLWdo( zTHDlyoRCt-=kd|6qB5jTgD=i@Zz(9Us-E5=k;R~Ru>Cm&1E-p?EK9j0VE@dO+V(=@ z*lX!N&tdLMPsvRiJZ=E%(T5j3C#GKpMN9G

+-+Xy~tBzxwml)5;Q{C1_Ld)aY2H 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 RfHeXiLp?Lyvdh=P{{y&z#{B>Q literal 21220 zcmb5Wby!sG*9MA-5`w^hNSDMQ2qN7`cMU`P4$|EXDk3EzDcw0Em8ri)k8{p7vzz)Q5}=$Y-VPjV7R<2Vm?y& zK!Wft@a?&VcYQ_Rr8pT(```oco%0+rLUDw)TJA~&#)5@KOZ5Z~O?yDSs-(-SaV34@bUuuv z$c9i$KGRB@YPcwOcS)u(foK?>uVxaHA%pYEdi``APEtR^ekvHKSMD-YTqoViCs_Zb zK$AJJTK}Hw##%vwL{-G{bC)s;l)kJY)pP&B zy-E9HLA^DL;fXZ8%KrYmZfYu9*D~AuY{QE>udAYit|{AjXF+SK@{nq2Ud{~4pfzUz;t`p?IR->jdXc&fFsP%+4EJb86a7)~AY z3rc08@kFS{u+@WV;o0gFvESd{{Awn7w)T}@w>76-)?z=FByasI_ff%{^)iyYjjy~? zt%u~TcVC+2y-;lJ8mIoC%k3;|acn^4yi85jm74I&hw6aT182FDeF*jDOGIE;-QBRa z@vG3E#lXR?ugZZo+JK6RGG5puPe zU6U2sblIGW`(;PvR&#Z)X47?ZhQZnBO@mHrnlJ0-D9YU*YsMQ_Zb;c>L=LK zej0@9)4Q>Y8x=x$YTV~2`r^aww;VD!90miApD;RWJM5K2C^iaykbGPGkRxcl† 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�DEwzs%pyXczgvvb_Ity* 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 S{wJ-_YZpwc&Q%#*iTV=*t=oqH diff --git a/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/images/StructureEditor.png b/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/images/StructureEditor.png index 194fbb1ffd3e0260c1fec02f41904aba13d2b6db..61e5901d1810a297aff80309cffba0653db2d3b1 100644 GIT binary patch literal 50721 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 diff --git a/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/images/StructureEditorWithFlexArray.png b/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/images/StructureEditorWithFlexArray.png index 8fcb4e4528354e704c12fba9ed1fee0b6f47a247..81cecbcb7c8663747a8bb3dfb312b4835043385c 100644 GIT binary patch literal 56858 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 literal 52933 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 Wdda`dJNa4gKbLi(7YfeZdGKFsx_=`8 diff --git a/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/images/UnionEditor.png b/Ghidra/Features/Base/src/main/help/help/topics/DataTypeEditors/images/UnionEditor.png index 02c3152875fefc1c3fa3c60eb5da1cd4356718b2..d78f2141821a04aba84f280bdcdc8cabbefda874 100644 GIT binary patch literal 35715 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 RcdmecG7^g7MWROD{|CiDVXXiF literal 33023 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

U_6)6<4Df6K8l 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 V9YLSk&2!+NysWZJ$zv10{|j4_yU73m literal 32009 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 Zd2gI diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/ApplyAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/ApplyAction.java index 65948da6a4..cbae61492c 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/ApplyAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/ApplyAction.java @@ -23,7 +23,7 @@ import ghidra.program.model.data.InvalidDataTypeException; import resources.ResourceManager; /** - * ApplyAction is an action for applying editor changes. + * ApplyAction is an action for applying editor changes. */ public class ApplyAction extends CompositeEditorTableAction { @@ -48,11 +48,8 @@ public class ApplyAction extends CompositeEditorTableAction { try { model.apply(); } - catch (EmptyCompositeException e1) { - model.setStatus(e1.getMessage(), true); - } - catch (InvalidDataTypeException e1) { - model.setStatus(e1.getMessage(), true); + catch (EmptyCompositeException | InvalidDataTypeException e) { + model.setStatus(e.getMessage(), true); } requestTableFocus(); } diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/CompositeEditorTableAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/CompositeEditorTableAction.java index 92c209d453..3d8ee05b99 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/CompositeEditorTableAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/CompositeEditorTableAction.java @@ -45,7 +45,7 @@ abstract public class CompositeEditorTableAction extends DockingAction implement public static final String EDIT_ACTION_PREFIX = "Editor: "; public CompositeEditorTableAction(CompositeEditorProvider provider, String name, String group, - String[] popupPath, String[] menuPath, ImageIcon icon) { + String[] popupPath, String[] menuPath, Icon icon) { super(name, provider.plugin.getName(), KeyBindingType.SHARED); this.provider = provider; model = provider.getModel(); diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/EditorProvider.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/EditorProvider.java index 061fad90ed..1986a759cf 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/EditorProvider.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/EditorProvider.java @@ -15,53 +15,55 @@ */ package ghidra.app.plugin.core.compositeeditor; -import ghidra.program.model.data.*; import docking.ComponentProvider; +import ghidra.program.model.data.*; /** * Interface implemented by data type editors. - * - * */ public interface EditorProvider { /** * Get the name of this editor. + * @return the name of this editor */ public String getName(); /** * Get the pathname of the data type being edited. + * @return the pathname of the data type being edited */ public DataTypePath getDtPath(); /** * Get the component provider for this editor. + * @return the component provider for this editor */ public ComponentProvider getComponentProvider(); /** * Get the datatype manager associated with this editor. + * @return the datatype manager associated with this editor */ public DataTypeManager getDataTypeManager(); /** - * Notification that the data type manager domain object (program or data type archive) was restored. + * Notification that the data type manager domain object (program or data type archive) was + * restored. * @param domainObject the program or data type archive that was restored. */ public void domainObjectRestored(DataTypeManagerDomainObject domainObject); /** - * Return whether this editor is editing the data type with the given - * path. + * Return whether this editor is editing the data type with the given path. * @param dtPath path of a data type * @return true if the data type for the pathname is being edited */ public boolean isEditing(DataTypePath dtPath); /** - * Add an editor listener that will be notified when the edit window is - * closed. + * Add an editor listener that will be notified when the edit window is closed. + * @param listener the listener */ public void addEditorListener(EditorListener listener); @@ -72,6 +74,7 @@ public interface EditorProvider { /** * Returns whether changes need to be saved. + * @return whether changes need to be saved */ public boolean needsSave(); diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/FindReferencesToField.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/FindReferencesToField.java index b830d1e819..42f5a3c728 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/FindReferencesToField.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/FindReferencesToField.java @@ -15,16 +15,13 @@ */ package ghidra.app.plugin.core.compositeeditor; -import javax.swing.SwingUtilities; - import docking.ActionContext; import docking.action.MenuData; import ghidra.app.plugin.core.navigation.FindAppliedDataTypesService; import ghidra.app.util.HelpTopics; import ghidra.program.model.data.Composite; import ghidra.program.model.data.DataTypeComponent; -import ghidra.util.HelpLocation; -import ghidra.util.Msg; +import ghidra.util.*; /** * An action to show references to the field in the currently selected editor row @@ -56,8 +53,7 @@ public class FindReferencesToField extends CompositeEditorTableAction { String fieldName = getFieldName(); Composite composite = model.getOriginalComposite(); - SwingUtilities.invokeLater( - () -> service.findAndDisplayAppliedDataTypeAddresses(composite, fieldName)); + Swing.runLater(() -> service.findAndDisplayAppliedDataTypeAddresses(composite, fieldName)); } private String getFieldName() { diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/ShowDataTypeInTreeAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/ShowDataTypeInTreeAction.java new file mode 100644 index 0000000000..4fe4b8b260 --- /dev/null +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/ShowDataTypeInTreeAction.java @@ -0,0 +1,60 @@ +/* ### + * IP: GHIDRA + * + * 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. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package ghidra.app.plugin.core.compositeeditor; + +import javax.swing.Icon; + +import docking.ActionContext; +import docking.action.ToolBarData; +import ghidra.app.services.DataTypeManagerService; +import ghidra.program.model.data.*; +import resources.ResourceManager; + +/** + * Shows the editor's data type in the UI using the {@link DataTypeManagerService}. + */ +public class ShowDataTypeInTreeAction extends CompositeEditorTableAction { + + // This action should go after the row-based actions, which have this group: + // 3_COMPONENT_EDITOR_ACTION + private static final String TOOLBAR_GROUP = "4_COMPONENT_EDITOR_ACTION"; + private static final Icon ICON = ResourceManager.loadImage("images/go-home.png"); + + public ShowDataTypeInTreeAction(CompositeEditorProvider provider) { + super(provider, "Show In Data Type Manager", TOOLBAR_GROUP, null /*popupPath*/, + null /*menuPath*/, ICON); + + setToolBarData( + new ToolBarData(ResourceManager.loadImage("images/go-home.png"), TOOLBAR_GROUP)); + } + + @Override + public void actionPerformed(ActionContext context) { + DataTypeManagerService dtmService = tool.getService(DataTypeManagerService.class); + DataTypeManager dtm = provider.getDataTypeManager(); + DataTypePath path = provider.getDtPath(); + DataType dt = dtm.getDataType(path); + dtmService.setDataTypeSelected(dt); + } + + @Override + public void adjustEnablement() { + DataTypeManager dtm = provider.getDataTypeManager(); + DataTypePath path = provider.getDtPath(); + DataType dt = dtm.getDataType(path); + setEnabled(dt != null); + } +} diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/StructureEditorProvider.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/StructureEditorProvider.java index a3eafc0c3f..43b2e35865 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/StructureEditorProvider.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/StructureEditorProvider.java @@ -55,24 +55,26 @@ public class StructureEditorProvider extends CompositeEditorProvider { return new CompositeEditorTableAction[] { new ApplyAction(this), // new ToggleLockAction(this), - new InsertUndefinedAction(this), - new MoveUpAction(this), + new InsertUndefinedAction(this), + new MoveUpAction(this), new MoveDownAction(this), - new ClearAction(this), - new DuplicateAction(this), + new ClearAction(this), + new DuplicateAction(this), new DuplicateMultipleAction(this), - new DeleteAction(this), - new PointerAction(this), + new DeleteAction(this), + new PointerAction(this), new ArrayAction(this), new FindReferencesToField(this), new UnpackageAction(this), - new EditComponentAction(this), - new EditFieldAction(this), + new EditComponentAction(this), + new EditFieldAction(this), new HexNumbersAction(this), new CreateInternalStructureAction(this), new ShowComponentPathAction(this), new AddBitFieldAction(this), new EditBitFieldAction(this), + new ShowDataTypeInTreeAction(this), + // new ViewBitFieldAction(this) }; //@formatter:on diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/UnionEditorProvider.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/UnionEditorProvider.java index d76688f114..3ac09cc3c9 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/UnionEditorProvider.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/compositeeditor/UnionEditorProvider.java @@ -51,21 +51,22 @@ public class UnionEditorProvider extends CompositeEditorProvider { @Override protected CompositeEditorTableAction[] createActions() { //@formatter:off - return new CompositeEditorTableAction[] { - new ApplyAction(this), + return new CompositeEditorTableAction[] { + new ApplyAction(this), new MoveUpAction(this), - new MoveDownAction(this), - new DuplicateAction(this), + new MoveDownAction(this), + new DuplicateAction(this), new DuplicateMultipleAction(this), - new DeleteAction(this), - new PointerAction(this), + new DeleteAction(this), + new PointerAction(this), new ArrayAction(this), - new ShowComponentPathAction(this), + new ShowComponentPathAction(this), new EditComponentAction(this), - new EditFieldAction(this), + new EditFieldAction(this), new HexNumbersAction(this), new AddBitFieldAction(this), - new EditBitFieldAction(this) + new EditBitFieldAction(this), + new ShowDataTypeInTreeAction(this) }; //@formatter:on } diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypeManagerPlugin.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypeManagerPlugin.java index 797304dd7b..b4b2713e61 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypeManagerPlugin.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypeManagerPlugin.java @@ -38,7 +38,9 @@ import generic.util.Path; import ghidra.app.CorePluginPackage; import ghidra.app.plugin.PluginCategoryNames; import ghidra.app.plugin.ProgramPlugin; -import ghidra.app.plugin.core.datamgr.actions.*; +import ghidra.app.plugin.core.datamgr.actions.RecentlyOpenedArchiveAction; +import ghidra.app.plugin.core.datamgr.actions.UpdateSourceArchiveNamesAction; +import ghidra.app.plugin.core.datamgr.actions.associate.*; import ghidra.app.plugin.core.datamgr.archive.*; import ghidra.app.plugin.core.datamgr.editor.DataTypeEditorManager; import ghidra.app.plugin.core.datamgr.tree.ArchiveNode; @@ -60,8 +62,7 @@ import ghidra.program.model.address.AddressSetView; import ghidra.program.model.data.*; import ghidra.program.model.listing.DataTypeArchive; import ghidra.program.model.listing.Program; -import ghidra.util.HelpLocation; -import ghidra.util.Msg; +import ghidra.util.*; import ghidra.util.datastruct.LRUMap; import ghidra.util.task.TaskLauncher; @@ -570,6 +571,10 @@ public class DataTypeManagerPlugin extends ProgramPlugin return dataTypeManagerHandler.openArchive(archiveName); } + public List getAllArchives() { + return dataTypeManagerHandler.getAllArchives(); + } + public void openProjectDataTypeArchive() { if (openDialog == null) { ActionListener listener = ev -> { @@ -613,7 +618,9 @@ public class DataTypeManagerPlugin extends ProgramPlugin @Override public void setDataTypeSelected(DataType dataType) { if (provider.isVisible()) { - provider.setDataTypeSelected(dataType); + // this is a service method, ensure it is on the Swing thread, since it interacts with + // Swing components + Swing.runIfSwingOrRunLater(() -> provider.setDataTypeSelected(dataType)); } } @@ -725,7 +732,7 @@ public class DataTypeManagerPlugin extends ProgramPlugin return null; } DataTypesActionContext dtContext = (DataTypesActionContext) context; - GTreeNode selectedNode = dtContext.getSelectedNode(); + GTreeNode selectedNode = dtContext.getClickedNode(); if (!(selectedNode instanceof ArchiveNode)) { return null; } diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypeSynchronizer.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypeSynchronizer.java index 3e6a3a15b1..97f6561be6 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypeSynchronizer.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypeSynchronizer.java @@ -48,9 +48,9 @@ public class DataTypeSynchronizer { private int localTransactionID; /** - * Creates a DataTypeSynchronizer to be used for synchronizing data types between a program + * Creates a DataTypeSynchronizer to be used for synchronizing data types between a program * and an archive. - * @param dataTypeManagerHandler the handler that manages all the open data type managers + * @param dataTypeManagerHandler the handler that manages all the open data type managers * whether built-in, program, project data type archive or file data type archive. * @param dataTypeManager the program data type manager. * @param source the data type source archive information indicating the associated archive for @@ -142,35 +142,38 @@ public class DataTypeSynchronizer { } /** - * Commits a single program data type's changes to the associated source data type in the archive. - * @param refDT the program data type - * @return true if the commit succeeds. + * Commits a single program data type's changes to the associated source data type in the + * archive. + * @param dtmHandler the handler that manages data types + * @param dt the program data type + * @return true if the commit succeeds */ - public static boolean commit(DataTypeManagerHandler dtmHandler, DataType refDT) { - SourceArchive sourceArchive = refDT.getSourceArchive(); + public static boolean commit(DataTypeManagerHandler dtmHandler, DataType dt) { + SourceArchive sourceArchive = dt.getSourceArchive(); DataTypeManager sourceDTM = dtmHandler.getDataTypeManager(sourceArchive); if (sourceDTM == null) { return false; } - commit(sourceDTM, refDT); + commit(sourceDTM, dt); return true; } /** * Updates a single data type in the program to match the associated source data type from the * archive. - * @param dataType the program data type - * @return true if the update succeeds. + * @param dtmHandler the handler that manages data types + * @param dt the data type + * @return true if the update succeeds */ - public static boolean update(DataTypeManagerHandler dtmHandler, DataType refDT) { - DataTypeManager dataTypeManager = refDT.getDataTypeManager(); - SourceArchive sourceArchive = refDT.getSourceArchive(); - DataTypeManager sourceDTM = dtmHandler.getDataTypeManager(sourceArchive); - if (dataTypeManager == null || sourceDTM == null) { + public static boolean update(DataTypeManagerHandler dtmHandler, DataType dt) { + DataTypeManager dataTypeManager = dt.getDataTypeManager(); + SourceArchive sourceArchive = dt.getSourceArchive(); + DataTypeManager sourceDtm = dtmHandler.getDataTypeManager(sourceArchive); + if (dataTypeManager == null || sourceDtm == null) { return false; } - DataType sourceDT = sourceDTM.getDataType(sourceArchive, refDT.getUniversalID()); - update(dataTypeManager, sourceDT); + DataType sourceDt = sourceDtm.getDataType(sourceArchive, dt.getUniversalID()); + update(dataTypeManager, sourceDt); return true; } @@ -216,7 +219,7 @@ public class DataTypeSynchronizer { } /** - * If the indicated data type is associated with a source archive, this will remove the + * If the indicated data type is associated with a source archive, this will remove the * association. * @param dataType the data type to be disassociated from a source archive. */ @@ -343,7 +346,7 @@ public class DataTypeSynchronizer { String htmlContent = diffs[0].getHTMLContentString(); String otherContent = diffs[1].getHTMLContentString(); - // this string allows us to force both tables to be the same width, which is + // this string allows us to force both tables to be the same width, which is // aesthetically pleasing String spacerString = createHTMLSpacerString(htmlContent, otherContent); StringBuilder buffy = new StringBuilder(); @@ -355,8 +358,9 @@ public class DataTypeSynchronizer { buffy.append(""); buffy.append(""); - buffy.append("").append(HTMLUtilities.escapeHTML(dataTypeManager.getName())).append( - "


"); + buffy.append("") + .append(HTMLUtilities.escapeHTML(dataTypeManager.getName())) + .append("
"); buffy.append(htmlContent); // horizontal spacer below the inner table in order to force a minimum width @@ -368,8 +372,9 @@ public class DataTypeSynchronizer { buffy.append(""); buffy.append(""); - buffy.append("").append(HTMLUtilities.escapeHTML(sourceArchive.getName())).append( - "
"); + buffy.append("") + .append(HTMLUtilities.escapeHTML(sourceArchive.getName())) + .append("
"); buffy.append(otherContent); @@ -391,12 +396,12 @@ public class DataTypeSynchronizer { return ToolTipUtils.getHTMLRepresentation(sourceDT); } - /** + /** * Compares the two HTML strings to find the widest *rendered* text and then creates * an HTML string of spaces that is wide enough to represent that width. */ private static String createHTMLSpacerString(String htmlContent, String otherHTMLContent) { - // unfortunately, to get the displayed widths, we have to have rendered content, which + // unfortunately, to get the displayed widths, we have to have rendered content, which // is what the JLabels below are doing for us JLabel label1 = new GDHtmlLabel("" + htmlContent); JLabel label2 = new GDHtmlLabel("" + otherHTMLContent); @@ -446,9 +451,9 @@ public class DataTypeSynchronizer { } /** - * Adjusts the data type and source archive info for an associated source archive if its sync - * state is incorrect. It makes sure that a data type that is the same as the associated - * archive one is in-sync. It also makes sure that a data type that differs from the archive + * Adjusts the data type and source archive info for an associated source archive if its sync + * state is incorrect. It makes sure that a data type that is the same as the associated + * archive one is in-sync. It also makes sure that a data type that differs from the archive * one can be committed or updated. */ public void reSyncDataTypes() { @@ -458,8 +463,8 @@ public class DataTypeSynchronizer { return; } - int transactionID = dataTypeManager.startTransaction( - "re-sync '" + sourceArchive.getName() + "' data types"); + int transactionID = dataTypeManager + .startTransaction("re-sync '" + sourceArchive.getName() + "' data types"); try { reSyncOutOfSyncInTimeOnlyDataTypes(); fixSyncForDifferingDataTypes(); @@ -498,7 +503,7 @@ public class DataTypeSynchronizer { /** * This method is to correct a problem where a data type ends up differing from its associated * data type in the archive, but its timestamp information indicates that it is in sync. - * It changes the timestamp info on the data type and the info about the source archive so + * It changes the timestamp info on the data type and the info about the source archive so * the user will be able to commit/update the data type to correctly put it back in sync. */ private void fixSyncForDifferingDataTypes() { diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypesActionContext.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypesActionContext.java index 20553829ec..bb14af45ef 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypesActionContext.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypesActionContext.java @@ -20,13 +20,15 @@ import java.util.List; import javax.swing.tree.TreePath; +import docking.widgets.tree.GTree; import docking.widgets.tree.GTreeNode; import ghidra.app.context.ProgramActionContext; +import ghidra.app.plugin.core.datamgr.archive.BuiltInSourceArchive; import ghidra.app.plugin.core.datamgr.archive.ProjectArchive; -import ghidra.app.plugin.core.datamgr.tree.DataTypeArchiveGTree; -import ghidra.app.plugin.core.datamgr.tree.ProjectArchiveNode; +import ghidra.app.plugin.core.datamgr.tree.*; import ghidra.framework.main.datatable.DomainFileContext; import ghidra.framework.model.DomainFile; +import ghidra.program.model.data.*; import ghidra.program.model.listing.Program; public class DataTypesActionContext extends ProgramActionContext implements DomainFileContext { @@ -53,7 +55,7 @@ public class DataTypesActionContext extends ProgramActionContext implements Doma return isToolbarAction; } - public GTreeNode getSelectedNode() { + public GTreeNode getClickedNode() { return clickedNode; } @@ -85,4 +87,49 @@ public class DataTypesActionContext extends ProgramActionContext implements Doma return true; } + public List getSelectedNodes() { + Object contextObject = getContextObject(); + GTree gTree = (GTree) contextObject; + return gTree.getSelectedNodes(); + } + + public List getDisassociatableNodes() { + + Object contextObject = getContextObject(); + GTree gTree = (GTree) contextObject; + TreePath[] selectionPaths = gTree.getSelectionPaths(); + return getDisassociatableNodes(selectionPaths); + } + + private List getDisassociatableNodes(TreePath[] paths) { + + List nodes = new ArrayList<>(); + for (TreePath treePath : paths) { + DataTypeNode node = getDisassociatableNode(treePath); + if (node != null) { + nodes.add(node); + } + } + return nodes; + } + + private DataTypeNode getDisassociatableNode(TreePath path) { + GTreeNode node = (GTreeNode) path.getLastPathComponent(); + if (!(node instanceof DataTypeNode)) { + return null; + } + + DataTypeNode dataTypeNode = (DataTypeNode) node; + DataType dataType = dataTypeNode.getDataType(); + DataTypeManager dataTypeManager = dataType.getDataTypeManager(); + SourceArchive sourceArchive = dataType.getSourceArchive(); + if (sourceArchive == null || dataTypeManager == null || + sourceArchive.equals(BuiltInSourceArchive.INSTANCE) || + sourceArchive.getSourceArchiveID().equals(dataTypeManager.getUniversalID())) { + + return null; + } + return dataTypeNode; + } + } diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypesProvider.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypesProvider.java index 40f56b32f5..8d6445e231 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypesProvider.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/DataTypesProvider.java @@ -38,6 +38,7 @@ import docking.widgets.textpane.GHtmlTextPane; import docking.widgets.tree.*; import docking.widgets.tree.support.GTreeSelectionEvent.EventOrigin; import ghidra.app.plugin.core.datamgr.actions.*; +import ghidra.app.plugin.core.datamgr.actions.associate.*; import ghidra.app.plugin.core.datamgr.archive.*; import ghidra.app.plugin.core.datamgr.tree.*; import ghidra.app.plugin.core.datamgr.util.DataTypeUtils; @@ -220,6 +221,7 @@ public class DataTypesProvider extends ComponentProviderAdapter { // key binding only addLocalAction(new ClearCutAction(plugin)); // Common + addLocalAction(new AssociateDataTypeAction(plugin)); addLocalAction(new CommitSingleDataTypeAction(plugin)); addLocalAction(new UpdateSingleDataTypeAction(plugin)); addLocalAction(new RevertDataTypeAction(plugin)); diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/PasteAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/PasteAction.java index 2a74d5f445..05e584ba1a 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/PasteAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/PasteAction.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. diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/AssociateDataTypeAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/AssociateDataTypeAction.java new file mode 100644 index 0000000000..3e6a4f8b51 --- /dev/null +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/AssociateDataTypeAction.java @@ -0,0 +1,322 @@ +/* ### + * IP: GHIDRA + * + * 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. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package ghidra.app.plugin.core.datamgr.actions.associate; + +import java.awt.BorderLayout; +import java.awt.Component; +import java.util.List; +import java.util.stream.Collectors; + +import javax.swing.*; + +import org.apache.commons.lang3.StringUtils; + +import docking.*; +import docking.action.DockingAction; +import docking.action.MenuData; +import docking.widgets.OptionDialog; +import docking.widgets.combobox.GhidraComboBox; +import docking.widgets.label.GLabel; +import docking.widgets.tree.GTreeNode; +import ghidra.app.plugin.core.datamgr.DataTypeManagerPlugin; +import ghidra.app.plugin.core.datamgr.DataTypesActionContext; +import ghidra.app.plugin.core.datamgr.archive.*; +import ghidra.app.plugin.core.datamgr.tree.ArchiveNode; +import ghidra.app.plugin.core.datamgr.tree.DataTypeNode; +import ghidra.app.plugin.core.datamgr.util.DataTypeTreeCopyMoveTask; +import ghidra.app.plugin.core.datamgr.util.DataTypeTreeCopyMoveTask.ActionType; +import ghidra.program.model.data.*; +import ghidra.util.Msg; +import ghidra.util.layout.PairLayout; +import ghidra.util.task.TaskLauncher; + +/** + * Allows the user to associate the selected action with a source archive. An associate data type + * allows users to push changes to the source archive and to pull updates from the source archive. + */ +public class AssociateDataTypeAction extends DockingAction { + + private DataTypeManagerPlugin plugin; + + public AssociateDataTypeAction(DataTypeManagerPlugin plugin) { + super("Associate With Archive", plugin.getName()); + this.plugin = plugin; + + setPopupMenuData(new MenuData(new String[] { "Associate With Archive" }, null, "Sync")); + } + + @Override + public boolean isEnabledForContext(ActionContext context) { + if (!(context instanceof DataTypesActionContext)) { + return false; + } + + return hasOnlyDtNodes(((DataTypesActionContext) context).getSelectedNodes()); + } + + private boolean hasOnlyDtNodes(List nodes) { + if (nodes.isEmpty()) { + return false; + } + for (GTreeNode node : nodes) { + if (!(node instanceof DataTypeNode)) { + return false; + } + } + return true; + } + + private boolean isAlreadyAssociated(DataTypesActionContext dtContext) { + + List nodes = dtContext.getDisassociatableNodes(); + return !nodes.isEmpty(); + } + + private boolean hasSingleModifiableSourceArchive(List nodes) { + + Archive sourceArchive = null; + for (GTreeNode node : nodes) { + Archive archive = findArchive(node); + if (sourceArchive == null) { + sourceArchive = archive; + continue; + } + + if (sourceArchive != archive) { + return false; + } + } + + if (sourceArchive != null && sourceArchive.isModifiable()) { + return true; + } + + return false; + } + + private static Archive findArchive(GTreeNode node) { + while (node != null) { + if (node instanceof ArchiveNode) { + return ((ArchiveNode) node).getArchive(); + } + node = node.getParent(); + } + return null; + } + + private List getDestinationArchives() { + + List archives = plugin.getAllArchives(); + List sourceArchives = archives.stream() + .filter(a -> !(a instanceof ProgramArchive)) + .filter(a -> !(a instanceof BuiltInArchive)) + .sorted((a1, a2) -> a1.getName().compareToIgnoreCase(a2.getName())) + .collect(Collectors.toList()); + + return sourceArchives; + } + + @Override + public void actionPerformed(ActionContext context) { + + List nodes = ((DataTypesActionContext) context).getSelectedNodes(); + + if (!hasSingleModifiableSourceArchive(nodes)) { + Msg.showInfo(this, getProviderComponent(), "Multiple Source Archives", + "The currently selected nodes are from multiple archives.\n" + + "Please select only nodes from a single archvie."); + return; + } + + if (isAlreadyAssociated((DataTypesActionContext) context)) { + Msg.showInfo(this, getProviderComponent(), "Already Associated", + "One or more of the currently selected nodes are already associated\n" + + "with a source archive."); + return; + } + + List archives = getDestinationArchives(); + if (archives.isEmpty()) { + Msg.showInfo(this, getProviderComponent(), "No Source Archives Open", + "No source archives open. Please open the desired source archive."); + return; + } + + ChooseArchiveDialog dialog = new ChooseArchiveDialog(archives); + dialog.show(); + if (dialog.isCancelled()) { + return; + } + + Archive destinationArchive = dialog.getArchive(); + Category destinationCategory = dialog.getCategory(); + + DataTypeTreeCopyMoveTask task = + new DataTypeTreeCopyMoveTask(destinationArchive, destinationCategory, nodes, + ActionType.COPY, plugin.getProvider().getGTree(), plugin.getConflictHandler()); + task.setPromptToAssociateTypes(false); // do not prompt the user; they have already decided + TaskLauncher.launch(task); + } + + private JComponent getProviderComponent() { + return plugin.getProvider().getComponent(); + } + + private class ChooseArchiveDialog extends DialogComponentProvider { + + private Category category; + private Archive archive; + + // default to true to handle the case the user presses Escape or presses the x button + private boolean isCancelled = true; + + private GhidraComboBox archivesBox = new GhidraComboBox<>(); + private JTextField categoryField = new JTextField(20); + + ChooseArchiveDialog(List archives) { + super("Choose New Source Archive", true); + + addWorkPanel(buildWorkPanel()); + + archivesBox.addToModel(archives); + categoryField.setText("/"); + + addOKButton(); + addCancelButton(); + } + + private JComponent buildWorkPanel() { + + archivesBox.setRenderer(new DefaultListCellRenderer() { + + @Override + public Component getListCellRendererComponent(JList list, Object value, + int index, boolean isSelected, boolean cellHasFocus) { + + JLabel renderer = (JLabel) super.getListCellRendererComponent(list, value, + index, isSelected, cellHasFocus); + Archive a = (Archive) value; + renderer.setText(a.getName()); + return renderer; + } + + }); + + JPanel panel = new JPanel(new BorderLayout()); + + JPanel archivePanel = new JPanel(new PairLayout()); + archivePanel.add(new GLabel("New Source Archive: ")); + archivePanel.add(archivesBox); + + JPanel categoryPanel = new JPanel(new PairLayout()); + categoryPanel.add(new GLabel("Destination Category: ")); + categoryPanel.add(categoryField); + + panel.add(archivePanel, BorderLayout.NORTH); + panel.add(categoryPanel, BorderLayout.SOUTH); + + return panel; + } + + @Override + protected void okCallback() { + + clearStatusText(); + + archive = (Archive) archivesBox.getSelectedItem(); + if (archive == null) { + setStatusText("Please choose an archive"); + return; + } + + if (!archive.isModifiable()) { + setStatusText( + "Archive is not modifiable. You must first open this archive for edit."); + return; + } + + if (!updateCategory()) { + return; + } + + isCancelled = false; + close(); + } + + private boolean updateCategory() { + + String categoryText = categoryField.getText(); + if (StringUtils.isBlank(categoryText)) { + setStatusText("Category must be specified. Use '/' for the root."); + return false; + } + + DataTypeManager dtm = archive.getDataTypeManager(); + CategoryPath categoryPath = new CategoryPath(categoryText); + category = dtm.getCategory(categoryPath); + if (category != null) { + return true; + } + + int choice = OptionDialog.showYesNoDialog(null, "Create Category?", + "Category '" + categoryText + "' does not exist. Create it now?"); + if (choice != OptionDialog.YES_OPTION) { + setStatusText("Category does not exist"); + return false; + } + + boolean noErrors = false; + int tx = dtm.startTransaction("Create Category"); + try { + category = dtm.createCategory(categoryPath); + noErrors = true; + } + finally { + dtm.endTransaction(tx, noErrors); + } + + if (category == null) { + setStatusText("Unable to create category"); + return false; + } + return true; + } + + @Override + protected void cancelCallback() { + super.cancelCallback(); + } + + boolean isCancelled() { + return isCancelled; + } + + void show() { + JComponent parent = getProviderComponent(); + DockingWindowManager.showDialog(parent, this); + } + + Archive getArchive() { + return archive; + } + + Category getCategory() { + return category; + } + + } + +} diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/CommitAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/CommitAction.java similarity index 89% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/CommitAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/CommitAction.java index a1834dd7d5..821b306751 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/CommitAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/CommitAction.java @@ -13,8 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; +package ghidra.app.plugin.core.datamgr.actions.associate; +import java.util.List; + +import docking.action.MenuData; import ghidra.app.plugin.core.datamgr.*; import ghidra.app.plugin.core.datamgr.archive.DataTypeManagerHandler; import ghidra.app.plugin.core.datamgr.tree.ArchiveNode; @@ -22,17 +25,13 @@ import ghidra.program.model.data.DataTypeManager; import ghidra.program.model.data.SourceArchive; import ghidra.util.HelpLocation; -import java.util.List; - -import docking.action.MenuData; - public class CommitAction extends SyncAction { - public static final String MENU_NAME = "Commit Datatypes To"; + public static final String MENU_NAME = "Commit Data Types To"; - public CommitAction(DataTypeManagerPlugin plugin, - DataTypeManagerHandler dataTypeManagerHandler, DataTypeManager dtm, - ArchiveNode archiveNode, SourceArchive sourceArchive, boolean isEnabled) { + public CommitAction(DataTypeManagerPlugin plugin, DataTypeManagerHandler dataTypeManagerHandler, + DataTypeManager dtm, ArchiveNode archiveNode, SourceArchive sourceArchive, + boolean isEnabled) { super("Commit Changes To Archive", plugin, dataTypeManagerHandler, dtm, archiveNode, sourceArchive, isEnabled); diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/CommitSingleDataTypeAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/CommitSingleDataTypeAction.java similarity index 98% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/CommitSingleDataTypeAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/CommitSingleDataTypeAction.java index 309bc10f7c..63b169a023 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/CommitSingleDataTypeAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/CommitSingleDataTypeAction.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; +package ghidra.app.plugin.core.datamgr.actions.associate; import javax.swing.ImageIcon; import javax.swing.tree.TreePath; diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/DisassociateAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/DisassociateAction.java similarity index 97% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/DisassociateAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/DisassociateAction.java index 4076e06145..caa919cda8 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/DisassociateAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/DisassociateAction.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; +package ghidra.app.plugin.core.datamgr.actions.associate; import java.util.*; @@ -35,7 +35,7 @@ import ghidra.util.exception.CancelledException; import ghidra.util.task.*; public class DisassociateAction extends DockingAction { - public static final String MENU_NAME = "Disassociate Datatypes From"; + public static final String MENU_NAME = "Disassociate Data Types From"; private final SourceArchive sourceArchive; private final DataTypeManager dtm; @@ -96,12 +96,12 @@ public class DisassociateAction extends DockingAction { } //@formatter:off - MonitoredRunnable r = + MonitoredRunnable r = monitor -> doDisassociate(synchronizer, typesToDisassociate, allAssociatedTypes, monitor); new TaskBuilder("Disassociate From Archive", r) .setStatusTextAlignment(SwingConstants.LEADING) .launchModal() - ; + ; //@formatter:on } @@ -110,10 +110,10 @@ public class DisassociateAction extends DockingAction { TaskMonitor monitor) { // - // Note: we collapse the node before performing this work because there is a + // Note: we collapse the node before performing this work because there is a // potential for a large number of events to be generated. Further, if the // given archive node has many children (like 10s of thousands), then the - // copious events generated herein could lock the UI. By closing the node, + // copious events generated herein could lock the UI. By closing the node, // the tree is not invalidating/validating its cache as a result of these // events. // diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/DisassociateDataTypeAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/DisassociateDataTypeAction.java similarity index 93% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/DisassociateDataTypeAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/DisassociateDataTypeAction.java index 8f29c558d7..677cf7a780 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/DisassociateDataTypeAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/DisassociateDataTypeAction.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; +package ghidra.app.plugin.core.datamgr.actions.associate; import java.util.*; import java.util.Map.Entry; @@ -28,7 +28,8 @@ import docking.action.MenuData; import docking.widgets.OptionDialog; import docking.widgets.tree.*; import ghidra.app.plugin.core.datamgr.*; -import ghidra.app.plugin.core.datamgr.archive.*; +import ghidra.app.plugin.core.datamgr.archive.BuiltInSourceArchive; +import ghidra.app.plugin.core.datamgr.archive.DataTypeManagerHandler; import ghidra.app.plugin.core.datamgr.tree.DataTypeArchiveGTree; import ghidra.app.plugin.core.datamgr.tree.DataTypeNode; import ghidra.app.plugin.core.datamgr.util.DataTypeUtils; @@ -56,10 +57,8 @@ public class DisassociateDataTypeAction extends DockingAction { return false; } - Object contextObject = context.getContextObject(); - GTree gTree = (GTree) contextObject; - TreePath[] selectionPaths = gTree.getSelectionPaths(); - List nodes = getDisassociatableNodes(selectionPaths); + DataTypesActionContext dtContext = (DataTypesActionContext) context; + List nodes = dtContext.getDisassociatableNodes(); return !nodes.isEmpty(); } @@ -127,11 +126,11 @@ public class DisassociateDataTypeAction extends DockingAction { } //@formatter:off - MonitoredRunnable r = + MonitoredRunnable r = monitor -> doDisassociate(nodes, monitor); new TaskBuilder("Disassociate From Archive", r) .setStatusTextAlignment(SwingConstants.LEADING) - .launchModal(); + .launchModal(); //@formatter:on } @@ -159,10 +158,10 @@ public class DisassociateDataTypeAction extends DockingAction { nodes.stream().map(node -> node.getDataType()).collect(Collectors.toList()); // - // Note: we collapse the node before performing this work because there is a + // Note: we collapse the node before performing this work because there is a // potential for a large number of events to be generated. Further, if the // given archive node has many children (like 10s of thousands), then the - // copious events generated herein could lock the UI. By closing the node, + // copious events generated herein could lock the UI. By closing the node, // the tree is not invalidating/validating its cache as a result of these // events. // @@ -189,7 +188,7 @@ public class DisassociateDataTypeAction extends DockingAction { monitor.initialize(dataTypes.size()); //@formatter:off - Map> managersToTypes = + Map> managersToTypes = dataTypes.stream() .collect( Collectors.groupingBy(dt -> dt.getDataTypeManager())) @@ -209,7 +208,7 @@ public class DisassociateDataTypeAction extends DockingAction { // we must process these by their source //@formatter:off - Map> sourceToTypes = + Map> sourceToTypes = dataTypes.stream() .collect( Collectors.groupingBy(dt -> dt.getSourceArchive())) diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/RevertAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/RevertAction.java similarity index 85% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/RevertAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/RevertAction.java index 85494ab86f..7d10931cde 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/RevertAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/RevertAction.java @@ -13,8 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; +package ghidra.app.plugin.core.datamgr.actions.associate; +import java.util.List; + +import docking.action.MenuData; import ghidra.app.plugin.core.datamgr.DataTypeManagerPlugin; import ghidra.app.plugin.core.datamgr.DataTypeSyncInfo; import ghidra.app.plugin.core.datamgr.archive.DataTypeManagerHandler; @@ -23,19 +26,15 @@ import ghidra.program.model.data.DataTypeManager; import ghidra.program.model.data.SourceArchive; import ghidra.util.HelpLocation; -import java.util.List; - -import docking.action.MenuData; - public class RevertAction extends SyncAction { - public static final String MENU_NAME = "Revert Datatypes From"; + public static final String MENU_NAME = "Revert Data Types From"; - public RevertAction(DataTypeManagerPlugin plugin, - DataTypeManagerHandler dataTypeManagerHandler, DataTypeManager dtm, - ArchiveNode archiveNode, SourceArchive sourceArchive, boolean isEnabled) { + public RevertAction(DataTypeManagerPlugin plugin, DataTypeManagerHandler dataTypeManagerHandler, + DataTypeManager dtm, ArchiveNode archiveNode, SourceArchive sourceArchive, + boolean isEnabled) { - super("Revert Datatype Changes", plugin, dataTypeManagerHandler, dtm, archiveNode, + super("Revert Data Type Changes", plugin, dataTypeManagerHandler, dtm, archiveNode, sourceArchive, isEnabled); setPopupMenuData(new MenuData(new String[] { MENU_NAME, sourceArchive.getName() })); setHelpLocation(new HelpLocation(plugin.getName(), getHelpTopic())); diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/RevertDataTypeAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/RevertDataTypeAction.java similarity index 71% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/RevertDataTypeAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/RevertDataTypeAction.java index 5728508c7a..8367123c41 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/RevertDataTypeAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/RevertDataTypeAction.java @@ -13,14 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; - -import ghidra.app.plugin.core.datamgr.*; -import ghidra.app.plugin.core.datamgr.archive.DataTypeManagerHandler; -import ghidra.app.plugin.core.datamgr.tree.DataTypeNode; -import ghidra.app.plugin.core.datamgr.util.DataTypeUtils; -import ghidra.program.model.data.*; -import ghidra.util.Msg; +package ghidra.app.plugin.core.datamgr.actions.associate; import javax.swing.tree.TreePath; @@ -29,6 +22,12 @@ import docking.action.DockingAction; import docking.action.MenuData; import docking.widgets.tree.GTree; import docking.widgets.tree.GTreeNode; +import ghidra.app.plugin.core.datamgr.*; +import ghidra.app.plugin.core.datamgr.archive.DataTypeManagerHandler; +import ghidra.app.plugin.core.datamgr.tree.DataTypeNode; +import ghidra.app.plugin.core.datamgr.util.DataTypeUtils; +import ghidra.program.model.data.*; +import ghidra.util.Msg; public class RevertDataTypeAction extends DockingAction { @@ -37,7 +36,7 @@ public class RevertDataTypeAction extends DockingAction { public RevertDataTypeAction(DataTypeManagerPlugin plugin) { super("Revert Data Type", plugin.getName()); this.plugin = plugin; - setPopupMenuData(new MenuData(new String[] { "Revert" }, "Sync")); + setPopupMenuData(new MenuData(new String[] { "Revert Changes" }, "Sync")); setEnabled(true); } @@ -68,8 +67,8 @@ public class RevertDataTypeAction extends DockingAction { case UNKNOWN: return false; case COMMIT: - return true; case CONFLICT: + return true; case IN_SYNC: case ORPHAN: case UPDATE: @@ -88,29 +87,26 @@ public class RevertDataTypeAction extends DockingAction { } GTreeNode node = (GTreeNode) selectionPaths[0].getLastPathComponent(); - if (node instanceof DataTypeNode) { - DataTypeNode dataTypeNode = (DataTypeNode) node; - DataType dataType = dataTypeNode.getDataType(); - DataTypeManager dtm = dataType.getDataTypeManager(); - DataTypeManagerHandler handler = plugin.getDataTypeManagerHandler(); - SourceArchive sourceArchive = dataType.getSourceArchive(); - if (!dtm.isUpdatable()) { - DataTypeUtils.showUnmodifiableArchiveErrorMessage(gTree, "Revert Failed", dtm); - return; - } - DataTypeManager sourceDTM = handler.getDataTypeManager(sourceArchive); - if (sourceDTM == null) { - Msg.showInfo(getClass(), gTree, "Revert Failed", "Source Archive not open: " + - sourceArchive.getName()); - return; - } - plugin.revert(dataType); - - // Source archive data type manager was already checked for null above. - DataTypeSynchronizer synchronizer = - new DataTypeSynchronizer(handler, dtm, sourceArchive); - synchronizer.reSyncOutOfSyncInTimeOnlyDataTypes(); + DataTypeNode dataTypeNode = (DataTypeNode) node; + DataType dataType = dataTypeNode.getDataType(); + DataTypeManager dtm = dataType.getDataTypeManager(); + DataTypeManagerHandler handler = plugin.getDataTypeManagerHandler(); + SourceArchive sourceArchive = dataType.getSourceArchive(); + if (!dtm.isUpdatable()) { + DataTypeUtils.showUnmodifiableArchiveErrorMessage(gTree, "Revert Failed", dtm); + return; } + DataTypeManager sourceDTM = handler.getDataTypeManager(sourceArchive); + if (sourceDTM == null) { + Msg.showInfo(getClass(), gTree, "Revert Failed", + "Source Archive not open: " + sourceArchive.getName()); + return; + } + plugin.revert(dataType); + + // Source archive data type manager was already checked for null above. + DataTypeSynchronizer synchronizer = new DataTypeSynchronizer(handler, dtm, sourceArchive); + synchronizer.reSyncOutOfSyncInTimeOnlyDataTypes(); } } diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/SyncAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/SyncAction.java similarity index 97% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/SyncAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/SyncAction.java index 043a0447a9..33cef5094d 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/SyncAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/SyncAction.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; +package ghidra.app.plugin.core.datamgr.actions.associate; import java.util.*; @@ -83,7 +83,6 @@ public abstract class SyncAction extends DockingAction implements Comparable outOfSyncInfos) { String status = getStatusMessage(outOfSyncInfos); Msg.showInfo(getClass(), plugin.getTool().getToolFrame(), "No Data Type Changes", - "No datatypes found to " + getOperationName() + " for archive \"" + archiveName + + "No data types found to " + getOperationName() + " for archive \"" + archiveName + "\".\n\n" + status); } @@ -279,7 +280,7 @@ public abstract class SyncAction extends DockingAction implements Comparable 0) { buf.append("\nNumber of UPDATES remaining: " + updateCount); } @@ -298,7 +299,7 @@ public abstract class SyncAction extends DockingAction implements Comparable outOfSynchInTimeOnlyList, boolean markArchiveSynchronized) { - int transactionID = dtm.startTransaction("auto sync datatypes"); + int transactionID = dtm.startTransaction("Auto-sync data types"); try { for (DataTypeSyncInfo dataTypeSyncInfo : outOfSynchInTimeOnlyList) { dataTypeSyncInfo.syncTimes(); diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/SyncRefreshAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/SyncRefreshAction.java similarity index 98% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/SyncRefreshAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/SyncRefreshAction.java index 3d0da6815d..b677d48e7b 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/SyncRefreshAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/SyncRefreshAction.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; +package ghidra.app.plugin.core.datamgr.actions.associate; import docking.ActionContext; import docking.action.DockingAction; diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/UpdateAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/UpdateAction.java similarity index 85% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/UpdateAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/UpdateAction.java index 5f1ed5f9dd..8b3eeb1ace 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/UpdateAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/UpdateAction.java @@ -13,8 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; +package ghidra.app.plugin.core.datamgr.actions.associate; +import java.util.List; + +import docking.action.MenuData; import ghidra.app.plugin.core.datamgr.*; import ghidra.app.plugin.core.datamgr.archive.DataTypeManagerHandler; import ghidra.app.plugin.core.datamgr.tree.ArchiveNode; @@ -22,18 +25,14 @@ import ghidra.program.model.data.DataTypeManager; import ghidra.program.model.data.SourceArchive; import ghidra.util.HelpLocation; -import java.util.List; - -import docking.action.MenuData; - public class UpdateAction extends SyncAction { - public static final String MENU_NAME = "Update Datatypes From"; + public static final String MENU_NAME = "Update Data Types From"; - public UpdateAction(DataTypeManagerPlugin plugin, - DataTypeManagerHandler dataTypeManagerHandler, DataTypeManager dtm, - ArchiveNode archiveNode, SourceArchive sourceArchive, boolean isEnabled) { + public UpdateAction(DataTypeManagerPlugin plugin, DataTypeManagerHandler dataTypeManagerHandler, + DataTypeManager dtm, ArchiveNode archiveNode, SourceArchive sourceArchive, + boolean isEnabled) { - super("Update Datatypes From Archive", plugin, dataTypeManagerHandler, dtm, archiveNode, + super("Update Data Types From Archive", plugin, dataTypeManagerHandler, dtm, archiveNode, sourceArchive, isEnabled); setPopupMenuData(new MenuData(new String[] { MENU_NAME, sourceArchive.getName() })); diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/UpdateSingleDataTypeAction.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/UpdateSingleDataTypeAction.java similarity index 98% rename from Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/UpdateSingleDataTypeAction.java rename to Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/UpdateSingleDataTypeAction.java index b7af91fb5b..a604a2e470 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/UpdateSingleDataTypeAction.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/actions/associate/UpdateSingleDataTypeAction.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package ghidra.app.plugin.core.datamgr.actions; +package ghidra.app.plugin.core.datamgr.actions.associate; import javax.swing.ImageIcon; import javax.swing.tree.TreePath; diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/archive/DataTypeManagerHandler.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/archive/DataTypeManagerHandler.java index f005ca919b..5a65c0eaf7 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/archive/DataTypeManagerHandler.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/archive/DataTypeManagerHandler.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. diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/editor/EnumEditorProvider.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/editor/EnumEditorProvider.java index 2ca3cbf75c..e82d4a6388 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/editor/EnumEditorProvider.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/editor/EnumEditorProvider.java @@ -34,6 +34,7 @@ import docking.widgets.OptionDialog; import ghidra.app.plugin.core.compositeeditor.EditorListener; import ghidra.app.plugin.core.compositeeditor.EditorProvider; import ghidra.app.plugin.core.datamgr.DataTypeManagerPlugin; +import ghidra.app.services.DataTypeManagerService; import ghidra.framework.plugintool.ComponentProviderAdapter; import ghidra.program.model.data.*; import ghidra.program.model.data.Enum; @@ -81,7 +82,7 @@ public class EnumEditorProvider extends ComponentProviderAdapter private long originalEnumID = -1; /** - * Construct a new enum editor provider. + * Construct a new enum editor provider. * @param plugin owner of this provider * @param enumDT enum data type */ @@ -251,7 +252,7 @@ public class EnumEditorProvider extends ComponentProviderAdapter //================================================================================================== // Private Methods -//================================================================================================== +//================================================================================================== private void updateTitle(DataType dataType) { setTitle(getName() + " - " + getProviderSubTitle(dataType)); @@ -285,19 +286,28 @@ public class EnumEditorProvider extends ComponentProviderAdapter deleteAction = new EnumPluginAction("Delete Enum Value", e -> editorPanel.deleteSelectedEntries()); deleteAction.setEnabled(false); - deleteAction.setPopupMenuData( - new MenuData(new String[] { "Delete" }, DELETE_ICON, editGroup)); + deleteAction + .setPopupMenuData(new MenuData(new String[] { "Delete" }, DELETE_ICON, editGroup)); deleteAction.setToolBarData(new ToolBarData(DELETE_ICON, editGroup)); deleteAction.setDescription("Delete the selected enum entries"); applyAction = new EnumPluginAction("Apply Enum Changes", e -> applyChanges()); applyAction.setEnabled(false); - applyAction.setToolBarData(new ToolBarData(APPLY_ICON, "ApplyChanges")); + String firstGroup = "ApplyChanges"; + applyAction.setToolBarData(new ToolBarData(APPLY_ICON, firstGroup)); applyAction.setDescription("Apply changes to Enum"); + EnumPluginAction showEnumAction = + new EnumPluginAction("Show In Data Type Manager", e -> showDataEnumInTree()); + showEnumAction.setEnabled(true); + String thirdGroup = "FThirdGroup"; + showEnumAction.setToolBarData( + new ToolBarData(ResourceManager.loadImage("images/go-home.png"), thirdGroup)); + tool.addLocalAction(this, applyAction); tool.addLocalAction(this, addAction); tool.addLocalAction(this, deleteAction); + tool.addLocalAction(this, showEnumAction); } private boolean applyChanges() { @@ -338,6 +348,11 @@ public class EnumEditorProvider extends ComponentProviderAdapter return true; } + private void showDataEnumInTree() { + DataTypeManagerService dtmService = tool.getService(DataTypeManagerService.class); + dtmService.setDataTypeSelected(originalEnum); + } + /** * Checks to see if the new changes to the enum will affect equates based off of it. * @param editedEnum the enum to check for conflicts with @@ -467,9 +482,9 @@ public class EnumEditorProvider extends ComponentProviderAdapter /** * Prompts the user if the editor has unsaved changes. Saves the changes if * the user indicates to do so. - * @return CANCEL (0) if the user canceled; - * SAVE (1) if the user saved changes; - * NO_SAVE (2) if the user did not save changes or no save was required; + * @return CANCEL (0) if the user canceled; + * SAVE (1) if the user saved changes; + * NO_SAVE (2) if the user did not save changes or no save was required; * ERROR (3) if there was an error when the changes were applied. */ private int saveChangesForCloseEvent(boolean allowCancel) { @@ -502,7 +517,7 @@ public class EnumEditorProvider extends ComponentProviderAdapter //================================================================================================== // Inner Classes -//================================================================================================== +//================================================================================================== private class MyDataTypeManagerChangeListener extends DataTypeManagerChangeListenerAdapter { @@ -547,7 +562,7 @@ public class EnumEditorProvider extends ComponentProviderAdapter @Override public void categoryRemoved(DataTypeManager dtm, CategoryPath path) { - // should never get this callback, as we should first have gotten a + // should never get this callback, as we should first have gotten a // dataTypeRemoved(), which will dispose this editor } @@ -665,11 +680,11 @@ public class EnumEditorProvider extends ComponentProviderAdapter DataType dataType = dtm.getDataType(otherPath); if (dataType == null) { - // - // Unusual Code Alert!: + // + // Unusual Code Alert!: // Must have been deleted and we have not yet processed the event...return true // here to signal that the types are the same so that clients will continue the - // updating process. The types may not really be the same, but the fallout is + // updating process. The types may not really be the same, but the fallout is // only that there will be more updating than is necessary. // return true; diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/tree/DataTypeDragNDropHandler.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/tree/DataTypeDragNDropHandler.java index 4da07d673f..4d76378819 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/tree/DataTypeDragNDropHandler.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/tree/DataTypeDragNDropHandler.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. diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/util/DataTypeTreeCopyMoveTask.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/util/DataTypeTreeCopyMoveTask.java index 99ee1297c4..5f11b43d9d 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/util/DataTypeTreeCopyMoveTask.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/util/DataTypeTreeCopyMoveTask.java @@ -27,12 +27,13 @@ import ghidra.app.plugin.core.datamgr.archive.ProgramArchive; import ghidra.app.plugin.core.datamgr.tree.*; import ghidra.program.model.data.*; import ghidra.util.*; -import ghidra.util.exception.*; +import ghidra.util.exception.CancelledException; +import ghidra.util.exception.DuplicateNameException; import ghidra.util.task.Task; import ghidra.util.task.TaskMonitor; /** - * Task for handling drop operations. + * Task for copying and moving data type nodes within the Data Types tree. */ public class DataTypeTreeCopyMoveTask extends Task { @@ -48,11 +49,11 @@ public class DataTypeTreeCopyMoveTask extends Task { } private DataTypeArchiveGTree gTree; - private CategoryNode destinationNode; - private List droppedNodes; + private Category destinationCategory; + private List copyMoveNodes; private Archive sourceArchive; private Archive destinationArchive; - + private boolean promptToAssociateTypes = true; private ActionType actionType; private DataTypeConflictHandler conflictHandler; private List errors = new ArrayList<>(); @@ -65,19 +66,26 @@ public class DataTypeTreeCopyMoveTask extends Task { public DataTypeTreeCopyMoveTask(CategoryNode destinationNode, List droppedNodeList, ActionType actionType, DataTypeArchiveGTree gTree, DataTypeConflictHandler conflictHandler) { + this(findArchive(destinationNode), destinationNode.getCategory(), droppedNodeList, + actionType, gTree, conflictHandler); + } + + public DataTypeTreeCopyMoveTask(Archive destinationArchive, Category destinationCategory, + List droppedNodeList, ActionType actionType, DataTypeArchiveGTree gTree, + DataTypeConflictHandler conflictHandler) { super("Drag/Drop", true, true, true); - this.destinationNode = destinationNode; - this.droppedNodes = droppedNodeList; + this.destinationCategory = destinationCategory; + this.copyMoveNodes = droppedNodeList; this.actionType = actionType; this.gTree = gTree; this.conflictHandler = conflictHandler; - this.destinationArchive = findArchive(destinationNode); + this.destinationArchive = destinationArchive; - GTreeNode firstNode = droppedNodes.get(0); + GTreeNode firstNode = copyMoveNodes.get(0); this.sourceArchive = findArchive(firstNode); } - private Archive findArchive(GTreeNode node) { + private static Archive findArchive(GTreeNode node) { while (node != null) { if (node instanceof ArchiveNode) { return ((ArchiveNode) node).getArchive(); @@ -87,10 +95,22 @@ public class DataTypeTreeCopyMoveTask extends Task { return null; } + /** + * Any types being newly copied/moved to a suitable archive are eligible for 'association', + * which means changes between the two archives will be tracked. True, the default, signals to + * prompt before associating types; false signals not to prompt the user, but to always + * associate types. + * + * @param prompt true to prompt; false to not prompt + */ + public void setPromptToAssociateTypes(boolean prompt) { + this.promptToAssociateTypes = prompt; + } + @Override public void run(TaskMonitor monitor) throws CancelledException { - int nodeCount = droppedNodes.size(); + int nodeCount = copyMoveNodes.size(); filterRedundantNodes(); if (checkForDifferentSourceArchives()) { @@ -143,10 +163,10 @@ public class DataTypeTreeCopyMoveTask extends Task { private boolean checkForDifferentSourceArchives() { - for (GTreeNode node : droppedNodes) { + for (GTreeNode node : copyMoveNodes) { if (sourceArchive != findArchive(node)) { Msg.showError(this, gTree, "Copy Failed", - "All dragged data types must be from the same archive!"); + "All data types must be from the same archive!"); return true; } } @@ -158,7 +178,7 @@ public class DataTypeTreeCopyMoveTask extends Task { DataTypeManager dtm = destinationArchive.getDataTypeManager(); int txId = dtm.startTransaction("Copy/Move Category/DataType"); try { - dragNodesToCategory(monitor); + copyOrMoveNodesToCategory(monitor); } finally { dtm.endTransaction(txId, true); @@ -187,13 +207,13 @@ public class DataTypeTreeCopyMoveTask extends Task { return; } - monitor.initialize(droppedNodes.size()); + monitor.initialize(copyMoveNodes.size()); SourceArchive destination = destinationArchive.getDataTypeManager().getLocalSourceArchive(); DataTypeManager dtm = sourceArchive.getDataTypeManager(); - int txId = dtm.startTransaction("Associate DataTypes"); + int txId = dtm.startTransaction("Associate Data Types"); try { - for (GTreeNode node : droppedNodes) { + for (GTreeNode node : copyMoveNodes) { monitor.checkCanceled(); if (node instanceof DataTypeNode) { @@ -215,6 +235,10 @@ public class DataTypeTreeCopyMoveTask extends Task { private boolean promptToAssociateTypes(TaskMonitor monitor) throws CancelledException { + if (!promptToAssociateTypes) { + return true; // do not prompt; always associate + } + if (!containsUnassociatedTypes(monitor)) { return false; // nothing to associate } @@ -230,8 +254,8 @@ public class DataTypeTreeCopyMoveTask extends Task { private boolean containsUnassociatedTypes(TaskMonitor monitor) throws CancelledException { monitor.setMessage("Checking for types to associate"); - monitor.initialize(droppedNodes.size()); - for (GTreeNode node : droppedNodes) { + monitor.initialize(copyMoveNodes.size()); + for (GTreeNode node : copyMoveNodes) { monitor.checkCanceled(); if (node instanceof DataTypeNode) { @@ -296,13 +320,13 @@ public class DataTypeTreeCopyMoveTask extends Task { } } - private void dragNodesToCategory(TaskMonitor monitor) { + private void copyOrMoveNodesToCategory(TaskMonitor monitor) { monitor.setMessage("Drag/Drop Categories/Data Types"); - monitor.initialize(droppedNodes.size()); + monitor.initialize(copyMoveNodes.size()); - Category toCategory = getCategory(destinationNode); - for (GTreeNode node : droppedNodes) { + Category toCategory = destinationCategory; + for (GTreeNode node : copyMoveNodes) { if (monitor.isCancelled()) { break; } @@ -360,10 +384,10 @@ public class DataTypeTreeCopyMoveTask extends Task { } } - private void renameAsCopy(Category destinationCategory, DataType dataType) { + private void renameAsCopy(Category toCategory, DataType dataType) { String dtName = dataType.getName(); String baseName = getBaseName(dtName); - String copyName = getNextCopyName(destinationCategory, baseName); + String copyName = getNextCopyName(toCategory, baseName); try { dataType.setName(copyName); } @@ -386,12 +410,12 @@ public class DataTypeTreeCopyMoveTask extends Task { return baseName; } - String getNextCopyName(Category destinationCategory, String baseName) { + String getNextCopyName(Category toCategory, String baseName) { String format = "Copy_%d_of_" + baseName; for (int i = 1; i < 100; i++) { String copyName = String.format(format, i); - if (destinationCategory.getDataType(copyName) == null) { + if (toCategory.getDataType(copyName) == null) { return copyName; } } @@ -400,14 +424,14 @@ public class DataTypeTreeCopyMoveTask extends Task { return String.format(format, System.currentTimeMillis()); } - private void moveNode(Category destinationCategory, GTreeNode node, TaskMonitor monitor) { + private void moveNode(Category toCategory, GTreeNode node, TaskMonitor monitor) { if (node instanceof DataTypeNode) { DataType dataType = ((DataTypeNode) node).getDataType(); - moveDataType(destinationCategory, dataType); + moveDataType(toCategory, dataType); } else if (node instanceof CategoryNode) { Category category = ((CategoryNode) node).getCategory(); - moveCategory(destinationCategory, category, monitor); + moveCategory(toCategory, category, monitor); } } @@ -457,17 +481,6 @@ public class DataTypeTreeCopyMoveTask extends Task { toCategory.copyCategory(category, conflictHandler, monitor); } - private Category getCategory(GTreeNode node) { - if (node instanceof ArchiveNode) { - return ((ArchiveNode) node).getArchive().getDataTypeManager().getRootCategory(); - } - if (node instanceof CategoryNode) { - return ((CategoryNode) node).getCategory(); - } - throw new AssertException( - "Expected node to be either an ArchiveNode or CategoryNode but was " + node.getClass()); - } - /** * Returns true if the given data type's source archive is the same as it's current data * type manager. This is false if copying a new type from the program to an @@ -483,14 +496,14 @@ public class DataTypeTreeCopyMoveTask extends Task { } private int askToAssociateDataTypes() { - return OptionDialog.showYesNoCancelDialog(gTree, "Associate DataTypes?", - "Do you want to associate local datatypes with the target archive?"); + return OptionDialog.showYesNoCancelDialog(gTree, "Associate Data Types?", + "Do you want to associate local data types with the target archive?"); } // filters out nodes with categories in their path private void filterRedundantNodes() { - Set nodeSet = new HashSet<>(droppedNodes); + Set nodeSet = new HashSet<>(copyMoveNodes); List filteredList = new ArrayList<>(); for (GTreeNode node : nodeSet) { @@ -499,7 +512,7 @@ public class DataTypeTreeCopyMoveTask extends Task { } } - droppedNodes = filteredList; + copyMoveNodes = filteredList; } private boolean containsAncestor(Set nodeSet, GTreeNode node) { diff --git a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/util/DataTypeUtils.java b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/util/DataTypeUtils.java index fa2a72fb2a..69a6462812 100644 --- a/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/util/DataTypeUtils.java +++ b/Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/datamgr/util/DataTypeUtils.java @@ -22,7 +22,6 @@ import java.util.List; import javax.swing.Icon; import javax.swing.ImageIcon; -import ghidra.app.services.DataTypeManagerService; import ghidra.app.services.DataTypeQueryService; import ghidra.program.model.data.*; import ghidra.program.model.data.Enum; @@ -150,6 +149,7 @@ public class DataTypeUtils { /** * Returns the root folder icon. + * @param expanded true to use the expanded icon; false to use the collapsed icon. * @return the root folder icon. */ public static Icon getRootIcon(boolean expanded) { @@ -159,7 +159,7 @@ public class DataTypeUtils { /** * Returns the open folder icon. - * + * * @param disabled True returns a disabled icon; false returns the normal icon. * @return the open folder icon. */ @@ -174,7 +174,7 @@ public class DataTypeUtils { /** * Returns the closed folder icon. - * + * * @param disabled True returns a disabled icon; false returns the normal icon. * @return the closed folder icon. */ @@ -189,7 +189,7 @@ public class DataTypeUtils { /** * Returns the open archive folder icon. - * + * * @param isLocked True means to return the checked-out open archive folder icon * @return the open archive folder icon. */ @@ -204,7 +204,7 @@ public class DataTypeUtils { /** * Returns the closed folder icon. - * + * * @param isLocked True means to return the checked-out closed folder icon * @return the closed folder icon. */ @@ -217,39 +217,9 @@ public class DataTypeUtils { return closedArchiveFolderIcon; } -// /** -// * Returns the open archive folder icon. -// * -// * @param isLocked True means to return the checked-out open archive folder icon -// * @return the open archive folder icon. -// */ -// public static Icon getOpenProjectArchiveFolder( boolean isLocked ) { -// loadImages(); -// if ( isLocked ) { -// return lockedOpenProjectArchiveFolderIcon; -// } -// -// return openProjectArchiveFolderIcon; -// } -// -// /** -// * Returns the closed folder icon. -// * -// * @param isLocked True means to return the checked-out closed folder icon -// * @return the closed folder icon. -// */ -// public static Icon getClosedProjectArchiveFolder( boolean isLocked ) { -// loadImages(); -// if ( isLocked ) { -// return lockedClosedProjectArchiveFolderIcon; -// } -// -// return closedProjectArchiveFolderIcon; -// } -// /** * Returns the BuiltIn icon. - * + * * @param disabled True returns a disabled icon; false returns the normal icon. * @return the BuiltIn icon. */ @@ -264,7 +234,7 @@ public class DataTypeUtils { /** * Returns the favorites icon. - * + * * @param disabled True returns a disabled icon; false returns the normal icon. * @return the favorites icon. */ @@ -279,7 +249,7 @@ public class DataTypeUtils { /** * Finds the icon associated with the provided data type. - * + * * @param dataType The data type for which to find an icon. * @param disabled True returns a disabled icon; false returns the normal icon. * @return the icon associated with the provided data type. @@ -302,7 +272,7 @@ public class DataTypeUtils { /** * Returns an icon that adds highlighting to the provided icon. - * + * * @param baseIcon The icon to highlight. * @return the highlighted icon. */ @@ -320,12 +290,12 @@ public class DataTypeUtils { } /** - * Returns a sorted list of {@link DataType}s that have names which start with the given - * search string. The list is sorted according to {@link #DATA_TYPE_LOOKUP_COMPARATOR}. - * - @param searchString The name of the DataTypes to match. + * Returns a sorted list of {@link DataType}s that have names which start with the given search + * string. The list is sorted according to {@link #DATA_TYPE_LOOKUP_COMPARATOR}. + * + * @param searchString The name of the DataTypes to match. * @param dataService The service from which the data types will be taken. - * @return A sorted list of {@link DataType}s that have names which start with the given search + * @return A sorted list of {@link DataType}s that have names which start with the given search * string. */ public static List getStartsWithMatchingDataTypes(String searchString, @@ -335,13 +305,13 @@ public class DataTypeUtils { } /** - * Returns a sorted list of {@link DataType}s that have names which match the given search - * string. The list is sorted according to {@link #DATA_TYPE_LOOKUP_COMPARATOR}. - * + * Returns a sorted list of {@link DataType}s that have names which match the given search + * string. The list is sorted according to {@link #DATA_TYPE_LOOKUP_COMPARATOR}. + * * @param searchString The name of the DataTypes to match. * @param dataService The service from which the data types will be taken. - * @return A sorted list of {@link DataType}s that have names which match the given search - * string. + * @return A sorted list of {@link DataType}s that have names which match the given search + * string. */ public static List getExactMatchingDataTypes(String searchString, DataTypeQueryService dataService) { @@ -350,10 +320,13 @@ public class DataTypeUtils { } /** - * Changes the give text to prepare it or use in searching for data types. Clients should - * call this method to make sure that the given text is suitable for use when searching - * the data type values returned by {@link #getExactMatchingDataTypes(String, DataTypeManagerService)} - * and {@link #getStartsWithMatchingDataTypes(String, DataTypeManagerService)}. + * Changes the given text to prepare it for use in searching for data types. Clients should + * call this method to make sure that the given text is suitable for use when searching the + * data type values returned by + * {@link #getExactMatchingDataTypes(String, DataTypeQueryService)} and + * {@link #getStartsWithMatchingDataTypes(String, DataTypeQueryService)}. + * @param searchText the search text + * @return the updated text */ public static String prepareSearchText(String searchText) { return searchText.replaceAll(" ", ""); @@ -376,12 +349,14 @@ public class DataTypeUtils { /** * Get the base data type for the specified data type. - *
For example, the base data type for Word*[5] is Word. - * For a pointer, the base data type is the type being pointed to - * or the pointer itself if it is pointing at nothing. - *
If "INT" is a typedef on a "dword" then INT[7][3] would have a base data type of dword. - * If you wanted to get the INT from INT[7][3] - * you should call getNamedBasedDataType(DataType) instead. + * + *

For example, the base data type for Word*[5] is Word. For a pointer, the base data type + * is the type being pointed to or the pointer itself if it is pointing at nothing. + * + *

If "INT" is a typedef on a "dword" then INT[7][3] would have a base data type of dword. + * If you wanted to get the INT from INT[7][3] you should call getNamedBasedDataType(DataType) + * instead. + * * @param dt the data type whose base data type is to be determined. * @return the base data type. */ @@ -409,15 +384,17 @@ public class DataTypeUtils { } /** - * Get the named base data type for the specified data type. - * This method intentionally does not drill down into typedefs. - *
For example, the named base data type for Word*[5] is Word. - * For a pointer, the named base data type is the type being pointed to - * or the pointer itself if it is pointing at nothing. - *
If "INT" is a typedef on a "dword", then INT[7][3] would - * have a named base data type of INT. - * If you wanted to get the dword from INT[7][3] - * you should call getBasedDataType(DataType) instead. + * Get the named base data type for the specified data type. This method intentionally does + * not drill down into typedefs. + * + *

For example, the named base data type for Word*[5] is Word. For a pointer, the named + * base data type is the type being pointed to or the pointer itself if it is pointing at + * nothing. + * + *

If "INT" is a typedef on a "dword", then INT[7][3] would have a named base data type of + * INT. If you wanted to get the dword from INT[7][3] you should call + * getBasedDataType(DataType) instead. + * * @param dt the data type whose named base data type is to be determined. * @return the base data type. */ @@ -444,10 +421,10 @@ public class DataTypeUtils { * Create a copy of the chain of data types that eventually lead to a named * data type. *

- * Returns a {@link DataType#copy(DataTypeManager) copy()} of the first named data - * type found in the pointer / array type chain, and returns an identical chain of - * pointer / arrays up to the copied named type. - *

+ * Returns a {@link DataType#copy(DataTypeManager) copy()} of the first named data type found + * in the pointer / array type chain, and returns an identical chain of pointer / arrays up to + * the copied named type. + * * @param dataType data type to be copied * @param dtm data type manager * @return deep copy of dataType @@ -475,39 +452,16 @@ public class DataTypeUtils { msg = "The Program is not modifiable!\n"; } else if (dtm instanceof FileArchiveBasedDataTypeManager) { - msg = - "The archive file is not modifiable!\nYou must open the archive for editing\n before performing this operation."; + msg = "The archive file is not modifiable!\nYou must open the archive for editing\n" + + "before performing this operation.\n" + dtm.getName(); } else { - msg = - "The project archive is not modifiable!\nYou must check out the archive\n before performing this operation."; + msg = "The project archive is not modifiable!\nYou must check out the archive\n" + + "before performing this operation.\n" + dtm.getName(); } Msg.showInfo(DataTypeUtils.class, parent, title, msg); - } -// For testing: -// public static void main( String[] args ) { -// JFrame frame = new JFrame(); -// JPanel panel = new JPanel(); -// -// JLabel label1 = new GDLabel(); -// Icon icon = getOpenFolderIcon( false ); -// label1.setIcon( icon ); -// -// JLabel label2 = new GDLabel(); -// Icon icon2 = ResourceManager.getDisabledIcon( (ImageIcon) icon ); -// label2.setIcon( icon2 ); -// -// panel.add( label1 ); -// panel.add( label2 ); -// -// frame.getContentPane().add( panel ); -// -// frame.pack(); -// frame.setVisible( true ); -// frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); -// } } //================================================================================================== diff --git a/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/compositeeditor/StructureEditorLockedEnablementTest.java b/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/compositeeditor/StructureEditorLockedEnablementTest.java index e3ffdb8c5c..00347d9e36 100644 --- a/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/compositeeditor/StructureEditorLockedEnablementTest.java +++ b/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/compositeeditor/StructureEditorLockedEnablementTest.java @@ -15,15 +15,14 @@ */ package ghidra.app.plugin.core.compositeeditor; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.Assert.*; import org.junit.Assert; import org.junit.Test; import ghidra.program.model.data.*; import ghidra.util.exception.DuplicateNameException; -import ghidra.util.task.TaskMonitorAdapter; +import ghidra.util.task.TaskMonitor; public class StructureEditorLockedEnablementTest extends AbstractStructureEditorTest { @@ -34,7 +33,7 @@ public class StructureEditorLockedEnablementTest extends AbstractStructureEditor try { DataTypeManager dataTypeManager = cat.getDataTypeManager(); if (dt.getDataTypeManager() != dataTypeManager) { - dt = (Structure) dt.clone(dataTypeManager); + dt = dt.clone(dataTypeManager); } CategoryPath categoryPath = cat.getCategoryPath(); if (!dt.getCategoryPath().equals(categoryPath)) { @@ -69,7 +68,7 @@ public class StructureEditorLockedEnablementTest extends AbstractStructureEditor Structure desiredEmptyStructure = emptyStructure; int txID = program.startTransaction("Removing emptyStruct from DTM."); try { - programDTM.remove(emptyStructure, TaskMonitorAdapter.DUMMY_MONITOR); + programDTM.remove(emptyStructure, TaskMonitor.DUMMY); if (emptyStructure.getDataTypeManager() != catDTM) { desiredEmptyStructure = (Structure) emptyStructure.copy(catDTM); desiredEmptyStructure.setCategoryPath(pgmTestCat.getCategoryPath()); @@ -154,7 +153,8 @@ public class StructureEditorLockedEnablementTest extends AbstractStructureEditor for (CompositeEditorTableAction action : actions) { if ((action instanceof EditFieldAction) || (action instanceof AddBitFieldAction) || (action instanceof InsertUndefinedAction) || (action instanceof PointerAction) || - (action instanceof HexNumbersAction)) { + (action instanceof HexNumbersAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else if (action instanceof FavoritesAction) { @@ -203,7 +203,8 @@ public class StructureEditorLockedEnablementTest extends AbstractStructureEditor (action instanceof DuplicateMultipleAction) || (action instanceof ClearAction) || (action instanceof DeleteAction) || (action instanceof ArrayAction) || (action instanceof PointerAction) || (action instanceof HexNumbersAction) || - (action instanceof CreateInternalStructureAction)) { + (action instanceof CreateInternalStructureAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else { @@ -232,7 +233,8 @@ public class StructureEditorLockedEnablementTest extends AbstractStructureEditor (action instanceof MoveDownAction) || (action instanceof ClearAction) || (action instanceof DeleteAction) || (action instanceof ArrayAction) || (action instanceof PointerAction) || (action instanceof HexNumbersAction) || - (action instanceof CreateInternalStructureAction)) { + (action instanceof CreateInternalStructureAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else { @@ -261,7 +263,8 @@ public class StructureEditorLockedEnablementTest extends AbstractStructureEditor (action instanceof DuplicateAction) || (action instanceof DuplicateMultipleAction) || (action instanceof ArrayAction) || (action instanceof PointerAction) || (action instanceof HexNumbersAction) || - (action instanceof CreateInternalStructureAction)) { + (action instanceof CreateInternalStructureAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else { @@ -289,7 +292,8 @@ public class StructureEditorLockedEnablementTest extends AbstractStructureEditor (action instanceof MoveDownAction) || (action instanceof ClearAction) || (action instanceof DeleteAction) || (action instanceof ArrayAction) || (action instanceof PointerAction) || (action instanceof HexNumbersAction) || - (action instanceof CreateInternalStructureAction)) { + (action instanceof CreateInternalStructureAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else { @@ -313,7 +317,8 @@ public class StructureEditorLockedEnablementTest extends AbstractStructureEditor checkEnablement(action, len <= numBytes); } else if ((action instanceof CycleGroupAction) || (action instanceof ClearAction) || - (action instanceof DeleteAction) || (action instanceof HexNumbersAction)) { + (action instanceof DeleteAction) || (action instanceof HexNumbersAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else { diff --git a/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/compositeeditor/StructureEditorUnlockedEnablementTest.java b/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/compositeeditor/StructureEditorUnlockedEnablementTest.java index f1d07eaf13..2b66f0bd8c 100644 --- a/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/compositeeditor/StructureEditorUnlockedEnablementTest.java +++ b/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/compositeeditor/StructureEditorUnlockedEnablementTest.java @@ -118,7 +118,8 @@ public class StructureEditorUnlockedEnablementTest extends AbstractStructureEdit if ((action instanceof FavoritesAction) || (action instanceof CycleGroupAction) || (action instanceof EditFieldAction) || (action instanceof InsertUndefinedAction) || (action instanceof AddBitFieldAction) || (action instanceof PointerAction) || - (action instanceof HexNumbersAction)) { + (action instanceof HexNumbersAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else { @@ -151,7 +152,8 @@ public class StructureEditorUnlockedEnablementTest extends AbstractStructureEdit (action instanceof DuplicateMultipleAction) || (action instanceof DeleteAction) || (action instanceof ArrayAction) || (action instanceof PointerAction) || (action instanceof HexNumbersAction) || - (action instanceof CreateInternalStructureAction)) { + (action instanceof CreateInternalStructureAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else if (action instanceof FavoritesAction) { @@ -190,7 +192,8 @@ public class StructureEditorUnlockedEnablementTest extends AbstractStructureEdit (action instanceof MoveUpAction) || (action instanceof ClearAction) || (action instanceof DeleteAction) || (action instanceof ArrayAction) || (action instanceof PointerAction) || (action instanceof HexNumbersAction) || - (action instanceof CreateInternalStructureAction)) { + (action instanceof CreateInternalStructureAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else if (action instanceof FavoritesAction) { @@ -230,7 +233,8 @@ public class StructureEditorUnlockedEnablementTest extends AbstractStructureEdit (action instanceof DuplicateMultipleAction) || (action instanceof DeleteAction) || (action instanceof ArrayAction) || (action instanceof PointerAction) || (action instanceof HexNumbersAction) || - (action instanceof CreateInternalStructureAction)) { + (action instanceof CreateInternalStructureAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else if (action instanceof FavoritesAction) { @@ -269,7 +273,8 @@ public class StructureEditorUnlockedEnablementTest extends AbstractStructureEdit if ((action instanceof FavoritesAction) || (action instanceof CycleGroupAction) || (action instanceof EditFieldAction) || (action instanceof InsertUndefinedAction) || (action instanceof AddBitFieldAction) || (action instanceof PointerAction) || - (action instanceof HexNumbersAction)) { + (action instanceof HexNumbersAction) || + (action instanceof ShowDataTypeInTreeAction)) { checkEnablement(action, true); } else { diff --git a/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/datamgr/DataTypeTestUtils.java b/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/datamgr/DataTypeTestUtils.java index 06bf20e522..8f67e5c6f1 100644 --- a/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/datamgr/DataTypeTestUtils.java +++ b/Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/datamgr/DataTypeTestUtils.java @@ -110,9 +110,9 @@ public class DataTypeTestUtils { public static ArchiveNode openArchive(String archiveName, boolean checkout, DataTypeManagerPlugin plugin) throws Exception { - ArchiveNode openArchive = openArchive(archiveName, checkout, false, plugin); + ArchiveNode archiveNode = openArchive(archiveName, checkout, false, plugin); waitForTree(plugin); - return openArchive; + return archiveNode; } private static void waitForTree(DataTypeManagerPlugin plugin) { diff --git a/Ghidra/Features/PDB/developer_scripts/DeveloperDumpAllTypesScript.java b/Ghidra/Features/PDB/developer_scripts/DeveloperDumpAllTypesScript.java index a38798ef98..269f8198ac 100644 --- a/Ghidra/Features/PDB/developer_scripts/DeveloperDumpAllTypesScript.java +++ b/Ghidra/Features/PDB/developer_scripts/DeveloperDumpAllTypesScript.java @@ -93,7 +93,7 @@ public class DeveloperDumpAllTypesScript extends GhidraScript { } String userChoice = OptionDialog.showInputChoiceDialog(null, "Choose a Data Type Manager or Cancel", - "Choose", names, initialDtmChoice, OptionDialog.CANCEL_OPTION); + "Choose", names, initialDtmChoice, OptionDialog.PLAIN_MESSAGE); if (userChoice == null) { return null; } diff --git a/Ghidra/Framework/Docking/src/main/java/docking/widgets/combobox/GhidraComboBox.java b/Ghidra/Framework/Docking/src/main/java/docking/widgets/combobox/GhidraComboBox.java index 6610667fc5..2e86771b9e 100644 --- a/Ghidra/Framework/Docking/src/main/java/docking/widgets/combobox/GhidraComboBox.java +++ b/Ghidra/Framework/Docking/src/main/java/docking/widgets/combobox/GhidraComboBox.java @@ -30,24 +30,24 @@ import docking.widgets.GComponent; /** * GhidraComboBox adds the following features: - * + * *

* 1) ActionListeners are only invoked when the <Enter> key is pressed within the text-field * of the combo-box. In normal JComboBox case, the ActionListeners are notified when an item is * selected from the list. - * + * *

* 2) Adds the auto-completion feature. As a user types in the field, the combo box suggest the * nearest matching entry in the combo box model. - * + * *

* It also fixes the following bug: - * + * *

* A normal JComboBox has a problem (feature?) that if you have a dialog with a button and * JComboBox and you edit the comboText field and then hit the button, the button sometimes does * not work. - * + * *

* When the combobox loses focus, and its text has changed, it generates an actionPerformed event * as though the user pressed <Enter> in the combo text field. This has a bizarre effect if @@ -55,12 +55,12 @@ import docking.widgets.GComponent; * enablement state of the button that you pressed (which caused the text field to lose focus) in * that you end up changing the button's internal state(by calling setEnabled(true or false)) in * the middle of the button press. - * + * * @param the item type */ public class GhidraComboBox extends JComboBox implements GComponent { - private ArrayList listeners = new ArrayList<>(); - private ArrayList docListeners = new ArrayList<>(); + private List listeners = new ArrayList<>(); + private List docListeners = new ArrayList<>(); private boolean setSelectedFlag = false; private boolean forwardEnter; @@ -70,7 +70,6 @@ public class GhidraComboBox extends JComboBox implements GComponent { * Default constructor. */ public GhidraComboBox() { - super(); init(); } @@ -164,7 +163,7 @@ public class GhidraComboBox extends JComboBox implements GComponent { * {@link GhidraComboBox} will add an action listener to handle <Enter> actions. *

  • The user deletes the text
  • *
  • setSelectedItem(Object) method is called with the same item
  • * - * + * * In that above series of steps, the text will still be empty, as the user deleted it *and* * the call to setSelectedItem(Object) had no effect because the base class assumed that the * item is already selected. - * + * *

    * This method exists to make sure, in that case, that the text of the field matches the * selected item. @@ -256,6 +255,13 @@ public class GhidraComboBox extends JComboBox implements GComponent { model.addElement(obj); } + public void addToModel(Collection items) { + DefaultComboBoxModel model = (DefaultComboBoxModel) getModel(); + for (E e : items) { + model.addElement(e); + } + } + public boolean containsItem(E obj) { DefaultComboBoxModel model = (DefaultComboBoxModel) getModel(); return model.getIndexOf(obj) != -1; diff --git a/Ghidra/Framework/Docking/src/main/java/docking/widgets/dialogs/InputWithChoicesDialog.java b/Ghidra/Framework/Docking/src/main/java/docking/widgets/dialogs/InputWithChoicesDialog.java index 384065103c..62f5ad048e 100644 --- a/Ghidra/Framework/Docking/src/main/java/docking/widgets/dialogs/InputWithChoicesDialog.java +++ b/Ghidra/Framework/Docking/src/main/java/docking/widgets/dialogs/InputWithChoicesDialog.java @@ -28,7 +28,6 @@ import docking.widgets.label.GHtmlLabel; /** * A dialog that has text fields to get user input. - * */ public class InputWithChoicesDialog extends DialogComponentProvider { @@ -37,19 +36,17 @@ public class InputWithChoicesDialog extends DialogComponentProvider { private boolean allowEdits; /** - * Creates a provider for a generic input dialog with the specified title, - * a label and a editable comboBox pre-populated with selectable values. The user - * can check the value of {@link #isCanceled()} to know whether or not - * the user canceled the operation. To get the user selected value use the - * {@link #getValue()} value(s) entered by the user. If the user cancelled the operation, then - * null will be returned from getValue(). - *

    + * Creates a provider for a generic input dialog with the specified title, a label and a + * editable comboBox pre-populated with selectable values. The user can check the value of + * {@link #isCanceled()} to know whether or not the user canceled the operation. To get the + * user selected value use the {@link #getValue()} value(s) entered by the user. If the user + * cancelled the operation, then null will be returned from {@link #getValue()}. * * @param dialogTitle used as the name of the dialog's title bar * @param label value to use for the label of the text field * @param optionValues values to populate the combo box - * @param initialValue the initial value - can be null - * @param messageIcon the icon to display on the dialog--can be null + * @param initialValue the initial value; may be null + * @param messageIcon the icon to display on the dialog; may be null */ public InputWithChoicesDialog(String dialogTitle, String label, String[] optionValues, String initialValue, Icon messageIcon) { @@ -67,20 +64,18 @@ public class InputWithChoicesDialog extends DialogComponentProvider { } /** - * Creates a provider for a generic input dialog with the specified title, - * a label and a editable comboBox pre-populated with selectable values. The user - * can check the value of {@link #isCanceled()} to know whether or not - * the user canceled the operation. To get the user selected value use the - * {@link #getValue()} value(s) entered by the user. If the user cancelled the operation, then - * null will be returned from getValue(). - *

    + * Creates a provider for a generic input dialog with the specified title, a label and a + * editable comboBox pre-populated with selectable values. The user can check the value of + * {@link #isCanceled()} to know whether or not the user canceled the operation. To get the + * user selected value use the {@link #getValue()} value(s) entered by the user. If the user + * cancelled the operation, then null will be returned from {@link #getValue()}. * * @param dialogTitle used as the name of the dialog's title bar * @param label value to use for the label of the text field * @param optionValues values to populate the combo box - * @param initialValue the initial value - can be null - * @param allowEdits true allows the user to add custom entries to the combo box by entering text - * @param messageIcon the icon to display on the dialog--can be null + * @param initialValue the initial value; may be null + * @param allowEdits true allows the user to add custom entries by entering text + * @param messageIcon the icon to display on the dialog; may be null */ public InputWithChoicesDialog(String dialogTitle, String label, String[] optionValues, String initialValue, boolean allowEdits, Icon messageIcon) { @@ -103,7 +98,7 @@ public class InputWithChoicesDialog extends DialogComponentProvider { } /** - * completes the construction of the gui for this dialog + * Completes the construction of the gui for this dialog */ private void buildMainPanel(String labelText, String[] optionValues, String initialValue, Icon messageIcon) { @@ -168,13 +163,15 @@ public class InputWithChoicesDialog extends DialogComponentProvider { /** * Returns if this dialog is canceled. + * @return true if canceled */ public boolean isCanceled() { return isCanceled; } /** - * return the value of the first combo box + * Return the value of the first combo box. + * @return the value */ public String getValue() { if (isCanceled) { @@ -192,8 +189,7 @@ public class InputWithChoicesDialog extends DialogComponentProvider { /** * Set the current choice to value. * @param value updated choice - * @throws NoSuchElementException if choice does not permit edits and value is - * not a valid choice. + * @throws NoSuchElementException if edits not permitted and value is not a valid choice */ public void setValue(String value) { combo.setSelectedItem(value); diff --git a/Ghidra/Framework/Docking/src/main/java/docking/widgets/tree/GTree.java b/Ghidra/Framework/Docking/src/main/java/docking/widgets/tree/GTree.java index 6c38df4a05..19cd4ed0be 100644 --- a/Ghidra/Framework/Docking/src/main/java/docking/widgets/tree/GTree.java +++ b/Ghidra/Framework/Docking/src/main/java/docking/widgets/tree/GTree.java @@ -27,6 +27,7 @@ import java.util.*; import java.util.List; import java.util.function.Consumer; import java.util.function.Supplier; +import java.util.stream.Collectors; import javax.swing.*; import javax.swing.Timer; @@ -334,7 +335,7 @@ public class GTree extends JPanel implements BusyListener { *

    * Note: See the usage note at the header of this class concerning how tree state * is used relative to the equals() method. - * + * * @param state the state to restore * * @see #getTreeState() @@ -582,7 +583,7 @@ public class GTree extends JPanel implements BusyListener { * been replaced by a new node that is equal, but a different instance. One way this happens * is if the tree is filtered and therefor the displayed nodes are clones of the model nodes. * This can also happen if the tree nodes are rebuilt for some reason. - * + * * @param node the node * @return the corresponding model node in the tree. If the tree is filtered the viewed node * will be a clone of the corresponding model node. @@ -596,7 +597,7 @@ public class GTree extends JPanel implements BusyListener { * been replaced by a new node that is equal, but a different instance. One way this happens * is if the tree is filtered and therefor the displayed nodes are clones of the model nodes. * This can also happen if the tree nodes are rebuilt for some reason. - * + * * @param path the path of the node * @return the corresponding model node in the tree. If the tree is filtered the viewed node * will be a clone of the corresponding model node. @@ -609,7 +610,7 @@ public class GTree extends JPanel implements BusyListener { * Gets the view node for the given node. This is useful to translate to a tree path that is * valid for the currently displayed tree. (Remember that if the tree is filtered, then the * displayed nodes are clones of the model nodes.) - * + * * @param node the node * @return the current node in the displayed (possibly filtered) tree */ @@ -621,7 +622,7 @@ public class GTree extends JPanel implements BusyListener { * Gets the view node for the given path. This is useful to translate to a tree path that is * valid for the currently displayed tree. (Remember that if the tree is filtered, then the * displayed nodes are clones of the model nodes.) - * + * * @param path the path of the node * @return the current node in the displayed (possibly filtered) tree */ @@ -760,7 +761,7 @@ public class GTree extends JPanel implements BusyListener { /** * Returns true if the given JTree is the actual JTree used by this GTree. - * + * * @param jTree the tree to test * @return true if the given JTree is the actual JTree used by this GTree. */ @@ -773,7 +774,7 @@ public class GTree extends JPanel implements BusyListener { *

    * NOTE: if this method is not called from the Swing thread, then the root node will be set * later on the Swing thread. That is, this method will return before the work has been done. - * + * * @param rootNode The node to set as the new root. */ public void setRootNode(GTreeNode rootNode) { @@ -916,6 +917,13 @@ public class GTree extends JPanel implements BusyListener { return paths; } + public List getSelectedNodes() { + TreePath[] paths = getSelectionPaths(); + return Arrays.stream(paths) + .map(tp -> (GTreeNode) tp.getLastPathComponent()) + .collect(Collectors.toList()); + } + public boolean isExpanded(TreePath treePath) { return tree.isExpanded(treePath); } @@ -1023,20 +1031,20 @@ public class GTree extends JPanel implements BusyListener { * becomes available to the model. This method will ensure that the named child passes any * current filter in order for the child to appear in the tree. This effect is temporary and * will be undone when next the filter changes. - * + * *

    This method is intended to be used by clients using an asynchronous node model, where * new nodes will get created by application-level events. Such clients may wish to perform * work when newly created nodes become available. This method simplifies the concurrent * nature of the GTree, asynchronous nodes and the processing of asynchronous application-level * events by providing a callback mechanism for clients. This method is non-blocking. - * + * *

    Note: this method assumes that the given parent node is in the view and not filtered * out of the view. This method makes no attempt to ensure the given parent node passes any * existing filter. - * + * *

    Note: this method will not wait forever for the given node to appear. It will eventually * give up if the node never arrives. - * + * * @param parent the model's parent node. If the view's parent node is passed, it will * be translated to the model node. * @param childName the name of the desired child @@ -1046,17 +1054,17 @@ public class GTree extends JPanel implements BusyListener { Consumer consumer) { /* - + If the GTree were to use Java's CompletableStage API, then the code below could be written thusly: - + tree.getNewNode(modelParent, newName) .thenCompose(newModelChild -> { tree.ignoreFilter(newModelChild); return tree.getNewNode(viewParent, newName); )) .thenAccept(consumer); - + */ // ensure we operate on the model node which will always have the given child not the view @@ -1075,7 +1083,7 @@ public class GTree extends JPanel implements BusyListener { * Requests that the node with the given name, in the given parent, be edited. This operation * is asynchronous. This request will be buffered as needed to wait for the given node to be * added to the parent, up to a timeout period. - * + * * @param parent the parent node * @param childName the name of the child to edit */ @@ -1101,7 +1109,7 @@ public class GTree extends JPanel implements BusyListener { /** * Requests that the node be edited. This operation is asynchronous. - * + * * @param node the node to edit */ public void startEditing(GTreeNode node) { @@ -1269,7 +1277,7 @@ public class GTree extends JPanel implements BusyListener { /** * Used to run tree tasks. This method is not meant for general clients of this tree, but * rather for tasks to tell the tree to perform subtasks. - * + * * @param task the task to run */ public void runTask(GTreeTask task) { diff --git a/Ghidra/Framework/Generic/src/main/java/generic/test/AbstractGTest.java b/Ghidra/Framework/Generic/src/main/java/generic/test/AbstractGTest.java index 6dd9e43a2b..6a7ff342e8 100644 --- a/Ghidra/Framework/Generic/src/main/java/generic/test/AbstractGTest.java +++ b/Ghidra/Framework/Generic/src/main/java/generic/test/AbstractGTest.java @@ -15,8 +15,9 @@ */ package generic.test; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.fail; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.core.StringContains.*; +import static org.junit.Assert.*; import java.io.File; import java.util.*; @@ -298,6 +299,15 @@ public abstract class AbstractGTest { } } + public static void assertContainsString(String expected, String actual) { + assertThat(actual, containsString(expected)); + } + + public static void assertContainsStringIgnoringCase(String expected, String actual) { + // newer hamcrest versions have containsStringIgnoringCase() + assertThat(actual.toLowerCase(), containsString(expected.toLowerCase())); + } + private static String printListFailureMessage(String message, List expected, List actual) { diff --git a/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/DataTypeManager.java b/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/DataTypeManager.java index b3deabd11a..de5f472d80 100644 --- a/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/DataTypeManager.java +++ b/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/DataTypeManager.java @@ -68,7 +68,7 @@ public interface DataTypeManager { /** * Returns a unique name not currently used by any other dataType or category * with the same baseName - * + * * @param path the path of the name * @param baseName the base name to be made unique * @return a unique name starting with baseName @@ -90,7 +90,7 @@ public interface DataTypeManager { * Returns a data type after adding it to this data manager. * The returned dataType will be in a category in this dataTypeManager * that is equivalent to the category of the passed in dataType. - * + * * @param dataType the dataType to be resolved. * @param handler used to resolve conflicts with existing dataTypes. * @return an equivalent dataType that "belongs" to this dataTypeManager. @@ -120,7 +120,7 @@ public interface DataTypeManager { /** * Adds all data types to the specified list.] - * + * * @param list the result list into which the types will be placed */ public void getAllDataTypes(List list); @@ -181,7 +181,7 @@ public interface DataTypeManager { * there is also a category "b" under category "a". A better solution is to use * the {@link #getDataType(DataTypePath)} method because the DataTypePath keeps the * category and datatype name separate. - * + * * @param dataTypePath path * @return the dataType or null if it isn't found */ @@ -206,7 +206,7 @@ public interface DataTypeManager { /** * Returns the dataTypeId for the given dataType. If the dataType is not * currently in the dataTypeManger, it will be added - * + * * @param dt the data type * @return the ID of the resolved type */ @@ -215,7 +215,7 @@ public interface DataTypeManager { /** * Returns the dataTypeId for the given dataType. If the dataType does not exist, * a -1 will be returned - * + * * @param dt the datatype to get an id for * @return the ID of the type */ @@ -224,7 +224,7 @@ public interface DataTypeManager { /** * Returns the dataType associated with the given dataTypeId or null if the dataTypeId is * not valid - * + * * @param dataTypeID the ID * @return the type */ @@ -232,7 +232,7 @@ public interface DataTypeManager { /** * Returns the Category with the given id - * + * * @param categoryID id of the desired category * @return the category */ @@ -240,7 +240,7 @@ public interface DataTypeManager { /** * Get the category that has the given path - * + * * @param path the path * @return the category if defined, otherwise null */ @@ -282,7 +282,7 @@ public interface DataTypeManager { /** * Return true if the given dataType exists in this data type manager - * + * * @param dataType the type * @return true if the type is in this manager */ @@ -290,7 +290,7 @@ public interface DataTypeManager { /** * Create a category for the given path; returns the current category if it already exits - * + * * @param path the path * @return the category */ @@ -351,7 +351,7 @@ public interface DataTypeManager { /** * Returns a default sized pointer to the given datatype. The pointer size is established * dynamically based upon the data organization established by the compiler specification. - * + * * @param datatype the pointed to data type * @return the pointer */ @@ -361,7 +361,7 @@ public interface DataTypeManager { * Returns a pointer of the given size to the given datatype. * Note: It is preferred to use default sized pointers when possible (i.e., size=-1, * see {@link #getPointer(DataType)}) instead of explicitly specifying the size value. - * + * * @param datatype the pointed to data type * @param size the size of the pointer to be created or -1 for a default sized pointer * @return the pointer @@ -416,6 +416,14 @@ public interface DataTypeManager { */ public void findEnumValueNames(long value, Set enumValueNames); + /** + * Finds the data type using the given source archive and id. + * + * @param sourceArchive the optional source archive; required when the type is associated with + * that source archive + * @param datatypeID the type's id + * @return the type or null + */ public DataType getDataType(SourceArchive sourceArchive, UniversalID datatypeID); /** @@ -433,7 +441,7 @@ public interface DataTypeManager { /** * Returns the source archive for the given ID - * + * * @param sourceID the ID * @return the archive; null if the ID is null; null if the archive does not exist */ @@ -447,7 +455,7 @@ public interface DataTypeManager { /** * Returns all data types within this manager that have as their source the given archive - * + * * @param sourceArchive the archive * @return the types */ @@ -461,7 +469,7 @@ public interface DataTypeManager { /** * Change the given data type so that its source archive is the given archive - * + * * @param datatype the type * @param archive the archive */ @@ -508,7 +516,7 @@ public interface DataTypeManager { /** * Removes the source archive from this manager. This will disassociate all data types in * this manager from the given archive. - * + * * @param sourceArchive the archive */ public void removeSourceArchive(SourceArchive sourceArchive); @@ -529,17 +537,18 @@ public interface DataTypeManager { * @deprecated the method {@link DataType#getParents()} should be used instead. * Use of {@link Set} implementations for containing DataTypes is also inefficient. */ + @Deprecated public Set getDataTypesContaining(DataType dataType); /** - * Determine if settings are supported for BuiltIn datatypes within this + * Determine if settings are supported for BuiltIn datatypes within this * datatype manager. * @return true if BuiltIn Settings are permitted */ public boolean allowsDefaultBuiltInSettings(); /** - * Determine if settings are supported for datatype components within this + * Determine if settings are supported for datatype components within this * datatype manager (i.e., for structure and union components). * @return true if BuiltIn Settings are permitted */ diff --git a/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/StructureFactory.java b/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/StructureFactory.java index 8769663e0b..149b48b7f9 100644 --- a/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/StructureFactory.java +++ b/Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/StructureFactory.java @@ -23,8 +23,8 @@ import ghidra.program.model.listing.*; /** * Creates and initializes {@link Structure} objects. - * - * + * + * */ public class StructureFactory { public static final String DEFAULT_STRUCTURE_NAME = "struct"; @@ -33,14 +33,14 @@ public class StructureFactory { * Creates a {@link StructureDataType} instance based upon the information * provided. The instance will not be placed in memory. *

    - * This method is just a pass-through method for + * This method is just a pass-through method for * {@link #createStructureDataType(Program,Address,int,String,boolean)} * equivalent to calling: *

     	 *      Structure newStructure = StructureFactory.createStructureDataType(
     	 *          program, address, dataLength, DEFAULT_STRUCTURE_NAME, true );
     	 * 
    - * + * * @param program The program to which the structure will belong. * @param address The address of the structure. * @param dataLength The number of components to add to the structure. @@ -50,7 +50,7 @@ public class StructureFactory { *
  • if dataLength is not greater than zero *
  • if the number of components to add exceeds the available * address space - *
  • if there are any instructions in the provided + *
  • if there are any instructions in the provided * address space *
  • if there are no data components to add to the structure * @@ -63,7 +63,7 @@ public class StructureFactory { /** * Creates a {@link StructureDataType} instance based upon the information * provided. The instance will not be placed in memory. - * + * * @param program The program to which the structure will belong. * @param address The address of the structure. * @param dataLength The number of components to add to the structure. @@ -77,7 +77,7 @@ public class StructureFactory { *
  • if dataLength is not greater than zero *
  • if the number of components to add exceeds the available * address space - *
  • if there are any instructions in the provided + *
  • if there are any instructions in the provided * address space *
  • if there are no data components to add to the structure * @@ -125,18 +125,18 @@ public class StructureFactory { } /** - * Creates a {@link StructureDataType} instance, which is inside of - * another structure, based upon the information provided. The instance + * Creates a {@link StructureDataType} instance, which is inside of + * another structure, based upon the information provided. The instance * will not be placed in memory. *

    - * This method is just a pass-through method for + * This method is just a pass-through method for * {@link #createStructureDataTypeInStrucuture(Program,Address,int[],int[],String,boolean)} * equivalent to calling: *

     	 *      Structure newStructure = StructureFactory.createStructureDataTypeInStrucuture(
     	 *          program, address, fromPath, toPath, DEFAULT_STRUCTURE_NAME, true );
     	 * 
    - * + * * @param program The program to which the structure will belong. * @param address The address of the structure. * @param fromPath The path to the first element in the parent structure @@ -160,10 +160,10 @@ public class StructureFactory { } /** - * Creates a {@link StructureDataType} instance, which is inside of - * another structure, based upon the information provided. The instance + * Creates a {@link StructureDataType} instance, which is inside of + * another structure, based upon the information provided. The instance * will not be placed in memory. - * + * * @param program The program to which the structure will belong. * @param address The address of the structure. * @param fromPath The path to the first element in the parent structure @@ -227,7 +227,7 @@ public class StructureFactory { return newStructure; } - // uses the provided context to initiailze the provided structure with + // uses the provided context to initialize the provided structure with // dataLength number of components private static void initializeStructureFromContext(Structure structure, DataTypeProviderContext context, int dataLength) { @@ -249,8 +249,8 @@ public class StructureFactory { } for (DataTypeComponent dataComp : dataComps) { - structure.add(dataComp.getDataType(), dataComp.getLength(), - dataComp.getFieldName(), dataComp.getComment()); + structure.add(dataComp.getDataType(), dataComp.getLength(), dataComp.getFieldName(), + dataComp.getComment()); } } }
  • * To re-enable the default behavior, set the forwardEnter value to true. - * + * * @param forwardEnter true to enable default <Enter> key handling. */ public void setEnterKeyForwarding(boolean forwardEnter) { @@ -198,7 +197,7 @@ public class GhidraComboBox extends JComboBox implements GComponent { * editor used. By default the editor for combo boxes is a text field. This method is * a convenience for the user to set the number of columns on that text field, which updates * the preferred size of the combo box. - * + * * @param columnCount The number of columns for the text field editor * @see JTextField#setColumns(int) */ @@ -216,11 +215,11 @@ public class GhidraComboBox extends JComboBox implements GComponent { *