ayttm-commits
[Top][All Lists]
Advanced

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

[Ayttm-commits] CVS: ayttm/src about.c,1.4,1.5 about.h,1.2,1.3


From: Andy Maloney <address@hidden>
Subject: [Ayttm-commits] CVS: ayttm/src about.c,1.4,1.5 about.h,1.2,1.3
Date: Wed, 08 Jan 2003 14:34:55 -0500

Update of /cvsroot/ayttm/ayttm/src
In directory subversions:/tmp/cvs-serv1671/src

Modified Files:
        about.c about.h 
Log Message:
Separate Yattm & Everybuddy developer lists

Index: about.c
===================================================================
RCS file: /cvsroot/ayttm/ayttm/src/about.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- about.c     6 Jan 2003 19:00:54 -0000       1.4
+++ about.c     8 Jan 2003 19:34:53 -0000       1.5
@@ -33,21 +33,31 @@
 
 #include "pixmaps/yattmlogo.xpm"
 
-/*
-  Main body of text in about box -- REMEMBER, the preprocessor will concatenate
-  raw strings for you, automatically, so...  use lines -- they are cheap....
-*/
 
-static char * About_Caption;
+/* info about a developer */
+typedef struct
+{
+       const char      *name;
+       const char      *email;
+       const char      *role;
+} tDevInfo;
 
-/*
-  Array of Dev_Team Data....
 
-  Remember to set the size of this CORRECTLY immediately after in 
-  Dev_Team_Size -- THIS IS VERY IMPORTANT!  ON YOUR HEAD IF YOU DON'T
-*/
+/* Yattm developers */
+
+#define        YATTM_TEAM_SIZE (2)
 
-static Dev_Member Dev_Team [] = 
+static tDevInfo sYattmDevTeam[YATTM_TEAM_SIZE] =
+{
+       {"Colin Leroy", "<address@hidden>", "Lead Developer"},
+       {"Andy S. Maloney", "<address@hidden>", "Code Monkey"},
+};
+
+/* Everybuddy developers */
+
+#define        EVERYBUDDY_TEAM_SIZE    (9)
+
+static tDevInfo sEverybuddyDevTeam[EVERYBUDDY_TEAM_SIZE] =
 {
        {"Torrey Searle", "<address@hidden>", "Creator"},
        {"Ben Rigas", "<address@hidden>", "Web Design & GUI Devel"},
@@ -55,106 +65,149 @@
        {"Alex Wheeler", "<address@hidden>", "Jabber Devel & Much More :)"},
        {"Robert Lazzurs", "<address@hidden>", "Maintainer"},
        {"Meredydd", "<address@hidden>", "MSN Devel"},
-       {"Erik Inge Bolsø", "<address@hidden>", "IRC Devel"},
+       {"Erik Inge Bolsø", "<address@hidden>", "IRC Devel"},
        {"Colin Leroy", "<address@hidden>", "Various hacks, i18n, Yattm fork"},
-       {"Philip Tellis", "<address@hidden>", "Yahoo Devel"},
-       {"Andy S. Maloney", "<address@hidden>", "Many cleanups"},
+       {"Philip Tellis", "<address@hidden>", "Yahoo Devel"}
 };
-static const unsigned int Dev_Team_Size = 10;
+
+/* the one and only about window */
+static GtkWidget *sAboutWindow = NULL;
 
 /*
   Functions
 */
 
+static void destroy_about()
+{
+       if ( sAboutWindow != NULL )
+               gtk_widget_destroy( sAboutWindow );
 
-static GtkWidget *aboutbox = NULL;
+       sAboutWindow = NULL;
+}
 
-static void destroy_about()
+static GtkTable        *sMakeDeveloperTable( int inNumDevelopers, const 
tDevInfo *inDevInfo )
 {
-       if (aboutbox)
-               gtk_widget_destroy(aboutbox);
-       aboutbox = NULL;
+       GtkTable        *table = GTK_TABLE( gtk_table_new( inNumDevelopers, 3, 
FALSE ) );
+       GtkLabel        *label = NULL;
+       int                     i = 0;
+
+
+       for (i = 0; i < inNumDevelopers; i++)
+       {
+               label = GTK_LABEL( gtk_label_new( inDevInfo[i].name ) );
+               gtk_misc_set_alignment( GTK_MISC( label ), 0.0, 0.5 );
+               gtk_widget_show( GTK_WIDGET(label ) );
+               gtk_table_attach( table, GTK_WIDGET( label ), 0, 1, i, i+1, 
GTK_FILL, GTK_FILL, 10, 0 );
+
+               label = GTK_LABEL( gtk_label_new( inDevInfo[i].email ) );
+               gtk_misc_set_alignment( GTK_MISC( label ), 0.0, 0.5 );
+               gtk_widget_show( GTK_WIDGET( label ) );
+               gtk_table_attach( table, GTK_WIDGET( label ), 1, 2, i, i+1, 
GTK_FILL, GTK_FILL, 10, 0 );
+
+               label = GTK_LABEL( gtk_label_new( inDevInfo[i].role ) );
+               gtk_misc_set_alignment( GTK_MISC( label ), 0.0, 0.5 );
+               gtk_widget_show( GTK_WIDGET( label ) );
+               gtk_table_attach(table, GTK_WIDGET( label ), 2, 3, i, i+1, 
GTK_FILL, GTK_FILL, 10, 0 );
+       }
+
+       gtk_widget_show( GTK_WIDGET( table ) );
+       
+       return( table );
 }
 
 void show_about(GtkWidget *w, void *null)
 {
-       GtkWidget *logo;
-       GtkWidget *ok;
-       GtkWidget *label;
-       GtkWidget *table;
-       GtkWidget *vbox;
-       GtkStyle *style;
-       GdkPixmap *pm;
-       GdkBitmap *bm;
-       char abouttitle[45];
-       unsigned int i;
-       About_Caption = 
-_("Yattm is designed to become a Universal Instant Messaging client designed 
\nto seamlessly integrate all existing Instant Messaging clients and provide a 
\nsingle consistent user interface. \n \nYattm is a fork of Everybuddy, which 
was brought to you by\nthe heart-felt contributions of the following:");
-;
-
-       if (aboutbox) {
-               gtk_widget_show(aboutbox);
+       GtkWidget       *logo = NULL;
+       GtkWidget       *ok = NULL;
+       GtkLabel        *label = NULL;
+       GtkTable        *table = NULL;
+       GtkWidget       *separator = NULL;
+       GtkBox          *vbox = NULL;
+       GtkStyle        *style = NULL;
+       GdkPixmap       *pm = NULL;
+       GdkBitmap       *bm = NULL;
+       int                     i = 0;
+       const char      *versionStr = "Yattm " VERSION "\n" __DATE__;
+
+
+       if ( sAboutWindow != NULL )
+       {
+               gtk_widget_show(sAboutWindow);
                return;
        }
-       
-       aboutbox = gtk_window_new(GTK_WINDOW_TOPLEVEL);
-       gtk_window_set_position(GTK_WINDOW(aboutbox), GTK_WIN_POS_MOUSE);
-       gtk_widget_realize(aboutbox);
-
-       vbox = gtk_vbox_new(FALSE, 0);
 
-       style = gtk_widget_get_style(aboutbox);
-       pm = gdk_pixmap_create_from_xpm_d(aboutbox->window, &bm,
+       /* create the window and set some attributes */
+       sAboutWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+       gtk_widget_realize(sAboutWindow);
+       gtk_window_set_position(GTK_WINDOW(sAboutWindow), GTK_WIN_POS_MOUSE);
+       gtk_window_set_policy( GTK_WINDOW(sAboutWindow), FALSE, FALSE, TRUE );
+       gtk_window_set_title(GTK_WINDOW(sAboutWindow), _("About Yattm"));
+       eb_icon(sAboutWindow->window);
+       gtk_container_border_width(GTK_CONTAINER(sAboutWindow), 5);
+
+       vbox = GTK_BOX(gtk_vbox_new(FALSE, 0));
+       gtk_widget_show(GTK_WIDGET(vbox));
+
+       /* logo */
+       style = gtk_widget_get_style(sAboutWindow);
+       pm = gdk_pixmap_create_from_xpm_d(sAboutWindow->window, &bm,
                  &style->bg[GTK_STATE_NORMAL], (gchar **)yattmlogo_xpm);
        logo = gtk_pixmap_new(pm, bm);
-       gtk_box_pack_start(GTK_BOX(vbox), logo, TRUE, TRUE, 5);
-       gtk_widget_show(logo);          
-
-       label = gtk_label_new(About_Caption);
+       gtk_box_pack_start(vbox, logo, TRUE, TRUE, 5);
+       gtk_widget_show(logo);
 
-       gtk_box_pack_start(GTK_BOX(vbox), label, TRUE, TRUE, 5);
-
-       table = gtk_table_new (Dev_Team_Size, 3, FALSE);
-       for (i = 0; i < Dev_Team_Size; i++) {
-               GtkWidget * l;
-               l = gtk_label_new (Dev_Team [i].Name);
-               gtk_table_attach ((GtkTable *)table, l, 0, 1, i, i+1,
-                             GTK_EXPAND, GTK_EXPAND, 10, 0);
-               gtk_widget_show(l);
-
-               l = gtk_label_new (Dev_Team [i].Email);
-               gtk_table_attach ((GtkTable *)table, l, 1, 2, i, i+1,
-                             GTK_EXPAND, GTK_EXPAND, 10, 0);
-               gtk_widget_show(l);
-
-               l = gtk_label_new (Dev_Team [i].Pos);
-               gtk_table_attach ((GtkTable *)table, l, 2, 3, i, i+1,
-                             GTK_EXPAND, GTK_EXPAND, 10, 0);
-               gtk_widget_show(l);
-       }
-       gtk_box_pack_start(GTK_BOX(vbox), table, TRUE, TRUE, 5);
+       /* version */
+       label = GTK_LABEL(gtk_label_new( versionStr ));
+       gtk_widget_show( GTK_WIDGET(label) );
+       gtk_box_pack_start(vbox, GTK_WIDGET(label), TRUE, TRUE, 5);
+
+       /* separator */
+       separator = gtk_hseparator_new();
+       gtk_widget_show( separator );
+       gtk_box_pack_start(vbox, separator, TRUE, TRUE, 5);
+
+       /* text */
+       label = GTK_LABEL(gtk_label_new( _("Yattm is brought to you by:") ));
+       gtk_label_set_justify( label, GTK_JUSTIFY_LEFT );
+       gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
+       gtk_widget_show( GTK_WIDGET(label) );
+       gtk_box_pack_start(vbox, GTK_WIDGET(label), TRUE, TRUE, 5);
+
+       /* list of Yattm developers */
+       table = sMakeDeveloperTable( YATTM_TEAM_SIZE, sYattmDevTeam );
+       gtk_box_pack_start(vbox, GTK_WIDGET(table), TRUE, TRUE, 5);
+
+       /* separator */
+       separator = gtk_hseparator_new();
+       gtk_widget_show( separator );
+       gtk_box_pack_start(vbox, separator, TRUE, TRUE, 5);
+
+       /* text */
+       label = GTK_LABEL(gtk_label_new( _("Yattm is based on Everybuddy 0.4.3 
which was brought to you by:") ));
+       gtk_label_set_justify( label, GTK_JUSTIFY_LEFT );
+       gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
+       gtk_widget_show( GTK_WIDGET(label) );
+       gtk_box_pack_start(vbox, GTK_WIDGET(label), TRUE, TRUE, 5);
+
+       /* list of Everybuddy developers */
+       table = sMakeDeveloperTable( EVERYBUDDY_TEAM_SIZE, sEverybuddyDevTeam );
+       gtk_box_pack_start(vbox, GTK_WIDGET(table), TRUE, TRUE, 5);
 
+       /* close button */
        ok = gtk_button_new_with_label(_("Close"));
        gtk_signal_connect_object(GTK_OBJECT(ok), "clicked",
-                                 GTK_SIGNAL_FUNC(destroy_about), 
GTK_OBJECT(aboutbox));
+                                 GTK_SIGNAL_FUNC(destroy_about), 
GTK_OBJECT(sAboutWindow));
 
-       gtk_box_pack_start(GTK_BOX(vbox), ok, TRUE, FALSE, 0);
+       gtk_box_pack_start(vbox, ok, TRUE, FALSE, 0);
        GTK_WIDGET_SET_FLAGS(ok, GTK_CAN_DEFAULT);
        gtk_widget_grab_default(ok);
        gtk_widget_show(ok);
        
-       gtk_signal_connect_object(GTK_OBJECT(aboutbox), "destroy",
-                                  GTK_SIGNAL_FUNC(destroy_about), 
GTK_OBJECT(aboutbox));
+       gtk_signal_connect_object(GTK_OBJECT(sAboutWindow), "destroy",
+                                  GTK_SIGNAL_FUNC(destroy_about), 
GTK_OBJECT(sAboutWindow));
+
+       gtk_container_add(GTK_CONTAINER(sAboutWindow), GTK_WIDGET(vbox));
 
-       gtk_widget_show(label);
-       gtk_widget_show(table);
-       gtk_widget_show(vbox);
-
-       g_snprintf(abouttitle, sizeof(abouttitle), _("About Yattm %s"), 
VERSION);
-       gtk_window_set_title(GTK_WINDOW(aboutbox), abouttitle);
-       eb_icon(aboutbox->window);
-       gtk_container_border_width(GTK_CONTAINER(aboutbox), 2);
-       gtk_container_add(GTK_CONTAINER(aboutbox), vbox);
-       gtk_widget_show(aboutbox);
+       gtk_widget_show(sAboutWindow);
 }
 

Index: about.h
===================================================================
RCS file: /cvsroot/ayttm/ayttm/src/about.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- about.h     5 Jan 2003 08:32:16 -0000       1.2
+++ about.h     8 Jan 2003 19:34:53 -0000       1.3
@@ -30,19 +30,6 @@
 
 void show_about(GtkWidget *w, void *null);
 
-/*
-  Data Structures
-*/
-
-struct Dev_Member_Struct
-{
-       const char * Name;
-       const char * Email;
-       const char * Pos;
-};
-
-typedef struct Dev_Member_Struct Dev_Member;
-
 #endif
 
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]