Browse Source

REPORT-56548 主题切换-主题色

research/11.0
kerry 3 years ago
parent
commit
6f38809306
  1. 5
      designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java
  2. 18
      designer-base/src/main/java/com/fr/design/gui/ibutton/UIColorButton.java
  3. 36
      designer-base/src/main/java/com/fr/design/gui/ibutton/UINoThemeColorButton.java
  4. 17
      designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java
  5. 5
      designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ColorBackgroundQuickPane.java
  6. 53
      designer-base/src/main/java/com/fr/design/mainframe/predefined/ui/detail/background/ColorDetailPane.java
  7. 2
      designer-base/src/main/java/com/fr/design/report/WatermarkPane.java
  8. 6
      designer-base/src/main/java/com/fr/design/style/CustomSelectBox.java
  9. 9
      designer-base/src/main/java/com/fr/design/style/background/BackgroundPane.java
  10. 6
      designer-base/src/main/java/com/fr/design/style/background/impl/ColorBackgroundPane.java
  11. 10
      designer-base/src/main/java/com/fr/design/style/background/impl/ColorNoThemeBackgroundPane.java
  12. 7
      designer-base/src/main/java/com/fr/design/style/color/ColorAdjustPane.java
  13. 10
      designer-base/src/main/java/com/fr/design/style/color/ColorButton.java
  14. 12
      designer-base/src/main/java/com/fr/design/style/color/ColorControlWindow.java
  15. 2
      designer-base/src/main/java/com/fr/design/style/color/ColorControlWindowWithAuto.java
  16. 12
      designer-base/src/main/java/com/fr/design/style/color/ColorSelectBox.java
  17. 14
      designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java
  18. 1
      designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java
  19. 1
      designer-base/src/main/java/com/fr/design/style/color/ColorSelectPane.java
  20. 10
      designer-base/src/main/java/com/fr/design/style/color/DetailColorSelectPane.java
  21. 24
      designer-base/src/main/java/com/fr/design/style/color/FineColorCell.java
  22. 4
      designer-base/src/main/java/com/fr/design/style/color/NewColorSelectBox.java
  23. 237
      designer-base/src/main/java/com/fr/design/style/color/NewColorSelectPane.java
  24. 4
      designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ColorSelectBoxWithOutTransparent.java
  25. 16
      designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ColorSelectPaneWithOutTransparent.java
  26. 22
      designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane4Map.java
  27. 12
      designer-realize/src/main/java/com/fr/design/actions/server/ServerConfigManagerAction.java
  28. 3
      designer-realize/src/main/java/com/fr/design/webattr/WriteToolBarPane.java

5
designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java

@ -12,6 +12,7 @@ import com.fr.design.editor.editor.IntegerEditor;
import com.fr.design.gui.frpane.UITabbedPane; import com.fr.design.gui.frpane.UITabbedPane;
import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.ibutton.UIColorButton; import com.fr.design.gui.ibutton.UIColorButton;
import com.fr.design.gui.ibutton.UINoThemeColorButton;
import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.icheckbox.UICheckBox;
import com.fr.design.gui.icombobox.UIComboBox; import com.fr.design.gui.icombobox.UIComboBox;
import com.fr.design.gui.icombobox.UIDictionaryComboBox; import com.fr.design.gui.icombobox.UIDictionaryComboBox;
@ -457,10 +458,10 @@ public class PreferencePane extends BasicPane {
JPanel colorSettingPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Preference_Setting_Colors")); JPanel colorSettingPane = FRGUIPaneFactory.createTitledBorderPane(i18nText("Fine-Design_Basic_Preference_Setting_Colors"));
generalPane.add(colorSettingPane); generalPane.add(colorSettingPane);
gridLineColorTBButton = new UIColorButton(IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png")); gridLineColorTBButton = new UINoThemeColorButton(IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png"));
gridLineColorTBButton.setEnabled(this.isEnabled()); gridLineColorTBButton.setEnabled(this.isEnabled());
paginationLineColorTBButton = new UIColorButton(IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png")); paginationLineColorTBButton = new UINoThemeColorButton(IOUtils.readIcon("/com/fr/design/images/gui/color/foreground.png"));
paginationLineColorTBButton.setEnabled(this.isEnabled()); paginationLineColorTBButton.setEnabled(this.isEnabled());
JPanel leftPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane(); JPanel leftPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();

18
designer-base/src/main/java/com/fr/design/gui/ibutton/UIColorButton.java

@ -154,18 +154,22 @@ public class UIColorButton extends UIButton implements PopupHider, UIObserver, G
protected ColorControlWindow getColorControlWindow() { protected ColorControlWindow getColorControlWindow() {
//find parant. //find parant.
if (this.popupWin == null) { if (this.popupWin == null) {
this.popupWin = new ColorControlWindow(UIColorButton.this) { this.popupWin = initColorControlWindow();
@Override
protected void colorChanged() {
UIColorButton.this.setColor(this.getColor());
}
};
} }
return popupWin; return popupWin;
} }
protected ColorControlWindow initColorControlWindow(){
return new ColorControlWindow(UIColorButton.this) {
@Override
protected void colorChanged() {
UIColorButton.this.setColor(this.getColor());
}
};
}
/** /**
* 添加监听 * 添加监听
* *

36
designer-base/src/main/java/com/fr/design/gui/ibutton/UINoThemeColorButton.java

@ -0,0 +1,36 @@
package com.fr.design.gui.ibutton;
import com.fr.design.gui.ipoppane.PopupHider;
import com.fr.design.style.color.ColorControlWindow;
import javax.swing.Icon;
public class UINoThemeColorButton extends UIColorButton{
public UINoThemeColorButton(Icon icon) {
super(icon);
}
protected ColorControlWindow initColorControlWindow(){
return new NoThemeColorControlWindow(this);
}
private class NoThemeColorControlWindow extends ColorControlWindow{
public NoThemeColorControlWindow(PopupHider popupHider) {
super(popupHider);
}
protected boolean supportThemeColor(){
return false;
}
@Override
protected void colorChanged() {
UINoThemeColorButton.this.setColor(this.getColor());
}
}
}

17
designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java

@ -177,6 +177,8 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta
//用于判断设计器是否打开了 //用于判断设计器是否打开了
private boolean designerOpened = false; private boolean designerOpened = false;
private boolean serverConfig = false;
private int contentWidth = (int) (java.awt.Toolkit.getDefaultToolkit().getScreenSize().getWidth()); private int contentWidth = (int) (java.awt.Toolkit.getDefaultToolkit().getScreenSize().getWidth());
private int contentHeight = (int) (java.awt.Toolkit.getDefaultToolkit().getScreenSize().getHeight()); private int contentHeight = (int) (java.awt.Toolkit.getDefaultToolkit().getScreenSize().getHeight());
@ -1339,4 +1341,19 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta
return designerOpened; return designerOpened;
} }
/**
* 判断是否正在进行服务器配置
* @return boolean
*/
public boolean isServerConfig() {
return serverConfig;
}
/**
* 设置是否正在进行服务器配置
* @param serverConfig
*/
public void setServerConfig(boolean serverConfig) {
this.serverConfig = serverConfig;
}
} }

