Menu

[r121]: / api.cpp  Maximize  Restore  History

Download this file

158 lines (118 with data), 6.7 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
/*
The api.cpp file is where the API is built for the entire program.
*/
void api()
{
//sets what the widgets are
g_print("Defining API Variables...\n");
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
menubox=gtk_vbox_new(FALSE, 0);
menubar=get_menubar_menu(window);
mainpane=gtk_hpaned_new();
filelist=gtk_label_new("");
notebook=gtk_notebook_new();
filesel=gtk_file_selection_new("Devchekio - File Selction");
//save check settings
save_check_vbox=gtk_table_new(2, 3, TRUE);
save_check_label=gtk_label_new("Do you wish to save this current document before closing it?\n");
save_check_save=gtk_button_new_with_label("Save");
save_check_save_as=gtk_button_new_with_label("Save As");
save_check_no=gtk_button_new_with_label("Don't Save");
save_check_none=gtk_button_new_with_label("Don't Save Any");
save_check_all=gtk_button_new_with_label("Save All");
save_check_cancel=gtk_button_new_with_label("Cancel");
save_check=gtk_dialog_new();
//search box setting
search_find=gtk_button_new_with_label("Find");
search_box=gtk_dialog_new();
g_print("Setting Window Properties...\n");
//set save window title
gtk_window_set_title(GTK_WINDOW(save_check), "Devchekio - Save File");
//set search window title
gtk_window_set_title(GTK_WINDOW(search_box), "Devchekio - Search");
g_print("Packing API...\n");
//lays out the menu
gtk_box_pack_start(GTK_BOX(menubox), menubar, FALSE, TRUE, 0);
gtk_container_add(GTK_CONTAINER(menubox), mainpane);
//pack dialog
gtk_container_add(GTK_CONTAINER(GTK_DIALOG(save_check)->vbox), save_check_label);
gtk_container_add(GTK_CONTAINER(GTK_DIALOG(save_check)->action_area), save_check_vbox);
gtk_table_attach_defaults(GTK_TABLE(save_check_vbox), save_check_save, 0, 1, 0, 1);
gtk_table_attach_defaults(GTK_TABLE(save_check_vbox), save_check_save_as, 1, 2, 0, 1);
gtk_table_attach_defaults(GTK_TABLE(save_check_vbox), save_check_no, 2, 3, 0, 1);
gtk_table_attach_defaults(GTK_TABLE(save_check_vbox), save_check_none, 0, 1, 1, 2);
gtk_table_attach_defaults(GTK_TABLE(save_check_vbox), save_check_all, 1, 2, 1, 2);
gtk_table_attach_defaults(GTK_TABLE(save_check_vbox), save_check_cancel, 2, 3, 1, 2);
//table properties
gtk_table_set_row_spacings(GTK_TABLE(save_check_vbox), 10);
gtk_table_set_col_spacings(GTK_TABLE(save_check_vbox), 10);
gtk_container_border_width(GTK_CONTAINER(save_check), 5);
//pack search
gtk_container_add(GTK_CONTAINER(GTK_DIALOG(search_box)->action_area), search_find);
g_print("Linking Events...\n");
//sets event functions
gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(destroyapp), NULL);
g_signal_connect(G_OBJECT(GTK_FILE_SELECTION(filesel)->ok_button), "clicked", G_CALLBACK(file_sel), (gpointer)filesel);
g_signal_connect(G_OBJECT(GTK_FILE_SELECTION(filesel)->cancel_button), "clicked", G_CALLBACK(file_sel_x), (gpointer)filesel);
g_signal_connect(G_OBJECT(save_check), "delete_event", G_CALLBACK(on_save_cancel), NULL);
g_signal_connect(G_OBJECT(save_check_save), "clicked", G_CALLBACK(on_save), NULL);
g_signal_connect(G_OBJECT(save_check_save_as), "clicked", G_CALLBACK(on_save_as), NULL);
g_signal_connect(G_OBJECT(save_check_no), "clicked", G_CALLBACK(check_x), NULL);
g_signal_connect(G_OBJECT(save_check_none), "clicked", G_CALLBACK(on_save_none), NULL);
g_signal_connect(G_OBJECT(save_check_all), "clicked", G_CALLBACK(on_save_all), NULL);
g_signal_connect(G_OBJECT(save_check_cancel), "clicked", G_CALLBACK(on_save_cancel), NULL);
g_signal_connect_after(G_OBJECT(notebook), "switch-page", G_CALLBACK(on_tab_plus), NULL);
//g_signal_connect(G_OBJECT(search_box), "delete_event", G_CALLBACK(gtk_main_quit), NULL);
g_print("More Packing...\n");
//lays on panes
gtk_paned_add1(GTK_PANED(mainpane), filelist);
gtk_paned_add2(GTK_PANED(mainpane), notebook);
//puts the menubox onto the window
gtk_container_add(GTK_CONTAINER(window), menubox);
g_print("More Properties...\n");
//set sizes
gtk_container_border_width(GTK_CONTAINER(window), 0);
gtk_window_set_default_size(GTK_WINDOW(window), 700, 500);
//gtk_container_border_width(GTK_CONTAINER(save_check_label), 20);
//sets windows prefs
gtk_window_set_title(GTK_WINDOW(window), "Devchekio");
icolst=g_list_prepend(icolst, gdk_pixbuf_new_from_file("images/icon_16.png", tmppixbuf));
icolst=g_list_prepend(icolst, gdk_pixbuf_new_from_file("images/icon_32.png", tmppixbuf));
icolst=g_list_prepend(icolst, gdk_pixbuf_new_from_file("images/icon_48.png", tmppixbuf));
icolst=g_list_prepend(icolst, gdk_pixbuf_new_from_file("images/icon_64.png", tmppixbuf));
icolst=g_list_prepend(icolst, gdk_pixbuf_new_from_file("images/icon_128.png", tmppixbuf));
gtk_window_set_icon_list(GTK_WINDOW(window), icolst);
g_print("Showing API...\n");
//shows all current widgets needed
gtk_widget_show(menubox);
gtk_widget_show(menubar);
gtk_widget_show(mainpane);
gtk_widget_show(filelist);
gtk_widget_show(notebook);
gtk_widget_show(window);
gtk_widget_show(save_check_label);
gtk_widget_show(save_check_vbox);
gtk_widget_show(save_check_save);
gtk_widget_show(save_check_save_as);
gtk_widget_show(save_check_no);
gtk_widget_show(save_check_none);
gtk_widget_show(save_check_all);
gtk_widget_show(save_check_cancel);
gtk_widget_show(search_find);
//tells that the three widgets are part of the main window
gtk_window_set_transient_for(GTK_WINDOW(filesel), GTK_WINDOW(window));
gtk_window_set_transient_for(GTK_WINDOW(save_check), GTK_WINDOW(window));
gtk_window_set_transient_for(GTK_WINDOW(search_box), GTK_WINDOW(window));
//opens first tabs
on_new();
on_new();
//sets and checks line numbers on and word wrap
ifactory=gtk_item_factory_from_widget(menubar);
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtk_item_factory_get_item(ifactory, "/View/Line Numbers")), true);
on_linen();
on_wrap();
curtab=gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook));
//sees to see if devchekio was opened with paramters and opens them
fileprmp();
return;
}
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.