Commit graph

225 commits

Author SHA1 Message Date
vraskulin
f60ebfbb1f All 1-character strings converted to primitives
"b" + "r" now changed to 'b' + 'w'.  It's more straight-forward, and may cause perfomance improvements - character primitives allocation is faster and less expensive than string creation.
2017-02-06 14:32:51 +03:00
vraskulin
cb1b507076 Hotfix (client don't compile) after pr 2762 merged to master
There is no ActionListener in import block, so mage-client in current state can't be compiled. Changed ActionListener  to lambda
2017-01-11 11:49:19 +03:00
sotovdev
fe7aaedf1c Merge branch 'master' into bigRefactoring 2017-01-10 15:37:43 +03:00
spjspj
a4275ab658 Deck editor - Add a 'Bling my deck' button. 2017-01-10 22:26:59 +11:00
vraskulin
076840df53 Big refactoring
I used Intellij IDEA to automatically refactor code to achive 3 goals.
1) get rid of anonymouse classes, and replace the with lamba to get more readeable and clean code (like in TableWaitingDialog).
2) make effectively final  variables actually final to avoid inadvertent changes on it in further releases and keep objects as immutable, as possible.
3)  Get rid of unused imports (most of the changes) in whole project classes.
2017-01-09 19:16:53 +03:00
spjspj
24b4bc8e30 spjspj - Add invert selection to deck editor 2016-12-13 00:41:21 +11:00
spjspj
49cfaee144 spjspj - Add concept of 'Multiples' (work out in new edh decks which are not singleton). 2016-11-19 22:45:47 +11:00
spjspj
d7b1ae68ed spjspj - Sorcery count was double 2016-11-18 00:14:59 +11:00
LevelX2
89a739e902 * Removed debug messages. 2016-10-20 15:16:31 +02:00
fireshoes
b733f911f7 Added the four finalists from You Make the Cube. 2016-10-17 23:44:14 -05:00
fireshoes
c045204622 Added the four finalists from You Make the Cube. 2016-10-17 23:43:25 -05:00
fireshoes
abfcd0ab10 Added the four finalists from You Make the Cube. 2016-10-17 23:41:22 -05:00
Mark Langen
5af417ed0b More Drag & Drop editor fixes
* Fixed cards being blurry. The problem isn't completely fixed, but the fix will suffice in most cases. Card Images are only loaded in once, and the cards were loaded in initially at a small size instead of their eventual size after layout. Really they should reload images when resized, but I will tackle that later, and it's only noticable when significantly resizing cards within one usage of the editor anyways.
* Removed some of the unneeded UI on the sideboard half of the DeckView so that componently are less likely to overlap at a small size. Not sure how to ideally handle this, as Swing doesn't really provide an elegant way to hide components at small sizes, and I'm sure the user would rather the components overlap than be unable to resize the window as small as they want due to a minimum size requirement.
2016-10-04 00:23:13 -06:00
Mark Langen
f6d50ce04f Various new Drag & Drop deck editor improvements
* Shift-Click / Shift-Drag now work as expected as far as multi-selection
* Deck editor saves split pane split positions
* Card layout and sort settings are now saved along side the a deck when saving to the .dck format, so that you have back the exact same deck layout when you re-load the deck.
* Fixed the symbol image downloader to work around some of the large-size symbol images being missing on gatherer. Falls back to the medium sized images currently for those symbols.
2016-10-04 00:09:51 -06:00
Mark Langen
a018f2021b Fixed a bug with JFileChooser in the DeckEditorPanel
* On specific platforms (it seems Windows 7-10, JRT 7+), under our specific configuration, in the case where the user selects the exact same file as they chose during a previous selection, JFileChooser reports that the user selected a file, but returns chosen file = null. This commit works around that by assuming they chose the same file as last time in that case.
2016-09-28 23:27:46 -06:00
Mark Langen
615b93f8c3 Finished the new Drag & Drop deck view. It is currently implemented in main deck editor, and limited deck construction.
Still to do:
* Integrate it into the draft view
2016-09-28 20:57:23 -06:00
Mark Langen
56a3c6dc8c Mostly working Drag n Drop deck editor
* Still trying to iron out how to signal back events from cards moving between different drag and drop targets to the DeckEditorPane
2016-09-28 20:57:22 -06:00
Mark Langen
3c2c793f5d Drag n Drop Deck Editor WIP
* Working standalone proof-of-concept application in DragCardGrid.

