本文整理汇总了Java中com.intellij.openapi.application.ApplicationBundle类的典型用法代码示例。如果您正苦于以下问题:Java ApplicationBundle类的具体用法?Java ApplicationBundle怎么用?Java ApplicationBundle使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ApplicationBundle类属于com.intellij.openapi.application包,在下文中一共展示了ApplicationBundle类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: onSaveAs
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
private void onSaveAs() {
if (mySchemesTableModel.isProjectScheme(getSelectedScheme())) {
int rowToSelect = mySchemesTableModel.exportProjectScheme();
if (rowToSelect > 0) {
mySchemesTable.getSelectionModel().setSelectionInterval(rowToSelect, rowToSelect);
}
}
else {
CodeStyleScheme[] schemes = CodeStyleSchemes.getInstance().getSchemes();
ArrayList<String> names = new ArrayList<String>();
for (CodeStyleScheme scheme : schemes) {
names.add(scheme.getName());
}
String selectedName = getSelectedScheme().getName();
SaveSchemeDialog saveDialog =
new SaveSchemeDialog(myParent, ApplicationBundle.message("title.save.code.style.scheme.as"), names, selectedName);
if (saveDialog.showAndGet()) {
int row = mySchemesTableModel.createNewScheme(getSelectedScheme(), saveDialog.getSchemeName());
mySchemesTable.getSelectionModel().setSelectionInterval(row, row);
}
}
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:23,代码来源:ManageCodeStyleSchemesDialog.java
示例2: initTables
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
protected void initTables() {
initBooleanField("JD_ALIGN_PARAM_COMMENTS", ApplicationBundle.message("checkbox.align.parameter.descriptions"), ALIGNMENT_GROUP);
initBooleanField("JD_ALIGN_EXCEPTION_COMMENTS", ApplicationBundle.message("checkbox.align.thrown.exception.descriptions"), ALIGNMENT_GROUP);
initBooleanField("JD_ADD_BLANK_AFTER_DESCRIPTION", ApplicationBundle.message("checkbox.after.description"), BLANK_LINES_GROUP);
initBooleanField("JD_ADD_BLANK_AFTER_PARM_COMMENTS", ApplicationBundle.message("checkbox.after.parameter.descriptions"), BLANK_LINES_GROUP);
initBooleanField("JD_ADD_BLANK_AFTER_RETURN", ApplicationBundle.message("checkbox.after.return.tag"), BLANK_LINES_GROUP);
initBooleanField("JD_KEEP_INVALID_TAGS", ApplicationBundle.message("checkbox.keep.invalid.tags"), INVALID_TAGS_GROUP);
initBooleanField("JD_KEEP_EMPTY_PARAMETER", ApplicationBundle.message("checkbox.keep.empty.param.tags"), INVALID_TAGS_GROUP);
initBooleanField("JD_KEEP_EMPTY_RETURN", ApplicationBundle.message("checkbox.keep.empty.return.tags"), INVALID_TAGS_GROUP);
initBooleanField("JD_KEEP_EMPTY_EXCEPTION", ApplicationBundle.message("checkbox.keep.empty.throws.tags"), INVALID_TAGS_GROUP);
initBooleanField("JD_LEADING_ASTERISKS_ARE_ENABLED", ApplicationBundle.message("checkbox.enable.leading.asterisks"), OTHER_GROUP);
initBooleanField("JD_USE_THROWS_NOT_EXCEPTION", ApplicationBundle.message("checkbox.use.throws.rather.than.exception"), OTHER_GROUP);
initBooleanField("WRAP_COMMENTS", ApplicationBundle.message("checkbox.wrap.at.right.margin"), OTHER_GROUP);
initBooleanField("JD_P_AT_EMPTY_LINES", ApplicationBundle.message("checkbox.generate.p.on.empty.lines"), OTHER_GROUP);
initBooleanField("JD_KEEP_EMPTY_LINES", ApplicationBundle.message("checkbox.keep.empty.lines"), OTHER_GROUP);
initBooleanField("JD_DO_NOT_WRAP_ONE_LINE_COMMENTS", ApplicationBundle.message("checkbox.do.not.wrap.one.line.comments"), OTHER_GROUP);
initBooleanField("JD_PRESERVE_LINE_FEEDS", ApplicationBundle.message("checkbox.preserve.line.feeds"), OTHER_GROUP);
initBooleanField("JD_PARAM_DESCRIPTION_ON_NEW_LINE", ApplicationBundle.message("checkbox.param.description.on.new.line"), OTHER_GROUP);
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:23,代码来源:JavaDocFormattingPanel.java
示例3: getNotificationLabels
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Nullable
private static NotificationLabels getNotificationLabels(@NotNull CommonCodeStyleSettings.IndentOptions userOptions,
@NotNull CommonCodeStyleSettings.IndentOptions detectedOptions) {
if (userOptions.USE_TAB_CHARACTER) {
if (!detectedOptions.USE_TAB_CHARACTER) {
return new NotificationLabels(ApplicationBundle.message("code.style.space.indent.detected", detectedOptions.INDENT_SIZE),
ApplicationBundle.message("code.style.detector.use.tabs"));
}
}
else {
String restoreToSpaces = ApplicationBundle.message("code.style.detector.use.spaces", userOptions.INDENT_SIZE);
if (detectedOptions.USE_TAB_CHARACTER) {
return new NotificationLabels(ApplicationBundle.message("code.style.tab.usage.detected", userOptions.INDENT_SIZE),
restoreToSpaces);
}
if (userOptions.INDENT_SIZE != detectedOptions.INDENT_SIZE) {
return new NotificationLabels(ApplicationBundle.message("code.style.different.indent.size.detected", detectedOptions.INDENT_SIZE, userOptions.INDENT_SIZE),
restoreToSpaces);
}
}
return null;
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:23,代码来源:DetectableIndentOptionsProvider.java
示例4: editMacro
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
public void editMacro() {
if (getSelectedRowCount() != 1) {
return;
}
final int selectedRow = getSelectedRow();
final Couple<String> pair = myMacros.get(selectedRow);
final String title = ApplicationBundle.message("title.edit.variable");
final String macroName = pair.getFirst();
final PathMacroEditor macroEditor = new PathMacroEditor(title, macroName, pair.getSecond(), new EditValidator());
if (macroEditor.showAndGet()) {
myMacros.remove(selectedRow);
myMacros.add(Couple.of(macroEditor.getName(), macroEditor.getValue()));
Collections.sort(myMacros, MACRO_COMPARATOR);
myTableModel.fireTableDataChanged();
}
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:17,代码来源:PathMacroTable.java
示例5: createNorthPanel
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Override
protected JComponent createNorthPanel() {
JPanel panel = new JPanel(new GridBagLayout());
GridBagConstraints gc = new GridBagConstraints();
gc.gridx = 0;
gc.gridy = 0;
gc.weightx = 0;
gc.insets = new Insets(5, 0, 5, 5);
panel.add(new JLabel(ApplicationBundle.message("label.name")), gc);
gc = new GridBagConstraints();
gc.gridx = 1;
gc.gridy = 0;
gc.weightx = 1;
gc.fill = GridBagConstraints.HORIZONTAL;
gc.gridwidth = 2;
gc.insets = new Insets(0, 0, 5, 0);
panel.add(mySchemeName, gc);
panel.setPreferredSize(JBUI.size(220, 40));
return panel;
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:23,代码来源:SaveSchemeDialog.java
示例6: doOKAction
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Override
protected void doOKAction() {
if (getSchemeName().trim().isEmpty()) {
Messages.showMessageDialog(getContentPane(), ApplicationBundle.message("error.scheme.must.have.a.name"),
CommonBundle.getErrorTitle(), Messages.getErrorIcon());
return;
}
else if ("default".equals(getSchemeName())) {
Messages.showMessageDialog(getContentPane(), ApplicationBundle.message("error.illegal.scheme.name"),
CommonBundle.getErrorTitle(), Messages.getErrorIcon());
return;
}
else if (myExistingNames.contains(getSchemeName())) {
Messages.showMessageDialog(
getContentPane(),
ApplicationBundle.message("error.a.scheme.with.this.name.already.exists.or.was.deleted.without.applying.the.changes"),
CommonBundle.getErrorTitle(),
Messages.getErrorIcon()
);
return;
}
super.doOKAction();
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:24,代码来源:SaveSchemeDialog.java
示例7: actionPerformed
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Override
public void actionPerformed(@NotNull AnActionEvent event) {
if (!isAvailable()) return;
Project project = event.getProject();
CreateDesktopEntryDialog dialog = new CreateDesktopEntryDialog(project);
if (!dialog.showAndGet()) {
return;
}
final boolean globalEntry = dialog.myGlobalEntryCheckBox.isSelected();
ProgressManager.getInstance().run(new Task.Backgroundable(project, ApplicationBundle.message("desktop.entry.title")) {
@Override
public void run(@NotNull ProgressIndicator indicator) {
createDesktopEntry(getProject(), indicator, globalEntry);
}
});
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:19,代码来源:CreateDesktopEntryAction.java
示例8: actionPerformed
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Override
public void actionPerformed(AnActionEvent e) {
new Thread("show delayed msg") {
@Override
public void run() {
super.run();
//noinspection EmptyCatchBlock
TimeoutUtil.sleep(3000);
//noinspection SSBasedInspection
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
MessageDialogBuilder.yesNo("Nothing happens after that", "Some message goes here").yesText(
ApplicationBundle.message("command.exit")).noText(
CommonBundle.message("button.cancel")).show();
}
});
}
}.start();
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:25,代码来源:ShowDelayedMessageInternalAction.java
示例9: validate
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Nullable
protected String validate(int index) {
if (myRulesModel.getSize() < index) {
return null;
}
final Object target = myRulesModel.getElementAt(index);
if (target instanceof StdArrangementMatchRule) {
for (int i = 0; i < index; i++) {
final Object element = myRulesModel.getElementAt(i);
if (element instanceof StdArrangementMatchRule && target.equals(element)) {
return ApplicationBundle.message("arrangement.settings.validation.duplicate.matching.rule");
}
}
}
return null;
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:18,代码来源:ArrangementMatchingRulesValidator.java
示例10: ArrangementRuleAliasDialog
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
public ArrangementRuleAliasDialog(@Nullable Project project,
@NotNull ArrangementStandardSettingsManager settingsManager,
@NotNull ArrangementColorsProvider colorsProvider,
@NotNull Collection<StdArrangementRuleAliasToken> tokens,
@NotNull Set<String> tokensInUse) {
super(project, false);
final List<StdArrangementRuleAliasToken> tokenList = ContainerUtil.newArrayList(tokens);
myEditor = new ArrangementRuleAliasesListEditor(settingsManager, colorsProvider, tokenList, tokensInUse);
if (!tokenList.isEmpty()) {
myEditor.selectItem(tokenList.get(0));
}
setTitle(ApplicationBundle.message("arrangement.settings.section.rule.custom.token.title"));
init();
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:17,代码来源:ArrangementRuleAliasDialog.java
示例11: ArrangementGroupingRulesPanel
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
public ArrangementGroupingRulesPanel(@NotNull ArrangementStandardSettingsManager settingsManager,
@NotNull ArrangementColorsProvider colorsProvider)
{
super(new GridBagLayout());
myControl = new ArrangementGroupingRulesControl(settingsManager, colorsProvider);
TitleWithToolbar top = new TitleWithToolbar(
ApplicationBundle.message("arrangement.settings.section.groups"),
ArrangementConstants.ACTION_GROUP_GROUPING_RULES_CONTROL_TOOLBAR,
ArrangementConstants.GROUPING_RULES_CONTROL_TOOLBAR_PLACE,
myControl
);
add(top, new GridBag().coverLine().fillCellHorizontally().weightx(1));
add(myControl, new GridBag().fillCell().weightx(1).weighty(1).insets(0, ArrangementConstants.HORIZONTAL_PADDING, 0, 0));
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:18,代码来源:ArrangementGroupingRulesPanel.java
示例12: searchResultsUpdated
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Override
public void searchResultsUpdated(SearchResults sr) {
if (myComponent.getSearchTextComponent().getText().isEmpty()) {
updateUIWithEmptyResults();
} else {
int matches = sr.getMatchesCount();
boolean tooManyMatches = matches > mySearchResults.getMatchesLimit();
myComponent.setStatusText(tooManyMatches
? ApplicationBundle.message("editorsearch.toomuch", mySearchResults.getMatchesLimit())
: ApplicationBundle.message("editorsearch.matches", matches));
myClickToHighlightLabel.setVisible(tooManyMatches);
if (!tooManyMatches && matches <= 0) {
myComponent.setNotFoundBackground();
}
else {
myComponent.setRegularBackground();
}
}
myComponent.updateActions();
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:21,代码来源:EditorSearchSession.java
示例13: customize
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Override
public void customize(JList list, Integer value, int index, boolean selected, boolean hasFocus) {
int tabPlacement = value.intValue();
String text;
if (UISettings.TABS_NONE == tabPlacement) {
text = ApplicationBundle.message("combobox.tab.placement.none");
}
else if (SwingConstants.TOP == tabPlacement) {
text = ApplicationBundle.message("combobox.tab.placement.top");
}
else if (SwingConstants.LEFT == tabPlacement) {
text = ApplicationBundle.message("combobox.tab.placement.left");
}
else if (SwingConstants.BOTTOM == tabPlacement) {
text = ApplicationBundle.message("combobox.tab.placement.bottom");
}
else if (SwingConstants.RIGHT == tabPlacement) {
text = ApplicationBundle.message("combobox.tab.placement.right");
}
else {
throw new IllegalArgumentException("unknown tabPlacement: " + tabPlacement);
}
setText(text);
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:25,代码来源:EditorTabsConfigurable.java
示例14: init
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Override
protected void init() {
super.init();
myEnableCheckBox = new JCheckBox(ApplicationBundle.message("checkbox.enable.javadoc.formatting"));
myEnableCheckBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
update();
}
});
myPanel.setBorder(new CustomLineBorder(OnePixelDivider.BACKGROUND, 1, 0, 0, 0));
myJavaDocPanel.add(BorderLayout.CENTER, myPanel);
myJavaDocPanel.add(myEnableCheckBox, BorderLayout.NORTH);
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:16,代码来源:JavaDocFormattingPanel.java
示例15: addComponents
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
protected void addComponents() {
super.addComponents();
myLabelIndent = new JTextField(4);
add(myLabelIndentLabel = new JLabel(ApplicationBundle.message("editbox.indent.label.indent")), myLabelIndent);
myLabelIndentAbsolute = new JCheckBox(ApplicationBundle.message("checkbox.indent.absolute.label.indent"));
add(myLabelIndentAbsolute, true);
myCbDontIndentTopLevelMembers = new JCheckBox(ApplicationBundle.message("checkbox.do.not.indent.top.level.class.members"));
add(myCbDontIndentTopLevelMembers);
myCbUseRelativeIndent = new JCheckBox(ApplicationBundle.message("checkbox.use.relative.indents"));
add(myCbUseRelativeIndent);
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:16,代码来源:JavaIndentOptionsEditor.java
示例16: composePanel
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
private void composePanel() {
myPanel = new JPanel(new GridBagLayout());
myComboBox = new ComboBox();
for (QualifyJavadocOptions options : QualifyJavadocOptions.values()) {
myComboBox.addItem(options);
}
myComboBox.setRenderer(new ListCellRendererWrapper() {
@Override
public void customize(final JList list, final Object value, final int index, final boolean selected, final boolean hasFocus) {
if (value instanceof QualifyJavadocOptions) {
setText(((QualifyJavadocOptions)value).getPresentableText());
}
}
});
JLabel title = new JLabel(ApplicationBundle.message("radio.use.fully.qualified.class.names.in.javadoc"));
myPanel.setBorder(BorderFactory.createEmptyBorder(5, 0, 5, 0));
GridBagConstraints left = new GridBagConstraints();
left.anchor = GridBagConstraints.WEST;
GridBagConstraints right = new GridBagConstraints();
right.anchor = GridBagConstraints.WEST;
right.weightx = 1.0;
right.insets = new Insets(0, 5, 0, 0);
myPanel.add(title, left);
myPanel.add(myComboBox, right);
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:31,代码来源:FullyQualifiedNamesInJavadocOptionProvider.java
示例17: createGeneralOptionsPanel
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
private JPanel createGeneralOptionsPanel() {
OptionGroup group = new OptionGroup(ApplicationBundle.message("title.general"));
myCbUseSingleClassImports = new JCheckBox(ApplicationBundle.message("checkbox.use.single.class.import"));
group.add(myCbUseSingleClassImports);
myCbUseFQClassNames = new JCheckBox(ApplicationBundle.message("checkbox.use.fully.qualified.class.names"));
group.add(myCbUseFQClassNames);
myCbInsertInnerClassImports = new JCheckBox(ApplicationBundle.message("checkbox.insert.imports.for.inner.classes"));
group.add(myCbInsertInnerClassImports);
myFqnInJavadocOption = new FullyQualifiedNamesInJavadocOptionProvider(mySettings);
group.add(myFqnInJavadocOption.getPanel());
myClassCountField = new JTextField(3);
myNamesCountField = new JTextField(3);
final JPanel panel = new JPanel(new GridBagLayout());
panel.add(new JLabel(ApplicationBundle.message("editbox.class.count.to.use.import.with.star")),
new GridBagConstraints(0, GridBagConstraints.RELATIVE, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 3, 0, 0), 0, 0));
panel.add(myClassCountField,
new GridBagConstraints(1, GridBagConstraints.RELATIVE, 1, 1, 1.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 1, 0, 0), 0, 0));
panel.add(new JLabel(ApplicationBundle.message("editbox.names.count.to.use.static.import.with.star")),
new GridBagConstraints(0, GridBagConstraints.RELATIVE, 1, 1, 0.0, 1.0, GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 3, 0, 0), 0, 0));
panel.add(myNamesCountField,
new GridBagConstraints(1, GridBagConstraints.RELATIVE, 1, 1, 1.0, 1.0, GridBagConstraints.WEST, GridBagConstraints.NONE,
new Insets(0, 1, 0, 0), 0, 0));
group.add(panel);
return group.createPanel();
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:34,代码来源:CodeStyleImportsPanel.java
示例18: getActionText
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Override
protected String getActionText(final AnActionEvent e) {
String text = ApplicationBundle.message("action.add");
if (e.getPresentation().isEnabled()) {
final DomElementsGroupNode selectedNode = getDomElementsGroupNode(getTreeView(e));
if (selectedNode != null) {
final Type type = selectedNode.getChildDescription().getType();
text += " " + TypePresentationService.getService().getTypePresentableName(ReflectionUtil.getRawType(type));
}
}
return text;
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:14,代码来源:AddElementInCollectionAction.java
示例19: JavaCodeFoldingOptionsProvider
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
public JavaCodeFoldingOptionsProvider() {
super(JavaCodeFoldingSettings.getInstance());
checkBox("INLINE_PARAMETER_NAMES_FOR_LITERAL_CALL_ARGUMENTS", ApplicationBundle.message("checkbox.collapse.boolean.parameters"));
checkBox("COLLAPSE_ONE_LINE_METHODS", ApplicationBundle.message("checkbox.collapse.one.line.methods"));
checkBox("COLLAPSE_ACCESSORS", ApplicationBundle.message("checkbox.collapse.simple.property.accessors"));
checkBox("COLLAPSE_INNER_CLASSES", ApplicationBundle.message("checkbox.collapse.inner.classes"));
checkBox("COLLAPSE_ANONYMOUS_CLASSES", ApplicationBundle.message("checkbox.collapse.anonymous.classes"));
checkBox("COLLAPSE_ANNOTATIONS", ApplicationBundle.message("checkbox.collapse.annotations"));
checkBox("COLLAPSE_CLOSURES", ApplicationBundle.message("checkbox.collapse.closures"));
checkBox("COLLAPSE_CONSTRUCTOR_GENERIC_PARAMETERS", ApplicationBundle.message("checkbox.collapse.generic.constructor.parameters"));
checkBox("COLLAPSE_I18N_MESSAGES", ApplicationBundle.message("checkbox.collapse.i18n.messages"));
checkBox("COLLAPSE_SUPPRESS_WARNINGS", ApplicationBundle.message("checkbox.collapse.suppress.warnings"));
checkBox("COLLAPSE_END_OF_LINE_COMMENTS", ApplicationBundle.message("checkbox.collapse.end.of.line.comments"));
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:15,代码来源:JavaCodeFoldingOptionsProvider.java
示例20: createComponent
import com.intellij.openapi.application.ApplicationBundle; //导入依赖的package包/类
@Override
public JComponent createComponent() {
mySuppressWay = new JCheckBox(ApplicationBundle.message("checkbox.suppress.with.suppresswarnings"));
final JPanel panel = new JPanel(new BorderLayout());
panel.add(mySuppressWay, BorderLayout.WEST);
return panel;
}
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:8,代码来源:JavaErrorOptionsProvider.java
注:本文中的com.intellij.openapi.application.ApplicationBundle类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论