Example usage for org.eclipse.jface.action IToolBarManager add

List of usage examples for org.eclipse.jface.action IToolBarManager add

Introduction

In this page you can find the example usage for org.eclipse.jface.action IToolBarManager add.

Prototype

void add(IAction action);

Source Link

Document

Adds an action as a contribution item to this manager.

Usage

From source file:carisma.ocl.library.presentation.LibraryActionBarContributor.java

License:Open Source License

/**
 * This adds Separators for editor additions to the tool bar.
 * <!-- begin-user-doc -->/*  w  w  w.ja va  2  s.com*/
 * <!-- end-user-doc -->
 * @generated
 */
@Override
public void contributeToToolBar(IToolBarManager toolBarManager) {
    toolBarManager.add(new Separator("library-settings"));
    toolBarManager.add(new Separator("library-additions"));
}

From source file:carisma.ui.eclipse.views.AnalysisResultsView.java

License:Open Source License

/**
 * Insert Actions into the ActionBar.// www  .  j av a2 s  . co  m
 */
private void createActions() {
    Action resetItemAction = new Action("Reset") {
        @Override
        public void run() {
            CarismaGUI.reset();
        }

    };
    resetItemAction.setText("Reset results");
    resetItemAction.setDescription("Reset results");
    ImageDescriptor deleteImage = PlatformUI.getWorkbench().getSharedImages()
            .getImageDescriptor(ISharedImages.IMG_TOOL_DELETE);
    resetItemAction.setImageDescriptor(deleteImage);

    IToolBarManager mgr = getViewSite().getActionBars().getToolBarManager();
    mgr.add(resetItemAction);

}

From source file:ccw.editors.outline.ClojureOutlinePage.java

License:Open Source License

private void registerToolbarActions() {
    IActionBars actionBars = getSite().getActionBars();
    IToolBarManager toolBarManager = actionBars.getToolBarManager();
    toolBarManager.add(new LexicalSortingAction());
}

From source file:ch.elexis.agenda.ui.AgendaParallel.java

License:Open Source License

private void makePrivateActions() {
    dayFwdAction = new Action(Messages.AgendaParallel_dayForward) {
        {// w ww  .j ava2s  .c o  m
            setToolTipText(Messages.AgendaParallel_showNextDay);
            setImageDescriptor(Images.IMG_NEXT.getImageDescriptor());
        }

        @Override
        public void run() {
            agenda.addDays(1);
            for (String s : getDisplayedResources()) {
                checkDay(s, null);
            }
            refresh();
        }
    };

    dayBackAction = new Action(Messages.AgendaParallel_dayBack) {
        {
            setToolTipText(Messages.AgendaParallel_showPreviousDay);
            setImageDescriptor(Images.IMG_PREVIOUS.getImageDescriptor());
        }

        @Override
        public void run() {
            agenda.addDays(-1);
            for (String s : getDisplayedResources()) {
                checkDay(s, null);
            }

            refresh();
        }
    };
    showCalendarAction = new Action(Messages.AgendaParallel_selectDay) {
        {
            setToolTipText(Messages.AgendaParallel_showCalendarForSelcetion);
            // setImageDescriptor(Activator.getImageDescriptor("icons/calendar.png"));
        }

        @Override
        public void run() {
            DateSelectorDialog dsl = new DateSelectorDialog(getViewSite().getShell(), agenda.getActDate());
            if (dsl.open() == Dialog.OK) {
                agenda.setActDate(dsl.getSelectedDate());
                for (String s : getDisplayedResources()) {
                    checkDay(s, null);
                }

                refresh();
            }
        }
    };

    final IAction zoomAction = new Action(Messages.AgendaParallel_zoom, Action.AS_DROP_DOWN_MENU) {
        Menu mine;
        {
            setToolTipText(Messages.AgendaParallel_setZoomFactor);
            setImageDescriptor(Activator.getImageDescriptor("icons/zoom.png")); //$NON-NLS-1$
            setMenuCreator(new IMenuCreator() {

                public void dispose() {
                    mine.dispose();
                }

                public Menu getMenu(Control parent) {
                    mine = new Menu(parent);
                    fillMenu();
                    return mine;
                }

                public Menu getMenu(Menu parent) {
                    mine = new Menu(parent);
                    fillMenu();
                    return mine;
                }
            });
        }

        private void fillMenu() {
            String currentFactorString = CoreHub.localCfg.get(PreferenceConstants.AG_PIXEL_PER_MINUTE, "0.4");
            int currentFactor = (int) (Float.parseFloat(currentFactorString) * 100);
            for (String s : new String[] { "40", "60", "80", "100", "120", "140", "160", "200", "300", "400", //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$//$NON-NLS-4$//$NON-NLS-5$//$NON-NLS-6$//$NON-NLS-7$//$NON-NLS-8$//$NON-NLS-9$
                    "500" }) {
                MenuItem it = new MenuItem(mine, SWT.RADIO);
                it.setText(s + "%"); //$NON-NLS-1$
                it.setData(s);
                it.setSelection(Integer.parseInt(s) == currentFactor);
                it.addSelectionListener(new SelectionAdapter() {

                    @Override
                    public void widgetSelected(SelectionEvent e) {
                        MenuItem mi = (MenuItem) e.getSource();
                        int scale = Integer.parseInt((String) mi.getData()); //$NON-NLS-1$
                        double factor = scale / 100.0;
                        CoreHub.localCfg.set(PreferenceConstants.AG_PIXEL_PER_MINUTE, Double.toString(factor));
                        sheet.recalc();
                    }

                });
            }
        }
    };
    IToolBarManager tmr = getViewSite().getActionBars().getToolBarManager();

    tmr.add(new Separator());
    tmr.add(dayBackAction);
    tmr.add(showCalendarAction);
    tmr.add(dayFwdAction);
    tmr.add(new Separator());
    tmr.add(zoomAction);
    tmr.add(new Separator("agenda_right")); //$NON-NLS-1$
}

