Refactoring: moving more GUI logic to each controller class
-Adding a handler for SSDP -CoderClient giving control to each controller to be able to show itself on the main stage
This commit is contained in:
parent
02efc6c22f
commit
09d15b4a80
12 changed files with 244 additions and 243 deletions
|
|
@ -6,6 +6,7 @@ import java.util.ResourceBundle;
|
|||
import java.util.logging.Logger;
|
||||
|
||||
import com.coder.server.message.CoderMessage;
|
||||
import com.coder.server.message.ProjectCreateReqMsg;
|
||||
import com.coder.server.message.ProjectTypeReqMsg;
|
||||
import com.coder.server.message.ProjectTypeRspMsg;
|
||||
import com.coder.server.message.SupportedProperties;
|
||||
|
|
@ -25,6 +26,7 @@ import zutil.log.LogUtil;
|
|||
|
||||
import com.coder.client.CoderClient;
|
||||
import com.coder.client.gui.GuiWindow;
|
||||
import com.coder.client.project.ProjectListener;
|
||||
import com.coder.client.session.ProjectTypeRspMsgListener;
|
||||
|
||||
public class NewProjectDialog extends GuiWindow {
|
||||
|
|
@ -40,11 +42,12 @@ public class NewProjectDialog extends GuiWindow {
|
|||
|
||||
private ObservableList<String> projectTypeList = null;
|
||||
|
||||
public NewProjectDialog(CoderClient client) throws IOException {
|
||||
public NewProjectDialog(final CoderClient client) throws IOException {
|
||||
super(NewProjectDialog.class.getResource("NewProjectDialog.fxml"));
|
||||
projectTypeList = FXCollections.observableArrayList();
|
||||
projectTypeComboBox.setItems(projectTypeList);
|
||||
this.client = client;
|
||||
|
||||
client.getSessionHandler().addMessageListener(new ProjectTypeRspMsgListener() {
|
||||
@Override
|
||||
public void messageReceived(final ProjectTypeRspMsg msg) {
|
||||
|
|
@ -55,10 +58,31 @@ public class NewProjectDialog extends GuiWindow {
|
|||
}
|
||||
}
|
||||
});
|
||||
|
||||
client.getProjectHandler().addprojectListener(new ProjectListener() {
|
||||
@Override
|
||||
public void selectProject() {
|
||||
|
||||
}
|
||||
@Override
|
||||
public void openProjectFailed(String errorMsg) {
|
||||
|
||||
}
|
||||
@Override
|
||||
public void openProject(String projectName) {
|
||||
|
||||
}
|
||||
@Override
|
||||
public void createNewProject() {
|
||||
setErrorMessage("");
|
||||
logger.fine("new project requested, will show the new project dialog on the main stage");
|
||||
client.showOnStage(NewProjectDialog.this);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void willShow() {
|
||||
public void willShow() {
|
||||
clearProjectTypeList();
|
||||
sendProjectTypeReqMsg();
|
||||
|
||||
|
|
@ -93,7 +117,13 @@ public class NewProjectDialog extends GuiWindow {
|
|||
return;
|
||||
}
|
||||
|
||||
client.getProjectHandler().triggerCreateNewProject(projectNameTextField.getText(), projectTypeComboBox.getValue(), projectDescriptionTextField.getText());
|
||||
CoderMessage msg = new CoderMessage();
|
||||
msg.ProjectCreateReq = new ProjectCreateReqMsg();
|
||||
msg.ProjectCreateReq.name = projectNameTextField.getText();
|
||||
msg.ProjectCreateReq.type = projectTypeComboBox.getValue();
|
||||
msg.ProjectCreateReq.description = projectDescriptionTextField.getText();
|
||||
client.getSessionHandler().sendMessage(msg);
|
||||
|
||||
}
|
||||
|
||||
@FXML
|
||||
|
|
@ -129,7 +159,7 @@ public class NewProjectDialog extends GuiWindow {
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getTitle() {
|
||||
public String getTitle() {
|
||||
return "New Project";
|
||||
}
|
||||
|
||||
|
|
@ -147,7 +177,7 @@ public class NewProjectDialog extends GuiWindow {
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getDescriptiveName() {
|
||||
public String getDescriptiveName() {
|
||||
return "New Project Dialog";
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue