apps/experiments/ConferenceScheduleApp/src/main/java/com/javafx/experiments/scheduleapp/pages/CatalogPage.java

Print this page
rev 9240 : 8076423: JEP 253: Prepare JavaFX UI Controls & CSS APIs for Modularization


 173     private final Popover popover;
 174 
 175     /**
 176      * Creats a new catalog filterPopoverPage.
 177      *
 178      * @param dataService    The dataservice to use.
 179      */
 180     public CatalogPage(final Popover popover, final DataService dataService) {
 181         super("Content Catalog", dataService);
 182         this.popover = popover;
 183         sessionFilterPopover.getStyleClass().add("session-popover");
 184         sessionFilterPopover.setPrefWidth(440);
 185         // set pick on bounds to false as we don't want to capture mouse events
 186         // that are meant for the top tabs even though those tabs are in our bounds
 187         // because of the filter button
 188         setPickOnBounds(false);
 189         // create list
 190         list = new ListView<Row>(){
 191             {
 192                 getStyleClass().setAll("twitter-list-view");
 193                 skinClassNameProperty().set("com.sun.javafx.scene.control.skin.ListViewSkin");
 194                 setCellFactory(CatalogPage.this);
 195             }
 196         };
 197 
 198         if (IS_BEAGLE) {
 199             new TouchClickedEventAvoider(list);
 200         }
 201 
 202         // create filter button
 203         this.filterPopoverPage = new SearchFilterPopoverPage(dataService, this);
 204         sessionFilterButton = new Button();
 205         sessionFilterButton.setId("session-filter-button");
 206         sessionFilterButton.getStyleClass().clear();
 207         sessionFilterButton.setPrefSize(69, 31);
 208         sessionFilterButton.setOnMouseClicked(new EventHandler<MouseEvent>() {
 209             @Override public void handle(MouseEvent e) {
 210                 if (sessionFilterPopover.isVisible()) {
 211                     sessionFilterPopover.hide();
 212                 } else {
 213                     sessionFilterPopover.pushPage(filterPopoverPage);




 173     private final Popover popover;
 174 
 175     /**
 176      * Creats a new catalog filterPopoverPage.
 177      *
 178      * @param dataService    The dataservice to use.
 179      */
 180     public CatalogPage(final Popover popover, final DataService dataService) {
 181         super("Content Catalog", dataService);
 182         this.popover = popover;
 183         sessionFilterPopover.getStyleClass().add("session-popover");
 184         sessionFilterPopover.setPrefWidth(440);
 185         // set pick on bounds to false as we don't want to capture mouse events
 186         // that are meant for the top tabs even though those tabs are in our bounds
 187         // because of the filter button
 188         setPickOnBounds(false);
 189         // create list
 190         list = new ListView<Row>(){
 191             {
 192                 getStyleClass().setAll("twitter-list-view");
 193                 skinClassNameProperty().set("javafx.scene.control.skin.ListViewSkin");
 194                 setCellFactory(CatalogPage.this);
 195             }
 196         };
 197 
 198         if (IS_BEAGLE) {
 199             new TouchClickedEventAvoider(list);
 200         }
 201 
 202         // create filter button
 203         this.filterPopoverPage = new SearchFilterPopoverPage(dataService, this);
 204         sessionFilterButton = new Button();
 205         sessionFilterButton.setId("session-filter-button");
 206         sessionFilterButton.getStyleClass().clear();
 207         sessionFilterButton.setPrefSize(69, 31);
 208         sessionFilterButton.setOnMouseClicked(new EventHandler<MouseEvent>() {
 209             @Override public void handle(MouseEvent e) {
 210                 if (sessionFilterPopover.isVisible()) {
 211                     sessionFilterPopover.hide();
 212                 } else {
 213                     sessionFilterPopover.pushPage(filterPopoverPage);