mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IJPL-175939 Consider deprecating the Thumbnails tool window
- Remove unused actions GitOrigin-RevId: a36c071657ae5c2d86e1cab18c2123e6e291e1c4
This commit is contained in:
committed by
intellij-monorepo-bot
parent
b6344004b0
commit
d0b4acbded
@@ -101,16 +101,6 @@
|
||||
<separator/>
|
||||
|
||||
<group id="Images.ThumbnailViewActions">
|
||||
<action class="org.intellij.images.thumbnail.actions.UpFolderAction"
|
||||
id="Images.Thumbnails.UpFolder"
|
||||
icon="AllIcons.Nodes.UpFolder">
|
||||
<keyboard-shortcut first-keystroke="BACK_SPACE" keymap="$default"/>
|
||||
</action>
|
||||
<action class="org.intellij.images.thumbnail.actions.ToggleRecursiveAction"
|
||||
id="Images.Thumbnails.ToggleRecursive"
|
||||
icon="AllIcons.ObjectBrowser.FlattenPackages">
|
||||
<keyboard-shortcut first-keystroke="alt MULTIPLY" keymap="$default"/>
|
||||
</action>
|
||||
<action class="org.intellij.images.thumbnail.actions.ToggleFileSizeAction"
|
||||
id="Images.Thumbnails.ToggleFileSize"
|
||||
icon="AllIcons.FileTypes.Any_type">
|
||||
@@ -119,26 +109,6 @@
|
||||
id="Images.Thumbnails.ToggleFileName"
|
||||
icon="AllIcons.Actions.ShowImportStatements">
|
||||
</action>
|
||||
<action class="org.intellij.images.thumbnail.actions.FilterByThemeComboBoxAction"
|
||||
internal="true"
|
||||
id="Images.Thumbnails.FilterByTheme"/>
|
||||
<group class="org.intellij.images.thumbnail.actions.FilterByTagActionGroup"
|
||||
internal="true"
|
||||
popup="true"
|
||||
id="Images.Thumbnails.FilterByTag"/>
|
||||
<action class="org.intellij.images.thumbnail.actions.ToggleTagsPanelAction"
|
||||
id="Images.Thumbnails.ToggleTagsPanelName"
|
||||
icon="AllIcons.Actions.Preview">
|
||||
</action>
|
||||
|
||||
<action class="org.intellij.images.thumbnail.actions.HideThumbnailsAction"
|
||||
id="Images.Thumbnails.Hide"
|
||||
icon="AllIcons.Actions.Cancel" use-shortcut-of="CloseContent"/>
|
||||
|
||||
<action class="org.intellij.images.thumbnail.actions.EnterAction"
|
||||
id="Images.Thumbnails.EnterAction">
|
||||
<keyboard-shortcut first-keystroke="ENTER" keymap="$default"/>
|
||||
</action>
|
||||
|
||||
<action class="org.intellij.images.thumbnail.actions.ShowBorderAction" id="Images.ShowBorder"/>
|
||||
<action class="org.intellij.images.editor.actions.ChangeBackgroundAction" id="Images.ChangeBackground"/>
|
||||
@@ -201,37 +171,5 @@
|
||||
<reference ref="Images.EditExternalEditorPath"/>
|
||||
<reference ref="ExternalToolsGroup"/>
|
||||
</group>
|
||||
<group id="Images.ThumbnailsToolbar">
|
||||
<reference ref="Images.Thumbnails.UpFolder"/>
|
||||
<reference ref="Images.Thumbnails.ToggleRecursive"/>
|
||||
<separator/>
|
||||
<reference ref="Images.ToggleTransparencyChessboard"/>
|
||||
<reference ref="Images.Thumbnails.ToggleFileSize"/>
|
||||
<reference ref="Images.Thumbnails.ToggleFileName"/>
|
||||
<separator/>
|
||||
|
||||
<reference ref="Images.Thumbnails.FilterByTheme"/>
|
||||
<reference ref="Images.Thumbnails.FilterByTag"/>
|
||||
<reference ref="Images.Thumbnails.ToggleTagsPanelName"/>
|
||||
<reference ref="Images.Thumbnails.Hide"/>
|
||||
</group>
|
||||
<group id="Images.ThumbnailsPopupMenu">
|
||||
<reference ref="CutCopyPasteGroup"/>
|
||||
<reference ref="EditSource"/>
|
||||
<reference ref="Images.Thumbnails.EnterAction"/>
|
||||
<separator/>
|
||||
<reference ref="Images.ThumbnailsToolbar"/>
|
||||
<separator/>
|
||||
<reference ref="FindUsages"/>
|
||||
<reference ref="RefactoringMenu"/>
|
||||
<separator/>
|
||||
<reference ref="$Delete"/>
|
||||
<separator/>
|
||||
<reference ref="VersionControlsGroup"/>
|
||||
<reference ref="CompareTwoFiles"/>
|
||||
<separator/>
|
||||
<reference ref="Images.EditExternally"/>
|
||||
<reference ref="ExternalToolsGroup"/>
|
||||
</group>
|
||||
</actions>
|
||||
</idea-plugin>
|
||||
|
||||
@@ -47,20 +47,6 @@ action.Images.Editor.ZoomOut.text=Zoom Out
|
||||
action.Images.Editor.ZoomOut.description=Reduce image view
|
||||
action.Images.Editor.ActualSize.text=Actual Size
|
||||
action.Images.Editor.ActualSize.description=Resize image to actual size
|
||||
action.Images.Thumbnails.UpFolder.text=Level up
|
||||
action.Images.Thumbnails.UpFolder.description=Level up
|
||||
action.Images.Thumbnails.EnterAction.text=Browse
|
||||
action.Images.Thumbnails.EnterAction.description=Browse directory
|
||||
action.Images.Thumbnails.ToggleRecursive.text=Recursive
|
||||
action.Images.Thumbnails.ToggleRecursive.description=Toggle recursive browsing
|
||||
action.Images.Thumbnails.Hide.text=Close Thumbnails
|
||||
action.Images.Thumbnails.Hide.description=Close thumbnails window
|
||||
action.Images.Thumbnails.ToggleTagsPanelName.text=Preview Tags
|
||||
action.Images.Thumbnails.ToggleTagsPanelName.description=Toggle whether to show the tags management panel
|
||||
group.Images.Thumbnails.FilterByTag.text=Filter by Tag
|
||||
group.Images.Thumbnails.FilterByTag.description=Filter images by tag
|
||||
action.Images.Thumbnails.FilterByTheme.text=Filter by Theme
|
||||
action.Images.Thumbnails.FilterByTheme.description=Filter images by theme
|
||||
action.Images.Thumbnails.ToggleFileName.text=File Name
|
||||
action.Images.Thumbnails.ToggleFileName.description=Toggle whether to show the image name
|
||||
action.Images.Thumbnails.ToggleFileSize.text=File Size
|
||||
@@ -78,7 +64,6 @@ black.cell.color.descriptor='Black' cell
|
||||
white.cell.color.descriptor='White' cell
|
||||
grid.line.color.descriptor=Grid line
|
||||
background.color.descriptor=Background
|
||||
action.all.text=All
|
||||
image.description={0}\u00D7{1}, {2}bpp
|
||||
|
||||
# scientific mode
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package org.intellij.images.thumbnail.actionSystem;
|
||||
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.Presentation;
|
||||
import org.intellij.images.thumbnail.ThumbnailView;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Thumbnail view actions utility.
|
||||
*
|
||||
* @author <a href="mailto:aefimov.box@gmail.com">Alexey Efimov</a>
|
||||
*/
|
||||
public final class ThumbnailViewActionUtil {
|
||||
private ThumbnailViewActionUtil() {
|
||||
}
|
||||
|
||||
/**
|
||||
* Extract current thumbnail view from event context.
|
||||
*
|
||||
* @param e Action event
|
||||
* @return Current {@link ThumbnailView} or {@code null}
|
||||
* @deprecated remove with ThumbnailView and other related stuff
|
||||
*/
|
||||
@Deprecated
|
||||
public static ThumbnailView getVisibleThumbnailView(@NotNull AnActionEvent e) {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Enable or disable current action from event.
|
||||
*
|
||||
* @param e Action event
|
||||
* @return Enabled value
|
||||
*/
|
||||
public static boolean setEnabled(@NotNull AnActionEvent e) {
|
||||
ThumbnailView thumbnailView = getVisibleThumbnailView(e);
|
||||
Presentation presentation = e.getPresentation();
|
||||
presentation.setEnabled(thumbnailView != null);
|
||||
return presentation.isEnabled();
|
||||
}
|
||||
}
|
||||
@@ -23,7 +23,5 @@ import org.jetbrains.annotations.NonNls;
|
||||
* @author <a href="mailto:aefimov.box@gmail.com">Alexey Efimov</a>
|
||||
*/
|
||||
public interface ThumbnailViewActions {
|
||||
@NonNls String GROUP_POPUP = "Images.ThumbnailsPopupMenu";
|
||||
@NonNls String GROUP_TOOLBAR = "Images.ThumbnailsToolbar";
|
||||
@NonNls String ACTION_PLACE = "Images.Thumbnails";
|
||||
}
|
||||
|
||||
@@ -1,71 +0,0 @@
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package org.intellij.images.thumbnail.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.ActionUpdateThread;
|
||||
import com.intellij.openapi.actionSystem.AnAction;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.Presentation;
|
||||
import com.intellij.openapi.fileEditor.FileEditorManager;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import org.intellij.images.fileTypes.ImageFileTypeManager;
|
||||
import org.intellij.images.thumbnail.ThumbnailView;
|
||||
import org.intellij.images.thumbnail.actionSystem.ThumbnailViewActionUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Level up to browse images.
|
||||
*
|
||||
* @author <a href="mailto:aefimov.box@gmail.com">Alexey Efimov</a>
|
||||
*/
|
||||
public final class EnterAction extends AnAction {
|
||||
@Override
|
||||
public void actionPerformed(@NotNull AnActionEvent e) {
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
if (view != null) {
|
||||
VirtualFile[] selection = view.getSelection();
|
||||
if (selection.length == 1 && selection[0].isDirectory()) {
|
||||
view.setRoot(selection[0]);
|
||||
}
|
||||
else if (selection.length > 0) {
|
||||
FileEditorManager fileEditorManager = FileEditorManager.getInstance(view.getProject());
|
||||
ImageFileTypeManager typeManager = ImageFileTypeManager.getInstance();
|
||||
for (VirtualFile file : selection) {
|
||||
if (typeManager.isImage(file)) {
|
||||
fileEditorManager.openFile(file, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(@NotNull AnActionEvent e) {
|
||||
if (ThumbnailViewActionUtil.setEnabled(e)) {
|
||||
Presentation presentation = e.getPresentation();
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
VirtualFile[] selection = view.getSelection();
|
||||
if (selection.length > 0) {
|
||||
if (selection.length == 1 && selection[0].isDirectory()) {
|
||||
presentation.setVisible(true);
|
||||
}
|
||||
else {
|
||||
boolean notImages = false;
|
||||
ImageFileTypeManager typeManager = ImageFileTypeManager.getInstance();
|
||||
for (VirtualFile file : selection) {
|
||||
notImages |= !typeManager.isImage(file);
|
||||
}
|
||||
presentation.setEnabled(!notImages);
|
||||
presentation.setVisible(false);
|
||||
}
|
||||
}
|
||||
else {
|
||||
presentation.setEnabledAndVisible(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull ActionUpdateThread getActionUpdateThread() {
|
||||
return ActionUpdateThread.EDT;
|
||||
}
|
||||
}
|
||||
@@ -1,107 +0,0 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.images.thumbnail.actions;
|
||||
|
||||
import com.intellij.CommonBundle;
|
||||
import com.intellij.icons.AllIcons;
|
||||
import com.intellij.ide.IdeBundle;
|
||||
import com.intellij.openapi.actionSystem.*;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.NlsSafe;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import org.intellij.images.search.ImageTagManager;
|
||||
import org.intellij.images.search.TagFilter;
|
||||
import org.intellij.images.thumbnail.ThumbnailView;
|
||||
import org.intellij.images.thumbnail.actionSystem.ThumbnailViewActionUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public final class FilterByTagActionGroup extends ActionGroup implements PopupAction {
|
||||
|
||||
public FilterByTagActionGroup() {
|
||||
setPopup(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(final @NotNull AnActionEvent e) {
|
||||
Project project = e.getProject();
|
||||
if (project == null) {
|
||||
e.getPresentation().setEnabledAndVisible(false);
|
||||
return;
|
||||
}
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
ImageTagManager tagManager = ImageTagManager.getInstance(project);
|
||||
e.getPresentation().setVisible(view != null && !tagManager.getAllTags().isEmpty());
|
||||
TagFilter[] filters = view != null ? view.getTagFilters() : null;
|
||||
e.getPresentation().setText(filters == null ? CommonBundle.message("action.text.all")
|
||||
: StringUtil.join(filters, filter -> filter.getDisplayName(), ","));
|
||||
e.getPresentation().setIcon(AllIcons.Duplicates.SendToTheRight);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public @NotNull ActionUpdateThread getActionUpdateThread() {
|
||||
return ActionUpdateThread.EDT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnAction @NotNull [] getChildren(@Nullable AnActionEvent e) {
|
||||
if (e == null) return AnAction.EMPTY_ARRAY;
|
||||
DefaultActionGroup group = new DefaultActionGroup();
|
||||
Project project = e.getProject();
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
if (view == null) return AnAction.EMPTY_ARRAY;
|
||||
ImageTagManager tagManager = ImageTagManager.getInstance(project);
|
||||
|
||||
List<MyToggleAction> tagActions =
|
||||
ContainerUtil.map(tagManager.getAllTags(), (@NlsSafe var tag) -> new MyToggleAction(view, new TagFilter(tag, tagManager)));
|
||||
group.add(new AnAction(IdeBundle.messagePointer("action.Anonymous.text.all")) {
|
||||
@Override
|
||||
public void actionPerformed(@NotNull AnActionEvent e) {
|
||||
for (MyToggleAction tagAction : tagActions) {
|
||||
tagAction.setSelected(e, false);
|
||||
}
|
||||
}
|
||||
});
|
||||
group.add(Separator.getInstance());
|
||||
|
||||
group.addAll(tagActions);
|
||||
|
||||
return group.getChildren(e);
|
||||
}
|
||||
|
||||
private static class MyToggleAction extends ToggleAction {
|
||||
private final ThumbnailView myView;
|
||||
private final TagFilter myFilter;
|
||||
|
||||
MyToggleAction(ThumbnailView view, TagFilter filter) {
|
||||
super(filter.getDisplayName());
|
||||
myView = view;
|
||||
myFilter = filter;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSelected(@NotNull AnActionEvent e) {
|
||||
TagFilter[] filters = myView.getTagFilters();
|
||||
return filters != null && ContainerUtil.exists(filters, f -> myFilter.getDisplayName().equals(f.getDisplayName()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull ActionUpdateThread getActionUpdateThread() {
|
||||
return ActionUpdateThread.BGT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(@NotNull AnActionEvent e, boolean state) {
|
||||
if (state) {
|
||||
myFilter.setFilter(myView);
|
||||
}
|
||||
else {
|
||||
myFilter.clearFilter(myView);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,70 +0,0 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.images.thumbnail.actions;
|
||||
|
||||
import com.intellij.CommonBundle;
|
||||
import com.intellij.openapi.actionSystem.ActionUpdateThread;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.actionSystem.DefaultActionGroup;
|
||||
import com.intellij.openapi.actionSystem.ex.ComboBoxAction;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import org.intellij.images.ImagesBundle;
|
||||
import org.intellij.images.thumbnail.ThumbnailView;
|
||||
import org.intellij.images.thumbnail.actionSystem.ThumbnailViewActionUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
public final class FilterByThemeComboBoxAction extends ComboBoxAction {
|
||||
|
||||
@Override
|
||||
public @NotNull ActionUpdateThread getActionUpdateThread() {
|
||||
return ActionUpdateThread.BGT;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void update(final @NotNull AnActionEvent e) {
|
||||
Project project = e.getProject();
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
boolean hasApplicableExtension =
|
||||
ContainerUtil.and(ThemeFilter.EP_NAME.getExtensionList(), filter -> project != null && filter.isApplicableToProject(project));
|
||||
e.getPresentation().setVisible(view != null && hasApplicableExtension);
|
||||
ThemeFilter filter = view != null ? view.getFilter() : null;
|
||||
e.getPresentation().setText(filter == null ? CommonBundle.message("action.text.all") : filter.getDisplayName());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected @NotNull DefaultActionGroup createPopupActionGroup(@NotNull JComponent button, @NotNull DataContext context) {
|
||||
DefaultActionGroup group = new DefaultActionGroup();
|
||||
group.add(new FilterImagesAction(new ThemeFilter() {
|
||||
@Override
|
||||
public String getDisplayName() {
|
||||
return ImagesBundle.message("action.all.text");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean accepts(VirtualFile file) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isApplicableToProject(Project project) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFilter(ThumbnailView view) {
|
||||
view.setFilter(this);
|
||||
}
|
||||
}));
|
||||
for (ThemeFilter filter : ThemeFilter.EP_NAME.getExtensionList()) {
|
||||
group.add(new FilterImagesAction(filter));
|
||||
}
|
||||
|
||||
return group;
|
||||
}
|
||||
}
|
||||
@@ -1,50 +0,0 @@
|
||||
/*
|
||||
* Copyright 2000-2017 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.intellij.images.thumbnail.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.ActionUpdateThread;
|
||||
import com.intellij.openapi.actionSystem.AnAction;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import org.intellij.images.thumbnail.ThumbnailView;
|
||||
import org.intellij.images.thumbnail.actionSystem.ThumbnailViewActionUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class FilterImagesAction extends AnAction {
|
||||
private final Filter myFilter;
|
||||
|
||||
public FilterImagesAction(Filter filter) {
|
||||
myFilter = filter;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(@NotNull AnActionEvent e) {
|
||||
e.getPresentation().setText(myFilter.getDisplayName());
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull ActionUpdateThread getActionUpdateThread() {
|
||||
return ActionUpdateThread.BGT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actionPerformed(@NotNull AnActionEvent e) {
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
|
||||
if (view != null) {
|
||||
myFilter.setFilter(view);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,29 +0,0 @@
|
||||
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package org.intellij.images.thumbnail.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.ActionUpdateThread;
|
||||
import com.intellij.openapi.actionSystem.AnAction;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import org.intellij.images.thumbnail.ThumbnailView;
|
||||
import org.intellij.images.thumbnail.actionSystem.ThumbnailViewActionUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
final class HideThumbnailsAction extends AnAction {
|
||||
@Override
|
||||
public void actionPerformed(@NotNull AnActionEvent e) {
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
if (view != null) {
|
||||
view.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(@NotNull AnActionEvent e) {
|
||||
ThumbnailViewActionUtil.setEnabled(e);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull ActionUpdateThread getActionUpdateThread() {
|
||||
return ActionUpdateThread.EDT;
|
||||
}
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package org.intellij.images.thumbnail.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.ActionUpdateThread;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.ToggleAction;
|
||||
import org.intellij.images.thumbnail.ThumbnailView;
|
||||
import org.intellij.images.thumbnail.actionSystem.ThumbnailViewActionUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Toggle recursive flag.
|
||||
*/
|
||||
final class ToggleRecursiveAction extends ToggleAction {
|
||||
@Override
|
||||
public boolean isSelected(@NotNull AnActionEvent e) {
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
return view != null && view.isRecursive();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(@NotNull AnActionEvent e, boolean state) {
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
if (view != null) {
|
||||
view.setRecursive(state);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(final @NotNull AnActionEvent e) {
|
||||
super.update(e);
|
||||
ThumbnailViewActionUtil.setEnabled(e);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull ActionUpdateThread getActionUpdateThread() {
|
||||
return ActionUpdateThread.EDT;
|
||||
}
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.images.thumbnail.actions;
|
||||
|
||||
import com.intellij.ide.IdeBundle;
|
||||
import com.intellij.ide.util.PropertiesComponent;
|
||||
import com.intellij.openapi.actionSystem.ActionUpdateThread;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.ToggleAction;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import org.intellij.images.thumbnail.ThumbnailView;
|
||||
import org.intellij.images.thumbnail.actionSystem.ThumbnailViewActionUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public final class ToggleTagsPanelAction extends ToggleAction {
|
||||
public static final String TAGS_PANEL_VISIBLE = "tags.panel.visible";
|
||||
public static final String TAGS_PANEL_PROPORTION = "tags.panel.proportion";
|
||||
|
||||
@Override
|
||||
public boolean isSelected(@NotNull AnActionEvent e) {
|
||||
Project project = e.getProject();
|
||||
return project != null && PropertiesComponent.getInstance(project).getBoolean(TAGS_PANEL_VISIBLE, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSelected(@NotNull AnActionEvent e, boolean state) {
|
||||
PropertiesComponent.getInstance(e.getProject()).setValue(TAGS_PANEL_VISIBLE, state);
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
assert view != null;
|
||||
view.refresh();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(final @NotNull AnActionEvent e) {
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
e.getPresentation().setEnabledAndVisible(view != null);
|
||||
e.getPresentation().setText(isSelected(e) ? IdeBundle.message("action.text.hide.tags.panel") :
|
||||
IdeBundle.message("action.text.show.tags.panel"));
|
||||
super.update(e);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull ActionUpdateThread getActionUpdateThread() {
|
||||
return ActionUpdateThread.BGT;
|
||||
}
|
||||
}
|
||||
@@ -1,45 +0,0 @@
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package org.intellij.images.thumbnail.actions;
|
||||
|
||||
import com.intellij.openapi.actionSystem.ActionUpdateThread;
|
||||
import com.intellij.openapi.actionSystem.AnAction;
|
||||
import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import org.intellij.images.thumbnail.ThumbnailView;
|
||||
import org.intellij.images.thumbnail.actionSystem.ThumbnailViewActionUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Level up to browse images.
|
||||
*
|
||||
* @author <a href="mailto:aefimov.box@gmail.com">Alexey Efimov</a>
|
||||
*/
|
||||
public final class UpFolderAction extends AnAction {
|
||||
@Override
|
||||
public void actionPerformed(@NotNull AnActionEvent e) {
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
if (view != null) {
|
||||
VirtualFile root = view.getRoot();
|
||||
if (root != null) {
|
||||
VirtualFile parent = root.getParent();
|
||||
if (parent != null) {
|
||||
view.setRoot(parent);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(@NotNull AnActionEvent e) {
|
||||
if (ThumbnailViewActionUtil.setEnabled(e)) {
|
||||
ThumbnailView view = ThumbnailViewActionUtil.getVisibleThumbnailView(e);
|
||||
VirtualFile root = view.getRoot();
|
||||
e.getPresentation().setEnabled(root != null && root.getParent() != null && !view.isRecursive());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull ActionUpdateThread getActionUpdateThread() {
|
||||
return ActionUpdateThread.EDT;
|
||||
}
|
||||
}
|
||||
@@ -173,7 +173,6 @@
|
||||
<action id="GuiDesigner.EditGroup"/>
|
||||
<action id="HighlightUsagesInFile"/> <!-- TODO -->
|
||||
<action id="IDEtalk.Rename"/>
|
||||
<action id="Images.Thumbnails.ToggleRecursive"/>
|
||||
<action id="ImplementMethods"/>
|
||||
<action id="IncrementalSearch">
|
||||
<keyboard-shortcut first-keystroke="meta J"/>
|
||||
|
||||
@@ -200,7 +200,6 @@
|
||||
<keyboard-shortcut first-keystroke="shift control F7"/>
|
||||
</action>
|
||||
<action id="IDEtalk.Rename"/>
|
||||
<action id="Images.Thumbnails.ToggleRecursive"/>
|
||||
<action id="ImplementMethods">
|
||||
<keyboard-shortcut first-keystroke="shift alt P"/>
|
||||
</action>
|
||||
|
||||
Reference in New Issue
Block a user