Package de.sciss.gui

Examples of de.sciss.gui.SpringPanel


   
//      final FileDialog      fDlg;
      final AudioFileDescr[]    afds;
      final AudioFileFormatPane  affp;
//      final JOptionPane      dlg;
      final SpringPanel      msgPane;
      final PathField[]      ggPathFields;
      final int[]          channelsUsed  = new int[ protoType.length ];
      final JCheckBox        ggOpenAfterSave;
      final String        prefsDirKey    = selectionSettings ? PrefsUtil.KEY_FILESAVESELDIR : PrefsUtil.KEY_FILESAVEDIR;
      final JPanel        p;
      int              filesUsed    = 0;
      File            f; // , f2;
      String[]          queryOptions  = { getResourceString( "buttonSave" ),
                                getResourceString( "buttonCancel" )};
      int              i, result;
      String            str;
      JLabel            lb;
      String            fileName, dirName;
      boolean            setFocus    = false;
      int              y        = 0;
     
//System.out.print( "channelMap = [ " );
//for( int kkk = 0; kkk < channelMap.length; kkk++ ) System.out.print( (kkk > 0 ? ", " : "") + channelMap[ kkk ]);
//System.out.println( " ]" );
     
      msgPane      = new SpringPanel( 4, 2, 4, 2 );
      ggPathFields  = new PathField[ protoType.length ];
      affp      = new AudioFileFormatPane( AudioFileFormatPane.FORMAT | AudioFileFormatPane.ENCODING );
      affp.fromDescr( protoType[0] );
      lb        = new JLabel( getResourceString( "labelOutputFile" ), RIGHT );
//      lb.setLabelFor( ggPathField );
      msgPane.gridAdd( lb, 0, y );
      for( int j = 0, chanOff = 0; j < protoType.length; chanOff += protoType[ j ].channels, j++, y++ ) {
        if( channelMap == null ) {
          channelsUsed[ j ] = protoType[ j ].channels;
        } else {
          for( int k = 0; k < channelMap.length; k++ ) {
            if( (channelMap[ k ] >= chanOff) && (channelMap[ k ] < chanOff + protoType[ j ].channels) ) {
              channelsUsed[ j ]++;
            }
          }
        }
//System.out.println( "channelsUsed[ " + j + " ] = " + channelsUsed[ j ]);
        if( channelsUsed[ j ] == 0 ) continue;

        filesUsed++;
        ggPathFields[ j ] = new PathField( PathField.TYPE_OUTPUTFILE, getValue( NAME ).toString() );
        if( protoType[ j ].file == null ) {
          fileName  = getResourceString( "frameUntitled" ) + (ggPathFields.length > 1 ? "-" + (j+1) : "");
        } else if( asCopySettings || selectionSettings ) {
          str  = protoType[ j ].file.getName();
          i  = str.lastIndexOf( '.' );
          if( i == -1 ) i = str.length();
          fileName = str.substring( 0, i ) + (selectionSettings ? getResourceString( "fileDlgCut" ) : " " + getResourceString( "fileDlgCopy" )); // suffix is appended by affp!
        } else {
          fileName = protoType[ j ].file.getName();
        }
        dirName = app.getUserPrefs().get( prefsDirKey, protoType[ j ].file == null ? System.getProperty( "user.home" ) : protoType[ j ].file.getParent() );
        ggPathFields[ j ].setPath( new File( dirName, fileName ));
        affp.automaticFileSuffix( ggPathFields[ j ] );
        if( (protoType[ j ].file == null) || asCopySettings || selectionSettings ) {  // create non-existent file name
          ggPathFields[ j ].setPath( IOUtil.nonExistentFileVariant( ggPathFields[ j ].getPath(), -1,
            selectionSettings ? null : " ", null ));
        }
        ggPathFields[ j ].selectFileName( false );
        msgPane.gridAdd( ggPathFields[ j ], 1, y );
        if( !setFocus ) {
          GUIUtil.setInitialDialogFocus( ggPathFields[ j ]);
          setFocus = true;
        }
      }
      lb = new JLabel( getResourceString( "labelFormat" ), RIGHT );
      msgPane.gridAdd( lb, 0, y );
      msgPane.gridAdd( affp, 1, y, -1, 1 );
      lb.setLabelFor( affp );
      y++;
     
      if( asCopySettings ) {
        ggOpenAfterSave = new JCheckBox( getResourceString( "labelOpenAfterSave" ));
        ggOpenAfterSave.setSelected( openAfterSaveSettings.isSet() );
        msgPane.gridAdd( ggOpenAfterSave, 1, y );
      } else {
        ggOpenAfterSave  = null;
//        msgPane.gridAdd( new JLabel( " " ), 1, y );
      }

      AbstractWindowHandler.setDeepFont( msgPane );
      msgPane.makeCompactGrid();
      p      = new JPanel( new BorderLayout() );
      p.add( msgPane, BorderLayout.NORTH );

      final JOptionPane op = new JOptionPane( p, JOptionPane.QUESTION_MESSAGE, JOptionPane.YES_NO_OPTION, null, queryOptions, queryOptions[ 0 ]);
