no message

This commit is contained in:
2025-03-13 00:32:20 +03:00
parent 91e40c4393
commit 1d97048de1
204 changed files with 984 additions and 889 deletions

View File

@@ -1,155 +0,0 @@
package _VisualDVM.Visual.Editor;
import Common.MainModule_;
import Common.Utils.Utils_;
import Common.Visual.Menus.StyledPopupMenu;
import Common.Visual.Menus.TextEditorMenu;
import Common.Visual.Themes.ThemeElement;
import Common.Visual.UI;
import Common.Visual.Windows.Dialog.DialogFields;
import _VisualDVM.Visual.Syntax.SPFEditorTheme;
import org.fife.ui.rsyntaxtextarea.RSyntaxTextArea;
import javax.swing.event.HyperlinkEvent;
import javax.swing.event.HyperlinkListener;
import java.awt.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.net.URI;
public class BaseEditor extends RSyntaxTextArea implements ThemeElement, DialogFields {
private final StyledPopupMenu menu;
// protected int changesCount = 0;
// protected int insertsCount = 0;
// protected int removesCount = 0;
// protected boolean ctrlZ = false;
protected String startText = "";
private boolean search_enabled = true;
public BaseEditor() {
setTabSize(6);
setPaintTabLines(true);
setCodeFoldingEnabled(true);
addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
if (e.isControlDown()) {
switch (e.getKeyCode()) {
case KeyEvent.VK_ADD: //num lock +
case KeyEvent.VK_EQUALS: //+
FontUp();
break;
case KeyEvent.VK_SUBTRACT: //num lock -
case KeyEvent.VK_MINUS: //-
FontDown();
break;
case KeyEvent.VK_S:
saveText();
break;
//todo переход в нужную строку по ctrl+g?
case KeyEvent.VK_Z:
if (getText().equals(startText)) {
UI.Info("Начальная версия текста достигнута.");
e.consume();
}
break;
}
}
}
});
setPopupMenu(menu = createMenu());
applyTheme();
//-
this.setHyperlinksEnabled(true);
HyperlinkListener listener = new HyperlinkListener() {
@Override
public void hyperlinkUpdate(HyperlinkEvent event) {
if (event.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
try {
Desktop.getDesktop().browse(new URI(event.getURL().toString()));
} catch (Exception ioe) {
System.err.println("Error loading url from link: " + ioe);
}
}
}
};
this.addHyperlinkListener(listener);
}
@Override
public void setText(String t) {
super.setText(t);
startText = t;
}
public void setSearchEnabled(boolean f_in) {
search_enabled = f_in;
}
protected StyledPopupMenu createMenu() {
return new TextEditorMenu(this);
}
private void changeFont(int size) {
if ((size > 1) && (size < 48)) {
setFont(getFont().deriveFont((float) size));
saveFont();
}
}
protected void saveFont() {
}
protected void saveText() {
}
public void ClearSelection() {
setSelectionStart(0);
setSelectionEnd(0);
}
public void gotoLine(int LineNum) {
gotoLine_(LineNum - 1);
}
//без вычитания.
public void gotoLine_(int LineNum) {
//requestFocus();
try {
//особеннсть контрола.
//нельзя полностью скинуть текущую позицию. пэтому если надо
//освежить 0 строку, передергиваем до последней.
if (LineNum == 0)
setCaretPosition(getLineStartOffset(getLineCount() - 1));
ClearSelection();
if (LineNum > 0) {
setCaretPosition(getLineStartOffset(LineNum));
setSelectionStart(getLineStartOffset(LineNum));
setSelectionEnd(getLineStartOffset(LineNum));
}
} catch (Exception ex) {
Utils_.MainLog.Print("Не удалось перейти на строку " + LineNum);
Utils_.MainLog.PrintException(ex);
}
}
//------------------------------------------
public void FontUp() {
changeFont(getFont().getSize() + 1);
}
public void FontDown() {
changeFont(getFont().getSize() - 1);
}
@Override
public void applyTheme() {
float font_size = (float) getFont().getSize();
((SPFEditorTheme) MainModule_.instance.getUI().getTheme()).getEditorTheme().apply(this);
setFont(getFont().deriveFont(font_size));
menu.applyTheme();
//меню связано с редактором. поэтому тема меняется только вместе с ним.
}
@Override
public Component getContent() {
return this;
}
public void ShowBegin() {
setCaretPosition(0);
}
public boolean lineIsVisible(int lineNum) {
boolean res = false;
Rectangle rectangle = this.getVisibleRect();
try {
res = rectangle.contains(rectangle.x, yForLine(lineNum));
} catch (Exception ex) {
ex.printStackTrace();
}
return res;
}
}

