< prev index next >

application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/column/ColumnManager.java

Print this page




 338                         if (c.isVisible() && c.getColumn().getColumnDrawer() != null) {
 339                                 // Custom drawer found, ensure the the listener is added
 340                                 for (Listener l : viewer.getControl().getListeners(SWT.EraseItem)) {
 341                                         if (l == customDrawer) {
 342                                                 return;
 343                                         }
 344                                 }
 345                                 viewer.getControl().addListener(SWT.EraseItem, customDrawer);
 346                                 return;
 347                         }
 348                 }
 349 
 350                 // No custom drawer found, ensure the the listener is not added
 351                 viewer.getControl().removeListener(SWT.EraseItem, customDrawer);
 352         }
 353 
 354         public ColumnViewer getViewer() {
 355                 return viewer;
 356         }
 357 
 358         void setColumnHidden(String columnId, boolean hidden) {
 359                 updateColumnOrder();
 360                 ColumnEntry columnEntry = getColumnEntry(columnId);
 361                 columnEntry.hidden = hidden;
 362                 if (hidden) {
 363                         columnEntry.doHide();
 364                         updateEraseItemListener();
 365                 } else {
 366                         createColumnUi(columnEntry);
 367                         updateEraseItemListener();
 368                         getViewer().refresh(); // Need to populate the added column
 369                 }
 370                 getViewer().getControl().getParent().layout();
 371         }
 372 
 373         private void createColumnUi(ColumnEntry columnEntry) {
 374                 Item columnWidget = columnEntry.create(viewer, countVisibleColumnsBefore(columnEntry));
 375                 columnWidget.addListener(SWT.Selection, e -> changeOrFlipSortColumn(columnEntry));
 376         }
 377 
 378         private int countVisibleColumnsBefore(ColumnEntry columnEntry) {




 338                         if (c.isVisible() && c.getColumn().getColumnDrawer() != null) {
 339                                 // Custom drawer found, ensure the the listener is added
 340                                 for (Listener l : viewer.getControl().getListeners(SWT.EraseItem)) {
 341                                         if (l == customDrawer) {
 342                                                 return;
 343                                         }
 344                                 }
 345                                 viewer.getControl().addListener(SWT.EraseItem, customDrawer);
 346                                 return;
 347                         }
 348                 }
 349 
 350                 // No custom drawer found, ensure the the listener is not added
 351                 viewer.getControl().removeListener(SWT.EraseItem, customDrawer);
 352         }
 353 
 354         public ColumnViewer getViewer() {
 355                 return viewer;
 356         }
 357 
 358         public void setColumnHidden(String columnId, boolean hidden) {
 359                 updateColumnOrder();
 360                 ColumnEntry columnEntry = getColumnEntry(columnId);
 361                 columnEntry.hidden = hidden;
 362                 if (hidden) {
 363                         columnEntry.doHide();
 364                         updateEraseItemListener();
 365                 } else {
 366                         createColumnUi(columnEntry);
 367                         updateEraseItemListener();
 368                         getViewer().refresh(); // Need to populate the added column
 369                 }
 370                 getViewer().getControl().getParent().layout();
 371         }
 372 
 373         private void createColumnUi(ColumnEntry columnEntry) {
 374                 Item columnWidget = columnEntry.create(viewer, countVisibleColumnsBefore(columnEntry));
 375                 columnWidget.addListener(SWT.Selection, e -> changeOrFlipSortColumn(columnEntry));
 376         }
 377 
 378         private int countVisibleColumnsBefore(ColumnEntry columnEntry) {


< prev index next >