//      result    = JOptionPane.showOptionDialog( getWindow(), p, getValue( NAME ).toString(),
View Full Code Here


    PrefCheckBox          ggCheckBox;
        PrefComboBox          ggChoice;
    JTabbedPane            ggTabPane;
    JLabel              lb;
        UIManager.LookAndFeelInfo[]    lafInfos;
    SpringPanel            tab;

    Preferences            prefs;
    String              key, key2, title;
    int                row;

    ggTabPane      = new JTabbedPane();

      setTitle( getResourceString( "framePrefs" ));

      // ---------- global pane ----------

    tab    = createTab();

    row  = 0;
    prefs   = IOUtil.getUserPrefs();
    key    = IOUtil.KEY_TEMPDIR;
    key2  = "prefsTmpDir";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggPath = new PrefPathField( PathField.TYPE_FOLDER, getResourceString( key2 ));
    ggPath.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggPath, key2 );  // EEE
    tab.gridAdd( ggPath, 1, row );

    row++;
    prefs   = app.getUserPrefs();
    key    = PrefsUtil.KEY_RECALLFRAMES;
    key2  = "prefsRecallFrames";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggCheckBox  = new PrefCheckBox();
    ggCheckBox.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggCheckBox, key2 );  // EEE
    tab.gridAdd( ggCheckBox, 1, row );
   
    row++;
    prefs   = app.getUserPrefs();
        key     = PrefsUtil.KEY_LOOKANDFEEL;
    key2  = "prefsLookAndFeel";
    title  = getResourceString( key2 );
    lb    = new JLabel( title, TRAILING );
    tab.gridAdd( lb, 0, row );
    ggChoice = new PrefComboBox();
    lafInfos = UIManager.getInstalledLookAndFeels();
        for( int i = 0; i < lafInfos.length; i++ ) {
            ggChoice.addItem( new StringItem( lafInfos[i].getClassName(), lafInfos[i].getName() ));
        }
    ggChoice.setPreferences( prefs, key );
    ggChoice.addActionListener( new WarnPrefsChange( ggChoice, ggChoice, haveWarned, txtWarnLookAndFeel, title ));
   
    tab.gridAdd( ggChoice, 1, row, -1, 1 );

    row++;
         key    = BasicWindowHandler.KEY_LAFDECORATION;
    key2  = "prefsLAFDecoration";
    title  = getResourceString( key2 );
    ggCheckBox  = new PrefCheckBox( title );
    ggCheckBox.setPreferences( prefs, key );
    tab.gridAdd( ggCheckBox, 1, row, -1, 1 );
    ggCheckBox.addActionListener( new WarnPrefsChange( ggCheckBox, ggCheckBox, haveWarned, txtWarnLookAndFeel, title ));

    row++;
         key    = BasicWindowHandler.KEY_INTERNALFRAMES;
    key2  = "prefsInternalFrames";
    title  = getResourceString( key2 );
    ggCheckBox  = new PrefCheckBox( title );
    ggCheckBox.setPreferences( prefs, key );
    tab.gridAdd( ggCheckBox, 1, row, -1, 1 );
    ggCheckBox.addActionListener( new WarnPrefsChange( ggCheckBox, ggCheckBox, haveWarned, txtWarnLookAndFeel, title ));

    row++;
         key    = CoverGrowBox.KEY_INTRUDINGSIZE;
    key2  = "prefsIntrudingSize";
    ggCheckBox  = new PrefCheckBox( getResourceString( key2 ));
    ggCheckBox.setPreferences( prefs, key );
    tab.gridAdd( ggCheckBox, 1, row, -1, 1 );

    row++;
         key    = BasicWindowHandler.KEY_FLOATINGPALETTES;
    key2  = "prefsFloatingPalettes";
    ggCheckBox  = new PrefCheckBox( getResourceString( key2 ));
    ggCheckBox.setPreferences( prefs, key );
    tab.gridAdd( ggCheckBox, 1, row, -1, 1 );
    ggCheckBox.addActionListener( new WarnPrefsChange( ggCheckBox, ggCheckBox, haveWarned, txtWarnLookAndFeel, title ));

    row++;
    prefs   = GUIUtil.getUserPrefs();
