Search in sources :

Example 41 with IViewReference

use of org.eclipse.ui.IViewReference in project cubrid-manager by CUBRID.

the class LayoutUtil method closeAllEditorAndView.

/**
	 * 
	 * Close all opened editor and view part
	 * 
	 */
public static void closeAllEditorAndView() {
    IWorkbenchPage page = getActivePage();
    if (page == null) {
        return;
    }
    page.closeAllEditors(true);
    IViewReference[] viewRef = page.getViewReferences();
    for (int i = 0, n = viewRef.length; i < n; i++) {
        page.hideView(viewRef[i]);
    }
}
Also used : IViewReference(org.eclipse.ui.IViewReference) IWorkbenchPage(org.eclipse.ui.IWorkbenchPage)

Example 42 with IViewReference

use of org.eclipse.ui.IViewReference in project ACS by ACS-Community.

the class CategoriesView method updateName.

public void updateName() {
    String[] lststr = _categoriesList.getSelection();
    int[] lstsel = _categoriesList.getSelectionIndices();
    if (lststr == null || lststr.length == 0)
        return;
    if (lstsel == null || lstsel.length == 0)
        return;
    String tmp = lststr[0];
    int sel = lstsel[0];
    if (tmp.startsWith("*"))
        tmp = (String) _categoriesList.getData();
    Category c = _categoryManager.getCategoryByPath(tmp);
    if (c == null)
        return;
    Category ci = new Category();
    if (_pathText.getText().isEmpty()) {
        _errorMessageLabel.setText("Category Path Missing!");
        return;
    }
    if (_pathText.getText().contains(" ")) {
        _errorMessageLabel.setText("Invalid Category Path. No spaces allowed.");
        return;
    }
    ci.setPath(_pathText.getText());
    if (_descriptionText.getText().isEmpty()) {
        _errorMessageLabel.setText("Category Description is Missing!");
        return;
    }
    ci.setDescription(_descriptionText.getText());
    ci.setIsDefault(c.getIsDefault());
    ci.setAlarms(c.getAlarms());
    _errorMessageLabel.setText("");
    try {
        _categoryManager.updateCategory(c, ci);
        if (ci.getIsDefault())
            _categoriesList.setItem(sel, "* " + _pathText.getText());
        else
            _categoriesList.setItem(sel, _pathText.getText());
        sortCategoryList();
        if (tmp.compareTo(ci.getPath()) != 0) {
            IWorkbenchWindow _window = getViewSite().getWorkbenchWindow();
            IViewReference[] views = _window.getActivePage().getViewReferences();
            IMyViewPart view = ((IMyViewPart) views[3].getView(false));
            //view.refreshContents();
            view.fillWidgets();
        }
    } catch (IllegalOperationException e) {
        _errorMessageLabel.setText(e.getMessage());
    } catch (NullPointerException e) {
        _errorMessageLabel.setText(e.getMessage());
    }
}
Also used : IWorkbenchWindow(org.eclipse.ui.IWorkbenchWindow) Category(alma.acs.alarmsystem.generated.Category) IViewReference(org.eclipse.ui.IViewReference) IllegalOperationException(cl.utfsm.acs.acg.core.IllegalOperationException)

Example 43 with IViewReference

use of org.eclipse.ui.IViewReference in project ACS by ACS-Community.

the class CategoriesView method createViewWidgets.

