modules/controls/src/main/java/javafx/scene/control/skin/LabelSkin.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,54 **** * 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 javafx.scene.control.Label; - import java.util.Collections; - import com.sun.javafx.scene.control.behavior.BehaviorBase; - /** ! * A Skin for Labels. */ ! public class LabelSkin extends LabeledSkinBase<Label, BehaviorBase<Label>> { ! public LabelSkin(final Label label) { ! super(label, new BehaviorBase<>(label, Collections.emptyList())); // Labels do not block the mouse by default, unlike most other UI Controls. consumeMouseEvents(false); ! registerChangeListener(label.labelForProperty(), "LABEL_FOR"); ! } ! ! ! @Override protected void handleControlPropertyChanged(String p) { ! super.handleControlPropertyChanged(p); ! if ("LABEL_FOR".equals(p)) { ! mnemonicTargetChanged(); ! } } } --- 21,62 ---- * 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 javafx.scene.Node; + import javafx.scene.control.Control; import javafx.scene.control.Label; /** ! * Default skin implementation for the {@link Label} control. ! * ! * @see Label ! * @since 9 */ ! public class LabelSkin extends LabeledSkinBase<Label> { ! /*************************************************************************** ! * * ! * Constructors * ! * * ! **************************************************************************/ ! ! /** ! * Creates a new LabelSkin instance, installing the necessary child ! * nodes into the Control {@link Control#getChildren() children} list, as ! * well as the necessary {@link Node#getInputMap() input mappings} for ! * handling key, mouse, etc events. ! * ! * @param control The control that this skin should be installed onto. ! */ ! public LabelSkin(final Label control) { ! super(control); // Labels do not block the mouse by default, unlike most other UI Controls. consumeMouseEvents(false); ! registerChangeListener(control.labelForProperty(), e -> mnemonicTargetChanged()); } }