| /** |
| * |
| * Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany) |
| * |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation |
| * |
| * |
| * This copyright notice shows up in the generated Java code |
| * |
| */ |
| |
| package org.eclipse.osbp.xtext.table.jvmmodel |
| |
| import com.vaadin.data.Container |
| import com.vaadin.data.Property.ValueChangeListener |
| import com.vaadin.server.Page |
| import com.vaadin.server.Page.Styles |
| import com.vaadin.shared.ui.label.ContentMode |
| import com.vaadin.ui.Button |
| import com.vaadin.ui.Button.ClickEvent |
| import com.vaadin.ui.CustomTable |
| import com.vaadin.ui.CustomTable.Align |
| import com.vaadin.ui.CustomTable.RowHeaderMode |
| import com.vaadin.ui.HorizontalLayout |
| import com.vaadin.ui.Label |
| import com.vaadin.ui.Notification |
| import com.vaadin.ui.Notification.Type |
| import com.vaadin.ui.TabSheet |
| import com.vaadin.ui.UI |
| import java.util.ArrayList |
| import java.util.Collection |
| import java.util.Date |
| import java.util.HashMap |
| import java.util.Iterator |
| import java.util.List |
| import java.util.Locale |
| import java.util.Map |
| import java.util.Set |
| import java.util.TreeSet |
| import java.util.UUID |
| import java.util.concurrent.Executors |
| import java.util.concurrent.TimeUnit |
| import java.util.stream.Collectors |
| import javax.inject.Inject |
| import org.eclipse.bpmn2.Task |
| import org.eclipse.e4.core.contexts.ContextInjectionFactory |
| import org.eclipse.e4.core.di.extensions.EventUtils |
| import org.eclipse.e4.core.services.events.IEventBroker |
| import org.eclipse.e4.ui.di.Focus |
| import org.eclipse.e4.ui.model.application.MApplication |
| import org.eclipse.emf.ecore.EObject |
| import org.eclipse.emf.ecore.resource.Resource |
| import org.eclipse.osbp.bpm.api.BPMOperation |
| import org.eclipse.osbp.bpm.api.BPMTaskEventType |
| import org.eclipse.osbp.bpm.api.BPMTaskSummary |
| import org.eclipse.osbp.bpm.api.BPMTaskUserEvent |
| import org.eclipse.osbp.bpm.api.IBlipBPMConstants |
| import org.eclipse.osbp.bpm.api.IBlipBPMFunctionProvider |
| import org.eclipse.osbp.bpm.api.IBlipBPMStartInfo |
| import org.eclipse.osbp.bpm.api.IBlipBPMWorkloadModifiableItem |
| import org.eclipse.osbp.dsl.common.datatypes.IDto |
| import org.eclipse.osbp.dsl.dto.lib.impl.DtoServiceAccess |
| import org.eclipse.osbp.eventbroker.EventBrokerMsg |
| import org.eclipse.osbp.preferences.ProductConfiguration |
| import org.eclipse.osbp.runtime.common.event.EventDispatcherEvent |
| import org.eclipse.osbp.runtime.common.filter.IDTOServiceWithMutablePersistence |
| import org.eclipse.osbp.runtime.web.vaadin.common.data.IBeanSearchServiceFactory |
| import org.eclipse.osbp.ui.api.contextfunction.IViewEmbeddedProvider |
| import org.eclipse.osbp.ui.api.customfields.IBlobService |
| import org.eclipse.osbp.ui.api.datamart.DatamartFilter |
| import org.eclipse.osbp.ui.api.datamart.DatamartPrimary |
| import org.eclipse.osbp.ui.api.datamart.IDatamartFilterGenerator |
| import org.eclipse.osbp.ui.api.e4.IE4Table |
| import org.eclipse.osbp.ui.api.themes.IThemeResourceService |
| import org.eclipse.osbp.ui.api.themes.IThemeResourceService.ThemeResourceType |
| import org.eclipse.osbp.utils.constants.ExtendedDate |
| import org.eclipse.osbp.utils.vaadin.SelectUserWindow |
| import org.eclipse.osbp.utils.vaadin.ViewLayoutManager |
| import org.eclipse.osbp.vaaclipse.common.ecview.api.IECViewSessionHelper |
| import org.eclipse.osbp.xtext.basic.generator.BasicDslGeneratorUtils |
| import org.eclipse.osbp.xtext.blip.BlipItem |
| import org.eclipse.osbp.xtext.datamart.common.AEntityDatamart |
| import org.eclipse.osbp.xtext.datamart.common.DatamartFilterGenerator |
| import org.eclipse.osbp.xtext.datamart.common.olap.DerivedAxis |
| import org.eclipse.osbp.xtext.datamart.common.olap.DerivedHierarchy |
| import org.eclipse.osbp.xtext.datamart.common.olap.DerivedLevel |
| import org.eclipse.osbp.xtext.datamart.common.olap.DerivedMember |
| import org.eclipse.osbp.xtext.datamart.common.olap.DerivedPosition |
| import org.eclipse.osbp.xtext.datamart.common.sql.OperativeDtoContainer |
| import org.eclipse.osbp.xtext.i18n.I18NModelGenerator |
| import org.eclipse.osbp.xtext.table.common.BeanFilterTable |
| import org.eclipse.osbp.xtext.table.common.CellSetFilterTable |
| import org.eclipse.osbp.xtext.table.common.CellSetIndexedContainer |
| import org.eclipse.osbp.xtext.table.common.CellSetPagedFilterTable |
| import org.eclipse.osbp.xtext.table.common.CheckboxSelectionCellSetFilterTable |
| import org.eclipse.osbp.xtext.table.common.TableFilterDecorator |
| import org.eclipse.osbp.xtext.table.common.TableFilterGenerator |
| import org.eclipse.osbp.xtext.table.generator.TableGridSourceGenerator |
| import org.eclipse.xtext.generator.IFileSystemAccess |
| import org.eclipse.xtext.xbase.compiler.GeneratorConfig |
| import org.eclipse.xtext.xbase.compiler.ImportManager |
| import org.osgi.service.event.Event |
| import org.osgi.service.event.EventHandler |
| import org.vaadin.hene.popupbutton.PopupButton |
| import org.eclipse.osbp.xtext.action.SelectWorkloadActionEnum |
| import java.io.StringWriter |
| import java.io.PrintWriter |
| |
| class TableModelGenerator extends I18NModelGenerator { |
| @Inject TableGridSourceGenerator delegate |
| @Inject extension BasicDslGeneratorUtils |
| |
| override createAppendable(EObject context, ImportManager importManager, GeneratorConfig config) { |
| // required to initialize the needed builder to avoid deprecated methods |
| builder = context.eResource |
| // --------- |
| addImportFor( |
| importManager, |
| _typeReferenceBuilder, |
| HashMap, |
| Map, |
| Collection, |
| ValueChangeListener, |
| Label, |
| List, |
| Set, |
| TreeSet, |
| Iterator, |
| ArrayList, |
| Page, |
| Styles, |
| DerivedAxis, |
| DerivedPosition, |
| DerivedMember, |
| HorizontalLayout, |
| TabSheet, |
| Notification, |
| ClickEvent, |
| Button, |
| Type, |
| Align, |
| OperativeDtoContainer, |
| DerivedHierarchy, |
| DerivedLevel, |
| IEventBroker, |
| PopupButton, |
| CellSetFilterTable, |
| BeanFilterTable, |
| CellSetPagedFilterTable, |
| CheckboxSelectionCellSetFilterTable, |
| CustomTable, |
| RowHeaderMode, |
| Container, |
| CellSetIndexedContainer, |
| TableFilterDecorator, |
| TableFilterGenerator, |
| Date, |
| ExtendedDate, |
| TimeUnit, |
| EventHandler, |
| Event, |
| EventUtils, |
| ContentMode, |
| EventBrokerMsg, |
| Executors, |
| SelectUserWindow, |
| UUID, |
| ProductConfiguration, |
| AEntityDatamart, |
| IViewEmbeddedProvider, |
| MApplication, |
| ContextInjectionFactory, |
| UI, |
| Locale, |
| IThemeResourceService, |
| ThemeResourceType, |
| IBlipBPMFunctionProvider, |
| IBlipBPMConstants, |
| IBlipBPMStartInfo, |
| IBlipBPMWorkloadModifiableItem, |
| IDto, |
| Task, |
| BlipItem, |
| IDTOServiceWithMutablePersistence, |
| DtoServiceAccess, |
| DatamartFilterGenerator, |
| ViewLayoutManager, |
| IDatamartFilterGenerator.FilterChangeListener, |
| EventDispatcherEvent, |
| EventDispatcherEvent.EventDispatcherDataTag, |
| EventDispatcherEvent.EventDispatcherCommand, |
| DatamartFilter, |
| DatamartPrimary, |
| IE4Table, |
| Focus, |
| Collectors, |
| IBeanSearchServiceFactory, |
| IECViewSessionHelper, |
| IBlobService, |
| BPMTaskSummary, |
| BPMOperation, |
| BPMTaskEventType, |
| BPMTaskUserEvent, |
| SelectWorkloadActionEnum, |
| StringWriter, |
| PrintWriter |
| ) |
| super.createAppendable(context, importManager, config) |
| } |
| |
| override doGenerate(Resource resource, IFileSystemAccess fsa) { |
| // i18n |
| addTranslatables( |
| "save,cancel,securityMessage,Page,Items per page,showAll,endDate,startDate,setFilter,clearFilter,lesser_than,greater_than,equal_to,ok,reset,[x]") |
| super.doGenerate(resource, fsa) |
| delegate.doGenerate(resource, fsa) |
| |
| } |
| |
| } |