~ubuntu-branches/ubuntu/trusty/gnome-system-monitor/trusty

« back to all changes in this revision

Viewing changes to src/interface.cpp

  • Committer: Package Import Robot
  • Author(s): Robert Ancell
  • Date: 2012-08-13 10:20:03 UTC
  • mfrom: (1.1.70)
  • Revision ID: package-import@ubuntu.com-20120813102003-gjzy387nq5is8vcg
Tags: 3.5.90-0ubuntu1
New upstream release

Show diffs side-by-side

added added

removed removed

Lines of Context:
195
195
    "  </popup>";
196
196
 
197
197
 
198
 
static GtkWidget *
199
 
create_proc_view (ProcData *procdata)
200
 
{
201
 
    GtkWidget *vbox1;
202
 
    GtkWidget *hbox1;
203
 
    GtkWidget *scrolled;
204
 
    GtkWidget *hbox2;
205
 
    char* string;
206
 
 
207
 
    vbox1 = gtk_vbox_new (FALSE, 18);
208
 
    gtk_container_set_border_width (GTK_CONTAINER (vbox1), 12);
209
 
 
210
 
    hbox1 = gtk_hbox_new (FALSE, 12);
211
 
    gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0);
212
 
 
213
 
    string = make_loadavg_string ();
214
 
    procdata->loadavg = gtk_label_new (string);
215
 
    g_free (string);
216
 
    gtk_box_pack_start (GTK_BOX (hbox1), procdata->loadavg, FALSE, FALSE, 0);
217
 
 
218
 
 
219
 
    scrolled = proctable_new (procdata);
220
 
    if (!scrolled)
221
 
        return NULL;
222
 
    gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled),
223
 
                                         GTK_SHADOW_IN);
224
 
 
225
 
    gtk_box_pack_start (GTK_BOX (vbox1), scrolled, TRUE, TRUE, 0);
226
 
 
227
 
 
228
 
    hbox2 = gtk_hbox_new (FALSE, 0);
229
 
    gtk_box_pack_start (GTK_BOX (vbox1), hbox2, FALSE, FALSE, 0);
230
 
 
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);
235
 
 
236
 
 
237
 
    /* create popup_menu */
238
 
    procdata->popup_menu = gtk_ui_manager_get_widget (procdata->uimanager, "/PopupMenu");
239
 
 
240
 
    return vbox1;
241
 
}
242
 
 
243
 
 
244
198
GtkWidget *
245
199
make_title_label (const char *text)
246
200
{
257
211
    return label;
258
212
}
259
213
 
260
 
 
261
 
static GtkWidget *
262
 
create_sys_view (ProcData *procdata)
263
 
{
264
 
    GtkWidget *vbox, *hbox;
265
 
    GtkWidget *cpu_box, *mem_box, *net_box;
 
214
static void 
 
215
create_proc_view(ProcData *procdata, GtkBuilder * builder) 
 
216
{
 
217
    GtkWidget *proctree;
 
218
    GtkWidget *scrolled;
 
219
    char* string;
 
220
 
 
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);
 
225
    g_free (string);
 
226
 
 
227
    proctree = proctable_new (procdata);
 
228
    scrolled = GTK_WIDGET (gtk_builder_get_object (builder, "processes_scrolled"));
 
229
 
 
230
    gtk_container_add (GTK_CONTAINER (scrolled), proctree);
 
231
 
 
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);
 
235
 
 
236
    /* create popup_menu for the processes tab */
 
237
    procdata->popup_menu = gtk_ui_manager_get_widget (procdata->uimanager, "/PopupMenu");
 
238
}
 
239
 
 
240
static void
 
241
create_sys_view (ProcData *procdata, GtkBuilder * builder)
 
