ContactSearchTab UI finished and reimplemented controller

This commit is contained in:
2020-08-23 12:36:43 +02:00
parent b4397fe2f2
commit d0f125f058
3 changed files with 74 additions and 24 deletions

View File

@ -6,10 +6,8 @@ import java.util.logging.Logger;
import javafx.application.Platform;
import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.control.*;
import javafx.scene.control.Alert.AlertType;
import javafx.scene.control.ButtonType;
import javafx.scene.control.ListView;
import envoy.client.data.LocalDB;
import envoy.client.event.SendEvent;
@ -40,12 +38,13 @@ import envoy.util.EnvoyLog;
* Created: <strong>07.06.2020</strong><br>
*
* @author Leon Hofmeister
* @author Maximilian K&auml;fer
* @since Envoy Client v0.1-beta
*/
public class ContactSearchScene {
public class ContactSearchTab {
@FXML
private ClearableTextField searchBar;
private TextArea searchBar;
@FXML
private ListView<User> userList;
@ -82,7 +81,6 @@ public class ContactSearchScene {
@FXML
private void initialize() {
userList.setCellFactory(new ListCellFactory<>(ContactControl::new));
searchBar.setClearButtonListener(e -> { searchBar.getTextField().clear(); userList.getItems().clear(); });
eventBus.register(UserSearchResult.class,
response -> Platform.runLater(() -> { userList.getItems().clear(); userList.getItems().addAll(response.get()); }));
eventBus.register(ContactOperation.class, handler);
@ -95,7 +93,7 @@ public class ContactSearchScene {
*/
@FXML
private void sendRequest() {
final var text = searchBar.getTextField().getText().strip();
final var text = searchBar.getText().strip();
if (!text.isBlank()) eventBus.dispatch(new SendEvent(new UserSearchRequest(text)));
else userList.getItems().clear();
}
@ -108,7 +106,7 @@ public class ContactSearchScene {
*/
@FXML
private void clear() {
searchBar.getTextField().setText(null);
searchBar.setText(null);
userList.getItems().clear();
}
@ -141,12 +139,12 @@ public class ContactSearchScene {
}
}
@FXML
private void newGroupButtonClicked() {
sceneContext.load(SceneContext.SceneInfo.GROUP_CREATION_SCENE);
sceneContext.<GroupCreationScene>getController().initializeData(sceneContext, localDB);
}
// @FXML
// private void newGroupButtonClicked() {
// sceneContext.load(SceneContext.SceneInfo.GROUP_CREATION_SCENE);
// sceneContext.<GroupCreationScene>getController().initializeData(sceneContext, localDB);
// }
@FXML
private void backButtonClicked() { sceneContext.pop(); }
// @FXML
// private void backButtonClicked() { sceneContext.pop(); }
}