5
designer-base/src/main/java/com/fr/design/mainframe/backgroundpane/ColorBackgroundQuickPane.java

@ -6,9 +6,6 @@ import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.style.color.NewColorSelectPane; import com.fr.design.style.color.NewColorSelectPane;
import com.fr.general.Background; import com.fr.general.Background;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import java.awt.BorderLayout; import java.awt.BorderLayout;
import java.awt.Color; import java.awt.Color;
@ -23,7 +20,7 @@ public class ColorBackgroundQuickPane extends BackgroundQuickPane {
public ColorBackgroundQuickPane() { public ColorBackgroundQuickPane() {
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());
detailColorSelectPane = new NewColorSelectPane(); detailColorSelectPane = new NewColorSelectPane(false);
this.add(detailColorSelectPane, BorderLayout.NORTH); this.add(detailColorSelectPane, BorderLayout.NORTH);
} }

53
designer-base/src/main/java/com/fr/design/mainframe/predefined/ui/detail/background/ColorDetailPane.java

@ -3,20 +3,10 @@ package com.fr.design.mainframe.predefined.ui.detail.background;
import com.fr.base.background.ColorBackground; import com.fr.base.background.ColorBackground;
import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserver;
import com.fr.design.event.UIObserverListener; import com.fr.design.event.UIObserverListener;
import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.ilable.UILabel;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.style.color.NewColorSelectPane;
import com.fr.design.style.color.ColorSelectPane;
import com.fr.general.Background; import com.fr.general.Background;
import javax.swing.BorderFactory;
import javax.swing.JPanel;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import java.awt.BorderLayout; import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Dimension;
/** /**
* Created by kerry on 2020-08-31 * Created by kerry on 2020-08-31
@ -50,48 +40,9 @@ public class ColorDetailPane extends AbstractBackgroundDetailPane<ColorBackgroun
return background instanceof ColorBackground; return background instanceof ColorBackground;
} }
class ColorBackgroundSelectPane extends ColorSelectPane implements UIObserver { class ColorBackgroundSelectPane extends NewColorSelectPane implements UIObserver {
protected UIObserverListener uiObserverListener; protected UIObserverListener uiObserverListener;
protected void initialCompents(boolean isSupportTransparent) {
this.setLayout(FRGUIPaneFactory.createBorderLayout());
this.setBorder(BorderFactory.createEmptyBorder());
if (isSupportTransparent) {
this.add(createNorthPane(), BorderLayout.NORTH);
}
JPanel centerPane = createCenterPane();
this.add(centerPane, BorderLayout.CENTER);
this.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
if (uiObserverListener != null) {
uiObserverListener.doChange();
}
}
});
}
private JPanel createNorthPane() {
// UIButton transpanrentBtn = createTranspanrentButton();
UIButton transpanrentBtn = new UIButton();
transpanrentBtn.setPreferredSize(new Dimension(160, 20));
JPanel jPanel = TableLayoutHelper.createGapTableLayoutPane(
new Component[][]{new Component[]{new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Background_Color")),
transpanrentBtn}}, TableLayoutHelper.FILL_NONE, 33, 5);
jPanel.setBorder(BorderFactory.createEmptyBorder(5, 0, 5, 10));
return jPanel;
}
protected JPanel createCenterPane() {
// JPanel centerPane = super.createCenterPane();
JPanel centerPane = new JPanel();
JPanel jPanel = TableLayoutHelper.createGapTableLayoutPane(
new Component[][]{new Component[]{new UILabel(" "), centerPane}}, TableLayoutHelper.FILL_NONE, 33, 5);
jPanel.setBorder(BorderFactory.createEmptyBorder(5, 0, 5, 10));
return jPanel;
}
@Override @Override
public void registerChangeListener(UIObserverListener listener) { public void registerChangeListener(UIObserverListener listener) {
this.uiObserverListener = listener; this.uiObserverListener = listener;

2
designer-base/src/main/java/com/fr/design/report/WatermarkPane.java

@ -163,7 +163,7 @@ public class WatermarkPane extends BasicPane {
tipsJp.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Direction_Vertical"), SwingConstants.CENTER)); tipsJp.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Direction_Vertical"), SwingConstants.CENTER));
watermarkGapTipsPane.add(tipsJp, BorderLayout.CENTER); watermarkGapTipsPane.add(tipsJp, BorderLayout.CENTER);
colorPane = new NewColorSelectPane(); colorPane = new NewColorSelectPane(false);
JPanel colorLabelPane = FRGUIPaneFactory.createBorderLayout_S_Pane(); JPanel colorLabelPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
colorLabelPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Text_Color")), BorderLayout.NORTH); colorLabelPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Text_Color")), BorderLayout.NORTH);

6
designer-base/src/main/java/com/fr/design/style/CustomSelectBox.java

@ -11,7 +11,7 @@ import javax.swing.event.ChangeListener;
import com.fr.base.background.ColorBackground; import com.fr.base.background.ColorBackground;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.style.background.BackgroundCustomJComponent; import com.fr.design.style.background.BackgroundCustomJComponent;
import com.fr.design.style.color.ColorSelectPane; import com.fr.design.style.color.NewColorSelectPane;
/** /**
@ -40,11 +40,11 @@ public class CustomSelectBox extends AbstractPopBox {
@Override @Override
public JPanel initWindowPane(double preferredWidth) { public JPanel initWindowPane(double preferredWidth) {
ColorSelectPane colorPane = new ColorSelectPane(); NewColorSelectPane colorPane = new NewColorSelectPane();
colorPane.addChangeListener(new ChangeListener() { colorPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) { public void stateChanged(ChangeEvent e) {
ColorSelectPane source = (ColorSelectPane)e.getSource(); NewColorSelectPane source = (NewColorSelectPane)e.getSource();
setSelectObject(source.getColor()); setSelectObject(source.getColor());
hidePopupMenu(); hidePopupMenu();
} }

9
designer-base/src/main/java/com/fr/design/style/background/BackgroundPane.java

@ -8,6 +8,7 @@ import java.awt.Dimension;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import com.fr.base.background.ColorBackground;
import com.fr.design.gui.frpane.UITabbedPane; import com.fr.design.gui.frpane.UITabbedPane;
import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeEvent;
@ -16,6 +17,9 @@ import javax.swing.event.EventListenerList;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.BasicPane;
import com.fr.design.mainframe.DesignerContext;
import com.fr.design.style.background.impl.ColorBackgroundPane;
import com.fr.design.style.background.impl.ColorNoThemeBackgroundPane;
import com.fr.general.Background; import com.fr.general.Background;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
@ -27,14 +31,15 @@ public class BackgroundPane extends BasicPane {
private EventListenerList eventChangeList = new EventListenerList(); private EventListenerList eventChangeList = new EventListenerList();
protected Map<Integer, BackgroundDetailPane> cacheMap = new HashMap<>(); protected Map<Integer, BackgroundDetailPane> cacheMap = new HashMap<>();
//需求说: 如果是浏览器背景, 隐藏掉几个button //需求说: 如果是浏览器背景, 隐藏掉几个button
public BackgroundPane() { public BackgroundPane() {
BackgroundFactory.getWrapper(ColorBackground.class).setType(
DesignerContext.getDesignerFrame().isServerConfig() ? ColorNoThemeBackgroundPane.class : ColorBackgroundPane.class);
this.initComponents(); this.initComponents();
this.setPreferredSize(new Dimension(400, 300)); this.setPreferredSize(new Dimension(400, 300));
} }
protected void initComponents() { protected void initComponents() {
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());

6
designer-base/src/main/java/com/fr/design/style/background/impl/ColorBackgroundPane.java

@ -19,10 +19,14 @@ public class ColorBackgroundPane extends BackgroundDetailPane {
public ColorBackgroundPane() { public ColorBackgroundPane() {
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());
detailColorSelectPane = new DetailColorSelectPane(); detailColorSelectPane = createColorSelectPane();
this.add(detailColorSelectPane, BorderLayout.CENTER); this.add(detailColorSelectPane, BorderLayout.CENTER);
} }
protected DetailColorSelectPane createColorSelectPane(){
return new DetailColorSelectPane();
}
public void populate(Background background) { public void populate(Background background) {
if (background instanceof ColorBackground) { if (background instanceof ColorBackground) {
ColorBackground colorBackgroud = (ColorBackground) background; ColorBackground colorBackgroud = (ColorBackground) background;

10
designer-base/src/main/java/com/fr/design/style/background/impl/ColorNoThemeBackgroundPane.java

@ -0,0 +1,10 @@
package com.fr.design.style.background.impl;
import com.fr.design.style.color.DetailColorSelectPane;
public class ColorNoThemeBackgroundPane extends ColorBackgroundPane{
protected DetailColorSelectPane createColorSelectPane(){
return new DetailColorSelectPane(false);
}
}

7
designer-base/src/main/java/com/fr/design/style/color/ColorAdjustPane.java

@ -202,10 +202,7 @@ public class ColorAdjustPane extends JPanel implements UIObserver {
public JPanel initWindowPane(double preferredWidth) { public JPanel initWindowPane(double preferredWidth) {
// 下拉的时候重新生成面板,刷新最近使用颜色 // 下拉的时候重新生成面板,刷新最近使用颜色
ColorSelectPane colorPane = new ColorSelectPane(false) { NewColorSelectPane colorPane = new NewColorSelectPane(false) {
public void setVisible(boolean b) {
super.setVisible(b);
}
protected boolean selectRealTime() { protected boolean selectRealTime() {
return false; return false;
@ -214,7 +211,7 @@ public class ColorAdjustPane extends JPanel implements UIObserver {
colorPane.addChangeListener(new ChangeListener() { colorPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) { public void stateChanged(ChangeEvent e) {
hidePopupMenu(); hidePopupMenu();
Color color = ((ColorSelectPane) e.getSource()).getColor(); Color color = ((NewColorSelectPane) e.getSource()).getColor();
fireDisplayComponent(ColorBackground.getInstance(color)); fireDisplayComponent(ColorBackground.getInstance(color));
if(colorButtons.size() < MAX_BUTTON) { if(colorButtons.size() < MAX_BUTTON) {
colorButtons.add(createColorButton(color)); colorButtons.add(createColorButton(color));

10
designer-base/src/main/java/com/fr/design/style/color/ColorButton.java

@ -34,7 +34,7 @@ public class ColorButton extends AbstractSelectBox<Color> {
private boolean isMoveOn = false; private boolean isMoveOn = false;
private ColorSelectPane colorPane; private NewColorSelectPane colorPane;
private boolean lastButton; private boolean lastButton;
@ -121,11 +121,7 @@ public class ColorButton extends AbstractSelectBox<Color> {
public JPanel initWindowPane(double preferredWidth) { public JPanel initWindowPane(double preferredWidth) {
// 下拉的时候重新生成面板,刷新最近使用颜色 // 下拉的时候重新生成面板,刷新最近使用颜色
colorPane = new ColorSelectPane(false) { colorPane = new NewColorSelectPane(false) {
@Override
public void setVisible(boolean b) {
super.setVisible(b);
}
@Override @Override
protected boolean selectRealTime() { protected boolean selectRealTime() {
@ -135,7 +131,7 @@ public class ColorButton extends AbstractSelectBox<Color> {
colorPane.addChangeListener(new ChangeListener() { colorPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) { public void stateChanged(ChangeEvent e) {
hidePopupMenu(); hidePopupMenu();
color = ((ColorSelectPane) e.getSource()).getColor(); color = ((NewColorSelectPane) e.getSource()).getColor();
fireDisplayComponent(ColorBackground.getInstance(color)); fireDisplayComponent(ColorBackground.getInstance(color));
ColorButton.this.stateChanged(); ColorButton.this.stateChanged();
} }

12
designer-base/src/main/java/com/fr/design/style/color/ColorControlWindow.java

@ -58,15 +58,19 @@ public abstract class ColorControlWindow extends JPopupMenu {
} }
protected void initSelectionPopupPane(boolean isSupportTransparent) { protected void initSelectionPopupPane(boolean isSupportTransparent) {
selectionPopupPane = new ColorSelectionPopupPane(isSupportTransparent); selectionPopupPane = new ColorSelectionPopupPane(isSupportTransparent, supportThemeColor());
this.add(selectionPopupPane, BorderLayout.CENTER); this.add(selectionPopupPane, BorderLayout.CENTER);
} }
protected boolean supportThemeColor(){
return true;
}
class ColorSelectionPopupPane extends NewColorSelectPane { class ColorSelectionPopupPane extends NewColorSelectPane {
private static final long serialVersionUID = 7822856562329146354L; private static final long serialVersionUID = 7822856562329146354L;
public ColorSelectionPopupPane(boolean isSupportTransparent) { public ColorSelectionPopupPane(boolean isSupportTransparent, boolean isSupportThemeColor) {
super(isSupportTransparent); super(isSupportTransparent, isSupportThemeColor);
this.addChangeListener(new ChangeListener() { this.addChangeListener(new ChangeListener() {
@Override @Override
@ -77,7 +81,7 @@ public abstract class ColorControlWindow extends JPopupMenu {
} }
@Override @Override
protected void doTransparent() { public void doTransparent() {
popupHider.hidePopupMenu(); popupHider.hidePopupMenu();
super.doTransparent(); super.doTransparent();
} }

2
designer-base/src/main/java/com/fr/design/style/color/ColorControlWindowWithAuto.java

@ -61,7 +61,7 @@ public abstract class ColorControlWindowWithAuto extends ColorControlWindow {
}); });
} }
protected void doTransparent() { public void doTransparent() {
getPopupHider().hidePopupMenu(); getPopupHider().hidePopupMenu();
setColor(null); setColor(null);
} }

12
designer-base/src/main/java/com/fr/design/style/color/ColorSelectBox.java

@ -17,7 +17,7 @@ public class ColorSelectBox extends AbstractSelectBox<Color> implements UIObserv
private static final long serialVersionUID = 2782150678943960557L; private static final long serialVersionUID = 2782150678943960557L;
private Color color; private Color color;
private ColorSelectPane colorPane; private NewColorSelectPane colorPane;
private UIObserverListener uiObserverListener; private UIObserverListener uiObserverListener;
public ColorSelectBox(int preferredWidth) { public ColorSelectBox(int preferredWidth) {
@ -40,12 +40,8 @@ public class ColorSelectBox extends AbstractSelectBox<Color> implements UIObserv
} }
} }
protected ColorSelectPane getColorSelectPane(){ protected NewColorSelectPane getColorSelectPane(){
return new ColorSelectPane() { return new NewColorSelectPane();
public void setVisible(boolean b) {
super.setVisible(b);
}
};
} }
/** /**
@ -59,7 +55,7 @@ public class ColorSelectBox extends AbstractSelectBox<Color> implements UIObserv
colorPane.addChangeListener(new ChangeListener() { colorPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) { public void stateChanged(ChangeEvent e) {
hidePopupMenu(); hidePopupMenu();
color = ((ColorSelectPane) e.getSource()).getColor(); color = ((NewColorSelectPane) e.getSource()).getColor();
fireDisplayComponent(ColorBackground.getInstance(color)); fireDisplayComponent(ColorBackground.getInstance(color));
} }
}); });

14
designer-base/src/main/java/com/fr/design/style/color/ColorSelectDetailPane.java

@ -36,6 +36,10 @@ public class ColorSelectDetailPane extends BasicPane {
return selectedPanel; return selectedPanel;
} }
private SwatchChooserPanel swatchChooserPanel;
private CustomChooserPanel customChooserPanel;
public void setSelectedPanel(JColorChooser selectedPanel) { public void setSelectedPanel(JColorChooser selectedPanel) {
this.selectedPanel = selectedPanel; this.selectedPanel = selectedPanel;
} }
@ -69,9 +73,9 @@ public class ColorSelectDetailPane extends BasicPane {
selectedPanel.setPreferredSize(new Dimension(selectedPanel.getWidth(), SELECT_PANEL_HEIGHT)); selectedPanel.setPreferredSize(new Dimension(selectedPanel.getWidth(), SELECT_PANEL_HEIGHT));
selectedPanel.setPreviewPanel(new JPanel()); selectedPanel.setPreviewPanel(new JPanel());
AbstractColorChooserPanel swatchChooserPanel = new SwatchChooserPanel(); swatchChooserPanel = new SwatchChooserPanel();
AbstractColorChooserPanel customChooserPanel = new CustomChooserPanel(); customChooserPanel = new CustomChooserPanel();
selectedPanel.setChooserPanels(new AbstractColorChooserPanel[]{swatchChooserPanel, customChooserPanel}); selectedPanel.setChooserPanels(new AbstractColorChooserPanel[]{customChooserPanel, swatchChooserPanel});
this.add(selectedPanel, BorderLayout.NORTH); this.add(selectedPanel, BorderLayout.NORTH);
// 最近使用面板 // 最近使用面板
@ -98,4 +102,8 @@ public class ColorSelectDetailPane extends BasicPane {
previewPanel.add(colorChooserPreview); previewPanel.add(colorChooserPreview);
this.add(previewPanel, BorderLayout.SOUTH); this.add(previewPanel, BorderLayout.SOUTH);
} }
public void populate(Color color){
customChooserPanel.setColor(color);
}
} }

1
designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java

@ -77,6 +77,7 @@ public class ColorSelectDialog extends MiddleChartDialog{
this.okListener = (ColorTracker) okListener; this.okListener = (ColorTracker) okListener;
this.seletePane = seletePane; this.seletePane = seletePane;
initComponent(); initComponent();
this.pane.populate(initialColor);
} }
private void initComponent() { private void initComponent() {

1
designer-base/src/main/java/com/fr/design/style/color/ColorSelectPane.java

@ -30,6 +30,7 @@ import java.awt.event.MouseEvent;
/** /**
* The pane used to select color * The pane used to select color
*/ */
@Deprecated
public class ColorSelectPane extends TransparentPane implements ColorSelectable { public class ColorSelectPane extends TransparentPane implements ColorSelectable {
private static final long serialVersionUID = -8634152305687249392L; private static final long serialVersionUID = -8634152305687249392L;

10
designer-base/src/main/java/com/fr/design/style/color/DetailColorSelectPane.java

@ -29,10 +29,14 @@ import com.fr.design.dialog.BasicPane;
* Often used for foreground selection. * Often used for foreground selection.
*/ */
public class DetailColorSelectPane extends BasicPane { public class DetailColorSelectPane extends BasicPane {
private ColorSelectPane colorSelectPane; private NewColorSelectPane colorSelectPane;
private UILabel colorPreviewLabel; private UILabel colorPreviewLabel;
public DetailColorSelectPane() { public DetailColorSelectPane(){
this(true);
}
public DetailColorSelectPane(boolean supportTheme) {
this.setBorder(BorderFactory.createEmptyBorder(4, 4, 0, 4)); this.setBorder(BorderFactory.createEmptyBorder(4, 4, 0, 4));
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());
@ -44,7 +48,7 @@ public class DetailColorSelectPane extends BasicPane {
defaultPane.add(Box.createHorizontalStrut(4)); defaultPane.add(Box.createHorizontalStrut(4));
JPanel colorSelectContainPane =FRGUIPaneFactory.createBorderLayout_L_Pane(); JPanel colorSelectContainPane =FRGUIPaneFactory.createBorderLayout_L_Pane();
defaultPane.add(colorSelectContainPane); defaultPane.add(colorSelectContainPane);
colorSelectPane = new ColorSelectPane(); colorSelectPane = NewColorSelectPane.createColorSelectPaneWithTheme(supportTheme);
colorSelectContainPane.add(colorSelectPane, BorderLayout.NORTH); colorSelectContainPane.add(colorSelectPane, BorderLayout.NORTH);
defaultPane.add(Box.createHorizontalStrut(8)); defaultPane.add(Box.createHorizontalStrut(8));

24
designer-base/src/main/java/com/fr/design/style/color/FineColorCell.java

@ -0,0 +1,24 @@
package com.fr.design.style.color;
import com.fr.base.FineColor;
import java.awt.Color;
public class FineColorCell extends ColorCell {
private final int x;
private final int y;
public FineColorCell(Color color, ColorSelectable colorSelectable, int x, int y) {
super(color, colorSelectable);
this.x = x;
this.y = y;
}
public Color getColor() {
Color color = super.getColor();
FineColor fineColor = new FineColor(x, y, color);
return fineColor;
}
}

4
designer-base/src/main/java/com/fr/design/style/color/NewColorSelectBox.java

@ -20,7 +20,7 @@ public class NewColorSelectBox extends AbstractSelectBox<Color> implements UIObs
private static final long serialVersionUID = 2782150678943960557L; private static final long serialVersionUID = 2782150678943960557L;
private Color color; private Color color;
private NewColorSelectPane colorPane = new NewColorSelectPane(); private NewColorSelectPane colorPane = new NewColorSelectPane(false);
private UIObserverListener uiObserverListener; private UIObserverListener uiObserverListener;
private String newColorSelectBoxName = ""; private String newColorSelectBoxName = "";
private GlobalNameListener globalNameListener = null; private GlobalNameListener globalNameListener = null;
@ -58,7 +58,7 @@ public class NewColorSelectBox extends AbstractSelectBox<Color> implements UIObs
*/ */
public JPanel initWindowPane(double preferredWidth) { public JPanel initWindowPane(double preferredWidth) {
// 下拉的时候重新生成面板,以刷新最近使用颜色 // 下拉的时候重新生成面板,以刷新最近使用颜色
colorPane = new NewColorSelectPane(); colorPane = new NewColorSelectPane(false);
colorPane.addChangeListener(new ChangeListener() { colorPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) { public void stateChanged(ChangeEvent e) {
hidePopupMenu(); hidePopupMenu();

237
designer-base/src/main/java/com/fr/design/style/color/NewColorSelectPane.java

@ -1,16 +1,18 @@
package com.fr.design.style.color; package com.fr.design.style.color;
import com.fr.base.FineColor;
import com.fr.design.DesignerEnvManager; import com.fr.design.DesignerEnvManager;
import com.fr.design.border.UIRoundedBorder; import com.fr.design.border.UIRoundedBorder;
import com.fr.design.constants.UIConstants; import com.fr.design.constants.UIConstants;
import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.BasicPane;
import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.ilable.UILabel;
import com.fr.design.i18n.Toolkit; import com.fr.design.i18n.Toolkit;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerContext;
import javax.swing.BorderFactory; import javax.swing.BorderFactory;
import javax.swing.Box; import javax.swing.JButton;
import javax.swing.JPanel; import javax.swing.JPanel;
import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener; import javax.swing.event.ChangeListener;
@ -19,8 +21,6 @@ import java.awt.Color;
import java.awt.Cursor; import java.awt.Cursor;
import java.awt.Dimension; import java.awt.Dimension;
import java.awt.GridLayout; import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter; import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent; import java.awt.event.MouseEvent;
import java.util.ArrayList; import java.util.ArrayList;
@ -32,57 +32,67 @@ import java.util.ArrayList;
*/ */
public class NewColorSelectPane extends BasicPane implements ColorSelectable { public class NewColorSelectPane extends BasicPane implements ColorSelectable {
private static final long serialVersionUID = -8634152305687249392L; private static final long serialVersionUID = -8634152305687249392L;
private static final float BRIGHTNESS_VALUE = 0.15F;
private static final float PURITY_VALUE = 0.1F;
private Color color = null; // color private FineColor color = null; // color
// color setting action. // color setting action.
private ArrayList<ChangeListener> colorChangeListenerList = new ArrayList<ChangeListener>(); private final ArrayList<ChangeListener> colorChangeListenerList = new ArrayList<>();
// 是否支持透明 // 是否支持透明
private boolean isSupportTransparent; private boolean isSupportTransparent;
private boolean isSupportThemeColor;
public final static int TRANSPARENT_WINDOW_HEIGHT = 165; public final static int TRANSPARENT_WINDOW_HEIGHT = 165;
public final static int WINDOW_HEIGHT = 150; public final static int WINDOW_HEIGHT = 150;
// 最近使用颜色 // 最近使用颜色
private UsedColorPane usedColorPane; private final NewUsedColorPane usedColorPane;
public static NewColorSelectPane createColorSelectPaneWithTheme(boolean supportTheme){
return new NewColorSelectPane(true, supportTheme);
}
/** /**
* Constructor. * Constructor.
*/ */
public NewColorSelectPane() { public NewColorSelectPane() {
this(false); this(true);
}
public NewColorSelectPane(boolean isSupportTransparent) {
this(isSupportTransparent, true);
} }
/** /**
* Constructor. * Constructor.
*/ */
NewColorSelectPane(boolean isSupportTransparent) { public NewColorSelectPane(boolean isSupportTransparent, boolean isSupportThemeColor) {
this.isSupportThemeColor = isSupportThemeColor;
initSelectButton(isSupportTransparent); initSelectButton(isSupportTransparent);
// center // center
JPanel centerPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane(); JPanel centerPane = FRGUIPaneFactory.createY_AXISBoxInnerContainer_S_Pane();
centerPane.setBorder(BorderFactory.createEmptyBorder(10, 4, 0 ,4));
this.add(centerPane, BorderLayout.CENTER); this.add(centerPane, BorderLayout.CENTER);
// 第一行 JPanel menuColorPane1 = getMenuColorPane();
JPanel row1Pane = new JPanel(FRGUIPaneFactory.createBorderLayout());
row1Pane.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 0));
row1Pane.setPreferredSize(new Dimension(135, 16)); // 宽度为 16 * 8 + 7
centerPane.add(row1Pane);
// 最近使用
usedColorPane = new UsedColorPane(1, 8, 1, this, true, false);
usedColorPane.getPane().setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 8));
row1Pane.add(usedColorPane.getPane());
JPanel menuColorPane1 = new JPanel();
centerPane.add(menuColorPane1); centerPane.add(menuColorPane1);
if(isSupportThemeColor){
menuColorPane1.setLayout(new GridLayout(5, 8, 1, 1)); initThemeColorPane(menuColorPane1);
menuColorPane1.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 8)); }else {
for (int i = 0; i < ColorFactory.MenuColors.length; i++) { initMenuColorPane(menuColorPane1);
menuColorPane1.add(new ColorCell(ColorFactory.MenuColors[i], this));
} }
centerPane.add(Box.createVerticalStrut(1)); // 增加最近使用 pane
JPanel row1Pane = new JPanel(new BorderLayout(0, 5));
row1Pane.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
row1Pane.add(new UILabel(Toolkit.i18nText("Fine-Design_Basic_Used")), BorderLayout.NORTH);
centerPane.add(row1Pane);
// 最近使用
usedColorPane = new NewUsedColorPane(8, this, selectRealTime());
usedColorPane.setPreferredSize(new Dimension(168, 16));
row1Pane.add(usedColorPane.getPane(), BorderLayout.CENTER);
// mod by anchore 16/11/16 // mod by anchore 16/11/16
final UIButton customButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_More_Color")); final UIButton customButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_More_Color"));
@ -99,12 +109,58 @@ public class NewColorSelectPane extends BasicPane implements ColorSelectable {
}); });
customButton.setCursor(new Cursor(Cursor.HAND_CURSOR)); customButton.setCursor(new Cursor(Cursor.HAND_CURSOR));
JPanel centerPane1 = FRGUIPaneFactory.createBorderLayout_S_Pane(); JPanel centerPane1 = new JPanel(new BorderLayout(0, 0));
centerPane1.setBorder(BorderFactory.createEmptyBorder(2, 8, 0, 8)); centerPane1.setBorder(BorderFactory.createEmptyBorder(9, 0, 11, 0));
centerPane1.add(customButton, BorderLayout.NORTH); centerPane1.add(customButton, BorderLayout.CENTER);
customButton.setPreferredSize(new Dimension(197, 20));
centerPane.add(centerPane1); centerPane.add(centerPane1);
} }
private void initThemeColorPane(JPanel menuColorPane){
menuColorPane.setLayout(new GridLayout(1, 8, 3, 0));
//todo 暂时先写死,后续对接的时候从主体里面拿主题配色
Color[] colorArray = new Color[]{Color.decode("#FFFFFF"), Color.decode("#CCCCCC"),
Color.decode("#E6A48A"), Color.decode("#E68A8A"), Color.gray, Color.green, Color.DARK_GRAY, Color.CYAN, Color.YELLOW, Color.lightGray};
for (int i = 0; i < colorArray.length; i++) {
Color color = colorArray[i];
boolean isDefaultColor = (i == 0 || i ==1);
JPanel jPanel = new JPanel(new GridLayout(5, 1, 0, 3));
jPanel.add(new FineColorCell(color, this, i, 0));
jPanel.add(new FineColorCell(color = saturationDown(color, isDefaultColor), this, i, 1));
jPanel.add(new FineColorCell(color = saturationDown(color, isDefaultColor), this, i, 2));
jPanel.add(new FineColorCell(color = saturationDown(color, isDefaultColor), this, i, 3));
jPanel.add(new FineColorCell(saturationDown(color, isDefaultColor), this, i, 4));
menuColorPane.add(jPanel);
}
}
/**
* 调整明度和纯度默认色只调整明度
* @param color
* @param isDefaultColor
* @return
*/
public static Color saturationDown(Color color, boolean isDefaultColor) {
float[] hsb = Color.RGBtoHSB(color.getRed(), color.getGreen(), color.getBlue(), new float[3]);
if (!isDefaultColor) {
hsb[1] += PURITY_VALUE;
}
hsb[2] -= BRIGHTNESS_VALUE;
return Color.getHSBColor(hsb[0], hsb[1], hsb[2]);
}
private void initMenuColorPane(JPanel menuColorPane){
menuColorPane.setLayout(new GridLayout(5, 8, 1, 1));
menuColorPane.setBorder(BorderFactory.createEmptyBorder(8, 8, 0, 8));
Color[] colorArray = this.getColorArray();
for (int i = 0; i < colorArray.length; i++) {
Color color = colorArray[i] == null ? UsedColorPane.DEFAULT_COLOR : colorArray[i];
menuColorPane.add(new ColorCell(color, this));
}
}
public boolean isSupportTransparent() { public boolean isSupportTransparent() {
return isSupportTransparent; return isSupportTransparent;
} }
@ -113,6 +169,10 @@ public class NewColorSelectPane extends BasicPane implements ColorSelectable {
isSupportTransparent = supportTransparent; isSupportTransparent = supportTransparent;
} }
protected boolean selectRealTime() {
return true;
}
protected void initSelectButton(boolean isSupportTransparent){ protected void initSelectButton(boolean isSupportTransparent){
this.isSupportTransparent = isSupportTransparent; this.isSupportTransparent = isSupportTransparent;
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());
@ -120,21 +180,14 @@ public class NewColorSelectPane extends BasicPane implements ColorSelectable {
if (isSupportTransparent) { if (isSupportTransparent) {
UIButton transparentButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_ChartF_Transparency")); UIButton transparentButton = new UIButton(Toolkit.i18nText("Fine-Design_Basic_ChartF_Transparency"));
this.add(transparentButton, BorderLayout.NORTH); this.add(transparentButton, BorderLayout.NORTH);
transparentButton.addActionListener(new ActionListener() { transparentButton.addActionListener(e -> doTransparent());
@Override
public void actionPerformed(ActionEvent e) {
doTransparent();
}
});
} }
} }
/** /**
* 添加监听 * 添加监听
* * @param changeListener 监听
* @param 监听列表 Add change listener.
*/ */
public void addChangeListener(ChangeListener changeListener) { public void addChangeListener(ChangeListener changeListener) {
this.colorChangeListenerList.add(changeListener); this.colorChangeListenerList.add(changeListener);
@ -151,7 +204,7 @@ public class NewColorSelectPane extends BasicPane implements ColorSelectable {
* @return 颜色 * @return 颜色
* Return the color. * Return the color.
*/ */
public Color getColor() { public FineColor getColor() {
return color; return color;
} }
@ -163,7 +216,6 @@ public class NewColorSelectPane extends BasicPane implements ColorSelectable {
public Color getNotNoneColor() { public Color getNotNoneColor() {
if (color == null) { if (color == null) {
setColor(Color.WHITE); setColor(Color.WHITE);
return Color.WHITE;
} }
return color; return color;
} }
@ -175,27 +227,33 @@ public class NewColorSelectPane extends BasicPane implements ColorSelectable {
*/ */
@Override @Override
public void setColor(Color color) { public void setColor(Color color) {
this.color = color; FineColor fineColor;
if (color == null) {
fineColor = null;
} else {
fineColor = color instanceof FineColor ? (FineColor) color : new FineColor(color);
}
setFineColor(fineColor);
}
private void setFineColor(FineColor fineColor){
this.color = fineColor;
// fire color change. // fire color change.
if (!colorChangeListenerList.isEmpty()) { if (!colorChangeListenerList.isEmpty()) {
ChangeEvent evt = new ChangeEvent(this); ChangeEvent evt = new ChangeEvent(this);
for (int i = 0; i < colorChangeListenerList.size(); i++) { for (ChangeListener changeListener : colorChangeListenerList) {
this.colorChangeListenerList.get(i).stateChanged(evt); changeListener.stateChanged(evt);
} }
} }
DesignerEnvManager.getEnvManager().getColorConfigManager().addToColorQueue(color); DesignerEnvManager.getEnvManager().getColorConfigManager().addToColorQueue(color);
this.repaint(); this.repaint();
} }
/**
* 设置颜色
*
* @param 颜色位置
*/
@Override @Override
public void colorSetted(ColorCell colorCell) { public void colorSetted(ColorCell colorCell) {
this.updateUsedColor();
colorCell.repaint(); colorCell.repaint();
} }
@ -203,18 +261,28 @@ public class NewColorSelectPane extends BasicPane implements ColorSelectable {
setColor(null); setColor(null);
} }
protected Color[] getColorArray() {
return ColorFactory.MenuColors;
}
protected JPanel getMenuColorPane() {
return new JPanel();
}
protected void customButtonPressed() { protected void customButtonPressed() {
// 颜色选择器 // 颜色选择器
ColorSelectDetailPane pane = new ColorSelectDetailPane(Color.WHITE); ColorSelectDetailPane pane = new ColorSelectDetailPane(Color.WHITE);
ColorSelectDialog.showDialog(DesignerContext.getDesignerFrame(), pane, Color.WHITE, this); Color color = getColor() == null ? Color.WHITE : getColor().getColor();
ColorSelectDialog.showDialog(DesignerContext.getDesignerFrame(), pane, color, this);
} }
@Override @Override
public Dimension getPreferredSize() { public Dimension getPreferredSize() {
if (isSupportTransparent) { if (isSupportTransparent) {
return new Dimension(super.getPreferredSize().width, TRANSPARENT_WINDOW_HEIGHT); return new Dimension(197, 207);
} }
return new Dimension(super.getPreferredSize().width, WINDOW_HEIGHT); return new Dimension(197, 192);
} }
/** /**
@ -224,5 +292,72 @@ public class NewColorSelectPane extends BasicPane implements ColorSelectable {
usedColorPane.updateUsedColor(); usedColorPane.updateUsedColor();
} }
class NewUsedColorPane extends BasicPane {
// 最近使用面板列数
private int columns;
// 最近使用面板
private JPanel pane;
private ColorSelectable selectable;
private boolean setColorRealTime;
public JPanel getPane(){
return this.pane;
}
public NewUsedColorPane(int columns, ColorSelectable selectable, boolean setColorRealTime){
this.columns = columns;
this.selectable = selectable;
this.setColorRealTime = setColorRealTime;
initialComponents();
}
private void initialComponents() {
int total = columns;
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(1, columns + 2, 3, 3));
panel.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
//最近使用颜色
Color[] colors = DesignerEnvManager.getEnvManager().getColorConfigManager().getColors();
int size = colors.length;
for (int i = 0; i < total; i++) {
Color color = i < size ? colors[size - i - 1] :
UsedColorPane.DEFAULT_COLOR;
panel.add(new ColorCell(color == null ? UsedColorPane.DEFAULT_COLOR : color, selectable));
}
// 取色按钮
JButton pickColorButton = PickColorButtonFactory.getPickColorButton(selectable, PickColorButtonFactory.IconType.ICON16, setColorRealTime);
panel.add(pickColorButton);
ColorCell cc = new ColorCell(UsedColorPane.DEFAULT_COLOR, selectable);
cc.setVisible(false);
panel.add(cc);
this.pane = panel;
}
/**
* 更新最近使用颜色
*/
public void updateUsedColor() {
int total = columns ;
Color[] colors = DesignerEnvManager.getEnvManager().getColorConfigManager().getColors();
int size = colors.length;
for (int i = 0; i < total; i++) {
ColorCell cell = (ColorCell) this.pane.getComponent(i);
Color color = i < size ? colors[size - i - 1] : UsedColorPane.DEFAULT_COLOR;
cell.setColor(color == null ? UsedColorPane.DEFAULT_COLOR : color);
}
}
@Override
protected String title4PopupWindow() {
return null;
}
}
} }

4
designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ColorSelectBoxWithOutTransparent.java

@ -1,7 +1,7 @@
package com.fr.design.mainframe.chart.gui; package com.fr.design.mainframe.chart.gui;
import com.fr.design.style.color.ColorSelectBox; import com.fr.design.style.color.ColorSelectBox;
import com.fr.design.style.color.ColorSelectPane; import com.fr.design.style.color.NewColorSelectPane;
/** /**
* Created by Fangjie on 2016/4/8. * Created by Fangjie on 2016/4/8.
@ -14,7 +14,7 @@ public class ColorSelectBoxWithOutTransparent extends ColorSelectBox {
@Override @Override
protected ColorSelectPane getColorSelectPane(){ protected NewColorSelectPane getColorSelectPane(){
return new ColorSelectPaneWithOutTransparent(); return new ColorSelectPaneWithOutTransparent();
} }
} }

16
designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ColorSelectPaneWithOutTransparent.java

@ -1,8 +1,7 @@
package com.fr.design.mainframe.chart.gui; package com.fr.design.mainframe.chart.gui;
import com.fr.chart.base.ChartConstants; import com.fr.chart.base.ChartConstants;
import com.fr.design.style.color.ColorCell; import com.fr.design.style.color.NewColorSelectPane;
import com.fr.design.style.color.ColorSelectPane;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
@ -10,23 +9,12 @@ import java.awt.*;
/** /**
* Created by Fangjie on 2016/4/8. * Created by Fangjie on 2016/4/8.
*/ */
public class ColorSelectPaneWithOutTransparent extends ColorSelectPane { public class ColorSelectPaneWithOutTransparent extends NewColorSelectPane {
public ColorSelectPaneWithOutTransparent(){ public ColorSelectPaneWithOutTransparent(){
super(false); super(false);
} }
public void initCenterPaneChildren(JPanel centerPane) {
JPanel menuColorPane1 = new JPanel();
centerPane.add(menuColorPane1);
menuColorPane1.setLayout(new GridLayout(3, 8, 5, 5));
for (int i = 0; i < ChartConstants.MAP_COLOR_ARRAY.length; i++) {
menuColorPane1.add(new ColorCell(ChartConstants.MAP_COLOR_ARRAY[i], this));
}
centerPane.add(Box.createVerticalStrut(5));
centerPane.add(new JSeparator());
}
protected Color[] getColorArray(){ protected Color[] getColorArray(){
return ChartConstants.MAP_COLOR_ARRAY; return ChartConstants.MAP_COLOR_ARRAY;
} }

22
designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/style/series/UIColorPickerPane4Map.java

@ -2,15 +2,10 @@ package com.fr.design.mainframe.chart.gui.style.series;
import com.fr.chart.base.ChartConstants; import com.fr.chart.base.ChartConstants;
import com.fr.design.gui.frpane.AbstractAttrNoScrollPane; import com.fr.design.gui.frpane.AbstractAttrNoScrollPane;
import com.fr.design.style.color.ColorCell;
import com.fr.design.style.color.ColorSelectBox; import com.fr.design.style.color.ColorSelectBox;
import com.fr.design.style.color.ColorSelectPane; import com.fr.design.style.color.NewColorSelectPane;
import javax.swing.Box;
import javax.swing.JPanel;
import javax.swing.JSeparator;
import java.awt.Color; import java.awt.Color;
import java.awt.GridLayout;
/** /**
* Created by IntelliJ IDEA. * Created by IntelliJ IDEA.
@ -27,23 +22,12 @@ public class UIColorPickerPane4Map extends UIColorPickerPane {
return new ColorSelectBox4Map(100); return new ColorSelectBox4Map(100);
} }
private class ColorSelectPane4Map extends ColorSelectPane { private class ColorSelectPane4Map extends NewColorSelectPane {
public ColorSelectPane4Map(){ public ColorSelectPane4Map(){
super(false); super(false);
} }
public void initCenterPaneChildren(JPanel centerPane) {
JPanel menuColorPane1 = new JPanel();
centerPane.add(menuColorPane1);
menuColorPane1.setLayout(new GridLayout(5, 8, 5, 5));
for (int i = 0; i < ChartConstants.MAP_COLOR_ARRAY.length; i++) {
menuColorPane1.add(new ColorCell(ChartConstants.MAP_COLOR_ARRAY[i], this));
}
centerPane.add(Box.createVerticalStrut(5));
centerPane.add(new JSeparator());
}
protected Color[] getColorArray(){ protected Color[] getColorArray(){
return ChartConstants.MAP_COLOR_ARRAY; return ChartConstants.MAP_COLOR_ARRAY;
} }
@ -54,7 +38,7 @@ public class UIColorPickerPane4Map extends UIColorPickerPane {
super(preferredWidth); super(preferredWidth);
} }
protected ColorSelectPane getColorSelectPane(){ protected NewColorSelectPane getColorSelectPane(){
return new ColorSelectPane4Map(); return new ColorSelectPane4Map();
} }
} }

12
designer-realize/src/main/java/com/fr/design/actions/server/ServerConfigManagerAction.java

@ -3,7 +3,6 @@
*/ */
package com.fr.design.actions.server; package com.fr.design.actions.server;
import com.fr.base.svg.IconUtils;
import com.fr.config.Configuration; import com.fr.config.Configuration;
import com.fr.config.ServerPreferenceConfig; import com.fr.config.ServerPreferenceConfig;
import com.fr.design.actions.UpdateAction; import com.fr.design.actions.UpdateAction;
@ -20,6 +19,8 @@ import com.fr.web.attr.ReportWebAttr;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
/** /**
* Server Config Manager * Server Config Manager
@ -41,6 +42,7 @@ public class ServerConfigManagerAction extends UpdateAction {
* @param e 事件 * @param e 事件
*/ */
public void actionPerformed(ActionEvent e) { public void actionPerformed(ActionEvent e) {
DesignerContext.getDesignerFrame().setServerConfig(true);
final ServerPreferenceConfig config = ServerPreferenceConfig.getInstance(); final ServerPreferenceConfig config = ServerPreferenceConfig.getInstance();
final EditReportServerParameterPane editReportServerParameterPane = new EditReportServerParameterPane() { final EditReportServerParameterPane editReportServerParameterPane = new EditReportServerParameterPane() {
@Override @Override
@ -69,7 +71,13 @@ public class ServerConfigManagerAction extends UpdateAction {
return new Class[]{ReportWebAttr.class, ServerPreferenceConfig.class}; return new Class[]{ReportWebAttr.class, ServerPreferenceConfig.class};
} }
}); });
}
});
editReportServerParameterDialog.addWindowListener(new WindowAdapter() {
@Override
public void windowClosed(WindowEvent e) {
super.windowClosed(e);
DesignerContext.getDesignerFrame().setServerConfig(false);
} }
}); });
editReportServerParameterDialog.setVisible(true); editReportServerParameterDialog.setVisible(true);

