[REVIEW REQUEST] RT-24088 Add API to JavaFX to allow vetoing the closing of a Tab in a TabPane
Tom Schindl
tom.schindl at bestsolution.at
Thu Dec 6 13:51:20 PST 2012
Hi,
I've uploaded a revised patch which now works using the event system
sending out an TabEvent of type "TAB_CLOSE_REQUEST".
So the revised API on Tab would now be:
+ ObjectProperty<EventHandler<TabEvent>> onCloseRequestProperty()
+ EventHandler<TabEvent> getOnCloseRequest()
+ setOnCloseRequests(EventHandler<TabEvent> value)
and vetoing a close would look like this:
Tab tab1 = new Tab("Hello");
tab1.setOnCloseRequests(new EventHandler<TabEvent>() {
@Override
public void handle(TabEvent event) {
event.consume();
}
});
Thanks for the input Werner, Steven and Richard.
One thing I was not sure is who is supposed to deliver an event. I used
the TabPaneBehavior maybe the Tab itself should send out this event?
Tom
Am 06.12.12 17:04, schrieb Richard Bair:
> Indeed, this sounds like the same idea Werner had. Good find.
>
> On Dec 6, 2012, at 7:54 AM, steve.x.northover at oracle.com wrote:
>
>> Stage has the onCloseRequest property. Might make sense to have a similar API in Tab.
>>
>> Steve
>>
>> On 06/12/2012 8:33 AM, Tom Schindl wrote:
>>> Hi,
>>>
>>> This is an interesting idea. I'm not that deep in the FX-API to
>>> understand if this the advised way in other areas so. I let Richard and
>>> Jonathan comment on it.
>>>
>>> Tom
>>>
>>> Am 06.12.12 12:32, schrieb Werner Lehmann:
>>>> Would it also be possible to have a simple onClosing event and require a
>>>> handler to Event.consume() it? Maybe slightly less obvious than an
>>>> explicit "*veto*" but more flexible/resuable, too (as a general pattern
>>>> in similar situations).
>>>>
>>>> Werner
>>>>
>>>> On 06.12.2012 07:08, Tom Eugelink wrote:
>>>>> Just a remark to see if we can make this more reusable; would it be
>>>>> an idea to actually veto the close action? Like veto the removal of a
>>>>> tab from a list? In that way veto-ing would be available to other
>>>>> usages of such lists as well, a uniform API.
>>>>>
>>>>> Tom
>>>
>
--
B e s t S o l u t i o n . a t EDV Systemhaus GmbH
------------------------------------------------------------------------
tom schindl geschäftsführer/CEO
------------------------------------------------------------------------
eduard-bodem-gasse 5-7/1 A-6020 innsbruck fax ++43 512 935833
http://www.BestSolution.at phone ++43 512 935834
More information about the openjfx-dev
mailing list