no message
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
package _VisualDVM.Visual.Menus.ProjectMenuBar;
|
||||
import _VisualDVM.Visual.Menus.VisualiserMenu;
|
||||
public class FilesOperationsMenu extends VisualiserMenu {
|
||||
public FilesOperationsMenu() {
|
||||
super("Массовые операции над файлами","/icons/MassFiles.png" );
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package _VisualDVM.Visual.Menus.ProjectMenuBar;
|
||||
import Common.Visual.Controls.MenuBarButton;
|
||||
import _VisualDVM.Visual.Menus.VisualiserMenuBar;
|
||||
import _VisualDVM.Visual.UI;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
public class ProjectMenuBar extends VisualiserMenuBar {
|
||||
public ProjectViewMenu projectViewMenu;
|
||||
public ProjectMenuBar() {
|
||||
addMenus(projectViewMenu = new ProjectViewMenu());
|
||||
add(new JSeparator());
|
||||
addMenus(
|
||||
new ProjectSettingsMenu()
|
||||
);
|
||||
add(new MenuBarButton() {
|
||||
{
|
||||
setToolTipText("Профили");
|
||||
setIcon("/icons/Profiles.png");
|
||||
addActionListener(e -> {
|
||||
UI.ShowProfilesWindow();
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
public ProjectViewMenu getProjectViewMenu() {
|
||||
return projectViewMenu;
|
||||
}
|
||||
@Override
|
||||
public void setSizeLimits() {
|
||||
setPreferredSize(new Dimension(0, 32));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package _VisualDVM.Visual.Menus.ProjectMenuBar;
|
||||
import Common.Utils.CommonUtils;
|
||||
import _VisualDVM.Current;
|
||||
import _VisualDVM.Visual.Menus.LanguagesSubmenu;
|
||||
import _VisualDVM.Visual.Menus.SettingsSubmenu;
|
||||
import _VisualDVM.Visual.Menus.StylesSubmenu;
|
||||
import _VisualDVM.Visual.Menus.VisualiserMenu;
|
||||
import GlobalData.GlobalDatabase;
|
||||
import GlobalData.Settings.SettingName;
|
||||
import ProjectData.Files.LanguageStyle;
|
||||
import ProjectData.LanguageName;
|
||||
|
||||
import javax.swing.*;
|
||||
public class ProjectSettingsMenu extends VisualiserMenu {
|
||||
JMenu mLanguage;
|
||||
JMenu mStyle;
|
||||
public ProjectSettingsMenu() {
|
||||
super("Настройки проекта", "/icons/Settings.png");
|
||||
add(mLanguage = new LanguagesSubmenu() {
|
||||
@Override
|
||||
public void action(LanguageName languageName) {
|
||||
if (Current.getProject().UpdateLanguage(languageName)) {
|
||||
Current.getSapfor().ResetAllAnalyses();
|
||||
ShowLanguage();
|
||||
}
|
||||
}
|
||||
});
|
||||
ShowLanguage();
|
||||
//--
|
||||
add(mStyle = new StylesSubmenu() {
|
||||
@Override
|
||||
public void action(LanguageStyle languageStyle) {
|
||||
if (Current.getProject().UpdateStyle(languageStyle))
|
||||
ShowStyle();
|
||||
}
|
||||
});
|
||||
ShowStyle();
|
||||
addSeparator();
|
||||
add(new SettingsSubmenu("Анализ", null,
|
||||
SettingName.Precompilation,
|
||||
SettingName.STATIC_SHADOW_ANALYSIS,
|
||||
SettingName.KEEP_DVM_DIRECTIVES,
|
||||
SettingName.IGNORE_IO_SAPFOR,
|
||||
SettingName.MPI_PROGRAM,
|
||||
SettingName.ANALYSIS_OPTIONS
|
||||
));
|
||||
addSeparator();
|
||||
add(new SettingsSubmenu("Построение системы интервалов", null,
|
||||
SettingName.KEEP_LOOPS_CLOSE_NESTING,
|
||||
SettingName.KEEP_GCOV
|
||||
));
|
||||
addSeparator();
|
||||
add(new SettingsSubmenu("Построение версий", null,
|
||||
SettingName.FREE_FORM,
|
||||
SettingName.KEEP_SPF_DIRECTIVES,
|
||||
SettingName.KEEP_SPF_DIRECTIVES_AMONG_TRANSFORMATIONS,
|
||||
SettingName.OUTPUT_UPPER,
|
||||
SettingName.MAX_SHADOW_WIDTH,
|
||||
SettingName.DVMConvertationOptions,
|
||||
SettingName.SaveModifications
|
||||
));
|
||||
addSeparator();
|
||||
add(((GlobalDatabase)CommonUtils.db).settings.get(SettingName.TRANSLATE_MESSAGES).getMenuItem());
|
||||
add(((GlobalDatabase)CommonUtils.db).settings.get(SettingName.DEBUG_PRINT_ON).getMenuItem());
|
||||
add(((GlobalDatabase)CommonUtils.db).settings.get(SettingName.GCOVLimit).getMenuItem());
|
||||
}
|
||||
public void ShowLanguage() {
|
||||
mLanguage.setText("Язык: " + Current.getProject().languageName.getDescription());
|
||||
}
|
||||
public void ShowStyle() {
|
||||
mStyle.setText("Стиль: " + Current.getProject().style.getDescription());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package _VisualDVM.Visual.Menus.ProjectMenuBar;
|
||||
import Common.CurrentAnchestor;
|
||||
import Common.Utils.CommonUtils;
|
||||
import Common.Visual.CommonUI;
|
||||
import _VisualDVM.Current;
|
||||
import _VisualDVM.Visual.Menus.VisualiserMenu;
|
||||
import Common.Visual.Fonts.VisualiserFonts;
|
||||
import _VisualDVM.Visual.UI;
|
||||
import ProjectData.ProjectView;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.util.LinkedHashMap;
|
||||
public class ProjectViewMenu extends VisualiserMenu {
|
||||
LinkedHashMap<ProjectView, JMenuItem> views;
|
||||
public ProjectViewMenu() {
|
||||
super("", "");
|
||||
views = new LinkedHashMap<>();
|
||||
for (ProjectView view : ProjectView.values()) {
|
||||
JMenuItem m = new JMenuItem(view.getDescription()) {
|
||||
{
|
||||
setIcon(CommonUtils.getIcon(view.getIcon()));
|
||||
setFont(CommonUI.getTheme().Fonts.get(VisualiserFonts.TreeItalic));
|
||||
addActionListener(e -> {
|
||||
CurrentAnchestor.set(Current.ProjectView, view);
|
||||
UI.getMainWindow().getProjectWindow().ShowProjectView();
|
||||
});
|
||||
}
|
||||
};
|
||||
add(m);
|
||||
views.put(view, m);
|
||||
}
|
||||
}
|
||||
public void SelectView(ProjectView view){
|
||||
views.get(view).doClick();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user