コード例 #1
0
bool CodeEditorComponent::performCommand (const int commandID)
{
    switch (commandID)
    {
        case StandardApplicationCommandIDs::cut:        cutToClipboard(); break;
        case StandardApplicationCommandIDs::copy:       copyToClipboard(); break;
        case StandardApplicationCommandIDs::paste:      pasteFromClipboard(); break;
        case StandardApplicationCommandIDs::del:        cut(); break;
        case StandardApplicationCommandIDs::selectAll:  selectAll(); break;
        case StandardApplicationCommandIDs::undo:       undo(); break;
        case StandardApplicationCommandIDs::redo:       redo(); break;
        default:                                        return false;
    }

    return true;
}
コード例 #2
0
ファイル: sprite.c プロジェクト: rdrpenguin04/TIC-80
static void processKeyboard(Sprite* sprite)
{
	tic_mem* tic = sprite->tic;

	if(tic->ram.input.keyboard.data == 0) return;

	switch(getClipboardEvent())
	{
	case TIC_CLIPBOARD_CUT: cutToClipboard(sprite); break;
	case TIC_CLIPBOARD_COPY: copyToClipboard(sprite); break;
	case TIC_CLIPBOARD_PASTE: copyFromClipboard(sprite); break;
	default: break;
	}

	bool ctrl = tic->api.key(tic, tic_key_ctrl);

	if(ctrl)
	{	
		if(keyWasPressed(tic_key_z)) 		undo(sprite);
		else if(keyWasPressed(tic_key_y))	redo(sprite);
	}
	else
	{
		if(hasCanvasSelection(sprite))
		{
			if(keyWasPressed(tic_key_up)) 			upCanvas(sprite);
			else if(keyWasPressed(tic_key_down)) 	downCanvas(sprite);
			else if(keyWasPressed(tic_key_left)) 	leftCanvas(sprite);
			else if(keyWasPressed(tic_key_right)) 	rightCanvas(sprite);
			else if(keyWasPressed(tic_key_delete)) 	deleteCanvas(sprite);
		}
		else
		{
			if(keyWasPressed(tic_key_up)) 			upSprite(sprite);
			else if(keyWasPressed(tic_key_down)) 	downSprite(sprite);
			else if(keyWasPressed(tic_key_left)) 	leftSprite(sprite);
			else if(keyWasPressed(tic_key_right)) 	rightSprite(sprite);
			else if(keyWasPressed(tic_key_delete)) 	deleteSprite(sprite);
			else if(keyWasPressed(tic_key_tab)) 		switchBanks(sprite);

			if(!sprite->editPalette)
			{

				if(keyWasPressed(tic_key_1)) 		sprite->mode = SPRITE_DRAW_MODE;
				else if(keyWasPressed(tic_key_2)) 	sprite->mode = SPRITE_PICK_MODE;
				else if(keyWasPressed(tic_key_3)) 	sprite->mode = SPRITE_SELECT_MODE;
				else if(keyWasPressed(tic_key_4)) 	sprite->mode = SPRITE_FILL_MODE;

				else if(keyWasPressed(tic_key_5)) 	flipSpriteHorz(sprite);
				else if(keyWasPressed(tic_key_6)) 	flipSpriteVert(sprite);
				else if(keyWasPressed(tic_key_7)) 	rotateSprite(sprite);
				else if(keyWasPressed(tic_key_8)) 	deleteSprite(sprite);

				if(sprite->mode == SPRITE_DRAW_MODE)
				{
					if(keyWasPressed(tic_key_leftbracket)) {if(sprite->brushSize > 1) sprite->brushSize--;}
					else if(keyWasPressed(tic_key_rightbracket)) {if(sprite->brushSize < 4) sprite->brushSize++;}
				}				
			}
		}
	}
}