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

Contents of /jsampler/trunk/src/org/jsampler/view/fantasia/basic/PixmapButton.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1785 - (show annotations) (download)
Tue Oct 7 00:07:14 2008 UTC (15 years, 6 months ago) by iliev
File size: 2296 byte(s)
* Fantasia: Implemented multiple channels panels
* Fantasia: Refactoring - all basic UI components moved to
  org.jsampler.view.fantasia.basic package

1 /*
2 * JSampler - a java front-end for LinuxSampler
3 *
4 * Copyright (C) 2005-2008 Grigor Iliev <grigor@grigoriliev.com>
5 *
6 * This file is part of JSampler.
7 *
8 * JSampler is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2
10 * as published by the Free Software Foundation.
11 *
12 * JSampler is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with JSampler; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
20 * MA 02111-1307 USA
21 */
22
23 package org.jsampler.view.fantasia.basic;
24
25 import java.awt.Cursor;
26 import java.awt.Dimension;
27 import java.awt.Insets;
28
29 import javax.swing.Action;
30 import javax.swing.BorderFactory;
31 import javax.swing.ImageIcon;
32 import javax.swing.JButton;
33
34 import javax.swing.plaf.basic.BasicButtonUI;
35
36
37 /**
38 *
39 * @author Grigor Iliev
40 */
41 public class PixmapButton extends JButton {
42 private Dimension size;
43
44 /** Creates a new instance of PixmapButton */
45 public
46 PixmapButton(ImageIcon icon) {
47 this(icon, null);
48 }
49
50 /** Creates a new instance of PixmapButton */
51 public
52 PixmapButton(ImageIcon icon, ImageIcon rolloverIcon) {
53 initPixmapButton(icon, rolloverIcon);
54 }
55
56 /** Creates a new instance of PixmapButton */
57 public
58 PixmapButton(Action a, ImageIcon icon) {
59 super(a);
60 initPixmapButton(icon, null);
61 }
62
63 private void
64 initPixmapButton(ImageIcon icon, ImageIcon rolloverIcon) {
65 setText("");
66 setContentAreaFilled(false);
67 setFocusPainted(false);
68 setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
69 setMargin(new Insets(0, 0, 0, 0));
70
71 setIcon(icon);
72
73 if(rolloverIcon != null) {
74 setRolloverIcon(rolloverIcon);
75 setRolloverEnabled(true);
76 } else {
77 setRolloverEnabled(false);
78 }
79
80 size = new Dimension(icon.getIconWidth(), icon.getIconHeight());
81 setPreferredSize(size);
82 setMaximumSize(size);
83
84 setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
85 }
86
87 @Override
88 public void
89 updateUI() { setUI(new BasicButtonUI()); }
90 }

  ViewVC Help
Powered by ViewVC