//       key    = HelpGlassPane.KEY_KEYSTROKE_HELP;  // EEE
    key2  = "prefsKeyStrokeHelp";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggKeyStroke = new KeyStrokeTextField();
    ggKeyStroke.setPreferences( prefs, key );
//      HelpGlassPane.setHelp( ggKeyStroke, key2 );  // EEE
    tab.gridAdd( ggKeyStroke, 1, row );
   
    addTab( ggTabPane, tab, "prefsGeneral" );

    // ---------- plug-ins pane ----------

    prefs   = app.getUserPrefs().node( PrefsUtil.NODE_PLUGINS );
    tab    = createTab();

    row  = 0;
    key    = PrefsUtil.KEY_LISPREALTIMELIST;
    key2  = "prefsLispRealtimeList";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggPath  = new PrefPathField( PathField.TYPE_INPUTFILE, getResourceString( key2 ));
    ggPath.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggPath, key2 );  // EEE
    tab.gridAdd( ggPath, 1, row );

    row++;
    key    = PrefsUtil.KEY_LISPBOUNCELIST;
    key2  = "prefsLispBounceList";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggPath  = new PrefPathField( PathField.TYPE_INPUTFILE, getResourceString( key2 ));
    ggPath.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggPath, key2 );  // EEE
    tab.gridAdd( ggPath, 1, row );

    row++;
    key    = PrefsUtil.KEY_LISPFILTERLIST;
    key2  = "prefsLispFilterList";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggPath = new PrefPathField( PathField.TYPE_INPUTFILE, getResourceString( key2 ));
    ggPath.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggPath, key2 );  // EEE
    tab.gridAdd( ggPath, 1, row );

    row++;
    key    = PrefsUtil.KEY_SUPERCOLLIDEROSC;
    key2  = "prefsSuperColliderOSC";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggText  = new PrefTextField( 32 );
    ggText.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggText, key2 );  // EEE
    tab.gridAdd( ggText, 1, row );

    row++;
    key    = PrefsUtil.KEY_SUPERCOLLIDERAPP;
    key2  = "prefsSuperColliderApp";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggPath = new PrefPathField( PathField.TYPE_INPUTFILE, getResourceString( key2 ));
    ggPath.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggPath, key2 );  // EEE
    tab.gridAdd( ggPath, 1, row );

    row++;
    key    = PrefsUtil.KEY_CSOUNDAPP;
    key2  = "prefsCSoundApp";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggPath = new PrefPathField( PathField.TYPE_INPUTFILE, getResourceString( key2 ));
    ggPath.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggPath, key2 );  // EEE
    tab.gridAdd( ggPath, 1, row );

    row++;
    key    = PrefsUtil.KEY_AUDIOINPUTS;
    key2  = "prefsAudioInputChannels";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggNumber  = new PrefNumberField();
    ggNumber.setSpace( NumberSpace.createIntSpace( 0, 16384 ));
//    ggNumber.setUnit( getResourceString( "labelUnitChannels" ));  // EEE
    ggNumber.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggNumber, key2 );  // EEE
    tab.gridAdd( ggNumber, 1, row );

    row++;
    key    = PrefsUtil.KEY_AUDIOOUTPUTS;
    key2  = "prefsAudioOutputChannels";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggNumber  = new PrefNumberField();
    ggNumber.setSpace( NumberSpace.createIntSpace( 0, 16384 ));
//    ggNumber.setUnit( getResourceString( "labelUnitChannels" ));  // EEE
    ggNumber.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggNumber, key2 );  // EEE
    tab.gridAdd( ggNumber, 1, row );

    row++;
    key    = PrefsUtil.KEY_AUDIORATE;
    key2  = "prefsAudioRate";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggNumber  = new PrefNumberField();
    ggNumber.setSpace( NumberSpace.createIntSpace( 1, 768000 ));
