Have AUTO:LANG act consistently in the UI
Description
AUTO:LANG on Race displays the Language as Automatic (Yellow color) in the language box. If the AUTO:LANG is elsewhere, like an ability or template, the color is not changed. (I'm not sure if I'm remembering correctly, but it may be possible to remove the non-automatic appearing language as well)
Can we have a consistent behavior for the tag and UI display please?
I have a need for this as we have Campaign specific Languages that are applied to races, races which appear in different source books (Kitsune is a prime example). So I need to give the user the option of which 'supplement' the race will use without forcing the user to give up campaign options.
Environment
Activity
Fixes my original issue. This can be closed. Thanks James!
OK, both of thee issues are fixed:
Automatic languages lost their yellow
Stack trace when clicking on Skill languages before adding Linguistics ranks
However does that resolve the original request?
The code to display automatic languages in yellow is still in place, however the AutoLanguageFacet is always returning an empty list. This is verifiable using Pathfinder for Players, creating a new character and setting the race to Elf or Half-elf.
I'll also look at tracing the NPE.
http://sourceforge.net/projects/pcgen/?source=dlp - look at the "Summary" screenshot. Without installing the older version, there is proof that the Auto Lang were indeed Golden/Yellow. I guess this needs to be altered to "Fix the coloring for AUTO:LANG back to the correct method" and then open a new bug for the NPE.
So good?
Odd, I swore the Languages had Automatic Coloring enabled before... I'll pull up 6.0 and see if I'm going crazy.
While checking this out I was able to creating an NPE, haven't updated for the past couple of days:
02:29:57.374 SEVERE AWT-EventQueue-0 Main:590 Uncaught error - ignoring
java.lang.NullPointerException
at java.util.Collections.sort(Unknown Source)
at pcgen.gui2.facade.LanguageChooserFacadeImpl.refreshLangListContents(LanguageChooserFacade
Impl.java:201)
at pcgen.gui2.facade.LanguageChooserFacadeImpl.buildObjectLangList(LanguageChooserFacadeImpl
.java:170)
at pcgen.gui2.facade.LanguageChooserFacadeImpl.buildLanguageList(LanguageChooserFacadeImpl.j
ava:109)
at pcgen.gui2.facade.LanguageChooserFacadeImpl.getAvailableList(LanguageChooserFacadeImpl.ja
va:241)
at pcgen.gui2.dialog.LanguageChooserDialog.<init>(LanguageChooserDialog.java:90)
at pcgen.gui2.tabs.summary.LanguageTableModel$Editor.actionPerformed(LanguageTableModel.java
:264)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$Handler.repostEvent(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$Handler.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$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)