Search in sources :

Example 1 with ExternalDbMapUiProperties

use of org.talend.designer.dbmap.external.data.ExternalDbMapUiProperties in project tdi-studio-se by Talend.

the class MapperUI method init.

public void init(MapperModel mapperModel) {
    // long time1 = System.currentTimeMillis();
    // CommandStack commandStack = new CommandStackForComposite(this.mapperUIParent);
    // mapperManager.setCommandStack(commandStack);
    final UIManager uiManager = mapperManager.getUiManager();
    final ExternalDbMapUiProperties uiProperties = uiManager.getUiProperties();
    addParentListeners(uiManager, uiProperties);
    final Display display = mapperUIParent.getDisplay();
    bgColorLinksZone = ColorProviderMapper.getColor(ColorInfo.COLOR_BACKGROUND_LINKS_ZONE);
    GridLayout parentLayout = new GridLayout(1, true);
    mapperUIParent.setLayout(parentLayout);
    addKeyListener(uiManager, display);
    addBackgroundRefreshLimiters(display);
    this.dropTargetOperationListener = new DropTargetOperationListener(mapperManager);
    dropTargetOperationListener.addControl(this.mapperUIParent.getShell());
    mainSashForm = new SashForm(mapperUIParent, SWT.SMOOTH | SWT.VERTICAL);
    GridData mainSashFormGridData = new GridData(GridData.FILL_BOTH);
    mainSashForm.setLayoutData(mainSashFormGridData);
    datasFlowViewSashForm = new SashForm(mainSashForm, SWT.SMOOTH | SWT.HORIZONTAL | SWT.BORDER);
    datasFlowViewSashForm.setBackgroundMode(SWT.INHERIT_FORCE);
    initBackgroundComponents();
    if (WindowSystem.isGTK()) {
        datasFlowViewSashForm.setBackground(display.getSystemColor(SWT.COLOR_DARK_GRAY));
    }
    // dropTargetOperationListener.addControl(datasFlowViewSashForm);
    // datasFlowViewSashForm.addControlListener(new ControlListener() {
    //
    // public void controlMoved(ControlEvent e) {
    // }
    //
    // public void controlResized(ControlEvent e) {
    // createBgImages();
    // updateBackground(true, false);
    // }
    //
    // });
    /* Create the tabs */
    String dbmsId = null;
    if (mapperModel.getInputDataMapTables() != null && !mapperModel.getInputDataMapTables().isEmpty()) {
        InputTable input = mapperModel.getInputDataMapTables().get(0);
        if (input.getMetadataTable() != null) {
            dbmsId = input.getMetadataTable().getDbms();
        }
    }
    tabFolderEditors = new TabFolderEditors(mainSashForm, SWT.BORDER, mapperManager, dbmsId);
    createInputZoneWithTables(mapperModel, uiManager, display);
    createVarsZoneWithTables(mapperModel, display);
    createOutputZoneWithTables(mapperModel, uiManager, display);
    mapperManager.initInternalData();
    uiManager.parseAllExpressionsForAllTables();
    mapperManager.getProblemsManager().checkProblemsForAllEntriesOfAllTables(true);
    this.draggingInfosPopup = DraggingInfosPopup.getNewShell(this.mapperUIParent.getShell());
    configureZoneScrollBars(display);
    int[] weightsDatasFlowViewSashForm = uiProperties.getWeightsDatasFlowViewSashForm();
    datasFlowViewSashForm.setWeights(weightsDatasFlowViewSashForm.length != 0 ? weightsDatasFlowViewSashForm : ExternalDbMapUiProperties.DEFAULT_WEIGHTS_DATAS_FLOW_SASH_FORM);
    int[] weightsMainSashForm = uiProperties.getWeightsMainSashForm();
    mainSashForm.setWeights(weightsMainSashForm.length != 0 ? weightsMainSashForm : ExternalDbMapUiProperties.DEFAULT_WEIGHTS_MAIN_SASH_FORM);
    new FooterComposite(this.mapperUIParent, SWT.NONE, mapperManager);
    if (WindowSystem.isGTK()) {
        // resize especially for GTK
        new AsynchronousThreading(1000, false, display, new Runnable() {

            public void run() {
                resizeNotMinimizedTablesAtExpandedSize(display);
                mapperUIParent.getShell().layout();
            }
        }).start();
    }
    if (WindowSystem.isWIN32()) {
        List<DataMapTableView> inputsTablesView = uiManager.getInputsTablesView();
        for (DataMapTableView view : inputsTablesView) {
            ((InputDataMapTableView) view).refreshLabelForJoinDropDown();
        }
    }
    selectFirstInOutTablesView();
    mapperManager.getUiManager().refreshSqlExpression();
}
Also used : TabFolderEditors(org.talend.designer.dbmap.ui.tabs.TabFolderEditors) FooterComposite(org.talend.designer.dbmap.ui.footer.FooterComposite) InputDataMapTableView(org.talend.designer.dbmap.ui.visualmap.table.InputDataMapTableView) UIManager(org.talend.designer.dbmap.managers.UIManager) InputDataMapTableView(org.talend.designer.dbmap.ui.visualmap.table.InputDataMapTableView) OutputDataMapTableView(org.talend.designer.dbmap.ui.visualmap.table.OutputDataMapTableView) DataMapTableView(org.talend.designer.dbmap.ui.visualmap.table.DataMapTableView) ExternalDbMapUiProperties(org.talend.designer.dbmap.external.data.ExternalDbMapUiProperties) AsynchronousThreading(org.talend.commons.ui.runtime.thread.AsynchronousThreading) SashForm(org.eclipse.swt.custom.SashForm) InputTable(org.talend.designer.dbmap.model.table.InputTable) GridLayout(org.eclipse.swt.layout.GridLayout) DropTargetOperationListener(org.talend.designer.abstractmap.ui.listener.DropTargetOperationListener) GridData(org.eclipse.swt.layout.GridData) Display(org.eclipse.swt.widgets.Display)

