Java源码示例:com.intellij.ui.NonFocusableCheckBox

示例1
private static JCheckBox buildOptionCheckBox(final PropertiesComponent propertiesComponent,
                                             final SelectorOption selectorOption) {
    final InnerBuilderOption option = selectorOption.getOption();

    final JCheckBox optionCheckBox = new NonFocusableCheckBox(selectorOption.getCaption());
    optionCheckBox.setMnemonic(selectorOption.getMnemonic());
    optionCheckBox.setToolTipText(selectorOption.getToolTip());

    final String optionProperty = option.getProperty();
    optionCheckBox.setSelected(propertiesComponent.isTrueValue(optionProperty));
    optionCheckBox.addItemListener(new ItemListener() {
        @Override
        public void itemStateChanged(final ItemEvent event) {
            propertiesComponent.setValue(optionProperty, Boolean.toString(optionCheckBox.isSelected()));
        }
    });
    return optionCheckBox;
}
 
示例2
@Override
public RefreshableOnComponent getBeforeCheckinConfigurationPanel() {
  final JCheckBox cleanupCodeCb = new NonFocusableCheckBox(VcsBundle.message("before.checkin.cleanup.code"));
  return new RefreshableOnComponent() {
    @Override
    public JComponent getComponent() {
      final JPanel cbPanel = new JPanel(new BorderLayout());
      cbPanel.add(cleanupCodeCb, BorderLayout.WEST);
      CheckinHandlerUtil
              .disableWhenDumb(myProject, cleanupCodeCb, "Code analysis is impossible until indices are up-to-date");
      return cbPanel;
    }

    @Override
    public void refresh() {
    }

    @Override
    public void saveState() {
      VcsConfiguration.getInstance(myProject).CHECK_CODE_CLEANUP_BEFORE_PROJECT_COMMIT = cleanupCodeCb.isSelected();
    }

    @Override
    public void restoreState() {
      cleanupCodeCb.setSelected(VcsConfiguration.getInstance(myProject).CHECK_CODE_CLEANUP_BEFORE_PROJECT_COMMIT);
    }
  };
}
 
示例3
@Override
@Nullable
public RefreshableOnComponent getBeforeCheckinConfigurationPanel() {
  final JCheckBox rearrangeBox = new NonFocusableCheckBox(VcsBundle.message("checkbox.checkin.options.rearrange.code"));
  CheckinHandlerUtil.disableWhenDumb(myProject, rearrangeBox, "Impossible until indices are up-to-date");
  return new RefreshableOnComponent() {
    @Override
    public JComponent getComponent() {
      final JPanel panel = new JPanel(new GridLayout(1, 0));
      panel.add(rearrangeBox);
      return panel;
    }

    @Override
    public void refresh() {
    }

    @Override
    public void saveState() {
      getSettings().REARRANGE_BEFORE_PROJECT_COMMIT = rearrangeBox.isSelected();
    }

    @Override
    public void restoreState() {
      rearrangeBox.setSelected(getSettings().REARRANGE_BEFORE_PROJECT_COMMIT);
    }
  };
}
 
示例4
@Override
protected void createCheckboxes(JPanel panel, GridBagConstraints gbConstraints) {
  gbConstraints.insets = new Insets(0, 0, 4, 0);
  gbConstraints.gridwidth = 1;
  gbConstraints.gridx = 0;
  gbConstraints.weighty = 0;
  gbConstraints.weightx = 1;
  gbConstraints.fill = GridBagConstraints.BOTH;
  myCbSearchForReferences = new NonFocusableCheckBox(RefactoringBundle.message("search.for.references"));
  myCbSearchForReferences.setSelected(getSearchForReferences());
  panel.add(myCbSearchForReferences, gbConstraints);

  super.createCheckboxes(panel, gbConstraints);
}
 
示例5
protected void showBalloon() {
  NonFocusableCheckBox checkBox = new NonFocusableCheckBox(RefactoringBundle.message("delegation.panel.delegate.via.overloading.method"));
  checkBox.addActionListener(e -> {
    myDelegate = checkBox.isSelected();
    updateCurrentInfo();
  });
  JPanel content = new JPanel(new BorderLayout());
  content.add(new JBLabel("Performed signature modifications:"), BorderLayout.NORTH);
  content.add(myPreview.getComponent(), BorderLayout.CENTER);
  updateMethodSignature(myStableChange);
  content.add(checkBox, BorderLayout.SOUTH);
  final BalloonBuilder balloonBuilder = JBPopupFactory.getInstance().createDialogBalloonBuilder(content, null).setSmallVariant(true);
  myBalloon = balloonBuilder.createBalloon();
  myEditor.getScrollingModel().scrollToCaret(ScrollType.MAKE_VISIBLE);
  myBalloon.show(new PositionTracker<Balloon>(myEditor.getContentComponent()) {
    @Override
    public RelativePoint recalculateLocation(Balloon object) {
      int offset = myStableChange.getMethod().getTextOffset();
      VisualPosition visualPosition = myEditor.offsetToVisualPosition(offset);
      Point point = myEditor.visualPositionToXY(new VisualPosition(visualPosition.line, visualPosition.column));
      return new RelativePoint(myEditor.getContentComponent(), point);
    }
  }, Balloon.Position.above);
  Disposer.register(myBalloon, () -> {
    EditorFactory.getInstance().releaseEditor(myPreview);
    myPreview = null;
  });
}
 