From source file:ch.elexis.agenda.ui.BaseView.java

License:Open Source License

protected void makeActions() {
    dayLimitsAction = new Action(Messages.BaseView_dayLimits) {
        @Override//from www .  java2s.c  o m
        public void run() {
            // new TagesgrenzenDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow()
            // .getShell(), agenda.getActDate().toString(TimeTool.DATE_COMPACT), agenda
            // .getActResource()).open();
            ICommandService commandService = (ICommandService) PlatformUI.getWorkbench()
                    .getService(ICommandService.class);

            Command cmd = commandService.getCommand("org.eclipse.ui.window.preferences");
            try {
                HashMap<String, String> hm = new HashMap<String, String>();
                hm.put("preferencePageId", "ch.elexis.agenda.tageseinteilung");
                ExecutionEvent ev = new ExecutionEvent(cmd, hm, null, null);
                cmd.executeWithChecks(ev);
            } catch (Exception exception) {
                Status status = new Status(IStatus.WARNING, Activator.PLUGIN_ID,
                        "Error opening preference page ch.elexis.agenda.tageseinteilung", exception);
                StatusManager.getManager().handle(status, StatusManager.SHOW);
            }
            refresh();
        }
    };

    blockAction = new Action(Messages.TagesView_lockPeriod) {
        @Override
        public void run() {
            IPlannable p = getSelection();
            if (p != null) {
                if (p instanceof Termin.Free) {
                    new Termin(agenda.getActResource(), agenda.getActDate().toString(TimeTool.DATE_COMPACT),
                            p.getStartMinute(), p.getDurationInMinutes() + p.getStartMinute(),
                            Termin.typReserviert(), Termin.statusLeer());
                    ElexisEventDispatcher.reload(Termin.class);
                }
            }

        }
    };
    newTerminAction = new Action(Messages.TagesView_newTermin) {
        {
            setImageDescriptor(Images.IMG_NEW.getImageDescriptor());
            setToolTipText(Messages.TagesView_createNewTermin);
        }

        @Override
        public void run() {
            new TerminDialog(null).open();
            internalRefresh();
        }
    };
    printAction = new Action(Messages.BaseView_printDayPaapintments) {
        {
            setImageDescriptor(Images.IMG_PRINTER.getImageDescriptor());
            setToolTipText(Messages.BaseView_printAPpointmentsOfSelectedDay);
        }

        @Override
        public void run() {
            IPlannable[] liste = Plannables.loadDay(agenda.getActResource(), agenda.getActDate());
            new TerminListeDruckenDialog(getViewSite().getShell(), liste).open();
            internalRefresh();
        }
    };
    printPatientAction = new Action(Messages.BaseView_printAppointments) {
        {
            setImageDescriptor(Images.IMG_PRINTER.getImageDescriptor());
            setToolTipText(Messages.BaseView_printFutureAppointmentsOfSelectedPatient);
        }

        @Override
        public void run() {
            Patient patient = ElexisEventDispatcher.getSelectedPatient();
            if (patient != null) {
                Query<Termin> qbe = new Query<Termin>(Termin.class);
                qbe.add("Wer", "=", patient.getId());
                qbe.add("deleted", "<>", "1");
                qbe.add("Tag", ">=", new TimeTool().toString(TimeTool.DATE_COMPACT));
                qbe.orderBy(false, "Tag", "Beginn");
                java.util.List<Termin> list = qbe.execute();
                if (list != null) {
                    boolean directPrint = CoreHub.localCfg.get(
                            PreferenceConstants.AG_PRINT_APPOINTMENTCARD_DIRECTPRINT,
                            PreferenceConstants.AG_PRINT_APPOINTMENTCARD_DIRECTPRINT_DEFAULT);

                    TermineDruckenDialog dlg = new TermineDruckenDialog(getViewSite().getShell(),
                            list.toArray(new Termin[0]));
                    if (directPrint) {
                        dlg.setBlockOnOpen(false);
                        dlg.open();
                        if (dlg.doPrint()) {
                            dlg.close();
                        } else {
                            SWTHelper.alert(Messages.BaseView_errorWhilePrinting,
                                    Messages.BaseView_errorHappendPrinting);
                        }
                    } else {
                        dlg.setBlockOnOpen(true);
                        dlg.open();
                    }
                }
            }
        }
    };
    exportAction = new Action(Messages.BaseView_exportAgenda) {
        {
            setToolTipText(Messages.BaseView_exportAppojntmentsOfMandator);
            setImageDescriptor(Images.IMG_GOFURTHER.getImageDescriptor());
        }

        @Override
        public void run() {
            ICalTransfer ict = new ICalTransfer();
            ict.doExport(agenda.getActDate(), agenda.getActDate(), agenda.getActResource());
        }
    };

    importAction = new Action(Messages.BaseView_importAgenda) {
        {
            setToolTipText(Messages.BaseView_importFromICal);
            setImageDescriptor(Images.IMG_IMPORT.getImageDescriptor());
        }

        @Override
        public void run() {
            ICalTransfer ict = new ICalTransfer();
            ict.doImport(agenda.getActResource());
        }
    };

    todayAction = new Action(Messages.BaseView_today) {
        {
            setToolTipText(Messages.BaseView_showToday);
            setImageDescriptor(Activator.getImageDescriptor("icons/calendar_view_day.png")); //$NON-NLS-1$
        }

        @Override
        public void run() {
            agenda.setActDate(new TimeTool());
            internalRefresh();
        }
    };

    refreshAction = new Action(Messages.BaseView_refresh) {
        {
            setToolTipText(Messages.BaseView_refresh);
            setImageDescriptor(Images.IMG_REFRESH.getImageDescriptor());
        }

        @Override
        public void run() {
            internalRefresh();
        }
    };

    IMenuManager mgr = getViewSite().getActionBars().getMenuManager();
    mgr.add(dayLimitsAction);
    mgr.add(exportAction);
    mgr.add(importAction);
    mgr.add(printAction);
    mgr.add(printPatientAction);
    IToolBarManager tmr = getViewSite().getActionBars().getToolBarManager();
    tmr.add(refreshAction);
    tmr.add(todayAction);
}