View File

@@ -1,8 +0,0 @@
package _VisualDVM.Visual.Editor;
public class Viewer extends BaseEditor {
public Viewer() {
setLineWrap(true);
setWrapStyleWord(true);
setEditable(false);
}
}

View File

@@ -1,5 +1,4 @@
package _VisualDVM.Visual.Interface;
import _VisualDVM.ComponentsServer.UserAccount.AccountRole;
public interface MainWindow {
void Show();
void ShowProject();

View File

@@ -100,7 +100,7 @@ public class MainUI extends UIModule_ {
return profilesWindow;
}
//---
void showUndefinedRights(){
void showUndefinedRights() {
Global.mainModule.SetUserPassesAccess();
getMainWindow().ShowUndefinedTabs();
getTestingMenuBar().showServerAdminLabel(false);
@@ -111,8 +111,9 @@ public class MainUI extends UIModule_ {
Global.normalProperties.setControlVisible("AddDefaultsToRunEnvironments", false);
Global.normalProperties.AutoCheckTesting = false;
Global.normalProperties.Update();
};
void showUserRights(){
}
;
void showUserRights() {
Global.mainModule.SetUserPassesAccess();
getMainWindow().ShowUserTabs();
getTestingMenuBar().showServerAdminLabel(false);
@@ -123,8 +124,9 @@ public class MainUI extends UIModule_ {
Global.normalProperties.setControlVisible("AddDefaultsToRunEnvironments", false);
Global.normalProperties.AutoCheckTesting = false;
Global.normalProperties.Update();
};
void showDeveloperRights(){
}
;
void showDeveloperRights() {
Global.mainModule.SetDeveloperPassesAccess();
getMainWindow().ShowDeveloperTabs();
getTestingMenuBar().showServerAdminLabel(false);
@@ -134,7 +136,7 @@ public class MainUI extends UIModule_ {
Global.normalProperties.setControlVisible("AddDefaultsToCompilationOptions", true);
Global.normalProperties.setControlVisible("AddDefaultsToRunEnvironments", true);
}
void showAdminRights(){
void showAdminRights() {
Global.mainModule.SetAdminPassesAccess();
getMainWindow().ShowAdminTabs();
getTestingMenuBar().showServerAdminLabel(true);
@@ -143,8 +145,9 @@ public class MainUI extends UIModule_ {
Global.normalProperties.setControlVisible("AutoTestsLoad", true);
Global.normalProperties.setControlVisible("AddDefaultsToCompilationOptions", true);
Global.normalProperties.setControlVisible("AddDefaultsToRunEnvironments", true);
};
public void ShowAccount(){
}
;
public void ShowAccount() {
getMainWindow().getCallbackWindow().ShowAccountInfo();
switch (Global.mainModule.getAccount().role) {
case Undefined:

View File

@@ -17,12 +17,18 @@ import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class MainMenuBar extends VisualiserMenuBar {
JMenu analyses;
JMenu transformations;
MenuBarButton componentsButton;
public MenuBarButton MachineButton;
public MenuBarButton UserButton;
public MenuBarButton CompilerButton;
JMenu analyses;
JMenu transformations;
MenuBarButton componentsButton;
ActionListener credentialsListener = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Global.mainModule.getUI().getMainWindow().FocusCredentials();
}
};
public MainMenuBar() {
addMenus(new LastOpenedProjectsMenu());
addPasses(PassCode.OpenCurrentProject, PassCode.CreateEmptyProject);
@@ -100,12 +106,6 @@ public class MainMenuBar extends VisualiserMenuBar {
CompilerButton.addActionListener(credentialsListener);
ShowProject(false);
}
ActionListener credentialsListener= new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Global.mainModule.getUI().getMainWindow().FocusCredentials();
}
};
public void ShowUpdatesIcon() {
componentsButton.setIcon(Global.components.getButtonIconPath());
}

View File

@@ -11,6 +11,6 @@ public class VersionsComparisonMenu extends PropertiesSubmenu {
"FortranWrapsOn",
"ExtensionsOn",
"ComparsionDiffMergeOn"
);
);
}
}

View File

@@ -17,11 +17,10 @@ public class VisualiserSettingsMenu extends VisualiserMenu {
if (Utils_.isWindows()) {
add(new PropertiesSubmenu("Компиляция на локальной машине", null,
Global.normalProperties,
"LocalMakePathWindows",
"Kernels"
));
}else {
} else {
add(new PropertiesSubmenu("Компиляция на локальной машине", null,
Global.normalProperties,
"Kernels"

View File

@@ -35,7 +35,7 @@ public class ProjectSettingsMenu extends VisualiserMenu {
addSeparator();
add(new PropertiesSubmenu("Анализ", null,
Global.mainModule.getProject().sapforProperties,
"Precompilation",
"Precompilation",
"KEEP_DVM_DIRECTIVES",
"IGNORE_IO_SAPFOR",
"MPI_PROGRAM",
@@ -59,9 +59,9 @@ public class ProjectSettingsMenu extends VisualiserMenu {
"SaveModifications"
));
addSeparator();
add( Global.mainModule.getProject().sapforProperties.getMenuItem("TRANSLATE_MESSAGES"));
add( Global.mainModule.getProject().sapforProperties.getMenuItem("DEBUG_PRINT_ON"));
add( Global.mainModule.getProject().sapforProperties.getMenuItem("GCOVLimit"));
add(Global.mainModule.getProject().sapforProperties.getMenuItem("TRANSLATE_MESSAGES"));
add(Global.mainModule.getProject().sapforProperties.getMenuItem("DEBUG_PRINT_ON"));
add(Global.mainModule.getProject().sapforProperties.getMenuItem("GCOVLimit"));
}
public void ShowLanguage() {
mLanguage.setText("Язык: " + Global.mainModule.getProject().languageName.getDescription());

View File

@@ -0,0 +1,19 @@
package _VisualDVM.Visual;
import Common.Database.Objects.riDBObject;
import Common.Database.Tables.DataSet;
import Common.Utils.TextLog;
import Common.Visual.DataSetControlForm;
import _VisualDVM.Global;
import javax.swing.*;
public abstract class RDataSetControlForm<D extends riDBObject> extends DataSetControlForm<D> {
public RDataSetControlForm(DataSet<?, D> dataSource_in, JPanel mountPanel_in) {
super(dataSource_in, mountPanel_in);
}
@Override
public boolean canModifyCurrent(TextLog Log) {
return super.canModifyCurrent(Log) && (
!(current instanceof riDBObject) ||
Global.mainModule.getAccount().CheckAuthorship(((riDBObject) current).sender_address, Log));
}
}

View File

@@ -1,7 +1,6 @@
package _VisualDVM.Visual.Tables;
import Common.MainModule_;
import Common.Utils.Utils_;
import Common.Visual.StatusEnum;
import Common.Visual.Tables.RendererCell;
import _VisualDVM.TestingSystem.Common.TasksPackageState;
import _VisualDVM.TestingSystem.Common.TestingPackage.TestingPackage;
@@ -18,9 +17,9 @@ public class RendererTestingPackageStatus extends RendererCell<TestingPackage> {
TasksPackageState state = value.state;
setFont(MainModule_.instance.getUI().getTheme().Fonts.get(state.getFont()));
String text_ = state.getDescription();
switch (state){
switch (state) {
case DoneWithErrors:
text_+=" "+ Utils_.Brackets((value.tasksCount-value.doneTasksCount)+"/"+value.tasksCount);
text_ += " " + Utils_.Brackets((value.tasksCount - value.doneTasksCount) + "/" + value.tasksCount);
break;
default:
break;

View File

@@ -5,20 +5,20 @@ import _VisualDVM.Visual.Interface.AdministrationWindow;
import javax.swing.*;
public class AdministrationForm implements FormWithSplitters, AdministrationWindow {
private JPanel content;
public JSplitPane SC67;
private JPanel content;
private JPanel userAccountsPanel;
private JPanel workspacesPanel;
@Override
public JPanel getContent() {
return content;
}
public AdministrationForm(){
public AdministrationForm() {
LoadSplitters();
Global.componentsServer.credentials_db.userAccounts.mountUI(userAccountsPanel);
Global.componentsServer.credentials_db.workspaces.mountUI(workspacesPanel);
}
@Override
public JPanel getContent() {
return content;
}
@Override
public void ShowAll() {
Global.componentsServer.credentials_db.userAccounts.ShowUI();
}

View File

@@ -1,5 +1,7 @@
package _VisualDVM.Visual.Windows;
import Common.Utils.Utils_;
import Common.Visual.Editor.BaseEditor;
import Common.Visual.Editor.Viewer;
import Common.Visual.FormWithSplitters;
import Common.Visual.Menus.VisualiserMenuBar;
import Common.Visual.TextField.StyledTextField;
@@ -9,8 +11,6 @@ import _VisualDVM.ComponentsServer.BugReport.BugReportState;
import _VisualDVM.ComponentsServer.BugReport.UI.BugReportsForm;
import _VisualDVM.Global;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.Visual.Editor.BaseEditor;
import _VisualDVM.Visual.Editor.Viewer;
import _VisualDVM.Visual.Interface.CallbackWindow;
import _VisualDVM.Visual.Interface.CommentInterface;
import _VisualDVM.Visual.Interface.DescriptionInterface;
@@ -364,7 +364,7 @@ public class CallbackForm implements FormWithSplitters, CallbackWindow {
accountPanel.add(SC10);
}
@Override
public void showNoBugReports(){
public void showNoBugReports() {
UI.Clear(accountPanel);
accountPanel.add(new CallbackWelcomeForm().content);
adminLabel.setVisible(false);

View File

@@ -4,11 +4,11 @@ import Common.Database.Objects.DBObject;
import Common.Passes.Pass;
import Common.Utils.Utils_;
import Common.Visual.Controls.ShortLabel;
import Common.Visual.Editor.BaseEditor;
import Common.Visual.Menus.VisualiserMenuBar;
import Common.Visual.UI;
import _VisualDVM.ProjectData.Files.UI.Editor.SPFEditor;
import _VisualDVM.Utils;
import _VisualDVM.Visual.Editor.BaseEditor;
import javafx.util.Pair;
import org.fife.ui.rsyntaxtextarea.RSyntaxTextAreaHighlighter;
import org.fife.ui.rtextarea.RTextScrollPane;

View File

@@ -4,14 +4,14 @@ import _VisualDVM.Global;
import _VisualDVM.Visual.Interface.CredentialsWindow;
import javax.swing.*;
public class CredentialsForm implements CredentialsWindow,FormWithSplitters {
public class CredentialsForm implements CredentialsWindow, FormWithSplitters {
public JSplitPane SC18;
public JSplitPane SC19;
private JPanel content;
private JPanel compilersPanel;
private JPanel machinesPanel;
private JPanel usersPanel;
public JSplitPane SC18;
public JSplitPane SC19;
public CredentialsForm(){
public CredentialsForm() {
LoadSplitters();
Global.mainModule.getDb().machines.mountUI(machinesPanel);
Global.mainModule.getDb().users.mountUI(usersPanel);

View File

@@ -1,5 +1,6 @@
package _VisualDVM.Visual.Windows;
import Common.CommonConstants;
import Common.Visual.Editor.Viewer;
import Common.Visual.FormWithSplitters;
import Common.Visual.Tables.DataTable;
import Common.Visual.Trees.TreeForm;
@@ -12,7 +13,6 @@ import _VisualDVM.ProjectData.LanguageName;
import _VisualDVM.ProjectData.SapforData.Arrays.UI.FileArraysTree;
import _VisualDVM.ProjectData.SapforData.Functions.UI.FileFunctionsTree;
import _VisualDVM.ProjectData.SapforData.Loops.UI.FileLoopsTree;
import _VisualDVM.Visual.Editor.Viewer;
import _VisualDVM.Visual.Interface.FileWindow;
import _VisualDVM.Visual.Interface.SPFEditorInterface;
import _VisualDVM.Visual.Menus.FileMenuBar.FileMenuBar;
@@ -172,29 +172,29 @@ public class FileForm implements FileWindow, FormWithSplitters {
}
@Override
public void ShowErrorsCount() {
messagesTabs.setTitleAt(2, (Global.normalProperties.ShowFullTabsNames ? "Ошибки: " : "") + file.father.db.errors.getUI().getRowCount());
messagesTabs.setTitleAt(2, (Global.normalProperties.ShowFullTabsNames ? "Ошибки: " : "") + file.father.db.errors.getUI().getRowCount());
}
@Override
public void ShowNotesCount() {
messagesTabs.setTitleAt(0, (Global.normalProperties.ShowFullTabsNames ? "Примечания: " : "") + file.father.db.notes.getUI().getRowCount());
messagesTabs.setTitleAt(0, (Global.normalProperties.ShowFullTabsNames ? "Примечания: " : "") + file.father.db.notes.getUI().getRowCount());
}
@Override
public void ShowRecommendationsCount() {
messagesTabs.setTitleAt(3, (Global.normalProperties.ShowFullTabsNames ? "Рекомендации: " : "") + file.father.db.recommendations.getUI().getRowCount());
messagesTabs.setTitleAt(3, (Global.normalProperties.ShowFullTabsNames ? "Рекомендации: " : "") + file.father.db.recommendations.getUI().getRowCount());
}
//---
@Override
public void RefreshTabsNames() {
UI.ShowTabsNames(graphsTabs, Global.normalProperties.ShowFullTabsNames );
UI.ShowTabsNames(graphsTabs, Global.normalProperties.ShowFullTabsNames);
//--
ShowNotesCount();
ShowWarningsCount();
ShowErrorsCount();
ShowRecommendationsCount();
//--
messagesTabs.setTitleAt(4, (Global.normalProperties.ShowFullTabsNames ? "Компиляция" : ""));
messagesTabs.setTitleAt(5, (Global.normalProperties.ShowFullTabsNames ? "Запуск" : ""));
messagesTabs.setTitleAt(6, (Global.normalProperties.ShowFullTabsNames ? "Журнал GCOV" : ""));
messagesTabs.setTitleAt(4, (Global.normalProperties.ShowFullTabsNames ? "Компиляция" : ""));
messagesTabs.setTitleAt(5, (Global.normalProperties.ShowFullTabsNames ? "Запуск" : ""));
messagesTabs.setTitleAt(6, (Global.normalProperties.ShowFullTabsNames ? "Журнал GCOV" : ""));
}
@Override
public void FocusCompilationOut() {
@@ -229,10 +229,10 @@ public class FileForm implements FileWindow, FormWithSplitters {
file.father.db.warnings.ClearUI();
file.father.db.errors.ClearUI();
file.father.db.recommendations.ClearUI();
messagesTabs.setTitleAt(0, (Global.normalProperties.ShowFullTabsNames ? "Примечания: " : "") + "-");
messagesTabs.setTitleAt(1, (Global.normalProperties.ShowFullTabsNames ? "Предупреждения: " : "") + "-");
messagesTabs.setTitleAt(2, (Global.normalProperties.ShowFullTabsNames ? "Ошибки: " : "") + "-");
messagesTabs.setTitleAt(3, (Global.normalProperties.ShowFullTabsNames ? "Рекомендации: " : "") + "-");
messagesTabs.setTitleAt(0, (Global.normalProperties.ShowFullTabsNames ? "Примечания: " : "") + "-");
messagesTabs.setTitleAt(1, (Global.normalProperties.ShowFullTabsNames ? "Предупреждения: " : "") + "-");
messagesTabs.setTitleAt(2, (Global.normalProperties.ShowFullTabsNames ? "Ошибки: " : "") + "-");
messagesTabs.setTitleAt(3, (Global.normalProperties.ShowFullTabsNames ? "Рекомендации: " : "") + "-");
}
@Override
public void ShowLoops() {

View File

@@ -258,13 +258,12 @@ public class MainForm extends Form implements MainWindow {
}
@Override
public AdministrationWindow getAdministrationWindow() {
if (administrationForm==null)
administrationForm= new AdministrationForm();
if (administrationForm == null)
administrationForm = new AdministrationForm();
return administrationForm;
}
@Override
public void ShowUndefinedTabs()
{
public void ShowUndefinedTabs() {
//ничего не делаем. лишних панелей и так нет. экспорт
}
@Override

View File

@@ -1,26 +0,0 @@
package _VisualDVM.Visual.Windows;
import Common.Visual.Windows.Dialog.Text.TextDialog;
import _VisualDVM.Visual.Editor.BaseEditor;
public class MultilineTextForm extends TextDialog<BaseEditor> {
public MultilineTextForm() {
super(BaseEditor.class);
}
//при наследовании по умолчанию поля не присваивать!
//инициализация полей работает после конструктора предка!!
@Override
public void ProcessResult() {
Result = fields.getText();
}
@Override
public void InitFields() {
fields.setSearchEnabled(false);
fields.setLineWrap(true);
fields.setWrapStyleWord(true);
fields.setHighlightCurrentLine(false);
}
@Override
public void setText(String text_in) {
fields.setText(text_in);
fields.setCaretPosition(0);
}
}

View File

@@ -2,6 +2,7 @@ package _VisualDVM.Visual.Windows;
import Common.MainModule_;
import Common.Utils.Utils_;
import Common.Visual.Controls.TabToolBar;
import Common.Visual.Editor.Viewer;
import Common.Visual.FormWithSplitters;
import Common.Visual.Trees.TreeForm;
import Common.Visual.UI;
@@ -13,7 +14,6 @@ import _VisualDVM.ProjectData.ProjectView;
import _VisualDVM.ProjectData.SapforData.Functions.UI.InlineTree;
import _VisualDVM.ProjectData.SapforData.Functions.UI.InlineTree2;
import _VisualDVM.ProjectData.SapforData.Includes.UI.IncludesTree;
import _VisualDVM.Visual.Editor.Viewer;
import _VisualDVM.Visual.Interface.AnalysisWindow;
import _VisualDVM.Visual.Interface.ArraysWindow;
import _VisualDVM.Visual.Interface.FunctionsWindow;

View File

@@ -1,12 +0,0 @@
package _VisualDVM.Visual.Windows;
public class ReadOnlyMultilineTextForm extends MultilineTextForm {
public ReadOnlyMultilineTextForm() {
}
@Override
public void InitFields() {
fields.setEditable(false);
}
@Override
public void CreateButtons() {
}
}

View File

@@ -1,5 +1,6 @@
package _VisualDVM.Visual.Windows;
import Common.MainModule_;
import Common.Visual.Editor.BaseEditor;
import Common.Visual.FormWithSplitters;
import Common.Visual.TextField.StyledTextField;
import _VisualDVM.Current;
@@ -10,7 +11,6 @@ import _VisualDVM.TestingSystem.Common.TestingServer;
import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackage;
import _VisualDVM.TestingSystem.DVM.DVMTasks.DVMRunTask;
import _VisualDVM.TestingSystem.SAPFOR.SapforPackage.SapforPackage;
import _VisualDVM.Visual.Editor.BaseEditor;
import _VisualDVM.Visual.Interface.TestingWindow;
import javax.swing.*;