Search in sources :

Example 1 with CleanupTask

use of com.github.weisj.darklaf.util.value.CleanupTask in project darklaf by weisJ.

the class DarkButtonUI method getPreferredSize.

@Override
public Dimension getPreferredSize(final JComponent c) {
    AbstractButton b = (AbstractButton) c;
    try (CleanupTask clean = prepareDelegate(b)) {
        Dimension dim = BasicGraphicsUtils.getPreferredButtonSize(layoutDelegate, b.getIconTextGap());
        DarkUIUtil.addInsets(dim, b.getMargin());
        if (ButtonConstants.isSquare(b)) {
            int size = Math.max(dim.width, dim.height);
            dim.setSize(size, size);
        }
        return dim;
    }
}
Also used : CleanupTask(com.github.weisj.darklaf.util.value.CleanupTask)

Example 2 with CleanupTask

use of com.github.weisj.darklaf.util.value.CleanupTask in project darklaf by weisJ.

the class DarkButtonUI method paint.

@Override
public void paint(final Graphics g, final JComponent c) {
    validateLayout();
    GraphicsContext config = new GraphicsContext(g);
    AbstractButton b = (AbstractButton) c;
    try (CleanupTask clean = prepareDelegate(b)) {
        paintButtonBackground(g, c);
        paintIcon(g, b, c);
        config.restoreClip();
        paintText(g, b, displayText);
    }
}
Also used : GraphicsContext(com.github.weisj.darklaf.util.graphics.GraphicsContext) CleanupTask(com.github.weisj.darklaf.util.value.CleanupTask)

Example 3 with CleanupTask

use of com.github.weisj.darklaf.util.value.CleanupTask in project darklaf by weisJ.

the class DarkButtonUI method prepareDelegate.

protected CleanupTask prepareDelegate(final AbstractButton b) {
    CleanupTask closeable = layoutDelegate.useWithDelegate(b);
    Font f = b.getFont();
    if (ButtonConstants.isDefaultButton(b) && !f.isBold()) {
        layoutDelegate.setFont(f.deriveFont(Font.BOLD));
    } else {
        layoutDelegate.setFont(f);
    }
    return closeable;
}
Also used : CleanupTask(com.github.weisj.darklaf.util.value.CleanupTask)

Aggregations

CleanupTask (com.github.weisj.darklaf.util.value.CleanupTask)3 GraphicsContext (com.github.weisj.darklaf.util.graphics.GraphicsContext)1