//    ggNumber.setUnit( getResourceString( "labelUnitHertz" ));  // EEE
    ggNumber.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggNumber, key2 );  // EEE
    tab.gridAdd( ggNumber, 1, row );

    row++;
    key    = PrefsUtil.KEY_RTSENSEBUFSIZE;
    key2  = "prefsRTSenseBufSize";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggNumber  = new PrefNumberField();
    ggNumber.setSpace( NumberSpace.createIntSpace( 1, 60000 ));
//    ggNumber.setUnit( getResourceString( "labelUnitMillisec" ));  // EEE
    ggNumber.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggNumber, key2 );  // EEE
    tab.gridAdd( ggNumber, 1, row );

    row++;
    key    = PrefsUtil.KEY_RTMAXSENSERATE;
    key2  = "prefsRTMaxSenseRate";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggNumber  = new PrefNumberField();
    ggNumber.setSpace( NumberSpace.createIntSpace( 1, 768000 ));
//    ggNumber.setUnit( getResourceString( "labelUnitHertz" ));  // EEE
    ggNumber.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggNumber, key2 );  // EEE
    tab.gridAdd( ggNumber, 1, row );

    row++;
    key    = PrefsUtil.KEY_OLSENSEBUFSIZE;
    key2  = "prefsOLSenseBufSize";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggNumber  = new PrefNumberField();
    ggNumber.setSpace( NumberSpace.createIntSpace( 1, 60000 ));
//    ggNumber.setUnit( getResourceString( "labelUnitMillisec" ));  // EEE
    ggNumber.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggNumber, key2 );  // EEE
    tab.gridAdd( ggNumber, 1, row );

    addTab( ggTabPane, tab, "prefsPlugIns" );

    // ---------- session pane ----------

    prefs   = app.getUserPrefs().node( PrefsUtil.NODE_SESSION );
    tab    = createTab();
    row  = 0;

    key    = PrefsUtil.KEY_COMMENT;
    key2  = "prefsComment";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggArea  = new PrefTextArea( 6, 32 );
    ggArea.setPreferences( prefs, key );
//        HelpGlassPane.setHelp( ggArea, key2 );  // EEE
    tab.gridAdd( ggArea, 1, row );

    row++;
    key2  = "prefsSenseRate";
    lb    = new JLabel( getResourceString( key2 ), JLabel.TRAILING );
    tab.gridAdd( lb, 0, row );
    ggRate  = new PrefNumberField();
    ggRate.setSpace( NumberSpace.createIntSpace( 1, 768000 ));
//    ggRate.setUnit( getResourceString( "labelUnitHertz" ));  // EEE
//    ggNumber.setPreferences( prefs, key );
    tab.gridAdd( ggRate, 1, row );
    ggRate.addListener( new NumberListener() {
      public void numberChanged( NumberEvent e )
      {
        if( !doc.bird.attemptExclusive( Session.DOOR_TIME, 250 )) {
          ggRate.setNumber( new Double( doc.timeline.getRate() ));   // undo
          return;
        }
        try {
//          root.transport.stopAndWait();
          int newRate = ggRate.getNumber().intValue();
          if( newRate != doc.timeline.getRate() ) {
            doc.timeline.setRate( ggRate, newRate );
          }
        } finally {
          doc.bird.releaseExclusive( Session.DOOR_TIME );
        }
      }
    });
//        HelpGlassPane.setHelp( ggRate, key2 );  // EEE
    tab.gridAdd( ggRate, 1, row );

    addTab( ggTabPane, tab, "prefsSession" );

    // ---------- generic gadgets ----------
View Full Code Here

    super.dispose();
  }

    private SpringPanel createTab()
    {
      return new SpringPanel( 2, 1, 4, 2 );
    }
View Full Code Here