private void createViewWidgets(Composite parent) {
    SashForm sash = new SashForm(parent, SWT.HORIZONTAL);
    sash.setLayout(new FillLayout());
    /* Left pane */
    Composite categoriesComp = new Composite(sash, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.numColumns = 1;
    categoriesComp.setLayout(layout);
    _listGroup = new Group(categoriesComp, SWT.SHADOW_ETCHED_IN);
    GridData gd = new GridData();
    gd.horizontalAlignment = SWT.FILL;
    gd.verticalAlignment = SWT.FILL;
    gd.grabExcessHorizontalSpace = true;
    gd.grabExcessVerticalSpace = true;
    _listGroup.setLayoutData(gd);
    GridLayout gl = new GridLayout();
    gl.numColumns = 1;
    _listGroup.setLayout(gl);
    _listGroup.setText("Categories List");
    _categoriesList = new List(_listGroup, SWT.BORDER | SWT.V_SCROLL);
    _categoriesList.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    _categoriesList.addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }

        public void widgetSelected(SelectionEvent e) {
            Control c = _compInitial.getChildren()[0];
            if (c instanceof Label) {
                c.dispose();
            }
            _comp.setVisible(true);
            _comp.layout();
            /* and is shown with a "*" in the list */
            if (_categoriesList.getSelection() == null || _categoriesList.getSelection().length == 0) {
                _comp.setVisible(false);
                _comp.layout();
                return;
            }
            String categoryName = _categoriesList.getSelection()[0];
            if (categoryName.startsWith("*"))
                fillCategoryInfo((String) _categoriesList.getData());
            else
                fillCategoryInfo(categoryName);
            if (_ffList.getItemCount() == 0)
                _errorMessageLabel.setText("You have to select at least one Fault Family");
        }
    });
    /* Add and remove buttons */
    Composite categoriesButtonsComp = new Composite(categoriesComp, SWT.NONE);
    layout = new GridLayout();
    layout.numColumns = 2;
    categoriesButtonsComp.setLayout(layout);
    categoriesButtonsComp.setLayoutData(new GridData(SWT.FILL, SWT.BOTTOM, true, false));
    _addCategoryButton = new Button(categoriesButtonsComp, SWT.None);
    _addCategoryButton.setText("Add");
    _addCategoryButton.setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_ADD));
    _deleteCategoryButton = new Button(categoriesButtonsComp, SWT.None);
    _deleteCategoryButton.setText("Delete");
    _deleteCategoryButton.setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_ETOOL_DELETE));
    Listener addCategory = new Listener() {

        public void handleEvent(Event event) {
            InputDialog dialog = new InputDialog(CategoriesView.this.getViewSite().getShell(), "New Category", "Enter the Category name", null, new IInputValidator() {

                public String isValid(String newText) {
                    if (newText.trim().compareTo("") == 0)
                        return "The name is empty";
                    return null;
                }
            });
            dialog.setBlockOnOpen(true);
            dialog.open();
            int returnCode = dialog.getReturnCode();
            if (returnCode == InputDialog.OK) {
                if (_categoryManager.getCategoryByPath(dialog.getValue()) != null) {
                    ErrorDialog error = new ErrorDialog(CategoriesView.this.getViewSite().getShell(), "Category already exist", "The Category " + dialog.getValue() + " already exists in the current configuration", new Status(IStatus.ERROR, "cl.utfsm.acs.acg", "The Category " + dialog.getValue() + " already exists in the current configuration"), IStatus.ERROR);
                    error.setBlockOnOpen(true);
                    error.open();
                    return;
                }
                Category newCategory = new Category();
                newCategory.setPath(dialog.getValue());
                InputDialog dialog2 = new InputDialog(CategoriesView.this.getViewSite().getShell(), "Category Description", "Enter the Description for the Category", null, new IInputValidator() {

                    public String isValid(String newText) {
                        if (newText.trim().compareTo("") == 0)
                            return "The name is empty";
                        return null;
                    }
                });
                dialog2.setBlockOnOpen(true);
                dialog2.open();
                String description = dialog2.getValue();
                if (description == null)
                    return;
                if (returnCode == InputDialog.OK)
                    newCategory.setDescription(description);
                java.util.List<String> ffnames = sortFullFaultFamilyList();
                ListSelectionDialog dialog3 = new ListSelectionDialog(PlatformUI.getWorkbench().getDisplay().getActiveShell(), ffnames, new ArrayContentProvider(), new LabelProvider(), "");
                dialog3.setTitle("Fault Family Selection");
                dialog3.setMessage("List of Fault Families");
                dialog3.setBlockOnOpen(true);
                dialog3.open();
                Object[] ffselected = dialog3.getResult();
                if (ffselected == null)
                    return;
                if (ffselected.length == 0) {
                    try {
                        _categoryManager.addCategory(newCategory);
                    } catch (IllegalOperationException e) {
                        ErrorDialog error = new ErrorDialog(CategoriesView.this.getViewSite().getShell(), "Category already exist", "The Category " + dialog.getValue() + " already exists in the current configuration", new Status(IStatus.ERROR, "cl.utfsm.acs.acg", e.getMessage()), IStatus.ERROR);
                        error.setBlockOnOpen(true);
                        error.open();
                        return;
                    }
                } else {
                    Alarms alarms = new Alarms();
                    for (int i = 0; i < ffselected.length; i++) {
                        try {
                            alarms.addFaultFamily(_alarmManager.getFaultFamily((String) ffselected[i]).getName());
                        //alarms.setFaultFamily(i, (String)ffselected[i]);					  		
                        } catch (NullPointerException e) {
                        }
                        newCategory.setAlarms(alarms);
                    }
                    try {
                        _categoryManager.addCategory(newCategory);
                    } catch (IllegalOperationException e) {
                        ErrorDialog error = new ErrorDialog(CategoriesView.this.getViewSite().getShell(), "Category already exist", "The Category " + dialog.getValue() + " already exists in the current configuration", new Status(IStatus.ERROR, "cl.utfsm.acs.acg", e.getMessage()), IStatus.ERROR);
                        error.setBlockOnOpen(true);
                        error.open();
                        return;
                    }
                }
                String[] items = new String[1];
                items[0] = dialog.getValue();
                refreshContents();
                _categoriesList.setSelection(items);
                Event e = new Event();
                _categoriesList.notifyListeners(SWT.Selection, e);
                IWorkbenchWindow _window = getViewSite().getWorkbenchWindow();
                IViewReference[] views = _window.getActivePage().getViewReferences();
                IMyViewPart view = ((IMyViewPart) views[3].getView(false));
                //view.refreshContents();
                view.fillWidgets();
                if (_ffList.getItemCount() == 0)
                    _errorMessageLabel.setText("You have to select at least one Fault Family");
            } else
                return;
        }
    };
    _addCategoryButton.addListener(SWT.Selection, addCategory);
    Listener deleteCategory = new Listener() {

        public void handleEvent(Event event) {
            boolean choice = MessageDialog.openQuestion(CategoriesView.this.getViewSite().getShell(), "Confirmation", "Are you sure you want to delete this Category");
            if (choice == true) {
                String[] tmp = _categoriesList.getSelection();
                if (tmp == null || tmp.length == 0) {
                    ErrorDialog error = new ErrorDialog(CategoriesView.this.getViewSite().getShell(), "Empty selection", "There are no Categories selected to be deleted", new Status(IStatus.ERROR, "cl.utfsm.acs.acg", ""), IStatus.ERROR);
                    error.setBlockOnOpen(true);
                    error.open();
                    return;
                }
                String category = tmp[0];
                if (category.startsWith("*")) {
                    ErrorDialog error = new ErrorDialog(CategoriesView.this.getViewSite().getShell(), "Cannot delete Category", "The Category cannot be deleted", new Status(IStatus.ERROR, "cl.utfsm.acs.acg", "There must be one default category. Please select a different one before removing this category."), IStatus.ERROR);
                    error.setBlockOnOpen(true);
                    error.open();
                    return;
                }
                try {
                    _categoryManager.deleteCategory(_categoryManager.getCategoryByPath(category));
                } catch (IllegalOperationException e) {
                    ErrorDialog error = new ErrorDialog(CategoriesView.this.getViewSite().getShell(), "Cannot delete Category", "The Category cannot be deleted", new Status(IStatus.ERROR, "cl.utfsm.acs.acg", e.getMessage()), IStatus.ERROR);
                    error.setBlockOnOpen(true);
                    error.open();
                    return;
                }
                String[] items = null;
                if (_categoriesList.getSelection() != null && _categoriesList.getSelection().length != 0) {
                    items = _categoriesList.getSelection();
                    refreshContents();
                    if (items == null)
                        if (_categoriesList.getItemCount() > 0)
                            _categoriesList.setSelection(0);
                } else
                    _categoriesList.setSelection(items);
                Event e = new Event();
                _categoriesList.notifyListeners(SWT.Selection, e);
                IWorkbenchWindow _window = getViewSite().getWorkbenchWindow();
                IViewReference[] views = _window.getActivePage().getViewReferences();
                IMyViewPart view = ((IMyViewPart) views[3].getView(false));
                //view.refreshContents();
                view.fillWidgets();
            }
        }
    };
    _deleteCategoryButton.addListener(SWT.Selection, deleteCategory);
    /* To delete a FF from a given Category */
    Listener deleteFaultFamily = new Listener() {

        public void handleEvent(Event event) {
            Category c = _categoryManager.getCategoryByPath(_pathText.getText());
            try {
                String[] ff = c.getAlarms().getFaultFamily();
                Alarms alarms = new Alarms();
                String[] temp = _ffList.getSelection();
                //int j = 0;
                for (int i = 0; i < ff.length; i++) {
                    if (ff[i].compareTo(temp[0]) == 0) {
                        _ffList.remove(temp[0]);
                        c.getAlarms().removeFaultFamily(ff[i]);
                    } else {
                        alarms.addFaultFamily(ff[i]);
                    //alarms.setFaultFamily(j, ff[i]);
                    //j++;
                    }
                }
                c.setAlarms(alarms);
                _categoryManager.updateCategory(c, c);
                if (_ffList.getItemCount() == 0)
                    _errorMessageLabel.setText("You have to select at least one Fault Family");
                IWorkbenchWindow _window = getViewSite().getWorkbenchWindow();
                IViewReference[] views = _window.getActivePage().getViewReferences();
                IMyViewPart view = ((IMyViewPart) views[3].getView(false));
                //view.refreshContents();
                view.fillWidgets();
                boolean inUse = false;
                boolean def = false;
                String defCat = "";
                for (Category cat : _categoryManager.getAllCategories()) {
                    String[] ffs = cat.getAlarms().getFaultFamily();
                    for (String tff : ffs) {
                        if (tff.compareTo(temp[0]) == 0)
                            inUse = true;
                    }
                    if (cat.getIsDefault()) {
                        def = true;
                        defCat = cat.getPath();
                    }
                }
                if (!inUse) {
                    String msg;
                    if (def)
                        msg = "Default category: " + defCat;
                    else
                        msg = "No default category";
                    ErrorDialog error = new ErrorDialog(CategoriesView.this.getViewSite().getShell(), "Fault Family isn't in any Categoty", "The Fault Family is not part of any Category", new Status(IStatus.WARNING, "cl.utfsm.acs.acg", "The Fault Family " + temp[0] + " is not part of any Category (" + msg + ")"), IStatus.WARNING);
                    error.setBlockOnOpen(true);
                    error.open();
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    };
    /* To delete all FF from a given Category */
    Listener deleteAllFaultFamily = new Listener() {

        public void handleEvent(Event event) {
            Category c = _categoryManager.getCategoryByPath(_pathText.getText());
            try {
                String[] ff = c.getAlarms().getFaultFamily();
                Alarms alarms = new Alarms();
                for (int i = 0; i < ff.length; i++) {
                    _ffList.remove(ff[i]);
                    c.getAlarms().removeFaultFamily(ff[i]);
                }
                c.setAlarms(alarms);
                _categoryManager.updateCategory(c, c);
                IWorkbenchWindow _window = getViewSite().getWorkbenchWindow();
                IViewReference[] views = _window.getActivePage().getViewReferences();
                IMyViewPart view = ((IMyViewPart) views[3].getView(false));
                //view.refreshContents();
                view.fillWidgets();
                java.util.List<String> ffList = new ArrayList<String>();
                boolean def = false;
                String defCat = "";
                for (String cff : ff) {
                    Boolean inUse = false;
                    for (Category cat : _categoryManager.getAllCategories()) {
                        String[] ffs = cat.getAlarms().getFaultFamily();
                        for (String tff : ffs) {
                            if (tff.compareTo(cff) == 0)
                                inUse = true;
                        }
                        if (cat.getIsDefault()) {
                            def = true;
                            defCat = cat.getPath();
                        }
                    }
                    if (!inUse)
                        ffList.add(cff);
                }
                if (ffList.size() > 0) {
                    String list = "";
                    for (String ffel : ffList) list = list + ffel + ", ";
                    list.substring(0, list.length() - 2);
                    String msg;
                    if (def)
                        msg = "Default category: " + defCat;
                    else
                        msg = "No default category";
                    ErrorDialog error = new ErrorDialog(CategoriesView.this.getViewSite().getShell(), "Fault Family isn't in any Categoty", "The Fault Family is not part of any Category", new Status(IStatus.WARNING, "cl.utfsm.acs.acg", "The Fault Family(ies) " + list + " is not part of any Category (" + msg + ")"), IStatus.WARNING);
                    error.setBlockOnOpen(true);
                    error.open();
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            if (_ffList.getItemCount() == 0)
                _errorMessageLabel.setText("You have to select at least one Fault Family");
        }
    };
    /* To add a new FF to a Category */
    Listener addFaultFamily = new Listener() {

        public void handleEvent(Event event) {
            Category c = _categoryManager.getCategoryByPath(_pathText.getText());
            java.util.List<String> currentffs = new ArrayList<String>();
            try {
                String[] ffss = c.getAlarms().getFaultFamily();
                for (int i = 0; i < ffss.length; i++) {
                    currentffs.add(ffss[i]);
                }
            } catch (NullPointerException e) {
                e.printStackTrace();
            }
            java.util.List<String> ffnames = sortFullFaultFamilyList();
            ListSelectionDialog dialog3 = new ListSelectionDialog(PlatformUI.getWorkbench().getDisplay().getActiveShell(), ffnames, new ArrayContentProvider(), new LabelProvider(), "");
            dialog3.setTitle("Fault Family Selection");
            dialog3.setMessage("List of Fault Families");
            dialog3.setBlockOnOpen(true);
            if (currentffs != null)
                dialog3.setInitialElementSelections(currentffs);
            dialog3.open();
            if (dialog3.getReturnCode() == InputDialog.OK) {
                Object[] ffselected = dialog3.getResult();
                try {
                    Alarms alarms = new Alarms();
                    for (int i = 0; i < ffselected.length; i++) alarms.addFaultFamily(_alarmManager.getFaultFamily((String) ffselected[i]).getName());
                    c.setAlarms(alarms);
                    _categoryManager.updateCategory(c, c);
                    sortCategoryFaultFamilyList(c.getPath());
                } catch (Exception e) {
                    e.printStackTrace();
                }
                String[] items = _categoriesList.getSelection();
                refreshContents();
                _categoriesList.setSelection(items);
                Event e = new Event();
                _categoriesList.notifyListeners(SWT.Selection, e);
                IWorkbenchWindow _window = getViewSite().getWorkbenchWindow();
                IViewReference[] views = _window.getActivePage().getViewReferences();
                IMyViewPart view = ((IMyViewPart) views[3].getView(false));
                //view.refreshContents();
                view.fillWidgets();
                if (_ffList.getItemCount() == 0)
                    _errorMessageLabel.setText("You have to select at least one Fault Family");
            }
        }
    };
    /* Initial label when no categories are selected */
    _compInitial = new Composite(sash, SWT.NONE);
    _compInitial.setLayout(new GridLayout());
    new Label(_compInitial, SWT.NONE).setText("Select a category");
    /* Fill the right pane Group that will be shown when
		 * a category is selected in the left list */
    layout = new GridLayout();
    layout.numColumns = 2;
    GridData gridData = new GridData();
    gridData.grabExcessHorizontalSpace = true;
    gridData.grabExcessVerticalSpace = true;
    gridData.horizontalAlignment = SWT.FILL;
    gridData.verticalAlignment = SWT.FILL;
    _comp = new Group(_compInitial, SWT.SHADOW_ETCHED_IN);
    _comp.setText("Category information");
    _comp.setLayout(layout);
    _comp.setLayoutData(gridData);
    _pathLabel = new Label(_comp, SWT.NONE);
    _pathLabel.setText("Category name");
    _pathText = new Text(_comp, SWT.SINGLE | SWT.BORDER);
    gridData = new GridData();
    gridData.horizontalAlignment = SWT.FILL;
    gridData.grabExcessHorizontalSpace = true;
    _pathText.setLayoutData(gridData);
    _descriptionLabel = new Label(_comp, SWT.NONE);
    _descriptionLabel.setText("Category description");
    _descriptionText = new Text(_comp, SWT.SINGLE | SWT.BORDER);
    gridData = new GridData();
    gridData.horizontalAlignment = SWT.FILL;
    gridData.grabExcessHorizontalSpace = true;
    _descriptionText.setLayoutData(gridData);
    _isDefaultLabel = new Label(_comp, SWT.NONE);
    _isDefaultLabel.setText("Is default category?");
    _isDefaultCheck = new Button(_comp, SWT.CHECK);
    _ffLabel = new Label(_comp, SWT.NONE);
    _ffLabel.setText("Fault Families:");
    gridData = new GridData();
    gridData.verticalAlignment = SWT.TOP;
    gridData.horizontalSpan = 2;
    _ffLabel.setLayoutData(gridData);
    _ffList = new List(_comp, SWT.V_SCROLL | SWT.BORDER);
    gridData = new GridData();
    gridData.horizontalAlignment = SWT.FILL;
    gridData.grabExcessHorizontalSpace = true;
    gridData.verticalAlignment = SWT.FILL;
    gridData.grabExcessVerticalSpace = true;
    gridData.horizontalSpan = 2;
    _ffList.setLayoutData(gridData);
    _errorMessageLabel = new Label(_comp, SWT.NONE);
    _errorMessageLabel.setText("A");
    _errorMessageLabel.setForeground(getViewSite().getShell().getDisplay().getSystemColor(SWT.COLOR_RED));
    gd = new GridData();
    gd.grabExcessHorizontalSpace = true;
    gd.horizontalAlignment = SWT.FILL;
    gd.horizontalSpan = 2;
    _errorMessageLabel.setLayoutData(gd);
    /* Adding a click right menu to modify the FF of a given Category */
    Menu treePopUp1 = new Menu(parent);
    MenuItem treePopUpAddFF = new MenuItem(treePopUp1, SWT.PUSH);
    treePopUpAddFF.setText("Add a new Fault Family");
    treePopUpAddFF.addListener(SWT.Selection, addFaultFamily);
    MenuItem treePopUpDeleteFF = new MenuItem(treePopUp1, SWT.PUSH);
    treePopUpDeleteFF.setText("Delete this Fault Family");
    treePopUpDeleteFF.addListener(SWT.Selection, deleteFaultFamily);
    MenuItem treePopUpDeleteAllFF = new MenuItem(treePopUp1, SWT.PUSH);
    treePopUpDeleteAllFF.setText("Delete All Fault Families");
    treePopUpDeleteAllFF.addListener(SWT.Selection, deleteAllFaultFamily);
    _ffList.setMenu(treePopUp1);
    /* Adding a click menu to add/delete Categories */
    Menu treePopUp2 = new Menu(parent);
    MenuItem treePopUpaddCategory = new MenuItem(treePopUp2, SWT.PUSH);
    treePopUpaddCategory.setText("Add a new Category");
    treePopUpaddCategory.addListener(SWT.Selection, addCategory);
    MenuItem treePopUpdeleteCategory = new MenuItem(treePopUp2, SWT.PUSH);
    treePopUpdeleteCategory.setText("Delete this Category");
    treePopUpdeleteCategory.addListener(SWT.Selection, deleteCategory);
    _categoriesList.setMenu(treePopUp2);
    _comp.setVisible(false);
    /* Set a weight for each side of the view */
    sash.setWeights(new int[] { 3, 5 });
    Listener updateCategory = new Listener() {

        public void handleEvent(Event e) {
            updateName();
        }
    };
    _descriptionText.addListener(SWT.Modify, updateCategory);
    _pathText.addListener(SWT.Modify, updateCategory);
    _isDefaultCheck.addListener(SWT.Selection, new Listener() {

        public void handleEvent(Event e) {
            String category;
            if (_categoriesList.getSelection()[0].startsWith("*"))
                category = (String) _categoriesList.getData();
            else
                category = _categoriesList.getSelection()[0];
            if (_categoryManager.getCategoryByPath(category).getIsDefault() == true) {
                _isDefaultCheck.setSelection(true);
                MessageBox messageBox = new MessageBox(PlatformUI.getWorkbench().getDisplay().getActiveShell(), SWT.ICON_ERROR);
                messageBox.setMessage("The Default Category always must exist, you can only change it");
                messageBox.open();
            } else {
                _categoryManager.updateDefaultCategory(_categoryManager.getCategoryByPath(_categoriesList.getSelection()[0]));
                String[] items = _categoriesList.getSelection();
                refreshContents();
                items[0] = "* " + items[0];
                _categoriesList.setSelection(items);
                Event e2 = new Event();
                _categoriesList.notifyListeners(SWT.Selection, e2);
                IWorkbenchWindow _window = getViewSite().getWorkbenchWindow();
                IViewReference[] views = _window.getActivePage().getViewReferences();
                IMyViewPart view = ((IMyViewPart) views[3].getView(false));
                //view.refreshContents();
                view.fillWidgets();
            }
        }
    });
}
Also used : Group(org.eclipse.swt.widgets.Group) Listener(org.eclipse.swt.widgets.Listener) SelectionListener(org.eclipse.swt.events.SelectionListener) Category(alma.acs.alarmsystem.generated.Category) Label(org.eclipse.swt.widgets.Label) ArrayList(java.util.ArrayList) GridLayout(org.eclipse.swt.layout.GridLayout) Control(org.eclipse.swt.widgets.Control) Button(org.eclipse.swt.widgets.Button) IViewReference(org.eclipse.ui.IViewReference) SelectionEvent(org.eclipse.swt.events.SelectionEvent) ArrayList(java.util.ArrayList) List(org.eclipse.swt.widgets.List) Menu(org.eclipse.swt.widgets.Menu) IStatus(org.eclipse.core.runtime.IStatus) Status(org.eclipse.core.runtime.Status) IWorkbenchWindow(org.eclipse.ui.IWorkbenchWindow) InputDialog(org.eclipse.jface.dialogs.InputDialog) Composite(org.eclipse.swt.widgets.Composite) Alarms(alma.acs.alarmsystem.generated.Alarms) ErrorDialog(org.eclipse.jface.dialogs.ErrorDialog) Text(org.eclipse.swt.widgets.Text) MenuItem(org.eclipse.swt.widgets.MenuItem) FillLayout(org.eclipse.swt.layout.FillLayout) IllegalOperationException(cl.utfsm.acs.acg.core.IllegalOperationException) IllegalOperationException(cl.utfsm.acs.acg.core.IllegalOperationException) MessageBox(org.eclipse.swt.widgets.MessageBox) SashForm(org.eclipse.swt.custom.SashForm) GridData(org.eclipse.swt.layout.GridData) ArrayContentProvider(org.eclipse.jface.viewers.ArrayContentProvider) Event(org.eclipse.swt.widgets.Event) SelectionEvent(org.eclipse.swt.events.SelectionEvent) ListSelectionDialog(org.eclipse.ui.dialogs.ListSelectionDialog) LabelProvider(org.eclipse.jface.viewers.LabelProvider) SelectionListener(org.eclipse.swt.events.SelectionListener) IInputValidator(org.eclipse.jface.dialogs.IInputValidator)

Example 44 with IViewReference

use of org.eclipse.ui.IViewReference in project cubrid-manager by CUBRID.

the class BrokerMonitorPart method performRequest.

/**
	 * @see org.eclipse.gef.editparts.AbstractEditPart#performRequest(org.eclipse.gef.Request)
	 * @param req Request
	 */
public void performRequest(Request req) {
    if (req.getType() == RequestConstants.REQ_OPEN) {
        BrokerNode bn = (BrokerNode) getModel();
        String brokerName = bn.getBrokerName();
        HostNode hn = bn.getParent();
        IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
        if (window == null) {
            return;
        }
        IWorkbenchPage page = window.getActivePage();
        if (page == null) {
            return;
        }
        String secondaryId = new StringBuffer(brokerName + "@" + hn.getUserName()).append("&").append(hn.getIp()).append("&").append(hn.getPort()).toString();
        IViewReference viewReference = page.findViewReference(BrokerDashboardViewPart.ID, secondaryId);
        if (viewReference == null) {
            try {
                IViewPart viewPart = page.showView(BrokerDashboardViewPart.ID, secondaryId, IWorkbenchPage.VIEW_ACTIVATE);
                ((BrokerDashboardViewPart) viewPart).init((BrokerNode) getModel());
            } catch (PartInitException ex) {
                viewReference = null;
            }
        } else {
            IViewPart viewPart = viewReference.getView(false);
            window.getActivePage().bringToTop(viewPart);
            ((BrokerDashboardViewPart) viewPart).init((BrokerNode) getModel());
        }
    }
}
Also used : BrokerNode(com.cubrid.cubridmanager.ui.mondashboard.editor.model.BrokerNode) IWorkbenchWindow(org.eclipse.ui.IWorkbenchWindow) IViewPart(org.eclipse.ui.IViewPart) BrokerDashboardViewPart(com.cubrid.cubridmanager.ui.mondashboard.editor.BrokerDashboardViewPart) HostNode(com.cubrid.cubridmanager.ui.mondashboard.editor.model.HostNode) IViewReference(org.eclipse.ui.IViewReference) IWorkbenchPage(org.eclipse.ui.IWorkbenchPage) PartInitException(org.eclipse.ui.PartInitException)

Example 45 with IViewReference

use of org.eclipse.ui.IViewReference in project cubrid-manager by CUBRID.

the class DatabaseMonitorPart method performRequest.

/**
	 * @see org.eclipse.gef.editparts.AbstractEditPart#performRequest(org.eclipse.gef.Request)
	 * @param req Request
	 */
public void performRequest(Request req) {
    if (req.getType() == RequestConstants.REQ_OPEN) {
        DatabaseNode databaseNode = (DatabaseNode) getModel();
        if (!databaseNode.isConnected()) {
            return;
        }
        IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
        if (window == null) {
            return;
        }
        IWorkbenchPage page = window.getActivePage();
        if (page == null) {
            return;
        }
        HostNode hn = databaseNode.getParent();
        String secondaryId = new StringBuffer(databaseNode.getDbName()).append("&").append(hn.getUserName()).append("&").append(hn.getIp()).append("&").append(hn.getPort()).toString();
        IViewReference viewReference = page.findViewReference(DatabaseDashboardViewPart.ID, secondaryId);
        if (viewReference == null) {
            try {
                IViewPart viewPart = page.showView(DatabaseDashboardViewPart.ID, secondaryId, IWorkbenchPage.VIEW_ACTIVATE);
                ((DatabaseDashboardViewPart) viewPart).init(databaseNode);
            } catch (PartInitException ex) {
                viewReference = null;
            }
        } else {
            IViewPart viewPart = viewReference.getView(false);
            window.getActivePage().bringToTop(viewPart);
            ((DatabaseDashboardViewPart) viewPart).init(databaseNode);
        }
    }
}
Also used : IWorkbenchWindow(org.eclipse.ui.IWorkbenchWindow) IViewPart(org.eclipse.ui.IViewPart) DatabaseNode(com.cubrid.cubridmanager.ui.mondashboard.editor.model.DatabaseNode) HostNode(com.cubrid.cubridmanager.ui.mondashboard.editor.model.HostNode) IViewReference(org.eclipse.ui.IViewReference) IWorkbenchPage(org.eclipse.ui.IWorkbenchPage) PartInitException(org.eclipse.ui.PartInitException) DatabaseDashboardViewPart(com.cubrid.cubridmanager.ui.mondashboard.editor.DatabaseDashboardViewPart)

Aggregations

IViewReference (org.eclipse.ui.IViewReference)66 IWorkbenchPage (org.eclipse.ui.IWorkbenchPage)48 IViewPart (org.eclipse.ui.IViewPart)37 IWorkbenchWindow (org.eclipse.ui.IWorkbenchWindow)23 PartInitException (org.eclipse.ui.PartInitException)23 IFile (org.eclipse.core.resources.IFile)10 ICubridNode (com.cubrid.common.ui.spi.model.ICubridNode)8 ArrayList (java.util.ArrayList)8 IProgressMonitor (org.eclipse.core.runtime.IProgressMonitor)8 TechnicalException (org.eclipse.titan.log.viewer.exceptions.TechnicalException)8 CubridViewPart (com.cubrid.common.ui.spi.part.CubridViewPart)7 UserException (org.eclipse.titan.log.viewer.exceptions.UserException)7 IOException (java.io.IOException)6 IEditorInput (org.eclipse.ui.IEditorInput)6 IEditorReference (org.eclipse.ui.IEditorReference)6 HostNode (com.cubrid.cubridmanager.ui.mondashboard.editor.model.HostNode)4 ParseException (java.text.ParseException)4 IProject (org.eclipse.core.resources.IProject)4 WorkspaceJob (org.eclipse.core.resources.WorkspaceJob)4 StructuredSelection (org.eclipse.jface.viewers.StructuredSelection)4