Add Generic ListViewFactory
This commit is contained in:
@ -34,9 +34,9 @@ import envoy.client.net.WriteProxy;
|
||||
import envoy.client.ui.IconUtil;
|
||||
import envoy.client.ui.Restorable;
|
||||
import envoy.client.ui.SceneContext;
|
||||
import envoy.client.ui.listcell.ChatListCellFactory;
|
||||
import envoy.client.ui.listcell.ChatControl;
|
||||
import envoy.client.ui.listcell.ListCellFactory;
|
||||
import envoy.client.ui.listcell.MessageControl;
|
||||
import envoy.client.ui.listcell.MessageListCellFactory;
|
||||
import envoy.data.*;
|
||||
import envoy.data.Attachment.AttachmentType;
|
||||
import envoy.event.*;
|
||||
@ -124,8 +124,8 @@ public final class ChatScene implements Restorable {
|
||||
private void initialize() {
|
||||
|
||||
// Initialize message and user rendering
|
||||
messageList.setCellFactory(MessageListCellFactory::new);
|
||||
chatList.setCellFactory(ChatListCellFactory::new);
|
||||
messageList.setCellFactory(new ListCellFactory<>(MessageControl::new));
|
||||
chatList.setCellFactory(new ListCellFactory<>(ChatControl::new));
|
||||
|
||||
settingsButton.setGraphic(new ImageView(IconUtil.loadIconThemeSensitive("settings", DEFAULT_ICON_SIZE)));
|
||||
voiceButton.setGraphic(new ImageView(IconUtil.loadIconThemeSensitive("microphone", DEFAULT_ICON_SIZE)));
|
||||
|
@ -14,7 +14,8 @@ import envoy.client.data.LocalDB;
|
||||
import envoy.client.event.SendEvent;
|
||||
import envoy.client.ui.ClearableTextField;
|
||||
import envoy.client.ui.SceneContext;
|
||||
import envoy.client.ui.listcell.ContactListCellFactory;
|
||||
import envoy.client.ui.listcell.ContactControl;
|
||||
import envoy.client.ui.listcell.ListCellFactory;
|
||||
import envoy.data.User;
|
||||
import envoy.event.ElementOperation;
|
||||
import envoy.event.EventBus;
|
||||
@ -67,7 +68,7 @@ public class ContactSearchScene {
|
||||
|
||||
@FXML
|
||||
private void initialize() {
|
||||
userList.setCellFactory(new ContactListCellFactory<>());
|
||||
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()); }));
|
||||
|
@ -14,7 +14,8 @@ import envoy.client.data.LocalDB;
|
||||
import envoy.client.event.SendEvent;
|
||||
import envoy.client.ui.ClearableTextField;
|
||||
import envoy.client.ui.SceneContext;
|
||||
import envoy.client.ui.listcell.ContactListCellFactory;
|
||||
import envoy.client.ui.listcell.ContactControl;
|
||||
import envoy.client.ui.listcell.ListCellFactory;
|
||||
import envoy.data.User;
|
||||
import envoy.event.EventBus;
|
||||
import envoy.event.GroupCreation;
|
||||
@ -53,7 +54,7 @@ public class GroupCreationScene {
|
||||
|
||||
@FXML
|
||||
private void initialize() {
|
||||
userList.setCellFactory(new ContactListCellFactory<>());
|
||||
userList.setCellFactory(new ListCellFactory<>(ContactControl::new));
|
||||
userList.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
|
||||
groupNameField.setClearButtonListener(e -> { groupNameField.getTextField().clear(); createButton.setDisable(true); });
|
||||
}
|
||||
|
Reference in New Issue
Block a user