Beispiel #1
0
void App::on_btn_sess_play()
{
	if (!selected_sound_session.is_null)
	{
		selected_sound_session.session.set_position_relative(0.0f);
		set_spin_value(spin_session_position, selected_sound_session.session.get_position_relative());

		selected_sound_session.session.play();
		btn_sess_play->set_enabled(false);
		btn_sess_stop->set_enabled(true);
	}
}
Beispiel #2
0
void App::use_selected_session()
{
	if (selected_sound_session.is_null)
	{
		spin_session_position->set_enabled(false);
		spin_session_frequency->set_enabled(false);
		spin_session_volume->set_enabled(false);
		spin_session_pan->set_enabled(false);
		spin_session_fade_volume->set_enabled(false);
		spin_session_fade_duration->set_enabled(false);

		get_slider(spin_session_position)->set_enabled(false);
		get_slider(spin_session_frequency)->set_enabled(false);
		get_slider(spin_session_volume)->set_enabled(false);
		get_slider(spin_session_pan)->set_enabled(false);
		get_slider(spin_session_fade_volume)->set_enabled(false);
		get_slider(spin_session_fade_duration)->set_enabled(false);

		btn_set_fade_filter->set_enabled(false);
		btn_sess_play->set_enabled(false);
		btn_sess_stop->set_enabled(false);
		btn_sess_destroy->set_enabled(false);
		chk_looping->set_enabled(false);
		return;
	}
	spin_session_position->set_enabled(true);
	spin_session_frequency->set_enabled(true);
	spin_session_volume->set_enabled(true);
	spin_session_pan->set_enabled(true);

	bool fade_enabled = !selected_sound_session.fade_filter.is_null();

	spin_session_fade_volume->set_enabled(fade_enabled);
	spin_session_fade_duration->set_enabled(fade_enabled);

	get_slider(spin_session_position)->set_enabled(true);
	get_slider(spin_session_frequency)->set_enabled(true);
	get_slider(spin_session_volume)->set_enabled(true);
	get_slider(spin_session_pan)->set_enabled(true);
	get_slider(spin_session_fade_volume)->set_enabled(fade_enabled);
	get_slider(spin_session_fade_duration)->set_enabled(fade_enabled);

	set_spin_value(spin_session_position, selected_sound_session.session.get_position_relative());
	set_spin_value(spin_session_frequency, selected_sound_session.session.get_frequency());
	set_spin_value(spin_session_volume, selected_sound_session.session.get_volume());
	set_spin_value(spin_session_pan, selected_sound_session.session.get_pan());

	btn_set_fade_filter->set_enabled(fade_enabled);

	if (selected_sound_session.session.is_playing())
	{
		btn_sess_play->set_enabled(false);
		btn_sess_stop->set_enabled(true);
	}
	else
	{
		btn_sess_play->set_enabled(true);
		btn_sess_stop->set_enabled(false);
	}

	btn_sess_destroy->set_enabled(true);

	chk_looping->set_checked(selected_sound_session.session.get_looping());
	chk_looping->set_enabled(true);
}
Beispiel #3
0
static void
ratio_combobox_changed_cb (GtkComboBox       *combobox,
			   GthFileToolResize *self)
{
	GtkWidget *ratio_w_spinbutton;
	GtkWidget *ratio_h_spinbutton;
	int        idx;
	int        w, h;
	gboolean   use_ratio;

	ratio_w_spinbutton = GET_WIDGET ("ratio_w_spinbutton");
	ratio_h_spinbutton = GET_WIDGET ("ratio_h_spinbutton");
	w = h = 1;
	use_ratio = TRUE;
	idx = gtk_combo_box_get_active (GTK_COMBO_BOX (self->priv->ratio_combobox));

	switch (idx) {
	case GTH_ASPECT_RATIO_NONE:
		use_ratio = FALSE;
		break;
	case GTH_ASPECT_RATIO_SQUARE:
		w = h = 1;
		break;
	case GTH_ASPECT_RATIO_IMAGE:
		w = self->priv->original_width;
		h = self->priv->original_height;
		break;
	case GTH_ASPECT_RATIO_DISPLAY:
		w = self->priv->screen_width;
		h = self->priv->screen_height;
		break;
	case GTH_ASPECT_RATIO_5x4:
		w = 5;
		h = 4;
		break;
	case GTH_ASPECT_RATIO_4x3:
		w = 4;
		h = 3;
		break;
	case GTH_ASPECT_RATIO_7x5:
		w = 7;
		h = 5;
		break;
	case GTH_ASPECT_RATIO_3x2:
		w = 3;
		h = 2;
		break;
	case GTH_ASPECT_RATIO_16x10:
		w = 16;
		h = 10;
		break;
	case GTH_ASPECT_RATIO_16x9:
		w = 16;
		h = 9;
		break;
	case GTH_ASPECT_RATIO_185x100:
		w = 185;
		h = 100;
		break;
	case GTH_ASPECT_RATIO_239x100:
		w = 239;
		h = 100;
		break;
	case GTH_ASPECT_RATIO_CUSTOM:
	default:
		w = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (ratio_w_spinbutton));
		h = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (ratio_h_spinbutton));
		break;
	}

	gtk_widget_set_visible (GET_WIDGET ("custom_ratio_box"), idx == GTH_ASPECT_RATIO_CUSTOM);
	gtk_widget_set_sensitive (GET_WIDGET ("invert_ratio_checkbutton"), use_ratio);
	set_spin_value (self, ratio_w_spinbutton, w);
	set_spin_value (self, ratio_h_spinbutton, h);

	self->priv->fixed_aspect_ratio = use_ratio;
	self->priv->aspect_ratio = (double) w / h;
	selection_width_value_changed_cb (GTK_SPIN_BUTTON (GET_WIDGET ("resize_width_spinbutton")), self);
}