Example #1
0
void
Shader::OnCommand(wxCommandEvent& evt)
{
	Project *project = Project::GetProject();
	Panel *panel;
	Undoer *undoer;
	Graph *graph;
	if (project != NULL)
	{
		panel = project->GetPanel();
		if (panel != NULL)
		{
			undoer = panel->GetUndoerCtrl();
			graph = panel->GetGraphCtrl();
		}
	}
	switch (evt.GetId())
	{
	case wxID_OPEN:
		Open();
		break;
	case wxID_SAVE:
		Save();
		break;
	case wxID_SAVEAS:
		SaveAs();
		break;
	case wxID_EXIT:
		Close(false);
		break;
	case wxID_UNDO:
		undoer->Undo();
		break;
	case wxID_REDO:
		undoer->Redo();
		break;
	case wxID_CUT:
		graph->Cut();
		break;
	case wxID_COPY:
		graph->Copy();
		break;
	case wxID_PASTE:
		graph->Paste();
		break;
	case wxID_DUPLICATE:
		graph->Duplicate();
		break;
	case wxID_GROUP:
		graph->GroupNodes();
		break;
	case wxID_UNGROUP:
		graph->UngroupNodes();
		break;
	case wxID_SAVEGROUP:
		graph->SaveGroup();
		break;
	case wxID_COPYMETAFILE:
		graph->CopyAsMetafile();
		break;
	case wxID_CONFIGURE:
		project->Configure();
		break;
	case wxID_RELOADLIBS:
		//project->ReloadLibs();
		break;
	}
}