@@ -0,0 +1,1875 @@
+/**%0AKhalid%0A*/%0Apackage org.sikuli.slides.core;%0A%0Aimport java.io.File;%0Aimport org.sikuli.slides.media.Sound;%0Aimport org.sikuli.slides.screenshots.Screenshot;%0Aimport org.sikuli.slides.screenshots.SlideTargetRegion;%0Aimport org.sikuli.slides.shapes.SlideShape;%0A%0A/**%0A * A slide component is an object having the necessary components of the%0A *  slide such as media files and shapes.%0A * @author Khalid%0A *%0A */%0Apublic class SlideComponent %7B%0A%09private File imageTargetFile;%0A%09private SlideShape slideShape;%0A%09private Screenshot screenshot;%0A%09private SlideTargetRegion slideTargetRegion;%0A%09private Sound sound;%0A%09%0A%09public SlideComponent()%7B%0A%09%09%0A%09%7D%0A%09%0A%09public SlideComponent(File imageTargetFile, SlideShape slideShape, Screenshot screenshot, %0A%09%09%09SlideTargetRegion slideTargetRegion, Sound sound)%7B%0A%09%09this.setTargetFile(imageTargetFile);%0A%09%09this.setSlideShape(slideShape);%0A%09%09this.setScreenshot(screenshot);%0A%09%09this.setSlideTargetRegion(slideTargetRegion);%0A%09%09this.setSound(sound);%0A%09%7D%0A%09%0A%09public File getTargetFile() %7B%0A%09%09return imageTargetFile;%0A%09%7D%0A%09%0A%09public void setTargetFile(File imageTargetFile) %7B%0A%09%09this.imageTargetFile = imageTargetFile;%0A%09%7D%0A%09%0A%09public SlideShape getSlideShape() %7B%0A%09%09return slideShape;%0A%09%7D%0A%0A%09public void setSlideShape(SlideShape slideShape) %7B%0A%09%09this.slideShape = slideShape;%0A%09%7D%0A%0A%09public Screenshot getScreenshot() %7B%0A%09%09return screenshot;%0A%09%7D%0A%0A%09public void setScreenshot(Screenshot screenshot) %7B%0A%09%09this.screenshot = screenshot;%0A%09%7D%0A%0A%09public SlideTargetRegion getSlideTargetRegion() %7B%0A%09%09return slideTargetRegion;%0A%09%7D%0A%0A%09public void setSlideTargetRegion(SlideTargetRegion slideTargetRegion) %7B%0A%09%09this.slideTargetRegion = slideTargetRegion;%0A%09%7D%0A%0A%09public Sound getSound() %7B%0A%09%09return sound;%0A%09%7D%0A%0A%09public void setSound(Sound sound) %7B%0A%09%09this.sound = sound;%0A%09%7D%0A%09%0A%09@Override%0A%09public String toString()%7B%0A%09%09return %22Slide Component: %22+slideShape+%22%5Cn%22+screenshot+%22%5Cn%22+%0A%09%09%09%09slideTargetRegion+%22%5Cn%22+sound;%0A%09%7D%0A%7D%0A

add a container for slide content