类javax.swing.border.Border源码实例Demo

下面列出了怎么用javax.swing.border.Border的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: consulo   文件: NewItemWithTemplatesPopupPanel.java
@Nonnull
private JBList<T> createTemplatesList(@Nonnull ListModel<T> model, ListCellRenderer<T> renderer) {
  JBList<T> list = new JBList<>(model);
  MouseAdapter mouseListener = new MouseAdapter() {
    @Override
    public void mouseClicked(MouseEvent e) {
      if (myApplyAction != null && e.getClickCount() > 1) myApplyAction.consume(e);
    }
  };

  list.addMouseListener(mouseListener);
  list.setCellRenderer(renderer);
  list.setFocusable(false);
  list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

  Border border = JBUI.Borders.merge(JBUI.Borders.emptyLeft(JBUIScale.scale(5)), JBUI.Borders.customLine(JBUI.CurrentTheme.NewClassDialog.bordersColor(), 1, 0, 0, 0), true);
  list.setBorder(border);
  return list;
}
 
源代码2 项目: netbeans   文件: EditorView.java
/** Handles special border policy - scroll pane like border only 
 * if editor area is null.
 */
private void manageBorder (JPanel panel) {
    if (editorArea != null) {
        panel.setBorder(null);
    } else {
        if (Utilities.isMac()) {
           //#64701 on macosx the nb.scrollpane.border draws ugly line on top
            panel.setBorder(BorderFactory.createEmptyBorder());
        } else {
            Border border = UIManager.getBorder( "Nb.EmptyEditorArea.border"); //NOI18N
            if( null == border ) {
                // special border installed into UI manager by netbeans
                border = UIManager.getBorder("Nb.ScrollPane.border"); //NOI18N
            }
            panel.setBorder(border);
 }
    }
}
 
源代码3 项目: TencentKona-8   文件: BasicOptionPaneUI.java
/**
 * Creates and returns a Container containing the buttons. The buttons
 * are created by calling <code>getButtons</code>.
 */
protected Container createButtonArea() {
    JPanel bottom = new JPanel();
    Border border = (Border)DefaultLookup.get(optionPane, this,
                                      "OptionPane.buttonAreaBorder");
    bottom.setName("OptionPane.buttonArea");
    if (border != null) {
        bottom.setBorder(border);
    }
    bottom.setLayout(new ButtonAreaLayout(
       DefaultLookup.getBoolean(optionPane, this,
                                "OptionPane.sameSizeButtons", true),
       DefaultLookup.getInt(optionPane, this, "OptionPane.buttonPadding",
                            6),
       DefaultLookup.getInt(optionPane, this,
                    "OptionPane.buttonOrientation", SwingConstants.CENTER),
       DefaultLookup.getBoolean(optionPane, this, "OptionPane.isYesLast",
                                false)));
    addButtonComponents(bottom, getButtons(), getInitialValueIndex());
    return bottom;
}
 
源代码4 项目: Bytecoder   文件: BasicOptionPaneUI.java
/**
 * Creates and returns a {@code Container} containing the buttons.
 * The buttons are created by calling {@code getButtons}.
 *
 * @return a {@code Container} containing the buttons
 */
protected Container createButtonArea() {
    JPanel bottom = new JPanel();
    Border border = (Border)DefaultLookup.get(optionPane, this,
                                      "OptionPane.buttonAreaBorder");
    bottom.setName("OptionPane.buttonArea");
    if (border != null) {
        bottom.setBorder(border);
    }
    bottom.setLayout(new ButtonAreaLayout(
       DefaultLookup.getBoolean(optionPane, this,
                                "OptionPane.sameSizeButtons", true),
       DefaultLookup.getInt(optionPane, this, "OptionPane.buttonPadding",
                            6),
       DefaultLookup.getInt(optionPane, this,
                    "OptionPane.buttonOrientation", SwingConstants.CENTER),
       DefaultLookup.getBoolean(optionPane, this, "OptionPane.isYesLast",
                                false)));
    addButtonComponents(bottom, getButtons(), getInitialValueIndex());
    return bottom;
}
 
源代码5 项目: FlatLaf   文件: FlatOptionPaneUI.java
private void updateChildPanels( Container c ) {
	for( Component child : c.getComponents() ) {
		if( child instanceof JPanel ) {
			JPanel panel = (JPanel)child;

			// make sub-panel non-opaque for OptionPane.background
			panel.setOpaque( false );

			// use non-UIResource borders to avoid that they are replaced when switching LaF
			Border border = panel.getBorder();
			if( border instanceof UIResource )
				panel.setBorder( new NonUIResourceBorder( border ) );
		}

		if( child instanceof Container ) {
			updateChildPanels( (Container) child );
		}
	}
}
 
