#ifndef	MANAGERWINDOW_HPP
#define	MANAGERWINDOW_HPP

// $VER: ManagerWindow.hpp 39.5 (04.11.97)
//
//
// (C) Copyright 1996,97 Markus Hillenbrand
//     All Rights Reserved, No Warranty

#ifndef 	GUIC_CLASSES_FILEREQUESTER_H
#include "GUIC_FileRequester.hpp"
#endif

#ifndef 	GUIC_CLASSES_PATHREQUESTER_H
#include "GUIC_PathRequester.hpp"
#endif

#ifndef 	GUIC_CLASSES_WINDOW_H
#include "GUIC_Window.hpp"
#endif

#define NUMBER_OF_THUMBNAILS 15

class GUIC_ApplicationC;
class GUIC_EventC;
class GUIC_ImageButtonC;
class GUIC_SlideButtonC;
class GUIC_LabelC;
class GUIC_PanelC;
class GUIC_SeparatorC;
class GUIC_ScreenC;
class GUIC_TextfieldC;

class PrefsWindowC;
class ManagerWindowC_ListEntry;

class ManagerWindowC : public GUIC_WindowC
	{
	public:
		ManagerWindowC 		(GUIC_ApplicationC &app, GUIC_ScreenC &screen, PrefsWindowC &pWindow);
		~ManagerWindowC 	(VOID);
		
		STRPTR	getClass		(VOID);
		BOOL 	action 		(GUIC_EventC &event);

	protected:
		VOID 		cleanUp		(VOID);

	private:
		VOID		setSource	(VOID);
		VOID		showFile		(ManagerWindowC_ListEntry *entry);
		BOOL		copyFile		(ManagerWindowC_ListEntry *entry);
		VOID		deleteFile	(ManagerWindowC_ListEntry *entry, LONG button);
		VOID		moveFile		(ManagerWindowC_ListEntry *entry, LONG button);
		
		GUIC_ApplicationC 			*app;
		GUIC_ScreenC 				*screen;
		PrefsWindowC				*pWindow;

		LONG								firstThumbnail;
		GUIC_ListC						sourceFiles;

		GUIC_PathRequesterC	pr_sourcePath, pr_destPath;

		GUIC_PanelC					*pa_window, *pa_sourcePath, *pa_destPath, *pa_thumbnails, *pa_message;
		GUIC_SeparatorC			*sp_line1, *sp_line2;
		GUIC_LabelC					*la_sourcePath, *la_destPath, *la_message;
		GUIC_TextfieldC				*tf_sourcePath, *tf_destPath, *tf_message;
		GUIC_ImageButtonC		*bt_sourcePath, *bt_destPath;
		GUIC_SlideButtonC			*bt_thumbnails[NUMBER_OF_THUMBNAILS];
	};

#endif

