当前位置: 首页>>代码示例>>Java>>正文


Java JBTable.setSurrendersFocusOnKeystroke方法代码示例

本文整理汇总了Java中com.intellij.ui.table.JBTable.setSurrendersFocusOnKeystroke方法的典型用法代码示例。如果您正苦于以下问题:Java JBTable.setSurrendersFocusOnKeystroke方法的具体用法?Java JBTable.setSurrendersFocusOnKeystroke怎么用?Java JBTable.setSurrendersFocusOnKeystroke使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.intellij.ui.table.JBTable的用法示例。


在下文中一共展示了JBTable.setSurrendersFocusOnKeystroke方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: createTablePanel

import com.intellij.ui.table.JBTable; //导入方法依赖的package包/类
private JScrollPane createTablePanel() {
  myTableModel = new MyTableModel();
  myTable = new JBTable(myTableModel);
  myTable.setSurrendersFocusOnKeystroke(true);
  myTable.getTableHeader().setReorderingAllowed(false);

  final TableColumnModel columnModel = myTable.getColumnModel();
  columnModel.getColumn(SKIP_SETTER).setCellRenderer(new BooleanTableCellRenderer());

  myTable.registerKeyboardAction(
    new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        final int[] selectedRows = myTable.getSelectedRows();
        for (final int selectedRow : selectedRows) {
          final ParameterData parameterData = myTableModel.getParamData(selectedRow);
          if (parameterData.getDefaultValue() != null) {
            parameterData.setInsertSetter(!parameterData.isInsertSetter());
          }
        }
        TableUtil.selectRows(myTable, selectedRows);
      }
    },
    KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, 0),
    JComponent.WHEN_FOCUSED
  );

  myTable.setPreferredScrollableViewportSize(new Dimension(550, myTable.getRowHeight() * 12));
  myTable.getSelectionModel().setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);

  return ScrollPaneFactory.createScrollPane(myTable);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:32,代码来源:ReplaceConstructorWithBuilderDialog.java

示例2: createCenterPanel

