GtkWidget *create_treeview_column(GList *list) { GtkWidget *treeview; GtkListStore *store; GtkTreeIter iter; treeview = gtk_tree_view_new(); setup_tree_view(treeview); store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING); GSLTweet *tweet; gchar *parsed_tweet; tweet = g_slice_new(GSLTweet); int i; for(i = 0; i<g_list_length(list); i++){ tweet = (GSLTweet *)g_list_nth_data (list, i); parsed_tweet = g_strconcat("<b>", tweet->screen_name, "</b> ", tweet->name, "\n", "<small>", tweet->text, "</small>", NULL); gtk_list_store_append(store, &iter); gtk_list_store_set(store, &iter, 0, parsed_tweet, -1); } gtk_tree_view_set_model (GTK_TREE_VIEW (treeview), GTK_TREE_MODEL (store)); g_object_unref(store); return treeview; }
int main (int argc, char *argv[]) { GtkWidget *window, *treeview, *statusbar; gtk_init (&argc, &argv); current_path = NULL; history_pos = 0; xml = glade_xml_new ("browser.glade", NULL, NULL); window = glade_xml_get_widget (xml, "window"); treeview = glade_xml_get_widget (xml, "treeview"); statusbar = glade_xml_get_widget (xml, "statusbar"); size_type[0] = "B"; size_type[1] = "KiB"; size_type[2] = "MiB"; size_type[3] = "GiB"; history = g_ptr_array_new (); g_ptr_array_add (history, (gpointer) g_strdup (G_DIR_SEPARATOR_S)); context_id = gtk_statusbar_get_context_id (GTK_STATUSBAR (statusbar), "Message"); glade_xml_signal_autoconnect (xml); setup_tree_view (treeview); setup_tree_model (treeview); gtk_widget_show_all (window); gtk_main (); return 0; }
static Collocations* create_dialog (Collocations *col) { GtkWidget *dialog; GtkWidget *scrolled_win; GtkWidget *treeview; GtkListStore *store; gint result; dialog = gtk_dialog_new_with_buttons ("Edit Collocations", NULL, GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_OK, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, NULL); gtk_container_set_border_width (GTK_CONTAINER (dialog), 5); gtk_widget_set_size_request (GTK_WIDGET (dialog), 600, 500); treeview = gtk_tree_view_new (); setup_tree_view (GTK_TREE_VIEW (treeview)); store = gtk_list_store_new (COLUMNS, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); if (col != NULL) setup_data (col, store); gtk_tree_view_set_model (GTK_TREE_VIEW (treeview), GTK_TREE_MODEL (store)); gtk_tree_view_set_enable_search (GTK_TREE_VIEW (treeview), FALSE); g_object_unref (store); GtkWidget* add_button = gtk_button_new_from_stock (GTK_STOCK_ADD); GtkWidget* remove_button = gtk_button_new_from_stock (GTK_STOCK_REMOVE); g_signal_connect (G_OBJECT (add_button), "clicked", G_CALLBACK (row_add), (gpointer) treeview); g_signal_connect (G_OBJECT (remove_button), "clicked", G_CALLBACK (row_remove), (gpointer) treeview); GtkWidget* hbox = gtk_hbox_new (FALSE, 5); gtk_box_pack_start (GTK_BOX (hbox), add_button, FALSE, FALSE, 5); gtk_box_pack_start (GTK_BOX (hbox), remove_button, FALSE, FALSE, 5); scrolled_win = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_win), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add (GTK_CONTAINER (scrolled_win), treeview); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), scrolled_win, TRUE, TRUE, 5); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, FALSE, FALSE, 5); gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE); gtk_widget_show_all (dialog); result = gtk_dialog_run (GTK_DIALOG (dialog)); if (result == GTK_RESPONSE_OK) { Collocations *tmp = NULL; tmp = get_data (GTK_TREE_VIEW (treeview)); gtk_widget_destroy (dialog); return tmp; } gtk_widget_destroy (dialog); return col; }
/* * Tab_Page Distributions */ Distribution_Tab * build_tab_distribution() { // Initialization Distribution_Tab *tab = g_slice_new0(Distribution_Tab); tab->tab_name = gtk_label_new(_("Distribution")); tab->tab_content = gtk_vbox_new(FALSE, INNER_SPACE); gtk_container_set_border_width(GTK_CONTAINER(tab->tab_content), 8); // Utils GtkWidget *span; GtkWidget *hbox, *vbox; tab->treeview = gtk_tree_view_new(); setup_tree_view(tab->treeview); gtk_widget_set_size_request(tab->treeview, 250, 300); tab->store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING); list_store_update(tab->store); gtk_tree_view_set_model(GTK_TREE_VIEW(tab->treeview), GTK_TREE_MODEL(tab->store)); g_object_unref(tab->store); gtk_container_add(GTK_CONTAINER(tab->tab_content), tab->treeview); hbox = gtk_hbox_new(FALSE, 4); tab->button_default = gtk_button_new_from_stock(GTK_STOCK_GOTO_TOP); gtk_widget_set_size_request(tab->button_default, BUTTON_WIDTH, BUTTON_HIGH); tab->button_delete = gtk_button_new_from_stock(GTK_STOCK_REMOVE); gtk_widget_set_size_request(tab->button_delete, BUTTON_WIDTH, BUTTON_HIGH); tab->button_new = gtk_button_new_from_stock(GTK_STOCK_ADD); gtk_widget_set_size_request(tab->button_new, BUTTON_WIDTH, BUTTON_HIGH); g_signal_connect(tab->button_default, "clicked", G_CALLBACK(button_default_callback), tab); g_signal_connect(tab->button_delete, "clicked", G_CALLBACK(button_delete_callback), tab); g_signal_connect(tab->button_new, "clicked", G_CALLBACK(button_new_config_callback), tab); span = gtk_label_new(""); gtk_widget_set_size_request(span, 10, 0); gtk_container_add(GTK_CONTAINER(hbox), tab->button_default); gtk_container_add(GTK_CONTAINER(hbox), span); gtk_container_add(GTK_CONTAINER(hbox), tab->button_new); gtk_container_add(GTK_CONTAINER(hbox), tab->button_delete); gtk_container_add(GTK_CONTAINER(tab->tab_content), hbox); return tab; }
int main( int argc, char **argv ) { gtk_init( &argc, &argv ); /* create and set properties for main window */ GtkWidget *window = gtk_window_new( GTK_WINDOW_TOPLEVEL ); gtk_window_set_title( GTK_WINDOW( window ), "Grocery List" ); gtk_container_set_border_width( GTK_CONTAINER( window ), 10 ); gtk_widget_set_size_request( window, 240, 320 ); /* create and set up a tree view */ GtkWidget *treeview = gtk_tree_view_new(); setup_tree_view( treeview ); /* create a new tree model with three columns, as string, gint and guint */ GtkListStore *store = gtk_list_store_new( COLUMNS, G_TYPE_BOOLEAN, G_TYPE_INT, G_TYPE_STRING ); /* add all of the products to the GtkListStore */ GtkTreeIter iter; int i = 0; while ( list[i].product != NULL ) { gtk_list_store_append( store, &iter ); /* Here you must use an -1 to indicate an end, No other alternatives */ gtk_list_store_set( store, &iter, BUY_IT, list[i].buy, QUANTITY, list[i].quantity, PRODUCT, list[i].product, -1 ); i++; } /* Make the tree view selectable */ /* * first retrieve the selection object and then add an callback * for the selected rows. */ GtkTreeSelection *selection = gtk_tree_view_get_selection( GTK_TREE_VIEW( treeview ) ); /* set the selection mode: signle, mutlitple or others */ gtk_tree_selection_set_mode( selection, GTK_SELECTION_MULTIPLE ); gtk_tree_selection_selected_foreach( selection, foreach_func, NULL ); /* * Add the tree model to the tree view and unreference it so that the * model will be destroyed along with the tree view */ gtk_tree_view_set_model( GTK_TREE_VIEW( treeview ), GTK_TREE_MODEL( store ) ); g_object_unref( store ); GtkWidget *scrolled_window = gtk_scrolled_window_new( NULL, NULL ); gtk_scrolled_window_set_policy( GTK_SCROLLED_WINDOW( scrolled_window ), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC ); g_signal_connect( G_OBJECT( window ), "destroy", G_CALLBACK( gtk_main_quit ), NULL ); gtk_container_add( GTK_CONTAINER( scrolled_window ), treeview ); gtk_container_add( GTK_CONTAINER( window ), scrolled_window ); gtk_widget_show_all( window ); gtk_main(); return 0; }
void on_radiobutton5_pressed( GtkWidget *widget, struct _properties *properties ) { g_print ("radiobutton5 was pressed\n"); properties->format = CALENDAR_OPTIONS6; if( option_algorithms[properties->modeltype].supportStrikes ) { gtk_button_set_label(GTK_BUTTON(properties->GtkInfo.scaleStrikes),"Strike Adjuster"); if( strike_control[properties->strikestoogle].incrementor == 0 ) { gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike2); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes2),"Strike"); gtk_widget_show(properties->GtkInfo.labelStrikes2); gtk_widget_hide(properties->GtkInfo.scaleStrikes); } else { gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes2),"StrikeLeg2"); gtk_widget_hide(properties->GtkInfo.labelStrikes2); gtk_widget_show(properties->GtkInfo.scaleStrikes); } gtk_widget_show(properties->GtkInfo.comboboxStrikes); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"Strikes"); gtk_widget_show(properties->GtkInfo.labelStrikes); } else { gtk_widget_hide(properties->GtkInfo.comboboxStrikes); gtk_widget_hide(properties->GtkInfo.scaleStrikes); gtk_widget_hide(properties->GtkInfo.labelStrikes); gtk_widget_hide(properties->GtkInfo.scaleStrikes); } gtk_widget_hide(properties->GtkInfo.scaleStrikes2); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike); if( strike_control[properties->strikestoogle].incrementor != 0 ) gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); gtk_button_set_label(GTK_BUTTON(properties->GtkInfo.scaleMonths),"Month Adjuster"); gtk_widget_show(properties->GtkInfo.scaleMonths); gtk_widget_hide(properties->GtkInfo.checkbuttonSpreads); gtk_widget_hide(properties->GtkInfo.labelSpread); gtk_widget_hide(properties->GtkInfo.scaleMonths2); gtk_widget_hide(properties->GtkInfo.scaleStrikes2); setup_tree_view(properties); show_title(properties); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.radiobutton5),true); }
int main (int argc, char *argv[]) { GtkWidget *window, *treeview, *scrolled_win; GtkListStore *store; GtkTreeIter iter; guint i = 0; gtk_init (&argc, &argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "Grocery List"); gtk_container_set_border_width (GTK_CONTAINER (window), 10); gtk_widget_set_size_request (window, 250, 175); g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (gtk_main_quit), NULL); treeview = gtk_tree_view_new (); setup_tree_view (treeview); /* Create a new tree model with three columns, as string, gint and guint. */ store = gtk_list_store_new (COLUMNS, G_TYPE_BOOLEAN, G_TYPE_INT, G_TYPE_STRING); /* Add all of the products to the GtkListStore. */ while (list[i].product != NULL) { gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, BUY_IT, list[i].buy, QUANTITY, list[i].quantity, PRODUCT, list[i].product, -1); i++; } /* Add the tree model to the tree view and unreference it so that the model will * be destroyed along with the tree view. */ gtk_tree_view_set_model (GTK_TREE_VIEW (treeview), GTK_TREE_MODEL (store)); g_object_unref (store); scrolled_win = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_win), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add (GTK_CONTAINER (scrolled_win), treeview); gtk_container_add (GTK_CONTAINER (window), scrolled_win); gtk_widget_show_all (window); gtk_main (); return 0; }
int main (int argc, char *argv[]) { GtkWidget *window, *treeview, *scrolled_win; GtkListStore *store; GtkTreeIter iter; guint i, j, k; gtk_init (&argc, &argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "Color List"); gtk_container_set_border_width (GTK_CONTAINER (window), 10); gtk_widget_set_size_request (window, 250, 175); g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (gtk_main_quit), NULL); treeview = gtk_tree_view_new (); setup_tree_view (treeview); store = gtk_list_store_new (COLUMNS, G_TYPE_STRING); /* Add all of the products to the GtkListStore. */ for (i = 0; i < 6; i++) for (j = 0; j < 6; j++) for (k = 0; k < 6; k++) { gchar *color = g_strconcat ("#", clr[i], clr[j], clr[k], NULL); gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, COLOR, color, -1); g_free (color); } gtk_tree_view_set_model (GTK_TREE_VIEW (treeview), GTK_TREE_MODEL (store)); g_object_unref (store); scrolled_win = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_win), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add (GTK_CONTAINER (scrolled_win), treeview); gtk_container_add (GTK_CONTAINER (window), scrolled_win); gtk_widget_show_all (window); gtk_main (); return 0; }
void on_checkbuttonDateEngine_toggled(GtkButton *button, struct _properties *properties) { //g_print("on_checkbuttonDateEngine_toggled()\n"); if( properties->GtkInfo.checkbuttonDateEngineIgnore == true ) { g_print("checkbuttonDateEngineIgnored\n"); properties->GtkInfo.checkbuttonDateEngineIgnore = false; return; } if( option_algorithms[properties->modeltype].supportTime2 == 1 ) { return; } if( option_algorithms[properties->modeltype].perpetual ) { return; } if( properties->decimalorcalendar == DECIMALS ) { // switch to calendar dated... //g_print("Calendar Dated\n"); properties->decimalorcalendar = CALENDAR; if( option_algorithms[properties->modeltype].assetClass ) { properties->format = CALENDAR_FUTURE; } else { properties->format = CALENDAR_OPTIONS3; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.radiobutton1),true); // CALENDAR_OPTIONS3 if( option_algorithms[properties->modeltype].supportStrikes ) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.radiobutton2),false); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.radiobutton3),false); } gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.radiobutton4),false); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.radiobutton5),false); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.checkbuttonSpreads),0); gtk_widget_hide(properties->GtkInfo.checkbuttonSpreads); if( option_algorithms[properties->modeltype].supportStrikes && strike_control[properties->strikestoogle].incrementor != 0 ) { gtk_button_set_label(GTK_BUTTON(properties->GtkInfo.scaleStrikes),"Strike Adjuster"); gtk_widget_show(properties->GtkInfo.scaleStrikes); } else { gtk_widget_hide(properties->GtkInfo.scaleStrikes); } gtk_button_set_label(GTK_BUTTON(properties->GtkInfo.scaleMonths),"Month Adjuster"); gtk_widget_show(properties->GtkInfo.scaleMonths); } //properties->format = CALENDAR_OPTIONS4; //properties->format = CALENDAR_OPTIONS5; //properties->format = CALENDAR_OPTIONS6; //properties->format = CALENDAR_CUSTOM; gtk_widget_hide(properties->GtkInfo.checkbuttonRealTime); gtk_widget_hide(properties->GtkInfo.buttonCalendar); gtk_widget_hide(properties->GtkInfo.spinbuttonTime); gtk_widget_hide(properties->GtkInfo.label1); gtk_widget_hide(properties->GtkInfo.labelDaysToExpr); gtk_widget_hide(properties->GtkInfo.spinbuttonDaysToExpr); gtk_widget_hide(properties->GtkInfo.labelTime1); if( !option_algorithms[properties->modeltype].assetClass ) { gtk_widget_show(properties->GtkInfo.labelCycle); gtk_widget_show(properties->GtkInfo.comboboxCycle); gtk_widget_show(properties->GtkInfo.radiobutton1); if( option_algorithms[properties->modeltype].supportStrikes ) { gtk_widget_show(properties->GtkInfo.radiobutton2); gtk_widget_show(properties->GtkInfo.radiobutton3); } gtk_widget_show(properties->GtkInfo.radiobutton4); gtk_widget_show(properties->GtkInfo.radiobutton5); gtk_widget_show(properties->GtkInfo.labelDisplayFormats); } show_label_expirations(properties); gtk_widget_show(properties->GtkInfo.scaleMonths); gtk_widget_show(properties->GtkInfo.buttonProperties); gtk_widget_show(properties->GtkInfo.checkbuttonSpreads); } else { // switch to decimal dated... //g_print("Decimal Dated\n"); properties->decimalorcalendar = DECIMALS; if( option_algorithms[properties->modeltype].assetClass ) { properties->format = DECIMAL_FUTURE; } else { properties->format = DECIMAL_GREEKS; if( option_algorithms[properties->modeltype].supportStrikes ) { gtk_widget_show(properties->GtkInfo.comboboxStrikes); gtk_widget_show(properties->GtkInfo.scaleStrikes); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"Strikes"); gtk_widget_show(properties->GtkInfo.labelStrikes); } else { gtk_widget_hide(properties->GtkInfo.comboboxStrikes); gtk_widget_hide(properties->GtkInfo.scaleStrikes); gtk_widget_hide(properties->GtkInfo.labelStrikes); } } gtk_widget_show(properties->GtkInfo.checkbuttonRealTime); gtk_widget_show(properties->GtkInfo.buttonCalendar); gtk_widget_show(properties->GtkInfo.spinbuttonTime); gtk_widget_show(properties->GtkInfo.label1); gtk_widget_show(properties->GtkInfo.labelDaysToExpr); gtk_widget_show(properties->GtkInfo.spinbuttonDaysToExpr); gtk_widget_show(properties->GtkInfo.labelTime1); gtk_widget_hide(properties->GtkInfo.labelCycle); gtk_widget_hide(properties->GtkInfo.comboboxCycle); gtk_widget_hide(properties->GtkInfo.labelExpirations); gtk_widget_hide(properties->GtkInfo.scaleMonths); gtk_widget_hide(properties->GtkInfo.buttonProperties); gtk_widget_hide(properties->GtkInfo.radiobutton1); gtk_widget_hide(properties->GtkInfo.radiobutton2); gtk_widget_hide(properties->GtkInfo.radiobutton3); gtk_widget_hide(properties->GtkInfo.radiobutton4); gtk_widget_hide(properties->GtkInfo.radiobutton5); gtk_widget_hide(properties->GtkInfo.labelDisplayFormats); gtk_widget_hide(properties->GtkInfo.labelStrikes2); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); gtk_widget_hide(properties->GtkInfo.checkbuttonSpreads); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.checkbuttonSpreads),0); properties->data.t[0] = gtk_spin_button_get_value(GTK_SPIN_BUTTON(properties->GtkInfo.spinbuttonTime)); if( strike_control[properties->strikestoogle].incrementor == 0 ) { gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike2); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes2),"Strike"); gtk_widget_show(properties->GtkInfo.labelStrikes2); gtk_widget_hide(properties->GtkInfo.scaleStrikes); } else { gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes2),"StrikeLeg2"); gtk_widget_hide(properties->GtkInfo.labelStrikes2); gtk_widget_show(properties->GtkInfo.scaleStrikes); } } setup_tree_view(properties); show_title(properties); } // void on_checkbuttonDateEngine_toggled(GtkButton *button, struct _properties *properties)
void on_checkbuttonSpreads_toggled(GtkButton *button, struct _properties *properties) { if( gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON (button)) ) { g_print("Use Spreads\n"); properties->spreads = 1; calc_strike_scale(properties); if( properties->format != CALENDAR_CUSTOM && !option_algorithms[properties->modeltype].assetClass && option_algorithms[properties->modeltype].supportStrikes && strike_control[properties->strikestoogle].incrementor != 0 ) { gtk_button_set_label(GTK_BUTTON(properties->GtkInfo.scaleStrikes),"Strike Adj Leg1"); gtk_widget_show(properties->GtkInfo.scaleStrikes); gtk_widget_show(properties->GtkInfo.scaleStrikes2); } if( properties->format == CALENDAR_CUSTOM && !option_algorithms[properties->modeltype].assetClass && option_algorithms[properties->modeltype].supportStrikes && strike_control[properties->strikestoogle].incrementor != 0 ) { gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"StrikeLeg1"); gtk_widget_show(properties->GtkInfo.labelStrikes); gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike2); gtk_widget_show(properties->GtkInfo.labelStrikes2); } if( strike_control[properties->strikestoogle].incrementor == 0 && properties->format != CALENDAR_CUSTOM ) { gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"StrikeLeg1"); gtk_widget_show(properties->GtkInfo.labelStrikes); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes2),"StrikeLeg2"); gtk_widget_show(properties->GtkInfo.labelStrikes2); gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike); gtk_widget_hide(properties->GtkInfo.comboboxStrikes); gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike2); } gtk_button_set_label(GTK_BUTTON(properties->GtkInfo.scaleMonths),"Month Adj Leg1"); gtk_widget_show(properties->GtkInfo.scaleMonths); gtk_widget_show(properties->GtkInfo.scaleMonths2); } else { g_print("No Spreads\n"); properties->spreads = 0; calc_strike_scale(properties); gtk_widget_hide(properties->GtkInfo.labelSpread); if( properties->format != CALENDAR_CUSTOM && !option_algorithms[properties->modeltype].assetClass && option_algorithms[properties->modeltype].supportStrikes && strike_control[properties->strikestoogle].incrementor != 0 ) { gtk_button_set_label(GTK_BUTTON(properties->GtkInfo.scaleStrikes),"Strike Adjuster"); gtk_widget_show(properties->GtkInfo.scaleStrikes); } if( properties->format == CALENDAR_CUSTOM && !option_algorithms[properties->modeltype].assetClass && option_algorithms[properties->modeltype].supportStrikes ) { gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"Strike"); gtk_widget_show(properties->GtkInfo.labelStrikes); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); gtk_widget_hide(properties->GtkInfo.labelStrikes2); } gtk_button_set_label(GTK_BUTTON(properties->GtkInfo.scaleMonths),"Month Adjuster"); gtk_widget_hide(properties->GtkInfo.scaleStrikes2); if( properties->decimalorcalendar == CALENDAR ) gtk_widget_show(properties->GtkInfo.scaleMonths); gtk_widget_hide(properties->GtkInfo.scaleMonths2); if( strike_control[properties->strikestoogle].incrementor == 0 && properties->format != CALENDAR_CUSTOM ) { gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"Strikes"); gtk_widget_show(properties->GtkInfo.labelStrikes); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes2),"Strike"); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike); gtk_widget_hide(properties->GtkInfo.scaleStrikes); gtk_widget_show(properties->GtkInfo.comboboxStrikes); } } setup_tree_view(properties); } // void on_checkbuttonSpreads_toggled(GtkButton *button, struct _properties *properties)
gboolean kanji_list_view (GArray *arr) { GtkWidget *dialog; GtkWidget *treeview; GtkWidget *scrolled_win; GtkWidget *hbox; GtkListStore *store; GtkTreeIter iter; guint i, result; Kanji *tmp; Data p; dialog = gtk_dialog_new_with_buttons ("Kanji List", NULL, GTK_DIALOG_MODAL, NULL); gtk_container_set_border_width (GTK_CONTAINER (dialog), 5); gtk_widget_set_size_request (GTK_WIDGET (dialog), 500, 500); treeview = gtk_tree_view_new (); setup_tree_view (treeview, &p); store = gtk_list_store_new (COLUMNS, G_TYPE_INT, G_TYPE_STRING, G_TYPE_INT, G_TYPE_STRING, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT); tmp = &g_array_index (arr, Kanji, i = 0); while (i < arr->len) { gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, NUMBER, i + 1, KANJI, tmp->kanji, KANJI_STROKE, tmp->kanji_stroke, RADICAL, tmp->radical, RADICAL_STROKE, tmp->radical_stroke, JLPT_LEVEL, tmp->jlpt_level, SCHOOL_GRADE, tmp->grade, -1); tmp = &g_array_index (arr, Kanji, ++i); } gtk_tree_view_set_model (GTK_TREE_VIEW (treeview), GTK_TREE_MODEL (store)); g_object_unref (store); g_signal_connect (G_OBJECT (treeview), "row-activated", G_CALLBACK (row_activated), (gpointer)arr); scrolled_win = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_win), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add (GTK_CONTAINER (scrolled_win), treeview); p.arr = arr; p.tview = treeview; p.changed = FALSE; GtkWidget *add_button = gtk_button_new_from_stock (GTK_STOCK_ADD); GtkWidget *remove_button = gtk_button_new_from_stock (GTK_STOCK_REMOVE); GtkWidget *edit_button = gtk_button_new_from_stock (GTK_STOCK_EDIT); GtkWidget *save_button = gtk_button_new_from_stock (GTK_STOCK_SAVE); GtkWidget *close_button = gtk_button_new_from_stock (GTK_STOCK_CLOSE); g_signal_connect (G_OBJECT (add_button), "clicked", G_CALLBACK (row_add), (gpointer) &p); g_signal_connect (G_OBJECT (remove_button), "clicked", G_CALLBACK (row_remove), (gpointer) &p); g_signal_connect (G_OBJECT (edit_button), "clicked", G_CALLBACK (row_edit), (gpointer) &p); g_signal_connect (G_OBJECT (save_button), "clicked", G_CALLBACK (save_dict), (gpointer) &p); g_signal_connect (G_OBJECT (close_button), "clicked", G_CALLBACK (close_dialog), (gpointer) dialog); hbox = gtk_hbox_new (FALSE, 5); gtk_box_pack_start (GTK_BOX (hbox), add_button, FALSE, FALSE, 5); gtk_box_pack_start (GTK_BOX (hbox), remove_button, FALSE, FALSE, 5); gtk_box_pack_start (GTK_BOX (hbox), edit_button, FALSE, FALSE, 5); gtk_box_pack_start (GTK_BOX (hbox), save_button, FALSE, FALSE, 5); gtk_box_pack_start (GTK_BOX (hbox), close_button, FALSE, FALSE, 5); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), scrolled_win, TRUE, TRUE, 5); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, FALSE, FALSE, 5); gtk_tree_view_set_enable_search (GTK_TREE_VIEW (treeview), FALSE); gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE); gtk_widget_show_all (dialog); result = gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (dialog); return p.changed; }
int main (int argc, char *argv[]) { char lang[128] = "de-DE"; guint j, notify_time_cycle = 0; if (argc > 2) { for (j = 1; j < argc; j++) { if (strcmp(argv[j], "-notify") == 0 && atoi(argv[j+1]) > 0) { notify_time_cycle = atoi(argv[j+1]); } if (strcmp(argv[j], "-lang") == 0 && strlen(argv[j+1]) > 0) { strncpy(lang, argv[j+1], sizeof(lang)); } j++; } } phrases_set_lang(lang); phrases_load(); list_get_file(); if (notify_time_cycle > 0) { notification_service(notify_time_cycle); } list_load(); list_sort(); GtkWidget *window, *vbox, *treeview, *scrolled_win; GtkWidget *hbox_buttons, *button_add, *button_remove; GtkListStore *store; GtkTreeIter iter; GtkTreeSelection *selection; gtk_init(&argc, &argv); window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(window), "gEventlist"); gtk_container_set_border_width(GTK_CONTAINER(window), 10); gtk_widget_set_size_request(window, 480, 360); g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(destroy), NULL); // teeview / scrolled_win treeview = gtk_tree_view_new(); setup_tree_view(treeview); store = gtk_list_store_new(COLUMNS, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT); guint i = 0; while (i < list_length) { st_gtk_list_item temp = get_gtk_list_item(i); gtk_list_store_append(store, &iter); gtk_list_store_set(store, &iter, TYPE, temp.type, DATE, temp.date, TIME, temp.time, TEXT, temp.text, CYCLE, temp.cycle, -1 ); i++; } gtk_tree_view_set_model(GTK_TREE_VIEW(treeview), GTK_TREE_MODEL(store)); g_object_unref(store); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); gtk_tree_selection_set_mode(selection, GTK_SELECTION_MULTIPLE); scrolled_win = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (scrolled_win), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add(GTK_CONTAINER(scrolled_win), treeview); // button bar button_add = gtk_button_new_from_stock(GTK_STOCK_ADD); button_remove = gtk_button_new_from_stock(GTK_STOCK_REMOVE); hbox_buttons = gtk_hbox_new(TRUE, 5); gtk_box_pack_start(GTK_BOX(hbox_buttons), button_add, FALSE, TRUE, 0); gtk_box_pack_start(GTK_BOX(hbox_buttons), button_remove, FALSE, TRUE, 0); // button events g_signal_connect(G_OBJECT(button_add), "clicked", G_CALLBACK(add_event), (gpointer)treeview); g_signal_connect(G_OBJECT(button_remove), "clicked", G_CALLBACK(remove_events), (gpointer)treeview); // vbox vbox = gtk_vbox_new(FALSE, 5); gtk_box_pack_start (GTK_BOX(vbox), scrolled_win, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX(vbox), hbox_buttons, FALSE, TRUE, 0); gtk_container_add(GTK_CONTAINER(window), vbox); gtk_widget_show_all(window); gtk_main (); return 0; }
void on_radiobutton1_pressed( GtkWidget *widget, struct _properties *properties ) { g_print ("radiobutton1 was pressed\n"); properties->format = CALENDAR_OPTIONS3; if( option_algorithms[properties->modeltype].supportStrikes ) { // custom strikes... if( strike_control[properties->strikestoogle].incrementor == 0 && properties->spreads != 1 ) { gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike2); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes2),"Strike"); gtk_widget_show(properties->GtkInfo.labelStrikes2); gtk_widget_hide(properties->GtkInfo.scaleStrikes); } // custom strikes with spreads... else if( strike_control[properties->strikestoogle].incrementor == 0 && properties->spreads == 1 ) { gtk_widget_hide(properties->GtkInfo.scaleStrikes); gtk_widget_hide(properties->GtkInfo.scaleStrikes2); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"StrikeLeg1"); gtk_widget_show(properties->GtkInfo.labelStrikes); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes2),"StrikeLeg2"); gtk_widget_show(properties->GtkInfo.labelStrikes2); gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike); gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike2); gtk_widget_hide(properties->GtkInfo.comboboxStrikes); } else if( strike_control[properties->strikestoogle].incrementor != 0 && properties->spreads == 1 ) { gtk_widget_hide(properties->GtkInfo.labelStrikes); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike); gtk_widget_hide(properties->GtkInfo.labelStrikes2); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); gtk_widget_show(properties->GtkInfo.comboboxStrikes); } else { gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes2),"StrikeLeg2"); gtk_widget_hide(properties->GtkInfo.labelStrikes2); gtk_widget_show(properties->GtkInfo.scaleStrikes); } if( strike_control[properties->strikestoogle].incrementor != 0 && properties->spreads != 1 ) { gtk_widget_show(properties->GtkInfo.comboboxStrikes); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"Strikes"); gtk_widget_show(properties->GtkInfo.labelStrikes); } } else { gtk_widget_hide(properties->GtkInfo.comboboxStrikes); gtk_widget_hide(properties->GtkInfo.labelStrikes); } if( strike_control[properties->strikestoogle].incrementor != 0 && properties->spreads != 1 ) { gtk_widget_hide(properties->GtkInfo.labelStrikes2); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); } set_scale_button(properties); gtk_widget_show(properties->GtkInfo.checkbuttonSpreads); setup_tree_view(properties); show_title(properties); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.radiobutton1),true); }
void on_radiobutton3_pressed( GtkWidget *widget, struct _properties *properties ) { g_print ("radiobutton3 was pressed\n"); properties->format = CALENDAR_CUSTOM; if( strike_control[properties->strikestoogle].incrementor == 0 ) { properties->strikestoogle = 0; gtk_combo_box_set_active(GTK_COMBO_BOX(properties->GtkInfo.comboboxStrikes), 0); } gtk_widget_hide(properties->GtkInfo.comboboxStrikes); gtk_widget_hide(properties->GtkInfo.scaleStrikes); gtk_widget_hide(properties->GtkInfo.scaleStrikes2); if( option_algorithms[properties->modeltype].supportStrikes ) { gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike); gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike2); } else { gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); } if( properties->spreads == 1 ) { gtk_widget_show(properties->GtkInfo.scaleMonths2); gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"StrikeLeg1"); gtk_button_set_label(GTK_BUTTON(properties->GtkInfo.scaleMonths),"Month Adj Leg1"); gtk_widget_show(properties->GtkInfo.scaleMonths); if( option_algorithms[properties->modeltype].supportStrikes ) { gtk_widget_show(properties->GtkInfo.labelStrikes2); gtk_widget_show(properties->GtkInfo.spinbuttonCustomStrike2); } else { gtk_widget_hide(properties->GtkInfo.labelStrikes2); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); } g_print("Strike Leg1\n"); } else if( properties->spreads == 0 ) { gtk_label_set_text(GTK_LABEL(properties->GtkInfo.labelStrikes),"Strike"); gtk_widget_hide(properties->GtkInfo.labelStrikes2); gtk_widget_hide(properties->GtkInfo.spinbuttonCustomStrike2); g_print("NO Strike Leg1\n"); } if( option_algorithms[properties->modeltype].supportStrikes ) { gtk_widget_show(properties->GtkInfo.labelStrikes); } else { gtk_widget_hide(properties->GtkInfo.labelStrikes); } gtk_widget_show(properties->GtkInfo.checkbuttonSpreads); setup_tree_view(properties); show_title(properties); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(properties->GtkInfo.radiobutton3),true); }
int main (int argc, char *argv[]) { GtkWidget *window, *treeview, *scrolled_win; GtkTreeStore *store; GtkTreeIter iter, child; guint i = 0, j; gtk_init (&argc, &argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "Grocery List"); gtk_container_set_border_width (GTK_CONTAINER (window), 10); gtk_widget_set_size_request (window, 275, 300); g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (gtk_main_quit), NULL); treeview = gtk_tree_view_new (); setup_tree_view (treeview); store = gtk_tree_store_new (COLUMNS, G_TYPE_BOOLEAN, G_TYPE_INT, G_TYPE_STRING); while (list[i].product != NULL) { /* If the product type is a category, count the quantity of all of the products * in the category that are going to be boughty. */ if (list[i].product_type == PRODUCT_CATEGORY) { j = i + 1; /* Calculate how many products will be bought in the category. */ while (list[j].product != NULL && list[j].product_type != PRODUCT_CATEGORY) { if (list[j].buy) list[i].quantity += list[j].quantity; j++; } /* Add the category as a new root element. */ gtk_tree_store_append (store, &iter, NULL); gtk_tree_store_set (store, &iter, BUY_IT, list[i].buy, QUANTITY, list[i].quantity, PRODUCT, list[i].product, -1); } /* Otherwise, add the product as a child of the category. */ else { gtk_tree_store_append (store, &child, &iter); gtk_tree_store_set (store, &child, BUY_IT, list[i].buy, QUANTITY, list[i].quantity, PRODUCT, list[i].product, -1); } i++; } gtk_tree_view_set_model (GTK_TREE_VIEW (treeview), GTK_TREE_MODEL (store)); gtk_tree_view_expand_all (GTK_TREE_VIEW (treeview)); g_object_unref (store); scrolled_win = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_win), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add (GTK_CONTAINER (scrolled_win), treeview); gtk_container_add (GTK_CONTAINER (window), scrolled_win); gtk_widget_show_all (window); gtk_main (); return 0; }
void fl_init(GtkBuilder *builder) { GEList *dir_list; /* * get the widgets from glade */ w_main = GTK_WINDOW(gtk_builder_get_object(builder, "w_main")); combo_wd = GTK_COMBO_BOX_TEXT(gtk_builder_get_object(builder, "combo_wd")); ent_wd = GTK_ENTRY(gtk_builder_get_object(builder, "ent_wd")); cb_recurse = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "cb_recurse")); tv_files = GTK_TREE_VIEW(gtk_builder_get_object(builder, "tv_files")); lab_file_count = GTK_LABEL(gtk_builder_get_object(builder, "lab_file_count")); menu_file_list = GTK_MENU(gtk_builder_get_object(builder, "menu_file_list")); m_ctx_manual_rename = GTK_MENU_ITEM(gtk_builder_get_object(builder, "m_ctx_manual_rename")); m_ctx_delete = GTK_MENU_ITEM(gtk_builder_get_object(builder, "m_ctx_delete")); m_ctx_unselect_all = GTK_MENU_ITEM(gtk_builder_get_object(builder, "m_ctx_unselect_all")); l_help_title = GTK_LABEL(gtk_builder_get_object(builder, "l_help_title")); l_help_secondary = GTK_LABEL(gtk_builder_get_object(builder, "l_help_secondary")); /* * create the file chooser */ dlg_wd_select = GTK_DIALOG(gtk_file_chooser_dialog_new( _("Select Directory"), w_main, GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, "Cancel", GTK_RESPONSE_CANCEL, "Open", GTK_RESPONSE_ACCEPT, NULL)); /* * load file list icons */ pix_file = gdk_pixbuf_new_from_file(DATADIR"/file.png", NULL); pix_folder = gdk_pixbuf_new_from_file(DATADIR"/folder.png", NULL); /* * setup the file list treeview */ setup_tree_view(); g_signal_connect(gtk_tree_view_get_selection(tv_files), "changed", G_CALLBACK(cb_file_selection_changed), NULL); gtk_tree_selection_set_select_function(gtk_tree_view_get_selection(tv_files), cb_file_selection_changing, NULL, NULL); /* * get the preference values, or set them to defaults */ /* recurse */ recurse = pref_get_ref("ds:recurse"); if (!recurse) { gboolean temp = FALSE; recurse = pref_set("ds:recurse", PREF_BOOLEAN, &temp); } gtk_toggle_button_set_active(cb_recurse, *recurse); /* dir_mru */ dir_list = pref_get_ref("ds:dir_mru"); if (!dir_list) { GEList *temp_list = g_elist_new(); g_elist_append(temp_list, (void*)g_get_home_dir()); dir_list = pref_set("ds:dir_mru", PREF_STRING | PREF_LIST, temp_list); g_elist_free_data(temp_list); } dir_mru = mru_new_from_list(10, dir_list); }