pingus-cvs
[Top][All Lists]
Advanced

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

[Pingus-CVS] r3988 - trunk/pingus/src


From: grumbel at BerliOS
Subject: [Pingus-CVS] r3988 - trunk/pingus/src
Date: Thu, 5 Mar 2009 04:05:06 +0100

Author: grumbel
Date: 2009-03-05 04:05:03 +0100 (Thu, 05 Mar 2009)
New Revision: 3988

Modified:
   trunk/pingus/src/config_manager.cpp
   trunk/pingus/src/config_manager.hpp
   trunk/pingus/src/gettext.cpp
   trunk/pingus/src/option_menu.cpp
   trunk/pingus/src/option_menu.hpp
   trunk/pingus/src/pingus_main.cpp
Log:
Added new version of tinygettext

Modified: trunk/pingus/src/config_manager.cpp
===================================================================
--- trunk/pingus/src/config_manager.cpp 2009-03-05 03:04:12 UTC (rev 3987)
+++ trunk/pingus/src/config_manager.cpp 2009-03-05 03:05:03 UTC (rev 3988)
@@ -29,7 +29,7 @@
 #include "lisp/lisp.hpp"
 #include "lisp/parser.hpp"
 
-extern TinyGetText::DictionaryManager dictionary_manager;
+extern tinygettext::DictionaryManager dictionary_manager;
 
 ConfigManager config_manager;
 
@@ -124,7 +124,7 @@
       else if (i->get_name() == "language")
         {
           i->read_string("value", string_value);
-          set_language(string_value);
+          set_language(tinygettext::Language::from_spec(string_value));
         }
       else if (i->get_name() == "swcursor")
         {
@@ -183,7 +183,7 @@
   writer.end_section();
 
   writer.begin_section("language");
-  writer.write_string("value", get_language());
+  writer.write_string("value", get_language().str());
   writer.end_section();
 
   writer.begin_section("swcursor");
@@ -333,22 +333,22 @@
 }
 
 void
-ConfigManager::set_language(const std::string& v)
+ConfigManager::set_language(const tinygettext::Language& v)
 {
   if (maintainer_mode)
     std::cout << "ConfigManager::set_language: '" << v << "'" << std::endl;
 
   if (v != get_language())
     {
-      dictionary_manager.set_current_dictionary(v);
+      dictionary_manager.set_language(v);
       on_language_change(v);
     }
 }
 
-std::string
+tinygettext::Language
 ConfigManager::get_language()
 {
-  return dictionary_manager.get_dictionary().get_language()->code;
+  return dictionary_manager.get_language();
 }
 
 void

Modified: trunk/pingus/src/config_manager.hpp
===================================================================
--- trunk/pingus/src/config_manager.hpp 2009-03-05 03:04:12 UTC (rev 3987)
+++ trunk/pingus/src/config_manager.hpp 2009-03-05 03:05:03 UTC (rev 3988)
@@ -20,6 +20,7 @@
 #include <string>
 #include <boost/signal.hpp>
 #include "math/size.hpp"
+#include "tinygettext/language.hpp"
 
 /** */
 class ConfigManager
@@ -67,9 +68,9 @@
   bool get_print_fps();
   boost::signal<void(bool)> on_print_fps_change;
 
-  void set_language(const std::string&);
-  std::string get_language();
-  boost::signal<void(const std::string&)> on_language_change;
+  void set_language(const tinygettext::Language&);
+  tinygettext::Language get_language();
+  boost::signal<void(const tinygettext::Language&)> on_language_change;
 
   void set_swcursor(bool);
   bool get_swcursor();

Modified: trunk/pingus/src/gettext.cpp
===================================================================
--- trunk/pingus/src/gettext.cpp        2009-03-05 03:04:12 UTC (rev 3987)
+++ trunk/pingus/src/gettext.cpp        2009-03-05 03:05:03 UTC (rev 3988)
@@ -18,14 +18,14 @@
 #include "tinygettext/dictionary.hpp"
 #include "gettext.h"
 
-TinyGetText::DictionaryManager dictionary_manager;
+tinygettext::DictionaryManager dictionary_manager;
 
 std::string _(const std::string& msg) {
   return dictionary_manager.get_dictionary().translate(msg);
 }
 
