Ejemplo n.º 1
0
  /** This constructor creates the panel with its swing-components. */
  public SettingsPanel(
      final String bingoDir, final CySwingAppAdapter adapter, OpenBrowser openBrowserService) {
    super();
    this.bingoDir = bingoDir;
    this.adapter = adapter;
    this.openBrowserService = openBrowserService;

    // Create a new bingo parameter set
    try {
      params = new BingoParameters(bingoDir);
    } catch (IOException e) {
      JOptionPane.showMessageDialog(
          this,
          "Error opening the properties file."
              + "\n"
              + "Please make sure that there is bingo_gui.properties file"
              + "\n"
              + "in the bingo.jar or in your cytoscape plugins directory.");
    }
    bingo_props = params.getbingo_props();

    // create the JComponents.
    makeJComponents();

    setPreferredSize(new Dimension(DIM_WIDTH, DIM_HEIGHT));
    setOpaque(false);
    // create border.
    setBorder(
        BorderFactory.createTitledBorder(
            BorderFactory.createLineBorder(Color.black),
            "bingo settings",
            0,
            0,
            new Font("bingo settings", Font.BOLD, 16),
            Color.black));

    // Layout with GridBagLayout.
    GridBagLayout gridbag = new GridBagLayout();
    GridBagConstraints c = new GridBagConstraints();
    setLayout(gridbag);

    c.weighty = 1;
    c.weightx = 1;
    c.fill = GridBagConstraints.HORIZONTAL;

    JPanel dummyPanel = new JPanel();
    dummyPanel.setOpaque(false);
    dummyPanel.setPreferredSize(new Dimension(50, 20));
    c.gridx = 0;
    gridbag.setConstraints(dummyPanel, c);
    add(dummyPanel);

    c.gridx = 1;
    c.fill = GridBagConstraints.NONE;
    c.anchor = GridBagConstraints.WEST;
    gridbag.setConstraints(saveSettingsButton, c);
    add(saveSettingsButton);
    c.gridx = 2;
    c.anchor = GridBagConstraints.EAST;
    gridbag.setConstraints(helpButton, c);
    add(helpButton);

    JPanel dummyPanel2 = new JPanel();
    dummyPanel2.setOpaque(false);
    dummyPanel2.setPreferredSize(new Dimension(50, 20));
    c.gridx = 3;
    c.fill = GridBagConstraints.HORIZONTAL;
    c.anchor = GridBagConstraints.CENTER;
    c.gridwidth = GridBagConstraints.REMAINDER;
    gridbag.setConstraints(dummyPanel2, c);
    add(dummyPanel2);

    c.weighty = 1;
    c.weightx = 100;
    c.gridx = 1;
    c.gridwidth = 2;
    c.gridwidth = GridBagConstraints.RELATIVE;
    c.fill = GridBagConstraints.HORIZONTAL;

    gridbag.setConstraints(nameLabel, c);
    add(nameLabel);

    gridbag.setConstraints(nameField, c);
    add(nameField);

    c.fill = GridBagConstraints.BOTH;
    c.gridheight = 1;
    c.weighty = 100;
    gridbag.setConstraints(textOrGraphPanel, c);
    add(textOrGraphPanel);

    c.fill = GridBagConstraints.HORIZONTAL;
    c.gridheight = 1;
    c.weighty = 1;

    gridbag.setConstraints(overUnderLabel, c);
    add(overUnderLabel);

    gridbag.setConstraints(overUnderPanel, c);
    add(overUnderPanel);

    gridbag.setConstraints(vizPanel, c);
    add(vizPanel);

    gridbag.setConstraints(testLabel, c);
    add(testLabel);

    gridbag.setConstraints(testBox, c);
    add(testBox);

    gridbag.setConstraints(correctionLabel, c);
    add(correctionLabel);

    gridbag.setConstraints(correctionBox, c);
    add(correctionBox);

    gridbag.setConstraints(alphaLabel, c);
    add(alphaLabel);

    gridbag.setConstraints(alphaField, c);
    add(alphaField);

    gridbag.setConstraints(categoriesLabel, c);
    add(categoriesLabel);

    gridbag.setConstraints(categoriesBox, c);
    add(categoriesBox);

    gridbag.setConstraints(clusterVsLabel, c);
    add(clusterVsLabel);

    // include custom ref set option
    gridbag.setConstraints(clusterVsPanel, c);
    add(clusterVsPanel);

    gridbag.setConstraints(ontologyLabel, c);
    add(ontologyLabel);

    gridbag.setConstraints(ontologyPanel, c);
    add(ontologyPanel);

    gridbag.setConstraints(namespaceLabel, c);
    add(namespaceLabel);

    gridbag.setConstraints(namespacePanel, c);
    add(namespacePanel);

    gridbag.setConstraints(annotationLabel, c);
    add(annotationLabel);

    gridbag.setConstraints(annotationPanel, c);
    add(annotationPanel);

    gridbag.setConstraints(ecLabel, c);
    add(ecLabel);

    gridbag.setConstraints(ecField, c);
    add(ecField);

    gridbag.setConstraints(dataPanel, c);
    add(dataPanel);

    gridbag.setConstraints(bingoButton, c);
    add(bingoButton);

    validate();
  }