import java.util.ArrayList;_x000D_
_x000D_
/**_x000D_
 * Presentation houdt de slides in de presentatie bij._x000D_
 * <p>_x000D_
 * In the Presentation's world, page numbers go from 0 to n-1 * <p>_x000D_
 * This program is distributed under the terms of the accompanying_x000D_
 * COPYRIGHT.txt file (which is NOT the GNU General Public License)._x000D_
 * Please read it. Your use of the software constitutes acceptance_x000D_
 * of the terms in the COPYRIGHT.txt file._x000D_
 * @author Ian F. Darwin, ian@darwinsys.com_x000D_
 * @version $Id: Presentation.java,v 1.1 2002/12/17 Gert Florijn_x000D_
 * @version $Id: Presentation.java,v 1.2 2003/11/19 Sylvia Stuurman_x000D_
 * @version $Id: Presentation.java,v 1.3 2004/08/17 Sylvia Stuurman_x000D_
 * @version $Id: Presentation.java,v 1.4 2007/07/16 Sylvia Stuurman_x000D_
 */_x000D_
_x000D_
// Verandering: Presentation wordt een Observable_x000D_
public class Presentation {_x000D_
	private String showTitle; // de titel van de presentatie_x000D_
	private ArrayList<Slide> showList = null; // een ArrayList met de Slides_x000D_
	private int currentSlideNumber = 0; // het slidenummer van de huidige Slide_x000D_
	// Verandering: we kennen slideViewComponent niet meer direct_x000D_
	// private SlideViewerComponent slideViewComponent = null; // de viewcomponent voor de Slides_x000D_
_x000D_
	public Presentation() {_x000D_
		// Verandering: Presentation heeft slideViewComponent nu niet meer als attribuut_x000D_
		//slideViewComponent = null;_x000D_
		clear();_x000D_
	}_x000D_
_x000D_
// Methode die wordt gebruikt door de Controller_x000D_
// om te bepalen wat er getoond wordt._x000D_
	public int getSize() {_x000D_
		return showList.size();_x000D_
	}_x000D_
_x000D_
	public String getTitle() {_x000D_
		return showTitle;_x000D_
	}_x000D_
_x000D_
	public void setTitle(String nt) {_x000D_
		showTitle = nt;_x000D_
	}_x000D_
_x000D_
	// Verandering: deze methode hebben we niet meer nodig_x000D_
	// public void setShowView(SlideViewerComponent slideViewerComponent) {_x000D_
	//  	this.slideViewComponent = slideViewerComponent;_x000D_
	// }_x000D_
_x000D_
// geef het nummer van de huidige slide_x000D_
	public int getSlideNumber() {_x000D_
		return currentSlideNumber;_x000D_
	}_x000D_
_x000D_
// verander het huidige-slide-nummer en laat het aan het window weten._x000D_
	public void setSlideNumber(int number) {_x000D_
		currentSlideNumber = number;_x000D_
		// Verandering: het updaten van de SlideViewerComponent gebeurt nu via het Observer patroon_x000D_
		//if (slideViewComponent != null) {_x000D_
		//	slideViewComponent.update(this, getCurrentSlide());_x000D_
		//}_x000D_
	}_x000D_
_x000D_
// Verwijder de presentatie, om klaar te zijn voor de volgende_x000D_
	void clear() {_x000D_
		showList = new ArrayList<Slide>();_x000D_
		setTitle("New presentation");_x000D_
		setSlideNumber(-1);_x000D_
	}_x000D_
_x000D_
// Voeg een slide toe aan de presentatie_x000D_
	public void append(Slide slide) {_x000D_
		showList.add(slide);_x000D_
	}_x000D_
_x000D_
// Geef een slide met een bepaald slidenummer_x000D_
	public Slide getSlide(int number) {_x000D_
		if (number < 0 || number >= getSize()){_x000D_
			return null;_x000D_
		}_x000D_
		return (Slide)showList.get(number);_x000D_
	}_x000D_
_x000D_
// Geef de huidige Slide_x000D_
	public Slide getCurrentSlide() {_x000D_
		return getSlide(currentSlideNumber);_x000D_
	}_x000D_
}_x000D_

