From: WiESi <wi...@us...> - 2006-04-11 18:36:28
|
Update of /cvsroot/javaamp/javaamp/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25005/src Modified Files: Docker.java EqualizerDialog.java JavaAmp.java PlayDialog.java PlaylistDialog.java Settings.java Log Message: Window docking Index: EqualizerDialog.java =================================================================== RCS file: /cvsroot/javaamp/javaamp/src/EqualizerDialog.java,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- EqualizerDialog.java 11 Apr 2006 07:42:53 -0000 1.22 +++ EqualizerDialog.java 11 Apr 2006 18:36:13 -0000 1.23 @@ -19,12 +19,11 @@ JavaAmp owner; Container cntContainer; BevelBorder bebBorder; - int ct, mx, my, ow, oh, ow2, oh2; // ct: 0=Fehler, 1=Position, 2=Min, 3=Schl + int ct, mx, my, ow, oh; // ct: 0=Fehler, 1=Position, 2=Min, 3=Schl JToggleButton tobOn; JSlider sliPre; EQLabel eqlEqualizer; byte[] eqvals; - boolean dockedPlaylist, dockedPlaylist2; JButton btnPresets; JPopupMenu pomPresets; @@ -43,7 +42,6 @@ setUndecorated(true); setSize(275, 115); - dockedPlaylist = dockedPlaylist2 = true; addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { @@ -54,18 +52,11 @@ my = e.getY(); ow = getLocation().x; oh = getLocation().y; - ow2 = owner.playlistDialog.getLocation().x - ow; - oh2 = owner.playlistDialog.getLocation().y - oh; ct = 1; paint(getGraphics()); } public void mouseReleased(MouseEvent e) { - if(ct == 1) { - owner.playDialog.dockedEqualizer2 = - owner.playDialog.dockedEqualizer; - dockedPlaylist2 = dockedPlaylist; - } ct = 0; paint(getGraphics()); } @@ -196,28 +187,21 @@ oh = getLocation().y; } Point p = new Point(ow, oh); - Docker.dockScreen(p, new Rectangle(ow, oh, getWidth(), getHeight())); - ow = p.x; - oh = p.y; - owner.playDialog.dockedEqualizer = Docker.dock(p, new Rectangle(ow, oh, - getWidth(), getHeight()), owner.playDialog.getBounds()); + Docker.dockScreen(p, new Rectangle(p, getSize())); + Docker.dock(p, new Rectangle(p, getSize()), + owner.playDialog.getBounds()); + if(owner.playlistDialog.isVisible()) + Docker.dock(p, new Rectangle(p, getSize()), + owner.playlistDialog.getBounds()); ow = p.x; oh = p.y; - if(owner.playlistDialog.isVisible()) { - dockedPlaylist = Docker.dock(p, new Rectangle(ow, oh, getWidth(), - getHeight()), owner.playlistDialog.getBounds()); - ow = p.x; - oh = p.y; - } - else - dockedPlaylist = Docker.isDocked(p, new Rectangle(ow, oh, - getWidth(), getHeight()), owner.playlistDialog.getBounds()); - setLocation(ow, oh); + setLocation(p); } public void setVisible(boolean b) { super.setVisible(b); - dock(false); + if(b) + dock(false); } public void loadPreset() throws Exception { Index: Settings.java =================================================================== RCS file: /cvsroot/javaamp/javaamp/src/Settings.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- Settings.java 10 Apr 2006 17:51:30 -0000 1.11 +++ Settings.java 11 Apr 2006 18:36:13 -0000 1.12 @@ -58,7 +58,6 @@ static int mixertype; static String driver; - static boolean playDialogVisible; static int playDialogX; static int playDialogY; @@ -138,7 +137,6 @@ driver = getStringValue(p.get("Driver"), ""); int x = (Toolkit.getDefaultToolkit().getScreenSize().width - 275) / 2; int y = (Toolkit.getDefaultToolkit().getScreenSize().height - 345) / 2; - playDialogVisible = getBooleanValue(p.get("PlayDialogVisible"), true); playDialogX = getIntValue(p.get("PlayDialogX"), x); playDialogY = getIntValue(p.get("PlayDialogY"), y); equalizerDialogVisible = getBooleanValue(p.get( @@ -250,7 +248,6 @@ p.put("MixerType", getStringByValue(mixertype, MIXER_TYPES, MIXER_TYPES_VALS, "QUALITY_AUTODETECT")); p.put("Driver", driver); - p.put("PlayDialogVisible", Boolean.toString(playDialogVisible)); p.put("PlayDialogX", Integer.toString(playDialogX)); p.put("PlayDialogY", Integer.toString(playDialogY)); p.put("EqualizerDialogVisible", Boolean.toString( Index: JavaAmp.java =================================================================== RCS file: /cvsroot/javaamp/javaamp/src/JavaAmp.java,v retrieving revision 1.25 retrieving revision 1.26 diff -u -d -r1.25 -r1.26 --- JavaAmp.java 11 Apr 2006 07:42:53 -0000 1.25 +++ JavaAmp.java 11 Apr 2006 18:36:13 -0000 1.26 @@ -8,7 +8,7 @@ public class JavaAmp extends JFrame { private final static long serialVersionUID = 0; - public final static String VERSION = "0.0.5 pre"; + public final static String VERSION = "0.0.5"; public final static String DATE = "April 11 2006"; PlayDialog playDialog; @@ -28,7 +28,6 @@ Runtime.getRuntime().addShutdownHook(new Thread() { public void run() { try { - Settings.playDialogVisible = playDialog.isVisible(); Settings.playDialogX = playDialog.getLocation().x; Settings.playDialogY = playDialog.getLocation().y; Settings.equalizerDialogVisible = @@ -104,11 +103,14 @@ Settings.playlistDialogY, Settings.playlistDialogWidth, Settings.playlistDialogHeight); + playDialog.tobEQ.setSelected(Settings.equalizerDialogVisible); + playDialog.tobPL.setSelected(Settings.playlistDialogVisible); + if(!GraphicsLoader.finishLoading()) throw new Exception(Language.get("ERROR_LOADING_GRAPHICS")); setVisible(true); - playDialog.setVisible(Settings.playDialogVisible); + playDialog.setVisible(true); equalizerDialog.setVisible(Settings.equalizerDialogVisible); playlistDialog.setVisible(Settings.playlistDialogVisible); } Index: PlaylistDialog.java =================================================================== RCS file: /cvsroot/javaamp/javaamp/src/PlaylistDialog.java,v retrieving revision 1.29 retrieving revision 1.30 diff -u -d -r1.29 -r1.30 --- PlaylistDialog.java 11 Apr 2006 07:42:53 -0000 1.29 +++ PlaylistDialog.java 11 Apr 2006 18:36:13 -0000 1.30 @@ -89,18 +89,14 @@ } } public void mouseReleased(MouseEvent e) { - if(ct == 2) { - owner.playDialog.dockedPlaylist2 = - owner.playDialog.dockedPlaylist; - owner.equalizerDialog.dockedPlaylist2 = - owner.equalizerDialog.dockedPlaylist; - } if(e.getX() >= getWidth() - 15 && e.getY() >= getHeight() - 15) setCursor(Cursor.getPredefinedCursor( Cursor.SE_RESIZE_CURSOR)); else setCursor(Cursor.getPredefinedCursor( Cursor.DEFAULT_CURSOR)); + ct = 0; + paint(getGraphics()); } }); addMouseMotionListener(new MouseMotionListener() { @@ -538,28 +534,21 @@ oh = getLocation().y; } Point p = new Point(ow, oh); - Docker.dockScreen(p, new Rectangle(ow, oh, getWidth(), getHeight())); - owner.playDialog.dockedPlaylist = Docker.dock(p, new Rectangle(ow, oh, - getWidth(), getHeight()), owner.playDialog.getBounds()); + Docker.dockScreen(p, new Rectangle(p, getSize())); + Docker.dock(p, new Rectangle(p, getSize()), + owner.playDialog.getBounds()); + if(owner.equalizerDialog.isVisible()) + Docker.dock(p, new Rectangle(p, getSize()), + owner.equalizerDialog.getBounds()); ow = p.x; oh = p.y; - if(owner.equalizerDialog.isVisible()) { - owner.equalizerDialog.dockedPlaylist = Docker.dock(p, - new Rectangle(ow, oh, getWidth(), getHeight()), - owner.equalizerDialog.getBounds()); - ow = p.x; - oh = p.y; - } - else - owner.equalizerDialog.dockedPlaylist = Docker.isDocked(p, - new Rectangle(ow, oh, getWidth(), getHeight()), - owner.equalizerDialog.getBounds()); - setLocation(ow, oh); + setLocation(p); } public void setVisible(boolean b) { super.setVisible(b); - dock(false); + if(b) + dock(false); } public void addURL() { Index: Docker.java =================================================================== RCS file: /cvsroot/javaamp/javaamp/src/Docker.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- Docker.java 11 Apr 2006 07:42:53 -0000 1.5 +++ Docker.java 11 Apr 2006 18:36:13 -0000 1.6 @@ -56,19 +56,4 @@ o.y = r.y + r.height - t.height; return docked; } - - public final static boolean isDocked(Point o, Rectangle t, Rectangle r) { - int dd = Settings.dockingd; - if(t.x + t.width >= r.x - dd && t.x <= r.x + r.width + dd) - if(Math.abs(t.y + t.height - r.y) <= dd) - return true; - else if(Math.abs(r.y + r.height - t.y) <= dd) - return true; - if(t.y + t.height >= r.y - dd && t.y <= r.y + r.height + dd) - if(Math.abs(t.x + t.width - r.x) <= dd) - return true; - else if(Math.abs(r.x + r.width - t.x) <= dd) - return true; - return false; - } } \ No newline at end of file Index: PlayDialog.java =================================================================== RCS file: /cvsroot/javaamp/javaamp/src/PlayDialog.java,v retrieving revision 1.21 retrieving revision 1.22 diff -u -d -r1.21 -r1.22 --- PlayDialog.java 11 Apr 2006 07:42:53 -0000 1.21 +++ PlayDialog.java 11 Apr 2006 18:36:13 -0000 1.22 @@ -33,11 +33,10 @@ JavaAmp owner; Container cntContainer; BevelBorder bebBorder; - int ct, mx, my, ow, oh, ow2, oh2, ow3, oh3; // ct: 0=Fehler, 1=Position, + int ct, mx, my, ow, oh, ow2, oh2, ow3, oh3; // ct: 0=Nichts, 1=Position, // 2=Min, 3=Schl, 4=Einst + boolean meq, mpl, mep; int loopmode; // 0=kein, 1=eine datei, 2=alle dateien - boolean dockedEqualizer, dockedEqualizer2; - boolean dockedPlaylist, dockedPlaylist2; PlayQueue pq; BufferedImage buiOffscreen; @@ -54,8 +53,6 @@ setUndecorated(true); setSize(275, 115); - dockedEqualizer = dockedEqualizer2 = true; - dockedPlaylist = dockedPlaylist2 = false; addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { @@ -64,12 +61,6 @@ return; mx = e.getX(); my = e.getY(); - ow = getLocation().x; - oh = getLocation().y; - ow2 = owner.playlistDialog.getLocation().x - ow; - oh2 = owner.playlistDialog.getLocation().y - oh; - ow3 = owner.equalizerDialog.getLocation().x - ow; - oh3 = owner.equalizerDialog.getLocation().y - oh; if(my >= 12) ct = 1; else if(mx <= 11) @@ -80,16 +71,12 @@ ct = 2; else ct = 1; + if(ct == 1) + dock(false); paint(getGraphics()); } public void mouseReleased(MouseEvent e) { - if(ct == 1) { - dockedEqualizer2 = dockedEqualizer; - dockedPlaylist2 = dockedPlaylist; - owner.equalizerDialog.dockedPlaylist2 = - owner.equalizerDialog.dockedPlaylist; - } if(e.getButton() == MouseEvent.BUTTON1 && my < 12 && e.getY() < 12) if(ct == 3 && e.getX() > 262) @@ -301,12 +288,7 @@ tobEQ.setBounds(228, 55, 20, 15); tobEQ.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - boolean flag = tobEQ.isSelected(); - owner.equalizerDialog.setVisible(flag); - if(!flag && !dockedPlaylist2 && dockedEqualizer2 && - owner.equalizerDialog.dockedPlaylist2) - owner.equalizerDialog.dockedPlaylist = - owner.equalizerDialog.dockedPlaylist2 = false; + owner.equalizerDialog.setVisible(tobEQ.isSelected()); } }); @@ -316,12 +298,7 @@ tobPL.setBounds(250, 55, 20, 15); tobPL.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - boolean flag = tobPL.isSelected(); - owner.playlistDialog.setVisible(flag); - if(!flag && !dockedEqualizer && dockedPlaylist2 && - owner.equalizerDialog.dockedPlaylist2) - owner.equalizerDialog.dockedPlaylist = - owner.equalizerDialog.dockedPlaylist2 = false; + owner.playlistDialog.setVisible(tobPL.isSelected()); } }); @@ -543,79 +520,83 @@ if(!moved) { ow = getLocation().x; oh = getLocation().y; + Point p = new Point(ow, oh); + if(owner.equalizerDialog.isVisible()) + meq = Docker.dock(p, new Rectangle(p, getSize()), new Rectangle( + owner.equalizerDialog.getBounds())); + else + meq = false; + if(owner.playlistDialog.isVisible()) + mpl = Docker.dock(p, new Rectangle(p, getSize()), new Rectangle( + owner.playlistDialog.getBounds())); + else + mpl = false; + ow = p.x; + oh = p.y; + if((meq ^ mpl) && owner.equalizerDialog.isVisible() && + owner.playlistDialog.isVisible()) { + p = new Point(owner.equalizerDialog.getLocation()); + mep = Docker.dock(p, new Rectangle( + owner.equalizerDialog.getBounds()), new Rectangle( + owner.playlistDialog.getBounds())); + if(mep) + owner.equalizerDialog.setLocation(p); + } + else + mep = false; ow2 = owner.playlistDialog.getLocation().x - ow; oh2 = owner.playlistDialog.getLocation().y - oh; ow3 = owner.equalizerDialog.getLocation().x - ow; oh3 = owner.equalizerDialog.getLocation().y - oh; } Point p = new Point(ow, oh); - Docker.dockScreen(p, new Rectangle(ow, oh, getWidth(), getHeight())); - if(!dockedPlaylist2 && owner.playlistDialog.isVisible()) - dockedPlaylist = Docker.dock(p, new Rectangle(ow, oh, getWidth(), - getHeight()), owner.playlistDialog.getBounds()); - if(!dockedEqualizer2 && owner.equalizerDialog.isVisible()) - dockedEqualizer = Docker.dock(p, new Rectangle(ow, oh, getWidth(), - getHeight()), owner.equalizerDialog.getBounds()); - ow = p.x; - oh = p.y; - if((dockedPlaylist2 || (dockedEqualizer2 && - owner.equalizerDialog.dockedPlaylist2)) && - owner.playlistDialog.isVisible()) { - p = new Point(ow + ow2, oh + oh2); - Docker.dockScreen(p, new Rectangle(ow + ow2, oh + oh2, - owner.playlistDialog.getWidth(), - owner.playlistDialog.getHeight())); - ow = p.x - ow2; - oh = p.y - oh2; - } - if((dockedEqualizer2 || (dockedPlaylist2 && - owner.equalizerDialog.dockedPlaylist2)) && - owner.equalizerDialog.isVisible()) { - p = new Point(ow + ow3, oh + oh3); - Docker.dockScreen(p, new Rectangle(ow + ow3, oh + oh3, - owner.equalizerDialog.getWidth(), - owner.equalizerDialog.getHeight())); - ow = p.x - ow3; - oh = p.y - oh3; - } - if(dockedPlaylist2 || (dockedEqualizer2 && - owner.equalizerDialog.dockedPlaylist2)) { - p = new Point(ow + ow2, oh + oh2); - if(!owner.equalizerDialog.dockedPlaylist2 && - owner.playlistDialog.isVisible() && - owner.equalizerDialog.isVisible()) { - owner.equalizerDialog.dockedPlaylist = Docker.dock(p, - new Rectangle(ow + ow2, oh + oh2, - owner.playlistDialog.getWidth(), - owner.playlistDialog.getHeight()), + Docker.dockScreen(p, new Rectangle(p, getSize())); + if(owner.equalizerDialog.isVisible() && !meq && !(mep && mpl)) { + Docker.dock(p, new Rectangle(p, getSize()), + owner.equalizerDialog.getBounds()); + if(mpl) { + p.translate(ow2, oh2); + Docker.dock(p, new Rectangle(p, owner.playlistDialog.getSize()), owner.equalizerDialog.getBounds()); - ow = p.x - ow2; - oh = p.y - oh2; + p.translate(-ow2, -oh2); } - owner.playlistDialog.setLocation(ow + ow2, oh + oh2); } - if(dockedEqualizer2 || (dockedPlaylist2 && - owner.equalizerDialog.dockedPlaylist2)) { - p = new Point(ow + ow3, oh + oh3); - if(!owner.equalizerDialog.dockedPlaylist2 && - owner.playlistDialog.isVisible() && - owner.equalizerDialog.isVisible()) { - owner.equalizerDialog.dockedPlaylist = Docker.dock(p, - new Rectangle(ow + ow3, oh + oh3, - owner.equalizerDialog.getWidth(), - owner.equalizerDialog.getHeight()), + if(owner.playlistDialog.isVisible() && !mpl && !(mep && meq)) { + Docker.dock(p, new Rectangle(p, getSize()), + owner.playlistDialog.getBounds()); + if(meq) { + p.translate(ow3, oh3); + Docker.dock(p, new Rectangle(p, + owner.equalizerDialog.getSize()), owner.playlistDialog.getBounds()); - ow = p.x - ow3; - oh = p.y - oh3; + p.translate(-ow3, -oh3); } - owner.equalizerDialog.setLocation(ow + ow3, oh + oh3); } - setLocation(ow, oh); + if(mpl || (mep && meq)) { + p.translate(ow2, oh2); + Docker.dockScreen(p, new Rectangle(p, + owner.playlistDialog.getSize())); + p.translate(-ow2, -oh2); + } + if(meq || (mep && mpl)) { + p.translate(ow3, oh3); + Docker.dockScreen(p, new Rectangle(p, + owner.equalizerDialog.getSize())); + p.translate(-ow3, -oh3); + } + ow = p.x; + oh = p.y; + setLocation(p); + if(mpl || (mep && meq)) + owner.playlistDialog.setLocation(ow + ow2, oh + oh2); + if(meq || (mep && mpl)) + owner.equalizerDialog.setLocation(ow + ow3, oh + oh3); } public void setVisible(boolean b) { super.setVisible(b); - dock(false); + if(b) + dock(false); } public void showAbout() { |