Exemple #1
0
ActionComponentEditor::ActionComponentEditor(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::ActionComponentEditor)
{
    ui->setupUi(this);
	
	targetComponent = NULL;
	QObject::connect(ui->buttonAddItem, SIGNAL(pressed()), this, SLOT(OnAddAction()));
	QObject::connect(ui->buttonRemoveItem, SIGNAL(pressed()), this, SLOT(OnRemoveAction()));
	QObject::connect(ui->tableActions, SIGNAL(itemSelectionChanged()), this, SLOT(OnSelectedItemChanged()));
	
	ui->tableActions->resizeColumnsToContents();
	ui->buttonRemoveItem->setEnabled(false);
	
	editDelegate.setParent(ui->tableActions);
	editDelegate.SetComponentEditor(this);
	ui->tableActions->setItemDelegate(&editDelegate);
}
void EventSheetEditor::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) 
{
	switch (nChar)
	{
		case VK_DELETE:
			OnToolbarDelete();
		break;

		// Bookmarking hotkeys
		case 0x42:
		{
			if (m_CtrlDown)
			{
				// Toggle bookmark status for all events
				SelectedEventVector SelectedEvents;
				CreateEventSelectionVector(SelectedEvents, (*m_pEventList));

				for(int a = 0; a < SelectedEvents.size(); a ++)
				{
					SelectedEvents[a]->m_bBookmarked = !SelectedEvents[a]->m_bBookmarked;
					InvalidateRect(SelectedEvents[a]->m_rect(this));
				}
			}
		}
		break;

		case VK_CONTROL:
			m_CtrlDown = true;
		break;

		case VK_SHIFT:
			m_ShiftDown = true;
		break;

		case VK_NEXT:
			OnNextBookmark();
		break;

		case VK_PRIOR:
			OnPreviousBookmark();
		break;

		case 'E':
			if (!m_CtrlDown)
				OnAddEvent();
		break;

		case 'S':
			if (!m_CtrlDown)
				OnAddSubEvent();
		break;

		case 'A':
			if (!m_CtrlDown)
				OnAddAction();
		break;

		case 'C':
			if (!m_CtrlDown)
				OnAddCondition();
		break;
	}

	CScrollView::OnKeyDown(nChar, nRepCnt, nFlags);
}