Exemple #1
0
  public void generateTrackFromLocation(int mousePos, boolean isHorizontal) {

    if (!MatrixType.isObservedOrControl(displayOption)) {
      MessageUtils.showMessage("This feature is only available for Observed or Control views");
      return;
    }

    // extract the starting position
    int binStartPosition = (int) (getXContext().getBinOrigin() + mousePos / getScaleFactor());
    if (isHorizontal)
      binStartPosition = (int) (getYContext().getBinOrigin() + mousePos / getScaleFactor());

    // Initialize default file name
    String filename = displayOption == MatrixType.OBSERVED ? "obs" : "ctrl";
    filename += isHorizontal ? "_horz" : "_vert";
    filename += "_bin" + binStartPosition + "_res" + currentZoom.getBinSize();
    filename = cleanUpNumbersInName(filename);

    // allow user to customize or change the name
    filename = MessageUtils.showInputDialog("Enter a name for the resulting .wig file", filename);
    if (filename == null || filename.equalsIgnoreCase("null")) return;

    File outputWigFile = new File(DirectoryManager.getHiCDirectory(), filename + ".wig");
    MessageUtils.showMessage("Data will be saved to " + outputWigFile.getAbsolutePath());

    Chromosome chromosomeForPosition = getXContext().getChromosome();
    if (isHorizontal) chromosomeForPosition = getYContext().getChromosome();

    safeSave1DTrackToWigFile(chromosomeForPosition, outputWigFile, binStartPosition);
  }
 public void setSelectedDisplayOption(MatrixType[] options, boolean control) {
   if (control) {
     MatrixType originalMatrixType = (MatrixType) displayOptionComboBox.getSelectedItem();
     displayOptionComboBox.setModel(new DefaultComboBoxModel<MatrixType>(options));
     int indx = 0;
     for (int i = 0; i < displayOptionComboBox.getItemCount(); i++) {
       if (originalMatrixType.equals(displayOptionComboBox.getItemAt(i))) {
         indx = i;
         break;
       }
     }
     displayOptionComboBox.setSelectedIndex(indx);
   } else {
     displayOptionComboBox.setModel(new DefaultComboBoxModel<MatrixType>(options));
     displayOptionComboBox.setSelectedIndex(0);
   }
 }