Package org.eclipse.jface.viewers

Examples of org.eclipse.jface.viewers.ColumnWeightData


          pixels += COLUMN_TRIM;
        }
        widths[i]= pixels;
        fixedWidth += pixels;
      } else if (col instanceof ColumnWeightData) {
        ColumnWeightData cw= (ColumnWeightData) col;
        weightIteration[numberOfWeightColumns]= i;
        numberOfWeightColumns++;
        totalWeight += cw.weight;
        minWeightWidth += cw.minimumWidth;
        widths[i]= cw.minimumWidth;
      } else {
        Assert.isTrue(false, "Unknown column layout data"); //$NON-NLS-1$
      }
    }
   

    // Do we have columns that have a weight?
    final int restIncludingMinWidths= width - fixedWidth;
    final int rest= restIncludingMinWidths - minWeightWidth;
    if (numberOfWeightColumns > 0 && rest > 0) {
     
      // Modify the weights to reflect what each column already
      // has due to its minimum. Otherwise, columns with low
      // minimums get discriminated.
      int totalWantedPixels= 0;
      final int[] wantedPixels= new int[numberOfWeightColumns];
      for (int i= 0; i < numberOfWeightColumns; i++) {
        ColumnWeightData cw= (ColumnWeightData) columns.get(weightIteration[i]);
        wantedPixels[i]= totalWeight == 0 ? 0 : cw.weight * restIncludingMinWidths / totalWeight;
        totalWantedPixels+= wantedPixels[i];
      }
     
      // Now distribute the rest to the columns with weight.
View Full Code Here


                        }

                        return null;
                    }
                });
                participantsColLayout.setColumnData(tableColumn, new ColumnWeightData(100));

                table.setHeaderVisible(false);
                table.setLinesVisible(true);

                participantsViewer.setContentProvider(new EncounterBuilderParticipantsViewerContentProvider(this));

                participantsViewer.setInput(this);

                // setup drop target
                Transfer[] types = new Transfer[] { LocalSelectionTransfer.getTransfer() };
                DropTarget target = new DropTarget(table, DND.DROP_COPY);
                target.setTransfer(types);
                target.addDropListener(new DropTargetAdapter() {
                    @Override
                    public void dragEnter(DropTargetEvent event) {
                        logger.debug("drag enter: " + event);
                        event.operations = DND.DROP_COPY;
                        event.feedback = DND.FEEDBACK_INSERT_BEFORE;
                    };

                    @Override
                    public void drop(DropTargetEvent event) {
                        logger.debug("drop: " + event);
                        // A drop has occurred, copy over the data
                        // if(event.data == null) { // no data to copy, indicate failure in event.detail
                        // event.detail = DND.DROP_NONE;
                        // return;
                        // }
                        // label.setText ((String) event.data); // data copied to label text
                    }
                });
            }
        }

        // selection list
        Group selectionGroup = new Group(comp, SWT.NONE);
        selectionGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
        selectionGroup.setLayout(new GridLayout(2, true));
        selectionGroup.setText(Messages.getString("encounter.builder.ui.editor.encounter.selection.group.label"));
        {
            // toolbar
            selectionTools = new ToolBar(selectionGroup, SWT.FLAT);
            selectionTools.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
            selectionToolsManager = new ToolBarManager(selectionTools);

            // selection search box
            selectionSearchText = new Text(selectionGroup, SWT.SINGLE | SWT.BORDER | SWT.SEARCH | SWT.CANCEL);
            selectionSearchText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
            selectionSearchText.addModifyListener(new ModifyListener() {
                public void modifyText(ModifyEvent event) {
                    selectableSearchValue = ((Text)event.widget).getText();

                    selectionViewer.refresh();
                }
            });

            // viewer
            Composite viewerComp = new Composite(selectionGroup, SWT.NONE);
            viewerComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
            TableColumnLayout selectionColLayout = new TableColumnLayout();
            viewerComp.setLayout(selectionColLayout);

            TableViewerColumn viewerColumn;
            TableColumn tableColumn;
            EditingSupport editSupport;

            selectionViewer = new TableViewer(viewerComp, SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER);
            selectionProvider.addSelectionProvider(selectionViewer);

            final Table table = selectionViewer.getTable();

            viewerColumn = new TableViewerColumn(selectionViewer, SWT.LEFT);
            tableColumn = viewerColumn.getColumn();
            tableColumn.setText("");
            tableColumn.setToolTipText(Messages
                    .getString("encounter.builder.ui.editor.encounter.selection.table.column.selection.tooltip"));
            tableColumn.setResizable(false);
            tableColumn.setMoveable(false);
            viewerColumn.setLabelProvider(new ColumnLabelProvider() {
                @Override
                public Image getImage(Object element) {
                    // TODO: check if the template has an icon

                    return DomainObjectImageMapper.getImage(element.getClass());
                }

                @Override
                public String getText(Object element) {
                    if(element instanceof BasicModelObject) {
                        return ((BasicModelObject)element).getLabel();
                    }

                    return null;
                }
            });
            selectionColLayout.setColumnData(tableColumn, new ColumnWeightData(100));

            table.setHeaderVisible(false);
            table.setLinesVisible(true);

            selectionViewer.setContentProvider(new EncounterBuilderSelectionViewerContentProvider(this));
View Full Code Here

        col.setText(Messages.getString("campaign.view.tree.column.name.label"));
        col.setToolTipText(Messages.getString("campaign.view.tree.column.name.tooltip"));
        col.setResizable(true);
        col.setMoveable(false);
//        col.setWidth(200);
        colLayout.setColumnData(col, new ColumnWeightData(50, 200, true));

        col = new TreeColumn(tree, SWT.LEFT);
        col.setText(Messages.getString("campaign.view.tree.column.info.label"));
        col.setToolTipText(Messages.getString("campaign.view.tree.column.info.tooltip"));
        col.setResizable(true);
        col.setMoveable(false);
//        col.setWidth(35);
        colLayout.setColumnData(col, new ColumnWeightData(50, 200, true));

        tree.setHeaderVisible(true);
//        tree.setLinesVisible(true);
//
        campaignViewAdapterFactory = new CampaignViewAdapterFactory();
View Full Code Here

        col.setText(Messages.getString("object.instance.editor.data_list.table.column.name.label"));
        col.setToolTipText(Messages.getString("object.instance.editor.data_list.table.column.name.tooltip"));
        col.setResizable(true);
        col.setMoveable(false);
        col.setWidth(200);
        colLayout.setColumnData(col, new ColumnWeightData(35, 200, true));
        vCol.setEditingSupport(new DefaultObjectDataEditingSupport(dataViewer) {

            /*
             * (non-Javadoc)
             *
             * @see org.eclipse.jface.viewers.EditingSupport#getValue(java.lang.Object)
             */
            @Override
            protected Object getValue(Object obj) {
                if(obj instanceof ObjectData) {
                    return ((ObjectData)obj).getName();
                }

                return null;
            }

            /*
             * (non-Javadoc)
             *
             * @see org.eclipse.jface.viewers.EditingSupport#setValue(java.lang.Object, java.lang.Object)
             */
            @Override
            protected void setValue(Object obj, Object value) {
                if(obj instanceof ObjectData) {
                    ((ObjectData)obj).setName(value.toString());
                    getViewer().update(obj, null);

                    doSave(null);
                }
            }
        });

        // value
        vCol = new TableViewerColumn(dataViewer, SWT.LEFT);
        col = vCol.getColumn();
        col.setText(Messages.getString("object.instance.editor.property_list.table.column.value.label"));
        col.setToolTipText(Messages.getString("object.instance.editor.property_list.table.column.value.tooltip"));
        col.setResizable(true);
        col.setMoveable(false);
        col.setWidth(150);
        colLayout.setColumnData(col, new ColumnWeightData(40, 200, true));
        vCol.setEditingSupport(new DefaultObjectDataEditingSupport(dataViewer) {

            /*
             * (non-Javadoc)
             *
             * @see org.eclipse.jface.viewers.EditingSupport#canEdit(java.lang.Object)
             */
            @Override
            protected boolean canEdit(Object element) {
                logger.trace("can edit: element: " + element);

                boolean canEdit = true;
                if(element instanceof ObjectData) {
                    ObjectProperty op = ((ObjectData)element).getObjectProperty();
                    logger.trace("op: " + op);

                    if(op != null) {
                        canEdit = (StringUtils.stripToNull(op.getCalculatorType()) == null);
                    }
                }

                logger.trace("canEdit: " + canEdit);
                return canEdit;
            }

            /*
             * (non-Javadoc)
             *
             * @see org.eclipse.jface.viewers.EditingSupport#getValue(java.lang.Object)
             */
            @Override
            protected Object getValue(Object obj) {
                if(obj instanceof ObjectData) {
                    return ((ObjectData)obj).getStringValue();
                }

                return null;
            }

            /*
             * (non-Javadoc)
             *
             * @see org.eclipse.jface.viewers.EditingSupport#setValue(java.lang.Object, java.lang.Object)
             */
            @Override
            protected void setValue(Object obj, Object value) {
                if(obj instanceof ObjectData) {
                    // run validator
                    String v = StringUtils.stripToEmpty(value.toString());
                    logger.trace("v: " + v);

                    try {
                        logger.debug("calling validator for object data: " + obj + "; value: " + v);
                        ObjectPropertyValidationResult result = validationHelper.validate(objectInstance,
                                (ObjectData)obj, v);
                        logger.trace("result: " + result);
                        if(result.isValid()) {
                            logger.debug("value is valid; set in object data");
                            ((ObjectData)obj).setValue(v);

                            objectInstance.save();
                        }

                        dataNotes.put((ObjectData)obj, result.getCode() + ":" + result.getMessage());
                    }
                    catch(Exception e) {
                        logger.error("Exception caught while executing validator: " + e.getLocalizedMessage(), e);

                        dataNotes.put((ObjectData)obj, e.getLocalizedMessage());
                    }

                    getViewer().update(obj, null);

                    doSave(null);
                    setPartName(getTitle());
                    instanceLabel.setText(objectInstance.getLabel());
                }
            }
        });

        // formatted value
        vCol = new TableViewerColumn(dataViewer, SWT.LEFT);
        col = vCol.getColumn();
        col.setText(Messages.getString("object.instance.editor.property_list.table.column.formatted_value.label"));
        col.setToolTipText(Messages
                .getString("object.instance.editor.property_list.table.column.formatted_value.tooltip"));
        col.setResizable(true);
        col.setMoveable(false);
        col.setWidth(125);
        colLayout.setColumnData(col, new ColumnWeightData(25, 200, true));

        // validator
        vCol = new TableViewerColumn(dataViewer, SWT.LEFT);
        col = vCol.getColumn();
        col.setText(Messages.getString("object.instance.editor.property_list.table.column.validator.label"));
        col.setToolTipText(Messages.getString("object.instance.editor.property_list.table.column.validator.tooltip"));
        col.setResizable(true);
        col.setMoveable(false);
        col.setWidth(100);
        colLayout.setColumnData(col, new ColumnWeightData(5, 50, true));

        // calculator
        vCol = new TableViewerColumn(dataViewer, SWT.LEFT);
        col = vCol.getColumn();
        col.setText(Messages.getString("object.instance.editor.property_list.table.column.calculator.label"));
        col.setToolTipText(Messages.getString("object.instance.editor.property_list.table.column.calculator.tooltip"));
        col.setResizable(true);
        col.setMoveable(false);
        col.setWidth(100);
        colLayout.setColumnData(col, new ColumnWeightData(5, 50, true));

        // info
        vCol = new TableViewerColumn(dataViewer, SWT.LEFT);
        col = vCol.getColumn();
        col.setText(Messages.getString("object.instance.editor.property_list.table.column.info.label"));
        col.setToolTipText(Messages.getString("object.instance.editor.property_list.table.column.info.tooltip"));
        col.setResizable(true);
        col.setMoveable(false);
        col.setWidth(300);
        colLayout.setColumnData(col, new ColumnWeightData(25, 150, true));

        dataViewer.setContentProvider(new ObjectInstanceEditorDataListContentProvider(objectInstance));
        dataViewer.setLabelProvider(new ObjectInstanceEditorDataListLabelProvider());
        dataViewer.setComparator(new ObjectInstanceEditorDataListComparator());
        dataViewer.addSelectionChangedListener(this);
View Full Code Here

                col.setToolTipText(Messages
                        .getString("object.template.editor.property_list.table.column.marker.tooltip"));
                col.setResizable(false);
                col.setMoveable(false);
                col.setWidth(25);
                colLayout.setColumnData(col, new ColumnWeightData(5, 25, false));

                vCol = new TableViewerColumn(propertyViewer, SWT.LEFT);
                col = vCol.getColumn();
                col.setText(Messages.getString("object.template.editor.property_list.table.column.name.label"));
                col
                        .setToolTipText(Messages
                                .getString("object.template.editor.property_list.table.column.name.tooltip"));
                col.setResizable(true);
                col.setMoveable(false);
                col.setWidth(225);
                colLayout.setColumnData(col, new ColumnWeightData(50, 200, true));
                // vCol.setEditingSupport(new DefaultObjectPropertyEditingSupport(propertyViewer) {
                //
                // /*
                // * (non-Javadoc)
                // *
                // * @see org.eclipse.jface.viewers.EditingSupport#getValue(java.lang.Object)
                // */
                // @Override
                // protected Object getValue(Object obj) {
                // if(obj instanceof ObjectProperty) {
                // return ((ObjectProperty)obj).getName();
                // }
                //
                // return null;
                // }
                //
                // /*
                // * (non-Javadoc)
                // *
                // * @see org.eclipse.jface.viewers.EditingSupport#setValue(java.lang.Object, java.lang.Object)
                // */
                // @Override
                // protected void setValue(Object obj, Object value) {
                // if(obj instanceof ObjectProperty) {
                // ((ObjectProperty)obj).setName(value.toString());
                // getViewer().update(obj, null);
                // }
                // }
                // });

                vCol = new TableViewerColumn(propertyViewer, SWT.LEFT);
                col = vCol.getColumn();
                col.setText(Messages.getString("object.template.editor.property_list.table.column.template.label"));
                col.setToolTipText(Messages
                        .getString("object.template.editor.property_list.table.column.template.tooltip"));
                col.setResizable(true);
                col.setMoveable(false);
                col.setWidth(75);
                colLayout.setColumnData(col, new ColumnWeightData(10, 25, true));

                // vCol = new TableViewerColumn(propertyViewer, SWT.LEFT);
                // col = vCol.getColumn();
                // col.setText(Messages.getString("object.template.editor.property_list.table.column.sequence.label"));
                // col.setToolTipText(Messages
                // .getString("object.template.editor.property_list.table.column.sequence.tooltip"));
                // col.setResizable(true);
                // col.setMoveable(false);
                // col.setWidth(75);
                // colLayout.setColumnData(col, new ColumnWeightData(10, 50, true));
                // vCol.setEditingSupport(new DefaultObjectPropertyEditingSupport(propertyViewer) {
                //
                // /*
                // * (non-Javadoc)
                // *
                // * @see org.eclipse.jface.viewers.EditingSupport#getValue(java.lang.Object)
                // */
                // @Override
                // protected Object getValue(Object obj) {
                // if(obj instanceof ObjectProperty) {
                // return ((ObjectProperty)obj).getSequence();
                // }
                //
                // return null;
                // }
                //
                // /*
                // * (non-Javadoc)
                // *
                // * @see org.eclipse.jface.viewers.EditingSupport#setValue(java.lang.Object, java.lang.Object)
                // */
                // @Override
                // protected void setValue(Object obj, Object value) {
                // if(obj instanceof ObjectProperty) {
                // if(StringUtils.isNumeric(value.toString())) {
                // ((ObjectProperty)obj).setSequence(Integer.parseInt(value.toString()));
                // getViewer().update(obj, null);
                // }
                // }
                // }
                // });

                vCol = new TableViewerColumn(propertyViewer, SWT.LEFT);
                col = vCol.getColumn();
                col.setText(Messages.getString("object.template.editor.property_list.table.column.limit.label"));
                col.setToolTipText(Messages
                        .getString("object.template.editor.property_list.table.column.limit.tooltip"));
                col.setResizable(true);
                col.setMoveable(false);
                col.setWidth(50);
                colLayout.setColumnData(col, new ColumnWeightData(5, 50, true));
                // vCol.setEditingSupport(new DefaultObjectPropertyEditingSupport(propertyViewer) {
                //
                // /*
                // * (non-Javadoc)
                // *
                // * @see org.eclipse.jface.viewers.EditingSupport#getValue(java.lang.Object)
                // */
                // @Override
                // protected Object getValue(Object obj) {
                // if(obj instanceof ObjectProperty) {
                // return ((ObjectProperty)obj).getInstanceLimit();
                // }
                //
                // return null;
                // }
                //
                // /*
                // * (non-Javadoc)
                // *
                // * @see org.eclipse.jface.viewers.EditingSupport#setValue(java.lang.Object, java.lang.Object)
                // */
                // @Override
                // protected void setValue(Object obj, Object value) {
                // if(obj instanceof ObjectProperty) {
                // if(StringUtils.isNumeric(value.toString())) {
                // ((ObjectProperty)obj).setInstanceLimit(Integer.parseInt(value.toString()));
                // getViewer().update(obj, null);
                // }
                // }
                // }
                // });

                vCol = new TableViewerColumn(propertyViewer, SWT.LEFT);
                col = vCol.getColumn();
                col.setText(Messages.getString("object.template.editor.property_list.table.column.calculator.label"));
                col.setToolTipText(Messages
                        .getString("object.template.editor.property_list.table.column.calculator.tooltip"));
                col.setResizable(true);
                col.setMoveable(false);
                col.setWidth(100);
                colLayout.setColumnData(col, new ColumnWeightData(10, 100, false));

                vCol = new TableViewerColumn(propertyViewer, SWT.LEFT);
                col = vCol.getColumn();
                col.setText(Messages.getString("object.template.editor.property_list.table.column.validator.label"));
                col.setToolTipText(Messages
                        .getString("object.template.editor.property_list.table.column.validator.tooltip"));
                col.setResizable(true);
                col.setMoveable(false);
                col.setWidth(100);
                colLayout.setColumnData(col, new ColumnWeightData(10, 100, false));

                vCol = new TableViewerColumn(propertyViewer, SWT.LEFT);
                col = vCol.getColumn();
                col.setText(Messages.getString("object.template.editor.property_list.table.column.formatter.label"));
                col.setToolTipText(Messages
                        .getString("object.template.editor.property_list.table.column.formatter.tooltip"));
                col.setResizable(true);
                col.setMoveable(false);
                col.setWidth(100);
                colLayout.setColumnData(col, new ColumnWeightData(10, 100, false));

                propertyViewer.setContentProvider(new ObjectTemplateEditorPropertyListContentProvider(objectTemplate));
                propertyViewer.setLabelProvider(new ObjectTemplateEditorPropertyListLabelProvider());
                propertyViewer.setComparator(new ObjectTemplateEditorPropertyListComparator());
                propertyViewer.addSelectionChangedListener(this);
View Full Code Here

                }

                return null;
            }
        });
        colLayout.setColumnData(tableColumn, new ColumnWeightData(10, 45, true));
        editSupport = new EncounterTrackerEditingSupport(viewer) {
            @Override
            protected Object getValue(Object element) {
                logger.debug("get value for editor: " + element);

                if(element instanceof EncounterParticipant) {
                    return String.valueOf(((EncounterParticipant)element).getOrder());
                }

                return null;
            }

            @Override
            protected void setValue(Object element, Object value) {
                logger.debug("set value from editor: " + element + "; value: " + value);

                if(element instanceof EncounterParticipant) {
                    if(value instanceof Integer) {
                        logger.debug("setting encounter participant value as integer");
                        ((EncounterParticipant)element).setOrder((Integer)value);
                    }
                    else {
                        try {
                            logger.debug("setting encounter participant value as parsed integer from string");
                            ((EncounterParticipant)element).setOrder(Integer.parseInt((String)value));
                        }
                        catch(NumberFormatException e) {
                            logger.debug("Exception while parsing integer: " + e.getLocalizedMessage(), e);
                            // ignore
                        }
                    }

                    if(autoSort) {
                        sort(sortAscending);
                    }
                    else {
                        viewer.update(element, null);
                    }
                }
            }

        };
        viewerColumn.setEditingSupport(editSupport);

        viewerColumn = new TableViewerColumn(viewer, SWT.LEFT);
        tableColumn = viewerColumn.getColumn();
        tableColumn.setText(Messages.getString("encounter.tracker.view.table.column.name.label"));
        tableColumn.setToolTipText(Messages.getString("encounter.tracker.view.table.column.name.tooltip"));
        tableColumn.setResizable(true);
        tableColumn.setMoveable(false);
        tableColumn.setWidth(200);
        viewerColumn.setLabelProvider(new EncounterTrackerViewParticipantLabelProvider(this));
        colLayout.setColumnData(tableColumn, new ColumnWeightData(35, 200, true));
        editSupport = new EncounterTrackerEditingSupport(viewer) {
            @Override
            protected boolean canEdit(Object element) {
                logger.debug("can edit? " + element);

                return (element instanceof EncounterParticipant);
            }

            @Override
            protected Object getValue(Object element) {
                logger.debug("get value for editor: " + element);

                if(element instanceof EncounterParticipant) {
                    logger.debug("getting label from encounter participant");
                    return ((EncounterParticipant)element).getLabel();
                }

                return "";
            }

            @Override
            protected void setValue(Object element, Object value) {
                logger.debug("set value from editor: " + element + "; value: " + value);

                if(element instanceof EncounterParticipant) {
                    logger.debug("setting value on encounter participant");

                    // set the label, no matter what
                    ((EncounterParticipant)element).setLabel(value.toString());

                    // lookup name in instance list and if there's a match, assign that object
                    if(selectedCampaign != null) {
                        logger.debug("get instance from campaign: " + selectedCampaign);

                        // get instance list
                        Set<ObjectInstance> instances = selectedCampaign.getObjectInstances();
                        logger.trace("instances: " + instances);

                        for(ObjectInstance instance : instances) {
                            logger.trace("instance: " + instance);

                            String label = instance.getLabel();
                            logger.trace("label: " + label);

                            if(StringUtils.stripToEmpty(label).equalsIgnoreCase(
                                    StringUtils.stripToEmpty(value.toString()))) {
                                logger.debug("instance label matches input string");
                                ((EncounterParticipant)element).setParticipant(instance);
                                break;
                            }
                        }
                    }
                }

                logger.debug("update viewer element: " + element);
                viewer.update(element, null);
            }

            // @Override
            // protected CellEditor getCellEditor(Object element) {
            // ComboBoxCellEditor editor = new ComboBoxCellEditor();
            // editor.setStyle(SWT.DROP_DOWN);
            // editor.set
            //
            // return editor;
            // }

        };
        viewerColumn.setEditingSupport(editSupport);

        // viewerColumn = new TableViewerColumn(viewer, SWT.LEFT);
        // tableColumn = viewerColumn.getColumn();
        // tableColumn.setText(Messages.getString("encounter.tracker.view.table.column.status.label"));
        // tableColumn.setToolTipText(Messages.getString("encounter.tracker.view.table.column.status.tooltip"));
        // tableColumn.setResizable(true);
        // tableColumn.setMoveable(false);
        // tableColumn.setWidth(100);
        // viewerColumn.setLabelProvider(columnLabelProvider);
        // colLayout.setColumnData(tableColumn, new ColumnWeightData(15, 100, true));

        viewerColumn = new TableViewerColumn(viewer, SWT.LEFT);
        tableColumn = viewerColumn.getColumn();
        tableColumn.setText(Messages.getString("encounter.tracker.view.table.column.target.label"));
        tableColumn.setToolTipText(Messages.getString("encounter.tracker.view.table.column.target.tooltip"));
        tableColumn.setResizable(true);
        tableColumn.setMoveable(false);
        tableColumn.setWidth(100);
        viewerColumn.setLabelProvider(new ColumnLabelProvider() {
            @Override
            public Font getFont(Object element) {
                if(element instanceof EncounterParticipant) {
                    Object obj = ((EncounterParticipant)element).getParticipant();
                    logger.trace("obj: " + obj);

                    if(obj == null) {
                        // bold the font if there is an associated object
                        return JFaceResources.getFontRegistry().getItalic(JFaceResources.DEFAULT_FONT);
                    }
                }

                return null;
            }

            /*
             * (non-Javadoc)
             *
             * @see org.eclipse.jface.viewers.ColumnLabelProvider#getText(java.lang.Object)
             */
            @Override
            public String getText(Object element) {
                if(element instanceof EncounterParticipant) {
                    Object target = ((EncounterParticipant)element).getTarget();
                    logger.trace("target: " + target);

                    if(target instanceof EncounterParticipant) {
                        logger.debug("target is an encounter participant");
                        return ((EncounterParticipant)target).getLabel();
                    }
                    else if(target instanceof String) {
                        return (String)target;
                    }
                }

                return null;
            }

        });
        colLayout.setColumnData(tableColumn, new ColumnWeightData(20, 50, true));
        editSupport = new EncounterTrackerEditingSupport(viewer) {
            @Override
            protected Object getValue(Object element) {
                logger.debug("get value for editor: " + element);

                if(element instanceof EncounterParticipant) {
                    Object obj = ((EncounterParticipant)element).getTarget();
                    logger.trace("obj: " + obj);

                    if(obj instanceof String) {
                        return obj;
                    }
                    else if(obj instanceof EncounterParticipant) {
                        return ((EncounterParticipant)obj).getLabel();
                    }
                }

                return null;
            }

            @Override
            protected void setValue(Object element, Object value) {
                logger.debug("set value from editor: " + element + "; value: " + value);

                if(element instanceof EncounterParticipant) {
                    logger.debug("setting value on encounter target");

                    Object target = null;

                    // check if the input name matches an encounter participant name
                    for(EncounterParticipant ep : participants) {
                        logger.trace("ep: " + ep);

                        if(ep.getLabel().equalsIgnoreCase(StringUtils.stripToEmpty(value.toString()))) {
                            logger.debug("input value matches encounter participant, setting target: " + ep);
                            target = ep;
                            break;
                        }
                    }

                    if(target == null) {
                        logger.debug("no target set; convert to string");
                        target = value.toString();
                    }

                    logger.debug("setting target value: " + target);
                    ((EncounterParticipant)element).setTarget(target);
                }

                viewer.update(element, null);
            }

            // @Override
            // protected CellEditor getCellEditor(Object element) {
            // CellEditor editor = new ComboBoxViewerCellEditor() {};
            // editor.setStyle(SWT.DROP_DOWN);
            // return editor;
            // }
        };
        viewerColumn.setEditingSupport(editSupport);

        viewerColumn = new TableViewerColumn(viewer, SWT.LEFT);
        tableColumn = viewerColumn.getColumn();
        tableColumn.setText(Messages.getString("encounter.tracker.view.table.column.notes.label"));
        tableColumn.setToolTipText(Messages.getString("encounter.tracker.view.table.column.notes.tooltip"));
        tableColumn.setResizable(true);
        tableColumn.setMoveable(false);
        tableColumn.setWidth(350);
        viewerColumn.setLabelProvider(new ColumnLabelProvider() {
            @Override
            public String getText(Object element) {
                if(element instanceof EncounterParticipant) {
                    return ((EncounterParticipant)element).getNotes();
                }

                return null;
            }
        });
        colLayout.setColumnData(tableColumn, new ColumnWeightData(20, 50, true));
        editSupport = new EncounterTrackerEditingSupport(viewer) {
            @Override
            protected Object getValue(Object element) {
                logger.debug("get value for editor: " + element);

View Full Code Here

        tableColumn.setText(Messages.getString("alert.view.table.column.date.label"));
        tableColumn.setToolTipText(Messages.getString("alert.view.table.column.date.tooltip"));
        tableColumn.setResizable(true);
        tableColumn.setMoveable(false);
        tableColumn.setWidth(100);
        colLayout.setColumnData(tableColumn, new ColumnWeightData(10, 50, true));

        viewerColumn = new TableViewerColumn(viewer, SWT.LEFT);
        tableColumn = viewerColumn.getColumn();
        tableColumn.setText(Messages.getString("alert.view.table.column.type.label"));
        tableColumn.setToolTipText(Messages.getString("alert.view.table.column.type.tooltip"));
        tableColumn.setResizable(true);
        tableColumn.setMoveable(false);
        tableColumn.setWidth(100);
        colLayout.setColumnData(tableColumn, new ColumnWeightData(10, 50, true));

        viewerColumn = new TableViewerColumn(viewer, SWT.LEFT);
        tableColumn = viewerColumn.getColumn();
        tableColumn.setText(Messages.getString("alert.view.table.column.source.label"));
        tableColumn.setToolTipText(Messages.getString("alert.view.table.column.source.tooltip"));
        tableColumn.setResizable(true);
        tableColumn.setMoveable(false);
        tableColumn.setWidth(150);
        colLayout.setColumnData(tableColumn, new ColumnWeightData(15, 45, true));

        viewerColumn = new TableViewerColumn(viewer, SWT.LEFT);
        tableColumn = viewerColumn.getColumn();
        tableColumn.setText(Messages.getString("alert.view.table.column.message.label"));
        tableColumn.setToolTipText(Messages.getString("alert.view.table.column.message.tooltip"));
        tableColumn.setResizable(true);
        tableColumn.setMoveable(false);
        tableColumn.setWidth(600);
        colLayout.setColumnData(tableColumn, new ColumnWeightData(65, 600, true));

        table.setHeaderVisible(true);
        table.setLinesVisible(true);

        // alertsViewAdapterFactory = new AlertViewAdapterFactory();
View Full Code Here

                        sequenceColumn.setWidth(tableWidth - orderWidth);
                    }
                }
            }
        };
        tableLayout.addColumnData(new ColumnWeightData(600, 700, true));
        tableLayout.addColumnData(new ColumnWeightData(50, 50, true));
        table.setLayout(tableLayout);

        ruleTable = new TableViewer(table);
        ruleTable.setContentProvider(CONTENT_PROVIDER);
        final ILabelDecorator decorator = new ProxyLabelDecorator();
View Full Code Here

                        property.setWidth((propertyWidth > 18) ? propertyWidth : 18);
                    }
                }
            }
        };
        tableLayout.addColumnData(new ColumnWeightData(1, 18, true));
        tableLayout.addColumnData(new ColumnWeightData(1, 18, false));
        tableLayout.addColumnData(new ColumnWeightData(0, 18, false));
        tableLayout.addColumnData(new ColumnWeightData(0, 18, false));

        ControlListener columnResizeListener = new ControlAdapter() {
            // Javadoc inherited
            public void controlResized(ControlEvent event) {
                tableLayout.layout(table, true);
View Full Code Here

                            valueCol.setWidth(valueWidth);
                        }
                    }
                };
                tableLayout.addColumnData(new ColumnWeightData(1, 100, true));
                tableLayout.addColumnData(new ColumnWeightData(2, 200, true));
                tableLayout.addColumnData(new ColumnWeightData(1, 100, true));
                table.setLayout(tableLayout);

                // Create the table's viewer.
                final TableViewer tableViewer = new TableViewer(table);
View Full Code Here

TOP

Related Classes of org.eclipse.jface.viewers.ColumnWeightData

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.