Move SceneInfo to separate file
This commit is contained in:
parent
cd7793a589
commit
0ce8b0c89d
@ -6,7 +6,7 @@ import envoy.data.User.UserStatus;
|
||||
|
||||
import envoy.client.data.Context;
|
||||
import envoy.client.helper.ShutdownHelper;
|
||||
import envoy.client.ui.SceneContext.SceneInfo;
|
||||
import envoy.client.ui.SceneInfo;
|
||||
import envoy.client.util.UserUtil;
|
||||
|
||||
/**
|
||||
|
@ -4,7 +4,7 @@ import java.util.*;
|
||||
|
||||
import javafx.scene.input.KeyCombination;
|
||||
|
||||
import envoy.client.ui.SceneContext.SceneInfo;
|
||||
import envoy.client.ui.SceneInfo;
|
||||
|
||||
/**
|
||||
* Contains all keyboard shortcuts used throughout the application.
|
||||
|
@ -28,45 +28,6 @@ import envoy.client.event.*;
|
||||
*/
|
||||
public final class SceneContext implements EventListener {
|
||||
|
||||
/**
|
||||
* Contains information about different scenes and their FXML resource files.
|
||||
*
|
||||
* @author Kai S. K. Engelbart
|
||||
* @since Envoy Client v0.1-beta
|
||||
*/
|
||||
public enum SceneInfo {
|
||||
|
||||
/**
|
||||
* The main scene in which the chat screen is displayed.
|
||||
*
|
||||
* @since Envoy Client v0.1-beta
|
||||
*/
|
||||
CHAT_SCENE("/fxml/ChatScene.fxml"),
|
||||
|
||||
/**
|
||||
* The scene in which the settings screen is displayed.
|
||||
*
|
||||
* @since Envoy Client v0.1-beta
|
||||
*/
|
||||
SETTINGS_SCENE("/fxml/SettingsScene.fxml"),
|
||||
|
||||
/**
|
||||
* The scene in which the login screen is displayed.
|
||||
*
|
||||
* @since Envoy Client v0.1-beta
|
||||
*/
|
||||
LOGIN_SCENE("/fxml/LoginScene.fxml");
|
||||
|
||||
/**
|
||||
* The path to the FXML resource.
|
||||
*/
|
||||
public final String path;
|
||||
|
||||
SceneInfo(String path) {
|
||||
this.path = path;
|
||||
}
|
||||
}
|
||||
|
||||
private final Stage stage;
|
||||
private final FXMLLoader loader = new FXMLLoader();
|
||||
private final Stack<Scene> sceneStack = new Stack<>();
|
||||
|
40
client/src/main/java/envoy/client/ui/SceneInfo.java
Normal file
40
client/src/main/java/envoy/client/ui/SceneInfo.java
Normal file
@ -0,0 +1,40 @@
|
||||
package envoy.client.ui;
|
||||
|
||||
/**
|
||||
* Contains information about different scenes and their FXML resource files.
|
||||
*
|
||||
* @author Kai S. K. Engelbart
|
||||
* @since Envoy Client v0.1-beta
|
||||
*/
|
||||
public enum SceneInfo {
|
||||
|
||||
/**
|
||||
* The main scene in which the chat screen is displayed.
|
||||
*
|
||||
* @since Envoy Client v0.1-beta
|
||||
*/
|
||||
CHAT_SCENE("/fxml/ChatScene.fxml"),
|
||||
|
||||
/**
|
||||
* The scene in which the settings screen is displayed.
|
||||
*
|
||||
* @since Envoy Client v0.1-beta
|
||||
*/
|
||||
SETTINGS_SCENE("/fxml/SettingsScene.fxml"),
|
||||
|
||||
/**
|
||||
* The scene in which the login screen is displayed.
|
||||
*
|
||||
* @since Envoy Client v0.1-beta
|
||||
*/
|
||||
LOGIN_SCENE("/fxml/LoginScene.fxml");
|
||||
|
||||
/**
|
||||
* The path to the FXML resource.
|
||||
*/
|
||||
public final String path;
|
||||
|
||||
SceneInfo(String path) {
|
||||
this.path = path;
|
||||
}
|
||||
}
|
@ -20,7 +20,6 @@ import envoy.client.data.*;
|
||||
import envoy.client.data.shortcuts.EnvoyShortcutConfig;
|
||||
import envoy.client.helper.ShutdownHelper;
|
||||
import envoy.client.net.Client;
|
||||
import envoy.client.ui.SceneContext.SceneInfo;
|
||||
import envoy.client.ui.controller.LoginScene;
|
||||
import envoy.client.util.IconUtil;
|
||||
|
||||
@ -226,7 +225,7 @@ public final class Startup extends Application {
|
||||
// Load ChatScene
|
||||
stage.setMinHeight(400);
|
||||
stage.setMinWidth(843);
|
||||
context.getSceneContext().load(SceneContext.SceneInfo.CHAT_SCENE);
|
||||
context.getSceneContext().load(SceneInfo.CHAT_SCENE);
|
||||
stage.centerOnScreen();
|
||||
|
||||
// Exit or minimize the stage when a close request occurs
|
||||
|
@ -15,7 +15,7 @@ import envoy.util.EnvoyLog;
|
||||
import envoy.client.data.Context;
|
||||
import envoy.client.data.commands.*;
|
||||
import envoy.client.helper.ShutdownHelper;
|
||||
import envoy.client.ui.SceneContext.SceneInfo;
|
||||
import envoy.client.ui.SceneInfo;
|
||||
import envoy.client.ui.controller.ChatScene;
|
||||
import envoy.client.util.*;
|
||||
|
||||
@ -32,7 +32,7 @@ public final class ChatSceneCommands {
|
||||
private final SystemCommandBuilder builder =
|
||||
new SystemCommandBuilder(messageTextAreaCommands);
|
||||
|
||||
private static final String messageDependantCommandDescription =
|
||||
private static final String messageDependentCommandDescription =
|
||||
" the given message. Use s/S to use the selected message. Otherwise expects a number relative to the uppermost completely visible message.";
|
||||
|
||||
/**
|
||||
@ -141,7 +141,7 @@ public final class ChatSceneCommands {
|
||||
else
|
||||
useRelativeMessage(command, action, additionalCheck, positionalArgument, false);
|
||||
}).setDefaults("s").setNumberOfArguments(1)
|
||||
.setDescription(description.concat(messageDependantCommandDescription)).build(command);
|
||||
.setDescription(description.concat(messageDependentCommandDescription)).build(command);
|
||||
}
|
||||
|
||||
private void selectionNeighbor(Consumer<Message> action, Predicate<Message> additionalCheck,
|
||||
|
@ -1,5 +1,7 @@
|
||||
package envoy.client.ui.controller;
|
||||
|
||||
import static envoy.client.ui.SceneInfo.SETTINGS_SCENE;
|
||||
|
||||
import java.awt.Toolkit;
|
||||
import java.awt.datatransfer.StringSelection;
|
||||
import java.io.*;
|
||||
@ -32,7 +34,7 @@ import envoy.data.*;
|
||||
import envoy.data.Attachment.AttachmentType;
|
||||
import envoy.data.Message.MessageStatus;
|
||||
import envoy.event.*;
|
||||
import envoy.event.contact.*;
|
||||
import envoy.event.contact.UserOperation;
|
||||
import envoy.exception.EnvoyException;
|
||||
import envoy.util.EnvoyLog;
|
||||
|
||||
@ -445,7 +447,7 @@ public final class ChatScene implements EventListener, Restorable, KeyboardMappi
|
||||
*/
|
||||
@FXML
|
||||
private void settingsButtonClicked() {
|
||||
sceneContext.load(SceneContext.SceneInfo.SETTINGS_SCENE);
|
||||
sceneContext.load(SETTINGS_SCENE);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -16,7 +16,7 @@ import envoy.util.EnvoyLog;
|
||||
import envoy.client.data.Context;
|
||||
import envoy.client.event.*;
|
||||
import envoy.client.helper.*;
|
||||
import envoy.client.ui.SceneContext.SceneInfo;
|
||||
import envoy.client.ui.SceneInfo;
|
||||
import envoy.client.ui.controller.ChatScene;
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user