diff --git a/java/debugger/impl/src/com/intellij/debugger/settings/DebuggerSteppingConfigurable.java b/java/debugger/impl/src/com/intellij/debugger/settings/DebuggerSteppingConfigurable.java index 30b2fef3cdc8..0cb14afb34ee 100644 --- a/java/debugger/impl/src/com/intellij/debugger/settings/DebuggerSteppingConfigurable.java +++ b/java/debugger/impl/src/com/intellij/debugger/settings/DebuggerSteppingConfigurable.java @@ -49,6 +49,8 @@ public class DebuggerSteppingConfigurable implements SearchableConfigurable { mySteppingFilterEditor.setFilters(settings.getSteppingFilters()); mySteppingFilterEditor.setEnabled(settings.TRACING_FILTERS_ENABLED); + + } public void apply() { diff --git a/java/debugger/impl/src/com/intellij/debugger/settings/UserRenderersConfigurable.java b/java/debugger/impl/src/com/intellij/debugger/settings/UserRenderersConfigurable.java index 614cfd47f4d2..f3a0dda1e15a 100644 --- a/java/debugger/impl/src/com/intellij/debugger/settings/UserRenderersConfigurable.java +++ b/java/debugger/impl/src/com/intellij/debugger/settings/UserRenderersConfigurable.java @@ -116,6 +116,8 @@ public class UserRenderersConfigurable implements SearchableConfigurable { private JComponent createRenderersList() { myRendererChooser = new ElementsChooser(true); + myRendererChooser.getEmptyText().setText(DebuggerBundle.message("text.user.renderers.configurable.no.renderers")); + myRendererChooser.addElementsMarkListener(new ElementsChooser.ElementsMarkListener() { public void elementMarkChanged(final NodeRenderer element, final boolean isMarked) { element.setEnabled(isMarked); diff --git a/java/java-impl/src/com/intellij/application/options/editor/JavaAutoImportOptions.java b/java/java-impl/src/com/intellij/application/options/editor/JavaAutoImportOptions.java index adf09ac28080..34921ecccd86 100644 --- a/java/java-impl/src/com/intellij/application/options/editor/JavaAutoImportOptions.java +++ b/java/java-impl/src/com/intellij/application/options/editor/JavaAutoImportOptions.java @@ -33,6 +33,7 @@ import com.intellij.openapi.util.EmptyRunnable; import com.intellij.openapi.wm.IdeFocusManager; import com.intellij.ui.ListScrollingUtil; import com.intellij.ui.ListUtil; +import com.intellij.ui.components.JBList; import org.jetbrains.annotations.NonNls; import javax.swing.*; @@ -51,7 +52,7 @@ public class JavaAutoImportOptions implements AutoImportOptionsProvider { private JComboBox mySmartPasteCombo; private JCheckBox myCbShowImportPopup; private JPanel myWholePanel; - private JList myExcludePackagesList; + private JBList myExcludePackagesList; private JButton myAddPackageButton; private JButton myRemoveButton; private JCheckBox myCbAddUnambiguousImports; @@ -93,6 +94,8 @@ public class JavaAutoImportOptions implements AutoImportOptionsProvider { ListUtil.removeSelectedItems(myExcludePackagesList); } }); + + myExcludePackagesList.getEmptyText().setText(ApplicationBundle.message("exclude.from.imports.no.exclusions")); } public void addExcludePackage(String packageName) { diff --git a/java/openapi/src/com/intellij/ui/classFilter/ClassFilterEditor.java b/java/openapi/src/com/intellij/ui/classFilter/ClassFilterEditor.java index f0e13a1ca808..a3190ac97caf 100644 --- a/java/openapi/src/com/intellij/ui/classFilter/ClassFilterEditor.java +++ b/java/openapi/src/com/intellij/ui/classFilter/ClassFilterEditor.java @@ -20,8 +20,9 @@ */ package com.intellij.ui.classFilter; -import com.intellij.ide.util.*; import com.intellij.ide.util.ClassFilter; +import com.intellij.ide.util.TreeClassChooser; +import com.intellij.ide.util.TreeClassChooserFactory; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiClass; import com.intellij.psi.search.GlobalSearchScope; @@ -31,7 +32,9 @@ import com.intellij.ui.TableUtil; import com.intellij.ui.UIBundle; import com.intellij.ui.table.JBTable; import com.intellij.util.containers.ContainerUtil; +import com.intellij.util.ui.ComponentWithEmptyText; import com.intellij.util.ui.ItemRemovable; +import com.intellij.util.ui.StatusText; import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -48,8 +51,8 @@ import java.util.Iterator; import java.util.LinkedList; import java.util.List; -public class ClassFilterEditor extends JPanel { - protected JTable myTable = null; +public class ClassFilterEditor extends JPanel implements ComponentWithEmptyText { + protected JBTable myTable = null; protected FilterTableModel myTableModel = null; private JButton myAddClassButton; protected JButton myAddPatternButton; @@ -134,6 +137,13 @@ public class ClassFilterEditor extends JPanel { myRemoveButton.addActionListener(new RemoveAction()); myRemoveButton.setEnabled(false); + + getEmptyText().setText(UIBundle.message("no.patterns")); + } + + @Override + public StatusText getEmptyText() { + return myTable.getEmptyText(); } protected String getAddButtonText() { diff --git a/platform/lang-impl/src/com/intellij/execution/console/ConsoleFoldingConfigurable.java b/platform/lang-impl/src/com/intellij/execution/console/ConsoleFoldingConfigurable.java index 5700d980d93a..dbc178306821 100644 --- a/platform/lang-impl/src/com/intellij/execution/console/ConsoleFoldingConfigurable.java +++ b/platform/lang-impl/src/com/intellij/execution/console/ConsoleFoldingConfigurable.java @@ -30,6 +30,9 @@ public class ConsoleFoldingConfigurable implements SearchableConfigurable { myNegativePanel = new MyAddDeleteListPanel("Exceptions:", "Enter a substring of a console line you don't want to fold:"); myMainComponent.add(myPositivePanel); myMainComponent.add(myNegativePanel); + + myPositivePanel.getEmptyText().setText("Fold nothing"); + myNegativePanel.getEmptyText().setText("No exceptions"); } return myMainComponent; } diff --git a/platform/lang-impl/src/com/intellij/ide/todo/configurable/TodoConfigurable.java b/platform/lang-impl/src/com/intellij/ide/todo/configurable/TodoConfigurable.java index 0bcaeb1cdf8c..5d49aba6c3e2 100644 --- a/platform/lang-impl/src/com/intellij/ide/todo/configurable/TodoConfigurable.java +++ b/platform/lang-impl/src/com/intellij/ide/todo/configurable/TodoConfigurable.java @@ -29,6 +29,7 @@ import com.intellij.psi.search.TodoPattern; import com.intellij.ui.PanelWithButtons; import com.intellij.ui.ScrollPaneFactory; import com.intellij.ui.TableUtil; +import com.intellij.ui.table.JBTable; import com.intellij.util.ui.Table; import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.Nullable; @@ -55,8 +56,8 @@ public class TodoConfigurable extends BaseConfigurable implements SearchableConf * UI resources */ private JPanel myPanel; - private JTable myPatternsTable; - private JTable myFiltersTable; + private JBTable myPatternsTable; + private JBTable myFiltersTable; private JButton myAddPatternButton; private JButton myEditPatternButton; private JButton myRemovePatternButton; @@ -160,6 +161,7 @@ public class TodoConfigurable extends BaseConfigurable implements SearchableConf // JTable with TodoPaterns myPatternsTable = new Table(myPatternsModel); + myPatternsTable.getEmptyText().setText(IdeBundle.message("text.todo.no.patterns")); myPatternsTable.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION); // Column "Icon" @@ -287,6 +289,7 @@ public class TodoConfigurable extends BaseConfigurable implements SearchableConf protected JComponent createMainComponent() { myFiltersTable = new Table(myFiltersModel); + myFiltersTable.getEmptyText().setText(IdeBundle.message("text.todo.no.filters")); myFiltersTable.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION); JScrollPane myFiltersScroll = ScrollPaneFactory.createScrollPane(myFiltersTable); // myFiltersScroll.getViewport().add(myFiltersTable); diff --git a/platform/lang-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeConfigurable.java b/platform/lang-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeConfigurable.java index c2b64ed276fb..7dea8b5685f0 100644 --- a/platform/lang-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeConfigurable.java +++ b/platform/lang-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeConfigurable.java @@ -35,6 +35,7 @@ import com.intellij.openapi.util.text.StringUtil; import com.intellij.psi.templateLanguages.TemplateDataLanguagePatterns; import com.intellij.ui.ListScrollingUtil; import com.intellij.ui.ListUtil; +import com.intellij.ui.components.JBList; import org.jetbrains.annotations.Nullable; import javax.swing.*; @@ -492,7 +493,7 @@ public class FileTypeConfigurable extends BaseConfigurable implements Searchable } public static class PatternsPanel extends JPanel { - private JList myPatternsList; + private JBList myPatternsList; private JButton myAddButton; private JButton myRemoveButton; private JPanel myWholePanel; @@ -508,6 +509,8 @@ public class FileTypeConfigurable extends BaseConfigurable implements Searchable myRemoveButton.setEnabled(myPatternsList.getSelectedIndex() != -1 && getListModel().size() > 0); } }); + + myPatternsList.getEmptyText().setText(FileTypesBundle.message("filetype.settings.no.patterns")); } public void attachActions(final FileTypeConfigurable controller) { diff --git a/platform/lang-impl/src/com/intellij/tools/ToolsPanel.java b/platform/lang-impl/src/com/intellij/tools/ToolsPanel.java index 710ffa828b51..797ab0b492e0 100644 --- a/platform/lang-impl/src/com/intellij/tools/ToolsPanel.java +++ b/platform/lang-impl/src/com/intellij/tools/ToolsPanel.java @@ -118,6 +118,7 @@ class ToolsPanel extends JPanel { }; myTree.setRootVisible(false); + myTree.getEmptyText().setText(ToolsBundle.message("tools.not.configured")); JScrollPane tableScrollPane = ScrollPaneFactory.createScrollPane(myTree); diff --git a/platform/platform-impl/src/com/intellij/application/options/pathMacros/PathMacroTable.java b/platform/platform-impl/src/com/intellij/application/options/pathMacros/PathMacroTable.java index 74427f219f21..1dfe488ed5aa 100644 --- a/platform/platform-impl/src/com/intellij/application/options/pathMacros/PathMacroTable.java +++ b/platform/platform-impl/src/com/intellij/application/options/pathMacros/PathMacroTable.java @@ -21,7 +21,6 @@ import com.intellij.openapi.application.PathMacros; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.ui.Messages; import com.intellij.openapi.util.Pair; -import com.intellij.openapi.util.text.StringUtil; import com.intellij.util.ui.Table; import javax.swing.*; @@ -32,7 +31,6 @@ import java.awt.*; import java.io.File; import java.util.*; import java.util.List; -import java.util.regex.Pattern; /** * @author dsl @@ -73,6 +71,8 @@ public class PathMacroTable extends Table { }); setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); //obtainData(); + + getEmptyText().setText(ApplicationBundle.message("text.no.path.variables")); } public String getMacroValueAt(int row) { diff --git a/platform/platform-impl/src/com/intellij/ide/passwordSafe/config/PasswordSafeConfigurable.java b/platform/platform-impl/src/com/intellij/ide/passwordSafe/config/PasswordSafeConfigurable.java index a3c601af637c..fd2897acdd33 100644 --- a/platform/platform-impl/src/com/intellij/ide/passwordSafe/config/PasswordSafeConfigurable.java +++ b/platform/platform-impl/src/com/intellij/ide/passwordSafe/config/PasswordSafeConfigurable.java @@ -40,7 +40,7 @@ public class PasswordSafeConfigurable implements SearchableConfigurable { */ @Nls public String getDisplayName() { - return "Password Safe"; + return "Passwords"; } /** diff --git a/platform/platform-impl/src/com/intellij/notification/impl/ui/NotificationsConfigurablePanel.java b/platform/platform-impl/src/com/intellij/notification/impl/ui/NotificationsConfigurablePanel.java index 6ab9c5d901b2..19b86e0946e8 100644 --- a/platform/platform-impl/src/com/intellij/notification/impl/ui/NotificationsConfigurablePanel.java +++ b/platform/platform-impl/src/com/intellij/notification/impl/ui/NotificationsConfigurablePanel.java @@ -127,6 +127,8 @@ public class NotificationsConfigurablePanel extends JPanel implements Disposable return value.getTitle(); } }); + + getEmptyText().setText("No notifications configured"); } @Override diff --git a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/KeymapPanel.java b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/KeymapPanel.java index 16dcb7b13d34..abb266a3ae32 100644 --- a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/KeymapPanel.java +++ b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/KeymapPanel.java @@ -66,7 +66,7 @@ import java.util.List; public class KeymapPanel extends JPanel implements SearchableConfigurable { private JComboBox myKeymapList; - private JList myShortcutsList; + private JBList myShortcutsList; private final DefaultComboBoxModel myKeymapListModel = new DefaultComboBoxModel(); @@ -229,6 +229,8 @@ public class KeymapPanel extends JPanel implements SearchableConfigurable { panel.add(currentKeysLabel, new GridBagConstraints(1,0,1,1,0,0,GridBagConstraints.WEST,GridBagConstraints.NONE, new Insets(0, 0, 0, 8), 0, 0)); myShortcutsList = new JBList(new DefaultListModel()); + myShortcutsList.getEmptyText().setText(KeyMapBundle.message("shortcuts.keymap.no.shortcuts")); + myShortcutsList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); myShortcutsList.setCellRenderer(new ShortcutListRenderer()); currentKeysLabel.setLabelFor(myShortcutsList); diff --git a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/QuickListPanel.java b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/QuickListPanel.java index 1ab3b908604a..cfd976b53876 100644 --- a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/QuickListPanel.java +++ b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/QuickListPanel.java @@ -20,10 +20,12 @@ import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.Separator; import com.intellij.openapi.actionSystem.ex.QuickList; import com.intellij.openapi.actionSystem.ex.QuickListsManager; +import com.intellij.openapi.keymap.KeyMapBundle; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.IconLoader; import com.intellij.ui.DocumentAdapter; import com.intellij.ui.JBDefaultTreeCellRenderer; +import com.intellij.ui.components.JBList; import com.intellij.util.ArrayUtil; import com.intellij.util.ui.EmptyIcon; import com.intellij.util.ui.UIUtil; @@ -51,7 +53,7 @@ public class QuickListPanel { private JButton myMoveActionUpButton; private JPanel myPanel; private JTree myActionsTree; - private JList myActionsList; + private JBList myActionsList; private JTextField myDisplayName; private JTextField myDescription; private JButton myAddSeparatorButton; @@ -67,6 +69,7 @@ public class QuickListPanel { myActionsList.setModel(new DefaultListModel()); myActionsList.setCellRenderer(new MyListCellRenderer()); + myActionsList.getEmptyText().setText(KeyMapBundle.message("no.actions")); myActionsTree.getSelectionModel().addTreeSelectionListener(new TreeSelectionListener() { public void valueChanged(TreeSelectionEvent e) { diff --git a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/QuickListsPanel.java b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/QuickListsPanel.java index 93465b29aa45..79536bdaaa03 100644 --- a/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/QuickListsPanel.java +++ b/platform/platform-impl/src/com/intellij/openapi/keymap/impl/ui/QuickListsPanel.java @@ -58,7 +58,7 @@ import java.util.List; */ public class QuickListsPanel extends JPanel implements SearchableConfigurable, MasterDetails { private final DefaultListModel myQuickListsModel = new DefaultListModel(); - private JList myQuickListsList = new JBList(myQuickListsModel); + private JBList myQuickListsList = new JBList(myQuickListsModel); private final JPanel myRightPanel = new JPanel(new BorderLayout()); private int myCurrentIndex = -1; private QuickListPanel myQuickListPanel = null; @@ -79,6 +79,8 @@ public class QuickListsPanel extends JPanel implements SearchableConfigurable, M public void initUi() { myDetailsComponent = new DetailsComponent(); myDetailsComponent.setContent(myRightPanel); + + myQuickListsList.getEmptyText().setText(KeyMapBundle.message("no.quick.lists")); } public JComponent getToolbar() { diff --git a/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateSettingsConfigurable.java b/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateSettingsConfigurable.java index 39b73e781e3b..f50cd83d3da2 100644 --- a/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateSettingsConfigurable.java +++ b/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/UpdateSettingsConfigurable.java @@ -25,6 +25,7 @@ import com.intellij.openapi.ui.Messages; import com.intellij.openapi.ui.NonEmptyInputValidator; import com.intellij.openapi.util.IconLoader; import com.intellij.ui.ListUtil; +import com.intellij.ui.components.JBList; import com.intellij.util.ArrayUtil; import com.intellij.util.text.DateFormatUtil; import org.jetbrains.annotations.Nullable; @@ -107,7 +108,7 @@ public class UpdateSettingsConfigurable extends BaseConfigurable implements Sear private JButton myAddButton; private JButton myDeleteButton; - private JList myUrlsList; + private JBList myUrlsList; private JButton myEditButton; public UpdatesSettingsPanel() { @@ -137,6 +138,7 @@ public class UpdateSettingsConfigurable extends BaseConfigurable implements Sear LabelTextReplacingUtil.replaceText(myPanel); + myUrlsList.getEmptyText().setText(IdeBundle.message("update.no.update.hosts")); myUrlsList.setModel(new DefaultListModel()); myUrlsList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); diff --git a/platform/platform-resources-en/src/messages/ApplicationBundle.properties b/platform/platform-resources-en/src/messages/ApplicationBundle.properties index 10a78efd10ff..3ce15291f85b 100644 --- a/platform/platform-resources-en/src/messages/ApplicationBundle.properties +++ b/platform/platform-resources-en/src/messages/ApplicationBundle.properties @@ -494,6 +494,7 @@ column.value=Value title.add.variable=Add Variable title.edit.variable=Edit Variable error.path.variable.is.undefined=Path variable "{0}" is undefined +text.no.path.variables=No path variables config.import.invalid.directory.error={0} is not a directory! command.exit=Exit application.save.settings.error=Could not save application settings: {0} @@ -504,6 +505,7 @@ exclude.from.completion.group=Exclude from Import and Completion exclude.from.completion.prompt=Enter the name of the package or class to exclude from auto-import and class name completion: exclude.from.completion.title=Exclude Package exclude.from.imports.add=A&dd +exclude.from.imports.no.exclusions=No exclude patterns inline.elements=Inline elements: don.t.break.if.inline.content=Don't break if inline content: edit.code.folding.options=Open code folding options diff --git a/platform/platform-resources-en/src/messages/FileTypesBundle.properties b/platform/platform-resources-en/src/messages/FileTypesBundle.properties index a3a418cf257a..692618196ac9 100644 --- a/platform/platform-resources-en/src/messages/FileTypesBundle.properties +++ b/platform/platform-resources-en/src/messages/FileTypesBundle.properties @@ -17,6 +17,7 @@ filetype.edit.add.pattern.exists.title=Add Wildcard filetype.settings.component=File types filetype.settings.cannot.save.error=Can''t save file types: {0} filetype.settings.cannot.save.title=Error Saving Settings +filetype.settings.no.patterns=No registered file patters filetypes.recognized.group=Recognized File Types: filetypes.recognized.add.button=A&dd... filetypes.recognized.remove.button=&Remove diff --git a/platform/platform-resources-en/src/messages/IdeBundle.properties b/platform/platform-resources-en/src/messages/IdeBundle.properties index 956bd30d5da0..481d96ea5b45 100644 --- a/platform/platform-resources-en/src/messages/IdeBundle.properties +++ b/platform/platform-resources-en/src/messages/IdeBundle.properties @@ -613,6 +613,8 @@ title.add.todo.filter=Add Filter button.edit.t=Edi&t... button.remove.m=Re&move label.todo.patterns=Patterns: +text.todo.no.patterns=No patterns configured +text.todo.no.filters=No filters configured node.todo.group={0} ({1} {1,choice,1#item|2#items} in {2} {2,choice,1#file|2#files}) node.todo.summary=Found {0} TODO {0,choice,1#item|2#items} in {1} {1,choice,1#file|2#files} node.todo.no.items.found={0} (no items found) @@ -1021,6 +1023,7 @@ project.new.wizard.module.identification=module changelist.todo.title={0} changelist hierarchy.scope.test=Test update.plugin.host.url.message=Plugin Host Url +update.no.update.hosts=No plugin hosts configured update.edit.plugin.host.title=Edit plugin host update.add.new.plugin.host.title=Add new plugin host update.plugin.hosts.title=Plugin Hosts diff --git a/platform/platform-resources-en/src/messages/KeyMapBundle.properties b/platform/platform-resources-en/src/messages/KeyMapBundle.properties index 5a233e3b0d02..aa008059038a 100644 --- a/platform/platform-resources-en/src/messages/KeyMapBundle.properties +++ b/platform/platform-resources-en/src/messages/KeyMapBundle.properties @@ -22,6 +22,7 @@ ant.targets.group.title=Ant Targets macros.group.title=Macros quick.lists.group.title=Quick Lists other.group.title=Other +no.quick.lists=No quick lists edit.quick.list.dialog.title=Edit Quick List keyboard.shortcut.dialog.title=Enter Keyboard Shortcut @@ -38,6 +39,7 @@ assigned.to.info.message=Assigned to {0} keymap.display.name=Keymap based.on.keymap.label=Based on keymap: {0} shortcuts.keymap.label=Shortc&uts: +shortcuts.keymap.no.shortcuts=No shortcuts add.keymap.label=A&dd remove.keymap.label=Remo&ve @@ -82,6 +84,7 @@ quick.list.panel.move.up.button=Move &Up quick.list.panel.add.separator.button=Add Separator quick.list.panel.description.label=Description quick.list.panel.display.name.label=Display name +no.actions=No actions #0 - modifiers (with + for windows or empty str), 1 - button num (1 - left, 2 - center, 3 - right 0 - no button) mouse.click.shortcut.text={0}Button{1} Click diff --git a/platform/platform-resources-en/src/messages/ToolsBundle.properties b/platform/platform-resources-en/src/messages/ToolsBundle.properties index e3e4a10bbd47..521a15bf7319 100644 --- a/platform/platform-resources-en/src/messages/ToolsBundle.properties +++ b/platform/platform-resources-en/src/messages/ToolsBundle.properties @@ -47,4 +47,5 @@ tools.caption=Tools: tools.delete.confirmation=Do you want to delete the external tool(s)? tools.name.column=Name tools.group.column=Group -tools.description.column=Description \ No newline at end of file +tools.description.column=Description +tools.not.configured=No external tools configured \ No newline at end of file diff --git a/platform/platform-resources-en/src/messages/UIBundle.properties b/platform/platform-resources-en/src/messages/UIBundle.properties index 2557467da05b..b46255778ab7 100644 --- a/platform/platform-resources-en/src/messages/UIBundle.properties +++ b/platform/platform-resources-en/src/messages/UIBundle.properties @@ -140,6 +140,7 @@ remove.field.initializer.quick.fix=Remove field initializer button.add.class=Add Class... button.add.pattern=Add Pattern... button.remove=&Remove +no.patterns=No class patterns configured class.filter.editor.choose.class.title=Choose Class class.filter.editor.add.dialog.title=New Filter label.class.filter.editor.add.dialog.filter.pattern=Enter the filter pattern: diff --git a/platform/platform-resources-en/src/messages/VcsBundle.properties b/platform/platform-resources-en/src/messages/VcsBundle.properties index 774a84ffa56f..3b33cf95cdf6 100644 --- a/platform/platform-resources-en/src/messages/VcsBundle.properties +++ b/platform/platform-resources-en/src/messages/VcsBundle.properties @@ -363,6 +363,7 @@ ignored.configure.title=Configure Ignored Files ignored.configure.item.directory=Directory: {0} ignored.configure.item.file=File: {0} ignored.configure.item.mask=Mask: {0} +no.ignored.files=No ignored files ignored.edit.title=Ignore Unversioned Files ignored.edit.multiple.files=Selected {0} files ignored.edit.radio.file=Ignore specified &file @@ -437,6 +438,7 @@ issue.link.add.title=Add Issue Navigation Link issue.link.edit.title=Edit Issue Navigation Link issue.link.delete.prompt=Delete selected navigation link? issue.link.delete.title=Delete Issue Navigation Link +issue.link.no.patterns=No patterns configured committed.changes.empty.comment= committed.changes.filter.all=All committed.changes.filter.none= diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/conflicts/ChangelistConflictConfigurable.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/conflicts/ChangelistConflictConfigurable.java index 9254359e62f0..56e1dac04609 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/conflicts/ChangelistConflictConfigurable.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/conflicts/ChangelistConflictConfigurable.java @@ -20,7 +20,9 @@ import com.intellij.openapi.options.SearchableConfigurable; import com.intellij.openapi.options.binding.BindControl; import com.intellij.openapi.options.binding.BindableConfigurable; import com.intellij.openapi.options.binding.ControlBinder; +import com.intellij.openapi.vcs.VcsBundle; import com.intellij.openapi.vcs.changes.ChangeListManagerImpl; +import com.intellij.ui.components.JBList; import com.intellij.util.ArrayUtil; import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.Nls; @@ -50,7 +52,7 @@ public class ChangelistConflictConfigurable extends BindableConfigurable impleme @BindControl("HIGHLIGHT_NON_ACTIVE_CHANGELIST") private JCheckBox myHighlightNonActiveCheckBox; - private JList myIgnoredFiles; + private JBList myIgnoredFiles; private JButton myClearButton; private boolean myIgnoredFilesCleared; @@ -73,6 +75,8 @@ public class ChangelistConflictConfigurable extends BindableConfigurable impleme myClearButton.setEnabled(false); } }); + + myIgnoredFiles.getEmptyText().setText(VcsBundle.message("no.ignored.files")); } public JComponent createComponent() { diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/IgnoredSettingsPanel.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/IgnoredSettingsPanel.java index 1c98412461b5..d014d7b0fc9d 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/IgnoredSettingsPanel.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/IgnoredSettingsPanel.java @@ -30,6 +30,7 @@ import com.intellij.openapi.vcs.changes.ChangeListManager; import com.intellij.openapi.vcs.changes.IgnoredFileBean; import com.intellij.ui.ColoredListCellRenderer; import com.intellij.ui.SimpleTextAttributes; +import com.intellij.ui.components.JBList; import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.Nls; @@ -39,7 +40,7 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class IgnoredSettingsPanel implements SearchableConfigurable { - private JList myList; + private JBList myList; private JButton myAddButton; private JButton myEditButton; private JButton myRemoveButton; @@ -67,6 +68,8 @@ public class IgnoredSettingsPanel implements SearchableConfigurable { } }); myChangeListManager = ChangeListManager.getInstance(myProject); + + myList.getEmptyText().setText(VcsBundle.message("no.ignored.files")); } private void setItems(final IgnoredFileBean[] filesToIgnore) { diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/configurable/IssueNavigationConfigurationPanel.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/configurable/IssueNavigationConfigurationPanel.java index 7b8a0d4b09be..ebb2e5288029 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/configurable/IssueNavigationConfigurationPanel.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/configurable/IssueNavigationConfigurationPanel.java @@ -22,6 +22,7 @@ import com.intellij.openapi.ui.Messages; import com.intellij.openapi.vcs.IssueNavigationConfiguration; import com.intellij.openapi.vcs.IssueNavigationLink; import com.intellij.openapi.vcs.VcsBundle; +import com.intellij.ui.table.JBTable; import com.intellij.util.ui.ColumnInfo; import com.intellij.util.ui.ListTableModel; import org.jetbrains.annotations.Nls; @@ -40,7 +41,7 @@ import java.util.List; */ public class IssueNavigationConfigurationPanel extends JPanel implements SearchableConfigurable { private JPanel myPanel; - private JTable myLinkTable; + private JBTable myLinkTable; private JButton myAddButton; private JButton myEditButton; private JButton myDeleteButton; @@ -144,6 +145,8 @@ public class IssueNavigationConfigurationPanel extends JPanel implements Searcha updateButtons(); } }); + + myLinkTable.getEmptyText().setText(VcsBundle.message("issue.link.no.patterns")); updateButtons(); } diff --git a/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/InjectionsSettingsUI.java b/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/InjectionsSettingsUI.java index d446925dd85c..e290b15b81e9 100644 --- a/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/InjectionsSettingsUI.java +++ b/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/InjectionsSettingsUI.java @@ -104,6 +104,7 @@ public class InjectionsSettingsUI implements Configurable { myRoot = new JPanel(new BorderLayout()); myInjectionsTable = new InjectionsTable(myInjections); + myInjectionsTable.getEmptyText().setText("No injections configured"); final JPanel tablePanel = new JPanel(new BorderLayout()); tablePanel.add(ScrollPaneFactory.createScrollPane(myInjectionsTable), BorderLayout.CENTER); diff --git a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/associations/impl/AssociationsEditor.java b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/associations/impl/AssociationsEditor.java index 4df5c9c4ac07..996841d6d132 100644 --- a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/associations/impl/AssociationsEditor.java +++ b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/associations/impl/AssociationsEditor.java @@ -21,6 +21,7 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiManager; import com.intellij.ui.LayeredIcon; +import com.intellij.ui.components.JBList; import com.intellij.ui.treeStructure.Tree; import com.intellij.uiDesigner.core.GridConstraints; import org.intellij.lang.xpath.xslt.XsltSupport; @@ -45,7 +46,7 @@ class AssociationsEditor { private JPanel myComponent; private JPanel myToolbar; - private JList myList; + private JBList myList; private Tree myTree; private JSplitPane mySplitPane; @@ -101,6 +102,8 @@ class AssociationsEditor { } else { mySplitPane.setDividerLocation(location); } + + myList.getEmptyText().setText("No associated files"); } private void expandTree(DefaultTreeModel newModel, Project project, ProjectTreeBuilder builder) { diff --git a/resources-en/src/messages/DebuggerBundle.properties b/resources-en/src/messages/DebuggerBundle.properties index 72f5d75a11be..9239dd87a967 100644 --- a/resources-en/src/messages/DebuggerBundle.properties +++ b/resources-en/src/messages/DebuggerBundle.properties @@ -194,6 +194,7 @@ label.compound.renderer.configurable.when.rendering=When rendering the node label.compound.renderer.configurable.when.expanding=When expanding the node label.compound.renderer.configurable.test.can.expand=Test if the node can be expanded (optional): title.compound.renderer.configurable.choose.renderer.reference.type=Renderer Reference Type +text.base.renderer.configurable.no.class.patterns=No class patterns configured button.add=&Add button.remove=&Remove button.move.up=Move &Up @@ -232,6 +233,7 @@ label.threads.view.configurable.show.thread.groups=Show thread &groups threads.view.configurable.display.name=Customize Threads View user.renderers.configurable.display.name=Data Type Renderers label.user.renderers.configurable.renderer.name=Renderer name: +text.user.renderers.configurable.no.renderers=No renderers button.copy=Copy user.renderers.configurable.button.description.add=Add new renderer user.renderers.configurable.button.description.remove=Remove selected renderer