// EEE
//    setResizable( false );
   
    final Container    cp    = getContentPane();
    JPanel        c;
    SpringPanel      p;
    JLabel        lb;
    GridBagLayout    lay;
    GridBagConstraints  con;

    ggTabPane = new JTabbedPane();
        ggTabPane.setTabLayoutPolicy( JTabbedPane.WRAP_TAB_LAYOUT );

    // ----- cursor tab ------
    c        = new JPanel();
    lay        = new GridBagLayout();
    con        = new GridBagConstraints();
    con.insets    = new Insets( 2, 2, 2, 2 );
    c.setLayout( lay );
    con.weightx    = 1.0;
    con.gridwidth   = GridBagConstraints.REMAINDER;
    lbCursorInfo  = new JLabel[ NUM_CURSOR_ROWS ];
    for( int i = 0; i < NUM_CURSOR_ROWS; i++ ) {
      lb      = new JLabel();
      lay.setConstraints( lb, con );
      c.add( lb );
      lbCursorInfo[i] = lb;
    }
    ggTabPane.addTab( app.getResourceString( "observerCursor" ), null, c, null );
       
    // ----- session objects tab ------
    for( int i = 0; i < 3; i++ ) {
      c        = new JPanel();
      lay        = new GridBagLayout();
      con        = new GridBagConstraints();
      con.insets    = new Insets( 2, 2, 2, 2 );
      c.setLayout( lay );
      lb        = new JLabel( app.getResourceString( "labelName" ), JLabel.RIGHT );
      con.weightx    = 0.0;
      con.gridwidth   = 1;
      lay.setConstraints( lb, con );
      c.add( lb );
      ggNames[ i = new JTextField( 12 );
      con.weightx    = 1.0;
      con.gridwidth   = GridBagConstraints.REMAINDER;
      lay.setConstraints( ggNames[ i ], con );
      lb.setLabelFor( ggNames[ i ]);
      c.add( ggNames[ i ]);
      con.fill    = GridBagConstraints.BOTH;
      con.weighty    = 1.0;
      ggTables[ i = new SessionObjectTable();
      lay.setConstraints( ggTables[ i ], con );
      c.add( ggTables[ i ]);
      ggTabPane.addTab( app.getResourceString( TAB_NAMES[ i ]), null, c, null );
//      HelpGlassPane.setHelp( c, HELP_NAMES[ i ]);  // EEE
     
//      switch( i ) {
//      case 0:
//        scSel  = doc.selectedReceivers;
//        scAll  = doc.receivers;
//        break;
//      case 1:
//        scSel  = doc.selectedTransmitters;
//        scAll  = doc.transmitters;
//        break;
//      case 2:
//        scSel  = doc.selectedGroups;
//        scAll  = doc.groups;
//        break;
//      default:
//        assert false : i;
//        scSel  = null;
//        scAll  = null;
//        break;
//      }
//     
//      new SessionCollectionListener( scSel, scAll, i + 1, ggName, ggTable, getMyRooty() );
    }

    // ----- timeline tab ------
    timeTrans    = new DefaultUnitTranslator();
   
    p        = new SpringPanel( 4, 2, 4, 2 );
    lb        = new JLabel( app.getResourceString( "observerStart" ), RIGHT );
    p.gridAdd( lb, 1, 0 );
    ggTimelineStart  = new ParamField( timeTrans );
    ggTimelineStart.addSpace( ParamSpace.spcTimeHHMMSS );
    ggTimelineStart.addSpace( ParamSpace.spcTimeSmps );
    ggTimelineStart.addSpace( ParamSpace.spcTimeMillis );
    ggTimelineStart.addSpace( ParamSpace.spcTimePercentR );
    ggTimelineStart.addListener( this );
    p.gridAdd( ggTimelineStart, 2, 0 );
    lb.setLabelFor( ggTimelineStart );
   
    ggLockStop    = new LockButton( true );
    ggLockStop.addActionListener( this );
    p.gridAdd( ggLockStop, 0, 1 );
    lb        = new JLabel( app.getResourceString( "observerStop" ), RIGHT );
    p.gridAdd( lb, 1, 1 );
    ggTimelineStop  = new ParamField( timeTrans );
    ggTimelineStop.addSpace( ParamSpace.spcTimeHHMMSS );
    ggTimelineStop.addSpace( ParamSpace.spcTimeSmps );
    ggTimelineStop.addSpace( ParamSpace.spcTimeMillis );
    ggTimelineStop.addSpace( ParamSpace.spcTimePercentR );
    ggTimelineStop.addListener( this );
    p.gridAdd( ggTimelineStop, 2, 1 );
    lb.setLabelFor( ggTimelineStop );

    ggLockLen    = new LockButton( true );
    ggLockLen.addActionListener( this );
    p.gridAdd( ggLockLen, 0, 2 );
    lb        = new JLabel( app.getResourceString( "observerLen" ), RIGHT );
    p.gridAdd( lb, 1, 2 );
    ggTimelineLen  = new ParamField( timeTrans );
    ggTimelineLen.addSpace( ParamSpace.spcTimeHHMMSS );
    ggTimelineLen.addSpace( ParamSpace.spcTimeSmps );
    ggTimelineLen.addSpace( ParamSpace.spcTimeMillis );
    ggTimelineLen.addSpace( ParamSpace.spcTimePercentR );
    ggTimelineLen.addListener( this );
    p.gridAdd( ggTimelineLen, 2, 2 );
    lb.setLabelFor( ggTimelineLen );
   
    p.makeCompactGrid( false, false );
    ggTabPane.addTab( app.getResourceString( "observerTimeline" ), null, p, null );
    cp.add( BorderLayout.CENTER, ggTabPane );
   
    AbstractWindowHandler.setDeepFont( ggTabPane );
View Full Code Here

      perform();
    }
   
    private void perform()
    {
      final SpringPanel      msgPane;
      final int          result;
      final ParamField      ggDuration;
      final Param          durationSmps;
      final DefaultUnitTranslator  timeTrans;
     
      msgPane      = new SpringPanel( 4, 2, 4, 2 );
      timeTrans    = new DefaultUnitTranslator();
      ggDuration    = new ParamField( timeTrans );
      ggDuration.addSpace( ParamSpace.spcTimeHHMMSS );
      ggDuration.addSpace( ParamSpace.spcTimeSmps );
      ggDuration.addSpace( ParamSpace.spcTimeMillis );
      ggDuration.addSpace( ParamSpace.spcTimePercentF );
      msgPane.gridAdd( ggDuration, 0, 0 );
      msgPane.makeCompactGrid();
      GUIUtil.setInitialDialogFocus( ggDuration );

      timeTrans.setLengthAndRate( timeline.getLength(), timeline.getRate() );

      if( value == null ) {
View Full Code Here

      editIdx = -(editIdx + 2);
      if( editIdx == -1 ) return;
    }
 
    if( editMarkerPane == null ) {
      final SpringPanel    spring;
      final ActionMap      amap;
      final InputMap      imap;
      JLabel          lb;
      KeyStroke        ks;
      Action          a;

      spring      = new SpringPanel( 4, 2, 4, 2 );
      ggMarkName    = new JTextField( 24 );
//      GUIUtil.setInitialDialogFocus( ggMarkName );  // removes itself automatically
      ggMarkName.addAncestorListener( new AncestorAdapter() {
        public void ancestorAdded( AncestorEvent e ) {
          ggMarkName.requestFocusInWindow();
          ggMarkName.selectAll();
//          c.removeAncestorListener( this );
        }
      });

      // XXX sync
      timeTrans    = new DefaultUnitTranslator();
      ggMarkPos    = new ParamField( timeTrans );
      ggMarkPos.addSpace( ParamSpace.spcTimeHHMMSS );
      ggMarkPos.addSpace( ParamSpace.spcTimeSmps );
      ggMarkPos.addSpace( ParamSpace.spcTimeMillis );
      ggMarkPos.addSpace( ParamSpace.spcTimePercentF );

      lb        = new JLabel( getResourceString( "labelName" ));
//      lb.setLabelFor( ggMarkName );
      spring.gridAdd( lb, 0, 0 );
      spring.gridAdd( ggMarkName, 1, 0 );
      lb        = new JLabel( getResourceString( "labelPosition" ));
//      lb.setLabelFor( ggMarkPos );
      spring.gridAdd( lb, 0, 1 );
      spring.gridAdd( ggMarkPos, 1, 1, -1, 1 );
//      GUIUtil.setDeepFont( spring, null );
      spring.makeCompactGrid();
      editMarkerPane  = new JPanel( new BorderLayout() );
      editMarkerPane.add( spring, BorderLayout.NORTH );
     
      amap      = spring.getActionMap();
      imap      = spring.getInputMap( JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT );
      ks        = KeyStroke.getKeyStroke( KeyEvent.VK_LEFT, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() );
// XXX DOESN'T WORK ;-(
//      ggMarkName.getInputMap().remove( ks );
      imap.put( ks, "prev" );
      a        = new ActionEditPrev();
View Full Code Here

  private void createGadgets( int flags )
  {
    bottomPanel    = createBottomPanel( flags );
//    ggSettingsPane  = new JScrollPane( JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
//                       JScrollPane.HORIZONTAL_SCROLLBAR_NEVER );
    ggSettingsPane  = new SpringPanel( 4, 2, 4, 2 );
//    ggBlendTime    = new PrefNumberField( 0, NumberSpace.genericDoubleSpace, "sec." );
    ut.setLengthAndRate( 0, timeline.getRate() );
    ggBlendTime    = new PrefParamField( ut );
    ggBlendTime.addSpace( ParamSpace.spcTimeMillis );
    ggBlendTime.addSpace( ParamSpace.spcTimeSmps );
View Full Code Here

      }
    }

    if( (flagsAdded & FORMAT_ENCODING_RATE) != 0 ) {
      if( pEnc == null ) {
        pEnc = new SpringPanel( 4, 2, 4, 2 );
        gridAdd( pEnc, 0, 0, -1, 1 );
      }
      if( (flagsAdded & FORMAT) != 0 ) {
        ggFormat  = new PrefComboBox();
        items    = AudioFileDescr.getFormatItems();
        for( int i = 0; i < items.length; i++ ) {
          ggFormat.addItem( items[ i ]);
        }
        ggFormat.setSelectedIndex( 0 );
        if( prefs != null ) ggFormat.setPreferences( prefs, KEY_FORMAT );
        ggFormat.addItemListener( this );
        pEnc.gridAdd( ggFormat, 0, 0 );
      }
      if( (flagsAdded & ENCODING) != 0 ) {
        ggEncoding  = new PrefComboBox();
        items    = ENCODING_ITEMS;
        for( int i = 0; i < items.length; i++ ) {
          ggEncoding.addItem( items[ i ]);
        }
        ggEncoding.setSelectedIndex( DEFAULT_ENCODING );
        if( prefs != null ) ggEncoding.setPreferences( prefs, KEY_ENCODING );
        pEnc.gridAdd( ggEncoding, 1, 0 );
      }
      if( (flagsAdded & RATE) != 0 ) {       
        ggRateCombo = new JComboBox();
        ggRate    = new PrefParamField();
        ggRate.addSpace( ParamSpace.spcFreqHertz );
        items    = RATE_ITEMS;
        for( int i = 0; i < items.length; i++ ) {
          ggRateCombo.addItem( items[ i ]);
        }
//        ggRate.setBackground( Color.white );
//final javax.swing.plaf.basic.BasicComboBoxRenderer bcbr = new javax.swing.plaf.basic.BasicComboBoxRenderer();
ggRate.setBorder( new ComboBoxEditorBorder() );
//ggRate.setMaximumSize( ggRate.getPreferredSize() );
        ggRateCombo.setEditor( ggRate );
        ggRateCombo.setEditable( true );
        ggRateCombo.setSelectedIndex( DEFAULT_RATE );
        if( prefs != null ) ggRate.setPreferences( prefs, KEY_RATE );
        pEnc.gridAdd( ggRateCombo, 2, 0 );
      }
      pEnc.makeCompactGrid();
    }

    if( (flagsAdded & CHANNELS) != 0 ) {
      pChan    = new JToolBar();
      pChan.setFloatable( false );
      chanGroup  = new ButtonGroup();
      ggMono    = new JToggleButton( getResourceString( "buttonMono" ));
      ggMono.setSelected( true );
      chanGroup.add( ggMono );
      pChan.add( ggMono );
      ggStereo  = new JToggleButton( getResourceString( "buttonStereo" ));
      chanGroup.add( ggStereo );
      pChan.add( ggStereo );
      ggChanNum  = new PrefParamField();
      ggChanNum.addSpace( new ParamSpace( 0, 0xFFFF, 1, 0, 0, 4, ParamSpace.NONE ));
      ggChanNum.setEnabled( false );
      ggMulti    = new JToggleButton( getResourceString( "buttonMultichannel" ));
      if( prefs != null ) ggChanNum.setPreferences( prefs, KEY_CHANNELS );
      ggMulti.addItemListener( this );
      chanGroup.add( ggMulti );
      pChan.add( ggMulti );
      pChan.add( ggChanNum );
     
      gridAdd( pChan, 0, 1, -1, 1 );
    }

    if( (flagsAdded & GAIN_NORMALIZE) != 0 ) {
      if( pGain == null ) {
        pGain = new SpringPanel( 4, 2, 4, 2 );
        gridAdd( pGain, 0, 2, -1, 1 );
      }
      if( (flagsAdded & GAIN) != 0 ) {
        ggGain  = new PrefParamField();
        ggGain.addSpace( ParamSpace.spcAmpDecibels );
View Full Code Here

TOP

Related Classes of de.sciss.gui.SpringPanel

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.