Example 2 with ExternalDbMapUiProperties

use of org.talend.designer.dbmap.external.data.ExternalDbMapUiProperties in project tdi-studio-se by Talend.

the class MapperMain method createUI.

/**
     * Create a shell and init the mapper into it.
     * 
     * @param display
     * @return the created shell
     */
public Shell createUI(Display display) {
    Shell shell = new Shell(display, SWT.APPLICATION_MODAL | SWT.BORDER | SWT.RESIZE | SWT.CLOSE | SWT.MIN | SWT.MAX | SWT.TITLE);
    if (!MapperMain.isStandAloneMode()) {
        IComponent component = connector.getComponent();
        shell.setImage(CoreImageProvider.getComponentIcon(component, ICON_SIZE.ICON_32));
    }
    // Shell shell = new Shell(display);
    // shell.setImage(ImageProviderMapper.getImage(ImageInfo.MAPPER_ICON));
    IBrandingService brandingService = (IBrandingService) GlobalServiceRegister.getDefault().getService(IBrandingService.class);
    String productName = brandingService.getFullProductName();
    //$NON-NLS-1$ //$NON-NLS-2$
    shell.setText(productName + " - " + connector.getComponent().getName() + " - " + connector.getUniqueName());
    ExternalDbMapUiProperties uiProperties = mapperManager.getUiManager().getUiProperties();
    Rectangle boundsMapper = uiProperties.getBoundsMapper();
    if (uiProperties.isShellMaximized()) {
        shell.setMaximized(uiProperties.isShellMaximized());
    } else {
        // // move shell at outer of display zone to avoid visual effect on loading
        // Rectangle tmpBoundsMapper = new Rectangle(-boundsMapper.width, boundsMapper.y, boundsMapper.width,
        // boundsMapper.height);
        // shell.setBounds(tmpBoundsMapper);
        boundsMapper = uiProperties.getBoundsMapper();
        if (boundsMapper.x < 0) {
            boundsMapper.x = 0;
        }
        if (boundsMapper.y < 0) {
            boundsMapper.y = 0;
        }
        shell.setBounds(boundsMapper);
    }
    createUI(shell);
    shell.open();
    return shell;
}
Also used : Shell(org.eclipse.swt.widgets.Shell) IComponent(org.talend.core.model.components.IComponent) Rectangle(org.eclipse.swt.graphics.Rectangle) IBrandingService(org.talend.core.ui.branding.IBrandingService) ExternalDbMapUiProperties(org.talend.designer.dbmap.external.data.ExternalDbMapUiProperties)

Example 3 with ExternalDbMapUiProperties

use of org.talend.designer.dbmap.external.data.ExternalDbMapUiProperties in project tdi-studio-se by Talend.

the class UIManager method saveCurrentUIProperties.

/**
     * DOC amaumont Comment method "saveUiProperties".
     */
private void saveCurrentUIProperties() {
    uiProperties = new ExternalDbMapUiProperties();
    uiProperties.setWeightsMainSashForm(mapperUI.getMainSashForm().getWeights());
    uiProperties.setWeightsDatasFlowViewSashForm(mapperUI.getDatasFlowViewSashForm().getWeights());
    uiProperties.setShellMaximized(getMapperContainer().getShell().getMaximized());
    if (!uiProperties.isShellMaximized()) {
        uiProperties.setBoundsMapper(getMapperContainer().getBounds());
    }
}
Also used : ExternalDbMapUiProperties(org.talend.designer.dbmap.external.data.ExternalDbMapUiProperties)

Aggregations

ExternalDbMapUiProperties (org.talend.designer.dbmap.external.data.ExternalDbMapUiProperties)3 SashForm (org.eclipse.swt.custom.SashForm)1 Rectangle (org.eclipse.swt.graphics.Rectangle)1 GridData (org.eclipse.swt.layout.GridData)1 GridLayout (org.eclipse.swt.layout.GridLayout)1 Display (org.eclipse.swt.widgets.Display)1 Shell (org.eclipse.swt.widgets.Shell)1 AsynchronousThreading (org.talend.commons.ui.runtime.thread.AsynchronousThreading)1 IComponent (org.talend.core.model.components.IComponent)1 IBrandingService (org.talend.core.ui.branding.IBrandingService)1 DropTargetOperationListener (org.talend.designer.abstractmap.ui.listener.DropTargetOperationListener)1 UIManager (org.talend.designer.dbmap.managers.UIManager)1 InputTable (org.talend.designer.dbmap.model.table.InputTable)1 FooterComposite (org.talend.designer.dbmap.ui.footer.FooterComposite)1 TabFolderEditors (org.talend.designer.dbmap.ui.tabs.TabFolderEditors)1 DataMapTableView (org.talend.designer.dbmap.ui.visualmap.table.DataMapTableView)1 InputDataMapTableView (org.talend.designer.dbmap.ui.visualmap.table.InputDataMapTableView)1 OutputDataMapTableView (org.talend.designer.dbmap.ui.visualmap.table.OutputDataMapTableView)1