131 lines
3.3 KiB
Java
131 lines
3.3 KiB
Java
/* Author: Maple
|
|
* Feb. 2 2026
|
|
* */
|
|
|
|
package org.openautonomousconnection.oacswing.component;
|
|
|
|
import lombok.NonNull;
|
|
|
|
import javax.swing.*;
|
|
import java.awt.*;
|
|
|
|
public class OACRootPane extends JRootPane implements OACComponent {
|
|
public OACRootPane() {
|
|
super();
|
|
}
|
|
|
|
@Override
|
|
protected OACLayeredPane createLayeredPane() {
|
|
OACLayeredPane p = new OACLayeredPane();
|
|
p.setName(this.getName() + ".layeredPane");
|
|
return p;
|
|
}
|
|
|
|
@Override
|
|
protected Container createContentPane() {
|
|
JComponent c = new OACPanel();
|
|
c.setName(this.getName() + ".contentPane");
|
|
c.setLayout(new BorderLayout() {
|
|
/* This BorderLayout subclass maps a null constraint to CENTER.
|
|
* Although the reference BorderLayout also does this, some VMs
|
|
* throw an IllegalArgumentException.
|
|
*/
|
|
public void addLayoutComponent(Component comp, Object constraints) {
|
|
if (constraints == null) {
|
|
constraints = BorderLayout.CENTER;
|
|
}
|
|
super.addLayoutComponent(comp, constraints);
|
|
}
|
|
});
|
|
return c;
|
|
}
|
|
|
|
// public void setOACMenuBar(OACMenuBar menu) {
|
|
// super.setJMenuBar(menu);
|
|
// }
|
|
|
|
@Deprecated
|
|
@Override
|
|
public JMenuBar getJMenuBar() {
|
|
if (this.menuBar instanceof OACMenuBar oacMenuBar)
|
|
return oacMenuBar;
|
|
else
|
|
return this.menuBar;
|
|
}
|
|
|
|
public OACMenuBar getOACMenuBar() {
|
|
return (OACMenuBar) this.menuBar;
|
|
}
|
|
|
|
@Override
|
|
public OACButton getDefaultButton() {
|
|
return (OACButton) this.defaultButton;
|
|
}
|
|
|
|
@Deprecated
|
|
@Override
|
|
public void setDefaultButton(JButton defaultButton) {
|
|
if (defaultButton instanceof OACButton)
|
|
super.setDefaultButton(defaultButton);
|
|
}
|
|
|
|
public void setDefaultButton(OACButton defaultButton) {
|
|
super.setDefaultButton(defaultButton);
|
|
}
|
|
|
|
@Override
|
|
public OACLayeredPane getLayeredPane() {
|
|
return (OACLayeredPane) this.layeredPane;
|
|
}
|
|
|
|
@Deprecated
|
|
@Override
|
|
public void setLayeredPane(JLayeredPane layered) {
|
|
if (layered instanceof OACLayeredPane)
|
|
super.setLayeredPane(layered);
|
|
}
|
|
|
|
public void setLayeredPane(OACLayeredPane layeredPane) {
|
|
super.setLayeredPane(layeredPane);
|
|
}
|
|
|
|
@Override
|
|
protected Component createGlassPane() {
|
|
OACPanel c = new OACPanel();
|
|
c.setName(this.getName() + ".glassPane");
|
|
c.setVisible(false);
|
|
c.setOpaque(false);
|
|
return c;
|
|
}
|
|
|
|
@Override
|
|
public Component add(Component comp) {
|
|
this.initOther(comp);
|
|
return super.add(comp);
|
|
}
|
|
|
|
@Override
|
|
public Component add(Component comp, int index) {
|
|
this.initOther(comp);
|
|
return super.add(comp, index);
|
|
}
|
|
|
|
@Override
|
|
public void add(@NonNull Component comp, Object constraints) {
|
|
this.initOther(comp);
|
|
super.add(comp, constraints);
|
|
}
|
|
|
|
@Override
|
|
public Component add(String name, Component comp) {
|
|
this.initOther(comp);
|
|
return super.add(name, comp);
|
|
}
|
|
|
|
@Override
|
|
public void add(Component comp, Object constraints, int index) {
|
|
this.initOther(comp);
|
|
super.add(comp, constraints, index);
|
|
}
|
|
}
|