Commit Graph

3392 Commits

Author SHA1 Message Date
Benjamin Popp
1a56edd804 ugrade start screen to list available default anchors 2019-03-30 21:19:03 -05:00
Benjamin Popp
95842c8e7c auto-find move data 2019-03-30 21:08:40 -05:00
Benjamin Popp
e023b2afd1 find abiilty descriptions 2019-03-30 13:48:09 -05:00
Benjamin Popp
a9e6f055c8 spacebar after editing an enum should commit that edit 2019-03-30 13:25:39 -05:00
Benjamin Popp
f8248236a8 allow creation of a string anchor if the data can be recognize
as a string and that string is being pointed to. Allow this even
if the user does not provide a name.
2019-03-30 13:21:10 -05:00
Benjamin Popp
f4107d3b11 fix bug editing first byte in ascii format 2019-03-29 21:20:08 -05:00
Benjamin Popp
1930a8526b fixes after working with Pokemon Gaia
make copy/paste not add empty elements
2019-03-29 21:16:58 -05:00
Benjamin Popp
bf070ca10f auto-insert pokestats 2019-03-28 21:20:18 -05:00
Benjamin Popp
619ba8b5f8 bug fix: can't put space at front of integer format
bug fix: can copy/paste partial array
bug fix: can copy/paste pointers in array
bug fix: add spaces when copying array
bug fix: changing data in hex changes data in tool
bug fix: changing data in tool changes data in hex
bug fix: parsing an empty string in array doesn't crash
bug fix: closing tab that needs saving doesn't crash
2019-03-27 21:34:28 -05:00
Benjamin Popp
56a0169597 - added right-click menu item to open table tool
- moved tools from the right side to the left side
- tool title is now part of the tool instead of part of the tools children
- tool has previous / next buttons
- fixed weird visual back/forth with the row of column headers not
   knowing how tall to be
- buttons know how to look disabled now
-
2019-03-26 21:34:04 -05:00
Benjamin Popp
8e0ad84fda first draft of the table tool 2019-03-25 20:56:58 -05:00
Benjamin Popp
2a71c37f87 create a custom framework element for the row of column headers
make the headers display the correct data whenever possible
2019-03-22 21:13:19 -05:00
Benjamin Popp
ecb810aa2e adding column headers 2019-03-19 21:17:58 -05:00
Benjamin Popp
cc1b080792 change headers when looking at array data 2019-03-18 20:49:29 -05:00
Benjamin Popp
d5cf6b89cd clean up the UI to make it not look terrible. Still doesn't look great though. 2019-03-18 20:15:25 -05:00
Benjamin Popp
34b3b935e1 adding tests / logic to deal with editing and same-name resolution 2019-03-16 21:12:22 -05:00
Benjamin Popp
ae886b0402 enums can be rendered, but not edited 2019-03-16 20:07:47 -05:00
haven1433
863da3c7e2 Merge pull request #22 from haven1433/dev
Anchors pointing within arrays
2019-03-13 20:03:44 -05:00
Benjamin Popp
8777fe85a7 - update pokestats with actual values before starting to work on enums
- page up and page down now work
- long errors wrap instead of moving the menu
2019-03-12 21:30:58 -05:00
Benjamin Popp
617ae4f3f5 @ for goto should support / separator to go to sub-sections of arrays 2019-03-11 23:07:04 -05:00
Benjamin Popp
a00dbfeb97 bugfix: should've been using the flag passed in instead of just passing true
added auto-search tests for types
2019-03-11 23:04:52 -05:00
Benjamin Popp
9d7d1caef3 allow users to type pointers that lead into arrays that support inner anchors 2019-03-11 22:58:49 -05:00
Benjamin Popp
2c3f79242e bypass the anchor overwrite check when loading anchors from metadata 2019-03-11 22:26:01 -05:00
Benjamin Popp
885c187929 it is now possible for users to add arrays with inner anchors manually,
instead of relying on just the auto-search to get it right.
2019-03-11 22:12:08 -05:00
Benjamin Popp
52495eb888 bug fix: it should be possible to remove pointers that point into arrays without crashing the app. 2019-03-11 21:42:31 -05:00
Benjamin Popp
15d67e719c - render anchors within arrays (if the array supports it)
- goto index within array (example: types/2)
- goto index within array still limits screen width based on array
- when searching for pointers, return already existing pointers as well as newly added pointers.
2019-03-09 21:46:03 -06:00
Benjamin Popp
52249384bc arrays can now have pointers pointing within them.
using 'types' as the example of this that the game actually uses.
still have a bunch of pieces to do, but this is the basic code
2019-03-07 21:32:52 -06:00
haven1433
ee15c5f090 Merge pull request #21 from haven1433/dev
Pointer support in arrays, plus minor usability improvements
2019-02-24 21:38:41 -06:00
Benjamin Popp
76d41e6f27 add some tests for the auto-search model. These tests are skippable,
because they depend on loading real data that may not be available on
a development system.
2019-02-18 20:38:51 -06:00
Benjamin Popp
0a71cc139d handle case better for auto-complete 2019-02-18 20:04:37 -06:00
Benjamin Popp
98c3754c12 fix auto-search 2019-02-18 19:55:11 -06:00
Benjamin Popp
d725106277 fix a bug that was breaking segment rendering for arrays
better tooltip for anchor editor
automatically find items data (tested in the 5 base roms)
2019-02-16 20:59:59 -06:00
Benjamin Popp
3fb44380e9 array edge cases: make array pointers act like normal pointers
- changing one updates anchors
- you can create an array over formatted data, but not over anchors
- pointers update correctly when typed in
2019-02-12 22:29:24 -06:00
Benjamin Popp
cf828d06f1 slight refactoring to prep for more array / pointer stuff. Added some insertion points as TODOs 2019-02-12 21:04:11 -06:00
Benjamin Popp
34fd89c243 forgot to make an exception for null 2019-02-10 21:59:43 -06:00
Benjamin Popp
426c7ff362 arrays now support pointers 2019-02-10 21:34:58 -06:00
Benjamin Popp
147115bc10 code readability updates 2019-02-10 21:32:17 -06:00
Benjamin Popp
55f18002b7 support for doing Goto while in data using the @ symbol
this is useful because now users can paste an address and data
directly into the editor and have stuff automatically work.

