1 /*******************************************************************************
2 * Copyright (c) 2011 Ericsson
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * Francois Chouinard - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.linuxtools
.tmf
.ui
.project
.model
;
15 import org
.eclipse
.core
.resources
.IProject
;
16 import org
.eclipse
.core
.resources
.IResourceChangeEvent
;
17 import org
.eclipse
.swt
.widgets
.Display
;
18 import org
.eclipse
.ui
.IViewPart
;
19 import org
.eclipse
.ui
.IViewReference
;
20 import org
.eclipse
.ui
.IWorkbench
;
21 import org
.eclipse
.ui
.IWorkbenchPage
;
22 import org
.eclipse
.ui
.PlatformUI
;
23 import org
.eclipse
.ui
.navigator
.CommonNavigator
;
24 import org
.eclipse
.ui
.navigator
.CommonViewer
;
27 * <b><u>TmfProjectElement</u></b>
30 public class TmfProjectElement
extends TmfProjectModelElement
{
32 // ------------------------------------------------------------------------
34 // ------------------------------------------------------------------------
36 TmfTraceFolder fTraceFolder
= null;
37 TmfExperimentFolder fExperimentFolder
= null;
39 // ------------------------------------------------------------------------
41 // ------------------------------------------------------------------------
43 public TmfProjectElement(String name
, IProject project
, ITmfProjectModelElement parent
) {
44 super(name
, project
, parent
);
47 // ------------------------------------------------------------------------
48 // TmfProjectModelElement
49 // ------------------------------------------------------------------------
52 public IProject
getResource() {
53 return (IProject
) fResource
;
57 public void addChild(ITmfProjectModelElement child
) {
58 super.addChild(child
);
59 if (child
instanceof TmfTraceFolder
) {
60 fTraceFolder
= (TmfTraceFolder
) child
;
63 if (child
instanceof TmfExperimentFolder
) {
64 fExperimentFolder
= (TmfExperimentFolder
) child
;
69 // ------------------------------------------------------------------------
71 // ------------------------------------------------------------------------
73 public TmfTraceFolder
getTracesFolder() {
77 public TmfExperimentFolder
getExperimentsFolder() {
78 return fExperimentFolder
;
81 // ------------------------------------------------------------------------
83 // ------------------------------------------------------------------------
86 public void refresh() {
87 Display
.getDefault().asyncExec(new Runnable(){
90 IWorkbench wb
= PlatformUI
.getWorkbench();
91 IWorkbenchPage activePage
= wb
.getActiveWorkbenchWindow().getActivePage();
92 for (IViewReference viewReference
: activePage
.getViewReferences()) {
93 IViewPart viewPart
= viewReference
.getView(false);
94 if (viewPart
instanceof CommonNavigator
) {
95 CommonViewer commonViewer
= ((CommonNavigator
) viewPart
).getCommonViewer();
96 commonViewer
.refresh();
103 public void resourceChanged(IResourceChangeEvent event
) {
104 if (event
.getType() == IResourceChangeEvent
.POST_CHANGE
) {
110 public TmfProjectElement
getProject() {