242
{
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;
272
249
 
273
250
    gint i;
278
255
    // Translators: color picker title, %s is CPU, Memory, Swap, Receiving, Sending
279
256
    title_template = g_strdup(_("Pick a Color for '%s'"));
280
257
 
281
 
    vbox = gtk_vbox_new (FALSE, 18);
282
 
 
283
 
    gtk_container_set_border_width (GTK_CONTAINER (vbox), 12);
284
 
 
285
258
    /* The CPU BOX */
286
259
 
287
 
    cpu_box = gtk_vbox_new (FALSE, 6);
288
 
    gtk_box_pack_start (GTK_BOX (vbox), cpu_box, TRUE, TRUE, 0);
289
 
 
290
 
    label = make_title_label (_("CPU History"));
291
 
    gtk_box_pack_start (GTK_BOX (cpu_box), label, FALSE, FALSE, 0);
292
 
 
293
 
    cpu_graph_box = gtk_vbox_new (FALSE, 6);
294
 
    gtk_box_pack_start (GTK_BOX (cpu_box), cpu_graph_box, TRUE, TRUE, 0);
 
260
    cpu_graph_box = GTK_WIDGET (gtk_builder_get_object (builder, "cpu_graph_box"));
295
261
 
296
262
    cpu_graph = new LoadGraph(LOAD_GRAPH_CPU);
297
263
    gtk_box_pack_start (GTK_BOX (cpu_graph_box),
300
266
                        TRUE,
301
267
                        0);
302
268
 
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,
307
 
                        FALSE, FALSE, 0);
308
 
 
309
 
 
310
 
    gtk_box_pack_start (GTK_BOX (cpu_graph_box), hbox,
311
 
                        FALSE, FALSE, 0);
312
 
 
313
 
    /*cpu_legend_box = gtk_hbox_new(TRUE, 10);
314
 
      gtk_box_pack_start (GTK_BOX (hbox), cpu_legend_box,
315
 
      TRUE, TRUE, 0);*/
316
 
 
317
 
    GtkWidget* cpu_table = gtk_table_new(std::min(procdata->config.num_cpus / 4, 1),
318
 
                                         std::min(procdata->config.num_cpus, 4),
319
 
                                         TRUE);
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);
323
 
 
 
269
    GtkWidget* cpu_table = GTK_WIDGET (gtk_builder_get_object (builder, "cpu_table"));
 
270
    gint cols = 4;
324
271
    for (i=0;i<procdata->config.num_cpus; i++) {
325
272
        GtkWidget *temp_hbox;
326
273
 
327
 
        temp_hbox = gtk_hbox_new (FALSE, 0);
328
 
        gtk_table_attach(GTK_TABLE(cpu_table), temp_hbox,
329
 
                         i % 4, i % 4 + 1,
330
 
                         i / 4, i / 4 + 1,
331
 
                         static_cast<GtkAttachOptions>(GTK_EXPAND | GTK_FILL),
332
 
                         static_cast<GtkAttachOptions>(GTK_EXPAND | GTK_FILL),
333
 
                         0, 0);
 
274
        temp_hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
 
275
        if (i < cols) {
 
276
            gtk_grid_insert_column(GTK_GRID(cpu_table), i%cols);
 
277
        }
 
278
        if ((i+1)%cols ==cols) {
 
279
            gtk_grid_insert_row(GTK_GRID(cpu_table), (i+1)/cols);
 
280
        }
 
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);
354
302
 
355
303
        cpu_label = gtk_label_new (NULL);
356
304
        gtk_misc_set_alignment (GTK_MISC (cpu_label), 0.0, 0.5);
357
 
        gtk_box_pack_start (GTK_BOX (temp_hbox), cpu_label, TRUE, TRUE, 0);
 
305
        gtk_box_pack_start (GTK_BOX (temp_hbox), cpu_label, FALSE, FALSE, 0);
358
306
        load_graph_get_labels(cpu_graph)->cpu[i] = cpu_label;
359
307
 
360
308
    }
361
309
 
362
310
    procdata->cpu_graph = cpu_graph;
363
311
 
364
 
    mem_box = gtk_vbox_new (FALSE, 6);
365
 
    gtk_box_pack_start (GTK_BOX (vbox), mem_box, TRUE, TRUE, 0);
366
 
 
367
 
    label = make_title_label (_("Memory and Swap History"));
368
 
    gtk_box_pack_start (GTK_BOX (mem_box), label, FALSE, FALSE, 0);
369
 
 
370
 
    mem_graph_box = gtk_vbox_new (FALSE, 6);
