Flexdock

I was able to integrate some basic flexdock support pretty quickly, allowing me to drag maps around and dock them into the chat box.

I’m not sure how far we would want to go with it - Allow everything to be dragged all over piece, or just add a few facilities for certain components to be dockable.

One problem I found was that any draggable item needs a ‘drag handle’ somewhere that you can grab to drag it. Most of our components do not have anything suitable.

Off the bat, I would say the Piece Palette is a good first candidate.
I know lots of people who don’t like the fact that the first piece
palette has to be stuck to the side of the chat window.

After that I would think Player Hands (including “private windows”)
would be next. I think player hands in ZunTzu are docked, and can roll
in and out, and that works well.

I would think everything but the chat window could have the option to
be dockable. I would be nice if you can configure it within the
module design (so if something need to be locked in place, they can
be).

I don’t include the chat window because that’s where all the important
feed back from the module comes from. Now, if the chat window was
updated to overlay text on the screen, that’d be cool.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Thus spake “Brent Easton”:

I’d like to see all largish things—Maps, Charts, the chat log, piece
palette, maybe the toolbar as a whole—be draggable.

How do they do that in the demos?


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Thus spake “Tim Byrne”:

If only one thing could be moved and docked somewhere else, I’d pick
the chat pane. (I’d like to have it be a lot narrower and tabbed
with something else, perhaps a the piece palette.)

As for the overlay thing, I do intend to look into that eventually.


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

If hands were dockable, it would be nice if we could set transparency for the hands as well. Hands could then sit docked to the side (over lapping the main map) but allow the main map to bleed through the transparency.

They add a small Tab to every single Dockable item. The Tab is always visible and is used to name the item and to provide a handle to drag it around.

Thus spake “Brent Easton”:

In the ElegantDemo, several of the panes appear not to have tabs, though
they do have “title bar” handles at the top.

In the SimpleDemo, it looks like you can grab the panes from anywhere.


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Yes, you are right. I hadn’t looked close enough at all of the demos.

It’s a matter of finding appropriate ‘bits’ to grab hold of in different components. Many components process Mouse clicks themselves already.

I think perhaps the way to move forward is slowly.

I’m thinking that we could start by implementing the current ‘combined application window’ preference to use flexdock instead of hard-coded component juggling. This would require adding docking capabilities to Maps and Palettes and be a good start. We add the transparency and roll-in/roll-out type capabilities as well as a general feature of any window, not just player hands.

We leave it to the individual player to reconfigure the windows for a particular module. The default layout we provide would be the current layout (depending on the ‘combined’ preference) so you would see little change if you don’t want to play with docking.