* Still needs listener functionality in order to integrate it into the existing DeckEditorPanel class.
2016-09-28 20:57:22 -06:00
LevelX2
d7dd635bca Revert "introduced StringUtil class with .isEmpty(String input) and .isNotEmp…" 2016-09-16 23:55:54 +02:00
ingmargoudt
f1cf9e7adb introduced StringUtil class with .isEmpty(String input) and .isNotEmpty(String input), to replace str != null && str.length()>0 statements 2016-09-16 21:23:31 +02:00
ingmargoudt
71398d6d83 added some missing session references 2016-09-16 08:58:44 +02:00
ingmargoudt
3019991473 removed the Session out of local scope and introduced a static SessionHandler that acts as interface to remote.Session 2016-09-15 20:52:41 +02:00
ingmargoudt
3128bd2b4b replace [list].size() == 0 and [string].length() == 0 to use .isEmpty() instead 2016-09-14 15:27:31 +02:00
Mark Langen
d33f8a636e Most obvious bugs ironed out. Ready for PR. 2016-08-31 23:37:31 -06:00
Mark Langen
d5415d2d04 Working Card Rendering 2016-08-31 04:43:28 -06:00
LevelX2
d220c739a8 Merge pull request #2030 from draxdyn/performance
Improve GUI performance
2016-06-28 13:26:44 +02:00
draxdyn
e3d84ca212 Cache resized and rotated images
RotatedResizedImageCache and MultiRotatedResizedImageCache contain the caching
machinery.

A cache of rotated and resized images is added to ImageCache, and is used by
the resizing functions there.

All the resizing and rotation functions in ImageHelper are redirected to the
ones in ImageCache.

This is slightly inefficient because it will cache some calls that are never
repeated, but it prevents developers from mistakenly using uncached functions
when calls are repeated, seriously impacting performance.

Also resizing functions that only take a width or an height have been removed,
and their calls fixed to provide the other dimension. It's still possible to
specify -1 as width or height to ignore constraints in that dimension, though.

Greatly speeds up UI performance.
2016-06-23 16:21:34 +02:00
draxdyn
0b8404f0a4 Recognize double clicks made in rapid succession
Currently they are not recognized, because getClickCount() will be
higher than 2 since Java interprets them as quadruple, sextuple, etc. clicks.

So, instead of checking for getClickCount() == 2, check for getClickCount()
being an even number.

This allows to quickly remove or add many cards to a deck.
2016-06-14 13:02:51 +02:00
Liam Speirs
8758c2de36 Add tracking for number of artifacts in card lists. 2016-04-27 14:43:40 -04:00
Kenny Wottrich
f3c83d54f5 Remove Unused Imports
Delete unused java imports that cause compiler warnings
2016-04-24 19:50:29 -05:00
Fenhl
430ae503c7 Change all line endings to LF 2016-04-14 16:18:01 +00:00
Jared Hall
44388719a6 Fixes #1755 2016-04-03 20:35:59 -04:00
LevelX2
ac757b6a88 Fixed card grid dimension initialisation. 2016-02-27 09:27:43 +01:00
LevelX2
aa015b52e6 GUI Size - Fixed that table header lines were not horizontally moved. 2016-02-27 09:15:17 +01:00
LevelX2
51a0d8a4b2 Some more changes to GUI to better support high screen resolutions. 2016-02-21 12:15:11 +01:00
LevelX2
e04c82a227 Some more changes to GUI to better support high screen resolutions. 2016-02-21 11:30:12 +01:00
LevelX2
28b129018f * Some more changes to adjustment possibilities of GUI size. 2016-02-17 18:08:21 +01:00
LevelX2
f7a7b2e7a0 Some more changes to GUI to better support high screen resolutions. 2016-02-14 23:34:36 +01:00
LevelX2
7ef0a0a7f0 Some more changes to GUI to better support high screen resolutions. 2016-02-13 02:30:05 +01:00
LevelX2
a0ff08b0b9 Some more changes to GUI to better support high screen resolutions. 2016-02-10 08:31:21 +01:00
LevelX2
7c00e4b16d * Graveyard window - Fixed that the displayed card order was sometimes mismatched. 2015-12-25 17:43:10 +01:00
Neil Gentleman
6c43858046 Deck Editor: Fix redraw after missing image 2015-10-19 00:27:59 -07:00
LevelX2
322eae2ec6 Deck editor - renamed sort type "Color Detailed" to "Color Identity" and compare for the sort also with mana symbols in casting cost and rules. 2015-09-21 00:31:42 +02:00
LevelX2
532d4e0af0 * Added automatic handling for order of triggered abilities going to stack (fixes #701 / related to #328). 2015-08-22 19:29:57 +02:00
LevelX2
81934e32e3 * Revealing the top card of the library is now also shown by an extra window (no longer hiding life). Now Iconyfying and deiconifying does not change the postion of the reveal window. Iconifyed window width was a bit raised to be able to read more of the title in that state. 2015-06-25 01:07:34 +02:00
LevelX2
2547753dcb Added Sen Triplets (Alara Reborn = 100%). 2015-06-23 16:15:14 +02:00
LevelX2
67e9ee1fa9 * Changed graveyard window handling to a window that can stay open. 2015-06-23 00:46:27 +02:00
LevelX2
d245ce1ad2 * Fixed that card name text was covered by next card beneath if cards are displayed close together (library search). 2015-04-16 16:29:54 +02:00
LevelX2
bf3fa37e5d * Draft - Added possibility to hide (and show again) cards from the picked cards area. 2014-11-22 18:19:59 +01:00
LevelX2
532345e28a * Darft - Play countdown sound during drafting only if no card from curretn booster was draft. 2014-11-02 12:12:39 +01:00