371
 
    gtk_box_pack_start (GTK_BOX (mem_box), mem_graph_box, TRUE, TRUE, 0);
372
 
 
 
312
    /** The memory box */
 
313
    mem_graph_box = GTK_WIDGET (gtk_builder_get_object (builder, "mem_graph_box"));
373
314
 
374
315
    mem_graph = new LoadGraph(LOAD_GRAPH_MEM);
375
316
    gtk_box_pack_start (GTK_BOX (mem_graph_box),
378
319
                        TRUE,
379
320
                        0);
380
321
 
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,
385
 
                        FALSE, FALSE, 0);
386
 
 
387
 
 
388
 
    gtk_box_pack_start (GTK_BOX (mem_graph_box), hbox,
389
 
                        FALSE, FALSE, 0);
390
 
 
391
 
    mem_legend_box = gtk_hbox_new(TRUE, 10);
392
 
    gtk_box_pack_start (GTK_BOX (hbox), mem_legend_box,
393
 
                        TRUE, TRUE, 0);
394
 
 
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,
399
 
                        TRUE, TRUE, 0);
400
 
 
401
 
    label_text = g_strdup(_("Memory"));
 
322
    table = GTK_WIDGET (gtk_builder_get_object (builder, "mem_table"));
 
323
 
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);
409
 
 
410
 
    label = gtk_label_new (label_text);
411
 
    g_free(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);
414
 
 
415
 
    gtk_table_attach (GTK_TABLE (table),
416
 
                      load_graph_get_labels(mem_graph)->memory,
417
 
                      1,
418
 
                      2,
419
 
                      1,
420
 
                      2,
421
 
                      GTK_FILL,
422
 
                      GTK_FILL,
423
 
                      0,
424
 
                      0);
425
 
 
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,
430
 
                        TRUE, TRUE, 0);
431
 
 
432
 
    label_text = g_strdup(_("Swap"));
 
330
    
 
331
    gtk_grid_attach (GTK_GRID (table), color_picker, 0, 0, 1, 2);
 
332
 
 
333
    gtk_grid_attach (GTK_GRID (table), load_graph_get_labels(mem_graph)->memory, 1, 1, 1, 1);
 
334
 
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);
440
 
 
441
 
    label = gtk_label_new (label_text);
442
 
    g_free(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);
445
 
 
446
 
    gtk_table_attach (GTK_TABLE (table),
447
 
                      load_graph_get_labels(mem_graph)->swap,
448
 
                      1,
449
 
                      2,
450
 
                      1,
451
 
                      2,
452
 
                      GTK_FILL,
453
 
                      GTK_FILL,
454
 
                      0,
455
 
                      0);
 
341
    gtk_grid_attach (GTK_GRID (table), color_picker, 2, 0, 1, 2);
 
342
 
 
343
    gtk_grid_attach (GTK_GRID (table),  load_graph_get_labels(mem_graph)->swap, 3, 1, 1, 1);
456
344
 
457
345
    procdata->mem_graph = mem_graph;
458
346
 
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);
462
 
 
463
 
    label = make_title_label (_("Network History"));
464
 
    gtk_box_pack_start (GTK_BOX (net_box), label, FALSE, FALSE, 0);
465
 
 
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"));
468
349
 
469
350
    net_graph = new LoadGraph(LOAD_GRAPH_NET);
470
351
    gtk_box_pack_start (GTK_BOX (net_graph_box),
473
354
                        TRUE,
474
355
                        0);
475
356
 
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,
480
 
                        FALSE, FALSE, 0);
481
 
 
482
 
 
483
 
    gtk_box_pack_start (GTK_BOX (net_graph_box), hbox,
484
 
                        FALSE, FALSE, 0);
485
 
 
486
 
    net_legend_box = gtk_hbox_new(TRUE, 10);
487
 
    gtk_box_pack_start (GTK_BOX (hbox), net_legend_box,
488
 
                        TRUE, TRUE, 0);
489
 
 
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,
494
 
                        TRUE, TRUE, 0);
495
 
 
496
 
    label_text = g_strdup(_("Receiving"));
 
