Class JComponent

All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable
Direct Known Subclasses:
AbstractButton, Box, Box.Filler, JColorChooser, JComboBox, JFileChooser, JInternalFrame, JInternalFrame.JDesktopIcon, JLabel, JLayeredPane, JList, JMenuBar, JOptionPane, JPanel, JPopupMenu, JProgressBar, JRootPane, JScrollBar, JScrollPane, JSeparator, JSlider, JSpinner, JSplitPane, JTabbedPane, JTable, JTableHeader, JTextComponent, JToolBar, JTree, JViewport

public abstract class JComponent extends Container implements Serializable
Emulator for JComponent.
See Also:
  • Field Details

  • Constructor Details

    • JComponent

      public JComponent()
    • JComponent

      protected JComponent(com.vaadin.flow.component.Component peer)
  • Method Details

    • update

      public void update(Graphics arg0)
      Overrides:
      update in class Container
    • contains

      public boolean contains(int arg0, int arg1)
      Overrides:
      contains in class Component
    • getBounds

      public Rectangle getBounds(Rectangle arg0)
      Overrides:
      getBounds in class Component
    • getLocation

      public Point getLocation(Point arg0)
      Overrides:
      getLocation in class Component
    • print

      public void print(Graphics arg0)
      Overrides:
      print in class Container
    • getSize

      public Dimension getSize(Dimension arg0)
      Overrides:
      getSize in class Component
    • setOpaque

      public void setOpaque(boolean arg0)
    • paramString

      protected String paramString()
      Overrides:
      paramString in class Container
    • isOpaque

      public boolean isOpaque()
      Overrides:
      isOpaque in class Component
    • enable

      public void enable()
      Overrides:
      enable in class Component
    • getGraphics

      public Graphics getGraphics()
      Overrides:
      getGraphics in class Component
    • getRootPane

      public JRootPane getRootPane()
    • firePropertyChange

      public void firePropertyChange(String arg0, boolean arg1, boolean arg2)
      Overrides:
      firePropertyChange in class Component
    • firePropertyChange

      public void firePropertyChange(String arg0, char arg1, char arg2)
      Overrides:
      firePropertyChange in class Component
    • firePropertyChange

      public void firePropertyChange(String arg0, int arg1, int arg2)
      Overrides:
      firePropertyChange in class Component
    • getInheritsPopupMenu

      public boolean getInheritsPopupMenu()
      Returns:
      what setInheritsPopupMenu(boolean) stored; Swing's default is false. Reports the request faithfully even though the inheritance has no effect — see the setter.
    • getComponentPopupMenu

      public JPopupMenu getComponentPopupMenu()
    • isManagingFocus

      public boolean isManagingFocus()
    • getDefaultLocale

      public static Locale getDefaultLocale()
      The locale every JFrame / JDialog / JWindow is born with — their frameInit / dialogInit / windowInit all open by calling setLocale(JComponent.getDefaultLocale()), as the JDK's do.

      Real Swing scopes this to an AppContext — per *app*, not per JVM — so answering per-UI is that scoping reproduced rather than invented (same reasoning as D_window_registry's tab scope). The JVM default would name the *server's* locale, making every user of a multi-user app see whatever the host happens to run under.

      Returns:
      what setDefaultLocale(Locale) last stored on this UI; failing that the browser's locale (Accept-Language, via the current UI), and outside a Vaadin request the JVM default
    • revalidate

      public void revalidate()
      Overrides:
      revalidate in class Component
    • repaint

      public void repaint(Rectangle arg0)
    • repaint

      public void repaint(long arg0, int arg1, int arg2, int arg3, int arg4)
      Overrides:
      repaint in class Component
    • putClientProperty

      public final void putClientProperty(Object arg0, Object arg1)
    • setFont

      public void setFont(Font arg0)
      Overrides:
      setFont in class Component
    • isOptimizedDrawingEnabled

      public boolean isOptimizedDrawingEnabled()
    • getWidth

      public int getWidth()
      Overrides:
      getWidth in class Component
    • getHeight

      public int getHeight()
      Overrides:
      getHeight in class Component
    • isLightweightComponent

      public static boolean isLightweightComponent(Component arg0)
    • paint

      public void paint(Graphics arg0)
      Overrides:
      paint in class Container
    • printAll

      public void printAll(Graphics arg0)
      Overrides:
      printAll in class Component
    • getBorder

      public Border getBorder()
    • paintBorder

      protected void paintBorder(Graphics arg0)
    • getComponentGraphics

      protected Graphics getComponentGraphics(Graphics arg0)
    • isDoubleBuffered

      public boolean isDoubleBuffered()
      Overrides:
      isDoubleBuffered in class Component
    • paintComponent

      protected void paintComponent(Graphics arg0)
    • printComponent

      protected void printComponent(Graphics arg0)
    • printBorder

      protected void printBorder(Graphics arg0)
    • paintChildren

      protected void paintChildren(Graphics arg0)
    • printChildren

      protected void printChildren(Graphics arg0)
    • getNextFocusableComponent

      @Deprecated public Component getNextFocusableComponent()
      Deprecated.
    • setNextFocusableComponent

      @Deprecated public void setNextFocusableComponent(Component arg0)
      Deprecated.
      Stored as the JDK's "nextFocus" client property rather than a field, which is what makes the "nextFocus" PropertyChangeEvent fire — putClientProperty(Object, Object) fires it, here as in the JDK. What drops is the traversal effect: the JDK's register/deregister pair hands the component to the focus subsystem, and transferFocus here walks the emulator tree instead (D_focus_managers).
      Parameters:
      arg0 - null clears the override
    • getClientProperty

      public final Object getClientProperty(Object arg0)
    • requestFocus

      public void requestFocus()
      Overrides:
      requestFocus in class Component
    • requestFocus

      public boolean requestFocus(boolean temporary)
      Description copied from class: Component
      The legacy "temporary focus" overload. Our peers can't distinguish temporary from permanent focus (the browser has no such concept), so this is the no-arg variant.
      Overrides:
      requestFocus in class Component
      Returns:
      whether the request reached the peer, not whether the browser accepted it
    • requestFocusInWindow

      public boolean requestFocusInWindow()
      Overrides:
      requestFocusInWindow in class Component
    • requestFocusInWindow

      protected boolean requestFocusInWindow(boolean temporary)
      Overrides:
      requestFocusInWindow in class Component
    • getFontMetrics

      public FontMetrics getFontMetrics(Font arg0)
      Overrides:
      getFontMetrics in class Component
    • setPreferredSize

      public void setPreferredSize(Dimension arg0)
      Overrides:
      setPreferredSize in class Component
    • getPreferredSize

      public Dimension getPreferredSize()
      Overrides:
      getPreferredSize in class Container
    • setMaximumSize

      public void setMaximumSize(Dimension arg0)
      Overrides:
      setMaximumSize in class Component
    • getMaximumSize

      public Dimension getMaximumSize()
      Overrides:
      getMaximumSize in class Container
    • setMinimumSize

      public void setMinimumSize(Dimension arg0)
      Overrides:
      setMinimumSize in class Component
    • getMinimumSize

      public Dimension getMinimumSize()
      Overrides:
      getMinimumSize in class Container
    • getInsets

      public Insets getInsets(Insets arg0)
    • getInsets

      public Insets getInsets()
      Overrides:
      getInsets in class Container
    • getAlignmentY

      public float getAlignmentY()
      Overrides:
      getAlignmentY in class Container
    • getAlignmentX

      public float getAlignmentX()
      Overrides:
      getAlignmentX in class Container
    • getInputMap

      public final InputMap getInputMap()
    • getInputMap

      public final InputMap getInputMap(int condition)
    • getActionMap

      public final ActionMap getActionMap()
    • registerKeyboardAction

      public void registerKeyboardAction(ActionListener listener, KeyStroke stroke, int condition)
    • registerKeyboardAction

      public void registerKeyboardAction(ActionListener listener, String command, KeyStroke stroke, int condition)
    • unregisterKeyboardAction

      public void unregisterKeyboardAction(KeyStroke stroke)
    • getRegisteredKeyStrokes

      public KeyStroke[] getRegisteredKeyStrokes()
    • getConditionForKeyStroke

      public int getConditionForKeyStroke(KeyStroke stroke)
    • getActionForKeyStroke

      public ActionListener getActionForKeyStroke(KeyStroke stroke)
    • resetKeyboardActions

      public void resetKeyboardActions()
    • setInputMap

      public final void setInputMap(int condition, InputMap map)
    • setActionMap

      public final void setActionMap(ActionMap map)
    • getBaseline

      public int getBaseline(int arg0, int arg1)
      Overrides:
      getBaseline in class Component
    • setVisible

      public void setVisible(boolean arg0)
      Overrides:
      setVisible in class Component
    • setEnabled

      public void setEnabled(boolean arg0)
      Overrides:
      setEnabled in class Component
    • setForeground

      public void setForeground(Color arg0)
      Overrides:
      setForeground in class Component
    • setBackground

      public void setBackground(Color arg0)
      Overrides:
      setBackground in class Component
    • setDefaultLocale

      public static void setDefaultLocale(Locale arg0)
      Stored on the current UI, which is getDefaultLocale()'s scope; the JVM default is never touched, since it is the *server's* and shared by every session. Two consequences of the narrower scope: an F5 lands on a fresh UI and reads the browser's locale again (real Swing's AppContext would have survived), and a call with no current UI has nowhere to store and WARNs.
      Parameters:
      arg0 - null resets to the browser's locale, as the JDK's null resets to the JVM default
    • processComponentKeyEvent

      protected void processComponentKeyEvent(KeyEvent arg0)
    • processKeyBinding

      protected boolean processKeyBinding(KeyStroke arg0, KeyEvent arg1, int arg2, boolean arg3)
    • getToolTipText

      public String getToolTipText(MouseEvent arg0)
    • getToolTipText

      public String getToolTipText()
    • getX

      public int getX()
      Overrides:
      getX in class Component
    • getY

      public int getY()
      Overrides:
      getY in class Component
    • scrollRectToVisible

      public void scrollRectToVisible(Rectangle arg0)
    • disable

      public void disable()
      Overrides:
      disable in class Component
    • setAutoscrolls

      public void setAutoscrolls(boolean arg0)
    • setFocusTraversalKeys

      public void setFocusTraversalKeys(int arg0, Set<? extends AWTKeyStroke> arg1)
      Overrides:
      setFocusTraversalKeys in class Container
    • reshape

      public void reshape(int arg0, int arg1, int arg2, int arg3)
      Overrides:
      reshape in class Component
    • computeVisibleRect

      public void computeVisibleRect(Rectangle arg0)
    • fireVetoableChange

      protected void fireVetoableChange(String arg0, Object arg1, Object arg2) throws PropertyVetoException
      Throws:
      PropertyVetoException
    • addVetoableChangeListener

      public void addVetoableChangeListener(VetoableChangeListener arg0)
    • removeVetoableChangeListener

      public void removeVetoableChangeListener(VetoableChangeListener arg0)
    • getVetoableChangeListeners

      public VetoableChangeListener[] getVetoableChangeListeners()
    • addAncestorListener

      public void addAncestorListener(AncestorListener l)
    • removeAncestorListener

      public void removeAncestorListener(AncestorListener l)
    • getAncestorListeners

      public AncestorListener[] getAncestorListeners()
    • getListeners

      public <T extends EventListener> T[] getListeners(Class<T> arg0)
      Overrides:
      getListeners in class Component
    • addNotify

      public void addNotify()
      Overrides:
      addNotify in class Container
    • removeNotify

      public void removeNotify()
      Overrides:
      removeNotify in class Container
    • paintImmediately

      public void paintImmediately(int arg0, int arg1, int arg2, int arg3)
    • paintImmediately

      public void paintImmediately(Rectangle arg0)
    • isPaintingOrigin

      protected boolean isPaintingOrigin()
    • getUIClassID

      public String getUIClassID()
    • hide

      public void hide()
      Overrides:
      hide in class Component
    • setInheritsPopupMenu

      public void setInheritsPopupMenu(boolean arg0)
      Stores the flag and fires "inheritsPopupMenu"; the inheritance itself is not modelled — a Vaadin ContextMenu binds to one target element, and walking to an ancestor's menu on a bare right-click has no counterpart. State and notification are owed regardless (R_decline_effect_only, D_owed_events): the flag was previously dropped, so getInheritsPopupMenu contradicted the setter and no listener ever fired.
    • setComponentPopupMenu

      public void setComponentPopupMenu(JPopupMenu popup)
    • updateUI

      public void updateUI()
    • getUI

      public ComponentUI getUI()
    • setUI

      protected void setUI(ComponentUI arg0)
    • isPaintingTile

      public boolean isPaintingTile()
    • isPaintingForPrint

      public final boolean isPaintingForPrint()
    • setRequestFocusEnabled

      public void setRequestFocusEnabled(boolean arg0)
    • isRequestFocusEnabled

      public boolean isRequestFocusEnabled()
    • grabFocus

      public void grabFocus()
    • setVerifyInputWhenFocusTarget

      public void setVerifyInputWhenFocusTarget(boolean arg0)
      Stores the flag and fires "verifyInputWhenFocusTarget"; the gate it controls is not modelled. setInputVerifier(InputVerifier) itself is wired (BlurNotifier-driven), but the JDK applies this flag during focus traversal — asking the component losing focus to verify before the target accepts it — and SB-Emulators has no traversal pipeline to gate (D_focus_managers). State and notification are owed regardless (R_decline_effect_only, D_owed_events).
    • getVerifyInputWhenFocusTarget

      public boolean getVerifyInputWhenFocusTarget()
      Returns:
      what setVerifyInputWhenFocusTarget(boolean) stored; Swing's default is true
    • setBorder

      public void setBorder(Border newBorder)
    • setAlignmentY

      public void setAlignmentY(float arg0)
      Parameters:
      arg0 - clamped into [0, 1], as the JDK's private validateAlignment does — 2.0f reads back as 1.0f
    • setAlignmentX

      public void setAlignmentX(float arg0)
      Parameters:
      arg0 - clamped into [0, 1] — see setAlignmentY(float).
    • setInputVerifier

      public void setInputVerifier(InputVerifier newVerifier)
    • getInputVerifier

      public InputVerifier getInputVerifier()
    • setDebugGraphicsOptions

      public void setDebugGraphicsOptions(int arg0)
      Parameters:
      arg0 - a positive bitmask stores; 0 is ignored and a negative value clears — DebugGraphicsInfo.setDebugOptions' three branches, measured on JDK 25, where NONE_OPTION (0) leaves the previous options standing rather than switching debugging off
    • getDebugGraphicsOptions

      public int getDebugGraphicsOptions()
    • requestDefaultFocus

      public boolean requestDefaultFocus()
    • setToolTipText

      public void setToolTipText(String text)
    • getToolTipLocation

      public Point getToolTipLocation(MouseEvent arg0)
    • getPopupLocation

      public Point getPopupLocation(MouseEvent arg0)
    • createToolTip

      public JToolTip createToolTip()
    • getAutoscrolls

      public boolean getAutoscrolls()
    • setTransferHandler

      public void setTransferHandler(TransferHandler newHandler)
    • getTransferHandler

      public TransferHandler getTransferHandler()
    • getVisibleRect

      public Rectangle getVisibleRect()
    • getTopLevelAncestor

      public Container getTopLevelAncestor()
    • isValidateRoot

      public boolean isValidateRoot()
      Overrides:
      isValidateRoot in class Container
    • setDoubleBuffered

      public void setDoubleBuffered(boolean arg0)