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

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

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

revision 1466 by iliev, Mon Oct 15 20:55:33 2007 UTC revision 1467 by iliev, Sat Nov 3 13:14:31 2007 UTC
# 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.Container;
27  import java.awt.Cursor;  import java.awt.Cursor;
28  import java.awt.Dimension;  import java.awt.Dimension;
29  import java.awt.Insets;  import java.awt.Insets;
30    import java.awt.Rectangle;
31    
32  import java.awt.event.ActionEvent;  import java.awt.event.ActionEvent;
33  import java.awt.event.ActionListener;  import java.awt.event.ActionListener;
# Line 39  import javax.swing.BorderFactory; Line 41  import javax.swing.BorderFactory;
41  import javax.swing.Box;  import javax.swing.Box;
42  import javax.swing.BoxLayout;  import javax.swing.BoxLayout;
43  import javax.swing.JPanel;  import javax.swing.JPanel;
44    import javax.swing.JScrollPane;
45  import javax.swing.ListSelectionModel;  import javax.swing.ListSelectionModel;
46    
47  import net.sf.juife.ComponentList;  import net.sf.juife.ComponentList;
# Line 222  public class AudioDevicesPane extends JP Line 225  public class AudioDevicesPane extends JP
225                          createDevicePane.addPropertyChangeListener(s, new PropertyChangeListener() {                          createDevicePane.addPropertyChangeListener(s, new PropertyChangeListener() {
226                                  public void                                  public void
227                                  propertyChange(PropertyChangeEvent e) {                                  propertyChange(PropertyChangeEvent e) {
228                                          if(e.getNewValue() == "collapsed") {                                          Object o = e.getNewValue();
229                                            if(o == "collapsed") {
230                                                  if(createDevice) {                                                  if(createDevice) {
231                                                          createAudioDevice0(pane);                                                          createAudioDevice0(pane);
232                                                          createDevice = false;                                                          createDevice = false;
233                                                  }                                                  }
234                                            } else if(o == "expanded" || o == "expanding/collapsing") {
235                                                    ensureCreateDevicePaneIsVisible();
236                                          }                                          }
237                                  }                                  }
238                          });                          });
# Line 281  public class AudioDevicesPane extends JP Line 287  public class AudioDevicesPane extends JP
287                          pane.btnCreate.setEnabled(false);                          pane.btnCreate.setEnabled(false);
288                          final AudioOutputDriver driver = pane.getSelectedDriver();                          final AudioOutputDriver driver = pane.getSelectedDriver();
289                          final Audio.CreateDevice cmd =                          final Audio.CreateDevice cmd =
290                                  new  Audio.CreateDevice(driver.getName(), driver.getParameters());                                  new  Audio.CreateDevice(driver.getName(), pane.getParameters());
291                                                                    
292                          cmd.addTaskListener(new TaskListener() {                          cmd.addTaskListener(new TaskListener() {
293                                  public void                                  public void
# Line 293  public class AudioDevicesPane extends JP Line 299  public class AudioDevicesPane extends JP
299                                                    
300                          CC.getTaskQueue().add(cmd);                          CC.getTaskQueue().add(cmd);
301                  }                  }
302                    
303                    private void
304                    ensureCreateDevicePaneIsVisible() {
305                            Container p = createDevicePane.getParent();
306                            JScrollPane sp = null;
307                            int i = createDevicePane.getLocation().y + createDevicePane.getHeight();
308                            while(p != null) {
309                                    if(p instanceof JScrollPane) {
310                                            sp = (JScrollPane)p;
311                                            break;
312                                    }
313                                    i += p.getLocation().y;
314                                    p = p.getParent();
315                            }
316                            
317                            if(sp == null) return;
318                            sp.getViewport().scrollRectToVisible(new Rectangle(0, i, 5, 5));
319                    }
320          }          }
321                    
322          private final EventHandler eventHandler = new EventHandler();          private final EventHandler eventHandler = new EventHandler();

Legend:
Removed from v.1466  
changed lines
  Added in v.1467

  ViewVC Help
Powered by ViewVC