357
    table = GTK_WIDGET (gtk_builder_get_object (builder, "net_table"));
497
358
 
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);
506
 
 
507
 
    label = gtk_label_new (label_text);
508
 
    g_free(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);
511
 
 
512
 
    gtk_misc_set_alignment (GTK_MISC (load_graph_get_labels(net_graph)->net_in),
513
 
                            1.0,
514
 
                            0.5);
515
 
/*
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,
521
 
  TRUE,
522
 
  TRUE,
523
 
  0);
524
 
*/
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);
528
 
 
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);
532
 
 
533
 
    gtk_misc_set_alignment (GTK_MISC (load_graph_get_labels(net_graph)->net_in_total),
534
 
                            1.0,
535
 
                            0.5);
536
 
    gtk_table_attach (GTK_TABLE (table),
537
 
                      load_graph_get_labels(net_graph)->net_in_total,
538
 
                      2,
539
 
                      3,
540
 
                      1,
541
 
                      2,
542
 
                      GTK_FILL,
543
 
                      GTK_FILL,
544
 
                      0,
545
 
                      0);
546
 
 
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);
550
 
 
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,
555
 
                        TRUE, TRUE, 0);
556
 
 
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);
 
368
 
 
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);
 
371
 
 
372
    gtk_grid_attach (GTK_GRID (table), load_graph_get_labels(net_graph)->net_in_total, 2, 1, 1, 1);
558
373
 
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);
567
 
 
568
 
    label = gtk_label_new (label_text);
569
 
    g_free(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);
572
 
 
573
 
    gtk_misc_set_alignment (GTK_MISC (load_graph_get_labels(net_graph)->net_out),
574
 
                            1.0,
575
 
                            0.5);
576
 
/*
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);
580
 
 
581
 
  gtk_box_pack_start (GTK_BOX (hbox),
582
 
  load_graph_get_labels(net_graph)->net_out,
583
 
  TRUE,
584
 
  TRUE,
585
 
  0);
586
 
*/
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);
590
 
 
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);
594
 
 
595
 
    gtk_misc_set_alignment (GTK_MISC (load_graph_get_labels(net_graph)->net_out_total),
596
 
                            1.0,
597
 
                            0.5);
598
 
    gtk_table_attach (GTK_TABLE (table),
599
 
                      load_graph_get_labels(net_graph)->net_out_total,
600
 
                      2,
601
 
                      3,
602
 
                      1,
603
 
                      2,
604
 
                      GTK_FILL,
605
 
                      GTK_FILL,
606
 
                      0,
607
 
                      0);
608
 
 
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);
 
381
 
 
382
    picker_alignment = GTK_WIDGET (gtk_builder_get_object (builder, "sending_picker_alignment"));
 
383
    gtk_container_add (GTK_CONTAINER (picker_alignment), color_picker);
 
384
 
 
385
    //gtk_widget_set_size_request(GTK_WIDGET(load_graph_get_labels(net_graph)->net_out), 100, -1);
 
386
    
 
387
    gtk_grid_attach (GTK_GRID (table), load_graph_get_labels(net_graph)->net_out, 6, 0, 1, 1);
 
388
 
 
389
    gtk_grid_attach (GTK_GRID (table),  load_graph_get_labels(net_graph)->net_out_total, 6, 1, 1, 1);
612
390
 
613
391
    procdata->net_graph = net_graph;
614
392
    g_free(title_template);
615
393
 
616
 
    return vbox;
617
394
}
618
395
 
619
396
void
626
403
    GtkWidget *menubar;
627
404
    GtkWidget *main_box;
628
405
    GtkWidget *notebook;
629
 
    GtkWidget *tab_label1, *tab_label2, *tab_label3;
630
 
    GtkWidget *vbox1;
631
 
    GtkWidget *sys_box, *devices_box;
632
 
    GtkWidget *sysinfo_box, *sysinfo_label;
633
 
 
634
 
    app = gtk_window_new(GTK_WINDOW_TOPLEVEL);
635
 
    gtk_window_set_title(GTK_WINDOW(app), _("System Monitor"));
636
 
 
 
406
 
 
407
    gchar* filename = g_build_filename (GSM_DATA_DIR, "interface.ui", NULL);
 
