Add:gui/internal:Added about dialog. It requires two new icons to be
authorakashihi <akashihi@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Tue, 26 Jan 2010 12:41:29 +0000 (12:41 +0000)
committerHenning Heinold <heinold@inf.fu-berlin.de>
Thu, 4 Feb 2010 23:46:35 +0000 (00:46 +0100)
added: gui.about and navit.

git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk/navit@2929 ffa7fe5e-494d-0410-b361-a75ebd5db220

navit/gui/internal/gui_internal.c
navit/navit_shipped.xml

index e0e2819..54522a2 100644 (file)
@@ -70,6 +70,7 @@
 #include "command.h"
 #include "xmlconfig.h"
 #include "util.h"
+#include "version.h"
 
 struct form {
        char *onsubmit;
@@ -5605,6 +5606,76 @@ gui_internal_cmd2_locale(struct gui_priv *this, char *function, struct attr **in
        graphics_draw_mode(this->gra, draw_mode_end);
 }
 
+static void
+gui_internal_cmd2_about(struct gui_priv *this, char *function, struct attr **in, struct attr ***out, int *valid)
+{
+       struct widget *menu,*wb,*w;
+       char *text;
+
+       graphics_draw_mode(this->gra, draw_mode_begin);
+       menu=gui_internal_menu(this, _("About Navit"));
+       menu->spx=this->spacing*10;
+       wb=gui_internal_box_new(this, gravity_top_center|orientation_vertical|flags_expand);
+       gui_internal_widget_append(menu, wb);
+
+       //Icon
+       gui_internal_widget_append(wb, w=gui_internal_image_new(this, image_new_xs(this, "navit")));
+       w->flags=gravity_top_center|orientation_horizontal|flags_fill;
+
+       //app name
+       text=g_strdup_printf("%s",PACKAGE_NAME);
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_top_center|orientation_horizontal|flags_expand;
+       g_free(text);
+
+       //Version
+       text=g_strdup_printf("%s %s%s%s (svn %s)",PACKAGE_VERSION, strlen(NAVIT_VARIANT)>0 ? "'" : "", NAVIT_VARIANT, strlen(NAVIT_VARIANT)>0 ? "'" : "", SVN_VERSION);
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_top_center|orientation_horizontal|flags_expand;
+       g_free(text);
+
+       //Site
+       text=g_strdup_printf("http://www.navit-project.org/");
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_top_center|orientation_horizontal|flags_expand;
+       g_free(text);
+
+       //Authors
+       text=g_strdup_printf("%s:",_("By"));
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_bottom_center|orientation_horizontal|flags_fill;
+       g_free(text);
+       text=g_strdup_printf("Martin Schaller");
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_bottom_center|orientation_horizontal|flags_fill;
+       g_free(text);
+       text=g_strdup_printf("Michael Farmbauer");
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_bottom_center|orientation_horizontal|flags_fill;
+       g_free(text);
+       text=g_strdup_printf("Alexander Atanasov");
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_bottom_center|orientation_horizontal|flags_fill;
+       g_free(text);
+       text=g_strdup_printf("Pierre Grandin");
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_bottom_center|orientation_horizontal|flags_fill;
+       g_free(text);
+
+       //Contributors
+       text=g_strdup_printf("%s",_("And all the Navit Team"));
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_bottom_center|orientation_horizontal|flags_fill;
+       g_free(text);
+       text=g_strdup_printf("%s",_("members and contributors."));
+       gui_internal_widget_append(wb, w=gui_internal_label_new(this, text));
+       w->flags=gravity_bottom_center|orientation_horizontal|flags_fill;
+       g_free(text);
+       
+       gui_internal_menu_render(this);
+       graphics_draw_mode(this->gra, draw_mode_end);
+}
+
 
 /**
  * @brief handles the 'next page' table event.
@@ -5808,6 +5879,7 @@ static struct command_table commands[] = {
        {"town",command_cast(gui_internal_cmd2_town)},
        {"quit",command_cast(gui_internal_cmd2_quit)},
        {"write",command_cast(gui_internal_cmd_write)},
+       {"about",command_cast(gui_internal_cmd2_about)},
 };
 
 
index 7a3e27a..c326ce7 100644 (file)
@@ -49,6 +49,7 @@ Map</text></img>
                                        <a href='#Settings'><img src='gui_settings'><text>Settings</text></img></a>
                                <a href='#Tools'><img src='gui_tools'><text>Tools</text></img></a>
                                <a href='#Route'><img src='gui_settings'><text>Route</text></img></a>
+                <img src='gui_about'  onclick='about()'><text>About</text></img>
                                </a>
                        <a name='Actions'><text>Actions</text>
                                <img src='gui_bookmark' onclick='bookmarks()'><text>Bookmarks</text></img>