Java Code Examples for java.awt.Component#getParent()
The following examples show how to use
java.awt.Component#getParent() .
These examples are extracted from open source projects.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: openjdk-8 File: GroupLayout.java License: GNU General Public License v2.0 | 6 votes |
/** * Replaces an existing component with a new one. * * @param existingComponent the component that should be removed * and replaced with {@code newComponent} * @param newComponent the component to put in * {@code existingComponent}'s place * @throws IllegalArgumentException if either of the components are * {@code null} or {@code existingComponent} is not being managed * by this layout manager */ public void replace(Component existingComponent, Component newComponent) { if (existingComponent == null || newComponent == null) { throw new IllegalArgumentException("Components must be non-null"); } // Make sure all the components have been registered, otherwise we may // not update the correct Springs. if (springsChanged) { registerComponents(horizontalGroup, HORIZONTAL); registerComponents(verticalGroup, VERTICAL); } ComponentInfo info = componentInfos.remove(existingComponent); if (info == null) { throw new IllegalArgumentException("Component must already exist"); } host.remove(existingComponent); if (newComponent.getParent() != host) { host.add(newComponent); } info.setComponent(newComponent); componentInfos.put(newComponent, info); invalidateHost(); }
Example 2
Source Project: rapidminer-studio File: RoundedRectanglePopup.java License: GNU Affero General Public License v3.0 | 6 votes |
private void initPopup(Component owner, Component contents, int x, int y, Popup popup) { this.owner = owner; this.contents = contents; this.popup = popup; this.x = x; this.y = y; boolean mac = false; try { mac = System.getProperty("os.name").toLowerCase().startsWith("mac"); } catch (SecurityException e) { // do nothing } if (mac) { ((JComponent) contents).setBorder(Borders.getPopupMenuBorder()); } else if (((JComponent) contents).getBorder() instanceof DummyBorder) { if ((owner != null) // && (((owner instanceof JMenu) && ((JMenu) owner).isTopLevelMenu()) // || ((owner.getParent() != null) && (owner.getParent() instanceof javax.swing.JToolBar)) // || (owner instanceof javax.swing.JComboBox))) { ((JComponent) contents).setBorder(Borders.getPopupBorder()); } else { ((JComponent) contents).setBorder(Borders.getShadowedPopupMenuBorder()); } } }
Example 3
Source Project: jdk1.8-source-analysis File: LegacyGlueFocusTraversalPolicy.java License: Apache License 2.0 | 6 votes |
private boolean accept(Component aComponent) { if (!(aComponent.isVisible() && aComponent.isDisplayable() && aComponent.isFocusable() && aComponent.isEnabled())) { return false; } // Verify that the Component is recursively enabled. Disabling a // heavyweight Container disables its children, whereas disabling // a lightweight Container does not. if (!(aComponent instanceof Window)) { for (Container enableTest = aComponent.getParent(); enableTest != null; enableTest = enableTest.getParent()) { if (!(enableTest.isEnabled() || enableTest.isLightweight())) { return false; } if (enableTest instanceof Window) { break; } } } return true; }
Example 4
Source Project: jdk8u_jdk File: AncestorNotifier.java License: GNU General Public License v2.0 | 6 votes |
void addListeners(Component ancestor, boolean addToFirst) { Component a; firstInvisibleAncestor = null; for (a = ancestor; firstInvisibleAncestor == null; a = a.getParent()) { if (addToFirst || a != ancestor) { a.addComponentListener(this); if (a instanceof JComponent) { JComponent jAncestor = (JComponent)a; jAncestor.addPropertyChangeListener(this); } } if (!a.isVisible() || a.getParent() == null || a instanceof Window) { firstInvisibleAncestor = a; } } if (firstInvisibleAncestor instanceof Window && firstInvisibleAncestor.isVisible()) { firstInvisibleAncestor = null; } }
Example 5
Source Project: openjdk-jdk8u File: LegacyGlueFocusTraversalPolicy.java License: GNU General Public License v2.0 | 6 votes |
private boolean accept(Component aComponent) { if (!(aComponent.isVisible() && aComponent.isDisplayable() && aComponent.isFocusable() && aComponent.isEnabled())) { return false; } // Verify that the Component is recursively enabled. Disabling a // heavyweight Container disables its children, whereas disabling // a lightweight Container does not. if (!(aComponent instanceof Window)) { for (Container enableTest = aComponent.getParent(); enableTest != null; enableTest = enableTest.getParent()) { if (!(enableTest.isEnabled() || enableTest.isLightweight())) { return false; } if (enableTest instanceof Window) { break; } } } return true; }
Example 6
Source Project: netbeans File: CssExternalDropHandler.java License: Apache License 2.0 | 5 votes |
private JEditorPane findPane(Component component) { while (component != null) { if (component instanceof JEditorPane) { return (JEditorPane) component; } component = component.getParent(); } return null; }
Example 7
Source Project: pumpernickel File: PaddingInfo.java License: MIT License | 5 votes |
/** * Returns true if the parent component contains the child. (Does not return * true if the parent and child arguments are the same.) * * @param parent * @param child * @return */ private static boolean contains(Component parent, Component child) { Component c = child; while (c != null) { c = c.getParent(); if (parent == c) { return true; } } return false; }
Example 8
Source Project: jdk8u_jdk File: XComponentPeer.java License: GNU General Public License v2.0 | 5 votes |
public void removeDropTarget(DropTarget dt) { Component comp = target; while(!(comp == null || comp instanceof Window)) { comp = comp.getParent(); } if (comp instanceof Window) { XWindowPeer wpeer = (XWindowPeer)(comp.getPeer()); if (wpeer != null) { wpeer.removeDropTarget(); } } }
Example 9
Source Project: TencentKona-8 File: ExecutableInputMethodManager.java License: GNU General Public License v2.0 | 5 votes |
public synchronized void notifyChangeRequestByHotKey(Component comp) { while (!(comp instanceof Frame || comp instanceof Dialog)) { if (comp == null) { // no Frame or Dialog found in containment hierarchy. return; } comp = comp.getParent(); } notifyChangeRequest(comp); }
Example 10
Source Project: gcs File: WindowUtils.java License: Mozilla Public License 2.0 | 5 votes |
/** * @param comp The {@link Component} to use. May be {@code null}. * @return The most logical {@link Window} associated with the component. */ public static Window getWindowForComponent(Component comp) { while (true) { if (comp == null) { return JOptionPane.getRootFrame(); } if (comp instanceof Frame || comp instanceof Dialog) { return (Window) comp; } comp = comp.getParent(); } }
Example 11
Source Project: hottub File: MetalBorders.java License: GNU General Public License v2.0 | 5 votes |
public void paintBorder( Component c, Graphics g, int x, int y, int w, int h ) { if (!(c instanceof JMenuItem)) { return; } JMenuItem b = (JMenuItem) c; ButtonModel model = b.getModel(); g.translate( x, y ); if ( c.getParent() instanceof JMenuBar ) { if ( model.isArmed() || model.isSelected() ) { g.setColor( MetalLookAndFeel.getControlDarkShadow() ); g.drawLine( 0, 0, w - 2, 0 ); g.drawLine( 0, 0, 0, h - 1 ); g.drawLine( w - 2, 2, w - 2, h - 1 ); g.setColor( MetalLookAndFeel.getPrimaryControlHighlight() ); g.drawLine( w - 1, 1, w - 1, h - 1 ); g.setColor( MetalLookAndFeel.getMenuBackground() ); g.drawLine( w - 1, 0, w - 1, 0 ); } } else { if ( model.isArmed() || ( c instanceof JMenu && model.isSelected() ) ) { g.setColor( MetalLookAndFeel.getPrimaryControlDarkShadow() ); g.drawLine( 0, 0, w - 1, 0 ); g.setColor( MetalLookAndFeel.getPrimaryControlHighlight() ); g.drawLine( 0, h - 1, w - 1, h - 1 ); } else { g.setColor( MetalLookAndFeel.getPrimaryControlHighlight() ); g.drawLine( 0, 0, 0, h - 1 ); } } g.translate( -x, -y ); }
Example 12
Source Project: dragonwell8_jdk File: DefaultListCellRenderer.java License: GNU General Public License v2.0 | 5 votes |
/** * Overridden for performance reasons. * See the <a href="#override">Implementation Note</a> * for more information. * * @since 1.5 * @return <code>true</code> if the background is completely opaque * and differs from the JList's background; * <code>false</code> otherwise */ @Override public boolean isOpaque() { Color back = getBackground(); Component p = getParent(); if (p != null) { p = p.getParent(); } // p should now be the JList. boolean colorMatch = (back != null) && (p != null) && back.equals(p.getBackground()) && p.isOpaque(); return !colorMatch && super.isOpaque(); }
Example 13
Source Project: gcs File: UIUtilities.java License: Mozilla Public License 2.0 | 5 votes |
/** * @param component The component whose ancestor chain is to be looked at. * @param type The type of ancestor being looked for. * @return The ancestor, or {@code null}. */ @SuppressWarnings("unchecked") public static <T> T getAncestorOfType(Component component, Class<T> type) { if (component == null) { return null; } Container parent = component.getParent(); while (parent != null && !type.isAssignableFrom(parent.getClass())) { parent = parent.getParent(); } return (T) parent; }
Example 14
Source Project: netbeans File: ProfilerTopComponent.java License: Apache License 2.0 | 5 votes |
private void processFocusedComponent(Component c) { Component cc = c; while (c != null) { if (c == ProfilerTopComponent.this) { lastFocusOwner = cc; return; } c = c.getParent(); } }
Example 15
Source Project: FlatLaf File: FlatButtonUI.java License: Apache License 2.0 | 4 votes |
static boolean isToolBarButton( Component c ) { return c.getParent() instanceof JToolBar || (c instanceof AbstractButton && clientPropertyEquals( (AbstractButton) c, BUTTON_TYPE, BUTTON_TYPE_TOOLBAR_BUTTON )); }
Example 16
Source Project: jdk8u-jdk File: XInputMethod.java License: GNU General Public License v2.0 | 4 votes |
protected Container getParent(Component client) { return client.getParent(); }
Example 17
Source Project: jdk8u_jdk File: BasicPopupMenuUI.java License: GNU General Public License v2.0 | 4 votes |
public void stateChanged(ChangeEvent ev) { if (!(UIManager.getLookAndFeel() instanceof BasicLookAndFeel)) { uninstall(); return; } MenuSelectionManager msm = (MenuSelectionManager)ev.getSource(); MenuElement[] p = msm.getSelectedPath(); JPopupMenu popup = getActivePopup(p); if (popup != null && !popup.isFocusable()) { // Do nothing for non-focusable popups return; } if (lastPathSelected.length != 0 && p.length != 0 ) { if (!checkInvokerEqual(p[0],lastPathSelected[0])) { removeItems(); lastPathSelected = new MenuElement[0]; } } if (lastPathSelected.length == 0 && p.length > 0) { // menu posted JComponent invoker; if (popup == null) { if (p.length == 2 && p[0] instanceof JMenuBar && p[1] instanceof JMenu) { // a menu has been selected but not open invoker = (JComponent)p[1]; popup = ((JMenu)invoker).getPopupMenu(); } else { return; } } else { Component c = popup.getInvoker(); if(c instanceof JFrame) { invoker = ((JFrame)c).getRootPane(); } else if(c instanceof JDialog) { invoker = ((JDialog)c).getRootPane(); } else if(c instanceof JApplet) { invoker = ((JApplet)c).getRootPane(); } else { while (!(c instanceof JComponent)) { if (c == null) { return; } c = c.getParent(); } invoker = (JComponent)c; } } // remember current focus owner lastFocused = KeyboardFocusManager. getCurrentKeyboardFocusManager().getFocusOwner(); // request focus on root pane and install keybindings // used for menu navigation invokerRootPane = SwingUtilities.getRootPane(invoker); if (invokerRootPane != null) { invokerRootPane.addFocusListener(rootPaneFocusListener); invokerRootPane.requestFocus(true); invokerRootPane.addKeyListener(this); focusTraversalKeysEnabled = invokerRootPane. getFocusTraversalKeysEnabled(); invokerRootPane.setFocusTraversalKeysEnabled(false); menuInputMap = getInputMap(popup, invokerRootPane); addUIInputMap(invokerRootPane, menuInputMap); addUIActionMap(invokerRootPane, menuActionMap); } } else if (lastPathSelected.length != 0 && p.length == 0) { // menu hidden -- return focus to where it had been before // and uninstall menu keybindings removeItems(); } else { if (popup != lastPopup) { receivedKeyPressed = false; } } // Remember the last path selected lastPathSelected = p; lastPopup = popup; }
Example 18
Source Project: jdk8u-dev-jdk File: BasicPopupMenuUI.java License: GNU General Public License v2.0 | 4 votes |
public void stateChanged(ChangeEvent ev) { if (!(UIManager.getLookAndFeel() instanceof BasicLookAndFeel)) { uninstall(); return; } MenuSelectionManager msm = (MenuSelectionManager)ev.getSource(); MenuElement[] p = msm.getSelectedPath(); JPopupMenu popup = getActivePopup(p); if (popup != null && !popup.isFocusable()) { // Do nothing for non-focusable popups return; } if (lastPathSelected.length != 0 && p.length != 0 ) { if (!checkInvokerEqual(p[0],lastPathSelected[0])) { removeItems(); lastPathSelected = new MenuElement[0]; } } if (lastPathSelected.length == 0 && p.length > 0) { // menu posted JComponent invoker; if (popup == null) { if (p.length == 2 && p[0] instanceof JMenuBar && p[1] instanceof JMenu) { // a menu has been selected but not open invoker = (JComponent)p[1]; popup = ((JMenu)invoker).getPopupMenu(); } else { return; } } else { Component c = popup.getInvoker(); if(c instanceof JFrame) { invoker = ((JFrame)c).getRootPane(); } else if(c instanceof JDialog) { invoker = ((JDialog)c).getRootPane(); } else if(c instanceof JApplet) { invoker = ((JApplet)c).getRootPane(); } else { while (!(c instanceof JComponent)) { if (c == null) { return; } c = c.getParent(); } invoker = (JComponent)c; } } // remember current focus owner lastFocused = KeyboardFocusManager. getCurrentKeyboardFocusManager().getFocusOwner(); // request focus on root pane and install keybindings // used for menu navigation invokerRootPane = SwingUtilities.getRootPane(invoker); if (invokerRootPane != null) { invokerRootPane.addFocusListener(rootPaneFocusListener); invokerRootPane.requestFocus(true); invokerRootPane.addKeyListener(this); focusTraversalKeysEnabled = invokerRootPane. getFocusTraversalKeysEnabled(); invokerRootPane.setFocusTraversalKeysEnabled(false); menuInputMap = getInputMap(popup, invokerRootPane); addUIInputMap(invokerRootPane, menuInputMap); addUIActionMap(invokerRootPane, menuActionMap); } } else if (lastPathSelected.length != 0 && p.length == 0) { // menu hidden -- return focus to where it had been before // and uninstall menu keybindings removeItems(); } else { if (popup != lastPopup) { receivedKeyPressed = false; } } // Remember the last path selected lastPathSelected = p; lastPopup = popup; }
Example 19
Source Project: FlatLaf File: FlatDatePickerBorder.java License: Apache License 2.0 | 4 votes |
@Override protected boolean isTableCellEditor( Component c ) { return c.getParent() instanceof JTable; }
Example 20
Source Project: JDKSourceCode1.8 File: JLayeredPane.java License: MIT License | 3 votes |
/** Convenience method that returns the first JLayeredPane which * contains the specified component. Note that all JFrames have a * JLayeredPane at their root, so any component in a JFrame will * have a JLayeredPane parent. * * @param c the Component to check * @return the JLayeredPane that contains the component, or * null if no JLayeredPane is found in the component * hierarchy * @see JFrame * @see JRootPane */ public static JLayeredPane getLayeredPaneAbove(Component c) { if(c == null) return null; Component parent = c.getParent(); while(parent != null && !(parent instanceof JLayeredPane)) parent = parent.getParent(); return (JLayeredPane)parent; }