199
create_proc_view (ProcData *procdata)
207
vbox1 = gtk_vbox_new (FALSE, 18);
208
gtk_container_set_border_width (GTK_CONTAINER (vbox1), 12);
210
hbox1 = gtk_hbox_new (FALSE, 12);
211
gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0);
213
string = make_loadavg_string ();
214
procdata->loadavg = gtk_label_new (string);
216
gtk_box_pack_start (GTK_BOX (hbox1), procdata->loadavg, FALSE, FALSE, 0);
219
scrolled = proctable_new (procdata);
222
gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled),
225
gtk_box_pack_start (GTK_BOX (vbox1), scrolled, TRUE, TRUE, 0);
228
hbox2 = gtk_hbox_new (FALSE, 0);
229
gtk_box_pack_start (GTK_BOX (vbox1), hbox2, FALSE, FALSE, 0);
231
procdata->endprocessbutton = gtk_button_new_with_mnemonic (_("End _Process"));
232
gtk_box_pack_end (GTK_BOX (hbox2), procdata->endprocessbutton, FALSE, FALSE, 0);
233
g_signal_connect (G_OBJECT (procdata->endprocessbutton), "clicked",
234
G_CALLBACK (cb_end_process_button_pressed), procdata);
237
/* create popup_menu */
238
procdata->popup_menu = gtk_ui_manager_get_widget (procdata->uimanager, "/PopupMenu");
245
199
make_title_label (const char *text)
262
create_sys_view (ProcData *procdata)
264
GtkWidget *vbox, *hbox;
265
GtkWidget *cpu_box, *mem_box, *net_box;
215
create_proc_view(ProcData *procdata, GtkBuilder * builder)
221
/* create the processes tab */
222
string = make_loadavg_string ();
223
procdata->loadavg = GTK_WIDGET (gtk_builder_get_object (builder, "load_avg_label"));
224
gtk_label_set_text (GTK_LABEL (procdata->loadavg), string);
227
proctree = proctable_new (procdata);
228
scrolled = GTK_WIDGET (gtk_builder_get_object (builder, "processes_scrolled"));
230
gtk_container_add (GTK_CONTAINER (scrolled), proctree);
232
procdata->endprocessbutton = GTK_WIDGET (gtk_builder_get_object (builder, "endprocessbutton"));
233
g_signal_connect (G_OBJECT (procdata->endprocessbutton), "clicked",
234
G_CALLBACK (cb_end_process_button_pressed), procdata);
236
/* create popup_menu for the processes tab */
237
procdata->popup_menu = gtk_ui_manager_get_widget (procdata->uimanager, "/PopupMenu");
241
create_sys_view (ProcData *procdata, GtkBuilder * builder)
266
243
GtkWidget *cpu_graph_box, *mem_graph_box, *net_graph_box;
267
GtkWidget *label,*cpu_label, *spacer;
244
GtkWidget *label,*cpu_label;
268
245
GtkWidget *table;
269
246
GtkWidget *color_picker;
270
GtkWidget *mem_legend_box, *net_legend_box;
247
GtkWidget *picker_alignment;
271
248
LoadGraph *cpu_graph, *mem_graph, *net_graph;
303
hbox = gtk_hbox_new(FALSE, 0);
304
spacer = gtk_label_new ("");
305
gtk_widget_set_size_request(GTK_WIDGET(spacer), 57, -1);
306
gtk_box_pack_start (GTK_BOX (hbox), spacer,
310
gtk_box_pack_start (GTK_BOX (cpu_graph_box), hbox,
313
/*cpu_legend_box = gtk_hbox_new(TRUE, 10);
314
gtk_box_pack_start (GTK_BOX (hbox), cpu_legend_box,
317
GtkWidget* cpu_table = gtk_table_new(std::min(procdata->config.num_cpus / 4, 1),
318
std::min(procdata->config.num_cpus, 4),
320
gtk_table_set_row_spacings(GTK_TABLE(cpu_table), 6);
321
gtk_table_set_col_spacings(GTK_TABLE(cpu_table), 6);
322
gtk_box_pack_start(GTK_BOX(hbox), cpu_table, TRUE, TRUE, 0);
269
GtkWidget* cpu_table = GTK_WIDGET (gtk_builder_get_object (builder, "cpu_table"));
324
271
for (i=0;i<procdata->config.num_cpus; i++) {
325
272
GtkWidget *temp_hbox;
327
temp_hbox = gtk_hbox_new (FALSE, 0);
328
gtk_table_attach(GTK_TABLE(cpu_table), temp_hbox,
331
static_cast<GtkAttachOptions>(GTK_EXPAND | GTK_FILL),
332
static_cast<GtkAttachOptions>(GTK_EXPAND | GTK_FILL),
274
temp_hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
276
gtk_grid_insert_column(GTK_GRID(cpu_table), i%cols);
278
if ((i+1)%cols ==cols) {
279
gtk_grid_insert_row(GTK_GRID(cpu_table), (i+1)/cols);
281
gtk_grid_attach(GTK_GRID (cpu_table), temp_hbox, i%cols, i/cols, 1, 1);
334
282
//gtk_size_group_add_widget (sizegroup, temp_hbox);
335
283
/*g_signal_connect (G_OBJECT (temp_hbox), "size_request",
336
284
G_CALLBACK(size_request), &cpu_size);
381
hbox = gtk_hbox_new(FALSE, 0);
382
spacer = gtk_label_new ("");
383
gtk_widget_set_size_request(GTK_WIDGET(spacer), 54, -1);
384
gtk_box_pack_start (GTK_BOX (hbox), spacer,
388
gtk_box_pack_start (GTK_BOX (mem_graph_box), hbox,
391
mem_legend_box = gtk_hbox_new(TRUE, 10);
392
gtk_box_pack_start (GTK_BOX (hbox), mem_legend_box,
395
table = gtk_table_new (2, 7, FALSE);
396
gtk_table_set_row_spacings (GTK_TABLE (table), 6);
397
gtk_table_set_col_spacings (GTK_TABLE (table), 6);
398
gtk_box_pack_start (GTK_BOX (mem_legend_box), table,
401
label_text = g_strdup(_("Memory"));
322
table = GTK_WIDGET (gtk_builder_get_object (builder, "mem_table"));
402
324
color_picker = load_graph_get_mem_color_picker(mem_graph);
403
325
g_signal_connect (G_OBJECT (color_picker), "color_set",
404
326
G_CALLBACK (cb_mem_color_changed), procdata);
405
title_text = g_strdup_printf(title_template, label_text);
327
title_text = g_strdup_printf(title_template, _("Memory"));
406
328
gsm_color_button_set_title(GSM_COLOR_BUTTON(color_picker), title_text);
407
329
g_free(title_text);
408
gtk_table_attach (GTK_TABLE (table), color_picker, 0, 1, 0, 2, GTK_SHRINK, GTK_SHRINK, 0, 0);
410
label = gtk_label_new (label_text);
412
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
413
gtk_table_attach (GTK_TABLE (table), label, 1, 7, 0, 1, GTK_FILL, GTK_FILL, 0, 0);
415
gtk_table_attach (GTK_TABLE (table),
416
load_graph_get_labels(mem_graph)->memory,
426
table = gtk_table_new (2, 7, FALSE);
427
gtk_table_set_row_spacings (GTK_TABLE (table), 6);
428
gtk_table_set_col_spacings (GTK_TABLE (table), 6);
429
gtk_box_pack_start (GTK_BOX (mem_legend_box), table,
432
label_text = g_strdup(_("Swap"));
331
gtk_grid_attach (GTK_GRID (table), color_picker, 0, 0, 1, 2);
333
gtk_grid_attach (GTK_GRID (table), load_graph_get_labels(mem_graph)->memory, 1, 1, 1, 1);
433
335
color_picker = load_graph_get_swap_color_picker(mem_graph);
434
336
g_signal_connect (G_OBJECT (color_picker), "color_set",
435
337
G_CALLBACK (cb_swap_color_changed), procdata);
436
title_text = g_strdup_printf(title_template, label_text);
338
title_text = g_strdup_printf(title_template, _("Swap"));
437
339
gsm_color_button_set_title(GSM_COLOR_BUTTON(color_picker), title_text);
438
340
g_free(title_text);
439
gtk_table_attach (GTK_TABLE (table), color_picker, 0, 1, 0, 2, GTK_SHRINK, GTK_SHRINK, 0, 0);
441
label = gtk_label_new (label_text);
443
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
444
gtk_table_attach (GTK_TABLE (table), label, 1, 7, 0, 1, GTK_FILL, GTK_FILL, 0, 0);
446
gtk_table_attach (GTK_TABLE (table),
447
load_graph_get_labels(mem_graph)->swap,
341
gtk_grid_attach (GTK_GRID (table), color_picker, 2, 0, 1, 2);
343
gtk_grid_attach (GTK_GRID (table), load_graph_get_labels(mem_graph)->swap, 3, 1, 1, 1);
457
345
procdata->mem_graph = mem_graph;
459
347
/* The net box */
460
net_box = gtk_vbox_new (FALSE, 6);
461
gtk_box_pack_start (GTK_BOX (vbox), net_box, TRUE, TRUE, 0);
463
label = make_title_label (_("Network History"));
464
gtk_box_pack_start (GTK_BOX (net_box), label, FALSE, FALSE, 0);
466
net_graph_box = gtk_vbox_new (FALSE, 6);
467
gtk_box_pack_start (GTK_BOX (net_box), net_graph_box, TRUE, TRUE, 0);
348
net_graph_box = GTK_WIDGET (gtk_builder_get_object (builder, "net_graph_box"));
469
350
net_graph = new LoadGraph(LOAD_GRAPH_NET);
470
351
gtk_box_pack_start (GTK_BOX (net_graph_box),
476
hbox = gtk_hbox_new(FALSE, 0);
477
spacer = gtk_label_new ("");
478
gtk_widget_set_size_request(GTK_WIDGET(spacer), 54, -1);
479
gtk_box_pack_start (GTK_BOX (hbox), spacer,
483
gtk_box_pack_start (GTK_BOX (net_graph_box), hbox,
486
net_legend_box = gtk_hbox_new(TRUE, 10);
487
gtk_box_pack_start (GTK_BOX (hbox), net_legend_box,
490
table = gtk_table_new (2, 4, FALSE);
491
gtk_table_set_row_spacings (GTK_TABLE (table), 6);
492
gtk_table_set_col_spacings (GTK_TABLE (table), 6);
493
gtk_box_pack_start (GTK_BOX (net_legend_box), table,
496
label_text = g_strdup(_("Receiving"));
357
table = GTK_WIDGET (gtk_builder_get_object (builder, "net_table"));
498
359
color_picker = gsm_color_button_new (
499
360
&net_graph->colors.at(0), GSMCP_TYPE_NETWORK_IN);
500
361
g_signal_connect (G_OBJECT (color_picker), "color_set",
501
362
G_CALLBACK (cb_net_in_color_changed), procdata);
502
title_text = g_strdup_printf(title_template, label_text);
363
title_text = g_strdup_printf(title_template, _("Receiving"));
503
364
gsm_color_button_set_title(GSM_COLOR_BUTTON(color_picker), title_text);
504
365
g_free(title_text);
505
gtk_table_attach (GTK_TABLE (table), color_picker, 0, 1, 0, 2, GTK_SHRINK, GTK_SHRINK, 0, 0);
507
label = gtk_label_new (label_text);
509
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
510
gtk_table_attach (GTK_TABLE (table), label, 1, 2, 0, 1, GTK_FILL, GTK_FILL, 0, 0);
512
gtk_misc_set_alignment (GTK_MISC (load_graph_get_labels(net_graph)->net_in),
516
hbox = gtk_hbox_new (FALSE, 0);
517
g_signal_connect (G_OBJECT (hbox), "size_request",
518
G_CALLBACK(size_request), &net_size);
519
gtk_box_pack_start (GTK_BOX (hbox),
520
load_graph_get_labels(net_graph)->net_in,
525
gtk_widget_set_size_request(GTK_WIDGET(load_graph_get_labels(net_graph)->net_in), 100, -1);
526
gtk_table_attach (GTK_TABLE (table), load_graph_get_labels(net_graph)->net_in, 2, 3, 0, 1,
527
static_cast<GtkAttachOptions>(GTK_EXPAND | GTK_FILL), GTK_FILL, 0, 0);
529
label = gtk_label_new (_("Total Received"));
530
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
531
gtk_table_attach (GTK_TABLE (table), label, 1, 2, 1, 2, GTK_FILL, GTK_FILL, 0, 0);
533
gtk_misc_set_alignment (GTK_MISC (load_graph_get_labels(net_graph)->net_in_total),
536
gtk_table_attach (GTK_TABLE (table),
537
load_graph_get_labels(net_graph)->net_in_total,
547
spacer = gtk_label_new ("");
548
gtk_widget_set_size_request(GTK_WIDGET(spacer), 38, -1);
549
gtk_table_attach (GTK_TABLE (table), spacer, 3, 4, 0, 1, GTK_FILL, GTK_FILL, 0, 0);
551
table = gtk_table_new (2, 3, FALSE);
552
gtk_table_set_row_spacings (GTK_TABLE (table), 6);
553
gtk_table_set_col_spacings (GTK_TABLE (table), 6);
554
gtk_box_pack_start (GTK_BOX (net_legend_box), table,
557
label_text = g_strdup(_("Sending"));
366
picker_alignment = GTK_WIDGET (gtk_builder_get_object (builder, "receiving_picker_alignment"));
367
gtk_container_add (GTK_CONTAINER (picker_alignment), color_picker);
369
//gtk_widget_set_size_request(GTK_WIDGET(load_graph_get_labels(net_graph)->net_in), 100, -1);
370
gtk_grid_attach (GTK_GRID (table), load_graph_get_labels(net_graph)->net_in, 2, 0, 1, 1);
372
gtk_grid_attach (GTK_GRID (table), load_graph_get_labels(net_graph)->net_in_total, 2, 1, 1, 1);
559
374
color_picker = gsm_color_button_new (
560
375
&net_graph->colors.at(1), GSMCP_TYPE_NETWORK_OUT);
561
376
g_signal_connect (G_OBJECT (color_picker), "color_set",
562
377
G_CALLBACK (cb_net_out_color_changed), procdata);
563
title_text = g_strdup_printf(title_template, label_text);
378
title_text = g_strdup_printf(title_template, _("Sending"));
564
379
gsm_color_button_set_title(GSM_COLOR_BUTTON(color_picker), title_text);
565
380
g_free(title_text);
566
gtk_table_attach (GTK_TABLE (table), color_picker, 0, 1, 0, 2, GTK_SHRINK, GTK_SHRINK, 0, 0);
568
label = gtk_label_new (label_text);
570
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
571
gtk_table_attach (GTK_TABLE (table), label, 1, 2, 0, 1, GTK_FILL, GTK_FILL, 0, 0);
573
gtk_misc_set_alignment (GTK_MISC (load_graph_get_labels(net_graph)->net_out),
577
hbox = gtk_hbox_new (FALSE, 0);
578
g_signal_connect (G_OBJECT (load_graph_get_labels(net_graph)->net_out), "size_request",
579
G_CALLBACK(size_request), &net_size);
581
gtk_box_pack_start (GTK_BOX (hbox),
582
load_graph_get_labels(net_graph)->net_out,
587
gtk_widget_set_size_request(GTK_WIDGET(load_graph_get_labels(net_graph)->net_out), 100, -1);
588
gtk_table_attach (GTK_TABLE (table), load_graph_get_labels(net_graph)->net_out, 2, 3, 0, 1,
589
static_cast<GtkAttachOptions>(GTK_EXPAND | GTK_FILL), GTK_FILL, 0, 0);
591
label = gtk_label_new (_("Total Sent"));
592
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
593
gtk_table_attach (GTK_TABLE (table), label, 1, 2, 1, 2, GTK_FILL, GTK_FILL, 0, 0);
595
gtk_misc_set_alignment (GTK_MISC (load_graph_get_labels(net_graph)->net_out_total),
598
gtk_table_attach (GTK_TABLE (table),
599
load_graph_get_labels(net_graph)->net_out_total,
609
spacer = gtk_label_new ("");
610
gtk_widget_set_size_request(GTK_WIDGET(spacer), 38, -1);
611
gtk_table_attach (GTK_TABLE (table), spacer, 3, 4, 0, 1, GTK_FILL, GTK_FILL, 0, 0);
382
picker_alignment = GTK_WIDGET (gtk_builder_get_object (builder, "sending_picker_alignment"));
383
gtk_container_add (GTK_CONTAINER (picker_alignment), color_picker);
385
//gtk_widget_set_size_request(GTK_WIDGET(load_graph_get_labels(net_graph)->net_out), 100, -1);
387
gtk_grid_attach (GTK_GRID (table), load_graph_get_labels(net_graph)->net_out, 6, 0, 1, 1);
389
gtk_grid_attach (GTK_GRID (table), load_graph_get_labels(net_graph)->net_out_total, 6, 1, 1, 1);
613
391
procdata->net_graph = net_graph;
614
392
g_free(title_template);