void
on_filechooser_dialog_response(Etk_Dialog *filechooser_dialog,
                               int response_id,
                               void *data)
{
  const char *cover_file_name;
  const char *cover_file_folder;
  char *cover_path;
  Etk_Tree_Row *row;

  if (response_id == ETK_RESPONSE_OK)
    {
      cover_file_name =
       etk_filechooser_widget_selected_file_get
       (ETK_FILECHOOSER_WIDGET(filechooser));
      
      cover_file_folder =
       etk_filechooser_widget_current_folder_get
       (ETK_FILECHOOSER_WIDGET(filechooser));

      asprintf(&cover_path, "%s/%s", cover_file_folder, cover_file_name);

      change_cover_path(cover_path);

      row = etk_tree_selected_row_get(ETK_TREE(tree));
      free(etk_tree_row_data_get(row));
      etk_tree_row_data_set(row, cover_path);
      etk_image_set_from_file(ETK_IMAGE(cover), cover_path, NULL);
    }
  etk_widget_hide_all(ETK_WIDGET(filechooser_dialog));
}
Beispiel #2
0
static void
message_list_view_delete_clicked(struct MessageListViewData *data,
				 Evas_Object * obj, void *event_info)
{
	g_debug("message_list_view_delete_clicked()");
	evas_object_hide(data->hv);

	data->selected_row = etk_tree_selected_row_get(data->tree);
	if (data->selected_row != NULL) {
		GValueArray *message =
			etk_tree_row_data_get(data->selected_row);

		GHashTable *options = g_hash_table_new(g_str_hash, g_str_equal);
		g_hash_table_insert(options, "id",
				    GINT_TO_POINTER(g_value_get_int
						    (g_value_array_get_nth
						     (message, 0))));
		g_hash_table_insert(options, "delete_callback",
				    message_list_view_message_deleted);
		g_hash_table_insert(options, "delete_callback_data", data);

		struct Window *win = window_new(D_("Delete Message"));
		window_init(win);
		window_view_show(win, options, message_delete_view_show,
				 message_delete_view_hide);
	}
}
static void
_change_page_cb (Etk_Object *object, Etk_Tree_Row *row, Etk_Event_Mouse_Up *event, void *data)
{
  Etk_Tree *tree;
  Etk_Pdf  *pdf;
  int       row_number;

  tree = ETK_TREE (object);
  pdf = ETK_PDF (data);
  row_number = *(int *)etk_tree_row_data_get (row);
  etk_pdf_page_set (pdf, row_number);
}
Beispiel #4
0
static void
frame_recipient_delete_clicked(struct MessageNewViewData *data,
			       Evas_Object * obj, void *event_info)
{
	Etk_Tree_Row *row = etk_tree_selected_row_get(data->tree_recipients);
	if (row != NULL) {
		GHashTable *parameters = etk_tree_row_data_get(row);
		g_ptr_array_remove(data->recipients, parameters);
		etk_tree_clear(data->tree_recipients);
		g_ptr_array_foreach(data->recipients,
				    frame_recipient_process_recipient, data);
	}
}
void
on_tree_row_selected(Etk_Object *object, Etk_Tree_Row *row, void *data)
{
  char *path;
  path = etk_tree_row_data_get(row);

  if(path)
    {
      etk_image_set_from_file(ETK_IMAGE(cover), path, NULL);
    }
  else
    {
      etk_image_set_from_stock(ETK_IMAGE(cover),
                               ETK_STOCK_IMAGE_MISSING,
                               ETK_STOCK_BIG);
    }
}
Beispiel #6
0
static void
message_list_view_answer_clicked(struct MessageListViewData *data,
				 Evas_Object * obj, void *event_info)
{
	evas_object_hide(data->hv);

	data->selected_row = etk_tree_selected_row_get(data->tree);
	if (data->selected_row != NULL) {
		GValueArray *message =
			etk_tree_row_data_get(data->selected_row);

		GHashTable *options = g_hash_table_new(g_str_hash, g_str_equal);
		g_hash_table_insert(options, "recipient", (gpointer) g_value_get_string(g_value_array_get_nth(message, 2)));	/* lose the const */

		struct Window *win = window_new(D_("SMS Answer"));
		window_init(win);
		window_view_show(win, options, message_new_view_show,
				 message_new_view_hide);
	}
}
Beispiel #7
0
void _ex_Binding(Etk_Object *obj, void *data){
	Etk_Tree_Row *irow;	
	Etk_Combobox_Item *active_item;
	midi_t * midibinding;
	char midi_label[255];
	irow = etk_tree_selected_row_get(rack_tree);
	active_item = etk_combobox_active_item_get(combobox);
	midibinding = (midi_t *)evas_list_nth(live_plugin->midi_data, (int)etk_tree_row_data_get(irow)-1);

	midibinding->type = (int)etk_combobox_item_data_get(active_item);
	midibinding->channel = spinner_data;
	midibinding->program = spinner1_data;
	midibinding->trow = irow;
	if(midibinding->type==1){
		sprintf(midi_label, "ch# %i PC %i", midibinding->channel, midibinding->program);
	}
	if(midibinding->type==2){
		sprintf(midi_label, "ch# %i CC %i", midibinding->channel, midibinding->program);
	}
	etk_tree_row_fields_set(irow, ETK_FALSE, col2, midi_label, NULL);
	etk_widget_hide(ETK_WIDGET(midi_win));
}
Beispiel #8
0
void show_midi_window(void *data){
	Etk_Widget *vbox, *vbox1, *hbox;
	Etk_Widget *frame;
	Etk_Widget *button;
	Etk_Widget *label;
	Etk_Combobox_Item *item;
	midi_t * midibinding;
	
	if (midi_win){
		etk_widget_show(ETK_WIDGET(midi_win));
		return;
	}
	
	midibinding = (midi_t *)evas_list_nth(live_plugin->midi_data, (int)etk_tree_row_data_get(etk_tree_selected_row_get(rack_tree))-1);
	if(midibinding->channel != 0){
		spinner_data = midibinding->channel;
	}else{
		spinner_data = 1;
	}
	spinner1_data = midibinding->program;
		
	midi_win = etk_window_new();
	etk_window_title_set(ETK_WINDOW(midi_win), "Set Midi Properties");
	etk_window_resize(ETK_WINDOW(midi_win), 200, 0);
	etk_signal_connect("delete-event", ETK_OBJECT(midi_win), ETK_CALLBACK(etk_window_hide_on_delete), NULL);
	vbox = etk_vbox_new(ETK_FALSE, 0);
	etk_container_add(ETK_CONTAINER(midi_win), vbox);

	frame = etk_frame_new("Set Midi Binding for Rack State");
	etk_box_append(ETK_BOX(vbox), frame, ETK_BOX_START, ETK_BOX_EXPAND_FILL, 5);
	
	hbox = etk_hbox_new(ETK_FALSE, 0);
	etk_container_add(ETK_CONTAINER(frame), hbox);
	label = etk_label_new("ch#");
	etk_box_append(ETK_BOX(hbox), label, ETK_BOX_START, ETK_BOX_NONE, 3);	
	
	spinner = etk_spinner_new(1.0, 16.0, midibinding->channel, 1.0, 5.0);
	etk_box_append(ETK_BOX(hbox), spinner, ETK_BOX_START, ETK_BOX_NONE, 7);
	etk_signal_connect("value-changed", ETK_OBJECT(spinner), ETK_CALLBACK(_ex_changed_value), 1);

	combobox = etk_combobox_new_default();
	etk_box_append(ETK_BOX(hbox), combobox, ETK_BOX_START, ETK_BOX_NONE, 2);
	item = etk_combobox_item_append(ETK_COMBOBOX(combobox), "Program Change");
	etk_combobox_item_data_set(item, 1);
	if(midibinding->type==1){
		etk_combobox_active_item_set(combobox, item);
	}	
	item = etk_combobox_item_append(ETK_COMBOBOX(combobox), "Control Change");
	etk_combobox_item_data_set(item, 2);
	if(midibinding->type==2){
		etk_combobox_active_item_set(combobox, item);
	}

	spinner1 = etk_spinner_new(0.0, 127.0, midibinding->program, 1.0, 5.0);
	etk_box_append(ETK_BOX(hbox), spinner1, ETK_BOX_START, ETK_BOX_NONE, 7);
	etk_signal_connect("value-changed", ETK_OBJECT(spinner1), ETK_CALLBACK(_ex_changed_value), 2);

	/*
	button = etk_button_new_with_label("Learn");
	etk_box_append(ETK_BOX(hbox), button, ETK_BOX_START, ETK_BOX_NONE, 0);	
	*/

	button = etk_button_new_with_label("Add Binding");
	etk_box_append(ETK_BOX(vbox), button, ETK_BOX_START, ETK_BOX_NONE, 0);
	etk_signal_connect("clicked", ETK_OBJECT(button), _ex_Binding, data);
	
	
	
	etk_widget_show_all(midi_win);   
}