Project:
Devchekio
Code Location:
https://devchekio.svn.sourceforge.net/svnroot/devchekio
/
Outline
- > Fn void api()
api.cpp
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
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; }
