Revision 1 (by moose, 2006/03/06 10:00:33) Initial Import
#include <qlistview.h>
#include <qworkspace.h>
#include <qstring.h>
#include <qlayout.h>
#include <qhbox.h>
#include <qvbox.h>
#include <qpushbutton.h>
#include <qwidgetstack.h>

#include "MadMainWindow.h"
#include "MadChildFrame.h"
#include "MadConfDialog.h"
#include "MadConfPage.h"
#include "PluginForm.h"

void MadMainWindow::addChildButton(MadChildFrame *cf, const char *title)
{
	QPushButton *pb = new QPushButton(title, childbar);
	//pb->setToggleButton(true);
	pb->setFlat(true);
	//pb->toggle();
	connect(pb, SIGNAL(clicked()), cf, SLOT(doraise()));
	connect(cf, SIGNAL(destroyed()), pb, SLOT(deleteLater()));
}

MadMainWindow::MadMainWindow(QWidget *parent, const char *name, WFlags f) : QMainWindow (parent, name, f)
{
//	split = new QSplitter(this);

	initMenuBar();

	childbar = new QToolBar("Child bar", this);
	
//	setCentralWidget(split);

//	listview  = new QListView(split);

	workspace = new QWorkspace(this);
	setCentralWidget(workspace);
	workspace->show();

	cdialog = new MadConfDialog(this, "cdialog");

	plugPage = new MadConfPage("Plugin Settings", cdialog);

	PluginForm *pf = new PluginForm(plugPage);
	
	//((QListViewItem *)page1->getLVItem())->setSelected(true);
	//cdialog->getStack()->raiseWidget(page1->getPageId());
	
	cdialog->getListView()->setSelected( (QListViewItem *)(plugPage->getLVItem()), true );
	cdialog->getListView()->setCurrentItem( (QListViewItem *)(plugPage->getLVItem()) );
	//((QListView *)cdialog->listview)->clicked( (QListViewItem *)(page1->getLVItem()) );
	
//	split->show();

}

MadMainWindow::~MadMainWindow()
{
	delete plugPage;
}

void MadMainWindow::initMenuBar()
{
	menubar = new QMenuBar(this);

	QPopupMenu *file = new QPopupMenu( this );

   file->insertItem( "&New", this, SLOT(news()), CTRL+Key_N );

   menubar->insertItem( "&File", file );
	
	QPopupMenu *edit = new QPopupMenu( this );
	
	edit->insertSeparator();
	edit->insertItem( "&Settings", this, SLOT(show_settings()), CTRL+Key_S );
	
	menubar->insertItem( "&Edit", edit );
}

MadChildFrame *MadMainWindow::newChild(const char *title)
{
	MadChildFrame *child = new MadChildFrame(title, workspace);
	return child;
}

void MadMainWindow::news()
{
	MadChildFrame *child = newChild("Child");
	child->show();
}

void MadMainWindow::show_settings()
{
	cdialog->exec();
}