示例6
protected void createCheckboxes(JPanel panel, GridBagConstraints gbConstraints) {
  gbConstraints.insets = new Insets(0, 0, 4, 0);
  gbConstraints.gridwidth = 1;
  gbConstraints.gridx = 0;
  gbConstraints.weighty = 0;
  gbConstraints.weightx = 1;
  gbConstraints.fill = GridBagConstraints.BOTH;
  myCbSearchInComments = new NonFocusableCheckBox();
  myCbSearchInComments.setText(RefactoringBundle.getSearchInCommentsAndStringsText());
  myCbSearchInComments.setSelected(true);
  panel.add(myCbSearchInComments, gbConstraints);

  gbConstraints.insets = new Insets(0, 0, 4, 0);
  gbConstraints.gridwidth = GridBagConstraints.REMAINDER;
  gbConstraints.gridx = 1;
  gbConstraints.weightx = 1;
  gbConstraints.fill = GridBagConstraints.BOTH;
  myCbSearchTextOccurences = new NonFocusableCheckBox();
  myCbSearchTextOccurences.setText(RefactoringBundle.getSearchForTextOccurrencesText());
  myCbSearchTextOccurences.setSelected(true);
  panel.add(myCbSearchTextOccurences, gbConstraints);
  if (!TextOccurrencesUtil.isSearchTextOccurencesEnabled(myPsiElement)) {
    myCbSearchTextOccurences.setEnabled(false);
    myCbSearchTextOccurences.setSelected(false);
    myCbSearchTextOccurences.setVisible(false);
  }

  for(AutomaticRenamerFactory factory: Extensions.getExtensions(AutomaticRenamerFactory.EP_NAME)) {
    if (factory.isApplicable(myPsiElement) && factory.getOptionName() != null) {
      gbConstraints.insets = new Insets(0, 0, 4, 0);
      gbConstraints.gridwidth = myAutomaticRenamers.size() % 2 == 0 ? 1 : GridBagConstraints.REMAINDER;
      gbConstraints.gridx = myAutomaticRenamers.size() % 2;
      gbConstraints.weightx = 1;
      gbConstraints.fill = GridBagConstraints.BOTH;

      JCheckBox checkBox = new NonFocusableCheckBox();
      checkBox.setText(factory.getOptionName());
      checkBox.setSelected(factory.isEnabled());
      panel.add(checkBox, gbConstraints);
      myAutomaticRenamers.put(factory, checkBox);
    }
  }
}
 
示例7
@Override
protected JComponent createNorthPanel() {
  myNameLabel = JBLabelDecorator.createJBLabelDecorator().setBold(true);

  myTargetDirectoryField = new TextFieldWithHistoryWithBrowseButton();
  final List<String> recentEntries = RecentsManager.getInstance(myProject).getRecentEntries(RECENT_KEYS);
  if (recentEntries != null) {
    myTargetDirectoryField.getChildComponent().setHistory(recentEntries);
  }
  final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
  myTargetDirectoryField.addBrowseFolderListener(RefactoringBundle.message("select.target.directory"),
                                                 RefactoringBundle.message("the.file.will.be.moved.to.this.directory"),
                                                 myProject,
                                                 descriptor,
                                                 TextComponentAccessor.TEXT_FIELD_WITH_HISTORY_WHOLE_TEXT);
  final JTextField textField = myTargetDirectoryField.getChildComponent().getTextEditor();
  FileChooserFactory.getInstance().installFileCompletion(textField, descriptor, true, getDisposable());
  textField.getDocument().addDocumentListener(new DocumentAdapter() {
    @Override
    protected void textChanged(DocumentEvent e) {
      validateOKButton();
    }
  });
  myTargetDirectoryField.setTextFieldPreferredWidth(CopyFilesOrDirectoriesDialog.MAX_PATH_LENGTH);
  Disposer.register(getDisposable(), myTargetDirectoryField);

  String shortcutText = KeymapUtil.getFirstKeyboardShortcutText(ActionManager.getInstance().getAction(IdeActions.ACTION_CODE_COMPLETION));

  myCbSearchForReferences = new NonFocusableCheckBox(RefactoringBundle.message("search.for.references"));
  myCbSearchForReferences.setSelected(RefactoringSettings.getInstance().MOVE_SEARCH_FOR_REFERENCES_FOR_FILE);

  myOpenInEditorCb = new NonFocusableCheckBox("Open moved files in editor");
  myOpenInEditorCb.setSelected(isOpenInEditor());

  return FormBuilder.createFormBuilder().addComponent(myNameLabel)
          .addLabeledComponent(RefactoringBundle.message("move.files.to.directory.label"), myTargetDirectoryField, UIUtil.LARGE_VGAP)
          .addTooltip(RefactoringBundle.message("path.completion.shortcut", shortcutText))
          .addComponentToRightColumn(myCbSearchForReferences, UIUtil.LARGE_VGAP)
          .addComponentToRightColumn(myOpenInEditorCb, UIUtil.LARGE_VGAP)
          .getPanel();
}