408
 
 
409
    GtkBuilder *builder = gtk_builder_new();
 
410
    gtk_builder_add_from_file (builder, filename, NULL);
 
411
 
 
412
    app = GTK_WIDGET (gtk_builder_get_object (builder, "main_window"));
 
413
    main_box = GTK_WIDGET (gtk_builder_get_object (builder, "main_box"));
637
414
    GdkScreen* screen = gtk_widget_get_screen(app);
638
415
    GdkVisual* visual = gdk_screen_get_rgba_visual(screen);
639
416
 
641
418
    if (visual)
642
419
        gtk_widget_set_visual(app, visual);
643
420
 
644
 
    main_box = gtk_vbox_new (FALSE, 0);
645
 
    gtk_container_add(GTK_CONTAINER(app), main_box);
646
 
 
647
421
    width = procdata->config.width;
648
422
    height = procdata->config.height;
649
423
    xpos = procdata->config.xpos;
650
424
    ypos = procdata->config.ypos;
651
425
    gtk_window_set_default_size (GTK_WINDOW (app), width, height);
652
426
    gtk_window_move(GTK_WINDOW (app), xpos, ypos);
653
 
    gtk_window_set_resizable (GTK_WINDOW (app), TRUE);
654
427
 
655
428
    /* create the menubar */
656
429
    procdata->uimanager = gtk_ui_manager_new ();
699
472
 
700
473
 
701
474
    /* create the main notebook */
702
 
    procdata->notebook = notebook = gtk_notebook_new ();
703
 
    gtk_box_pack_start (GTK_BOX (main_box),
704
 
                        notebook,
705
 
                        TRUE,
706
 
                        TRUE,
707
 
                        0);
708
 
 
709
 
    sysinfo_box = gtk_hbox_new(TRUE, 0); // procman_create_sysinfo_view();
710
 
    sysinfo_label = gtk_label_new(_("System"));
711
 
    gtk_notebook_append_page(GTK_NOTEBOOK(notebook), sysinfo_box, sysinfo_label);
712
 
 
713
 
    vbox1 = create_proc_view (procdata);
714
 
    tab_label1 = gtk_label_new (_("Processes"));
715
 
    gtk_notebook_append_page (GTK_NOTEBOOK (notebook), vbox1, tab_label1);
716
 
 
717
 
    sys_box = create_sys_view (procdata);
718
 
    tab_label2 = gtk_label_new (_("Resources"));
719
 
    gtk_notebook_append_page (GTK_NOTEBOOK (notebook), sys_box, tab_label2);
720
 
 
721
 
    devices_box = create_disk_view (procdata);
722
 
    tab_label3 = gtk_label_new (_("File Systems"));
723
 
    gtk_notebook_append_page (GTK_NOTEBOOK (notebook), devices_box, tab_label3);
724
 
 
 
475
    procdata->notebook = notebook = GTK_WIDGET (gtk_builder_get_object (builder, "notebook"));
 
476
 
 
477
    create_proc_view(procdata, builder);
 
478
 
 
479
    create_sys_view (procdata, builder);
 
480
    
 
481
    create_disk_view (procdata, builder);
 
482
    
725
483
    g_signal_connect (G_OBJECT (notebook), "switch-page",
726
484
                      G_CALLBACK (cb_switch_page), procdata);
727
485
    g_signal_connect (G_OBJECT (notebook), "change-current-page",
745
503
                                 GDK_MOD1_MASK, GTK_ACCEL_VISIBLE,
746
504
                                 goto_tab_closure[i]);
747
505
    }
748
 
 
749
506
    action = gtk_action_group_get_action (procdata->action_group, "ShowDependencies");
750
507
    gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (action),
751
508
                                  procdata->config.show_tree);
752
509
 
 
510
    
 
511
    gtk_builder_connect_signals (builder, NULL);
 
512
 
753
513
    gtk_widget_show_all(app);
754
514
    procdata->app = app;
 
515
 
 
516
    g_object_unref (G_OBJECT (builder));
 
517
    g_free (filename);
 
518
 
755
519
}
756
520
 
757
521
void