Skip to content
Snippets Groups Projects
Commit 7e4a11d6 authored by tobias's avatar tobias
Browse files

Menus for Edit Modes (Implement Lock)

parent f8010e2a
Branches
Tags
No related merge requests found
Showing
with 72 additions and 16 deletions
...@@ -15,8 +15,11 @@ main.menuitem.recentFiles=Zuletzt verwendete Projekte ...@@ -15,8 +15,11 @@ main.menuitem.recentFiles=Zuletzt verwendete Projekte
main.menuitem.profile=Profile verwalten... main.menuitem.profile=Profile verwalten...
main.menuitem.print=Drucken... main.menuitem.print=Drucken...
main.menuitem.onTop=Fenster im Vordergrund main.menuitem.onTop=Fenster im Vordergrund
main.menuitem.plugins=Erweiterungen... main.menuitem.play=Wiedergabe
main.menuitem.drag=Drag and Drop
main.menuitem.color=Frben
main.menuitem.errors=Fehlerbericht anzeigen... main.menuitem.errors=Fehlerbericht anzeigen...
main.menuitem.plugins=Erweiterungen...
main.menuitem.projectSettings=Projekteinstellungen... main.menuitem.projectSettings=Projekteinstellungen...
main.menuitem.profileSettings=Profileinstellungen... main.menuitem.profileSettings=Profileinstellungen...
main.menuitem.globalSettings=Globale Einstellungen... main.menuitem.globalSettings=Globale Einstellungen...
......
...@@ -39,6 +39,22 @@ ...@@ -39,6 +39,22 @@
</Menu> </Menu>
<Menu mnemonicParsing="false" text="%main.menu.option"> <Menu mnemonicParsing="false" text="%main.menu.option">
<items> <items>
<MenuItem fx:id="playMenu" mnemonicParsing="false" onAction="#playMenuHandler" text="%main.menuitem.play">
<accelerator>
<KeyCodeCombination alt="UP" code="L" control="UP" meta="UP" shift="UP" shortcut="DOWN" />
</accelerator>
</MenuItem>
<MenuItem fx:id="dragMenu" mnemonicParsing="false" onAction="#dragMenuHandler" text="%main.menuitem.drag">
<accelerator>
<KeyCodeCombination alt="UP" code="M" control="UP" meta="UP" shift="UP" shortcut="DOWN" />
</accelerator>
</MenuItem>
<MenuItem fx:id="colorMenu" mnemonicParsing="false" onAction="#colorMenuHandler" text="%main.menuitem.color">
<accelerator>
<KeyCodeCombination alt="UP" code="K" control="UP" meta="UP" shift="UP" shortcut="DOWN" />
</accelerator>
</MenuItem>
<SeparatorMenuItem mnemonicParsing="false" />
<MenuItem fx:id="errorMenu" mnemonicParsing="false" onAction="#errorMenuHandler" text="%main.menuitem.errors"> <MenuItem fx:id="errorMenu" mnemonicParsing="false" onAction="#errorMenuHandler" text="%main.menuitem.errors">
<accelerator> <accelerator>
<KeyCodeCombination alt="UP" code="E" control="UP" meta="UP" shift="UP" shortcut="DOWN" /> <KeyCodeCombination alt="UP" code="E" control="UP" meta="UP" shift="UP" shortcut="DOWN" />
......
...@@ -6,7 +6,12 @@ ...@@ -6,7 +6,12 @@
<Key id="save_proj" name="main.menuitem.save" key="S" ctrl="true" alt="false" meta="false" shift="false"/> <Key id="save_proj" name="main.menuitem.save" key="S" ctrl="true" alt="false" meta="false" shift="false"/>
<Key id="print_proj" name="main.menuitem.print" key="P" ctrl="true" alt="false" meta="false" shift="false"/> <Key id="print_proj" name="main.menuitem.print" key="P" ctrl="true" alt="false" meta="false" shift="false"/>
<Key id="play" name="main.menuitem.play" key="E" ctrl="true" alt="false" meta="false" shift="false"/>
<Key id="drag" name="main.menuitem.drag" key="E" ctrl="true" alt="false" meta="false" shift="false"/>
<Key id="color" name="main.menuitem.color" key="E" ctrl="true" alt="false" meta="false" shift="false"/>
<Key id="errors" name="main.menuitem.errors" key="E" ctrl="true" alt="false" meta="false" shift="false"/> <Key id="errors" name="main.menuitem.errors" key="E" ctrl="true" alt="false" meta="false" shift="false"/>
<Key id="plugins" name="main.menuitem.plugins"/> <Key id="plugins" name="main.menuitem.plugins"/>
<Key id="project_settings" name="main.menuitem.projectSettings" key="Comma" ctrl="true" alt="true" meta="false" shift="false"/> <Key id="project_settings" name="main.menuitem.projectSettings" key="Comma" ctrl="true" alt="true" meta="false" shift="false"/>
<Key id="profile_settings" name="main.menuitem.profileSettings" key="Comma" ctrl="true" alt="false" meta="false" shift="false"/> <Key id="profile_settings" name="main.menuitem.profileSettings" key="Comma" ctrl="true" alt="false" meta="false" shift="false"/>
......
...@@ -2,8 +2,8 @@ package de.tobias.playpad.design.modern; ...@@ -2,8 +2,8 @@ package de.tobias.playpad.design.modern;
import de.tobias.playpad.Strings; import de.tobias.playpad.Strings;
import de.tobias.playpad.design.CartDesign; import de.tobias.playpad.design.CartDesign;
import de.tobias.playpad.design.GlobalDesign;
import de.tobias.playpad.design.DesignConnect; import de.tobias.playpad.design.DesignConnect;
import de.tobias.playpad.design.GlobalDesign;
import de.tobias.playpad.viewcontroller.CartDesignViewController; import de.tobias.playpad.viewcontroller.CartDesignViewController;
import de.tobias.playpad.viewcontroller.GlobalDesignViewController; import de.tobias.playpad.viewcontroller.GlobalDesignViewController;
import de.tobias.playpad.viewcontroller.design.ModernCartDesignViewController; import de.tobias.playpad.viewcontroller.design.ModernCartDesignViewController;
......
...@@ -10,11 +10,11 @@ import org.dom4j.Element; ...@@ -10,11 +10,11 @@ import org.dom4j.Element;
import de.tobias.playpad.DisplayableColor; import de.tobias.playpad.DisplayableColor;
import de.tobias.playpad.PseudoClasses; import de.tobias.playpad.PseudoClasses;
import de.tobias.playpad.design.CartDesign; import de.tobias.playpad.design.CartDesign;
import de.tobias.playpad.design.ColorModeHandler;
import de.tobias.playpad.design.Design; import de.tobias.playpad.design.Design;
import de.tobias.playpad.design.DesignColorAssociator; import de.tobias.playpad.design.DesignColorAssociator;
import de.tobias.playpad.design.FadeableColor; import de.tobias.playpad.design.FadeableColor;
import de.tobias.playpad.design.GlobalDesign; import de.tobias.playpad.design.GlobalDesign;
import de.tobias.playpad.design.ColorModeHandler;
import de.tobias.playpad.pad.Pad; import de.tobias.playpad.pad.Pad;
import de.tobias.playpad.pad.PadSettings; import de.tobias.playpad.pad.PadSettings;
import de.tobias.playpad.pad.conntent.play.Durationable; import de.tobias.playpad.pad.conntent.play.Durationable;
......
...@@ -110,6 +110,7 @@ public class DesktopButtonEditView extends HBox implements EventHandler<ActionEv ...@@ -110,6 +110,7 @@ public class DesktopButtonEditView extends HBox implements EventHandler<ActionEv
Project project = page.getProjectReference(); Project project = page.getProjectReference();
project.removePage(page); project.removePage(page);
controller.initPageButtons(); controller.initPageButtons();
controller.highlightPageButton(0); // Show first page
} }
} }
......
...@@ -5,6 +5,7 @@ import java.util.Stack; ...@@ -5,6 +5,7 @@ import java.util.Stack;
import de.tobias.playpad.Strings; import de.tobias.playpad.Strings;
import de.tobias.playpad.layout.desktop.pad.DesktopPadView; import de.tobias.playpad.layout.desktop.pad.DesktopPadView;
import de.tobias.playpad.pad.view.IPadView; import de.tobias.playpad.pad.view.IPadView;
import de.tobias.playpad.settings.Profile;
import de.tobias.playpad.view.main.MainLayoutConnect; import de.tobias.playpad.view.main.MainLayoutConnect;
import de.tobias.playpad.viewcontroller.main.IMainViewController; import de.tobias.playpad.viewcontroller.main.IMainViewController;
import de.tobias.playpad.viewcontroller.main.MenuToolbarViewController; import de.tobias.playpad.viewcontroller.main.MenuToolbarViewController;
...@@ -73,6 +74,9 @@ public class DesktopMainLayoutConnect implements MainLayoutConnect { ...@@ -73,6 +74,9 @@ public class DesktopMainLayoutConnect implements MainLayoutConnect {
} }
public void setEditMode(DesktopEditMode editMode) { public void setEditMode(DesktopEditMode editMode) {
if (editMode != DesktopEditMode.PLAY && Profile.currentProfile().getProfileSettings().isLocked()) {
return;
}
this.editMode.set(editMode); this.editMode.set(editMode);
} }
......
...@@ -94,6 +94,10 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro ...@@ -94,6 +94,10 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro
@FXML protected MenuItem profileMenu; @FXML protected MenuItem profileMenu;
@FXML protected MenuItem printProjectMenuItem; @FXML protected MenuItem printProjectMenuItem;
@FXML protected MenuItem playMenu;
@FXML protected MenuItem dragMenu;
@FXML protected MenuItem colorMenu;
@FXML protected MenuItem errorMenu; @FXML protected MenuItem errorMenu;
@FXML protected MenuItem pluginMenu; @FXML protected MenuItem pluginMenu;
...@@ -154,6 +158,7 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro ...@@ -154,6 +158,7 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro
helpMenu.getItems().add(new HelpMenuItem(helpMenu)); helpMenu.getItems().add(new HelpMenuItem(helpMenu));
// Edit Mode Buttons // Edit Mode Buttons
// TODO MenuItems for Buttons -> KeyCodes
editButtons = new SegmentedButton(); editButtons = new SegmentedButton();
playButton = new ToggleButton("", new FontIcon(FontAwesomeType.PLAY)); playButton = new ToggleButton("", new FontIcon(FontAwesomeType.PLAY));
playButton.setFocusTraversable(false); playButton.setFocusTraversable(false);
...@@ -209,12 +214,12 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro ...@@ -209,12 +214,12 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro
if (newValue == DesktopEditMode.PLAY) { if (newValue == DesktopEditMode.PLAY) {
playButton.setSelected(true); playButton.setSelected(true);
} else if (newValue == DesktopEditMode.DRAG) { } else if (newValue == DesktopEditMode.DRAG) {
// TODO Live Mode Check
dragButton.setSelected(true); dragButton.setSelected(true);
for (IPadView view : mainViewController.getPadViews()) { for (IPadView view : mainViewController.getPadViews()) {
view.enableDragAndDropDesignMode(true); view.enableDragAndDropDesignMode(true);
} }
iconHbox.getChildren().add(0, addPageButton); iconHbox.getChildren().add(0, addPageButton);
System.out.println(iconHbox.getChildren());
} else if (newValue == DesktopEditMode.COLOR) { } else if (newValue == DesktopEditMode.COLOR) {
colorButton.setSelected(true); colorButton.setSelected(true);
...@@ -304,6 +309,10 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro ...@@ -304,6 +309,10 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro
setKeyBindingForMenu(saveProjectMenuItem, keys.getKey("save_proj")); setKeyBindingForMenu(saveProjectMenuItem, keys.getKey("save_proj"));
setKeyBindingForMenu(printProjectMenuItem, keys.getKey("print_proj")); setKeyBindingForMenu(printProjectMenuItem, keys.getKey("print_proj"));
setKeyBindingForMenu(playMenu, keys.getKey("play"));
setKeyBindingForMenu(dragMenu, keys.getKey("drag"));
setKeyBindingForMenu(colorMenu, keys.getKey("color"));
setKeyBindingForMenu(errorMenu, keys.getKey("errors")); setKeyBindingForMenu(errorMenu, keys.getKey("errors"));
setKeyBindingForMenu(pluginMenu, keys.getKey("plugins")); setKeyBindingForMenu(pluginMenu, keys.getKey("plugins"));
setKeyBindingForMenu(projectSettingsMenuItem, keys.getKey("project_settings")); setKeyBindingForMenu(projectSettingsMenuItem, keys.getKey("project_settings"));
...@@ -319,6 +328,10 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro ...@@ -319,6 +328,10 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro
saveProjectMenuItem.setDisable(false); saveProjectMenuItem.setDisable(false);
printProjectMenuItem.setDisable(false); printProjectMenuItem.setDisable(false);
playMenu.setDisable(false);
dragMenu.setDisable(false);
colorMenu.setDisable(false);
errorMenu.setDisable(false); errorMenu.setDisable(false);
pluginMenu.setDisable(false); pluginMenu.setDisable(false);
projectSettingsMenuItem.setDisable(false); projectSettingsMenuItem.setDisable(false);
...@@ -332,7 +345,7 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro ...@@ -332,7 +345,7 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro
@Override @Override
public void setLocked(boolean looked) { public void setLocked(boolean looked) {
// TODO Lock Edit Buttons connect.setEditMode(DesktopEditMode.PLAY);
} }
@Override @Override
...@@ -375,6 +388,10 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro ...@@ -375,6 +388,10 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro
saveProjectMenuItem.setDisable(true); saveProjectMenuItem.setDisable(true);
printProjectMenuItem.setDisable(true); printProjectMenuItem.setDisable(true);
playMenu.setDisable(true);
dragMenu.setDisable(true);
colorMenu.setDisable(true);
errorMenu.setDisable(true); errorMenu.setDisable(true);
pluginMenu.setDisable(true); pluginMenu.setDisable(true);
projectSettingsMenuItem.setDisable(true); projectSettingsMenuItem.setDisable(true);
...@@ -407,7 +424,7 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro ...@@ -407,7 +424,7 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro
} }
} }
if (pageHBox.getChildren().size() > index) { if (index < pageHBox.getChildren().size()) {
Node newNode = pageHBox.getChildren().get(index); Node newNode = pageHBox.getChildren().get(index);
newNode.getStyleClass().add(CURRENT_PAGE_BUTTON); newNode.getStyleClass().add(CURRENT_PAGE_BUTTON);
currentSelectedPageButton = index; currentSelectedPageButton = index;
...@@ -502,6 +519,21 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro ...@@ -502,6 +519,21 @@ public class DesktopMenuToolbarViewController extends BasicMenuToolbarViewContro
dialog.getStage().show(); dialog.getStage().show();
} }
@FXML
void playMenuHandler(ActionEvent event) {
connect.setEditMode(DesktopEditMode.PLAY);
}
@FXML
void dragMenuHandler(ActionEvent event) {
connect.setEditMode(DesktopEditMode.DRAG);
}
@FXML
void colorMenuHandler(ActionEvent event) {
connect.setEditMode(DesktopEditMode.COLOR);
}
@FXML @FXML
void errorMenuHandler(ActionEvent event) { void errorMenuHandler(ActionEvent event) {
ErrorSummaryDialog.getInstance().getStage().show(); ErrorSummaryDialog.getInstance().getStage().show();
......
...@@ -8,8 +8,6 @@ import java.nio.file.Path; ...@@ -8,8 +8,6 @@ import java.nio.file.Path;
import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.configuration.file.YamlConfiguration;
import de.tobias.playpad.update.Updatable;
import de.tobias.playpad.update.UpdateChannel;
import de.tobias.utils.application.App; import de.tobias.utils.application.App;
import de.tobias.utils.application.ApplicationUtils; import de.tobias.utils.application.ApplicationUtils;
import de.tobias.utils.util.SystemUtils; import de.tobias.utils.util.SystemUtils;
......
...@@ -11,8 +11,8 @@ import com.hp.gagawa.java.elements.Tr; ...@@ -11,8 +11,8 @@ import com.hp.gagawa.java.elements.Tr;
import de.tobias.playpad.PlayPadMain; import de.tobias.playpad.PlayPadMain;
import de.tobias.playpad.Strings; import de.tobias.playpad.Strings;
import de.tobias.playpad.pad.Pad; import de.tobias.playpad.pad.Pad;
import de.tobias.playpad.project.ProjectSettings;
import de.tobias.playpad.project.Project; import de.tobias.playpad.project.Project;
import de.tobias.playpad.project.ProjectSettings;
import de.tobias.playpad.project.page.PadIndex; import de.tobias.playpad.project.page.PadIndex;
import de.tobias.playpad.settings.Profile; import de.tobias.playpad.settings.Profile;
import de.tobias.utils.application.ApplicationUtils; import de.tobias.utils.application.ApplicationUtils;
......
...@@ -9,8 +9,8 @@ import org.dom4j.DocumentException; ...@@ -9,8 +9,8 @@ import org.dom4j.DocumentException;
import de.tobias.playpad.PlayPadMain; import de.tobias.playpad.PlayPadMain;
import de.tobias.playpad.Strings; import de.tobias.playpad.Strings;
import de.tobias.playpad.project.ProjectImporter;
import de.tobias.playpad.project.Project; import de.tobias.playpad.project.Project;
import de.tobias.playpad.project.ProjectImporter;
import de.tobias.playpad.project.ref.ProjectReference; import de.tobias.playpad.project.ref.ProjectReference;
import de.tobias.playpad.settings.Profile; import de.tobias.playpad.settings.Profile;
import de.tobias.playpad.settings.ProfileReference; import de.tobias.playpad.settings.ProfileReference;
......
...@@ -7,12 +7,12 @@ import org.controlsfx.control.TaskProgressView; ...@@ -7,12 +7,12 @@ import org.controlsfx.control.TaskProgressView;
import de.tobias.playpad.PlayPadMain; import de.tobias.playpad.PlayPadMain;
import de.tobias.playpad.Strings; import de.tobias.playpad.Strings;
import de.tobias.playpad.project.ProjectSettings;
import de.tobias.playpad.project.Project; import de.tobias.playpad.project.Project;
import de.tobias.playpad.project.ProjectSettings;
import de.tobias.playpad.settings.Profile; import de.tobias.playpad.settings.Profile;
import de.tobias.playpad.viewcontroller.main.IMainViewController; import de.tobias.playpad.viewcontroller.main.IMainViewController;
import de.tobias.playpad.viewcontroller.option.IProjectSettingsViewController;
import de.tobias.playpad.viewcontroller.option.IProjectReloadTask; import de.tobias.playpad.viewcontroller.option.IProjectReloadTask;
import de.tobias.playpad.viewcontroller.option.IProjectSettingsViewController;
import de.tobias.playpad.viewcontroller.option.ProjectSettingsTabViewController; import de.tobias.playpad.viewcontroller.option.ProjectSettingsTabViewController;
import de.tobias.utils.ui.ViewController; import de.tobias.utils.ui.ViewController;
import de.tobias.utils.util.Localization; import de.tobias.utils.util.Localization;
......
...@@ -300,15 +300,12 @@ public class Project { ...@@ -300,15 +300,12 @@ public class Project {
} }
public void removePage(Page page) { public void removePage(Page page) {
System.out.println(page.getId());
pages.remove(page.getId()); pages.remove(page.getId());
// Neue Interne Indies für die Pages // Neue Interne Indies für die Pages
for (int i = page.getId(); i < pages.size(); i++) { for (int i = page.getId(); i < pages.size(); i++) {
Page tempPage = pages.get(i); Page tempPage = pages.get(i);
tempPage.setId(i); tempPage.setId(i);
} }
System.out.println(pages);
} }
public void addPage() { public void addPage() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment