Re: any ideas for a fix?



=====
Organization: Thought Unlimited.  Public service Unix since 1986.
Of_Interest: With 28 years  of service  to the  Unix  community.

On Thu, Aug 21, 2014 at 01:41:46PM -0700, Phil Wolff wrote:
You're trying to use each label in three places, and you can't do that.
Try this:


        thanks, phil; I can see how this ought to work.  the thing is
        that I want a GtkWidget *Label[NN] and this is because another
        part of my GTK-3 program writes to /home/USER/.Text/"talk.K.txt"
        where each ~/.Text/"*txt" file has from a few characters to a 
        few paragraphs.  another part of the program reads and counts
        the number "tt" of "txt" files and copies it to this part of 
        the GTK program.  

        gary

        PS:  OF course it's free, open, blah*3, and should be v useful.

int
main (int argc, char *argv[])
{

  GtkWidget *window, *vbox;   // Labels go in here, vertically orientated.
  //GtkWidget *label1, *label2, *label3;
  GtkWidget *label1[32], *label2[32], *label3[32];
  int tt = 0;

  gtk_init (&argc, &argv);

  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
  gtk_window_set_position (GTK_WINDOW (window), GTK_WIN_POS_CENTER);
  gtk_window_set_default_size (GTK_WINDOW (window), 700, 900);
  gtk_window_set_title (GTK_WINDOW (window), "Labels Left-Margins");
  gtk_container_set_border_width (GTK_CONTAINER (window), 10);
  g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);

  for (tt = 0; tt < 3; tt++)
    {
      printf ("For-Loop():  main with tt = (%d)\n", tt);
      label1[tt] = gtk_label_new ("1: This is the file name named talk.1.txt");
      gtk_misc_set_alignment (GTK_MISC (label1[tt]), 0, 0.5); // left
      label2[tt] = gtk_label_new ("2: This is talk.2.txt");
      gtk_misc_set_alignment (GTK_MISC (label2[tt]), 0, 0.5); // left
      label3[tt] =
      gtk_label_new ("3: File talk.3.txt file.");
      gtk_misc_set_alignment (GTK_MISC (label3[tt]), 0, 0.5); // left

      vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);       // GTK3
      gtk_container_add (GTK_CONTAINER (window), vbox);
      gtk_box_pack_start (GTK_BOX (vbox), label1[tt], FALSE, TRUE, 0);
      gtk_widget_show (label1[tt]);
      gtk_box_pack_start(GTK_BOX(vbox), label2[tt], FALSE, TRUE, 0);
      gtk_widget_show (label2[tt]);
      gtk_box_pack_start(GTK_BOX(vbox), label3[tt], FALSE, TRUE, 0);
      gtk_widget_show (label3[tt]);
      gtk_widget_show_all (window);
      gtk_widget_show_all (window);
    }

  gtk_main ();

  return 0;
}

On 08/21/2014 01:30 PM, Gary Kline wrote:

=====
Organization: Thought Unlimited.  Public service Unix since 1986.
Of_Interest: With 28 years  of service  to the  Unix  community.

On Thu, Aug 21, 2014 at 01:01:24PM +0200, Marcus Karlsson wrote:
On Tue, Aug 19, 2014 at 06:43:22PM -0700, Gary Kline wrote:
=====
Organization: Thought Unlimited.  Public service Unix since 1986.
Of_Interest: With 28 years  of service  to the  Unix  community.

guys,

last time I encloused this "leftJ*" code,  it output a 700 by 900
label with label1, label2, label3.  in "labelWidgets.h" I've got
a *label[32], and use a global tt=0 that is inc in a for loop.
the gcc line builds ./leftJ after you unshar or simply run sh against
the sharball.

it doesn't segv or anything; but it only printfs the last line.  WITH
complaiints.  can any body help me here?

tia,

gary

Attached: leftJustify.shar
Looks like your attachment didn't make it. Can you post the code sample
online, or include the problematic part inline?

           Marcus

    hi marcus,

    don't know what happened to the SHAR file.  BUT: below is the
    entire program--minus the labelWidgets.h header.  the header file
    just had the int tt.

    as-is, this printfs the 700 by 900 window and the third label.
    last night, localtime here in seattle, I send mail to two
    chaps named chris, moller and vine.  My *main* problem is that
    I don't know how to add multiple labels to a single vbox.

    Clue me in and givve me a place to stand, and I'll be able to
    move the globe!

    gary

    

#include <stdio.h>
#include <gtk/gtk.h>
// no-more :: #include "labelWidgets.h"

/***

gcc -Wall -g leftJ.c -o leftJ `pkg-config --cflags gtk+-3.0` `pkg-config --libs gtk+-3.0`

***/

int
main (int argc, char *argv[])
{

  GtkWidget *window, *vbox; // Labels go in here, vertically orientated.
  //GtkWidget *label1, *label2, *label3;
  GtkWidget *label[32];
  int tt = 0;

  gtk_init (&argc, &argv);

  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
  gtk_window_set_position (GTK_WINDOW (window), GTK_WIN_POS_CENTER);
  gtk_window_set_default_size (GTK_WINDOW (window), 700, 900);
  gtk_window_set_title (GTK_WINDOW (window), "Labels Left-Margins");
  gtk_container_set_border_width (GTK_CONTAINER (window), 10);
  g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);

  for (tt = 0; tt < 3; tt++)
    {
      printf ("For-Loop():  main with tt = (%d)\n", tt);
      label[tt] = gtk_label_new ("1: This is the file name named talk.1.txt");
      gtk_misc_set_alignment (GTK_MISC (label[tt]), 0, 0.5);        // left
      label[tt] = gtk_label_new ("2: This is talk.2.txt");
      gtk_misc_set_alignment (GTK_MISC (label[tt]), 0, 0.5);        // left
      label[tt] =
    gtk_label_new ("3: File talk.3.txt file.");
      gtk_misc_set_alignment (GTK_MISC (label[tt]), 0, 0.5);        // left

      vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);     // GTK3
      gtk_container_add (GTK_CONTAINER (window), vbox);
      gtk_box_pack_start (GTK_BOX (vbox), label[tt], FALSE, TRUE, 0);
      gtk_widget_show (label[tt]);
      gtk_box_pack_start(GTK_BOX(vbox), label[tt], FALSE, TRUE, 0);
      gtk_widget_show (label[tt]);
      gtk_box_pack_start(GTK_BOX(vbox), label[tt], FALSE, TRUE, 0);
      gtk_widget_show (label[tt]);
      gtk_widget_show_all (window);
    }

  gtk_main ();

  return 0;
}

-- 
If sunbeams were weapons of war, we would have had solar energy
centuries ago.
    -- George Porter
_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list gnome org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

-- 
 Gary Kline  kline thought org  http://www.thought.org  Public Service Unix
             Twenty-eight years of service to the Unix community.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]