Menu

#1777 ProjectViewer: Compact or Filtered View + "Follow Active Buffer in Tree"

None
open
nobody
5
2015-02-14
2014-03-24
Alan Ezust
No

Steps to reproduce: check the option "follow active buffer in tree"
under projectviewer - general.

open some files
switch to compact or filtered view
switch between open buffers.

If the file extension isn't among the list of filters, you always get IllegalArgumentException. You sometimes get it even if it is in the filtered view.

java.lang.IllegalArgumentException: path in TreePath must be non null and not empty.
    at javax.swing.tree.TreePath.<init>(TreePath.java:102)
    at projectviewer.PVActions.focusActiveBuffer(PVActions.java:240)
    at projectviewer.ProjectViewer.handleEditPaneUpdate(ProjectViewer.java:1200)
    at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.gjt.sp.jedit.EditBus.dispatch(EditBus.java:242)
    at org.gjt.sp.jedit.EditBus.sendImpl(EditBus.java:281)
    at org.gjt.sp.jedit.EditBus.access$200(EditBus.java:87)
    at org.gjt.sp.jedit.EditBus$SendMessage.run(EditBus.java:461)
    at org.gjt.sp.jedit.EditBus.send(EditBus.java:206)
    at org.gjt.sp.jedit.EditPane.setBuffer(EditPane.java:187)
    at org.gjt.sp.jedit.EditPane.setBuffer(EditPane.java:139)
    at buffertabs.BufferTabs$ChangeHandler.stateChanged(BufferTabs.java:535)
    at javax.swing.JTabbedPane.fireStateChanged(JTabbedPane.java:416)
    at javax.swing.JTabbedPane$ModelListener.stateChanged(JTabbedPane.java:270)
    at javax.swing.DefaultSingleSelectionModel.fireStateChanged(DefaultSingleSelectionModel.java:132)
    at javax.swing.DefaultSingleSelectionModel.setSelectedIndex(DefaultSingleSelectionModel.java:67)
    at javax.swing.JTabbedPane.setSelectedIndexImpl(JTabbedPane.java:616)
    at javax.swing.JTabbedPane.setSelectedIndex(JTabbedPane.java:591)
    at javax.swing.plaf.basic.BasicTabbedPaneUI$Handler.mousePressed(BasicTabbedPaneUI.java:3644)
    at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
    at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
    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)

Discussion

  • Alan Ezust

    Alan Ezust - 2014-03-24
    • summary: ProjectViewer: Filtered View + "Follow Active Buffer in Tree" --> ProjectViewer: Compact or Filtered View + "Follow Active Buffer in Tree"
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -2,8 +2,8 @@
     under projectviewer - general.
    
     open some files
    -switch to filtered view
    -toggle between them.
    +switch to compact or filtered view
    +switch between open buffers. 
    
     If the file extension isn't among the list of filters, you always get IllegalArgumentException. You sometimes get it even if it is in the filtered view.
    
    • Group: -->
     
  • Alan Ezust

    Alan Ezust - 2014-03-24

    from Compact view, you get a different exception:

    ~~~~ java.lang.ClassCastException: projectviewer.vpt.VPTFile cannot be cast to projectviewer.vpt.VPTCompactModel$CompactDirectoryNode
    at projectviewer.vpt.VPTCompactModel.getPathToRoot(VPTCompactModel.java:111)
    at projectviewer.PVActions.focusActiveBuffer(PVActions.java:239)
    at projectviewer.ProjectViewer.handleEditPaneUpdate(ProjectViewer.java:1200)
    at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.gjt.sp.jedit.EditBus.dispatch(EditBus.java:242)
    at org.gjt.sp.jedit.EditBus.sendImpl(EditBus.java:281)
    at org.gjt.sp.jedit.EditBus.access$200(EditBus.java:87)
    at org.gjt.sp.jedit.EditBus$SendMessage.run(EditBus.java:461)
    at org.gjt.sp.jedit.EditBus.send(EditBus.java:206)
    at org.gjt.sp.jedit.EditPane.setBuffer(EditPane.java:187)
    at org.gjt.sp.jedit.EditPane.setBuffer(EditPane.java:139)
    at buffertabs.BufferTabs$ChangeHandler.stateChanged(BufferTabs.java:535)
    at javax.swing.JTabbedPane.fireStateChanged(JTabbedPane.java:416)
    at javax.swing.JTabbedPane$ModelListener.stateChanged(JTabbedPane.java:270)
    at javax.swing.DefaultSingleSelectionModel.fireStateChanged(DefaultSingleSelectionModel.java:132)
    at javax.swing.DefaultSingleSelectionModel.setSelectedIndex(DefaultSingleSelectionModel.java:67)
    at javax.swing.JTabbedPane.setSelectedIndexImpl(JTabbedPane.java:616)
    at javax.swing.JTabbedPane.setSelectedIndex(JTabbedPane.java:591)
    at javax.swing.plaf.basic.BasicTabbedPaneUI$Handler.mousePressed(BasicTabbedPaneUI.java:3644)
    at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
    at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:279)
    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)

    ~~~~

     

    Last edit: Alan Ezust 2014-03-24

Log in to post a comment.