00001 #include "config.h" 00002 #include <gcu/gtkchem3dviewer.h> 00003 #include <glib.h> 00004 #include <gtk/gtk.h> 00005 #include <stdio.h> 00006 #include <libgnomevfs/gnome-vfs.h> 00007 00011 int main(int argc, char *argv[]) 00012 { 00013 GtkWidget *window; 00014 GtkWidget *viewer; 00015 GnomeVFSURI *uri, *auri; 00016 char *path, *dir; 00017 00018 gtk_init (&argc, &argv); 00019 if (!gnome_vfs_init ()) { 00020 printf ("Could not initialize GnomeVFS\n"); 00021 return 1; 00022 } 00023 00024 window = gtk_window_new (GTK_WINDOW_TOPLEVEL); 00025 gtk_window_set_title(GTK_WINDOW(window), "GtkChem3dViewer"); 00026 g_signal_connect(GTK_OBJECT(window), "destroy", 00027 GTK_SIGNAL_FUNC(gtk_main_quit), 00028 NULL); 00029 00030 if (argc >= 2) { 00031 path = g_get_current_dir (); 00032 dir = g_strconcat (path, "/", NULL); 00033 g_free (path); 00034 uri = gnome_vfs_uri_new (dir); 00035 auri = gnome_vfs_uri_resolve_relative (uri, argv[1]); 00036 path = gnome_vfs_uri_to_string (auri, GNOME_VFS_URI_HIDE_NONE); 00037 viewer = gtk_chem3d_viewer_new(path); 00038 g_free (path); 00039 gnome_vfs_uri_unref (auri); 00040 gnome_vfs_uri_unref (uri); 00041 g_free (dir); 00042 gtk_container_add(GTK_CONTAINER(window), viewer); 00043 gtk_widget_show_all(window); 00044 00045 gtk_main(); 00046 } 00047 00048 return(0); 00049 }