3
designer-realize/src/main/java/com/fr/design/webattr/WriteToolBarPane.java

@ -9,6 +9,7 @@ import com.fr.design.dialog.DialogActionAdapter;
import com.fr.design.gui.core.WidgetOption; import com.fr.design.gui.core.WidgetOption;
import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.ibutton.UIColorButton; import com.fr.design.gui.ibutton.UIColorButton;
import com.fr.design.gui.ibutton.UINoThemeColorButton;
import com.fr.design.gui.ibutton.UIRadioButton; import com.fr.design.gui.ibutton.UIRadioButton;
import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.icheckbox.UICheckBox;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
@ -76,7 +77,7 @@ public class WriteToolBarPane extends AbstractEditToolBarPane {
colorBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Face_Write_Current_Edit_Row_Background") + ":"); colorBox = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Face_Write_Current_Edit_Row_Background") + ":");
colorBox.setSelected(false); colorBox.setSelected(false);
colorBox.addActionListener(colorListener); colorBox.addActionListener(colorListener);
colorButton = new UIColorButton(BaseUtils.readIcon("/com/fr/design/images/gui/color/background.png")); colorButton = new UINoThemeColorButton(BaseUtils.readIcon("/com/fr/design/images/gui/color/background.png"));
northPane.add(GUICoreUtils.createFlowPane(new Component[]{colorBox, colorButton}, FlowLayout.LEFT)); northPane.add(GUICoreUtils.createFlowPane(new Component[]{colorBox, colorButton}, FlowLayout.LEFT));
unloadCheck = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unload_Check")); unloadCheck = new UICheckBox(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Unload_Check"));

Loading…
Cancel
Save