-std::string N_(const std::string& msg, const std::string& msg_pl, int num) {
-  return dictionary_manager.get_dictionary().translate(msg, msg_pl, num);
+std::string _(const std::string& msg, const std::string& msg_pl, int num) {
+  return dictionary_manager.get_dictionary().translate_plural(msg, msg_pl, 
num);
 }
 
 /* EOF */

Modified: trunk/pingus/src/option_menu.cpp
===================================================================
--- trunk/pingus/src/option_menu.cpp    2009-03-05 03:04:12 UTC (rev 3987)
+++ trunk/pingus/src/option_menu.cpp    2009-03-05 03:05:03 UTC (rev 3988)
@@ -34,11 +34,12 @@
 #include "gui/gui_manager.hpp"
 #include "sound/sound.hpp"
 #include "tinygettext/dictionary_manager.hpp"
+#include "tinygettext/language.hpp"
 #include "option_menu.hpp"
 
 #define C(x) connections.push_back(x)
 
-extern TinyGetText::DictionaryManager dictionary_manager;
+extern tinygettext::DictionaryManager dictionary_manager;
 
 class OptionMenuCloseButton
   : public GUI::SurfaceButton
@@ -118,35 +119,20 @@
 
   resolution_box->set_current_choice(current_choice);
 
-  std::string current_language = dictionary_manager.get_current_language();
+  tinygettext::Language current_language = dictionary_manager.get_language();
   language = current_language;
-  current_choice = -1;
   n = 0;
 
   ChoiceBox* language_box = new ChoiceBox(Rect());
-  std::set<std::string> lst = dictionary_manager.get_languages();
-  std::vector<std::string> languages;
-  for (std::set<std::string>::iterator i = lst.begin(); i != lst.end(); ++i)
-    {
-      TinyGetText::LanguageDef* lang = TinyGetText::get_language_def(*i);
-      if (lang)
-        {
-          languages.push_back(lang->name);
-          language_map[lang->name] = *i;
-        }
-    }
-  std::sort(languages.begin(), languages.end());
+  std::set<tinygettext::Language> languages = 
dictionary_manager.get_languages();
 
-  for (std::vector<std::string>::iterator i = languages.begin(); i != 
languages.end(); ++i, ++n)
+  for (std::set<tinygettext::Language>::iterator i = languages.begin(); i != 
languages.end(); ++i)
     {
-      language_box->add_choice(*i);
+      language_box->add_choice(i->str());
       if (current_language == *i)
-        current_choice = n;
+        language_box->set_current_choice(current_choice);
     }
 
-  if (current_choice != -1)
-    language_box->set_current_choice(current_choice);
-
   ChoiceBox* scroll_box = new ChoiceBox(Rect());
   scroll_box->add_choice("Drag&Drop");
   scroll_box->add_choice("Rubberband");
@@ -175,7 +161,7 @@
   
C(resolution_box->on_change.connect(boost::bind(&OptionMenu::on_resolution_change,
 this, _1)));
 
   add_item(_("Language:"),        language_box);
-//  add_item(_("Scroll Mode:"),     scroll_box);
+  //  add_item(_("Scroll Mode:"),     scroll_box);
   add_item(_("Resolution:"),      resolution_box);
   add_item(_("Fullscreen:"),      fullscreen_box);
   add_item(_("Master Volume:"),   master_volume_box);

Modified: trunk/pingus/src/option_menu.hpp
===================================================================
--- trunk/pingus/src/option_menu.hpp    2009-03-05 03:04:12 UTC (rev 3987)
+++ trunk/pingus/src/option_menu.hpp    2009-03-05 03:05:03 UTC (rev 3988)
@@ -25,6 +25,7 @@
 #include "components/label.hpp"
 #include "gui/rect_component.hpp"
 #include "gui/surface_button.hpp"
+#include "tinygettext/language.hpp"
 
 class CheckBox;
 class SliderBox;
@@ -67,7 +68,7 @@
   Connections connections;
 
   std::string language;
-  std::map<std::string, std::string> language_map;
+  std::map<std::string, tinygettext::Language> language_map;
 
 public:
   OptionMenu();

Modified: trunk/pingus/src/pingus_main.cpp
===================================================================
--- trunk/pingus/src/pingus_main.cpp    2009-03-05 03:04:12 UTC (rev 3987)
+++ trunk/pingus/src/pingus_main.cpp    2009-03-05 03:05:03 UTC (rev 3988)
@@ -54,6 +54,7 @@
 
 #include "gettext.h"
 #include "tinygettext/dictionary_manager.hpp"
+#include "tinygettext/log.hpp"
 #include "command_line.hpp"
 
 #include "screen/screen_manager.hpp"
@@ -86,7 +87,7 @@
 #pragma warning( disable : 4996 ) 
 #endif
 
-extern TinyGetText::DictionaryManager dictionary_manager;
+extern tinygettext::DictionaryManager dictionary_manager;
 
 void
 signal_handler(int signo)
@@ -168,9 +169,9 @@
     { // language listing only works after the data path has been set
       std::cout << "Available languages are:" << std::endl;
       std::cout << "========================" << std::endl;
-      std::set<std::string> lst = dictionary_manager.get_languages();
-      for (std::set<std::string>::iterator i = lst.begin(); i != lst.end(); 
++i)
-        std::cout << TinyGetText::get_language_def(*i)->name << " (" << *i << 
")" << std::endl;
+      std::set<tinygettext::Language> lst = dictionary_manager.get_languages();
+      for (std::set<tinygettext::Language>::iterator i = lst.begin(); i != 
lst.end(); ++i)
+        std::cout << i->get_name() << " (" << i->str() << ")" << std::endl;
 
       std::cout << "\nLanguages can be used via:\n\n    pingus --language 
de\n" << std::endl; 
 
@@ -196,7 +197,7 @@
 
   // Misc
   if (options.language.is_set())
-    dictionary_manager.set_current_dictionary(options.language.get());
+    
dictionary_manager.set_language(tinygettext::Language::from_name(options.language.get()));
 
   if (options.auto_scrolling.is_set())
     auto_scrolling = options.auto_scrolling.get();
@@ -600,9 +601,9 @@
 
   std::cout << "data path:               " << path_manager.get_base_path() << 
std::endl;
   std::cout << "language:                " 
-            << dictionary_manager.get_dictionary().get_language()->name 
+            << dictionary_manager.get_language().get_name()
             << " ("
-            << dictionary_manager.get_dictionary().get_language()->code 
+            << dictionary_manager.get_language().str() 
             << ")"
             << std::endl;
 
@@ -699,6 +700,8 @@
 int
 PingusMain::main(int argc, char** argv)
 {
+  tinygettext::Log::set_log_info_callback(0);
+
    // Register the segfault_handler
 #ifndef WIN32
   signal(SIGSEGV, signal_handler);





reply via email to

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