Added an about box
svn path=/trunk/; revision=10
This commit is contained in:
@ -12,11 +12,16 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include <gnome.h>
|
#include <gnome.h>
|
||||||
|
#include <config.h>
|
||||||
|
|
||||||
#include "gncal.h"
|
#include "gncal.h"
|
||||||
#include "menus.h"
|
|
||||||
#include "calcs.h"
|
#include "calcs.h"
|
||||||
|
|
||||||
|
static GtkMenuEntry menu_items[] =
|
||||||
|
{
|
||||||
|
{"File/Exit", "<control>Q", menu_file_quit, NULL},
|
||||||
|
{"Help/About", NULL, menu_help_about, NULL},
|
||||||
|
};
|
||||||
|
|
||||||
#define DAY_ARRAY_MAX 35
|
#define DAY_ARRAY_MAX 35
|
||||||
/* The naughty global variables */
|
/* The naughty global variables */
|
||||||
@ -28,8 +33,21 @@ GtkWidget *year_label;
|
|||||||
GtkWidget *dailylist;
|
GtkWidget *dailylist;
|
||||||
GtkWidget *calendar_days[DAY_ARRAY_MAX];
|
GtkWidget *calendar_days[DAY_ARRAY_MAX];
|
||||||
GtkWidget *calendar_buttons[DAY_ARRAY_MAX];
|
GtkWidget *calendar_buttons[DAY_ARRAY_MAX];
|
||||||
|
GtkWidget *app;
|
||||||
|
|
||||||
|
#define ELEMENTS(x) (sizeof (x) / sizeof (x [0]))
|
||||||
|
|
||||||
|
GtkMenuFactory *
|
||||||
|
create_menu ()
|
||||||
|
{
|
||||||
|
GtkMenuFactory *subfactory;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
subfactory = gtk_menu_factory_new (GTK_MENU_FACTORY_MENU_BAR);
|
||||||
|
gtk_menu_factory_add_entries (subfactory, menu_items, ELEMENTS(menu_items));
|
||||||
|
|
||||||
|
return subfactory;
|
||||||
|
}
|
||||||
|
|
||||||
/* place marker until i get get something better */
|
/* place marker until i get get something better */
|
||||||
void print_error(char *text)
|
void print_error(char *text)
|
||||||
@ -56,9 +74,20 @@ void menu_file_quit(GtkWidget *widget, gpointer data)
|
|||||||
|
|
||||||
void menu_help_about(GtkWidget *widget, gpointer data)
|
void menu_help_about(GtkWidget *widget, gpointer data)
|
||||||
{
|
{
|
||||||
GtkWidget *msgbox;
|
GtkWidget *about;
|
||||||
msgbox = gnome_messagebox_new("gncal v0.01 by Craig Small <csmall@small.dropbear.id.au>", "info", "OK", NULL, NULL);
|
gchar *authors[] = {
|
||||||
gtk_widget_show(msgbox);
|
"Craig Small <csmall@small.dropbear.id.au>",
|
||||||
|
NULL };
|
||||||
|
about = gnome_about_new("Gnome Calendar", VERSION,
|
||||||
|
"(C) 1998",
|
||||||
|
authors,
|
||||||
|
/* Comments */
|
||||||
|
"This program shows a nice pretty "
|
||||||
|
"calendar and will do scheduling "
|
||||||
|
"real soon now!",
|
||||||
|
NULL);
|
||||||
|
|
||||||
|
gtk_widget_show(about);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dailylist_item_select(GtkWidget *widget, gpointer data)
|
void dailylist_item_select(GtkWidget *widget, gpointer data)
|
||||||
@ -251,10 +280,10 @@ void test_foreach(GtkWidget *widget, gpointer data)
|
|||||||
|
|
||||||
void show_main_window()
|
void show_main_window()
|
||||||
{
|
{
|
||||||
GtkWidget *window;
|
|
||||||
GtkWidget *main_vbox;
|
GtkWidget *main_vbox;
|
||||||
GtkWidget *menubar;
|
/*GtkWidget *menubar;
|
||||||
GtkAcceleratorTable *accel;
|
GtkAcceleratorTable *accel;*/
|
||||||
|
GtkMenuFactory *menuf;
|
||||||
GtkWidget *main_hbox;
|
GtkWidget *main_hbox;
|
||||||
GtkWidget *left_vbox;
|
GtkWidget *left_vbox;
|
||||||
GtkWidget *right_vbox;
|
GtkWidget *right_vbox;
|
||||||
@ -281,20 +310,21 @@ void show_main_window()
|
|||||||
char buf[50];
|
char buf[50];
|
||||||
|
|
||||||
bzero((char*)&tm, sizeof(struct tm));
|
bzero((char*)&tm, sizeof(struct tm));
|
||||||
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
|
app = gnome_app_new("gncal", "Gnome Calendar");
|
||||||
gtk_signal_connect(GTK_OBJECT(window), "destroy",
|
gtk_widget_realize(app);
|
||||||
GTK_SIGNAL_FUNC(menu_file_quit), NULL);
|
gtk_signal_connect(GTK_OBJECT(app), "delete_event",
|
||||||
gtk_window_set_title(GTK_WINDOW(window), "Gnome Calendar");
|
GTK_SIGNAL_FUNC(menu_file_quit), NULL);
|
||||||
gtk_widget_set_usize(GTK_WIDGET(window), 600, 400);
|
|
||||||
|
|
||||||
main_vbox = gtk_vbox_new(FALSE, 1);
|
main_vbox = gtk_vbox_new(FALSE, 1);
|
||||||
gtk_container_add(GTK_CONTAINER(window), main_vbox);
|
gnome_app_set_contents(GNOME_APP(app), main_vbox);
|
||||||
gtk_widget_show(main_vbox);
|
gtk_widget_show(main_vbox);
|
||||||
|
|
||||||
get_main_menu(&menubar, &accel);
|
menuf = create_menu();
|
||||||
|
gnome_app_set_menus(GNOME_APP(app), GTK_MENU_BAR(menuf->widget));
|
||||||
|
/*get_main_menu(&menubar, &accel);
|
||||||
gtk_window_add_accelerator_table(GTK_WINDOW(window), accel);
|
gtk_window_add_accelerator_table(GTK_WINDOW(window), accel);
|
||||||
gtk_box_pack_start(GTK_BOX(main_vbox), menubar, FALSE, FALSE, 0);
|
gtk_box_pack_start(GTK_BOX(main_vbox), menubar, FALSE, FALSE, 0);
|
||||||
gtk_widget_show(menubar);
|
gtk_widget_show(menubar);*/
|
||||||
|
|
||||||
main_hbox = gtk_hbox_new(FALSE,1);
|
main_hbox = gtk_hbox_new(FALSE,1);
|
||||||
gtk_box_pack_start(GTK_BOX(main_vbox), main_hbox, TRUE, TRUE, 0);
|
gtk_box_pack_start(GTK_BOX(main_vbox), main_hbox, TRUE, TRUE, 0);
|
||||||
@ -424,7 +454,7 @@ void show_main_window()
|
|||||||
gtk_container_add(GTK_CONTAINER(dailylist_item), event_label);
|
gtk_container_add(GTK_CONTAINER(dailylist_item), event_label);
|
||||||
gtk_widget_show(event_label);
|
gtk_widget_show(event_label);
|
||||||
}
|
}
|
||||||
gtk_widget_show(window);
|
gtk_widget_show(app);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -434,7 +464,6 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
gnome_init(&argc, &argv);
|
gnome_init(&argc, &argv);
|
||||||
|
|
||||||
|
|
||||||
show_main_window();
|
show_main_window();
|
||||||
|
|
||||||
/* Initialse date to the current day */
|
/* Initialse date to the current day */
|
||||||
|
Reference in New Issue
Block a user