Example #1
0
void registration::on_pushButton_clicked()
{
    //"next" button
    getDirection();
    if(directionID == "0")
    {
        ui->log->setText("Можно ехать либо в Уфу, либо из Уфы");
    } else {
        this->hide();
        emit next_button();
        CanIUpdateDataFromSQL_QUEUE = 1;
    }
}
Example #2
0
void key_pressed(unsigned short key) {
	switch (state) {
	case main_menu:
		switch (key) {
		case UP_ARROW_MAKECODE:
			previous_button(start_menu);
			break;
		case DOWN_ARROW_MAKECODE:
			next_button(start_menu);
			break;
		case ENTER_MAKECODE:
			press_selected_button(start_menu);
			break;
		case ESC_MAKECODE:
			cancel_button(start_menu);
			break;
		}
		break;
		case singleplayer:
			switch (key) {
			case ESC_MAKECODE: //TODO add a pause menu
				singleplayer_game_over();
				break;
			case RIGHT_ARROW_MAKECODE:
				if(controller == keyboard){
					singleplayer_move(1);
				}
				break;
			case LEFT_ARROW_MAKECODE:
				if(controller == keyboard){
					singleplayer_move(-1);
				}
				break;
			case SPACE_MAKECODE:
				if(controller == keyboard){
					singleplayer_fire();
				}
				break;
			}
			break;
			case multiplayer:
				switch(key){
				case A_MAKECODE:
					versus_mp_move(1,-1);
					break;
				case D_MAKECODE:
					versus_mp_move(1,1);
					break;

				case W_MAKECODE:
					versus_mp_fire(1);
					break;

				case LEFT_ARROW_MAKECODE:
					versus_mp_move(2,-1);
					break;

				case RIGHT_ARROW_MAKECODE:
					versus_mp_move(2,1);
					break;

				case UP_ARROW_MAKECODE:
					versus_mp_fire(2);
					break;

				case ESC_MAKECODE:
					change_state(main_menu);
					break;
				}
				break;
				case highscore:
					switch(key){
					case ESC_MAKECODE:
						highscore_back_on_click();
						break;
					}
					break;
					case options:
						switch(key){
						case ESC_MAKECODE:
							options_cancel_on_click();
							break;
						case ENTER_MAKECODE:
							options_accept_on_click();
							break;
						case RIGHT_ARROW_MAKECODE:
							options_next_ctrl_on_click();
							break;
						case LEFT_ARROW_MAKECODE:
							options_prev_ctrl_on_click();
							break;
						}
						break;
	}
}
Example #3
0
STORY_RESULT controller::show(START_POSITION startpos)
{

	if(parts_.empty()) {
		LOG_NG << "no storyscreen parts to show\n";
		return NEXT;
	}

	gui::button back_button (video_, "", gui::button::TYPE_PRESS, "button_normal/button_small_H22"
		, gui::button::DEFAULT_SPACE, true, "icons/arrows/long_arrow_ornate_left");
	gui::button next_button (video_, "", gui::button::TYPE_PRESS, "button_normal/button_small_H22"
		, gui::button::DEFAULT_SPACE, true, "icons/arrows/long_arrow_ornate_right");
	gui::button play_button (video_, _("Skip"));

	// Build renderer cache unless built for a low-memory environment;
	// caching the scaled backgrounds can take over a decent amount of memory.
#ifndef LOW_MEM
	std::vector< render_pointer_type > uis_;
	for(part_pointer_type p : parts_) {
		ASSERT_LOG( p != nullptr, "Ouch: hit nullptr storyscreen part in collection" );
		render_pointer_type const rpt(new part_ui(*p, video_, next_button, back_button, play_button));
		uis_.push_back(rpt);
	}
#endif

	size_t k = 0;
	switch(startpos) {
	case START_BEGINNING:
		break;
	case START_END:
		k = parts_.size() -1;
		break;
	default:
		assert(false);
		break;
	}

	while(k < parts_.size()) {
#ifndef LOW_MEM
		part_ui &render_interface = *uis_[k];
#else
		part_ui render_interface(*parts_[k], video_, next_button, back_button, play_button);
#endif

		LOG_NG << "displaying storyscreen part " << k+1 << " of " << parts_.size() << '\n';

		back_button.enable(segment_index_ != 0 || k != 0);

		switch(render_interface.show()) {
		case part_ui::NEXT:
			++k;
			break;
		case part_ui::BACK:
			if(k > 0) {
				--k;
			}
			else if(segment_index_ > 0) {
				return BACK;
			}
			break;
		case part_ui::QUIT:
			return QUIT;
		}
	}
	return NEXT;
}