本文整理汇总了Java中com.intellij.ui.components.labels.LinkLabel.setListener方法的典型用法代码示例。如果您正苦于以下问题:Java LinkLabel.setListener方法的具体用法?Java LinkLabel.setListener怎么用?Java LinkLabel.setListener使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.intellij.ui.components.labels.LinkLabel
的用法示例。
在下文中一共展示了LinkLabel.setListener方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createStrategyPanel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
private JComponent createStrategyPanel() {
final JPanel labelPanel = new JPanel(new BorderLayout());
labelPanel.setBackground(myTree.getBackground());
final LinkLabel<String> linkLabel = new LinkLabel<String>("Edit all targets", null);
linkLabel.setBorder(new EmptyBorder(2, 2, 2, 2));
linkLabel.setListener(new LinkListener<String>() {
@Override
public void linkSelected(LinkLabel aSource, String aLinkData) {
if (linkLabel.isEnabled()) {
startSyncEditing();
}
}
}, null);
myTree.addPropertyChangeListener(PushLogTreeUtil.EDIT_MODE_PROP, new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
Boolean editMode = (Boolean)evt.getNewValue();
linkLabel.setEnabled(!editMode);
linkLabel.setPaintUnderline(!editMode);
linkLabel.repaint();
}
});
labelPanel.add(linkLabel, BorderLayout.EAST);
return labelPanel;
}
示例2: create
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
@Override
public JComponent create(final Project project) {
JPanel requirementToolbar = new JPanel(new FlowLayout(FlowLayout.LEFT, 2, 2));
LinkLabel gotoRequirement = new LinkLabel("", gotoIcon);
requirementToolbar.add(gotoRequirement);
final EntityContentPanel requirementPanel = new EntityContentPanel(project, "requirement", requirementToolbar);
gotoRequirement.setListener(new LinkListener() {
public void linkSelected(LinkLabel aSource, Object aLinkData) {
HierarchicalChooser popupDialog = new HierarchicalChooser(project, "requirement", false, false, true, false, null);
popupDialog.setVisible(true);
String idStr = popupDialog.getSelectedValue();
if(!idStr.isEmpty()) {
requirementPanel.goTo(idStr);
}
}
}, null);
return requirementPanel;
}
示例3: WarningPanel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
public WarningPanel(JComponent comp, Color background, boolean canClose, boolean visible) {
super(new FlowLayout(FlowLayout.LEFT, 2, 2));
this.component = comp;
comp.setBackground(Color.YELLOW);
setBackground(Color.YELLOW);
setBorder(BorderFactory.createCompoundBorder(BorderFactory.createMatteBorder(2, 0, 2, 0, background), BorderFactory.createEtchedBorder()));
add(new JLabel(IconLoader.getIcon("/general/balloonInformation.png")));
add(comp);
if(canClose) {
LinkLabel warningCloseLink = new LinkLabel("", IconLoader.getIcon("/actions/closeNew.png"));
warningCloseLink.setListener(new LinkListener() {
@Override
public void linkSelected(LinkLabel linkLabel, Object o) {
setVisible(false);
}
}, null);
add(warningCloseLink);
}
setVisible(visible);
}
示例4: createStrategyPanel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
private JComponent createStrategyPanel() {
final JPanel labelPanel = new JPanel(new BorderLayout());
labelPanel.setBackground(myTree.getBackground());
final LinkLabel<String> linkLabel = new LinkLabel<>("Edit all targets", null);
linkLabel.setBorder(new EmptyBorder(2, 2, 2, 2));
linkLabel.setListener(new LinkListener<String>() {
@Override
public void linkSelected(LinkLabel aSource, String aLinkData) {
if (linkLabel.isEnabled()) {
startSyncEditing();
}
}
}, null);
myTree.addPropertyChangeListener(PushLogTreeUtil.EDIT_MODE_PROP, new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
Boolean editMode = (Boolean)evt.getNewValue();
linkLabel.setEnabled(!editMode);
linkLabel.setPaintUnderline(!editMode);
linkLabel.repaint();
}
});
labelPanel.add(linkLabel, BorderLayout.EAST);
return labelPanel;
}
示例5: createLinkLabel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
@NotNull
private LinkLabel createLinkLabel() {
final LinkLabel showMoreLink = new LinkLabel("Powered by Yandex.Translator", null);
LinkListener showMoreListener = new LinkListener() {
public void linkSelected(LinkLabel aSource, Object aLinkData) {
BrowserUtil.browse("http://translate.yandex.com/");
}
};
showMoreLink.setListener(showMoreListener, null);
return showMoreLink;
}
示例6: ErrorDialog
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
public ErrorDialog(String message, String detail) {
super(JOptionPane.getRootFrame(), "Error", true);
JButton ok = new JButton("OK");
ok.addActionListener(this);
JPanel buttons = new JPanel(new FlowLayout(FlowLayout.CENTER));
buttons.add(ok);
JTextPane detailPane = new JTextPane();
detailPane.setText(detail);
final JBScrollPane pane = new JBScrollPane(detailPane);
pane.setPreferredSize(new Dimension(600, 300));
getContentPane().add(buttons, BorderLayout.SOUTH);
final JPanel content = new JPanel();
content.add(new JLabel(IconLoader.getIcon("/general/errorDialog.png")));
content.add(new JLabel(message));
final LinkLabel showMoreLink = new LinkLabel("(show details)", null);
LinkListener showMoreListener = new LinkListener() {
public void linkSelected(LinkLabel aSource, Object aLinkData) {
content.remove(showMoreLink);
getContentPane().add(pane, BorderLayout.CENTER);
setResizable(true);
pack();
}
};
showMoreLink.setListener(showMoreListener, null);
content.add(showMoreLink);
getContentPane().add(content, BorderLayout.NORTH);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
pack();
setResizable(false);
setLocationRelativeTo(getOwner());
}
示例7: TreePanel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
public TreePanel(Project project, HierarchicalEntityModel treeModel) {
super(new BorderLayout());
JPanel filerPanel = new JPanel(new FlowLayout(FlowLayout.LEFT, 0, 0));
filter = new JTextField(16);
filter.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionEvent) {
filterChanged();
}
});
filerPanel.add(filter);
LinkLabel filterIcon = new LinkLabel("", findIcon);
filterIcon.setListener(new LinkListener() {
public void linkSelected(LinkLabel linkLabel, Object o) {
filterChanged();
}
}, null);
filterIcon.setBorder(new EmptyBorder(0, 2, 0, 0));
filerPanel.add(filterIcon);
add(filerPanel, BorderLayout.NORTH);
tree = new FilterableTree(project, treeModel);
tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
tree.setCellRenderer(new ALMTreeCellRenderer());
JPanel panel = new JPanel(new BorderLayout());
panel.add(new JBScrollPane(tree), BorderLayout.CENTER);
EntityStatusPanel status = new EntityStatusPanel(project);
treeModel.setStatus(status);
status.setBorder(BorderFactory.createEtchedBorder());
panel.add(status, BorderLayout.SOUTH);
add(panel, BorderLayout.CENTER);
}
示例8: MultiValueSelectorLabel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
public MultiValueSelectorLabel(final Project project, final String title, Collection<String> selectedItems, List<String> items) {
this.project = project;
this.title = title;
this.selectedItems = new HashSet<String>(selectedItems);
this.items = items;
listeners = new LinkedList<ChangeListener>();
linkLabel = new LinkLabel(displayValue(), null);
linkLabel.setListener(this, null);
add(new JLabel(title + ":"));
add(linkLabel);
}
示例9: DateSelectorLabel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
public DateSelectorLabel(Project project, String title) {
this.project = project;
listeners = new LinkedList<ChangeListener>();
linkLabel = new LinkLabel(ALL_DATES, null);
linkLabel.setListener(this, null);
add(new JLabel(title + ":"));
add(linkLabel);
}
示例10: getBeforeCheckinConfigurationPanel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
@Override
public RefreshableOnComponent getBeforeCheckinConfigurationPanel() {
final JCheckBox checkBox = new JCheckBox(VcsBundle.message("before.checkin.new.todo.check", ""));
return new RefreshableOnComponent() {
@Override
public JComponent getComponent() {
JPanel panel = new JPanel(new BorderLayout(4, 0));
panel.add(checkBox, BorderLayout.WEST);
setFilterText(myConfiguration.myTodoPanelSettings.todoFilterName);
if (myConfiguration.myTodoPanelSettings.todoFilterName != null) {
myTodoFilter = TodoConfiguration.getInstance().getTodoFilter(myConfiguration.myTodoPanelSettings.todoFilterName);
}
final Consumer<TodoFilter> consumer = new Consumer<TodoFilter>() {
@Override
public void consume(TodoFilter todoFilter) {
myTodoFilter = todoFilter;
final String name = todoFilter == null ? null : todoFilter.getName();
myConfiguration.myTodoPanelSettings.todoFilterName = name;
setFilterText(name);
}
};
final LinkLabel linkLabel = new LinkLabel("Configure", null);
linkLabel.setListener(new LinkListener() {
@Override
public void linkSelected(LinkLabel aSource, Object aLinkData) {
DefaultActionGroup group = SetTodoFilterAction.createPopupActionGroup(myProject, myConfiguration.myTodoPanelSettings, consumer);
ActionPopupMenu popupMenu = ActionManager.getInstance().createActionPopupMenu(ActionPlaces.TODO_VIEW_TOOLBAR, group);
popupMenu.getComponent().show(linkLabel, 0, linkLabel.getHeight());
}
}, null);
panel.add(linkLabel, BorderLayout.CENTER);
CheckinHandlerUtil.disableWhenDumb(myProject, checkBox, "TODO check is impossible until indices are up-to-date");
return panel;
}
private void setFilterText(final String filterName) {
if (filterName == null) {
checkBox.setText(VcsBundle.message("before.checkin.new.todo.check", IdeBundle.message("action.todo.show.all")));
} else {
checkBox.setText(VcsBundle.message("before.checkin.new.todo.check", "Filter: " + filterName));
}
}
@Override
public void refresh() {
}
@Override
public void saveState() {
myConfiguration.CHECK_NEW_TODO = checkBox.isSelected();
}
@Override
public void restoreState() {
checkBox.setSelected(myConfiguration.CHECK_NEW_TODO);
}
};
}
示例11: getBeforeCheckinConfigurationPanel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
@Override
public RefreshableOnComponent getBeforeCheckinConfigurationPanel() {
final JCheckBox checkBox = new JCheckBox(VcsBundle.message("before.checkin.new.todo.check", ""));
return new RefreshableOnComponent() {
@Override
public JComponent getComponent() {
JPanel panel = new JPanel(new BorderLayout(4, 0));
panel.add(checkBox, BorderLayout.WEST);
setFilterText(myConfiguration.myTodoPanelSettings.getTodoFilterName());
if (myConfiguration.myTodoPanelSettings.getTodoFilterName() != null) {
myTodoFilter = TodoConfiguration.getInstance().getTodoFilter(myConfiguration.myTodoPanelSettings.getTodoFilterName());
}
final Consumer<TodoFilter> consumer = new Consumer<TodoFilter>() {
@Override
public void consume(TodoFilter todoFilter) {
myTodoFilter = todoFilter;
final String name = todoFilter == null ? null : todoFilter.getName();
myConfiguration.myTodoPanelSettings.setTodoFilterName(name);
setFilterText(name);
}
};
final LinkLabel linkLabel = new LinkLabel("Configure", null);
linkLabel.setListener(new LinkListener() {
@Override
public void linkSelected(LinkLabel aSource, Object aLinkData) {
DefaultActionGroup group = SetTodoFilterAction.createPopupActionGroup(myProject, myConfiguration.myTodoPanelSettings, consumer);
ActionPopupMenu popupMenu = ActionManager.getInstance().createActionPopupMenu(ActionPlaces.TODO_VIEW_TOOLBAR, group);
popupMenu.getComponent().show(linkLabel, 0, linkLabel.getHeight());
}
}, null);
panel.add(linkLabel, BorderLayout.CENTER);
refreshEnable(checkBox);
return panel;
}
private void setFilterText(final String filterName) {
if (filterName == null) {
checkBox.setText(VcsBundle.message("before.checkin.new.todo.check", IdeBundle.message("action.todo.show.all")));
} else {
checkBox.setText(VcsBundle.message("before.checkin.new.todo.check", "Filter: " + filterName));
}
}
@Override
public void refresh() {
}
@Override
public void saveState() {
myConfiguration.CHECK_NEW_TODO = checkBox.isSelected();
}
@Override
public void restoreState() {
checkBox.setSelected(myConfiguration.CHECK_NEW_TODO);
}
};
}
示例12: addFilter
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
private void addFilter(String labelTitle, String dialogTitle, Map<String, Field> fields, List<String> selectedFields) {
add(new JLabel(labelTitle));
LinkLabel link = new LinkLabel(asText(selectedFields), null);
link.setListener(new MyLinkListener(dialogTitle, fields, selectedFields), link);
add(link);
}
示例13: getBeforeCheckinConfigurationPanel
import com.intellij.ui.components.labels.LinkLabel; //导入方法依赖的package包/类
@Override
public RefreshableOnComponent getBeforeCheckinConfigurationPanel() {
JCheckBox checkBox = new JCheckBox(VcsBundle.message("before.checkin.new.todo.check", ""));
return new RefreshableOnComponent() {
@Override
public JComponent getComponent() {
JPanel panel = new JPanel(new BorderLayout(4, 0));
panel.add(checkBox, BorderLayout.WEST);
setFilterText(myConfiguration.myTodoPanelSettings.todoFilterName);
if (myConfiguration.myTodoPanelSettings.todoFilterName != null) {
myTodoFilter = TodoConfiguration.getInstance().getTodoFilter(myConfiguration.myTodoPanelSettings.todoFilterName);
}
Consumer<TodoFilter> consumer = todoFilter -> {
myTodoFilter = todoFilter;
String name = todoFilter == null ? null : todoFilter.getName();
myConfiguration.myTodoPanelSettings.todoFilterName = name;
setFilterText(name);
};
LinkLabel linkLabel = new LinkLabel("Configure", null);
linkLabel.setListener(new LinkListener() {
@Override
public void linkSelected(LinkLabel aSource, Object aLinkData) {
DefaultActionGroup group = SetTodoFilterAction.createPopupActionGroup(myProject, myConfiguration.myTodoPanelSettings, consumer);
ActionPopupMenu popupMenu = ActionManager.getInstance().createActionPopupMenu(ActionPlaces.TODO_VIEW_TOOLBAR, group);
popupMenu.getComponent().show(linkLabel, 0, linkLabel.getHeight());
}
}, null);
panel.add(linkLabel, BorderLayout.CENTER);
CheckinHandlerUtil.disableWhenDumb(myProject, checkBox, "TODO check is impossible until indices are up-to-date");
return panel;
}
private void setFilterText(String filterName) {
if (filterName == null) {
checkBox.setText(VcsBundle.message("before.checkin.new.todo.check", IdeBundle.message("action.todo.show.all")));
} else {
checkBox.setText(VcsBundle.message("before.checkin.new.todo.check", "Filter: " + filterName));
}
}
@Override
public void refresh() {
}
@Override
public void saveState() {
myConfiguration.CHECK_NEW_TODO = checkBox.isSelected();
}
@Override
public void restoreState() {
checkBox.setSelected(myConfiguration.CHECK_NEW_TODO);
}
};
}