mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 12:48:00 +00:00
Support horizontal scroll button for option panel
This commit is contained in:
@@ -55,6 +55,18 @@ public class FScrollPane extends SkinnedScrollPane {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setVisible(boolean visible0) {
|
||||||
|
super.setVisible(visible0);
|
||||||
|
if (arrowButtons != null && !visible0) { //ensure arrow buttons hidden if scroll pane hidden
|
||||||
|
for (ArrowButton arrowButton : arrowButtons) {
|
||||||
|
if (arrowButton != null) {
|
||||||
|
FAbsolutePositioner.SINGLETON_INSTANCE.hide(arrowButton);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void paint(Graphics g) {
|
public void paint(Graphics g) {
|
||||||
super.paint(g);
|
super.paint(g);
|
||||||
|
|||||||
@@ -2,21 +2,23 @@ package forge.gui.toolbox.itemmanager.views;
|
|||||||
|
|
||||||
import forge.gui.toolbox.FLabel;
|
import forge.gui.toolbox.FLabel;
|
||||||
import forge.gui.toolbox.FScrollPane;
|
import forge.gui.toolbox.FScrollPane;
|
||||||
|
import forge.gui.toolbox.FScrollPanel;
|
||||||
import forge.gui.toolbox.FSkin;
|
import forge.gui.toolbox.FSkin;
|
||||||
import forge.gui.toolbox.FSkin.SkinColor;
|
import forge.gui.toolbox.FSkin.SkinColor;
|
||||||
import forge.gui.toolbox.FSkin.SkinImage;
|
import forge.gui.toolbox.FSkin.SkinImage;
|
||||||
import forge.gui.toolbox.FSkin.SkinnedPanel;
|
|
||||||
import forge.gui.toolbox.ToolTipListener;
|
import forge.gui.toolbox.ToolTipListener;
|
||||||
import forge.gui.toolbox.itemmanager.ItemManager;
|
import forge.gui.toolbox.itemmanager.ItemManager;
|
||||||
import forge.gui.toolbox.itemmanager.ItemManagerModel;
|
import forge.gui.toolbox.itemmanager.ItemManagerModel;
|
||||||
import forge.item.InventoryItem;
|
import forge.item.InventoryItem;
|
||||||
import net.miginfocom.swing.MigLayout;
|
import net.miginfocom.swing.MigLayout;
|
||||||
|
|
||||||
import org.apache.commons.lang3.CharUtils;
|
import org.apache.commons.lang3.CharUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import javax.swing.event.ListSelectionEvent;
|
import javax.swing.event.ListSelectionEvent;
|
||||||
import javax.swing.event.ListSelectionListener;
|
import javax.swing.event.ListSelectionListener;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
import java.awt.event.*;
|
import java.awt.event.*;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -30,7 +32,11 @@ public abstract class ItemView<T extends InventoryItem> {
|
|||||||
protected final ItemManagerModel<T> model;
|
protected final ItemManagerModel<T> model;
|
||||||
private final FScrollPane scroller;
|
private final FScrollPane scroller;
|
||||||
private final FLabel button;
|
private final FLabel button;
|
||||||
private final SkinnedPanel pnlOptions = new SkinnedPanel(new MigLayout("insets 3 1 0 1, gap 3 4, hidemode 3"));
|
private final FScrollPanel pnlOptions = new FScrollPanel(
|
||||||
|
new MigLayout("insets 3 1 0 1, gap 3 4, hidemode 3"), true,
|
||||||
|
ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER,
|
||||||
|
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
|
||||||
|
|
||||||
private int heightBackup;
|
private int heightBackup;
|
||||||
private boolean isIncrementalSearchActive = false;
|
private boolean isIncrementalSearchActive = false;
|
||||||
|
|
||||||
@@ -105,7 +111,7 @@ public abstract class ItemView<T extends InventoryItem> {
|
|||||||
return this.scroller;
|
return this.scroller;
|
||||||
}
|
}
|
||||||
|
|
||||||
public SkinnedPanel getPnlOptions() {
|
public FScrollPanel getPnlOptions() {
|
||||||
return pnlOptions;
|
return pnlOptions;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user