modules/controls/src/main/java/javafx/scene/control/skin/ToggleButtonSkin.java

Print this page
rev 9240 : 8076423: JEP 253: Prepare JavaFX UI Controls & CSS APIs for Modularization

*** 1,7 **** /* ! * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this --- 1,7 ---- /* ! * Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this
*** 21,36 **** * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. */ ! package com.sun.javafx.scene.control.skin; import com.sun.javafx.scene.control.behavior.ToggleButtonBehavior; import javafx.scene.control.ToggleButton; ! public class ToggleButtonSkin extends LabeledSkinBase<ToggleButton, ToggleButtonBehavior<ToggleButton>> { ! public ToggleButtonSkin(ToggleButton toggleButton) { ! super(toggleButton, new ToggleButtonBehavior<>(toggleButton)); } } --- 21,91 ---- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. */ ! package javafx.scene.control.skin; + import com.sun.javafx.scene.control.behavior.BehaviorBase; import com.sun.javafx.scene.control.behavior.ToggleButtonBehavior; + import javafx.scene.Node; + import javafx.scene.control.Accordion; + import javafx.scene.control.Button; + import javafx.scene.control.Control; import javafx.scene.control.ToggleButton; ! /** ! * Default skin implementation for the {@link ToggleButton} control. ! * ! * @see ToggleButton ! * @since 9 ! */ ! public class ToggleButtonSkin extends LabeledSkinBase<ToggleButton> { ! ! /*************************************************************************** ! * * ! * Private Fields * ! * * ! **************************************************************************/ ! ! private final BehaviorBase<ToggleButton> behavior; ! ! ! /*************************************************************************** ! * * ! * Constructors * ! * * ! **************************************************************************/ ! ! /** ! * Creates a new ToggleButtonSkin instance, installing the necessary child ! * nodes into the Control {@link Control#getChildren() children} list, as ! * well as the necessary input mappings for handling key, mouse, etc events. ! * ! * @param control The control that this skin should be installed onto. ! */ ! public ToggleButtonSkin(ToggleButton control) { ! super(control); ! ! // install default input map for the ToggleButton control ! behavior = new ToggleButtonBehavior<>(control); ! // control.setInputMap(behavior.getInputMap()); ! } ! ! ! ! /*************************************************************************** ! * * ! * Public API * ! * * ! **************************************************************************/ ! ! /** {@inheritDoc} */ ! @Override public void dispose() { ! super.dispose(); ! ! if (behavior != null) { ! behavior.dispose(); ! } } }