2024-10-07 00:58:29 +03:00
|
|
|
package Common_old.UI.Menus_2023.MainMenuBar;
|
|
|
|
|
import _VisualDVM.Global;
|
|
|
|
|
import Common_old.UI.Menus.VisualiserMenuItem;
|
|
|
|
|
import Common_old.UI.Menus_2023.VisualiserMenu;
|
2023-09-17 22:13:42 +03:00
|
|
|
import GlobalData.DBLastProject.DBLastProject;
|
|
|
|
|
import GlobalData.Settings.SettingName;
|
2023-11-19 02:12:44 +03:00
|
|
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
|
|
|
|
import Visual_DVM_2021.Passes.Pass_2021;
|
2023-09-17 22:13:42 +03:00
|
|
|
|
|
|
|
|
import javax.swing.*;
|
|
|
|
|
import javax.swing.event.MenuEvent;
|
|
|
|
|
import javax.swing.event.MenuListener;
|
|
|
|
|
import java.awt.event.ActionEvent;
|
|
|
|
|
import java.io.File;
|
|
|
|
|
import java.util.Vector;
|
|
|
|
|
public class LastOpenedProjectsMenu extends VisualiserMenu {
|
|
|
|
|
public LastOpenedProjectsMenu() {
|
|
|
|
|
super("Недавние проекты", "/icons/LastOpened.png");
|
|
|
|
|
addMenuListener(new MenuListener() {
|
|
|
|
|
@Override
|
|
|
|
|
public void menuSelected(MenuEvent e) {
|
|
|
|
|
removeAll();
|
|
|
|
|
Vector<DBLastProject> projects = Global.db.lastProjects.getOrdered();
|
|
|
|
|
int k = 1;
|
|
|
|
|
for (DBLastProject p : projects) {
|
|
|
|
|
if (new File(p.HomePath).exists() && p.lastOpened != 0) {
|
|
|
|
|
VisualiserMenuItem i = new VisualiserMenuItem(p.HomePath);
|
|
|
|
|
i.addActionListener(new AbstractAction() {
|
|
|
|
|
@Override
|
|
|
|
|
public void actionPerformed(ActionEvent e) {
|
|
|
|
|
Pass_2021.passes.get(PassCode_2021.OpenCurrentProject).Do(new File(p.HomePath));
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
add(i);
|
|
|
|
|
++k;
|
|
|
|
|
if (k > (Global.db.settings.get(SettingName.LastOpenedProjectsCount).toInt32())) break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
public void menuDeselected(MenuEvent e) {
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
public void menuCanceled(MenuEvent e) {
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|