/[svn]/jsampler/trunk/src/org/jsampler/view/fantasia/StandardBar.java
ViewVC logotype

Diff of /jsampler/trunk/src/org/jsampler/view/fantasia/StandardBar.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1777 by iliev, Mon Nov 19 22:22:22 2007 UTC revision 1778 by iliev, Sun Sep 28 20:38:36 2008 UTC
# Line 1  Line 1 
1  /*  /*
2   *   JSampler - a java front-end for LinuxSampler   *   JSampler - a java front-end for LinuxSampler
3   *   *
4   *   Copyright (C) 2005-2007 Grigor Iliev <grigor@grigoriliev.com>   *   Copyright (C) 2005-2008 Grigor Iliev <grigor@grigoriliev.com>
5   *   *
6   *   This file is part of JSampler.   *   This file is part of JSampler.
7   *   *
# Line 23  Line 23 
23  package org.jsampler.view.fantasia;  package org.jsampler.view.fantasia;
24    
25  import java.awt.BorderLayout;  import java.awt.BorderLayout;
26    import java.awt.Color;
27    import java.awt.Composite;
28  import java.awt.Dimension;  import java.awt.Dimension;
29  import java.awt.Graphics;  import java.awt.Graphics;
30  import java.awt.Insets;  import java.awt.Graphics2D;
31    import java.awt.Paint;
32    
33    import java.awt.event.ActionEvent;
34    import java.awt.event.ActionListener;
35    
36  import javax.swing.Action;  import javax.swing.Action;
37  import javax.swing.BorderFactory;  import javax.swing.BorderFactory;
38  import javax.swing.Box;  import javax.swing.Box;
39  import javax.swing.BoxLayout;  import javax.swing.BoxLayout;
 import javax.swing.JButton;  
40  import javax.swing.JLabel;  import javax.swing.JLabel;
41  import javax.swing.JPanel;  import javax.swing.JPanel;
42    import javax.swing.JToggleButton;
43  import javax.swing.JToolBar;  import javax.swing.JToolBar;
44    
45    import org.jsampler.CC;
46    
47  import static org.jsampler.view.fantasia.A4n.a4n;  import static org.jsampler.view.fantasia.A4n.a4n;
48    
49  /**  /**
50   *   *
51   * @author Grigor Iliev   * @author Grigor Iliev
52   */   */
53  public class StandardBar extends PixmapPane {  public class StandardBar extends JPanel {
54          private final JToolBar toolbar = new JToolBar();          private final JToolBar toolbar = new JToolBar();
55          private final PixmapPane mainPane;          private final JPanel mainPane;
56                    
57          private final ToolbarButton btnSamplerInfo = new ToolbarButton(a4n.samplerInfo);          private final ToolbarButton btnSamplerInfo = new ToolbarButton(a4n.samplerInfo);
58          private final ToolbarButton btnLoadSession = new ToolbarButton(a4n.loadScript);          private final ToolbarButton btnLoadSession = new ToolbarButton(a4n.loadScript);
# Line 52  public class StandardBar extends PixmapP Line 60  public class StandardBar extends PixmapP
60          private final ToolbarButton btnRefresh = new ToolbarButton(a4n.refresh);          private final ToolbarButton btnRefresh = new ToolbarButton(a4n.refresh);
61          private final ToolbarButton btnResetSampler = new ToolbarButton(a4n.resetSampler);          private final ToolbarButton btnResetSampler = new ToolbarButton(a4n.resetSampler);
62                    
63            protected final ToggleButton btnMidiKeyboard = new ToggleButton();
64          private final ToolbarButton btnLSConsole = new ToolbarButton(a4n.windowLSConsole);          private final ToolbarButton btnLSConsole = new ToolbarButton(a4n.windowLSConsole);
65          private final ToolbarButton btnInstrumentsDb = new ToolbarButton(a4n.windowInstrumentsDb);          private final ToolbarButton btnInstrumentsDb = new ToolbarButton(a4n.windowInstrumentsDb);
66                    
# Line 62  public class StandardBar extends PixmapP Line 71  public class StandardBar extends PixmapP
71          /** Creates a new instance of <code>StandardBar</code> */          /** Creates a new instance of <code>StandardBar</code> */
72          public          public
73          StandardBar() {          StandardBar() {
74                  super(Res.gfxToolBarBg);                  //super(Res.gfxToolBarBg);
75                  setPixmapInsets(new Insets(0, 6, 6, 6));                  //setPixmapInsets(new Insets(0, 6, 6, 6));
76                                    
77                  setLayout(new BorderLayout());                  setLayout(new BorderLayout());
78                  setOpaque(false);                  setOpaque(false);
79                                    
80                  Dimension d = new Dimension(60, 60);                  Dimension d = new Dimension(60, 51);
81                  setMinimumSize(d);                  setMinimumSize(d);
82                  setPreferredSize(d);                  setPreferredSize(d);
83                  d = new Dimension(Short.MAX_VALUE, 60);                  d = new Dimension(Short.MAX_VALUE, 51);
84                  setMaximumSize(d);                  setMaximumSize(d);
85                  setBorder(BorderFactory.createEmptyBorder(0, 5, 5, 5));                  setBorder(BorderFactory.createEmptyBorder(0, 5, 2, 5));
86                                    
87                                    
88                  mainPane = new PixmapPane(Res.gfxToolBar);                  //mainPane = new PixmapPane(Res.gfxToolBar);
89                  mainPane.setPixmapInsets(Res.insetsToolBar);                  //mainPane.setPixmapInsets(Res.insetsToolBar);
90                    mainPane = new MainPane();
91                    mainPane.setOpaque(false);
92                  mainPane.setLayout(new BoxLayout(mainPane, BoxLayout.X_AXIS));                  mainPane.setLayout(new BoxLayout(mainPane, BoxLayout.X_AXIS));
93                                    
94                  toolbar.setOpaque(false);                  toolbar.setOpaque(false);
# Line 90  public class StandardBar extends PixmapP Line 101  public class StandardBar extends PixmapP
101                  toolbar.add(btnRefresh);                  toolbar.add(btnRefresh);
102                  toolbar.add(btnResetSampler);                  toolbar.add(btnResetSampler);
103                  toolbar.addSeparator();                  toolbar.addSeparator();
104                    btnMidiKeyboard.setIcon(Res.iconMidiKeyboard32);
105                    btnMidiKeyboard.addActionListener(new ActionListener() {
106                            public void
107                            actionPerformed(ActionEvent e) {
108                                    boolean b = btnMidiKeyboard.isSelected();
109                                    MainFrame frm = (MainFrame)CC.getMainFrame();
110                                    if(frm == null) return;
111                                    frm.setMidiKeyboardVisible(b);
112                            }
113                    });
114                    toolbar.add(btnMidiKeyboard);
115                  toolbar.add(btnLSConsole);                  toolbar.add(btnLSConsole);
116                  toolbar.add(btnInstrumentsDb);                  toolbar.add(btnInstrumentsDb);
117                  toolbar.addSeparator();                  toolbar.addSeparator();
# Line 100  public class StandardBar extends PixmapP Line 122  public class StandardBar extends PixmapP
122                                    
123                  mainPane.add(lLogo);                  mainPane.add(lLogo);
124                  mainPane.add(Box.createRigidArea(new Dimension(17, 0)));                  mainPane.add(Box.createRigidArea(new Dimension(17, 0)));
125                  add(mainPane);                  FantasiaSubPanel fsp = new FantasiaSubPanel(true, false, false);
126                    fsp.add(mainPane);
127                    add(fsp);
128          }          }
129                    
130          public void          public void
131          showFantasiaLogo(boolean b) { lLogo.setVisible(b); }          showFantasiaLogo(boolean b) { lLogo.setVisible(b); }
132            
133            private Color midColor = new Color(0x797979);
134            
135            @Override
136            public void
137            paintComponent(Graphics g) {
138                    Graphics2D g2 = (Graphics2D)g;
139                    
140                    Paint oldPaint = g2.getPaint();
141                    Composite oldComposite = g2.getComposite();
142                    
143                    double h = getSize().getHeight();
144                    double w = getSize().getWidth();
145                    
146                    FantasiaPainter.paintGradient(g2, 0.0, 0.0, w - 1, h - 1, FantasiaPainter.color5, midColor);
147                    
148                    FantasiaPainter.Border b = new FantasiaPainter.Border(false, true, false, true);
149                    FantasiaPainter.paintBoldOuterBorder(g2, 0, 0, w - 1, h + 2, b);
150                    
151                    g2.setPaint(oldPaint);
152                    g2.setComposite(oldComposite);
153            }
154            
155            class ToggleButton extends JToggleButton {
156                    /** Creates a new instance of <code>ToolbarButton</code>. */
157                    ToggleButton() {
158                            setFocusable(false);
159                    }
160                    
161                    /** Creates a new instance of <code>ToolbarButton</code>. */
162                    public
163                    ToggleButton(Action a) {
164                            super(a);
165                            setFocusable(false);
166                    }
167                    
168                    /** This method does nothing. */
169                    @Override
170                    public void
171                    setText(String text) { /* We don't want any text in toolbar buttons */ }
172            }
173            
174            class MainPane extends JPanel {
175                    private final Color color1 = new Color(0x505050);
176                    private final Color color2 = new Color(0x3e3e3e);
177            
178                    @Override
179                    public void
180                    paintComponent(Graphics g) {
181                            Graphics2D g2 = (Graphics2D)g;
182                            
183                            Paint oldPaint = g2.getPaint();
184                            Composite oldComposite = g2.getComposite();
185                            
186                            double h = getSize().getHeight();
187                            double w = getSize().getWidth();
188                            
189                            FantasiaPainter.paintGradient(g2, 0.0, 0.0, w - 1, h - 1, color1, color2);
190                            
191                            FantasiaPainter.paintOuterBorder(g2, 0, 0, w - 1, h - 1, true, 0.5f, 0.3f);
192                            
193                            g2.setPaint(oldPaint);
194                            g2.setComposite(oldComposite);
195                    }
196            }
197  }  }

Legend:
Removed from v.1777  
changed lines
  Added in v.1778

  ViewVC Help
Powered by ViewVC