From source file:ch.elexis.agenda.ui.week.AgendaWeek.java

License:Open Source License

private void makePrivateActions() {
    weekFwdAction = new Action(Messages.AgendaWeek_weekForward) {
        {//  w  w  w.  java2s .co m
            setToolTipText(Messages.AgendaWeek_showNextWeek);
            setImageDescriptor(Images.IMG_NEXT.getImageDescriptor());
        }

        @Override
        public void run() {
            agenda.addDays(7);
            TimeTool tt = new TimeTool();
            for (String s : getDisplayedDays()) {
                tt.set(s);
                checkDay(null, tt);
            }
            refresh();
        }
    };

    weekBackAction = new Action(Messages.AgendaWeek_weekBackward) {
        {
            setToolTipText(Messages.AgendaWeek_showPreviousWeek);
            setImageDescriptor(Images.IMG_PREVIOUS.getImageDescriptor());
        }

        @Override
        public void run() {
            agenda.addDays(-7);
            TimeTool tt = new TimeTool();
            for (String s : getDisplayedDays()) {
                tt.set(s);
                checkDay(null, tt);
            }
            refresh();
        }
    };
    showCalendarAction = new Action(Messages.AgendaWeek_selectWeek) {
        {
            setToolTipText(Messages.AgendaWeek_showCalendarToSelect);
            // setImageDescriptor(Activator.getImageDescriptor("icons/calendar.png"));
        }

        @Override
        public void run() {
            DateSelectorDialog dsl = new DateSelectorDialog(getViewSite().getShell(), agenda.getActDate());
            if (dsl.open() == Dialog.OK) {
                agenda.setActDate(dsl.getSelectedDate());
                TimeTool tt = new TimeTool();
                for (String s : getDisplayedDays()) {
                    tt.set(s);
                    checkDay(null, tt);
                }

                refresh();
            }
        }
    };

    final IAction zoomAction = new Action(Messages.AgendaWeek_zoom, Action.AS_DROP_DOWN_MENU) {
        Menu mine;
        {
            setToolTipText(Messages.AgendaWeek_setZoomFactor);
            setImageDescriptor(Activator.getImageDescriptor("icons/zoom.png")); //$NON-NLS-1$
            setMenuCreator(new IMenuCreator() {

                public void dispose() {
                    mine.dispose();
                }

                public Menu getMenu(Control parent) {
                    mine = new Menu(parent);
                    fillMenu();
                    return mine;
                }

                public Menu getMenu(Menu parent) {
                    mine = new Menu(parent);
                    fillMenu();
                    return mine;
                }
            });
        }

        private void fillMenu() {
            String currentFactorString = CoreHub.localCfg.get(PreferenceConstants.AG_PIXEL_PER_MINUTE, "0.4");
            int currentFactor = (int) (Float.parseFloat(currentFactorString) * 100);
            for (String s : new String[] { "40", "60", "80", "100", "120", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
                    "140", "160", "200", "300" }) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
                MenuItem it = new MenuItem(mine, SWT.RADIO);
                it.setText(s + "%"); //$NON-NLS-1$
                it.setData(s);
                it.setSelection(Integer.parseInt(s) == currentFactor);
                it.addSelectionListener(new SelectionAdapter() {

                    @Override
                    public void widgetSelected(SelectionEvent e) {
                        MenuItem mi = (MenuItem) e.getSource();
                        int scale = Integer.parseInt(mi.getText().split("%")[0]); //$NON-NLS-1$
                        double factor = scale / 100.0;
                        CoreHub.localCfg.set(PreferenceConstants.AG_PIXEL_PER_MINUTE, Double.toString(factor));
                        sheet.recalc();
                    }

                });
            }
        }
    };
    IToolBarManager tmr = getViewSite().getActionBars().getToolBarManager();
    tmr.add(new Separator());
    tmr.add(weekBackAction);
    tmr.add(showCalendarAction);
    tmr.add(weekFwdAction);
    tmr.add(new Separator());
    tmr.add(zoomAction);
}

