UI Improvements, Round 3: Home Screen
Post MTG Forge Related Programming Questions Here
Moderators: timmermac, Agetian, friarsol, Blacksmith, KrazyTheFox, CCGHQ Admins
Re: UI Improvements, Round 3: Home Screen
by moomarc » 11 Dec 2011, 13:56
Looking really good Doublestrike! In the constructed mode deck selections it might be an idea to have a small text line informing players that they can use Ctrl/Cmd + select to select multiple colours and/or random colours. Perhaps the random colour selections could also be labelled as '1st Random Color' etc so it doesn't look like a duplicate line bug.
I'll definitely be creating some new skins once I've got some free time but still a few weeks at least unless I can squeeze something out in the evening next week.
I'll definitely be creating some new skins once I've got some free time but still a few weeks at least unless I can squeeze something out in the evening next week.
-Marc
-

moomarc - Pixel Commander
- Posts: 2091
- Joined: 04 Jun 2010, 15:22
- Location: Johannesburg, South Africa
- Has thanked: 371 times
- Been thanked: 372 times
Re: UI Improvements, Round 3: Home Screen
by slapshot5 » 11 Dec 2011, 14:19
no need. Your fix was right along the lines of what I was thinking.Doublestrike wrote:EDIT - easy one, turns out. Fixed r12578. Can give gory details if you're curious.
Thanks,
slapshot5
- slapshot5
- Programmer
- Posts: 1391
- Joined: 03 Jan 2010, 17:47
- Location: Mac OS X
- Has thanked: 25 times
- Been thanked: 68 times
Re: UI Improvements, Round 3: Home Screen
by ArsenalNut » 12 Dec 2011, 07:56
The changes in HomeTopLevel.java from r12526 to r12570 (and later) are causing a crash for me. I traced the problem down to where HomeTopLevel() tries to create a new instantiation of ViewQuest. The constructor tries to open "res/quest/questData.dat" which doesn't exist. I never play quest mode so I suspect this file never got created in my project space. I tried creating an empty file but that just caused Forge to crash when it tried to read the file.
So many cards, so little time
-

ArsenalNut - Posts: 512
- Joined: 08 Jul 2011, 03:49
- Has thanked: 27 times
- Been thanked: 121 times
Re: UI Improvements, Round 3: Home Screen
by Doublestrike » 12 Dec 2011, 08:05
@Arsenal - xxxxxxxxxxx (deleted)
EDIT
BTW only constructed mode is cleared for takeoff - quest mode (and all others) aren't quite ready to go yet. Is this happening in constructed?
EDIT 2
How do you put in <del> tags in this editor?
EDIT
BTW only constructed mode is cleared for takeoff - quest mode (and all others) aren't quite ready to go yet. Is this happening in constructed?
EDIT 2
How do you put in <del> tags in this editor?
---
A joke is a very serious thing.
A joke is a very serious thing.
-

Doublestrike - UI Programmer
- Posts: 715
- Joined: 08 Aug 2011, 09:07
- Location: Bali
- Has thanked: 183 times
- Been thanked: 161 times
Re: UI Improvements, Round 3: Home Screen
by Doublestrike » 12 Dec 2011, 08:49
@slapshot - nice idea on the card list button. FYI the fix that now uses
getDeckManager().getConstructedDecks()
didn't (doesn't) work on my system...that's why I had written a custom iterator. Unless I'm mistaken, that's a gub.
(I added a disable/enable condition depending on if a deck is selected and a few aesthetic fixes, but everything else is the same.)
getDeckManager().getConstructedDecks()
didn't (doesn't) work on my system...that's why I had written a custom iterator. Unless I'm mistaken, that's a gub.
(I added a disable/enable condition depending on if a deck is selected and a few aesthetic fixes, but everything else is the same.)
---
A joke is a very serious thing.
A joke is a very serious thing.
-

Doublestrike - UI Programmer
- Posts: 715
- Joined: 08 Aug 2011, 09:07
- Location: Bali
- Has thanked: 183 times
- Been thanked: 161 times
Re: UI Improvements, Round 3: Home Screen
by Sloth » 12 Dec 2011, 09:17
I can't compile R12602. My Eclipse does not accept "JList<String>" as a type and the JList constructor does not take an argument (like in JList(new ChooserListModel())). Did you forget to commit something Doublestrike?
-

Sloth - Programmer
- Posts: 3498
- Joined: 23 Jun 2009, 19:40
- Has thanked: 125 times
- Been thanked: 507 times
Re: UI Improvements, Round 3: Home Screen
by Doublestrike » 12 Dec 2011, 10:51
@sloth - fixed.
I was getting "raw type" compiler errors on my machine at work, so I went ahead and fixed them (and a deprecated error). JLists were complaining "references must be parameterized" so I did. Everything was ok.
Then, I get home, update, and wham! broken! I think my JREs are different or something.
Anyway all those parameters have been removed.
I was getting "raw type" compiler errors on my machine at work, so I went ahead and fixed them (and a deprecated error). JLists were complaining "references must be parameterized" so I did. Everything was ok.
Then, I get home, update, and wham! broken! I think my JREs are different or something.
---
A joke is a very serious thing.
A joke is a very serious thing.
-

