- /*
- * @(#)WindowsUtils.java 1.9 04/04/16
- *
- * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
- * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
- */
-
- package com.sun.java.swing.plaf.windows;
-
- import javax.swing.plaf.*;
- import javax.swing.*;
- import java.awt.*;
-
- /**
- * This is a collection of utility methods needed by the Windows L&F
- *
- * @version 1.9 04/16/04
- * @author Brian Beck
- */
-
- class WindowsUtils {
- /*
- * Convenience function for determining ComponentOrientation. Helps us
- * avoid having Munge directives throughout the code.
- */
- static boolean isLeftToRight( Component c ) {
- return c.getComponentOrientation().isLeftToRight();
- }
-
- /*
- * Repaints all the components with the mnemonics in the given window and
- * all its owned windows.
- */
- static void repaintMnemonicsInWindow(Window w) {
- if(w == null || !w.isShowing()) {
- return;
- }
-
- Window[] ownedWindows = w.getOwnedWindows();
- for(int i=0;i<ownedWindows.length;i++) {
- repaintMnemonicsInWindow(ownedWindows[i]);
- }
-
- repaintMnemonicsInContainer(w);
- }
-
- /*
- * Repaints all the components with the mnemonics in container.
- * Recursively searches for all the subcomponents.
- */
- static void repaintMnemonicsInContainer(Container cont) {
- Component c;
- for(int i=0; i<cont.getComponentCount(); i++) {
- c = cont.getComponent(i);
- if(c == null || !c.isVisible()) {
- continue;
- }
- if(c instanceof AbstractButton
- && ((AbstractButton)c).getMnemonic() != '\0') {
- c.repaint();
- continue;
- } else if(c instanceof JLabel
- && ((JLabel)c).getDisplayedMnemonic() != '\0') {
- c.repaint();
- continue;
- }
- if(c instanceof Container) {
- repaintMnemonicsInContainer((Container)c);
- }
- }
- }
- }