skinManager.add(trackGroup, "topPanel-background!");
  public void createToolBar() {    trackGroup = new Composite(topPanel, SWT.BORDER);    trackGroup.setEnabled(false);    skinManager.add(trackGroup, "topPanel-background!");    GridData gridData = new GridData();    gridData.horizontalAlignment = GridData.FILL;    gridData.grabExcessHorizontalSpace = true;    gridData.horizontalSpan = 1;    gridData.horizontalIndent = 10;    trackGroup.setLayoutData(gridData);        trackGroup.setLayout(new GridLayout(2, false));        trackLabel = new Label(trackGroup, SWT.CENTER);    gridData = new GridData();    gridData.horizontalAlignment = GridData.FILL;    gridData.grabExcessHorizontalSpace = true;    gridData.horizontalSpan = 2;    trackLabel.setLayoutData(gridData);        ToolBar trackToolbar = new ToolBar(trackGroup, SWT.FLAT);    for (int i = 0; i < ratingFunctions.length; i++) {      RatingFunction rf = ratingFunctions[i];      ToolItem item = new ToolItem(trackToolbar, SWT.RADIO);      item.setToolTipText(Resources.getString(rf.getName() + ".tooltip"));      final int value = rf.getValue();      item.addSelectionListener(new SelectionAdapter() {        public void widgetSelected(SelectionEvent e) {          setRating(getSelectedTrack(), value);        }      });      rf.setItem(item);      skinManager.add(item, rf.getName());    }      new ToolItem(trackToolbar, SWT.SEPARATOR);    ToolItem info = new ToolItem(trackToolbar, SWT.PUSH);    info.setToolTipText(Resources.getString("button.info.tooltip"));    final Client clientToPass = this;    info.addSelectionListener(new SelectionAdapter() {      public void widgetSelected(SelectionEvent e) {        Track track = getSelectedTrack();        if (track == null)          return;                TrackInfoDialog trackInfoDialog = new TrackInfoDialog(display, shell);        trackInfoDialog.displayTrackInfo(track, clientToPass);         }    });    skinManager.add(info, "button.info");    volumeScale = new Scale(trackGroup, SWT.HORIZONTAL | SWT.FLAT);    volumeScale.setIncrement(1);    volumeScale.setPageIncrement(1);    volumeScale.setMaximum(VOLUME_SPAN / VOLUME_RESOLUTION);    volumeScale.setToolTipText(Resources.getString("slider.volume.tooltip"));    volumeScale.addSelectionListener(new SelectionAdapter() {      public void widgetSelected(SelectionEvent e) {        setVolume(          volumeScale.getSelection() * VOLUME_RESOLUTION - VOLUME_OFFSET);      }    });    gridData = new GridData();    gridData.horizontalAlignment = GridData.END;    gridData.grabExcessHorizontalSpace = true;    volumeScale.setLayoutData(gridData);            ToolBar toolbar = new ToolBar(topPanel, SWT.FLAT);    gridData = new GridData();    gridData.horizontalAlignment = GridData.CENTER;    gridData.grabExcessHorizontalSpace = true;    gridData.horizontalSpan = 1;    toolbar.setLayoutData(gridData);    previous = new ToolItem(toolbar, SWT.PUSH);    previous.setToolTipText(Resources.getString("button.previous.tooltip"));    previous.addSelectionListener(new SelectionAdapter() {      public void widgetSelected(SelectionEvent e) {        skip(true);      }    });    previous.setEnabled(false);    skinManager.add(previous, "button.previous");    pause = new ToolItem(toolbar, SWT.PUSH);    setPaused(false);    pause.addSelectionListener(new SelectionAdapter() {      public void widgetSelected(SelectionEvent e) {        setPaused(!isPaused());      }    });    pauseSkin = skinManager.add(pause, "button.pause");    ToolItem next = new ToolItem(toolbar, SWT.PUSH);    next.setToolTipText(Resources.getString("button.next.tooltip"));    next.addSelectionListener(new SelectionAdapter() {      public void widgetSelected(SelectionEvent e) {        skip();      }    });    skinManager.add(next, "button.next");        //    songProgressBar = new TrackProgressBar(shell, SWT.NONE);  }