示例#1
0
  /** Open the settings panel */
  public boolean openSettings() {
    if (optionsOpen) {
      return false;
    }
    optionsOpen = true;

    final JFrame frame = new JFrame("Sleeksnap Settings");

    final OptionPanel panel = new OptionPanel(this);
    panel.getUploaderPanel().setImageUploaders(uploaders.get(ImageUpload.class).values());
    panel.getUploaderPanel().setTextUploaders(uploaders.get(TextUpload.class).values());
    panel.getUploaderPanel().setURLUploaders(uploaders.get(URLUpload.class).values());
    panel.getUploaderPanel().setFileUploaders(uploaders.get(FileUpload.class).values());
    panel.setHistory(history);
    panel.doneBuilding();

    frame.add(panel);
    frame.pack();
    frame.setVisible(true);
    frame.setResizable(false);
    try {
      frame.setIconImage(ImageIO.read(Util.getResourceByName("/icon32x32.png")));
    } catch (final IOException e1) {
      e1.printStackTrace();
    }
    Util.centerFrame(frame);
    frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
    frame.addWindowListener(
        new WindowAdapter() {
          @Override
          public void windowClosed(final WindowEvent e) {
            optionsOpen = false;
            LogPanelHandler.unbind();
          }
        });
    return true;
  }