From source file:ch.elexis.core.ui.laboratory.views.LaborView.java

License:Open Source License

@Override
public void createPartControl(final Composite parent) {
    setTitleImage(Images.IMG_VIEW_LABORATORY.getImage());

    tabFolder = new CTabFolder(parent, SWT.TOP);
    tabFolder.setLayout(new FillLayout());

    final CTabItem resultsTabItem = new CTabItem(tabFolder, SWT.NULL);
    resultsTabItem.setText("Resultate");
    resultsComposite = new LaborResultsComposite(tabFolder, SWT.NONE);
    resultsTabItem.setControl(resultsComposite);

    final CTabItem ordersTabItem = new CTabItem(tabFolder, SWT.NULL);
    ordersTabItem.setText("Verordnungen");
    ordersComposite = new LaborOrdersComposite(tabFolder, SWT.NONE);
    ordersTabItem.setControl(ordersComposite);

    tabFolder.setSelection(0);//from  w  w w . j a v  a  2  s .  c  o m
    tabFolder.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            resultsComposite.reload();
            ordersComposite.reload();
        }
    });
    makeActions();
    menu = new ViewMenus(getViewSite());
    menu.createMenu(newAction, backAction, fwdAction, printAction, importAction, xmlAction);
    // Orders
    final LaborOrderPulldownMenuCreator menuCreator = new LaborOrderPulldownMenuCreator(parent.getShell());
    if (menuCreator.getSelected() != null) {
        IAction dropDownAction = menuCreator.getAction();

        IActionBars actionBars = getViewSite().getActionBars();
        IToolBarManager toolbar = actionBars.getToolBarManager();

        toolbar.add(dropDownAction);

        // Set data
        dropDownAction.setText(menuCreator.getSelected().getText());
        dropDownAction.setToolTipText(menuCreator.getSelected().getToolTipText());
        dropDownAction.setImageDescriptor(menuCreator.getSelected().getImageDescriptor());
    }
    // Importers
    IToolBarManager tm = getViewSite().getActionBars().getToolBarManager();
    List<IAction> importers = Extensions.getClasses(
            Extensions.getExtensions(ExtensionPointConstantsUi.LABORDATENIMPORT), "ToolbarAction", //$NON-NLS-1$ //$NON-NLS-2$
            false);
    for (IAction ac : importers) {
        tm.add(ac);
    }
    if (importers.size() > 0) {
        tm.add(new Separator());
    }
    tm.add(refreshAction);
    tm.add(newColumnAction);
    tm.add(newAction);
    tm.add(backAction);
    tm.add(fwdAction);
    tm.add(expandAllAction);
    tm.add(collapseAllAction);
    tm.add(printAction);

    // register event listeners
    ElexisEventDispatcher.getInstance().addListeners(eeli_labitem, eeli_laborder, eeli_labresult, eeli_pat);
    Patient act = (Patient) ElexisEventDispatcher.getSelected(Patient.class);
    if ((act != null && act != resultsComposite.getPatient())) {
        resultsComposite.selectPatient(act);
    }
}