源代码6 项目: openjdk-8   文件: SynthStyle.java
/**
 * Uninstalls any state that this style installed on
 * the <code>JComponent</code> from <code>context</code>.
 * <p>
 * Styles should NOT depend upon this being called, in certain cases
 * it may never be called.
 *
 * @param context SynthContext identifying component to install properties
 *        to.
 */
public void uninstallDefaults(SynthContext context) {
    if (!context.isSubregion()) {
        // NOTE: because getForeground, getBackground and getFont will look
        // at the parent Container, if we set them to null it may
        // mean we they return a non-null and non-UIResource value
        // preventing install from correctly settings its colors/font. For
        // this reason we do not uninstall the fg/bg/font.

        JComponent c = context.getComponent();
        Border border = c.getBorder();

        if (border instanceof UIResource) {
            c.setBorder(null);
        }
    }
}
 
源代码7 项目: beautyeye   文件: DefaultsDisplay.java
protected void setBorder(JComponent renderer, boolean hasFocus, boolean isSelected) {

    if (hasFocus) {
        Border border = null;
        if (isSelected) {
            border = UIManager.getBorder("Table.focusSelectedCellHighlightBorder");
        }
        if (border == null) {
            border = UIManager.getBorder("Table.focusCellHighlightBorder");
        }
        renderer.setBorder(border);
                        
    } else {
        renderer.setBorder(noFocusBorder);
    }
}
 
源代码8 项目: seaglass   文件: SeaGlassBrowser.java
static void printBorder(PrintWriter html, Border border) {
    Insets insets = border.getBorderInsets(new JToolBar());
    html.println("<td>Border Insets(" + insets.top + "," + insets.left + "," + insets.bottom + "," + insets.right
            + ")</pre></td>");
    int w = 50 + insets.left + insets.right;
    int h = 20 + insets.top + insets.bottom;
    try {
        BufferedImage img = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
        Graphics2D g2 = img.createGraphics();
        Composite old = g2.getComposite();
        g2.setComposite(AlphaComposite.Clear);
        g2.fillRect(0, 0, w, h);
        g2.setComposite(old);
        g2.setColor(Color.RED);
        g2.fillRect(insets.left, insets.top, 49, 19);
        border.paintBorder(null, g2, 0, 0, w, h);
        g2.dispose();
        html.println("<td>" + saveImage(img) + "</td>");
    } catch (Exception e) {
        // e.printStackTrace();
        html.println("<td>NPE&nbsp;</td>");
    }
}
 
源代码9 项目: i18n-editor   文件: JTextField.java
/**
 * Constructs a {@link JTextField} with an initial text.
 */
public JTextField(String text) {
	super(text, 25);
	
	Border border = BorderFactory.createLineBorder(Colors.scale(UIManager.getColor("Panel.background"), .8f));
	setBorder(BorderFactory.createCompoundBorder(border, BorderFactory.createEmptyBorder(5,8,5,8)));
	getDocument().addUndoableEditListener(e -> undoManager.addEdit(e.getEdit()));
	
	// Add undo support
	getActionMap().put("undo", new UndoAction(undoManager));
	getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_Z, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()), "undo");
	
	// Add redo support
	getActionMap().put("redo", new RedoAction(undoManager));
	getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_Y, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()), "redo");
	
	// Add popup menu support
	addMouseListener(new JTextComponentMenuListener(this, undoManager));
}
 
源代码10 项目: ghidra   文件: AnalyzerPanel.java
private Component buildPhasePanel() {
	phasePanel = new JPanel(new MiddleLayout());
	Border empty = BorderFactory.createEmptyBorder(0, 20, 0, 20);
	Border etched = BorderFactory.createEtchedBorder();
	phasePanel.setBorder(BorderFactory.createCompoundBorder(etched, empty));
	phasePanel.setOpaque(false);
	phasePanel.setPreferredSize(new Dimension(60, 0));
	phaseLabel = new GDLabel("");

	//@formatter:off
	String text = analyzer.getAnalysisType() == AnalyzerType.ONE_SHOT_ANALYZER ? 
		  "Phase when this analyzer runs. (Select and press number to change)"
		: "Phase when this analyzer first becomes active. (Select and press number to change)";
	//@formatter:on

	phaseLabel.setToolTipText(text);
	phasePanel.setToolTipText(text);
	updatePhaseLabel();
	phasePanel.add(phaseLabel);
	return phasePanel;
}
 
