It is currently 19 Apr 2024, 01:40
   
Text Size

Forge version 1.5.12

Post MTG Forge Related Programming Questions Here

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Re: Forge version 1.5.12

Postby Max mtg » 04 Feb 2014, 07:09

Any point on the group title bar is clickable in windows explorer to expand/collapse its group
Attachments
groups-ui.png
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: Forge version 1.5.12

Postby drdev » 04 Feb 2014, 07:24

Max mtg wrote:Any point on the group title bar is clickable in windows explorer to expand/collapse its group
Fair point. I'll try and see what I can come up with.

In the meantime, I have a screenshot of what I'm thinking pile view could look like in terms of horizontal scrolling. I really didn't want a horizontal scrollbar, nor did I want arrow buttons for vertical scrolling, so I came up the idea of having each group have its own left and right arrow buttons to scroll through its piles, in addition to a vertical scrollbar to scroll through piles vertically and through groups.

PileView.png

Let me know what you think. If people like it, I should still be able to combine it with Max's idea. Otherwise, I could try just a horizontal scrollbar with Max's idea, which would certainly be an easier implementation. Aside from figuring out horizontal scrolling, pile support is otherwise already committed.

Thanks.
-Dan
drdev
Programmer
 
Posts: 1958
Joined: 27 Jul 2013, 02:07
Has thanked: 189 times
Been thanked: 565 times

Re: Forge version 1.5.12

Postby moomarc » 04 Feb 2014, 08:20

Looks really good, thanks Dan.

I've been really hectic with work so haven't had a chance to actually try any of this out, so my opinions are purely based on look and conjecture. With regards to scrolling, I think each group having its own scroll pane is perfect. However, the arrows can be a little slow, so would it be possible to hook up the scroll wheel to left/right scrolling in these? But a standard scroll bar might just be worth it (I do like the control it gives you). And as for the group headers, I think Max's idea will make it feel less busy and overfull, which sometimes is the case. Looking forward to having some free time to actually use it ;)
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Forge version 1.5.12

Postby Agetian » 04 Feb 2014, 12:24

Ok, Linux user here (in case it's system-dependent). ;) Not sure if it's just me missing or not understanding something, but I don't see horizontal scrollbars or arrows on my system, so if I have, for instance, creatures with CMC 1,2,3,4 that are currently displayed on the screen, if I add one more creature with CMC 5 I will not be able to see it because I can't scroll to it in any viable fashion... is it just me or is something not implemented yet? Here's what I'm seeing:

sample-no-scrolling.png


Notice that I moused over a tiny border of a high-CMC card I just threw into the deck. It's almost invisible (just a tiny part of the selection border) and there's no way to scroll to it to see what it is. If I add one more CMC beyond that it'll be completely invisible.

By the way, choosing between arrows and scrollbars, I think scrollbars might be preferable/more intuitive because (I agree with Marc) arrows can be somewhat slow to use...

P.S. Notice the artifact in the top left, too. The top left card has a partial green border around it - actually, my mouse is not over that card at all... and I can't make that green border go away, it's just permanently there, it seems.

P.P.S. Overall though, great job on the view! This is going to be really amazing once it's up to its full potential!! It is very impressive already! Keep it up!

- Agetian
Last edited by Agetian on 04 Feb 2014, 12:31, edited 1 time in total.
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Forge version 1.5.12

Postby Max mtg » 04 Feb 2014, 12:30

Agetian wrote:Ok, Linux user here. ;) Not sure if it's just me missing or not understanding something, but I don't see horizontal scrollbars or arrows on my system, so if I have, for instance, creatures with CMC 1,2,3,4 that are currently displayed on the screen, if I add one more creature with CMC 5 I will not be able to see it because I can't scroll to it in any viable fashion... is it just me or is something not implemented yet?

- Agetian
A Windows user confirms that without horizontal scrollbar more expensive createures are not visible. %)

I think drdev has already seen that problem and will fix that soon.
As an alternative to h-scroll I could suggest to start a new top-aligned set of columns below the ones that did fit into width. Like that
Code: Select all
A B C
A B C
A   C
A

D E F
D E
  E
Last edited by Max mtg on 04 Feb 2014, 12:47, edited 4 times in total.
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: Forge version 1.5.12

Postby Agetian » 04 Feb 2014, 12:33

I think this would be a perfect solution, Max! No scrolling + you still get to see all the cards in each group. If this would be possible to implement, I'm all for this idea!

And thanks for confirming that it's not just me not being able to select those far right cards! XD

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Forge version 1.5.12

Postby drdev » 04 Feb 2014, 15:07

Forgive me. I committed the pile support without horizontal scrolling and ran out of time before I could commit horizontal scrolling support.

I had considered Max's pile wrapping idea but thought at the time it might be confusing. However, after seeing his little chart and thinking on it more, I agree that will probably work best. It also will be a pretty simple implementation. I should be able to commit something that works like that this morning.

As for that green border that supposedly won't go away, that's the selection. If you clicked on another card, it would move to that card. However, I take it you'd like the ability to deselect that card by clicking outside any cards, is that correct?
drdev
Programmer
 
Posts: 1958
Joined: 27 Jul 2013, 02:07
Has thanked: 189 times
Been thanked: 565 times

Re: Forge version 1.5.12

Postby Agetian » 04 Feb 2014, 15:10

@ drdev: Oh, gotcha! (for some reason I forgot about the possibility to actually select a card, no idea why :D :D ) - anyhow, the ability to deselect all cards by clicking outside any card sounds like a good idea if it's not too hard to implement. If it is difficult to do, it's not critical by any means. :)
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Forge version 1.5.12

