- added forge-specific spinner widget (FSpinner)
- allowed labels to have their toggle state read externally and added configuration to set whether the onClick command is executed on mouse button down or mouse button up (FLabel)
- added builder pattern to FTextField and autoset properties to common values
- fixed header comments in WrapLayout
- renamed DialogCustomFormat to the more generic DialogChooseSets since I use it now from the filters too; extended its functionality to run a specified command on ok button click
- removed Filters dockable panel
- added old filters functionality to the stats buttons above the catalog table (stats can no longer be removed via a preference setting)
- combined scattered metadata about the filters (e.g. icon, label, filter predicate) into a single enum
- rewrote filter utility functions to not have any side effects (they now use no global data/singletons)
- added "Owned" column to spell shop catalog, indicating number of cards already owned by player (can remove column with preference)
- don't count the "click" as a sort command when resizing a column
- exposed top-level main world custom format in QuestController -- other format-retrieving methods would be masked by the current world selection
- added utility fn to TextUtils to create a (locale-independent) Title out of an ENUM
- added a templated Pair<T, V> utility class for ad-hoc two-value parameter returning
- prevented invalid enum values in editor_preferred.xml from causing errors
SwingBuilder caused a couple other problems. It is also contained in ord.jdesktop, so I replaced it with that one
Preferences also contained stringPropertyNames(), which only exists since 1.6
-replaced the old ImageCache class with ImageCache2
-extracted the card picture- and detail code from GuiDisplay/DeckEditor into separate classes (in forge.gui.game). therefore, CardDetailUtil and forge.CardPanel were deleted. GuiDisplayUtil is no longer used to create the card panels.
TESTS:
-confirmed all changed GUIs (but the quest deck editor - changes are the same as normal deck editor) to show details and pictures.
-I played a game with reduced heap size (-Xmx200M). Occasionally the image cache size shrinked along with the used memory.
-In a game without reduced heap size (memory usage ~500M, over 1000 cached images), i noticed slowdown when some images were missing.
-I noticed the stack elements now having a border with the card's color; this doesn't hurt IMO.
NOT WORKING
I wasn't able to adapt one thing: GUI_PictureHQ, i just didn't know what it does. for everything else to work, some code sections were commented out and tagged with "TODO reenable"
- AI should consider Bushido now when declaring attackers / blockers.
- Fixed a bug which would sometimes bring up an error report when a static effect left play.
- Fixed Ensnare text.
Fixed a bug in forge.gui.ListChooser that threw a NullPointerException when trying to convert Integer to int
Replaced Font.MONOSPACED by "Monospaced" in forge.error.ErrorViewer for better Java 1.5 compatibility