[
https://issues.apache.org/jira/browse/PIVOT-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16346109#comment-16346109
]
Roger Whitcomb commented on PIVOT-1011:
---------------------------------------
Another big chunk (almost done now):
Sending wtk\src\org\apache\pivot\wtk\Accordion.java
Sending wtk\src\org\apache\pivot\wtk\AccordionAttributeListener.java
Sending wtk\src\org\apache\pivot\wtk\AccordionListener.java
Sending wtk\src\org\apache\pivot\wtk\AccordionSelectionListener.java
Sending wtk\src\org\apache\pivot\wtk\ActivityIndicator.java
Sending wtk\src\org\apache\pivot\wtk\ActivityIndicatorListener.java
Sending wtk\src\org\apache\pivot\wtk\Border.java
Sending wtk\src\org\apache\pivot\wtk\BorderListener.java
Sending wtk\src\org\apache\pivot\wtk\Expander.java
Sending wtk\src\org\apache\pivot\wtk\ExpanderListener.java
Sending wtk\src\org\apache\pivot\wtk\FileBrowserSheet.java
Sending wtk\src\org\apache\pivot\wtk\FileBrowserSheetListener.java
Sending wtk\src\org\apache\pivot\wtk\FillPane.java
Sending wtk\src\org\apache\pivot\wtk\FillPaneListener.java
Sending wtk\src\org\apache\pivot\wtk\Form.java
Sending wtk\src\org\apache\pivot\wtk\FormAttributeListener.java
Sending wtk\src\org\apache\pivot\wtk\FormListener.java
Sending wtk\src\org\apache\pivot\wtk\Frame.java
Sending wtk\src\org\apache\pivot\wtk\FrameListener.java
Sending wtk\src\org\apache\pivot\wtk\GridPane.java
Sending wtk\src\org\apache\pivot\wtk\GridPaneListener.java
Sending wtk\src\org\apache\pivot\wtk\ImageView.java
Sending wtk\src\org\apache\pivot\wtk\ImageViewBindingListener.java
Sending wtk\src\org\apache\pivot\wtk\ImageViewListener.java
Sending wtk\src\org\apache\pivot\wtk\Label.java
Sending wtk\src\org\apache\pivot\wtk\LabelBindingListener.java
Sending wtk\src\org\apache\pivot\wtk\LabelListener.java
Sending wtk\src\org\apache\pivot\wtk\Meter.java
Sending wtk\src\org\apache\pivot\wtk\MeterListener.java
Sending wtk\src\org\apache\pivot\wtk\MovieView.java
Sending wtk\src\org\apache\pivot\wtk\MovieViewListener.java
Sending wtk\src\org\apache\pivot\wtk\Prompt.java
Sending wtk\src\org\apache\pivot\wtk\PromptListener.java
Sending wtk\src\org\apache\pivot\wtk\Rollup.java
Sending wtk\src\org\apache\pivot\wtk\RollupListener.java
Sending wtk\src\org\apache\pivot\wtk\RollupStateListener.java
Sending wtk\src\org\apache\pivot\wtk\ScrollBar.java
Sending wtk\src\org\apache\pivot\wtk\ScrollBarListener.java
Sending wtk\src\org\apache\pivot\wtk\ScrollBarValueListener.java
Sending wtk\src\org\apache\pivot\wtk\Slider.java
Sending wtk\src\org\apache\pivot\wtk\SliderListener.java
Sending wtk\src\org\apache\pivot\wtk\SliderValueListener.java
Sending wtk\src\org\apache\pivot\wtk\SplitPane.java
Sending wtk\src\org\apache\pivot\wtk\SplitPaneListener.java
Sending wtk\src\org\apache\pivot\wtk\SuggestionPopup.java
Sending wtk\src\org\apache\pivot\wtk\SuggestionPopupCloseListener.java
Sending wtk\src\org\apache\pivot\wtk\SuggestionPopupItemListener.java
Sending wtk\src\org\apache\pivot\wtk\SuggestionPopupListener.java
Sending wtk\src\org\apache\pivot\wtk\SuggestionPopupSelectionListener.java
Sending wtk\src\org\apache\pivot\wtk\SuggestionPopupStateListener.java
Sending wtk\src\org\apache\pivot\wtk\TablePane.java
Sending wtk\src\org\apache\pivot\wtk\TablePaneAttributeListener.java
Sending wtk\src\org\apache\pivot\wtk\TablePaneListener.java
Sending wtk\src\org\apache\pivot\wtk\VFSBrowser.java
Sending wtk\src\org\apache\pivot\wtk\VFSBrowserListener.java
Sending wtk\src\org\apache\pivot\wtk\VFSBrowserSheet.java
Sending wtk\src\org\apache\pivot\wtk\VFSBrowserSheetListener.java
Sending
wtk-terra\src\org\apache\pivot\wtk\skin\terra\TerraVFSBrowserSheetSkin.java
Transmitting file data
..........................................................done
Committing transaction...
Committed revision 1822722.
> Move ListenerList implementations of interfaces into the interface itself
> -------------------------------------------------------------------------
>
> Key: PIVOT-1011
> URL: https://issues.apache.org/jira/browse/PIVOT-1011
> Project: Pivot
> Issue Type: Improvement
> Components: core-collections, core-util, web, wtk, wtk-terra
> Environment: All
> Reporter: Roger Whitcomb
> Assignee: Roger Whitcomb
> Priority: Minor
> Attachments: 1011.diffs
>
>
> A universal paradigm in Pivot is to have a "listener" interface for a class
> or data structure that is used to notify listeners of changes in the
> class/data. There is then an "Adapter" static class in the interface file
> that implements the interface with default implementations. Then there is a
> very separate enclosed static class that implements the "ListenerList"
> interface of that listener interface. And usually (or always) this "listener
> list" class is defined/used only in the class that needs to notify the
> listeners. However, this class must be very parallel to not only the
> interface itself, but also the "Adapter" class, and yet it is in a different
> place.
> So, it seems somewhat reasonable to move all these "listener list" classes
> into the interfaces themselves, so all three related things are located in
> the same file. A preliminary POC of this concept was done with "Query.java",
> and "QueryListener.java" and it looks good.
> This doesn't seem to require changes to client code, because the accessor
> methods only refer to "ListenerList<....>" and not to the listener list class
> itself (in order to be more general, of course), but which helps us to hide
> the implementing class away inside the interface.
> I will attach the diff of the POC, to hopefully make this more clear. It may
> seem a somewhat nebulous concept, but the idea is to keep "like things"
> together for clarity.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)