Added "Download dictionaries" menu item.
authorRoman Moravcik <roman.moravcik@gmail.com>
Thu, 4 Mar 2010 17:53:14 +0000 (18:53 +0100)
committerRoman Moravcik <roman.moravcik@gmail.com>
Thu, 4 Mar 2010 17:53:14 +0000 (18:53 +0100)
configure.ac
po/sk.po
src/mstardict.cpp
src/mstardict.hpp

index 919cf0a..7b31933 100644 (file)
@@ -34,7 +34,7 @@ AC_FUNC_MMAP
 
 AC_CHECK_LIB(z,zlibVersion,LIBS="$LIBS -lz",[AC_MSG_ERROR([zlib not found])])
 
-PKG_CHECK_MODULES(MSTARDICT, glib-2.0 >= 2.6.1 hildon-1 gconf-2.0 >= 2.6.2)
+PKG_CHECK_MODULES(MSTARDICT, glib-2.0 >= 2.6.1 hildon-1 gconf-2.0 >= 2.6.2 libosso)
 
 MSTARDICT_CFLAGS="-Wall $MSTARDICT_CFLAGS"
 
index 313215d..9c167cd 100644 (file)
--- a/po/sk.po
+++ b/po/sk.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: mstardict\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-02-15 11:23+0100\n"
-"PO-Revision-Date: 2010-02-15 13:26+0100\n"
+"POT-Creation-Date: 2010-03-04 18:23+0100\n"
+"PO-Revision-Date: 2010-03-04 18:24+0100\n"
 "Last-Translator: Roman Moravčík <roman.moravcik@gmail.com>\n"
 "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../src/dictmngr.cpp:88 ../src/mstardict.cpp:451
+#: ../src/dictmngr.cpp:98 ../src/mstardict.cpp:459
 msgid "Dictionaries"
 msgstr "Slovníky"
 
@@ -51,32 +51,36 @@ msgstr "<span foreground=\\\"red\\\">[Chýbajúci obrázok]</span>"
 msgid "Unknown data type"
 msgstr "Neznámy dátový typ"
 
-#: ../src/mstardict.cpp:297
+#: ../src/mstardict.cpp:305
 msgid "Searching"
 msgstr "Hľadám"
 
-#: ../src/mstardict.cpp:299
+#: ../src/mstardict.cpp:307
 msgid "Cancel"
 msgstr "Zrušiť"
 
-#: ../src/mstardict.cpp:333
+#: ../src/mstardict.cpp:341
 msgid "MStardict"
 msgstr "Slovník"
 
 #. no_search_result label
-#: ../src/mstardict.cpp:350 ../src/mstardict.cpp:540
+#: ../src/mstardict.cpp:358 ../src/mstardict.cpp:554
 msgid "No search result"
 msgstr "Žiadne výsledky hľadania"
 
-#: ../src/mstardict.cpp:457 ../src/prefsdlg.cpp:66
+#: ../src/mstardict.cpp:465
+msgid "Download dictionaries"
+msgstr "Stiahnuť slovníky"
+
+#: ../src/mstardict.cpp:471 ../src/prefsdlg.cpp:66
 msgid "Preferences"
 msgstr "Predvoľby"
 
-#: ../src/mstardict.cpp:463
+#: ../src/mstardict.cpp:477
 msgid "Quit"
 msgstr "Zavrieť"
 
-#: ../src/mstardict.cpp:553
+#: ../src/mstardict.cpp:567
 msgid "No loaded dictionary"
 msgstr "Žiadne načítané slovníky"
 
@@ -293,7 +297,7 @@ msgid "Vietnam"
 msgstr ""
 
 #: ../src/tts.cpp:111
-msgid "Mandarin"
+msgid "Chinese (Mandarin)"
 msgstr ""
 
 #: ../src/tts.cpp:112
index 123a87c..452a91a 100644 (file)
@@ -40,6 +40,8 @@
 #include <gtk/gtk.h>
 #include <hildon/hildon.h>
 
+#include <libosso.h>
+
 #include <getopt.h>
 #include <string>
 #include <vector>
@@ -69,6 +71,8 @@ MStarDict::MStarDict()
     results_view = NULL;
     results_view_scroll = NULL;
 
+    osso_context = osso_initialize("org.maemo.mstardict", VERSION, TRUE, NULL);
+
     /* create list of ressults */
     results_list = gtk_list_store_new(N_COLUMNS,
                                      G_TYPE_STRING);   /* DEF_COLUMN */
@@ -124,6 +128,9 @@ MStarDict::~MStarDict()
 
     /* deinitialize configuration */
     delete oConf;
+
+    /* deinitialize osso context */
+    osso_deinitialize(osso_context);
 }
 
 gboolean
@@ -250,6 +257,21 @@ MStarDict::onDictionariesMenuItemClicked(GtkButton *button,
 }
 
 gboolean
+MStarDict::onDownloadDictionariesMenuItemClicked(GtkButton *button,
+                                                MStarDict *mStarDict)
+{
+    osso_rpc_run(mStarDict->osso_context,
+                "com.nokia.osso_browser",
+                "/com/nokia/osso_browser",
+                "com.nokia.osso_browser",
+                "open_new_window",
+                NULL,
+                DBUS_TYPE_STRING, "http://stardict.sourceforge.net/Dictionaries.php",
+                DBUS_TYPE_INVALID);
+    return true;
+}
+
+gboolean
 MStarDict::onPreferencesMenuItemClicked(GtkButton *button,
                                         MStarDict *mStarDict)
 {
@@ -452,6 +474,12 @@ MStarDict::CreateMainMenu()
     hildon_app_menu_append(menu, GTK_BUTTON(item));
     g_signal_connect(item, "clicked", G_CALLBACK(onDictionariesMenuItemClicked), this);
 
+    /* download dictionaries menu item */
+    item = hildon_gtk_button_new(HILDON_SIZE_AUTO);
+    gtk_button_set_label(GTK_BUTTON(item), _("Download dictionaries"));
+    hildon_app_menu_append(menu, GTK_BUTTON(item));
+    g_signal_connect(item, "clicked", G_CALLBACK(onDownloadDictionariesMenuItemClicked), this);
+
     /* preferences menu item */
     item = hildon_gtk_button_new(HILDON_SIZE_AUTO);
     gtk_button_set_label(GTK_BUTTON(item), _("Preferences"));
index 00a06c2..4a6b2a6 100644 (file)
@@ -25,6 +25,7 @@
 
 #include <gtk/gtk.h>
 #include <hildon/hildon.h>
+#include <libosso.h>
 
 #include "lib/pluginmanager.h"
 
@@ -40,6 +41,8 @@ class Tts;
 
 class MStarDict {
   private:
+    osso_context_t *osso_context;
+
     GtkWidget *window;
     GtkWidget *label_widget;
     GtkWidget *results_widget;
@@ -57,6 +60,8 @@ class MStarDict {
                                         MStarDict *mStarDict);
     static gboolean onDictionariesMenuItemClicked(GtkButton *button,
                                                  MStarDict *mStarDict);
+    static gboolean onDownloadDictionariesMenuItemClicked(GtkButton *button,
+                                                         MStarDict *mStarDict);
     static gboolean onPreferencesMenuItemClicked(GtkButton *button,
                                                 MStarDict *mStarDict);
     static gboolean onQuitMenuItemClicked(GtkButton *button,