源代码11 项目: beautyeye   文件: BERootPaneUI.java
/**
 * Installs the appropriate <code>Border</code> onto the
 * <code>JRootPane</code>.
 *
 * @param root the root
 */
void installBorder(JRootPane root) 
{
	int style = root.getWindowDecorationStyle();

	if (style == JRootPane.NONE) 
	{
		LookAndFeel.uninstallBorder(root);
	}
	else 
	{
		Border b = root.getBorder();
		if (b == null || b instanceof UIResource) 
		{
			root.setBorder(null);
			root.setBorder(UIManager.getBorder(borderKeys[style]));
		}
	}
}
 
源代码12 项目: openjdk-jdk8u   文件: WindowsToolBarUI.java
protected Border createRolloverBorder() {
    if (XPStyle.getXP() != null) {
        return new EmptyBorder(3, 3, 3, 3);
    } else {
        return super.createRolloverBorder();
    }
}
 
源代码13 项目: java-swing-tips   文件: MainPanel.java
protected FileNameRenderer(JTable table) {
  Border b = UIManager.getBorder("Table.noFocusBorder");
  if (Objects.isNull(b)) { // Nimbus???
    Insets i = focusBorder.getBorderInsets(textLabel);
    b = BorderFactory.createEmptyBorder(i.top, i.left, i.bottom, i.right);
  }
  noFocusBorder = b;

  JPanel p = new JPanel(new BorderLayout()) {
    @Override public Dimension getPreferredSize() {
      return dim;
    }
  };
  p.setOpaque(false);
  renderer.setOpaque(false);

  // [XP Style Icons - Download](https://xp-style-icons.en.softonic.com/)
  icon = new ImageIcon(getClass().getResource("wi0063-16.png"));

  ImageProducer ip = new FilteredImageSource(icon.getImage().getSource(), new SelectedImageFilter());
  selectedIcon = new ImageIcon(p.createImage(ip));

  iconLabel = new JLabel(icon);
  iconLabel.setBorder(BorderFactory.createEmptyBorder());

  p.add(iconLabel, BorderLayout.WEST);
  p.add(textLabel);
  renderer.add(p, BorderLayout.WEST);

  Dimension d = iconLabel.getPreferredSize();
  dim.setSize(d);
  table.setRowHeight(d.height);
}
 
源代码14 项目: jdk8u-dev-jdk   文件: AquaComboBoxUI.java
public void applySizeFor(final JComponent c, final Size size) {
    if (arrowButton == null) return;
    final Border border = arrowButton.getBorder();
    if (!(border instanceof AquaButtonBorder)) return;
    final AquaButtonBorder aquaBorder = (AquaButtonBorder)border;
    arrowButton.setBorder(aquaBorder.deriveBorderForSize(size));
}
 
MovableFrameConstraints(boolean processSEResize,
                        boolean processEResize,
                        boolean visible,
                        Color bgColor,
                        Border border,
                        Point location) {
    this.processSEResize = processSEResize;
    this.processEResize = processEResize;
    this.visible = visible;
    this.bgColor = bgColor;
    this.border = border;
    this.location = location;
}
 
源代码16 项目: openjdk-8-source   文件: AquaButtonUI.java
public Dimension getPreferredSize(final JComponent c) {
    final AbstractButton b = (AbstractButton)c;

    // fix for Radar #3134273
    final Dimension d = BasicGraphicsUtils.getPreferredButtonSize(b, b.getIconTextGap());
    if (d == null) return null;

    final Border border = b.getBorder();
    if (border instanceof AquaButtonBorder) {
        ((AquaButtonBorder)border).alterPreferredSize(d);
    }

    return d;
}
 
源代码17 项目: dragonwell8_jdk   文件: BasicSplitPaneDivider.java
/**
 * If a border has been set on this component, returns the
 * border's insets, else calls super.getInsets.
 *
 * @return the value of the insets property.
 * @see #setBorder
 */
public Insets getInsets() {
    Border    border = getBorder();

    if (border != null) {
        return border.getBorderInsets(this);
    }
    return super.getInsets();
}
 