From source file:ch.elexis.core.ui.util.ViewMenus.java

License:Open Source License

/**
 * Create a toolbar containing the specified actions
 * /*from  w w  w . j  a v a  2 s. co  m*/
 * @param actions
 *            a collection of actions and null-values (that represent separators)
 */
public void createToolbar(IAction... actions) {
    IToolBarManager tmg = site.getActionBars().getToolBarManager();
    for (IAction ac : actions) {
        if (ac == null) {
            tmg.add(new Separator());
        } else {
            tmg.add(ac);
        }
    }
}

From source file:ch.elexis.core.ui.views.FallListeView.java

License:Open Source License

private void createMenuAndToolbar() {
    IMenuManager mgr = getViewSite().getActionBars().getMenuManager();
    mgr.add(delFallAction);//from   ww w .  j ava 2  s . com
    mgr.add(delKonsAction);
    mgr.add(new Separator());
    // mgr.add(filterAction);
    IToolBarManager tmg = getViewSite().getActionBars().getToolBarManager();
    tmg.add(GlobalActions.helpAction);
    tmg.add(filterClosedAction);
}

From source file:ch.elexis.core.ui.views.rechnung.InvoiceListView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    parent.setLayout(new GridLayout(1, false));

    invoiceListHeaderComposite = new InvoiceListHeaderComposite(parent, SWT.NONE, this);

    Composite compositeInvoiceList = new Composite(parent, SWT.NONE);
    compositeInvoiceList.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
    TableColumnLayout tcl_compositeInvoiceList = new TableColumnLayout();
    compositeInvoiceList.setLayout(tcl_compositeInvoiceList);

    tableViewerInvoiceList = new TableViewer(compositeInvoiceList,
            SWT.FULL_SELECTION | SWT.BORDER | SWT.MULTI | SWT.VIRTUAL);
    tableViewerInvoiceList.addSelectionChangedListener(selection -> {
        StructuredSelection ss = (StructuredSelection) selection.getSelection();
        if (!ss.isEmpty()) {
            InvoiceEntry firstElement = (InvoiceEntry) ss.getFirstElement();
            Rechnung load = Rechnung.load(firstElement.getInvoiceId());
            ElexisEventDispatcher.fireSelectionEvent(load);
            Fall f = load.getFall();// w ww.  j a va  2 s.  com
            if (f != null) {
                ElexisEventDispatcher.fireSelectionEvent(f);
            }
        }
    });
    Table tableInvoiceList = tableViewerInvoiceList.getTable();
    tableInvoiceList.setHeaderVisible(true);
    tableInvoiceList.setLinesVisible(false);

    tableViewerInvoiceList.getControl().addKeyListener(new KeyAdapter() {
        @Override
        public void keyReleased(KeyEvent e) {
            if (e.keyCode == SWT.F5) {
                refresh();
            }
        }
    });

    TableViewerColumn tvcInvoiceNo = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnInvoiceNo = tvcInvoiceNo.getColumn();
    tblclmnInvoiceNo.setData(VIEW_FLD_INVOICENO);
    tcl_compositeInvoiceList.setColumnData(tblclmnInvoiceNo, new ColumnPixelData(50, true, true));
    tblclmnInvoiceNo.setText(Messages.InvoiceListView_tblclmnInvoiceNo_text);
    tvcInvoiceNo.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                return ((InvoiceEntry) element).getInvoiceNumber();
            }
            return super.getText(element);
        }
    });
    tblclmnInvoiceNo.addSelectionListener(sortAdapter);

    TableViewerColumn tvcInvoiceState = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnInvoiceState = tvcInvoiceState.getColumn();
    tcl_compositeInvoiceList.setColumnData(tblclmnInvoiceState, new ColumnPixelData(90, true, true));
    tblclmnInvoiceState.setText(Messages.InvoiceListView_tblclmnInvoiceState_text);
    tvcInvoiceState.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                return ((InvoiceEntry) element).getInvoiceState().getLocaleText();
            }
            return super.getText(element);
        }
    });

    TableViewerColumn tvcInvoiceStateDateSince = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnInvoiceStateDateSince = tvcInvoiceStateDateSince.getColumn();
    tcl_compositeInvoiceList.setColumnData(tblclmnInvoiceStateDateSince, new ColumnPixelData(50, true, true));
    tblclmnInvoiceStateDateSince.setText(Messages.InvoiceListView_tblclmnInvoiceStateDateSince_text);
    tvcInvoiceStateDateSince.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                return ((InvoiceEntry) element).getInvoiceStateSinceDays() + "d";
            }
            return super.getText(element);
        }
    });
    tblclmnInvoiceStateDateSince.setData(InvoiceListSqlQuery.VIEW_FLD_INVOICESTATEDATE);
    tblclmnInvoiceStateDateSince.addSelectionListener(sortAdapter);

    TableViewerColumn tvcPatient = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnPatient = tvcPatient.getColumn();
    tcl_compositeInvoiceList.setColumnData(tblclmnPatient, new ColumnWeightData(10, 100, true));
    tblclmnPatient.setText(Messages.InvoiceListView_tblclmnPatient_text);
    tblclmnPatient.setData(Kontakt.FLD_NAME1);
    tvcPatient.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                return ((InvoiceEntry) element).getPatientName();
            }
            return super.getText(element);
        }
    });
    tblclmnPatient.addSelectionListener(sortAdapter);

    TableViewerColumn tvcLaw = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnLaw = tvcLaw.getColumn();
    tcl_compositeInvoiceList.setColumnData(tblclmnLaw, new ColumnPixelData(50, true, true));
    tblclmnLaw.setText(Messages.InvoiceListView_tblclmnLaw_text);
    tvcLaw.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                return ((InvoiceEntry) element).getLaw();
            }
            return super.getText(element);
        }
    });

    TableViewerColumn tvcPayerType = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnType = tvcPayerType.getColumn();
    tcl_compositeInvoiceList.setColumnData(tblclmnType, new ColumnPixelData(50, true, true));
    tblclmnType.setText(Messages.InvoiceListView_tblclmnType_text);
    tvcPayerType.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                return ((InvoiceEntry) element).getPayerType();
            }
            return super.getText(element);
        }
    });

    TableViewerColumn tvcReceiver = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnReceiver = tvcReceiver.getColumn();
    tcl_compositeInvoiceList.setColumnData(tblclmnReceiver, new ColumnPixelData(150, true, true));
    tblclmnReceiver.setText(Messages.InvoiceListView_tblclmnReceiver_text);
    tvcReceiver.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                return ((InvoiceEntry) element).getReceiverLabel();
            }
            return super.getText(element);
        }
    });

    TableViewerColumn tvcTreatmentPeriod = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnTreatmentperiod = tvcTreatmentPeriod.getColumn();
    tcl_compositeInvoiceList.setColumnData(tblclmnTreatmentperiod, new ColumnPixelData(100, true, true));
    tblclmnTreatmentperiod.setText(Messages.InvoiceListView_tblclmnTreatmentperiod_text);
    tblclmnTreatmentperiod.setData(Rechnung.BILL_DATE_FROM);
    tvcTreatmentPeriod.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                return ((InvoiceEntry) element).getTreatmentPeriod();
            }
            return super.getText(element);
        }
    });
    tblclmnTreatmentperiod.addSelectionListener(sortAdapter);

    TableViewerColumn tvcOpenAmount = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnOpenAmount = tvcOpenAmount.getColumn();
    tcl_compositeInvoiceList.setColumnData(tblclmnOpenAmount, new ColumnPixelData(60, true, true));
    tblclmnOpenAmount.setText(Messages.InvoiceListView_tblclmnOpenAmount_text);
    tblclmnOpenAmount.setData(VIEW_FLD_OPENAMOUNT);
    tvcOpenAmount.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                int openAmount = ((InvoiceEntry) element).getOpenAmount();
                return new Money(openAmount).getAmountAsString();
            }
            return super.getText(element);
        }
    });
    tblclmnOpenAmount.addSelectionListener(sortAdapter);

    TableViewerColumn tvcTotalAmount = new TableViewerColumn(tableViewerInvoiceList, SWT.NONE);
    TableColumn tblclmnTotalAmount = tvcTotalAmount.getColumn();
    tblclmnTotalAmount.setData(VIEW_FLD_INVOICETOTAL);
    tcl_compositeInvoiceList.setColumnData(tblclmnTotalAmount, new ColumnPixelData(60, true, true));
    tblclmnTotalAmount.setText(Messages.InvoiceListView_tblclmnTotalAmount_text);
    tvcTotalAmount.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof InvoiceEntry) {
                int totalAmountInCents = ((InvoiceEntry) element).getTotalAmount();
                return new Money(totalAmountInCents).getAmountAsString();
            }
            return super.getText(element);
        }
    });
    tblclmnTotalAmount.addSelectionListener(sortAdapter);

    invoiceListBottomComposite = new InvoiceListBottomComposite(parent, SWT.NONE, rnStellerSettings);

    invoiceListContentProvider = new InvoiceListContentProvider(tableViewerInvoiceList,
            invoiceListHeaderComposite, invoiceListBottomComposite);
    tableViewerInvoiceList.setContentProvider(invoiceListContentProvider);

    InvoiceActions invoiceActions = new InvoiceActions(tableViewerInvoiceList, getViewSite());
    IToolBarManager tbm = getViewSite().getActionBars().getToolBarManager();
    tbm.add(reloadViewAction);
    tbm.add(invoiceActions.mahnWizardAction);
    tbm.add(invoiceListContentProvider.rnFilterAction);
    tbm.add(new Separator());
    tbm.add(invoiceActions.rnExportAction);

    IMenuManager viewMenuManager = getViewSite().getActionBars().getMenuManager();
    viewMenuManager.add(invoiceActions.printListeAction);
    viewMenuManager.add(invoiceActions.addAccountExcessAction);

    MenuManager menuManager = new MenuManager();
    menuManager.add(invoiceActions.rnExportAction);
    menuManager.add(invoiceActions.addPaymentAction);
    menuManager.add(invoiceActions.addExpenseAction);
    menuManager.add(invoiceActions.increaseLevelAction);
    menuManager.add(new Separator());
    menuManager.add(invoiceActions.changeStatusAction);
    menuManager.add(invoiceActions.stornoAction);

    Menu contextMenu = menuManager.createContextMenu(tableViewerInvoiceList.getTable());
    tableInvoiceList.setMenu(contextMenu);
    getSite().registerContextMenu(menuManager, tableViewerInvoiceList);
    getSite().setSelectionProvider(tableViewerInvoiceList);

    setSortOrder(tblclmnPatient, SWT.UP);

    refresh();
}