diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/AbstractOnlineWidgetShowPane.java b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/AbstractOnlineWidgetShowPane.java index 1e5899f46..ef61c1e94 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/AbstractOnlineWidgetShowPane.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/AbstractOnlineWidgetShowPane.java @@ -43,6 +43,7 @@ public abstract class AbstractOnlineWidgetShowPane extends JPanel { protected FilterPane filterPane; private JPanel centerPane; private SortTabPane sortTabPane; + private JPanel toolBarPane; private final JPanel loadingPane = new LoadingPane(); @@ -77,10 +78,10 @@ public abstract class AbstractOnlineWidgetShowPane extends JPanel { FlexSearchFieldPane flexSearchPane = new FlexSearchFieldPane(filterPane); initSearchTextFieldPaneListener(flexSearchPane); - JPanel northPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); - northPane.add(flexSearchPane, BorderLayout.CENTER); - northPane.add(sortTabPane, BorderLayout.SOUTH); - initNorthPane(jPanel, northPane); + toolBarPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); + toolBarPane.add(flexSearchPane, BorderLayout.CENTER); + toolBarPane.add(sortTabPane, BorderLayout.SOUTH); + initNorthPane(jPanel, toolBarPane); this.searchResultShowPane = initSearchResultShowPane(sharableWidgetProviders); mainCardLayout = new CardLayout(); @@ -93,10 +94,15 @@ public abstract class AbstractOnlineWidgetShowPane extends JPanel { return jPanel; } + protected void initNorthPane(JPanel jPanel, JPanel northPane) { jPanel.add(northPane, BorderLayout.NORTH); } + public void setToolBarPaneVisible(boolean flag){ + this.toolBarPane.setVisible(flag); + } + protected AbstractOnlineWidgetSelectPane createOnlineWidgetSelectPane(OnlineShareWidget[] sharableWidgetProviders) { return new OnlineWidgetSelectPane(sharableWidgetProviders, filterPane, 50); diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/embed/EmbedPane.java b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/embed/EmbedPane.java index 825eb22a5..c9562b1da 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/embed/EmbedPane.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/embed/EmbedPane.java @@ -60,7 +60,7 @@ public class EmbedPane extends JPanel { private JPanel initCenterPane(OnlineEmbedFilterShowPane showPane) { JPanel jPanel = new JPanel(FRGUIPaneFactory.createBorderLayout()); jPanel.setBackground(Color.WHITE); - jPanel.setBorder(BorderFactory.createEmptyBorder(5, 0, 5, 0)); + jPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 0)); FilterConfigPane filterConfigPane = new FilterConfigPane(OnlineShopUtils.getEmbPaneShowFilterTypeInfos(), false) { @Override @@ -184,7 +184,7 @@ public class EmbedPane extends JPanel { @Override public void paint(Graphics g) { - AlphaComposite composite = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha); + AlphaComposite composite = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, Math.max(0, alpha)); ((Graphics2D) g).setComposite(composite); super.paint(g); if (image != null) { diff --git a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/embed/OnlineEmbedFilterShowPane.java b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/embed/OnlineEmbedFilterShowPane.java index 62adbb76e..640d84d73 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/embed/OnlineEmbedFilterShowPane.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/share/ui/online/embed/OnlineEmbedFilterShowPane.java @@ -22,13 +22,22 @@ public class OnlineEmbedFilterShowPane extends JPanel { embedPane = new EmbedPane(this); embedPane.setLocation(10, 0); embedPane.setSize(228, embedPane.getPreferredSize().height); - this.add(embedPane); + this.add(embedPane, BorderLayout.NORTH); this.onlineWidgetShowPane = onlineWidgetShowPane; + this.onlineWidgetShowPane.setToolBarPaneVisible(false); this.add(onlineWidgetShowPane, BorderLayout.CENTER); } public void filterStateChanged(String filterStr) { + this.removeAll(); + this.add(embedPane); + this.add(onlineWidgetShowPane, BorderLayout.CENTER); + this.validate(); + this.doLayout(); + this.repaint(); + onlineWidgetShowPane.setToolBarPaneVisible(true); selectPane = onlineWidgetShowPane.animate(filterStr); + } public void animate(List selectedFilters) throws InterruptedException {