Doublestrike - UI Programmer
- Posts: 715
- Joined: 08 Aug 2011, 09:07
- Location: Bali
- Has thanked: 183 times
- Been thanked: 161 times
Re: UI Improvements, Round 3: Home Screen
by Chris H. » 12 Dec 2011, 12:30
Using rev 12604 I noticed that there is not enough room to display the new exit button when the window is at 800 x 600.
I received the following crash report when I started forge (using rev 12604) without having a questData.dat file located in the /res/quest/ folder. I placed a questData.dat file in the /res/quest/ folder and relaunched and it started up OK.
`
I received the following crash report when I started forge (using rev 12604) without having a questData.dat file located in the /res/quest/ folder. I placed a questData.dat file in the /res/quest/ folder and relaunched and it started up OK.
- Crash Report | Open
- This is a Crash Report. An error has occurred. Please save this message to a file.
Please follow the instructions at this address to submit this Crash Report, plus what you were doing at the time:
http://tinyurl.com/3zzrnyb
Reporting bugs in Forge is very important. We thank you for your time.
Error loading Quest Data
Version:
Forge version SVN
OS: Mac OS X Version: 10.7.2 Architecture: x86_64
Java Version: 1.6.0_29 Vendor: Apple Inc.
Detailed error trace:
java.io.FileNotFoundException: res/quest/questData.dat (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at forge.quest.data.QuestDataIO.loadData(QuestDataIO.java:90)
at forge.view.home.ViewQuest.<init>(ViewQuest.java:65)
at forge.view.home.HomeTopLevel.<init>(HomeTopLevel.java:68)
at forge.control.ControlAllUI.changeState(ControlAllUI.java:101)
at forge.view.swing.ApplicationView$3.run(ApplicationView.java:170)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:677)
at java.awt.EventQueue.access$000(EventQueue.java:85)
at java.awt.EventQueue$1.run(EventQueue.java:638)
at java.awt.EventQueue$1.run(EventQueue.java:636)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:647)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
`
-