For example:

`@123ABC <pokenames>`

You could paste that anywhere in the data, and the pointer pokenames
would get written at 123ABC.

You can combine multiple changes together in this way. Basically,
this turns HMA into a capable lightweight patching tool.
2019-02-10 11:10:29 -06:00
Benjamin Popp
c0f4456ea9 Merge branch 'master' into dev 2019-02-09 21:28:55 -06:00
Benjamin Popp
8b24af07ff rename paste to paste / replace, since it does an overwrite
fix a crash when using goto from the search results tab
fix goto not working on a tab if you get to that tab by closing the selected tab
2019-02-09 21:25:18 -06:00
Benjamin Popp
fe4f3feb2d make the anchor editor a bit more clear instead of just being a random text box 2019-02-09 21:12:35 -06:00
Benjamin Popp
3822b8b543 search results select the full length of the search string
instead of just the first byte

when following a search result, move selection to the result
2019-02-09 20:51:36 -06:00
Benjamin Popp
bb00a22fc5 - refactor ViewPort constructor to not need to take in the data array twice
- when searching for text, check if the found results are anchors
- when adding a text anchor with no name, search for pointers before rejecting it
2019-02-09 12:29:47 -06:00
Benjamin Popp
b05d7d0a5f right-clicking non-selected data should select that data
format clearing right-click option should be based on what's selected, not just what is clicked
2019-02-07 21:09:37 -06:00
Benjamin Popp
45ed0ae4f7 bumping version so I don't forget to later 2019-02-06 21:50:19 -06:00
haven1433
e929498fb0 Merge pull request #20 from haven1433/dev
Support for integers in arrays
2019-02-06 21:42:33 -06:00
Benjamin Popp
d23e77bd32 adjust the algorithm for goto-address to try to keep everything
aligned with hex 0 at the left edge (user request)

This changes automatically when you jump to an array
2019-02-06 21:41:47 -06:00
Benjamin Popp
3d8f9cd1cc right click -> escape, should close context menu 2019-02-06 21:27:32 -06:00
Benjamin Popp
e549699340 usability update: default to 16 bytes as the preferred width
the preferred width will sitll automatically change when you goto arrays
2019-02-06 21:17:04 -06:00
Benjamin Popp
4529c35551 skipping test, since now I know I won't be working on this feature next. 2019-02-05 21:11:45 -06:00