]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/mainframe.cpp
apply misc fixes from Markus Fischer and Rambetter
[xonotic/netradiant.git] / radiant / mainframe.cpp
index 39d6cf68c9fbe238a2b19877e55334072b2266d3..402d89d44480ccf81f82c40d96e8243c51d77ddd 100644 (file)
@@ -54,9 +54,6 @@ extern "C" {
 // globals
 CString g_strAppPath;                   ///< holds the full path of the executable
 CString g_strDTDPath;                   ///< path to the DTD files
-/*!
-see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=297 for the two below
-*/
 CString g_pidFile;                      ///< the global .pid file (only for global part of the startup)
 CString g_pidGameFile;                  ///< the game-specific .pid file
 CString g_strBitmapsPath;               // directory where the bitmaps are stored
@@ -125,6 +122,7 @@ SCommandInfo g_Commands[] =
   {"CSGMerge", 'U', 0x04, ID_SELECTION_CSGMERGE, "menu_selection_csgmerge"},
   {"CSGSubtract", 'U', 0x01, ID_SELECTION_CSGSUBTRACT, "menu_selection_csgsubstract"},
   //  {"ViewGroups", 'G', 0x00, ID_VIEW_GROUPS, "menu_view_groups"}, (temporary disabled)
+  {"SelectFuncGroup", 'G', 0x00, ID_SELECT_FUNC_GROUP, "menu_select_func_group"},
   {"HideSelected", 'H', 0x00, ID_VIEW_HIDESHOW_HIDESELECTED, "menu_view_hideshow_hideselected"},
   {"ShowHidden", 'H', 0x01, ID_VIEW_HIDESHOW_SHOWHIDDEN, "menu_view_hideshow_showhidden"},
   {"BendMode", 'B', 0x00, ID_PATCH_BEND, "menu_patch_bend"},
@@ -427,6 +425,7 @@ gint HandleCommand (GtkWidget *widget, gpointer data)
     case ID_TOGGLECONSOLE: g_pParentWnd->OnToggleconsole (); break;
     case ID_VIEW_ENTITY: g_pParentWnd->OnViewEntity (); break;
     case ID_VIEW_GROUPS: g_pParentWnd->OnViewGroups (); break;
+       case ID_SELECT_FUNC_GROUP: g_pParentWnd->OnSelectFuncGroup(); break;
     case ID_TOGGLEVIEW: g_pParentWnd->OnToggleview (); break;
     case ID_TOGGLEVIEW_YZ: g_pParentWnd->OnToggleviewYz (); break;
     case ID_TOGGLEVIEW_XZ: g_pParentWnd->OnToggleviewXz (); break;
@@ -743,7 +742,6 @@ static gint mainframe_keypress (GtkWidget* widget, GdkEventKey* event, gpointer
 {
   unsigned int code = gdk_keyval_to_upper(event->keyval);
 
-  // http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=924
   if(code == GDK_ISO_Left_Tab) {
     code = GDK_Tab;
   }
@@ -752,7 +750,6 @@ static gint mainframe_keypress (GtkWidget* widget, GdkEventKey* event, gpointer
   Sys_Printf("key: %d (keyval: %d) (ctrl: %d)\n", code, event->keyval, event->state & GDK_CONTROL_MASK);
 #endif
 
-  // BUG: http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=865
   // return only if Texture Viewport  is in main window, otherwise if Tex viewport is in it's own window
   // the Filter GtkEntry won't release focus
   if ( g_pParentWnd->GetTexWnd()->m_pFilter == gtk_window_get_focus(GTK_WINDOW(widget)) )
@@ -936,49 +933,49 @@ void MainFrame::create_main_menu (GtkWidget *window, GtkWidget *vbox)
   gtk_widget_show (menu_bar);
 
   // File menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_File");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_File"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  create_menu_item_with_mnemonic (menu, "_New Map",
+  create_menu_item_with_mnemonic (menu, _("_New Map"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_NEW);
   menu_separator (menu);
 
   //++timo temporary experimental stuff for sleep mode..
-  item = create_menu_item_with_mnemonic (menu, "_Sleep",
+  item = create_menu_item_with_mnemonic (menu, _("_Sleep"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_SLEEP);
   g_object_set_data (G_OBJECT (window), "menu_file_sleep", item );
   menu_separator (menu);
   // end experimental
 
-  item = create_menu_item_with_mnemonic (menu, "_Open...",
+  item = create_menu_item_with_mnemonic (menu, _("_Open..."),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_OPEN);
   g_object_set_data (G_OBJECT (window), "menu_file_open", item);
-  create_menu_item_with_mnemonic (menu, "_Import...", // Hydra: give it it's proper name
+  create_menu_item_with_mnemonic (menu, _("_Import..."), // Hydra: give it it's proper name
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_IMPORTMAP);
-  item = create_menu_item_with_mnemonic (menu, "_Save",
+  item = create_menu_item_with_mnemonic (menu, _("_Save"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_SAVE);
   g_object_set_data (G_OBJECT (window), "menu_file_save", item);
-  create_menu_item_with_mnemonic (menu, "Save _as...",
+  create_menu_item_with_mnemonic (menu, _("Save _as..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_SAVEAS);
-  create_menu_item_with_mnemonic (menu, "Save s_elected...",
+  create_menu_item_with_mnemonic (menu, _("Save s_elected..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_EXPORTMAP);
   menu_separator (menu);
-  item = create_menu_item_with_mnemonic (menu, "Save re_gion...",
+  item = create_menu_item_with_mnemonic (menu, _("Save re_gion..."),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_SAVEREGION);
   g_object_set_data (G_OBJECT (window), "menu_file_saveregion", item);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "New p_roject...",
+  create_menu_item_with_mnemonic (menu, _("New p_roject..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_NEWPROJECT);
-  create_menu_item_with_mnemonic (menu, "Load _project...",
+  create_menu_item_with_mnemonic (menu, _("Load _project..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_LOADPROJECT);
-  create_menu_item_with_mnemonic (menu, "Pro_ject settings...",
+  create_menu_item_with_mnemonic (menu, _("Pro_ject settings..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_PROJECTSETTINGS);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "_Pointfile...",
+  create_menu_item_with_mnemonic (menu, _("_Pointfile..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_POINTFILE);
   menu_separator (menu);
-  item = create_menu_item_with_mnemonic (menu, "Recent Files",
+  item = create_menu_item_with_mnemonic (menu, _("Recent Files"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_RECENT1);
   g_object_set_data (G_OBJECT (item), "accel", accel);
   gtk_widget_set_sensitive (item, FALSE);
@@ -996,377 +993,378 @@ void MainFrame::create_main_menu (GtkWidget *window, GtkWidget *vbox)
   gtk_widget_hide (item);
   MRU_AddWidget (item, 3);
   menu_separator (menu);
-  item = create_menu_item_with_mnemonic (menu, "Check for GtkRadiant update (web)",
+  item = create_menu_item_with_mnemonic (menu, _("Check for GtkRadiant update (web)"),
     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_CHECKUPDATE);
   // disable, the functionality is no longer available
   gtk_widget_set_sensitive( item, FALSE );
 
-  create_menu_item_with_mnemonic (menu, "E_xit",
+  create_menu_item_with_mnemonic (menu, _("E_xit"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FILE_EXIT);
 
   // Edit menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Edit");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Edit"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
-  item = create_menu_item_with_mnemonic (menu, "_Undo",
+  item = create_menu_item_with_mnemonic (menu, _("_Undo"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_UNDO);
   g_object_set_data (G_OBJECT (window), "menu_edit_undo", item);
-  item = create_menu_item_with_mnemonic (menu, "_Redo",
+  item = create_menu_item_with_mnemonic (menu, _("_Redo"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_REDO);
   g_object_set_data (G_OBJECT (window), "menu_edit_redo", item);
   menu_separator (menu);
-  item = create_menu_item_with_mnemonic (menu, "_Copy", GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_COPYBRUSH);
-  item = create_menu_item_with_mnemonic (menu, "_Paste", GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_PASTEBRUSH);
-  item = create_menu_item_with_mnemonic (menu, "P_aste To Camera", GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_PASTEBRUSHTOCAMERA);
-  item = create_menu_item_with_mnemonic (menu, "_Delete", GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_DELETE);
+  item = create_menu_item_with_mnemonic (menu, _("_Copy"), GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_COPYBRUSH);
+  item = create_menu_item_with_mnemonic (menu, _("_Paste"), GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_PASTEBRUSH);
+  item = create_menu_item_with_mnemonic (menu, _("P_aste To Camera"), GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_PASTEBRUSHTOCAMERA);
+  item = create_menu_item_with_mnemonic (menu, _("_Delete"), GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_DELETE);
   g_object_set_data (G_OBJECT (window), "menu_selection_delete", item);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Map Info...", GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_MAPINFO);
-  create_menu_item_with_mnemonic (menu, "Entity Info...", GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_ENTITYINFO);
+  create_menu_item_with_mnemonic (menu, _("Map Info..."), GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_MAPINFO);
+  create_menu_item_with_mnemonic (menu, _("Entity Info..."), GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_ENTITYINFO);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Brush Scripts...", GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_SCRIPTS);
+  create_menu_item_with_mnemonic (menu, _("Brush Scripts..."), GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_SCRIPTS);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Load Pre_fab...", GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_LOADPREFAB);
-  create_menu_item_with_mnemonic (menu, "Save Selection as Prefab...", GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_SAVEPREFAB);
+  create_menu_item_with_mnemonic (menu, _("Load Pre_fab..."), GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_LOADPREFAB);
+  create_menu_item_with_mnemonic (menu, _("Save Selection as Prefab..."), GTK_SIGNAL_FUNC (HandleCommand), ID_EDIT_SAVEPREFAB);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Preferences...", GTK_SIGNAL_FUNC (HandleCommand), ID_PREFS);
+  create_menu_item_with_mnemonic (menu, _("Preferences..."), GTK_SIGNAL_FUNC (HandleCommand), ID_PREFS);
 
   // View menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_View");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_View"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Toggle");
-  create_menu_item_with_mnemonic (menu_in_menu, "Camera View", GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLECAMERA);
-  create_menu_item_with_mnemonic (menu_in_menu, "Console View", GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLECONSOLE);
-  item = create_menu_item_with_mnemonic (menu_in_menu, "Entity View", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ENTITY);
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Toggle"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Camera View"), GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLECAMERA);
+  create_menu_item_with_mnemonic (menu_in_menu, _("Console View"), GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLECONSOLE);
+  item = create_menu_item_with_mnemonic (menu_in_menu, _("Entity View"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ENTITY);
   g_object_set_data (G_OBJECT (window), "menu_view_entity", item);
   //  create_menu_item_with_mnemonic (menu_in_menu, "Groups View", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_GROUPS);
-  create_menu_item_with_mnemonic (menu_in_menu, "XY (Top)", GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLEVIEW);
-  create_menu_item_with_mnemonic (menu_in_menu, "YZ (Side)", GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLEVIEW_YZ);
-  create_menu_item_with_mnemonic (menu_in_menu, "XZ (Front)", GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLEVIEW_XZ);
-  create_menu_item_with_mnemonic (menu_in_menu, "Z View", GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLEZ);
+  create_menu_item_with_mnemonic (menu_in_menu, _("XY (Top)"), GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLEVIEW);
+  create_menu_item_with_mnemonic (menu_in_menu, _("YZ (Side)"), GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLEVIEW_YZ);
+  create_menu_item_with_mnemonic (menu_in_menu, _("XZ (Front)"), GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLEVIEW_XZ);
+  create_menu_item_with_mnemonic (menu_in_menu, _("Z View"), GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLEZ);
   menu_separator (menu);
-  item = create_menu_item_with_mnemonic (menu, "_Center", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CENTER);
-  item = create_menu_item_with_mnemonic (menu, "_Center 2d", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CENTERVIEW);
-  item = create_menu_item_with_mnemonic (menu, "_Up Floor", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_UPFLOOR);
-  item = create_menu_item_with_mnemonic (menu, "_Down Floor", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_DOWNFLOOR);
+  item = create_menu_item_with_mnemonic (menu, _("_Center"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CENTER);
+  item = create_menu_item_with_mnemonic (menu, _("_Center 2d"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CENTERVIEW);
+  item = create_menu_item_with_mnemonic (menu, _("_Up Floor"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_UPFLOOR);
+  item = create_menu_item_with_mnemonic (menu, _("_Down Floor"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_DOWNFLOOR);
   menu_separator (menu);
-  item = create_menu_item_with_mnemonic (menu, "_Next (XY, YZ, XY)", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_NEXTVIEW);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Layout");
-  create_menu_item_with_mnemonic (menu_in_menu, "XY (Top)", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_XY);
-  create_menu_item_with_mnemonic (menu_in_menu, "YZ", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SIDE);
-  create_menu_item_with_mnemonic (menu_in_menu, "XZ", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_FRONT);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Zoom");
-  create_menu_item_with_mnemonic (menu_in_menu, "_XY 100%", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_100);
-  item = create_menu_item_with_mnemonic (menu_in_menu, "XY Zoom _In", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ZOOMIN);
-  item = create_menu_item_with_mnemonic (menu_in_menu, "XY Zoom _Out", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ZOOMOUT);
+  item = create_menu_item_with_mnemonic (menu, _("_Next (XY, YZ, XY)"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_NEXTVIEW);
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Layout"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("XY (Top)"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_XY);
+  create_menu_item_with_mnemonic (menu_in_menu, _("YZ"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SIDE);
+  create_menu_item_with_mnemonic (menu_in_menu, _("XZ"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_FRONT);
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Zoom"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("_XY 100%"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_100);
+  item = create_menu_item_with_mnemonic (menu_in_menu, _("XY Zoom _In"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ZOOMIN);
+  item = create_menu_item_with_mnemonic (menu_in_menu, _("XY Zoom _Out"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ZOOMOUT);
   menu_separator (menu_in_menu);
-  create_menu_item_with_mnemonic (menu_in_menu, "_Z 100%", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_Z100);
-  item = create_menu_item_with_mnemonic (menu_in_menu, "Z Zoo_m In", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ZZOOMIN);
+  create_menu_item_with_mnemonic (menu_in_menu, _("_Z 100%"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_Z100);
+  item = create_menu_item_with_mnemonic (menu_in_menu, _("Z Zoo_m In"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ZZOOMIN);
   g_object_set_data (G_OBJECT (window), "menu_view_zzoomin", item);
-  item = create_menu_item_with_mnemonic (menu_in_menu, "Z Zoom O_ut", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ZZOOMOUT);
+  item = create_menu_item_with_mnemonic (menu_in_menu, _("Z Zoom O_ut"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ZZOOMOUT);
   g_object_set_data (G_OBJECT (window), "menu_view_zzoomout", item);
   menu_separator (menu_in_menu);
-  item = create_menu_item_with_mnemonic (menu_in_menu, "Cubic Clip Zoom In", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CUBEIN);
-  item = create_menu_item_with_mnemonic (menu_in_menu, "Cubic Clip Zoom Out", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CUBEOUT);
+  item = create_menu_item_with_mnemonic (menu_in_menu, _("Cubic Clip Zoom In"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CUBEIN);
+  item = create_menu_item_with_mnemonic (menu_in_menu, _("Cubic Clip Zoom Out"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CUBEOUT);
   menu_separator (menu);
 
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Show");
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Show _Angles", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWANGLES, FALSE);
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Show"));
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Show _Angles"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWANGLES, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_showangles", item);
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Show _Names", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWNAMES, TRUE);
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Show _Names"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWNAMES, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_view_shownames", item);
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Show Blocks", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWBLOCKS, FALSE);
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Show Blocks"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWBLOCKS, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_showblocks", item);
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Show C_oordinates", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWCOORDINATES, TRUE);
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Show C_oordinates"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWCOORDINATES, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_view_showcoordinates", item);
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Show Window Outline", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWOUTLINE, TRUE);
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Show Window Outline"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWOUTLINE, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_view_showoutline", item);
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Show ZBuffered Outline", GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_NOOUTLINE, TRUE);
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Show ZBuffered Outline"), GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_NOOUTLINE, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_selection_nooutline", item);
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Show Axes", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWAXES, TRUE);
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Show Axes"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWAXES, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_view_showaxes", item);
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Show Workzone", GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWWORKZONE, FALSE);
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Show Workzone"), GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_SHOWWORKZONE, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_showworkzone", item);
 
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Filter");
-  create_check_menu_item_with_mnemonic (menu_in_menu, "World", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_WORLD, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Entities", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_ENTITIES, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Areaportals", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_AREAPORTALS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Translucent", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_TRANSLUCENT, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Liquids", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_LIQUIDS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Caulk", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_CAULK, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Clips", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_CLIPS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Paths", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_PATHS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Clusterportals", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_CLUSTERPORTALS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Lights", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_LIGHTS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Structural", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_STRUCTURAL, FALSE);
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Lightgrid", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_LIGHTGRID, FALSE);
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Filter"));
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("World"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_WORLD, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Entities"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_ENTITIES, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Areaportals"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_AREAPORTALS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Translucent"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_TRANSLUCENT, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Liquids"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_LIQUIDS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Caulk"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_CAULK, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Clips"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_CLIPS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Paths"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_PATHS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Clusterportals"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_CLUSTERPORTALS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Lights"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_LIGHTS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Structural"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_STRUCTURAL, FALSE);
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Lightgrid"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_LIGHTGRID, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_filter_lightgrid", item);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Patches", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_PATCHES, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Details", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_DETAILS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Hints", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_HINTSSKIPS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Models", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_MODELS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Triggers", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_TRIGGERS, FALSE);
-  create_check_menu_item_with_mnemonic (menu_in_menu, "Botclips", GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_BOTCLIPS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Patches"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_PATCHES, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Details"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_DETAILS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Hints"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_HINTSSKIPS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Models"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_MODELS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Triggers"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_TRIGGERS, FALSE);
+  create_check_menu_item_with_mnemonic (menu_in_menu, _("Botclips"), GTK_SIGNAL_FUNC (HandleCommand), ID_FILTER_BOTCLIPS, FALSE);
 
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Hide/Show");
-  create_menu_item_with_mnemonic (menu_in_menu, "Hide Selected",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Hide/Show"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Hide Selected"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_HIDESHOW_HIDESELECTED);
-  create_menu_item_with_mnemonic (menu_in_menu, "Show Hidden",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Show Hidden"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_HIDESHOW_SHOWHIDDEN);
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Entities as");
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Entities as"));
   g_object_set_data (G_OBJECT (window), "view_entitiesas_menu", menu_in_menu);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, NULL, "Bounding box",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, NULL, _("Bounding box"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ENTITIESAS_BOUNDINGBOX,FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_entitiesas_boundingbox", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "Wireframe",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("Wireframe"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ENTITIESAS_WIREFRAME,FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_entitiesas_wireframe", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "Selected Wireframe",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("Selected Wireframe"),
                                  GTK_SIGNAL_FUNC (HandleCommand),ID_VIEW_ENTITIESAS_SELECTEDWIREFRAME,FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_entitiesas_selectedwireframe", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "Selected Skinned",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("Selected Skinned"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ENTITIESAS_SELECTEDSKINNED,FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_entitiesas_selectedskinned", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "Skinned",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("Skinned"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ENTITIESAS_SKINNED,FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_entitiesas_skinned", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "Skinned and Boxed",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("Skinned and Boxed"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_ENTITIESAS_SKINNEDANDBOXED,FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_entitiesas_skinnedandboxed", item);
   menu_separator (menu);
-  item = create_check_menu_item_with_mnemonic (menu, "Cubic Clipping",
+  item = create_check_menu_item_with_mnemonic (menu, _("Cubic Clipping"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CUBICCLIPPING, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_view_cubicclipping", item);
   menu_separator (menu);
-  item = create_check_menu_item_with_mnemonic (menu, "OpenGL Lighting",
+  item = create_check_menu_item_with_mnemonic (menu, _("OpenGL Lighting"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_OPENGLLIGHTING, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_opengllighting", item);
 
   // Selection menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Selection");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Selection"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Drag");
-  create_menu_item_with_mnemonic (menu_in_menu, "Drag _Edges",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Drag"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Drag _Edges"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_DRAGEDGES);
-  create_menu_item_with_mnemonic (menu_in_menu, "Drag _Vertices",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Drag _Vertices"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_DRAGVERTECIES);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "_Clone",
+  create_menu_item_with_mnemonic (menu, _("_Clone"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_CLONE);
-  item = create_menu_item_with_mnemonic (menu, "Deselect",
+  item = create_menu_item_with_mnemonic (menu, _("Deselect"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_DESELECT);
-  item = create_menu_item_with_mnemonic (menu, "Invert",
+  item = create_menu_item_with_mnemonic (menu, _("Invert"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_INVERT);
 #ifndef QUAKE3
-  create_menu_item_with_mnemonic (menu, "_Delete",
+  create_menu_item_with_mnemonic (menu, _("_Delete"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_DELETE);
 #endif
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Flip");
-  create_menu_item_with_mnemonic (menu_in_menu, "Flip _X",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Flip"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Flip _X"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_FLIPX);
-  create_menu_item_with_mnemonic (menu_in_menu, "Flip _Y",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Flip _Y"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_FLIPY);
-  create_menu_item_with_mnemonic (menu_in_menu, "Flip _Z",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Flip _Z"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_FLIPZ);
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Rotate");
-  create_menu_item_with_mnemonic (menu_in_menu, "Rotate X",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Rotate"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Rotate X"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_ROTATEX);
-  create_menu_item_with_mnemonic (menu_in_menu, "Rotate Y",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Rotate Y"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_ROTATEY);
-  create_menu_item_with_mnemonic (menu_in_menu, "Rotate Z",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Rotate Z"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_ROTATEZ);
-  create_menu_item_with_mnemonic (menu_in_menu, "Arbitrary rotation...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Arbitrary rotation..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_ARBITRARYROTATION);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Scale...", GTK_SIGNAL_FUNC (HandleCommand), ID_SELECT_SCALE);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "CSG");
-  create_menu_item_with_mnemonic (menu_in_menu, "Make _Hollow",
+  create_menu_item_with_mnemonic (menu, _("Scale..."), GTK_SIGNAL_FUNC (HandleCommand), ID_SELECT_SCALE);
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("CSG"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Make _Hollow"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_MAKEHOLLOW);
-  create_menu_item_with_mnemonic (menu_in_menu, "CSG _Subtract",
+  create_menu_item_with_mnemonic (menu_in_menu, _("CSG _Subtract"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_CSGSUBTRACT);
-  create_menu_item_with_mnemonic (menu_in_menu, "CSG _Merge",
+  create_menu_item_with_mnemonic (menu_in_menu, _("CSG _Merge"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_CSGMERGE);
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Select");
-  create_menu_item_with_mnemonic (menu_in_menu, "Select Complete _Tall",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Select"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Select Complete _Tall"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_SELECTCOMPLETETALL);
-  create_menu_item_with_mnemonic (menu_in_menu, "Select T_ouching",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Select T_ouching"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_SELECTTOUCHING);
-  create_menu_item_with_mnemonic (menu_in_menu, "Select _Partial Tall",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Select _Partial Tall"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_SELECTPARTIALTALL);
-  create_menu_item_with_mnemonic (menu_in_menu, "Select _Inside",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Select _Inside"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_SELECTINSIDE);
+  create_menu_item_with_mnemonic (menu_in_menu, "Select Func _Group", GTK_SIGNAL_FUNC (HandleCommand), ID_SELECT_FUNC_GROUP);
 #ifndef QUAKE3
-  create_menu_item_with_mnemonic (menu_in_menu, "Nudge Left",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Nudge Left"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_SELECT_NUDGELEFT);
-  create_menu_item_with_mnemonic (menu_in_menu, "Nudge Right",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Nudge Right"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_SELECT_NUDGERIGHT);
-  create_menu_item_with_mnemonic (menu_in_menu, "Nudge Up",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Nudge Up"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_SELECT_NUDGEUP);
-  create_menu_item_with_mnemonic (menu_in_menu, "Nudge Down",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Nudge Down"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_SELECT_NUDGEDOWN);
 #endif
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Clipper");
-  create_menu_item_with_mnemonic (menu_in_menu, "Toggle Clipper",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Clipper"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Toggle Clipper"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_CLIPPER);
   menu_separator (menu_in_menu);
-  create_menu_item_with_mnemonic (menu_in_menu, "Clip selection",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Clip selection"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_CLIP_SELECTED);
-  create_menu_item_with_mnemonic (menu_in_menu, "Split selection",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Split selection"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SPLIT_SELECTED);
-  create_menu_item_with_mnemonic (menu_in_menu, "Flip Clip orientation",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Flip Clip orientation"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_FLIP_CLIP);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Connect entities",
+  create_menu_item_with_mnemonic (menu, _("Connect entities"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_CONNECT);
-  create_menu_item_with_mnemonic (menu, "Ungroup entity",
+  create_menu_item_with_mnemonic (menu, _("Ungroup entity"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_UNGROUPENTITY);
-  create_menu_item_with_mnemonic (menu, "Make detail",
+  create_menu_item_with_mnemonic (menu, _("Make detail"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_MAKE_DETAIL);
-  create_menu_item_with_mnemonic (menu, "Make structural",
+  create_menu_item_with_mnemonic (menu, _("Make structural"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_SELECTION_MAKE_STRUCTURAL);
 
   // BSP menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Bsp");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Bsp"));
 
   menu_separator (menu);
   g_object_set_data (G_OBJECT (window), "menu_bsp", menu);
 
   // Grid menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Grid");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Grid"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  item = create_radio_menu_item_with_mnemonic (menu, NULL, "Grid0.25",
+  item = create_radio_menu_item_with_mnemonic (menu, NULL, _("Grid0.25"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_025, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_025", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid0.5",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid0.5"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_05, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_05", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid1",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid1"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_1, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_1", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid2",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid2"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_2, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_2", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid4",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid4"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_4, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_4", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid8",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid8"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_8, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_grid_8", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid16",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid16"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_16, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_16", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid32",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid32"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_32, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_32", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid64",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid64"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_64, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_64", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid128",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid128"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_128, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_128", item);
-  item = create_radio_menu_item_with_mnemonic (menu, item, "Grid256",
+  item = create_radio_menu_item_with_mnemonic (menu, item, _("Grid256"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_GRID_256, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_grid_256", item);
   menu_separator (menu);
-  item = create_check_menu_item_with_mnemonic (menu, "Snap to grid",
+  item = create_check_menu_item_with_mnemonic (menu, _("Snap to grid"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_SNAPTOGRID, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_snaptogrid", item);
 
   // Textures menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Textures");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Textures"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  item = create_check_menu_item_with_mnemonic (menu, "Show In _Use",
+  item = create_check_menu_item_with_mnemonic (menu, _("Show In _Use"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_SHOWINUSE, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_showinuse", item);
-  item = create_check_menu_item_with_mnemonic (menu, "Show _All",
+  item = create_check_menu_item_with_mnemonic (menu, _("Show _All"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_SHOWALL, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_showall", item);
   menu_separator (menu);
-  item = create_check_menu_item_with_mnemonic (menu, "Show shaders",
+  item = create_check_menu_item_with_mnemonic (menu, _("Show shaders"),
                                  GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_SHADERS_SHOW, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_shaders_show", item);
-  item = create_menu_item_with_mnemonic (menu, "Flush & Reload Shaders",
+  item = create_menu_item_with_mnemonic (menu, _("Flush & Reload Shaders"),
                           GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_RELOADSHADERS);
   g_object_set_data (G_OBJECT (window), "menu_textures_reloadshaders", item);
-  item = create_menu_item_with_mnemonic (menu, "Load directory...",
+  item = create_menu_item_with_mnemonic (menu, _("Load directory..."),
                           GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_LOAD);
   g_object_set_data (G_OBJECT (window), "menu_textures_load", item);
-  item = create_menu_item_with_mnemonic (menu, "Directory list...",
+  item = create_menu_item_with_mnemonic (menu, _("Directory list..."),
                           GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_LOADLIST);
   menu_separator (menu);
 
-  item = create_menu_item_with_mnemonic (menu, "_Surface Inspector",
+  item = create_menu_item_with_mnemonic (menu, _("_Surface Inspector"),
                           GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_INSPECTOR);
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Render Quality");
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Render Quality"));
   g_object_set_data (G_OBJECT (window), "render_quality_menu", menu_in_menu);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, NULL, "_Wireframe",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, NULL, _("_Wireframe"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_WIREFRAME, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_wireframe", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "_Flat shade",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("_Flat shade"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_FLATSHADE, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_flatshade", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "_Nearest",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("_Nearest"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_NEAREST, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_nearest", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "Nearest _Mipmap",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("Nearest _Mipmap"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_NEARESTMIPMAP, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_nearestmipmap", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "_Linear",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("_Linear"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_LINEAR, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_linear", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "_Bilinear",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("_Bilinear"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_BILINEAR, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_bilinear", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "B_ilinear Mipmap",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("B_ilinear Mipmap"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_BILINEARMIPMAP, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_bilinearmipmap", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "T_rilinear",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("T_rilinear"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_VIEW_TRILINEAR, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_view_trilinear", item);
-  create_menu_item_with_mnemonic (menu, "Find / Replace...",
+  create_menu_item_with_mnemonic (menu, _("Find / Replace..."),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURE_REPLACEALL);
 
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Texture Lock");
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Moves",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Texture Lock"));
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Moves"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLE_LOCK, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_toggle_lock", item);
-  item = create_check_menu_item_with_mnemonic (menu_in_menu, "Rotations",
+  item = create_check_menu_item_with_mnemonic (menu_in_menu, _("Rotations"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TOGGLE_ROTATELOCK, TRUE);
   g_object_set_data (G_OBJECT (window), "menu_toggle_rotatelock", item);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Texture Window Scale");
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, NULL, "200%",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Texture Window Scale"));
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, NULL, _("200%"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_TEXTUREWINDOWSCALE_200, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_texturewindowscale_200", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "100%",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("100%"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_TEXTUREWINDOWSCALE_100, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_texturewindowscale_100", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "50%",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("50%"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_TEXTUREWINDOWSCALE_50, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_texturewindowscale_50", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "25%",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("25%"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_TEXTUREWINDOWSCALE_25, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_texturewindowscale_25", item);
-  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, "10%",
+  item = create_radio_menu_item_with_mnemonic (menu_in_menu, item, _("10%"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_TEXTUREWINDOWSCALE_10, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_texturewindowscale_10", item);
   item = menu_separator (menu);
-  item = create_check_menu_item_with_mnemonic (menu, "shaderlist.txt only",
+  item = create_check_menu_item_with_mnemonic (menu, _("shaderlist.txt only"),
                                 GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTURES_SHADERLISTONLY, FALSE);
   g_object_set_data (G_OBJECT (window), "menu_textures_shaderlistonly", item);
   item = menu_separator (menu);
@@ -1374,179 +1372,178 @@ void MainFrame::create_main_menu (GtkWidget *window, GtkWidget *vbox)
   g_object_set_data (G_OBJECT (window), "menu_textures", menu);
 
   // Misc menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Misc");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Misc"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  create_menu_item_with_mnemonic (menu, "_Benchmark", GTK_SIGNAL_FUNC (HandleCommand), ID_MISC_BENCHMARK);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Colors");
-  menu_3 = create_menu_in_menu_with_mnemonic (menu_in_menu, "Themes");
-  create_menu_item_with_mnemonic (menu_3, "QE4 Original", GTK_SIGNAL_FUNC (HandleCommand), ID_COLOR_SETORIGINAL);
-  create_menu_item_with_mnemonic (menu_3, "Q3Radiant Original", GTK_SIGNAL_FUNC (HandleCommand), ID_COLOR_SETQER);
-  create_menu_item_with_mnemonic (menu_3, "Black and Green", GTK_SIGNAL_FUNC (HandleCommand), ID_COLOR_SETBLACK);
-  create_menu_item_with_mnemonic (menu_3, "Maya/Max/Lightwave Emulation", GTK_SIGNAL_FUNC (HandleCommand), ID_COLOR_SETYDNAR);
+  create_menu_item_with_mnemonic (menu, _("_Benchmark"), GTK_SIGNAL_FUNC (HandleCommand), ID_MISC_BENCHMARK);
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Colors"));
+  menu_3 = create_menu_in_menu_with_mnemonic (menu_in_menu, _("Themes"));
+  create_menu_item_with_mnemonic (menu_3, _("QE4 Original"), GTK_SIGNAL_FUNC (HandleCommand), ID_COLOR_SETORIGINAL);
+  create_menu_item_with_mnemonic (menu_3, _("Q3Radiant Original"), GTK_SIGNAL_FUNC (HandleCommand), ID_COLOR_SETQER);
+  create_menu_item_with_mnemonic (menu_3, _("Black and Green"), GTK_SIGNAL_FUNC (HandleCommand), ID_COLOR_SETBLACK);
+  create_menu_item_with_mnemonic (menu_3, _("Maya/Max/Lightwave Emulation"), GTK_SIGNAL_FUNC (HandleCommand), ID_COLOR_SETYDNAR);
 
   menu_separator (menu_in_menu);
-  create_menu_item_with_mnemonic (menu_in_menu, "_Texture Background...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("_Texture Background..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_TEXTUREBK);
-  create_menu_item_with_mnemonic (menu_in_menu, "Grid Background...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Grid Background..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_XYBK);
-  create_menu_item_with_mnemonic (menu_in_menu, "Grid Major...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Grid Major..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_MAJOR);
-  create_menu_item_with_mnemonic (menu_in_menu, "Grid Minor...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Grid Minor..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_MINOR);
-  create_menu_item_with_mnemonic (menu_in_menu, "Grid Major Small...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Grid Major Small..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_MAJOR_ALT);
-  create_menu_item_with_mnemonic (menu_in_menu, "Grid Minor Small...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Grid Minor Small..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_MINOR_ALT);
-  create_menu_item_with_mnemonic (menu_in_menu, "Grid Text...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Grid Text..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_GRIDTEXT);
-  create_menu_item_with_mnemonic (menu_in_menu, "Grid Block...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Grid Block..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_GRIDBLOCK);
-  create_menu_item_with_mnemonic (menu_in_menu, "Default Brush...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Default Brush..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_BRUSH);
-  create_menu_item_with_mnemonic (menu_in_menu, "Camera Background...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Camera Background..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_CAMERABACK);
-  create_menu_item_with_mnemonic (menu_in_menu, "Selected Brush...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Selected Brush..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_SELECTEDBRUSH);
-  create_menu_item_with_mnemonic (menu_in_menu, "Selected Brush (Camera)...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Selected Brush (Camera)..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_SELECTEDBRUSH3D);
-  create_menu_item_with_mnemonic (menu_in_menu, "Clipper...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Clipper..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_CLIPPER);
-  create_menu_item_with_mnemonic (menu_in_menu, "Active View name...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Active View name..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_COLORS_VIEWNAME);
 
-  create_menu_item_with_mnemonic (menu, "_Gamma...",
+  create_menu_item_with_mnemonic (menu, _("_Gamma..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_MISC_GAMMA);
-  create_menu_item_with_mnemonic (menu, "Find brush...",
+  create_menu_item_with_mnemonic (menu, _("Find brush..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_MISC_FINDBRUSH);
-  item = create_menu_item_with_mnemonic (menu, "Next leak spot",
+  item = create_menu_item_with_mnemonic (menu, _("Next leak spot"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_MISC_NEXTLEAKSPOT);
-  item = create_menu_item_with_mnemonic (menu, "Previous leak spot",
+  item = create_menu_item_with_mnemonic (menu, _("Previous leak spot"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_MISC_PREVIOUSLEAKSPOT);
-  // http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=394
-//  create_menu_item_with_mnemonic (menu, "_Print XY View", GTK_SIGNAL_FUNC (HandleCommand), ID_MISC_PRINTXY);
-  item = create_menu_item_with_mnemonic (menu, "_Select Entity Color...",
+  create_menu_item_with_mnemonic (menu, _("_Print XY View"), GTK_SIGNAL_FUNC (HandleCommand), ID_MISC_PRINTXY);
+  item = create_menu_item_with_mnemonic (menu, _("_Select Entity Color..."),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_MISC_SELECTENTITYCOLOR);
   g_object_set_data (G_OBJECT (window), "menu_misc_selectentitycolor", item);
 
   // Region menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Region");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Region"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  create_menu_item_with_mnemonic (menu, "_Off",
+  create_menu_item_with_mnemonic (menu, _("_Off"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_REGION_OFF);
-  create_menu_item_with_mnemonic (menu, "_Set XY",
+  create_menu_item_with_mnemonic (menu, _("_Set XY"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_REGION_SETXY);
-  create_menu_item_with_mnemonic (menu, "Set _Tall Brush",
+  create_menu_item_with_mnemonic (menu, _("Set _Tall Brush"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_REGION_SETTALLBRUSH);
-  create_menu_item_with_mnemonic (menu, "Set _Brush",
+  create_menu_item_with_mnemonic (menu, _("Set _Brush"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_REGION_SETBRUSH);
-  create_menu_item_with_mnemonic (menu, "Set Se_lected Brushes",
+  create_menu_item_with_mnemonic (menu, _("Set Se_lected Brushes"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_REGION_SETSELECTION);
 
   // Brush menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Brush");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Brush"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  item = create_menu_item_with_mnemonic (menu, "3 sided", GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_3SIDED);
-  item = create_menu_item_with_mnemonic (menu, "4 sided", GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_4SIDED);
-  item = create_menu_item_with_mnemonic (menu, "5 sided", GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_5SIDED);
-  item = create_menu_item_with_mnemonic (menu, "6 sided", GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_6SIDED);
-  item = create_menu_item_with_mnemonic (menu, "7 sided", GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_7SIDED);
-  item = create_menu_item_with_mnemonic (menu, "8 sided", GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_8SIDED);
-  item = create_menu_item_with_mnemonic (menu, "9 sided", GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_9SIDED);
+  item = create_menu_item_with_mnemonic (menu, _("3 sided"), GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_3SIDED);
+  item = create_menu_item_with_mnemonic (menu, _("4 sided"), GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_4SIDED);
+  item = create_menu_item_with_mnemonic (menu, _("5 sided"), GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_5SIDED);
+  item = create_menu_item_with_mnemonic (menu, _("6 sided"), GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_6SIDED);
+  item = create_menu_item_with_mnemonic (menu, _("7 sided"), GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_7SIDED);
+  item = create_menu_item_with_mnemonic (menu, _("8 sided"), GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_8SIDED);
+  item = create_menu_item_with_mnemonic (menu, _("9 sided"), GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_9SIDED);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Arbitrary sided...",
+  create_menu_item_with_mnemonic (menu, _("Arbitrary sided..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_ARBITRARYSIDED);
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Primitives");
-  create_menu_item_with_mnemonic (menu_in_menu, "Cone...",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Primitives"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Cone..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_MAKECONE);
-  create_menu_item_with_mnemonic (menu_in_menu, "Sphere...",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Sphere..."),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_BRUSH_PRIMITIVES_SPHERE);
 
   // Curve menu
   if (!g_pGameDescription->mNoPatch)
   {
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Curve");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Curve"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  create_menu_item_with_mnemonic (menu, "Cylinder", GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHTUBE);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "More Cylinders");
-  create_menu_item_with_mnemonic (menu_in_menu, "Dense Cylinder",
+  create_menu_item_with_mnemonic (menu, _("Cylinder"), GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHTUBE);
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("More Cylinders"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Dense Cylinder"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHDENSETUBE);
-  create_menu_item_with_mnemonic (menu_in_menu, "Very Dense Cylinder",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Very Dense Cylinder"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHVERYDENSETUBE);
-  create_menu_item_with_mnemonic (menu_in_menu, "Square Cylinder",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Square Cylinder"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHSQUARE);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "End cap", GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHENDCAP);
-  create_menu_item_with_mnemonic (menu, "Bevel", GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHBEVEL);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "More End caps, Bevels");
-  create_menu_item_with_mnemonic (menu_in_menu, "Square Endcap",
+  create_menu_item_with_mnemonic (menu, _("End cap"), GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHENDCAP);
+  create_menu_item_with_mnemonic (menu, _("Bevel"), GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHBEVEL);
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("More End caps, Bevels"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Square Endcap"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_MOREENDCAPSBEVELS_SQUAREBEVEL);
-  create_menu_item_with_mnemonic (menu_in_menu, "Square Bevel",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Square Bevel"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_MOREENDCAPSBEVELS_SQUAREENDCAP);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Cone", GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHCONE);
-  item = create_menu_item_with_mnemonic (menu, "Sphere",
+  create_menu_item_with_mnemonic (menu, _("Cone"), GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PATCHCONE);
+  item = create_menu_item_with_mnemonic (menu, _("Sphere"),
                           GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_PRIMITIVES_SPHERE);
   gtk_widget_set_sensitive (item, FALSE);
   menu_separator (menu);
-  item = create_menu_item_with_mnemonic (menu, "Simple Patch Mesh...",
+  item = create_menu_item_with_mnemonic (menu, _("Simple Patch Mesh..."),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_SIMPLEPATCHMESH);
   g_object_set_data (G_OBJECT (window), "menu_simplepatchmesh", item);
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Insert");
-  create_menu_item_with_mnemonic (menu_in_menu, "Insert (2) Columns",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Insert"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Insert (2) Columns"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_INSERT_INSERTCOLUMN);
-  create_menu_item_with_mnemonic (menu_in_menu, "Add (2) Columns",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Add (2) Columns"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_INSERT_ADDCOLUMN);
   menu_separator (menu_in_menu);
-  create_menu_item_with_mnemonic (menu_in_menu, "Insert (2) Rows",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Insert (2) Rows"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_INSERT_INSERTROW);
-  create_menu_item_with_mnemonic (menu_in_menu, "Add (2) Rows",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Add (2) Rows"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_INSERT_ADDROW);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Delete");
-  create_menu_item_with_mnemonic (menu_in_menu, "First (2) Columns",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Delete"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("First (2) Columns"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_DELETE_FIRSTCOLUMN);
-  create_menu_item_with_mnemonic (menu_in_menu, "Last (2) Columns",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Last (2) Columns"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_DELETE_LASTCOLUMN);
   menu_separator (menu_in_menu);
-  create_menu_item_with_mnemonic (menu_in_menu, "First (2) Rows",
+  create_menu_item_with_mnemonic (menu_in_menu, _("First (2) Rows"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_DELETE_FIRSTROW);
-  create_menu_item_with_mnemonic (menu_in_menu, "Last (2) Rows",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Last (2) Rows"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_DELETE_LASTROW);
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Matrix");
-  create_menu_item_with_mnemonic (menu_in_menu, "Invert",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Matrix"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Invert"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_NEGATIVE);
-  menu_3 = create_menu_in_menu_with_mnemonic (menu_in_menu, "Re-disperse");
-  create_menu_item_with_mnemonic (menu_3, "Rows", GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_REDISPERSE_ROWS);
-  create_menu_item_with_mnemonic (menu_3, "Cols (Intermediate)", GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_REDISPERSE_INTERMEDIATE_COLS);
-  create_menu_item_with_mnemonic (menu_3, "Rows (Intermediate)", GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_REDISPERSE_INTERMEDIATE_ROWS);
-  create_menu_item_with_mnemonic (menu_in_menu, "Transpose",
+  menu_3 = create_menu_in_menu_with_mnemonic (menu_in_menu, _("Re-disperse"));
+  create_menu_item_with_mnemonic (menu_3, _("Rows"), GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_REDISPERSE_ROWS);
+  create_menu_item_with_mnemonic (menu_3, _("Cols (Intermediate)"), GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_REDISPERSE_INTERMEDIATE_COLS);
+  create_menu_item_with_mnemonic (menu_3, _("Rows (Intermediate)"), GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_REDISPERSE_INTERMEDIATE_ROWS);
+  create_menu_item_with_mnemonic (menu_in_menu, _("Transpose"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_MATRIX_TRANSPOSE);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Cap Selection",
+  create_menu_item_with_mnemonic (menu, _("Cap Selection"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_CAP);
-  create_menu_item_with_mnemonic (menu, "Cycle Cap Texture",
+  create_menu_item_with_mnemonic (menu, _("Cycle Cap Texture"),
                        GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_CYCLECAP);
   menu_separator (menu);
-  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, "Overlay");
-  create_menu_item_with_mnemonic (menu_in_menu, "Set",
+  menu_in_menu = create_menu_in_menu_with_mnemonic (menu, _("Overlay"));
+  create_menu_item_with_mnemonic (menu_in_menu, _("Set"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_OVERLAY_SET);
-  create_menu_item_with_mnemonic (menu_in_menu, "Clear",
+  create_menu_item_with_mnemonic (menu_in_menu, _("Clear"),
                    GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_OVERLAY_CLEAR);
   menu_separator (menu);
-  create_menu_item_with_mnemonic (menu, "Thicken...", GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_THICKEN);
+  create_menu_item_with_mnemonic (menu, _("Thicken..."), GTK_SIGNAL_FUNC (HandleCommand), ID_CURVE_THICKEN);
   }
   // Plugins menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Plugins");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Plugins"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
@@ -1559,11 +1556,11 @@ void MainFrame::create_main_menu (GtkWidget *window, GtkWidget *vbox)
   g_object_set_data (G_OBJECT (window), "menu_plugin", menu);
 
   // Help menu
-  menu = create_sub_menu_with_mnemonic (menu_bar, "_Help");
+  menu = create_sub_menu_with_mnemonic (menu_bar, _("_Help"));
   if (g_PrefsDlg.m_bDetachableMenus)
     menu_tearoff (menu);
 
-  item = create_menu_item_with_mnemonic (menu, "Manual",
+  item = create_menu_item_with_mnemonic (menu, _("Manual"),
                            GTK_SIGNAL_FUNC (HandleCommand), ID_HELP);
   gtk_widget_add_accelerator (item, "activate", accel, GDK_F1, (GdkModifierType)0, GTK_ACCEL_VISIBLE);
 
@@ -1574,11 +1571,11 @@ void MainFrame::create_main_menu (GtkWidget *window, GtkWidget *vbox)
   // TTimo: this is in global.xlink now
   //create_menu_item_with_mnemonic (menu, "Links",
   //                  GTK_SIGNAL_FUNC (HandleCommand), ID_HELP_LINKS);
-  create_menu_item_with_mnemonic (menu, "Bug report",
+  create_menu_item_with_mnemonic (menu, _("Bug report"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_HELP_BUGREPORT);
-  create_menu_item_with_mnemonic (menu, "Shortcuts list",
+  create_menu_item_with_mnemonic (menu, _("Shortcuts list"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_HELP_COMMANDLIST);
-  create_menu_item_with_mnemonic (menu, "_About",
+  create_menu_item_with_mnemonic (menu, _("_About"),
                     GTK_SIGNAL_FUNC (HandleCommand), ID_HELP_ABOUT);
 
 
@@ -1665,36 +1662,36 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
 
   gtk_widget_show (toolbar);
 
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "Open", "Open an existing map", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), _("Open"), _("Open an existing map"), "",
                                new_pixmap (window, "file_open.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_FILE_OPEN));
   g_object_set_data (G_OBJECT (window), "tb_file_open", w);
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "Save", "Save the active map", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), _("Save"), _("Save the active map"), "",
                                new_pixmap (window, "file_save.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_FILE_SAVE));
   g_object_set_data (G_OBJECT (window), "tb_file_save", w);
   gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "x-axis Flip", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("x-axis Flip"), "",
                                new_pixmap (window, "brush_flipx.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_BRUSH_FLIPX));
   g_object_set_data (G_OBJECT (window), "tb_brush_flipx", w);
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "x-axis Rotate", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("x-axis Rotate"), "",
                                new_pixmap (window, "brush_rotatex.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_BRUSH_ROTATEX));
   g_object_set_data (G_OBJECT (window), "tb_brush_rotatex", w);
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "y-axis Flip", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("y-axis Flip"), "",
                                new_pixmap (window, "brush_flipy.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_BRUSH_FLIPY));
   g_object_set_data (G_OBJECT (window), "tb_brush_flipy", w);
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "y-axis Rotate", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("y-axis Rotate"), "",
                                new_pixmap (window, "brush_rotatey.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_BRUSH_ROTATEY));
   g_object_set_data (G_OBJECT (window), "tb_brush_rotatey", w);
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "z-axis Flip", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("z-axis Flip"), "",
                                new_pixmap (window, "brush_flipz.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_BRUSH_FLIPZ));
   g_object_set_data (G_OBJECT (window), "tb_brush_flipz", w);
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "z-axis Rotate", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("z-axis Rotate"), "",
                                new_pixmap (window, "brush_rotatez.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_BRUSH_ROTATEZ));
   g_object_set_data (G_OBJECT (window), "tb_brush_rotatez", w);
@@ -1702,45 +1699,45 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
 
   if (g_PrefsDlg.m_bWideToolbar)
   {
-    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Complete Tall", "",
+    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Complete Tall"), "",
                                  new_pixmap (window, "selection_selectcompletetall.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                  GINT_TO_POINTER (ID_SELECTION_SELECTCOMPLETETALL));
     g_object_set_data (G_OBJECT (window), "tb_selection_selectcompletetall", w);
-    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Select Touching", "",
+    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Select Touching"), "",
                                  new_pixmap (window, "selection_selecttouching.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                  GINT_TO_POINTER (ID_SELECTION_SELECTTOUCHING));
     g_object_set_data (G_OBJECT (window), "tb_selection_selecttouching", w);
-    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Select Partial Tall", "",
+    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Select Partial Tall"), "",
                                  new_pixmap (window, "selection_selectpartialtall.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                  GINT_TO_POINTER (ID_SELECTION_SELECTPARTIALTALL));
     g_object_set_data (G_OBJECT (window), "tb_selection_selectpartialtall", w);
-    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Select Inside", "",
+    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Select Inside"), "",
                                  new_pixmap (window, "selection_selectinside.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                  GINT_TO_POINTER (ID_SELECTION_SELECTINSIDE));
     g_object_set_data (G_OBJECT (window), "tb_selection_selectinside", w);
   } else
   {
-    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Selection", "",
+    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Selection"), "",
                                  new_pixmap (window, "popup_selection.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                  GINT_TO_POINTER (ID_POPUP_SELECTION));
     g_object_set_data (G_OBJECT (window), "tb_popup_selection", w);
   }
   gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
 
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "CSG Subtract", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("CSG Subtract"), "",
                                new_pixmap (window, "selection_csgsubtract.bmp"),
                                GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_SELECTION_CSGSUBTRACT));
   g_object_set_data (G_OBJECT (window), "tb_selection_csgsubtract", w);
 
   if (g_PrefsDlg.m_bWideToolbar)
   {
-    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "CSG Merge", "",
+    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("CSG Merge"), "",
                                  new_pixmap (window, "selection_csgmerge.bmp"),
                                  GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_SELECTION_CSGMERGE));
     g_object_set_data (G_OBJECT (window), "tb_selection_csgmerge", w);
   }
 
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Hollow", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Hollow"), "",
                                new_pixmap (window, "selection_makehollow.bmp"),
                                GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_SELECTION_MAKEHOLLOW));
   g_object_set_data (G_OBJECT (window), "tb_selection_makehollow", w);
@@ -1748,14 +1745,14 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
   if (g_PrefsDlg.m_bWideToolbar)
   {
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                                    "", "Clipper", "", new_pixmap (window, "view_clipper.bmp"),
+                                    "", _("Clipper"), "", new_pixmap (window, "view_clipper.bmp"),
                                     GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_VIEW_CLIPPER));
     g_object_set_data (G_OBJECT (window), "tb_view_clipper", w);
   }
 
   gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
 
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Change views", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Change views"), "",
                                new_pixmap (window, "view_change.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_VIEW_CHANGE));
   g_object_set_data (G_OBJECT (window), "tb_view_change", w);
@@ -1765,7 +1762,7 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
     gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
   }
 
-  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Texture view mode", "",
+  w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Texture view mode"), "",
                                new_pixmap (window, "textures_popup.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                GINT_TO_POINTER (ID_TEXTURES_POPUP));
   g_object_set_data (G_OBJECT (window), "tb_textures_popup", w);
@@ -1773,7 +1770,7 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
   if (g_PrefsDlg.m_bWideToolbar)
   {
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                                    "", "Cubic clip the camera view", "",
+                                    "", _("Cubic clip the camera view"), "",
                                     new_pixmap (window, "view_cubicclipping.bmp"),
                                     GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_VIEW_CUBICCLIPPING));
     g_object_set_data (G_OBJECT (window), "tb_view_cubicclipping", w);
@@ -1784,7 +1781,7 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
   if (!g_PrefsDlg.m_bWideToolbar)
   {
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                               "", "Camera preview", "", new_pixmap (window, "view_cameratoggle.bmp"),
+                               "", _("Camera preview"), "", new_pixmap (window, "view_cameratoggle.bmp"),
                                GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_VIEW_CAMERATOGGLE));
     g_object_set_data (G_OBJECT (window), "tb_view_cameratoggle", w);
     w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Update Camera", "",
@@ -1792,42 +1789,42 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
                             GINT_TO_POINTER (ID_VIEW_CAMERAUPDATE));
     g_object_set_data (G_OBJECT (window), "tb_view_cameraupdate", w);
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                               "", "Cubic clip the camera view", "",
+                               "", _("Cubic clip the camera view"), "",
                                new_pixmap (window, "view_cubicclipping.bmp"),
                                GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_VIEW_CUBICCLIPPING));
     g_object_set_data (G_OBJECT (window), "tb_view_cubicclipping", w);
     gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                                   "", "Entity inspector", "", new_pixmap (window, "view_entity.bmp"),
+                                   "", _("Entity inspector"), "", new_pixmap (window, "view_entity.bmp"),
                                    GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_VIEW_ENTITY));
     g_object_set_data (G_OBJECT (window), "tb_view_entity", w);
     gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                                   "", "Clipper", "", new_pixmap (window, "view_clipper.bmp"),
+                                   "", _("Clipper"), "", new_pixmap (window, "view_clipper.bmp"),
                                    GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_VIEW_CLIPPER));
     g_object_set_data (G_OBJECT (window), "tb_view_clipper", w);
     gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
   }
 
   w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                             "", "Free Rotation", "", new_pixmap (window, "select_mouserotate.bmp"),
+                             "", _("Free Rotation"), "", new_pixmap (window, "select_mouserotate.bmp"),
                              GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_SELECT_MOUSEROTATE));
   g_object_set_data (G_OBJECT (window), "tb_select_mouserotate", w);
   gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
   w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                             "", "Free Scaling", "", new_pixmap (window, "select_mousescale.bmp"),
+                             "", _("Free Scaling"), "", new_pixmap (window, "select_mousescale.bmp"),
                              GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_SELECT_MOUSESCALE));
   g_object_set_data (G_OBJECT (window), "tb_select_mousescale", w);
   w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                                 "", "Scale X", "", new_pixmap (window, "scalelockx.bmp"),
+                                 "", _("Scale X"), "", new_pixmap (window, "scalelockx.bmp"),
                                  GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_SCALELOCKX));
   g_object_set_data (G_OBJECT (window), "tb_scalelockx", w);
   w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                                 "", "Scale Y", "", new_pixmap (window, "scalelocky.bmp"),
+                                 "", _("Scale Y"), "", new_pixmap (window, "scalelocky.bmp"),
                                  GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_SCALELOCKY));
   g_object_set_data (G_OBJECT (window), "tb_scalelocky", w);
   w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                                 "", "Scale Z", "", new_pixmap (window, "scalelockz.bmp"),
+                                 "", _("Scale Z"), "", new_pixmap (window, "scalelockz.bmp"),
                                  GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_SCALELOCKZ));
   g_object_set_data (G_OBJECT (window), "tb_scalelockz", w);
 
@@ -1835,7 +1832,7 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
   {
     gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                            "", "Don't select model brushes", "",
+                            "", _("Don't select model brushes"), "",
                              new_pixmap (window, "dontselectmodel.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                             GINT_TO_POINTER (ID_DONTSELECTMODEL));
     gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
@@ -1844,7 +1841,7 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
     if (!g_pGameDescription->mNoPatch)
     {
       w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                            "", "Don't select curved brushes", "",
+                            "", _("Don't select curved brushes"), "",
                              new_pixmap (window, "dontselectcurve.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                             GINT_TO_POINTER (ID_DONTSELECTCURVE));
       g_object_set_data (G_OBJECT (window), "tb_dontselectcurve", w);
@@ -1855,31 +1852,31 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
   if (g_PrefsDlg.m_bPatchToolbar)
   {
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                            "", "Show patch bounding box", "",
+                            "", _("Show patch bounding box"), "",
                             new_pixmap (window, "patch_showboundingbox.bmp"),
                             GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_PATCH_SHOWBOUNDINGBOX));
     g_object_set_data (G_OBJECT (window), "tb_patch_showboundingbox", w);
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                                   "", "Show patches as wireframes", "",
+                                   "", _("Show patches as wireframes"), "",
                                    new_pixmap (window, "patch_wireframe.bmp"),
                                    GTK_SIGNAL_FUNC (HandleCommand), GINT_TO_POINTER (ID_PATCH_WIREFRAME));
     g_object_set_data (G_OBJECT (window), "tb_patch_wireframe", w);
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                             "", "Patch Bend mode", "",
+                             "", _("Patch Bend mode"), "",
                             new_pixmap (window, "patch_bend.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                             GINT_TO_POINTER (ID_PATCH_BEND));
     g_object_set_data (G_OBJECT (window), "tb_patch_bend", w);
-    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Put caps on the current patch", "",
+    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Put caps on the current patch"), "",
                             new_pixmap (window, "curve_cap.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                             GINT_TO_POINTER (ID_CURVE_CAP));
     g_object_set_data (G_OBJECT (window), "tb_curve_cap", w);
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                                "", "Welds equal patch points during moves", "",
+                                "", _("Welds equal patch points during moves"), "",
                                 new_pixmap (window, "patch_weld.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                                 GINT_TO_POINTER (ID_PATCH_WELD));
     g_object_set_data (G_OBJECT (window), "tb_patch_weld", w);
     w = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL,
-                             "", "Selects drill down rows and columns", "",
+                             "", _("Selects drill down rows and columns"), "",
                             new_pixmap (window, "patch_drilldown.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                             GINT_TO_POINTER (ID_PATCH_DRILLDOWN));
     g_object_set_data (G_OBJECT (window), "tb_patch_drilldown", w);
@@ -1888,7 +1885,7 @@ void MainFrame::create_main_toolbar (GtkWidget *window, GtkWidget *vbox)
   if (g_PrefsDlg.m_bWideToolbar)
   {
     gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
-    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", "Show Entities as", "",
+    w = gtk_toolbar_append_item (GTK_TOOLBAR (toolbar), "", _("Show Entities as"), "",
                             new_pixmap (window, "show_entities.bmp"), GTK_SIGNAL_FUNC (HandleCommand),
                             GINT_TO_POINTER (ID_SHOW_ENTITIES));
     g_object_set_data (G_OBJECT (window), "tb_show_entities", w);
@@ -1953,7 +1950,7 @@ void MainFrame::create_main_statusbar (GtkWidget *window, GtkWidget *vbox)
   gtk_container_border_width (GTK_CONTAINER (hbox1), 0);
   gtk_widget_show (hbox1);
 
-  label = gtk_label_new (" Label ");
+  label = gtk_label_new (_(" Label "));
   gtk_widget_show (label);
   gtk_box_pack_start (GTK_BOX (hbox1), label, FALSE, TRUE, 0);
   gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_LEFT);
@@ -1967,7 +1964,7 @@ void MainFrame::create_main_statusbar (GtkWidget *window, GtkWidget *vbox)
     gtk_box_pack_start (GTK_BOX (hbox), frame, FALSE, TRUE, 0);
     gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
 
-    label = gtk_label_new (" Label ");
+    label = gtk_label_new (_(" Label "));
     gtk_widget_show (label);
     gtk_container_add (GTK_CONTAINER (frame), label);
     m_pStatusLabel[i] = label;
@@ -2060,7 +2057,7 @@ void console_populate_popup(GtkTextView* textview, GtkMenu* menu, gpointer user_
 {
   menu_separator(GTK_WIDGET(menu));
 
-  GtkWidget* item = gtk_menu_item_new_with_label ("Clear");
+  GtkWidget* item = gtk_menu_item_new_with_label (_("Clear"));
   gtk_signal_connect (GTK_OBJECT (item), "activate", GTK_SIGNAL_FUNC (Sys_ClearPrintf), NULL);
   gtk_widget_show (item);
   gtk_menu_append (GTK_MENU (menu), item);
@@ -2735,7 +2732,7 @@ void MainFrame::Create ()
 
     {
       GtkWidget* wnd = create_floating (this);
-      gtk_window_set_title (GTK_WINDOW (wnd), "XZ View");
+      gtk_window_set_title (GTK_WINDOW (wnd), _("XZ View"));
 
 #ifdef _WIN32
       if( g_PrefsDlg.m_bStartOnPrimMon ) {
@@ -2759,7 +2756,7 @@ void MainFrame::Create ()
 
     {
       GtkWidget* wnd = create_floating (this);
-      gtk_window_set_title (GTK_WINDOW (wnd), "YZ View");
+      gtk_window_set_title (GTK_WINDOW (wnd), _("YZ View"));
 
 #ifdef _WIN32
       if( g_PrefsDlg.m_bStartOnPrimMon ) {
@@ -2787,7 +2784,7 @@ void MainFrame::Create ()
       m_pTexWnd->m_pParent = g_pGroupDlg->m_pWidget;
 
       {
-        GtkWidget* w = gtk_label_new ("Textures");
+        GtkWidget* w = gtk_label_new (_("Textures"));
         gtk_widget_show (w);
         gtk_notebook_insert_page (GTK_NOTEBOOK (g_pGroupDlg->m_pNotebook), frame, w, 1);
       }
@@ -2852,7 +2849,7 @@ void MainFrame::Create ()
       GtkWidget* frame = create_framed_texwnd(m_pTexWnd);
 
       {
-        GtkWidget* w = gtk_label_new ("Textures");
+        GtkWidget* w = gtk_label_new (_("Textures"));
         gtk_widget_show (w);
         gtk_notebook_insert_page (GTK_NOTEBOOK (g_pGroupDlg->m_pNotebook), frame, w, 1);
       }
@@ -3690,9 +3687,9 @@ void MainFrame::CreateQEChildren()
       }
       else
       {
-        gtk_MessageBox (NULL, "Failed to load project file.\nPlease enter a valid project file.", "Load Project");
+        gtk_MessageBox (NULL, _("Failed to load project file.\nPlease enter a valid project file."), _("Load Project"));
 
-        filename = file_dialog (m_pWidget, TRUE, "Choose Project File", buf, "project");
+        filename = file_dialog (m_pWidget, TRUE, _("Choose Project File"), buf, "project");
         if (filename != NULL)
           r = filename;
         else
@@ -3830,7 +3827,7 @@ void MainFrame::SetButtonMenuStates()
   item  = GTK_WIDGET (g_object_get_data (G_OBJECT (m_pWidget), "menu_view_opengllighting"));
   gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (item), (g_PrefsDlg.m_bGLLighting) ? TRUE : FALSE);
   item  = GTK_WIDGET (g_object_get_data (G_OBJECT (m_pWidget), "menu_snaptogrid"));
-  gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (item), (!g_PrefsDlg.m_bNoClamp) ? TRUE : FALSE);
+  gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (item), (g_PrefsDlg.m_bSnap) ? TRUE : FALSE);
 
   item = GTK_WIDGET (g_object_get_data (G_OBJECT (m_pWidget), "tb_view_cubicclipping"));
   gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (item), (g_PrefsDlg.m_bCubicClipping) ? TRUE : FALSE);
@@ -4264,10 +4261,14 @@ void MainFrame::OnFileOpen()
   const char *str;
        char buf[NAME_MAX];
 
-  strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
-  strcat(buf, "maps/");
+       if (!g_pGameDescription->noMapsInHome) {
+               strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
+               strcat(buf, "maps/");
+       } else {
+               buf[0] = '\0';
+       }
 
-  str = file_dialog (m_pWidget, TRUE, "Open Map", buf, MAP_MAJOR);
+  str = file_dialog (m_pWidget, TRUE, _("Open Map"), buf, MAP_MAJOR, "maps/");
 
   if (str != NULL)
   {
@@ -4282,10 +4283,14 @@ void MainFrame::OnFileImportmap()
   const char *str;
        char buf[NAME_MAX];
 
-  strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
-  strcat(buf, "maps/");
+       if (!g_pGameDescription->noMapsInHome) {
+               strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
+               strcat(buf, "maps/");
+       } else {
+               buf[0] = '\0';
+       }
 
-  str = file_dialog (m_pWidget, TRUE, "Import Map", buf, MAP_MAJOR);
+  str = file_dialog (m_pWidget, TRUE, _("Import Map"), buf, MAP_MAJOR, "maps/");
 
   if (str != NULL)
   {
@@ -4306,10 +4311,14 @@ void MainFrame::OnFileSaveas()
   const char* str;
        char buf[NAME_MAX];
 
-  strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
-  strcat(buf, "maps/");
+       if (!g_pGameDescription->noMapsInHome) {
+               strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
+               strcat(buf, "maps/");
+       } else {
+               buf[0] = '\0';
+       }
 
-  str = file_dialog (g_pParentWnd->m_pWidget, FALSE, "Save Map", buf, MAP_MAJOR);
+  str = file_dialog (g_pParentWnd->m_pWidget, FALSE, _("Save Map"), buf, MAP_MAJOR, "maps/");
 
   if (str != NULL)
   {
@@ -4324,10 +4333,14 @@ void MainFrame::OnFileExportmap()
   const char* str;
        char buf[NAME_MAX];
 
-  strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
-  strcat(buf, "maps/");
+       if (!g_pGameDescription->noMapsInHome) {
+               strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
+               strcat(buf, "maps/");
+       } else {
+               buf[0] = '\0';
+       }
 
-  str = file_dialog (m_pWidget, FALSE, "Export Selection", buf, MAP_MAJOR);
+  str = file_dialog (m_pWidget, FALSE, _("Export Selection"), buf, MAP_MAJOR, "maps/");
 
   if (str != NULL)
   {
@@ -4340,10 +4353,14 @@ void MainFrame::OnFileSaveregion()
   const char* str;
        char buf[NAME_MAX];
 
-  strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
-  strcat(buf, "maps/");
+       if (!g_pGameDescription->noMapsInHome) {
+               strcpy(buf, g_qeglobals.m_strHomeMaps.GetBuffer());
+               strcat(buf, "maps/");
+       } else {
+               buf[0] = '\0';
+       }
 
-  str = file_dialog (g_pParentWnd->m_pWidget, FALSE, "Export Region", buf, MAP_MAJOR);
+  str = file_dialog (g_pParentWnd->m_pWidget, FALSE, _("Export Region"), buf, MAP_MAJOR, "maps/");
 
   if (str != NULL)
   {
@@ -4377,7 +4394,7 @@ void MainFrame::OnFileNewproject()
       CString strMsg;
       strMsg.Format("The directory name %s already exists\nContinue anyway ?\n", strNewBasePath.GetBuffer ());
       Sys_Printf(strMsg);
-      if (gtk_MessageBox(m_pWidget, strMsg, "Error", MB_YESNO) != IDYES)
+      if (gtk_MessageBox(m_pWidget, _(strMsg), _("Error"), MB_YESNO) != IDYES)
       {
         Sys_Printf("New Project cancelled, directory already exists for project\n");
         free (name);
@@ -4576,7 +4593,7 @@ void MainFrame::OnEditLoadprefab()
     AddSlash (CurPath);
   }
 
-  filename = file_dialog (m_pWidget, TRUE, "Import Prefab", CurPath.GetBuffer(), MAP_MAJOR);
+  filename = file_dialog (m_pWidget, TRUE, _("Import Prefab"), CurPath.GetBuffer(), MAP_MAJOR, "prefabs/");
 
   if (filename != NULL)
   {
@@ -4600,7 +4617,7 @@ void MainFrame::OnEditSaveprefab()
   }
   AddSlash (CurPath);
 
-  filename = file_dialog (m_pWidget, FALSE, "Export Prefab", CurPath.GetBuffer(), MAP_MAJOR);
+  filename = file_dialog (m_pWidget, FALSE, _("Export Prefab"), CurPath.GetBuffer(), MAP_MAJOR, "prefabs/");
   if (filename != NULL)
   {
     Map_SaveSelected(filename);
@@ -4614,7 +4631,7 @@ void MainFrame::OnPrefs()
   bool bPluginToolbar = g_PrefsDlg.m_bPluginToolbar;
   int nShader = g_PrefsDlg.m_nShader;
   int nTextureQuality = g_PrefsDlg.m_nTextureQuality;
-  int nLightRadiuses = g_PrefsDlg.m_nLightRadiuses;
+//  int nLightRadiuses = g_PrefsDlg.m_nLightRadiuses;
   g_PrefsDlg.LoadPrefs();
 
   if (g_PrefsDlg.DoModal() == IDOK)
@@ -4628,7 +4645,7 @@ void MainFrame::OnPrefs()
         (g_PrefsDlg.m_nLatchedTextureQuality != nTextureQuality)
         || (g_PrefsDlg.m_bLatchedFloatingZ != g_PrefsDlg.m_bFloatingZ)
         )
-      gtk_MessageBox(m_pWidget, "You must restart Radiant for the changes to take effect.");
+      gtk_MessageBox(m_pWidget, _("You must restart Radiant for the changes to take effect."));
 
     // if the view mode was switched to floating, set the Z window on by default
     // this was originally intended as a bug fix, but the fix is elsewhere .. anyway making sure we force Z on each time is good
@@ -4644,7 +4661,7 @@ void MainFrame::OnPrefs()
     GtkWidget *item = GTK_WIDGET (g_object_get_data (G_OBJECT (m_pWidget), "menu_snaptogrid"));
     g_bIgnoreCommands++;
     gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (item),
-                                    (!g_PrefsDlg.m_bNoClamp) ? TRUE : FALSE);
+                                    (g_PrefsDlg.m_bSnap) ? TRUE : FALSE);
     g_bIgnoreCommands--;
   }
 }
@@ -5593,7 +5610,6 @@ void MainFrame::OnSelectionMakeStructural()
 
 void MainFrame::OnBspCommand (unsigned int nID)
 {
-  // http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=503
   // make sure we don't attempt to region compile a map with the camera outside the region
   if (region_active)
   {
@@ -5673,12 +5689,12 @@ void MainFrame::OnGrid (unsigned int nID)
 
 void MainFrame::OnSnaptogrid()
 {
-  g_PrefsDlg.m_bNoClamp ^= 1;
+  g_PrefsDlg.m_bSnap ^= 1;
   g_PrefsDlg.SavePrefs ();
 
   GtkWidget *item = GTK_WIDGET (g_object_get_data (G_OBJECT (m_pWidget), "menu_snaptogrid"));
   g_bIgnoreCommands++;
-  gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (item), g_PrefsDlg.m_bNoClamp ? FALSE : TRUE);
+  gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (item), g_PrefsDlg.m_bSnap ? TRUE : FALSE);
   g_bIgnoreCommands--;
 }
 
@@ -5748,12 +5764,11 @@ void MainFrame::OnTexturesLoad()
        // FIXME
        // check if that works with fs_game (I suspect some more design is needed)
        // see how this is done in 1.2?
-       // http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=507
   strcpy (def_path, g_pGameDescription->mEnginePath.GetBuffer());
   strcat (def_path, g_pGameDescription->mBaseGame.GetBuffer());
   strcat (def_path, "/");
 
-  char *dir = dir_dialog (m_pWidget, "Load textures from path", def_path);
+  char *dir = dir_dialog (m_pWidget, _("Load textures from path"), def_path);
 
   if (dir != NULL)
   {
@@ -6171,7 +6186,7 @@ void MainFrame::OnMiscGamma()
   DoGamma();
   if (fSave != g_qeglobals.d_savedinfo.fGamma)
   {
-    gtk_MessageBox(m_pWidget, "You must restart Radiant for Gamma settings to take effect.");
+    gtk_MessageBox(m_pWidget, _("You must restart Radiant for Gamma settings to take effect."));
   }
 }
 void MainFrame::OnMiscFindbrush()
@@ -6191,7 +6206,7 @@ void MainFrame::OnMiscPreviousleakspot()
 
 void MainFrame::OnMiscPrintxy()
 {
-//  WXY_Print();
+  WXY_Print();
 }
 
 void MainFrame::OnMiscSelectentitycolor()
@@ -7062,7 +7077,24 @@ void MainFrame::OnPatchTab()
   }
 }
 
-void MainFrame::OnCameraForward(bool keydown)
+void MainFrame::OnSelectFuncGroup() 
+{
+       // check to see if the selected brush is part of a func group
+       // if it is, deselect everything and reselect the next brush 
+       // in the group
+       brush_t *b2, *b = selected_brushes.next;
+       entity_t * e;
+       if (b != &selected_brushes)
+       {
+               if (strcmpi(b->owner->eclass->name, "worldspawn") != 0)
+               {
+                       e = b->owner;
+                       Select_SelectGroup(e);
+               }
+       }
+}
+
+void MainFrame::OnCameraForward(bool keydown) 
 {
   if (g_PrefsDlg.m_bCamDiscrete && (m_pCamWnd && !m_pCamWnd->m_bFreeMove) )
   {