Chris H. - Forge Moderator
- Posts: 6320
- Joined: 04 Nov 2008, 12:11
- Location: Mac OS X Yosemite
- Has thanked: 644 times
- Been thanked: 643 times
Re: UI Improvements, Round 3: Home Screen
by slapshot5 » 12 Dec 2011, 13:37
Does it work for you now? I never had a problem with it.Doublestrike wrote:@slapshot - nice idea on the card list button. FYI the fix that now uses
getDeckManager().getConstructedDecks()
didn't (doesn't) work on my system...that's why I had written a custom iterator. Unless I'm mistaken, that's a gub.
gub?
-slapshot5
- slapshot5
- Programmer
- Posts: 1391
- Joined: 03 Jan 2010, 17:47
- Location: Mac OS X
- Has thanked: 25 times
- Been thanked: 68 times
Re: UI Improvements, Round 3: Home Screen
by ArsenalNut » 12 Dec 2011, 14:01
This is happening when I try to run Forge as a Java Application from within Eclipse using src/main/java/forge/view/swing/Main.java as the main of the program. I get the normal splash screen that shows the card loading progress. It says "Done, Firing up the GUI" and then I get the following crashDoublestrike wrote:@Arsenal - xxxxxxxxxxx (deleted)
EDIT
BTW only constructed mode is cleared for takeoff - quest mode (and all others) aren't quite ready to go yet. Is this happening in constructed?
- Startup crash stack | Open
- Error loading Quest Data
java.io.FileNotFoundException: res\quest\questData.dat (The system cannot find the file specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at forge.quest.data.QuestDataIO.loadData(QuestDataIO.java:90)
at forge.view.home.ViewQuest.<init>(ViewQuest.java:65)
at forge.view.home.HomeTopLevel.<init>(HomeTopLevel.java:68)
at forge.control.ControlAllUI.changeState(ControlAllUI.java:101)
at forge.view.swing.ApplicationView$3.run(ApplicationView.java:170)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
The code is trying to open "res\quest\questData.dat" but it doesn't check to see if it actually exists. I have never played Quest mode in my current project space so this file doesn't exist for me. If this file is really needed just to start Forge, then it should to be part of the distribution or the code should handle this situation more gracefully.
Edit:
Chris H. is seeing the same crash as I am.
So many cards, so little time
-

ArsenalNut - Posts: 512
- Joined: 08 Jul 2011, 03:49
- Has thanked: 27 times
- Been thanked: 121 times
Re: UI Improvements, Round 3: Home Screen
by Chris H. » 12 Dec 2011, 14:14
`ArsenalNut wrote:The code is trying to open "res\quest\questData.dat" but it doesn't check to see if it actually exists. I have never played Quest mode in my current project space so this file doesn't exist for me. If this file is really needed just to start Forge, then it should to be part of the distribution or the code should handle this situation more gracefully.
Edit:
Chris H. is seeing the same crash as I am.
The snapshot release that I posted on MediaFire should include a questData.dat file and you can use that for the moment. But yeah, need to get that bug taken care of.
-

Chris H. - Forge Moderator
- Posts: 6320
- Joined: 04 Nov 2008, 12:11
- Location: Mac OS X Yosemite
- Has thanked: 644 times
- Been thanked: 643 times
Re: UI Improvements, Round 3: Home Screen
by Rob Cashwalker » 12 Dec 2011, 14:27
Can I propose that we drop the (Easy) (Medium) and (Hard) from the game type buttons? Put them in tooltips if anything..
Also, make provision for supporting new game types or modes. Maybe convert the quest button to "Casual Mode", which leads to a page of options for quest, commander, gauntlet, some_other_mode_we_havent_made_yet, etc.
Also, make provision for supporting new game types or modes. Maybe convert the quest button to "Casual Mode", which leads to a page of options for quest, commander, gauntlet, some_other_mode_we_havent_made_yet, etc.
The Force will be with you, Always.
-

Rob Cashwalker - Programmer
- Posts: 2167
- Joined: 09 Sep 2008, 15:09
- Location: New York
- Has thanked: 5 times
- Been thanked: 40 times
Re: UI Improvements, Round 3: Home Screen
by Rob Cashwalker » 12 Dec 2011, 19:07
The buttons are not clearing the toggle arrows unless I mouse over them. If I carefully edge into each button, click, then jump out, I made this picture.
Also, pulling the window size the smallest it will let me, hides the exit button, as in the picture.
Doublestrike, I really like the overall feel.
Edit - I committed this fix in r.12611
Also, pulling the window size the smallest it will let me, hides the exit button, as in the picture.
Doublestrike, I really like the overall feel.
I think I have it fixed in my fresh copy at work. If the file doesn't exist, it returns a new QuestData(). However, the quest page thinks it has a valid fresh quest with a Level 0 mage.... I think it would be better back to the way it was, with a separate window for quest details. Or if it could detect that the quest hasn't been through the "embarking" process which isn't prominent, being stuck at the bottom of that page.Chris H. wrote:The snapshot release that I posted on MediaFire should include a questData.dat file and you can use that for the moment. But yeah, need to get that bug taken care of.
Edit - I committed this fix in r.12611
The Force will be with you, Always.
-

Rob Cashwalker - Programmer
- Posts: 2167
- Joined: 09 Sep 2008, 15:09
- Location: New York
- Has thanked: 5 times
- Been thanked: 40 times
Re: UI Improvements, Round 3: Home Screen
by Sloth » 12 Dec 2011, 19:24
I agree.Rob Cashwalker wrote:Can I propose that we drop the (Easy) (Medium) and (Hard) from the game type buttons? Put them in tooltips if anything..
I think having a seperate quest screen again should be a long time goal. The quest mode should be a bit more immersive than the others.Rob Cashwalker wrote:I think it would be better back to the way it was, with a separate window for quest details.
-

Sloth - Programmer
- Posts: 3498
- Joined: 23 Jun 2009, 19:40
- Has thanked: 125 times
- Been thanked: 507 times
Re: UI Improvements, Round 3: Home Screen
by Doublestrike » 13 Dec 2011, 00:20
There are apparent bugs everywhere - except constructed mode - because the screen as a whole is not finished yet, as I've mentioned. I had to do it this way because of the "mixed nuts arbitrary JFrame" melange that was in place before. For now, it's a significant time investment ( = waste of productivity) to chase everything down and make it play nice.Peeps wrote:...bugs in quest page and everywhere...
I'll announce when various parts are finished, and then debugging can begin for that section. For now, only "Constructed" mode is finished. Quest mode will be finished probably in about 12 hours. Other submenus will be much much faster since they're significantly easier.
There already is provision for new game modes - just make a new button and a submenu. Later, when the button area starts to overflow (such as the exit button thing), there can be two columns of buttons, or a slight reorganization, and we can fit a whole bunch of stuff there. Actually, I'll put that reorganization on the short-term-fix list.Rob Cashwalker wrote:Also, make provision for supporting new game types or modes
I think so too. That being said, part of the frustrating playing experience with Forge (before) is having to click back and forth between a bunch of frames, and find the shortcut button that lets you back to the main screen, because this one won't close, blah blah blah. So, later I'll make a standardized framework that allows various game modes to be in their own world. I'm also planning on developing a few of these game modesSloth wrote:...having a separate quest screen again should be a long time goal.
Thanks Rob, I was worried I was stepping on toes by refactoring the old work - but glad the results are working.Rob Cashwalker wrote:Doublestrike, I really like the overall feel.
Last edited by Doublestrike on 13 Dec 2011, 00:26, edited 2 times in total.
---
A joke is a very serious thing.
A joke is a very serious thing.
-

Doublestrike - UI Programmer
- Posts: 715
- Joined: 08 Aug 2011, 09:07
- Location: Bali
- Has thanked: 183 times
- Been thanked: 161 times
Who is online
Users browsing this forum: No registered users and 33 guests