import com.intellij.ui.table.JBTable; //导入方法依赖的package包/类
protected JComponent createCenterPanel() {
  myTable = new JBTable(myTableModel);
  myTable.setStriped(true);
  TableColumn nameColumn = myTable.getColumnModel().getColumn(NAME_COLUMN);
  TableColumn valueColumn = myTable.getColumnModel().getColumn(VALUE_COLUMN);
  Project project = myClass.getProject();
  nameColumn.setCellRenderer(new MyCellRenderer());
  nameColumn.setCellEditor(new StringTableCellEditor(project));
  valueColumn.setCellRenderer(new MyCodeFragmentTableCellRenderer());
  valueColumn.setCellEditor(new JavaCodeFragmentTableCellEditor(project));

  myTable.setPreferredScrollableViewportSize(new Dimension(210, myTable.getRowHeight() * 4));
  myTable.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
  myTable.getSelectionModel().setSelectionInterval(0, 0);
  myTable.setSurrendersFocusOnKeystroke(true);
  myTable.setCellSelectionEnabled(true);
  myTable.setFocusCycleRoot(true);

  if (myHideDefaultValueColumn) {
    final TableColumn defaultValue = myTable.getColumnModel().getColumn(VALUE_COLUMN);
    myTable.removeColumn(defaultValue);
    myTable.getModel().addTableModelListener(new TableModelListener() {
      @Override
      public void tableChanged(TableModelEvent e) {
        if (e.getType() == TableModelEvent.INSERT) {
          myTable.getModel().removeTableModelListener(this);
          final TableColumnAnimator animator = new TableColumnAnimator(myTable);
          animator.setStep(20);
          animator.addColumn(defaultValue, myTable.getWidth() / 2);
          animator.startAndDoWhenDone(new Runnable() {
            @Override
            public void run() {
              myTable.editCellAt(myTable.getRowCount() - 1, 0);
            }
          });
          animator.start();
        }
      }
    });
  }

  final JPanel panel = new JPanel(new BorderLayout());
  panel.add(SeparatorFactory.createSeparator(RefactoringBundle.message("changeClassSignature.parameters.panel.border.title"), myTable), BorderLayout.NORTH);
  panel.add(ToolbarDecorator.createDecorator(myTable).createPanel(), BorderLayout.CENTER);
  return panel;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:47,代码来源:ChangeClassSignatureDialog.java

示例3: createAdditionalPanels

import com.intellij.ui.table.JBTable; //导入方法依赖的package包/类
@NotNull
protected List<Pair<String,JPanel>> createAdditionalPanels() {
  // this method is invoked before constructor body
  myExceptionsModel = new ExceptionsTableModel(myMethod.getMethod().getThrowsList());
  myExceptionsModel.setTypeInfos(myMethod.getMethod());

  final JBTable table = new JBTable(myExceptionsModel);
  table.setStriped(true);
  table.setRowHeight(20);
  table.getColumnModel().getColumn(0).setCellRenderer(new CodeFragmentTableCellRenderer(myProject));
  final JavaCodeFragmentTableCellEditor cellEditor = new JavaCodeFragmentTableCellEditor(myProject);
  cellEditor.addDocumentListener(new DocumentAdapter() {
    @Override
    public void documentChanged(DocumentEvent e) {
      final int row = table.getSelectedRow();
      final int col = table.getSelectedColumn();
      myExceptionsModel.setValueAt(cellEditor.getCellEditorValue(), row, col);
      updateSignature();
    }
  });
  table.getColumnModel().getColumn(0).setCellEditor(cellEditor);
  table.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
  table.getSelectionModel().setSelectionInterval(0, 0);
  table.setSurrendersFocusOnKeystroke(true);

  myPropExceptionsButton = new AnActionButton(RefactoringBundle.message("changeSignature.propagate.exceptions.title"), null, AllIcons.Hierarchy.Caller) {
    @Override
    public void actionPerformed(AnActionEvent e) {
      final Ref<JavaCallerChooser> chooser = new Ref<JavaCallerChooser>();
      Consumer<Set<PsiMethod>> callback = new Consumer<Set<PsiMethod>>() {
        @Override
        public void consume(Set<PsiMethod> psiMethods) {
          myMethodsToPropagateExceptions = psiMethods;
          myExceptionPropagationTree = chooser.get().getTree();
        }
      };
      chooser.set(new JavaCallerChooser(myMethod.getMethod(),
                                        myProject,
                                        RefactoringBundle.message("changeSignature.exception.caller.chooser"),
                                        myExceptionPropagationTree,
                                        callback));
      chooser.get().show();
    }
  };
  myPropExceptionsButton.setShortcut(CustomShortcutSet.fromString("alt X"));

  final JPanel panel = ToolbarDecorator.createDecorator(table).addExtraAction(myPropExceptionsButton).createPanel();
  panel.setBorder(IdeBorderFactory.createEmptyBorder());

  myExceptionsModel.addTableModelListener(mySignatureUpdater);

  final ArrayList<Pair<String, JPanel>> result = new ArrayList<Pair<String, JPanel>>();
  final String message = RefactoringBundle.message("changeSignature.exceptions.panel.border.title");
  result.add(Pair.create(message, panel));
  return result;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:57,代码来源:JavaChangeSignatureDialog.java

示例4: createAdditionalPanels

import com.intellij.ui.table.JBTable; //导入方法依赖的package包/类
@NotNull
@Override
protected List<Pair<String, JPanel>> createAdditionalPanels() {
  // this method is invoked before constructor body
  myExceptionsModel = new ExceptionsTableModel(myMethod.getMethod().getThrowsList());
  myExceptionsModel.setTypeInfos(myMethod.getMethod());

  final JBTable table = new JBTable(myExceptionsModel);
  table.setStriped(true);
  table.setRowHeight(20);
  table.getColumnModel().getColumn(0).setCellRenderer(new CodeFragmentTableCellRenderer(myProject));
  final JavaCodeFragmentTableCellEditor cellEditor = new JavaCodeFragmentTableCellEditor(myProject);
  cellEditor.addDocumentListener(new DocumentAdapter() {
    @Override
    public void documentChanged(DocumentEvent e) {
      final int row = table.getSelectedRow();
      final int col = table.getSelectedColumn();
      myExceptionsModel.setValueAt(cellEditor.getCellEditorValue(), row, col);
      updateSignature();
    }
  });
  table.getColumnModel().getColumn(0).setCellEditor(cellEditor);
  table.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
  table.getSelectionModel().setSelectionInterval(0, 0);
  table.setSurrendersFocusOnKeystroke(true);

 /* myPropExceptionsButton = new AnActionButton(              //todo propagate parameters
    RefactoringBundle.message("changeSignature.propagate.exceptions.title"), null, PlatformIcons.NEW_EXCEPTION) {
    @Override
    public void actionPerformed(AnActionEvent e) {
      final Ref<JavaCallerChooser> chooser = new Ref<JavaCallerChooser>();
      Consumer<Set<PsiMethod>> callback = new Consumer<Set<PsiMethod>>() {
        @Override
        public void consume(Set<PsiMethod> psiMethods) {
          myMethodsToPropagateExceptions = psiMethods;
          myExceptionPropagationTree = chooser.get().getTree();
        }
      };
      chooser.set(new JavaCallerChooser(myMethod.getMethod(),
                                        myProject,
                                        RefactoringBundle.message("changeSignature.exception.caller.chooser"),
                                        myExceptionPropagationTree,
                                        callback));
      chooser.get().show();
    }
  };
  myPropExceptionsButton.setShortcut(CustomShortcutSet.fromString("alt X"));*/

  final JPanel panel = ToolbarDecorator.createDecorator(table).createPanel();
    //.addExtraAction(myPropExceptionsButton).createPanel();
  panel.setBorder(IdeBorderFactory.createEmptyBorder());

  myExceptionsModel.addTableModelListener(mySignatureUpdater);

  final ArrayList<Pair<String, JPanel>> result = new ArrayList<Pair<String, JPanel>>();
  final String message = RefactoringBundle.message("changeSignature.exceptions.panel.border.title");
  result.add(Pair.create(message, panel));
  return result;

}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:61,代码来源:GrChangeSignatureDialog.java

示例5: createAdditionalPanels

import com.intellij.ui.table.JBTable; //导入方法依赖的package包/类
@NotNull
protected List<Pair<String,JPanel>> createAdditionalPanels() {
  // this method is invoked before constructor body
  myExceptionsModel = new ExceptionsTableModel(myMethod.getMethod().getThrowsList());
  myExceptionsModel.setTypeInfos(myMethod.getMethod());

  final JBTable table = new JBTable(myExceptionsModel);
  table.setStriped(true);
  table.setRowHeight(20);
  table.getColumnModel().getColumn(0).setCellRenderer(new CodeFragmentTableCellRenderer(myProject));
  final JavaCodeFragmentTableCellEditor cellEditor = new JavaCodeFragmentTableCellEditor(myProject);
  cellEditor.addDocumentListener(new DocumentAdapter() {
    @Override
    public void documentChanged(DocumentEvent e) {
      final int row = table.getSelectedRow();
      final int col = table.getSelectedColumn();
      myExceptionsModel.setValueAt(cellEditor.getCellEditorValue(), row, col);
      updateSignature();
    }
  });
  table.getColumnModel().getColumn(0).setCellEditor(cellEditor);
  table.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
  table.getSelectionModel().setSelectionInterval(0, 0);
  table.setSurrendersFocusOnKeystroke(true);

  myPropExceptionsButton = new AnActionButton(RefactoringBundle.message("changeSignature.propagate.exceptions.title"), null, PlatformIcons.NEW_EXCEPTION) {
    @Override
    public void actionPerformed(AnActionEvent e) {
      final Ref<JavaCallerChooser> chooser = new Ref<JavaCallerChooser>();
      Consumer<Set<PsiMethod>> callback = new Consumer<Set<PsiMethod>>() {
        @Override
        public void consume(Set<PsiMethod> psiMethods) {
          myMethodsToPropagateExceptions = psiMethods;
          myExceptionPropagationTree = chooser.get().getTree();
        }
      };
      chooser.set(new JavaCallerChooser(myMethod.getMethod(),
                                        myProject,
                                        RefactoringBundle.message("changeSignature.exception.caller.chooser"),
                                        myExceptionPropagationTree,
                                        callback));
      chooser.get().show();
    }
  };
  myPropExceptionsButton.setShortcut(CustomShortcutSet.fromString("alt X"));

  final JPanel panel = ToolbarDecorator.createDecorator(table).addExtraAction(myPropExceptionsButton).createPanel();
  panel.setBorder(IdeBorderFactory.createEmptyBorder());

  myExceptionsModel.addTableModelListener(mySignatureUpdater);

  final ArrayList<Pair<String, JPanel>> result = new ArrayList<Pair<String, JPanel>>();
  final String message = RefactoringBundle.message("changeSignature.exceptions.panel.border.title");
  result.add(Pair.create(message, panel));
  return result;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:57,代码来源:JavaChangeSignatureDialog.java


注:本文中的com.intellij.ui.table.JBTable.setSurrendersFocusOnKeystroke方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。