forked from joao-o/prjprog
/
proj.c
95 lines (65 loc) · 2.74 KB
/
proj.c
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
#include <gtk/gtk.h>
#include <cairo.h>
#include <stdio.h>
#include <math.h>
#include <string.h>
#include <stdlib.h>
#include <callbacks.h>
#include <structs.h>
int
main (int argc, char **argv)
{
progdata *pdat;
GtkWidget *window, *button, *bar;
// boxes
GtkWidget *vbox1, *topbox, *midbox, *setbox, *datbox, *drawbox, *noteb, *notebp1, *optnbox;
//frames
GtkWidget *dtbfrm, *drwfrm;
pdat = calloc (1, sizeof (progdata));
strcpy (pdat->val, "value= ");
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size (GTK_WINDOW (window), 720, 576);
gtk_window_set_position (GTK_WINDOW (window), GTK_WIN_POS_CENTER);
/////////////////////////////////////////////////////////////////////////////////////////////
vbox1 = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), vbox1);
topbox = gtk_hbox_new (FALSE, 0);
gtk_box_pack_start (GTK_BOX(vbox1), topbox, FALSE, TRUE, 0);
midbox = gtk_hbox_new (FALSE, 0);
gtk_box_pack_start (GTK_BOX(vbox1), midbox, TRUE, TRUE, 0);
setbox = gtk_hbox_new (FALSE, 0);
gtk_box_pack_end (GTK_BOX(vbox1), setbox, FALSE, FALSE, 0);
datbox = gtk_vbox_new (FALSE, 0);
gtk_box_pack_end (GTK_BOX(midbox), datbox, FALSE, FALSE, 0);
dtbfrm = gtk_frame_new ("Opções");
gtk_box_pack_start (GTK_BOX (datbox), dtbfrm, TRUE, TRUE,0);
drawbox = gtk_hbox_new (FALSE, 0);
gtk_box_pack_start (GTK_BOX(midbox), drawbox, TRUE, TRUE, 0);
drwfrm = gtk_frame_new ("main");
gtk_container_add (GTK_CONTAINER (drawbox), drwfrm);
notebp1 = gtk_vbox_new(FALSE, 0);
optnbox = gtk_vbox_new(FALSE, 0);
gtk_container_add(GTK_CONTAINER(dtbfrm),optnbox);
/////////////////////////////////////////////////////////////////////////////////////////////
pdat->adj = gtk_adjustment_new (0.0, 0.0, 101.0, 0.1, 1.0, 1.0);
bar = gtk_hscale_new (GTK_ADJUSTMENT (pdat->adj));
gtk_box_pack_start (GTK_BOX (optnbox), bar, FALSE, TRUE, 0);
pdat->lbl = gtk_label_new (pdat->val);
gtk_box_pack_start (GTK_BOX (topbox), pdat->lbl, TRUE, TRUE, 0);
noteb = gtk_notebook_new();
gtk_notebook_append_page (GTK_NOTEBOOK(noteb),notebp1,NULL);
gtk_box_pack_start(GTK_BOX(setbox),noteb, TRUE, TRUE, 0);
button = gtk_button_new_with_label("\treset\t");
gtk_box_pack_start(GTK_BOX(optnbox), button, FALSE, FALSE ,20);
/////////////////////////////////////////////////////////////////////////////////////////////
g_signal_connect_swapped (G_OBJECT (window), "destroy",
G_CALLBACK (gtk_main_quit), NULL);
g_signal_connect (G_OBJECT (button), "clicked",
G_CALLBACK (set_val), pdat);
g_signal_connect (G_OBJECT (pdat->adj), "value-changed",
G_CALLBACK (upd_txt), pdat);
gtk_widget_show_all(window);
gtk_main ();
return 0;
}