All the below were checked in to pgeerkens-3.2 from revision 7831:
#7836:AutoExecGKC implementation automatically runs a GKC on game-start-up #7837: Send-To-Named-Location extension to SendToLocation allows a piece to be sent to a named map/board location, instead of just to x,y coords. Modified wiki-page included #7838: Adjustable-speed scroll pane fix - if GameModule not available yet, use default speed instead of throwing exception. #7839: documentation for AutoExecGKC #7841: make ColorConfigurer more flexible by enabling read of string like 0xFFFFFFFF (as a-r-g-b). (Not needed by anything else.) #7842:Everything else I have been working on, unfortunately all wrapped up together:
[list]Hex-grid numbering for oblique & irregular grids
Hex-grid shearer enables 2-fixed-point shear of grid to match scanner twist
Attribute & AbstractAttributeLIstConfigurable to simpify UI coding
Calculate hex-grid catch-buckets, for center-and-edges and for center-and-vertices, as internal hex-grids, so using the same affine-transformation calculations as the parent grid.
[/list:u]
#7837: Send-To-Named-Location extension to SendToLocation allows a
piece to be sent to a named map/board location, instead of just to x,y
coords. Modified wiki-page included
Merged to trunk@7891.
The table in SendToLocation.htm which contains the images is not right,
btw. I don’t see any images at all when I bring up the page. That should
be fixed.
Hmm! I cannot reproduce this problem, and the relative URLs to find the images look to be propely constructed. Can you describe how you are accessing the page, as I must be doing something different.
Hmm! I cannot reproduce this problem, and the relative URLs to find the
images look to be propely constructed. Can you describe how you are
accessing the page, as I must be doing something different.
It’s not an issue with the paths being bad, it’s that the HTML isn’t
valid. Run the page through validator.w3.org/check and you’ll see
what I mean.
I have tidied up the HTML to eliminate all warnings reported by Eclipse, and improve the block indentation (svn 7893 in pgeerkens-3.2). However your HTML Validator still reports the same error - I believe it is buggy and cannot handle nested tables. Eclipse is happy with the HTML; it displays fine; all necessary tags are closed to the satisfaction of both Eclipseand my eyeball. If you still believe there is a problem I will need mor einformation again.
I have tidied up the HTML to eliminate all warnings reported by Eclipse,
and improve the block indentation (svn 7893 in pgeerkens-3.2). However
your HTML Validator still reports the same error - I believe it is buggy
and cannot handle nested tables.
No, I’m sure the W3C’s validator works. Your last edit changed the
nesting, which made the HTML valid.
The problem was that the images had extension “.PNG”, while the URLs
in the HTML gave them as “.png”. I’ve fixed this in the trunk. You must
be working on a system with a case-insensitive filesystem in order not
to have had the same problem I did.
Yes, I am on Windows. It has been so long since I worked on Unix I never even thought to look at case of file extensions. Thank you for tracking that down; I will be more mindful in future.
However, there might be a caching issue on W3C’s validator. Try as I might, I could not get the original error to disappear, until just now when I tried again. I will also make better use of Eclipse’s HTML editor in future; I think I just used Notepad the first time around.
However, there might be a caching issue on W3C’s validator. Try as I
might, I could not get the original error to disappear, until just now
when I tried again. I will also make better use of Eclipse’s HTML editor
in future; I think I just used Notepad the first time around.
It could be your ISP; I didn’t get that problem myself.
The HTML in the ref guide is in a bad state, both in terms of being
valid HTML and aesthetically. I think for V4 we’ll want to keep whatever
HTML docs we create valid at every check-in so that this doesn’t happen
again. (I would not be surprised if a lot of the existing HTML docs were
never valid at any point.)
I am using Malwarebytes’ Anti-Malware portable apps. I also got a yahoo download message indicating the file had a virus (I uploaded to yahoo mail so that I could download at work during lunch: vassalengine.org block by employer).
I am using Malwarebytes’ Anti-Malware portable apps. I also got a yahoo
download message indicating the file had a virus (I uploaded to yahoo
mail so that I could download at work during lunch: vassalengine.org
block by employer).
I don’t know what to tell you other than that they’re mistaken.
#7836: __AutoExecGKC __implementation automatically runs a GKC on
game-start-up
I get an NPE when I try adding an AutoExecGKC with this changeset
applied to trunk@7898:
va.lang.NullPointerException: null
at VASSAL.counters.GlobalCommand.setKeyStroke(GlobalCommand.java:55) ~[classes/:na]
at VASSAL.build.module.map.MassKeyCommand.setAttribute(MassKeyCommand.java:464) ~[classes/:na]
at VASSAL.build.module.AutoExecGKC.setAttribute(AutoExecGKC.java:120) ~[classes/:na]
at VASSAL.configure.AutoConfigurer.propertyChange(AutoConfigurer.java:200) ~[classes/:na]
at java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:298) ~[na:1.6.0_22]
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:291) ~[na:1.6.0_22]
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:229) ~[na:1.6.0_22]
at VASSAL.configure.Configurer.setValue(Configurer.java:104) ~[classes/:na]
at VASSAL.configure.HotKeyConfigurer.setValue(HotKeyConfigurer.java:49) ~[classes/:na]
at VASSAL.configure.HotKeyConfigurer.setValue(HotKeyConfigurer.java:65) ~[classes/:na]
at VASSAL.configure.AutoConfigurer.(AutoConfigurer.java:87) ~[classes/:na]
at VASSAL.build.AbstractConfigurable.getConfigurer(AbstractConfigurable.java:173) ~[classes/:na]
at VASSAL.configure.ConfigureTree$7.actionPerformed(ConfigureTree.java:535) ~[classes/:na]
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012) ~[na:1.6.0_22]
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335) ~[na:1.6.0_22]
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404) ~[na:1.6.0_22]
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) ~[na:1.6.0_22]
at javax.swing.AbstractButton.doClick(AbstractButton.java:374) ~[na:1.6.0_22]
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:829) ~[na:1.6.0_22]
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:873) ~[na:1.6.0_22]
at java.awt.Component.processMouseEvent(Component.java:6268) ~[na:1.6.0_22]
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267) ~[na:1.6.0_22]
at java.awt.Component.processEvent(Component.java:6033) ~[na:1.6.0_22]
at java.awt.Container.processEvent(Container.java:2045) ~[na:1.6.0_22]
at java.awt.Component.dispatchEventImpl(Component.java:4629) ~[na:1.6.0_22]
at java.awt.Container.dispatchEventImpl(Container.java:2103) ~[na:1.6.0_22]
at java.awt.Component.dispatchEvent(Component.java:4455) ~[na:1.6.0_22]
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4633) ~[na:1.6.0_22]
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4297) ~[na:1.6.0_22]
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4227) ~[na:1.6.0_22]
at java.awt.Container.dispatchEventImpl(Container.java:2089) ~[na:1.6.0_22]
at java.awt.Window.dispatchEventImpl(Window.java:2517) ~[na:1.6.0_22]
at java.awt.Component.dispatchEvent(Component.java:4455) ~[na:1.6.0_22]
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:649) ~[na:1.6.0_22]
at java.awt.EventQueue.access$000(EventQueue.java:96) ~[na:1.6.0_22]
at java.awt.EventQueue$1.run(EventQueue.java:608) ~[na:1.6.0_22]
at java.awt.EventQueue$1.run(EventQueue.java:606) ~[na:1.6.0_22]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.6.0_22]
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) ~[na:1.6.0_22]
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116) ~[na:1.6.0_22]
at java.awt.EventQueue$2.run(EventQueue.java:622) ~[na:1.6.0_22]
at java.awt.EventQueue$2.run(EventQueue.java:620) ~[na:1.6.0_22]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.6.0_22]
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) ~[na:1.6.0_22]
at java.awt.EventQueue.dispatchEvent(EventQueue.java:619) ~[na:1.6.0_22]
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) [na:1.6.0_22]
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) [na:1.6.0_22]
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190) [na:1.6.0_22]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) [na:1.6.0_22]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) [na:1.6.0_22]
at java.awt.EventDispatchThread.run(EventDispatchThread.java:138) [na:1.6.0_22]
23:20:46.885 [AWT-EventQueue-0] INFO VASSAL.build.GameModule - Exiting
23:20:47.266 [IPC receiver for 831667365] ERROR VASSAL.tools.ipc.IPCMessageReceiver -
java.io.EOFException: null
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2570) ~[na:1.6.0_22]
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1314) ~[na:1.6.0_22]
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:368) ~[na:1.6.0_22]
at VASSAL.tools.ipc.IPCMessageReceiver.run(IPCMessageReceiver.java:34) ~[classes/:na]
at java.lang.Thread.run(Thread.java:679) [na:1.6.0_22]
#7839: documentation for AutoExecGKC
Lowercase the extension of the image you added.
Also, I think a better name for this might be StartupGlobalKeyCommand.
Once it is merged they can remove the custom class and use it instead. A
custom class is not needed in a module once it becomes part of the core so
renaming it for core should not be an issue