Destiny.Lin
3 months ago
53 changed files with 305 additions and 270 deletions
@ -0,0 +1,53 @@ |
|||||||
|
package com.fr.design.gui.ibutton; |
||||||
|
|
||||||
|
import com.fine.swing.ui.layout.Row; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
import static com.fine.theme.utils.FineClientProperties.BUTTON_GROUP_POSITION; |
||||||
|
import static com.fine.theme.utils.FineClientProperties.BUTTON_TYPE_GROUP_FIT; |
||||||
|
import static com.formdev.flatlaf.FlatClientProperties.BUTTON_TYPE; |
||||||
|
|
||||||
|
|
||||||
|
/** |
||||||
|
* 自适应文案宽度的ButtonGroup |
||||||
|
* |
||||||
|
* @author Levy.Xie |
||||||
|
* @since 11.0 |
||||||
|
* Created on 2024/08/28 |
||||||
|
*/ |
||||||
|
public class FitUIButtonGroup<T> extends UIButtonGroup<T> { |
||||||
|
|
||||||
|
public FitUIButtonGroup(String[] textArray) { |
||||||
|
super(textArray); |
||||||
|
} |
||||||
|
|
||||||
|
public FitUIButtonGroup(String[] textArray, T[] objects) { |
||||||
|
super(textArray, objects); |
||||||
|
} |
||||||
|
|
||||||
|
public FitUIButtonGroup(String[] textArray, T[] objects, int[] customCols) { |
||||||
|
super(textArray, objects, customCols); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected void initLayout(int[] cols, boolean inToolbar) { |
||||||
|
Row row = new Row(); |
||||||
|
List<UIToggleButton> buttonList = getLabelButtonList(); |
||||||
|
for (int i = 0; i < buttonList.size(); i++) { |
||||||
|
row.add(buttonList.get(i)); |
||||||
|
if (i != buttonList.size() - 1 && !inToolbar) { |
||||||
|
row.add(createDivider()); |
||||||
|
} |
||||||
|
} |
||||||
|
add(row); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
protected void initButton(UIToggleButton labelButton, int index) { |
||||||
|
labelButton.setBorderPainted(false); |
||||||
|
labelButton.putClientProperty(BUTTON_TYPE, BUTTON_TYPE_GROUP_FIT); |
||||||
|
labelButton.putClientProperty(BUTTON_GROUP_POSITION, getGroupButtonPosition(index)); |
||||||
|
labelButtonList.add(labelButton); |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue