ET++: Stepping through a left mouse click in a button

This is called to perform a particular command. For normal commands, it just calls CommandProcessor::PerformNormalCommand().


void CommandProcessor::PerformCommand(Command* cmd)
{
	if (cmd == 0)
		return;

	switch (cmd->GetType()) {

	case eCmdTypeCantUndo:
		FinishFrom(0);
		changeCount+= cmd->Perform();
		Changed();
		cmd->Done(0);
		cmd->Finish();
		break;

	case eCmdTypeNoChange:
		CommandProcessor::PerformNormalCommand(cmd);
		break;

	case eCmdTypeNormal:
		FinishFrom(changeCount);
		PerformNormalCommand(cmd);
		break;
	}
}

Back to the method call sequence