源代码18 项目: jdk8u_jdk   文件: AquaButtonUI.java
protected void installDefaults(final AbstractButton b) {
    // load shared instance defaults
    final String pp = getPropertyPrefix();

    if (!defaults_initialized) {
        defaultDisabledTextColor = UIManager.getColor(pp + "disabledText");
        defaults_initialized = true;
    }

    setButtonMarginIfNeeded(b, UIManager.getInsets(pp + "margin"));

    LookAndFeel.installColorsAndFont(b, pp + "background", pp + "foreground", pp + "font");
    LookAndFeel.installProperty(b, "opaque", UIManager.getBoolean(pp + "opaque"));

    final Object borderProp = b.getClientProperty(BUTTON_TYPE);
    boolean hasBorder = false;

    if (borderProp != null) {
        hasBorder = setButtonType(b, borderProp);
    }
    if (!hasBorder) setThemeBorder(b);

    final Object segmentProp = b.getClientProperty(SEGMENTED_BUTTON_POSITION);
    if (segmentProp != null) {
        final Border border = b.getBorder();
        if (!(border instanceof AquaBorder)) return;

        b.setBorder(AquaButtonExtendedTypes.getBorderForPosition(b, b.getClientProperty(BUTTON_TYPE), segmentProp));
    }
}
 
源代码19 项目: TencentKona-8   文件: DefaultLayoutStyle.java
/**
 * If <code>c</code> is a check box or radio button, and the border is
 * not painted this returns the inset along the specified axis.
 */
public int getButtonGap(JComponent c, int position) {
    String classID = c.getUIClassID();
    if ((classID == "CheckBoxUI" || classID == "RadioButtonUI") &&
            !((AbstractButton)c).isBorderPainted()) {
        Border border = c.getBorder();
        if (border instanceof UIResource) {
            return getInset(c, position);
        }
    }
    return 0;
}
 
源代码20 项目: openjdk-jdk8u-backup   文件: FilterTopComponent.java
private FilterTopComponent() {
    filterSettingsChangedEvent = new ChangedEvent<FilterTopComponent>(this);
    initComponents();
    setName(NbBundle.getMessage(FilterTopComponent.class, "CTL_FilterTopComponent"));
    setToolTipText(NbBundle.getMessage(FilterTopComponent.class, "HINT_FilterTopComponent"));
    //        setIcon(Utilities.loadImage(ICON_PATH, true));

    sequence = new FilterChain();
    filterChain = new FilterChain();
    initFilters();
    manager = new ExplorerManager();
    manager.setRootContext(new AbstractNode(new FilterChildren()));
    associateLookup(ExplorerUtils.createLookup(manager, getActionMap()));
    view = new CheckListView();

    ToolbarPool.getDefault().setPreferredIconSize(16);
    Toolbar toolBar = new Toolbar();
    Border b = (Border) UIManager.get("Nb.Editor.Toolbar.border"); //NOI18N
    toolBar.setBorder(b);
    comboBox = new JComboBox();
    toolBar.add(comboBox);
    this.add(toolBar, BorderLayout.NORTH);
    toolBar.add(SaveFilterSettingsAction.get(SaveFilterSettingsAction.class));
    toolBar.add(RemoveFilterSettingsAction.get(RemoveFilterSettingsAction.class));
    toolBar.addSeparator();
    toolBar.add(MoveFilterUpAction.get(MoveFilterUpAction.class).createContextAwareInstance(this.getLookup()));
    toolBar.add(MoveFilterDownAction.get(MoveFilterDownAction.class).createContextAwareInstance(this.getLookup()));
    toolBar.add(RemoveFilterAction.get(RemoveFilterAction.class).createContextAwareInstance(this.getLookup()));
    toolBar.add(NewFilterAction.get(NewFilterAction.class));
    this.add(view, BorderLayout.CENTER);

    filterSettings = new ArrayList<FilterSetting>();
    updateComboBox();

    comboBox.addActionListener(comboBoxActionListener);
    setChain(filterChain);
}
 
源代码21 项目: jdk8u-jdk   文件: Test6963870.java
void test(String uiName) {
    Border b = UIManager.getBorder(uiName);
    Insets i = b.getBorderInsets(null);
    if (i == null) {
        throw new RuntimeException("getBorderInsets() returns null for " + uiName);
    }
}
 
源代码22 项目: openjdk-jdk9   文件: Test4856008.java
private static void test(Border border, Insets insets) {
    Insets result = border.getBorderInsets(getComponent(border));
    if (insets == result) {
        throw new Error("both instances are the same for " + border.getClass());
    }
    if (!insets.equals(result)) {
        throw new Error("both insets are not equal for " + border.getClass());
    }
}
 
源代码23 项目: netbeans   文件: EnhancedTableCellRenderer.java
public void setBorder(Border border) {
    super.setBorder(border);
    originalBorder = border;

    if (originalBorder != null) {
        originalBorderInsets = originalBorder.getBorderInsets(this);
    }
}
 