Postby friarsol » 04 Feb 2014, 15:39

drdev wrote:As for that green border that supposedly won't go away, that's the selection. If you clicked on another card, it would move to that card. However, I take it you'd like the ability to deselect that card by clicking outside any cards, is that correct?
I haven't tried it, but are you able to multiselect cards (probably Ctrl+Click to add it to the currently selected Cards)?
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Forge version 1.5.12

Postby Agetian » 04 Feb 2014, 15:47

friarsol wrote:I haven't tried it, but are you able to multiselect cards (probably Ctrl+Click to add it to the currently selected Cards)?
No, unfortunately I can't get it to multi-select with ctrl+clicking or shift+clicking... probably it's not implemented yet.

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Forge version 1.5.12

Postby drdev » 04 Feb 2014, 15:54

Agetian wrote:
friarsol wrote:I haven't tried it, but are you able to multiselect cards (probably Ctrl+Click to add it to the currently selected Cards)?
No, unfortunately I can't get it to multi-select with ctrl+clicking or shift+clicking... probably it's not implemented yet.

- Agetian
It was implemented, but I broke it recently somehow. I will try to fix it today. EDIT: Fixed.

Note that editors that don't support multiple selection in list view (like Draft Catalog) won't support it in image view either.

For those that support multiple selection, would people find it useful if I added selection box support, where if you click outside any card and drag, you can draw a box and select all cards that intersect that box?
Last edited by drdev on 05 Feb 2014, 06:35, edited 1 time in total.
drdev
Programmer
 
Posts: 1958
Joined: 27 Jul 2013, 02:07
Has thanked: 189 times
Been thanked: 565 times

Re: Forge version 1.5.12

Postby Agetian » 04 Feb 2014, 15:56

@ drdev: Sounds useful and interesting, yes!

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Forge version 1.5.12

Postby drdev » 04 Feb 2014, 17:29

Alright, I've changed the group headers per Max's suggestion, as well as changed piles to wrap. The result looks like this:

WrappedGroupPiles.png

I plan to add a hover effect to the group headers similar to the Windows example, but otherwise I think I'm pretty much done with layout stuff. Let me know if I should tweak anything else.

Thanks for your input guys. Definitely helped, and I like this new look better too.
-Dan

P.S. Agetian, I also committed a fix so you can deselect cards by clicking outside any card. On that note though, is the selection border too thick? Should I just use the same border thickness for hover and selection, and maybe just make the selection color stand out a bit more?
drdev
Programmer
 
Posts: 1958
Joined: 27 Jul 2013, 02:07
Has thanked: 189 times
Been thanked: 565 times

Re: Forge version 1.5.12

Postby Agetian » 04 Feb 2014, 18:11

I think it looks great, drdev!

I got this exception while testing (I was experimenting with selecting multiple cards with ctrl+click and I accidentally clicked the same card twice while holding ctrl):

IndexOutOfBoundsException | Open
Code: Select all
Forge Version:    1.5.12-SNAPSHOT-r${forge.revision}${forge.specialStatus} (mixed revisions detected; please update from the root directory)
Operating System: Linux 3.8.0-26-generic amd64
Java Version:     1.7.0_51 Oracle Corporation

java.lang.IndexOutOfBoundsException: Index: 20, Size: 3
   at java.util.ArrayList.rangeCheck(ArrayList.java:635)
   at java.util.ArrayList.remove(ArrayList.java:474)
   at forge.gui.toolbox.itemmanager.views.ImageView$1.selectItem(ImageView.java:121)
   at forge.gui.toolbox.itemmanager.views.ImageView$1.onLeftMouseDown(ImageView.java:71)
   at forge.gui.toolbox.FMouseAdapter.mousePressed(FMouseAdapter.java:62)
   at java.awt.Component.processMouseEvent(Component.java:6502)
   at javax.swing.JComponent.processMouseEvent(JComponent.java:3311)
   at java.awt.Component.processEvent(Component.java:6270)
   at java.awt.Container.processEvent(Container.java:2229)
   at java.awt.Component.dispatchEventImpl(Component.java:4861)
   at java.awt.Container.dispatchEventImpl(Container.java:2287)
   at java.awt.Component.dispatchEvent(Component.java:4687)
   at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
   at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4489)
   at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
   at java.awt.Container.dispatchEventImpl(Container.java:2273)
   at java.awt.Window.dispatchEventImpl(Window.java:2719)
   at java.awt.Component.dispatchEvent(Component.java:4687)
   at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
   at java.awt.EventQueue.access$200(EventQueue.java:103)
   at java.awt.EventQueue$3.run(EventQueue.java:694)
   at java.awt.EventQueue$3.run(EventQueue.java:692)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
   at java.awt.EventQueue$4.run(EventQueue.java:708)
   at java.awt.EventQueue$4.run(EventQueue.java:706)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
   at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
   at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
   at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

Re: Forge version 1.5.12

Postby Agetian » 05 Feb 2014, 02:44

Here's a way to reliably reproduce the crash with Ctrl-click:
Create a new deck, add a few different cards inside, click on one of the cards to select it, then hold Ctrl and click on the some other card two times. A non-fatal exception is generated at that time (as described above).

- Agetian
Agetian
Programmer
 
Posts: 3471
Joined: 14 Mar 2011, 05:58
Has thanked: 676 times
Been thanked: 561 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 47 guests


Who is online

In total there are 47 users online :: 0 registered, 0 hidden and 47 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 47 guests

Login Form