/*!
**    Notice:  Gubby Copyright 2003 Christian Stigen Larsen
**    Author:  <csl@sublevel3.org>
**
**    $Id: screens.h,v 1.14 2003/04/03 13:45:38 cslsublevel3org Exp $
**
**    This file is part of Gubby.
**
**    Gubby is free software; you can redistribute it and/or modify
**    it under the terms of the GNU General Public License as published by
**    the Free Software Foundation; either version 2 of the License, or
**    (at your option) any later version.
**
**    Gubby is distributed in the hope that it will be useful,
**    but WITHOUT ANY WARRANTY; without even the implied warranty of
**    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
**    GNU General Public License for more details.
**
**    You should have received a copy of the GNU General Public License
**    along with Gubby; if not, write to the Free Software
**    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
**
*/

#include "keys.h"
#include "folders.h"
#include "gubbyopts.h"
#include "curswin.h"
#include "initcurs.h"

#include <iostream>
#include <iomanip>

class screens {
	gubbycfg& gb;
	Folders& folders;
	unsigned int curspos;
	initcurs curses;
public:
	screens(gubbycfg& gb_, Folders& folders_);

	void run();
	void showhelp(const bool colors);
	bool exitkey(const keycmd ch,
		bool& redrawall,
		initcurs& win,
		bool& update,
		bool& shelledout);

	void wprintfolders(WINDOW* w, const int expanded, const int width, const bool colors);
	void printfolders(bool widelist);

	void startcurses(initcurs& curses);
	void mainscreen(initcurs& curses);
};


syntax highlighted by Code2HTML, v. 0.9.1