View Javadoc

1   /*
2    * This file is a part of CAST project.
3    * (c) Copyright 2007, AGH University of Science & Technology
4    * https://caribou.iisg.agh.edu.pl/trac/cast
5    *
6    * Licensed under the Eclipse Public License, Version 1.0 (the "License").
7    * You may not use this file except in compliance with the License.
8    * You may obtain a copy of the License at
9    * http://www.eclipse.org/legal/epl-v10.html
10   */
11  /*
12   * File: ITemplateManagementView.java
13   * Created: 2009-09-16
14   * Author: kpietak
15   * $Id$
16   */
17  
18  package pl.edu.agh.cast.importer.wizard.template;
19  
20  import java.util.Collection;
21  
22  import pl.edu.agh.cast.importer.base.template.IImportTemplate;
23  import pl.edu.agh.cast.importer.base.template.exception.TemplateException;
24  
25  /**
26   * An interface which describes view template management view.
27   * 
28   * @author AGH CAST Team
29   */
30  public interface ITemplateManagementView {
31  
32  	/**
33  	 * Initializes the view with presenter.
34  	 * 
35  	 * @param presenter
36  	 *            a presenter
37  	 */
38  	void initialize(TemplateManagementPresenter presenter);
39  
40  	/**
41  	 * Sets list of import template groups as an input.
42  	 * 
43  	 * @param groups
44  	 *            collection of template groups
45  	 */
46  	void setInput(Collection<TemplateGroupTreeEntry> groups);
47  
48  	/**
49  	 * Adds template selection listener.
50  	 * 
51  	 * @param listener
52  	 *            the template selection listener
53  	 */
54  	public void addTemplateSelecionListener(final ITemplateSelectionListener listener);
55  
56  	/**
57  	 * Removes template selection listener.
58  	 * 
59  	 * @param listener
60  	 *            the template selection listener
61  	 */
62  	public void removeTemplateSelectionListener(final ITemplateSelectionListener listener);
63  
64  	// BEGIN Handle user notifications
65  
66  	/**
67  	 * Notifies user that no template is selected while trying to remove one.
68  	 */
69  	public void showNoTemplateSelectedInfo();
70  
71  	/**
72  	 * Notifies user that an error occurred removing a given template.
73  	 * 
74  	 * @param template
75  	 *            template which should be removed
76  	 * @param e
77  	 *            an error
78  	 */
79  	public void showCannotRemoveTemplateError(IImportTemplate template, TemplateException e);
80  
81  	/**
82  	 * Asks user if he/she wants to remove a given template.
83  	 * 
84  	 * @param template
85  	 *            template to remove
86  	 * @return <code>SWT.YES</code> if user wants to remove the template
87  	 */
88  	public int showRemoveTemplateConfirmationQuestion(IImportTemplate template);
89  
90  	// END Handle user notifications
91  
92  }