From: <de...@us...> - 2015-09-10 16:56:05
|
Revision: 9165 http://sourceforge.net/p/fudaa/svn/9165 Author: deniger Date: 2015-09-10 16:56:03 +0000 (Thu, 10 Sep 2015) Log Message: ----------- CRUE-657 Modified Paths: -------------- trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGCourbeSimple.java trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliComponentFactory.java Added Paths: ----------- trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliBasicComponentFactory.java trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliComposedIcon.java Modified: trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGCourbeSimple.java =================================================================== --- trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGCourbeSimple.java 2015-09-10 14:41:11 UTC (rev 9164) +++ trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGCourbeSimple.java 2015-09-10 16:56:03 UTC (rev 9165) @@ -36,7 +36,7 @@ super.fillWithInfo(_table, _selectedPt); final String pre = EbliLib.getS("Axe vertical:") + CtuluLibString.ESPACE; final EGAxeVertical axe = getAxeY(); - if (_table != null) { + if (_table != null && axe != null) { _table.put(pre + EbliLib.getS("Borne min"), axe.getStringAffiche(axe.getMinimum())); _table.put(pre + EbliLib.getS("Borne max"), axe.getStringAffiche(axe.getMaximum())); } Added: trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliBasicComponentFactory.java =================================================================== --- trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliBasicComponentFactory.java (rev 0) +++ trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliBasicComponentFactory.java 2015-09-10 16:56:03 UTC (rev 9165) @@ -0,0 +1,53 @@ +/* + GPL 2 + */ +package org.fudaa.ebli.commun; + +import com.memoire.bu.BuButton; +import com.memoire.bu.BuCheckBoxMenuItem; +import com.memoire.bu.BuMenuItem; +import com.memoire.bu.BuToggleButton; +import javax.swing.AbstractButton; +import javax.swing.JCheckBox; +import javax.swing.JMenuItem; +import javax.swing.JToggleButton; + +/** + * + * @author Frederic Deniger + */ +public class EbliBasicComponentFactory { + + public AbstractButton createButton() { + return new BuButton(); + } + + public AbstractButton createToggleButton() { + return new BuToggleButton(); + } + + public JMenuItem createCheckBoxMenuItem() { + return new BuCheckBoxMenuItem(); + } + + public JMenuItem createMenuItem() { + return new BuMenuItem(); + } + + public AbstractButton createToolToggleButton() { + return new BuToggleButton(); + } + + public AbstractButton createCheckBox() { + return new JCheckBox(); + } + + public AbstractButton createPaletteButton(EbliActionPaletteAbstract _a) { + return new EbliPaletteButton(_a); + } + + public AbstractButton createToolButton(EbliActionSimple _a) { + return new EbliButtonTool(_a); + } + +} Modified: trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliComponentFactory.java =================================================================== --- trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliComponentFactory.java 2015-09-10 14:41:11 UTC (rev 9164) +++ trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliComponentFactory.java 2015-09-10 16:56:03 UTC (rev 9165) @@ -10,18 +10,11 @@ package org.fudaa.ebli.commun; import javax.swing.AbstractButton; -import javax.swing.JCheckBox; import javax.swing.JMenu; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; import javax.swing.JToggleButton; -import com.memoire.bu.BuButton; -import com.memoire.bu.BuCheckBoxMenuItem; -import com.memoire.bu.BuColorIcon; -import com.memoire.bu.BuComposedIcon; -import com.memoire.bu.BuMenuItem; -import com.memoire.bu.BuToggleButton; import java.awt.Color; /** @@ -29,11 +22,13 @@ * @version $Id: EbliComponentFactory.java,v 1.12 2006-09-19 14:55:55 deniger Exp $ */ public final class EbliComponentFactory { - + public final static EbliComponentFactory INSTANCE = new EbliComponentFactory(); - + private Color useSelectedIcon; + EbliBasicComponentFactory componentFactory = new EbliBasicComponentFactory(); + /** * */ @@ -41,6 +36,14 @@ super(); } + public EbliBasicComponentFactory getComponentFactory() { + return componentFactory; + } + + public void setComponentFactory(EbliBasicComponentFactory componentFactory) { + this.componentFactory = componentFactory; + } + public Color getUseSelectedIcon() { return useSelectedIcon; } @@ -54,7 +57,7 @@ _r.setSelected(_a.isSelected()); _a.addPropertyChangeListener(new EbliSelectedChangeListener(_r)); } - + public void addActionsToMenu(final EbliActionInterface[] _acs, final JMenu _dest) { if ((_acs != null) && (_dest != null)) { final int n = _acs.length; @@ -68,7 +71,7 @@ } } } - + public void addActionsToMenu(final EbliActionInterface[] _acs, final JPopupMenu _dest) { if ((_acs != null) && (_dest != null)) { final int n = _acs.length; @@ -82,63 +85,63 @@ } } } - + public AbstractButton buildButton(final EbliActionChangeState _a) { - final JToggleButton r = new BuToggleButton(); + final AbstractButton r = componentFactory.createToggleButton(); decoreStateButton(r, _a); - if (useSelectedIcon != null && _a.getIcon() != null) { - BuComposedIcon selectedIcon = new BuComposedIcon(_a.getIcon(), new BuColorIcon(useSelectedIcon)); - r.setSelectedIcon(selectedIcon); - } return r; } - + public AbstractButton buildButton(final EbliActionSimple _a) { - final AbstractButton r = new BuButton(); + final AbstractButton r = componentFactory.createButton(); r.setAction(_a); return r; } - + public JMenuItem buildMenuItem(final EbliActionChangeState _a) { - final BuCheckBoxMenuItem r = new BuCheckBoxMenuItem(); + final JMenuItem r = componentFactory.createCheckBoxMenuItem(); decoreStateButton(r, _a); return r; } - + public JMenuItem buildMenuItem(final EbliActionSimple _a) { - final JMenuItem r = new BuMenuItem(); + final JMenuItem r = componentFactory.createMenuItem(); r.setAction(_a); return r; } - + public AbstractButton buildToolButton(final EbliActionChangeState _a) { - final AbstractButton r = new BuToggleButton(); + final AbstractButton r = componentFactory.createToolToggleButton(); decoreStateButton(r, _a); decoreToolBarButton(r); + if (useSelectedIcon != null && _a.getIcon() != null) { + EbliComposedIcon selectedIcon = new EbliComposedIcon(useSelectedIcon, _a.getIcon()); + r.setSelectedIcon(selectedIcon); + } return r; } - + public AbstractButton buildCheckBox(final EbliActionChangeState _a) { - final AbstractButton r = new JCheckBox(); + final AbstractButton r = componentFactory.createCheckBox(); decoreStateButton(r, _a); decoreToolBarButton(r); r.setText(_a.getTitle()); return r; } - + public AbstractButton buildToolButton(final EbliActionPaletteAbstract _a) { - final AbstractButton r = new EbliPaletteButton(_a); + final AbstractButton r = componentFactory.createPaletteButton(_a); decoreStateButton(r, _a); decoreToolBarButton(r); return r; } - + public AbstractButton buildToolButton(final EbliActionSimple _a) { - final AbstractButton r = new EbliButtonTool(_a); + final AbstractButton r = componentFactory.createToolButton(_a); decoreToolBarButton(r); return r; } - + public void decoreToolBarButton(final AbstractButton _r) { _r.setText(""); _r.setRolloverEnabled(true); Added: trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliComposedIcon.java =================================================================== --- trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliComposedIcon.java (rev 0) +++ trunk/framework/ebli-common/src/main/java/org/fudaa/ebli/commun/EbliComposedIcon.java 2015-09-10 16:56:03 UTC (rev 9165) @@ -0,0 +1,56 @@ +/* + GPL 2 + */ +package org.fudaa.ebli.commun; + +import java.awt.Color; +import java.awt.Component; +import java.awt.Graphics; +import javax.swing.Icon; + +/** + * + * @author Frederic Deniger + */ +public class EbliComposedIcon implements Icon { + + private Color background; + private Icon icon; + + public EbliComposedIcon(Color background, Icon icon) { + this.background = background; + this.icon = icon; + } + + public Color getBackground() { + return background; + } + + public void setBackground(Color background) { + this.background = background; + } + + public Icon getIcon() { + return icon; + } + + public void setIcon(Icon icon) { + this.icon = icon; + } + + + public void paintIcon(Component c, Graphics g, int x, int y) { + g.setColor(background); + g.fillRect(x, y, icon.getIconWidth(), icon.getIconHeight()); + icon.paintIcon(c, g, x, y); + } + + public int getIconWidth() { + return icon.getIconWidth(); + } + + public int getIconHeight() { + return icon.getIconHeight(); + } + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |