package gui.helper; import org.eclipse.jface.viewers.ColumnLabelProvider; import org.eclipse.jface.viewers.TableViewer; import org.eclipse.jface.viewers.TableViewerColumn; import org.eclipse.swt.SWT; import org.openslx.bwlp.dozmod.thrift.MetaDataCache; import org.openslx.bwlp.thrift.iface.ImageSummaryRead; import org.openslx.bwlp.thrift.iface.OperatingSystem; import org.openslx.bwlp.thrift.iface.UserInfo; public final class VMColumns { private VMColumns(){}; private static void createColumn(TableViewer table, String colName, int width, ColumnLabelProvider provider){ TableViewerColumn col = new TableViewerColumn(table, SWT.NONE); col.getColumn().setWidth(width); col.getColumn().setText(colName); col.setLabelProvider(provider); } /** * create the columns for the table in the VM mainwindow * @param table the tableViewer */ public static void createVMTableColumns(TableViewer table){ createColumn(table, "Name", 150, new ColumnLabelProvider() { @Override public String getText(Object element) { ImageSummaryRead image = (ImageSummaryRead) element; return image.getImageName(); } }); createColumn(table, "OS", 90, new ColumnLabelProvider() { @Override public String getText(Object element) { // TODO remove and uncomment when deploying ImageSummaryRead image = (ImageSummaryRead) element; //OperatingSystem os = MetaDataCache.getOsById(image.getOsId()); OperatingSystem os = null ; if (os == null) { return "Unknown"; } else { return os.getOsName(); } } }); createColumn(table, "Verantwortlicher", 130, new ColumnLabelProvider() { @Override public String getText(Object element) { ImageSummaryRead image = (ImageSummaryRead) element; return image.getOwnerId(); } }); createColumn(table, "Letztes Update", 110, new ColumnLabelProvider() { @Override public String getText(Object element) { ImageSummaryRead image = (ImageSummaryRead) element; return String.valueOf(image.getUpdateTime()); } }); createColumn(table, "Größe", 80, new ColumnLabelProvider() { @Override public String getText(Object element) { ImageSummaryRead image = (ImageSummaryRead) element; return String.valueOf(image.getFileSize()); } }); }; }