Blob Blame Raw


#include "toonzqt/selection.h"
#include "toonzqt/tselectionhandle.h"
#include "assert.h"

//#include "menubar.h"
#include <QMenu>
#include <QWidget>

//=============================================================================
// TSelection
//-----------------------------------------------------------------------------

TSelection::TSelection()
	: m_view(0)
{
}

//-----------------------------------------------------------------------------

TSelection::~TSelection()
{
}

//-----------------------------------------------------------------------------

void TSelection::makeCurrent()
{
	TSelectionHandle::getCurrent()->setSelection(this);
}

//-----------------------------------------------------------------------------

void TSelection::makeNotCurrent()
{
	TSelectionHandle *sh = TSelectionHandle::getCurrent();
	if (sh->getSelection() == this)
		sh->setSelection(0);
}

//-----------------------------------------------------------------------------

TSelection *TSelection::getCurrent()
{
	return TSelectionHandle::getCurrent()->getSelection();
}

//-----------------------------------------------------------------------------

void TSelection::setCurrent(TSelection *selection)
{
	//assert(0);
	TSelectionHandle::getCurrent()->setSelection(selection);
}

//-----------------------------------------------------------------------------

void TSelection::enableCommand(CommandId cmdId, CommandHandlerInterface *handler)
{

	TSelectionHandle::getCurrent()->enableCommand(cmdId, handler);
}

void TSelection::addMenuAction(QMenu *menu, CommandId cmdId)
{
	menu->addAction(CommandManager::instance()->getAction(cmdId));
}

void TSelection::notifyView()
{
	if (m_view)
		m_view->onSelectionChanged();
}