// het slidenummer van de huidige Slide_x000D_
import java.util.ArrayList;_x000D_
_x000D_
/**_x000D_
 * Presentation houdt de slides in de presentatie bij._x000D_
 * <p>_x000D_
 * In the Presentation's world, page numbers go from 0 to n-1 * <p>_x000D_
 * This program is distributed under the terms of the accompanying_x000D_
 * COPYRIGHT.txt file (which is NOT the GNU General Public License)._x000D_
 * Please read it. Your use of the software constitutes acceptance_x000D_
 * of the terms in the COPYRIGHT.txt file._x000D_
 * @author Ian F. Darwin, ian@darwinsys.com_x000D_
 * @version $Id: Presentation.java,v 1.1 2002/12/17 Gert Florijn_x000D_
 * @version $Id: Presentation.java,v 1.2 2003/11/19 Sylvia Stuurman_x000D_
 * @version $Id: Presentation.java,v 1.3 2004/08/17 Sylvia Stuurman_x000D_
 * @version $Id: Presentation.java,v 1.4 2007/07/16 Sylvia Stuurman_x000D_
 */_x000D_
_x000D_
// Verandering: Presentation wordt een Observable_x000D_
public class Presentation {_x000D_
	private String showTitle; // de titel van de presentatie_x000D_
	private ArrayList<Slide> showList = null; // een ArrayList met de Slides_x000D_
	private int currentSlideNumber = 0; // het slidenummer<SUF>
	// Verandering: we kennen slideViewComponent niet meer direct_x000D_
	// private SlideViewerComponent slideViewComponent = null; // de viewcomponent voor de Slides_x000D_
_x000D_
	public Presentation() {_x000D_
		// Verandering: Presentation heeft slideViewComponent nu niet meer als attribuut_x000D_
		//slideViewComponent = null;_x000D_
		clear();_x000D_
	}_x000D_
_x000D_
// Methode die wordt gebruikt door de Controller_x000D_
// om te bepalen wat er getoond wordt._x000D_
	public int getSize() {_x000D_
		return showList.size();_x000D_
	}_x000D_
_x000D_
	public String getTitle() {_x000D_
		return showTitle;_x000D_
	}_x000D_
_x000D_
	public void setTitle(String nt) {_x000D_
		showTitle = nt;_x000D_
	}_x000D_
_x000D_
	// Verandering: deze methode hebben we niet meer nodig_x000D_
	// public void setShowView(SlideViewerComponent slideViewerComponent) {_x000D_
	//  	this.slideViewComponent = slideViewerComponent;_x000D_
	// }_x000D_
_x000D_
// geef het nummer van de huidige slide_x000D_
	public int getSlideNumber() {_x000D_
		return currentSlideNumber;_x000D_
	}_x000D_
_x000D_
// verander het huidige-slide-nummer en laat het aan het window weten._x000D_
	public void setSlideNumber(int number) {_x000D_
		currentSlideNumber = number;_x000D_
		// Verandering: het updaten van de SlideViewerComponent gebeurt nu via het Observer patroon_x000D_
		//if (slideViewComponent != null) {_x000D_
		//	slideViewComponent.update(this, getCurrentSlide());_x000D_
		//}_x000D_
	}_x000D_
_x000D_
// Verwijder de presentatie, om klaar te zijn voor de volgende_x000D_
	void clear() {_x000D_
		showList = new ArrayList<Slide>();_x000D_
		setTitle("New presentation");_x000D_
		setSlideNumber(-1);_x000D_
	}_x000D_
_x000D_
// Voeg een slide toe aan de presentatie_x000D_
	public void append(Slide slide) {_x000D_
		showList.add(slide);_x000D_
	}_x000D_
_x000D_
// Geef een slide met een bepaald slidenummer_x000D_
	public Slide getSlide(int number) {_x000D_
		if (number < 0 || number >= getSize()){_x000D_
			return null;_x000D_
		}_x000D_
		return (Slide)showList.get(number);_x000D_
	}_x000D_
_x000D_
// Geef de huidige Slide_x000D_
	public Slide getCurrentSlide() {_x000D_
		return getSlide(currentSlideNumber);_x000D_
	}_x000D_
}_x000D_