源代码24 项目: openjdk-8-source   文件: Test6657026.java
private static Border create(String name) {
    try {
        name = "javax.swing.plaf.metal.MetalBorders$" + name;
        return (Border) Class.forName(name).newInstance();
    }
    catch (Exception exception) {
        throw new Error("unexpected exception", exception);
    }
}
 
源代码25 项目: jdal   文件: FormUtils.java
/**
 * Create Titled Border
 * @param name the title
 * @return Border
 */
public static Border createTitledBorder(String name) {
	Border margin = BorderFactory.createEmptyBorder(10, 10, 10, 10);
	Border title = BorderFactory.createTitledBorder(name);
	
	return BorderFactory.createCompoundBorder(title, margin);
}
 
private Shape createPopupContext() {
	if (entireButtonShowsPopupMenu) {
		return new Rectangle(0, 0, getWidth(), getHeight());
	}

	Border buttonBorder = getBorder();
	Insets borderInsets =
		buttonBorder == null ? new Insets(0, 0, 0, 0) : buttonBorder.getBorderInsets(this);
	int leftIconWidth = primaryIcon.getIconWidth() + (borderInsets.left + borderInsets.right);
	int rightButtonWidth =
		ARROW_WIDTH + ARROW_PADDING + (borderInsets.left + borderInsets.right);
	int height = getIcon().getIconHeight() + borderInsets.top + borderInsets.bottom;
	return new Rectangle(leftIconWidth, 0, rightButtonWidth, height);
}
 
源代码27 项目: consulo   文件: MorphBorder.java
@Nonnull
private Border getBorder() {
  long modificationCount = ourTracker.getModificationCount();
  if (myLastModificationCount == modificationCount) {
    return myLastComputedBorder;
  }

  myLastModificationCount = modificationCount;
  return myLastComputedBorder = myBorderProducer.produce();
}
 
源代码28 项目: openjdk-jdk8u   文件: BasicOptionPaneUI.java
/**
 * Messaged from installComponents to create a Container containing the
 * body of the message. The icon is the created by calling
 * <code>addIcon</code>.
 */
protected Container createMessageArea() {
    JPanel top = new JPanel();
    Border topBorder = (Border)DefaultLookup.get(optionPane, this,
                                         "OptionPane.messageAreaBorder");
    if (topBorder != null) {
        top.setBorder(topBorder);
    }
    top.setLayout(new BorderLayout());

    /* Fill the body. */
    Container          body = new JPanel(new GridBagLayout());
    Container          realBody = new JPanel(new BorderLayout());

    body.setName("OptionPane.body");
    realBody.setName("OptionPane.realBody");

    if (getIcon() != null) {
        JPanel sep = new JPanel();
        sep.setName("OptionPane.separator");
        sep.setPreferredSize(new Dimension(15, 1));
        realBody.add(sep, BorderLayout.BEFORE_LINE_BEGINS);
    }
    realBody.add(body, BorderLayout.CENTER);

    GridBagConstraints cons = new GridBagConstraints();
    cons.gridx = cons.gridy = 0;
    cons.gridwidth = GridBagConstraints.REMAINDER;
    cons.gridheight = 1;
    cons.anchor = DefaultLookup.getInt(optionPane, this,
                  "OptionPane.messageAnchor", GridBagConstraints.CENTER);
    cons.insets = new Insets(0,0,3,0);

    addMessageComponents(body, cons, getMessage(),
                      getMaxCharactersPerLineCount(), false);
    top.add(realBody, BorderLayout.CENTER);

    addIcon(top);
    return top;
}
 
源代码29 项目: openjdk-8-source   文件: WindowsToolBarUI.java
/**
 * {@inheritDoc}
 * @since 1.6
 */
protected Border getRolloverBorder(AbstractButton b) {
    XPStyle xp = XPStyle.getXP();
    if (xp != null) {
        return xp.getBorder(b, WindowsButtonUI.getXPButtonType(b));
    } else {
        return super.getRolloverBorder(b);
    }
}
 
源代码30 项目: jdk8u60   文件: SynthStyle.java
void installDefaults(SynthContext context, SynthUI ui) {
    // Special case the Border as this will likely change when the LAF
    // can have more control over this.
    if (!context.isSubregion()) {
        JComponent c = context.getComponent();
        Border border = c.getBorder();

        if (border == null || border instanceof UIResource) {
            c.setBorder(new SynthBorder(ui, getInsets(context, null)));
        }
    }
    installDefaults(context);
}
 
 类所在包
 同包方法