Code

Fix build failure
[inkscape.git] / src / dialogs / spellcheck.cpp
index a617aebf21150fe5a2212424b03d5a32cc8d81c3..22d440b5f9840ac289c6252eb8232b8a45273d5b 100644 (file)
@@ -3,6 +3,8 @@
  */
 /* Authors:
  *   bulia byak <bulia@users.sf.net>
+ *   Jon A. Cruz <jon@joncruz.org>
+ *   Abhishek Sharma
  *
  * Copyright (C) 2009 Authors
  *
@@ -37,6 +39,7 @@
 #include <xml/repr.h>
 #include "display/canvas-bpath.h"
 #include "display/curve.h"
+#include "document-undo.h"
 
 #ifdef HAVE_ASPELL
 #include <aspell.h>
@@ -200,10 +203,11 @@ all_text_items (SPObject *r, GSList *l, bool hidden, bool locked)
     if (SP_IS_DEFS(r))
         return l; // we're not interested in items in defs
 
-    if (!strcmp (SP_OBJECT_REPR (r)->name(), "svg:metadata"))
+    if (!strcmp(r->getRepr()->name(), "svg:metadata")) {
         return l; // we're not interested in metadata
+    }
 
-    for (SPObject *child = sp_object_first_child(r); child; child = SP_OBJECT_NEXT (child)) {
+    for (SPObject *child = r->firstChild(); child; child = child->next) {
         if (SP_IS_ITEM (child) && !SP_OBJECT_IS_CLONED (child) && !_desktop->isLayer(SP_ITEM(child))) {
                 if ((hidden || !_desktop->itemIsHidden(SP_ITEM(child))) && (locked || !SP_ITEM(child)->isLocked())) {
                     if (SP_IS_TEXT(child) || SP_IS_FLOWTEXT(child))
@@ -236,8 +240,8 @@ gint compare_text_bboxes (gconstpointer a, gconstpointer b)
     SPItem *i1 = SP_ITEM(a);
     SPItem *i2 = SP_ITEM(b);
 
-    Geom::OptRect bbox1 = i1->getBounds(sp_item_i2d_affine(i1));
-    Geom::OptRect bbox2 = i2->getBounds(sp_item_i2d_affine(i2));
+    Geom::OptRect bbox1 = i1->getBounds(i1->i2d_affine());
+    Geom::OptRect bbox2 = i2->getBounds(i2->i2d_affine());
     if (!bbox1 || !bbox2) {
         return 0;
     }
@@ -392,7 +396,7 @@ spellcheck_init(SPDesktop *desktop)
     _speller3 = to_aspell_speller(ret);
     }
 
-    _root = SP_DOCUMENT_ROOT (sp_desktop_document (desktop));
+    _root = sp_desktop_document(desktop)->getRoot();
 
     // empty the list of objects we've checked
     g_slist_free (_seen_objects);
@@ -570,7 +574,7 @@ spellcheck_next_word()
 
         // draw rect
         std::vector<Geom::Point> points =
-            _layout->createSelectionShape(_begin_w, _end_w, sp_item_i2d_affine(_text));
+            _layout->createSelectionShape(_begin_w, _end_w, _text->i2d_affine());
         Geom::Point tl, br;
         tl = br = points.front();
         for (unsigned i = 0 ; i < points.size() ; i ++) {
@@ -777,8 +781,8 @@ sp_spellcheck_accept (GObject *, GObject *dlg)
             // find the end of the word anew
             _end_w = _begin_w;
             _end_w.nextEndOfWord();
-            sp_document_done (sp_desktop_document(_desktop), SP_VERB_CONTEXT_TEXT,
-                              _("Fix spelling"));
+            Inkscape::DocumentUndo::done(sp_desktop_document(_desktop), SP_VERB_CONTEXT_TEXT,
+                                 _("Fix spelling"));
         }
     }
 
@@ -812,19 +816,18 @@ void
 sp_spellcheck_add (GObject */*obj*/, GObject */*dlg*/)
 {
     _adds++;
-    GtkMenu *m =
-        GTK_MENU(gtk_object_get_data (GTK_OBJECT (dlg), "addto_langs"));
-    GtkWidget *mi = gtk_menu_get_active (m);
-    unsigned int num = GPOINTER_TO_UINT(gtk_object_get_data (GTK_OBJECT (mi), "number"));
+    GtkComboBox *cbox =
+        GTK_COMBO_BOX(gtk_object_get_data (GTK_OBJECT (dlg), "addto_langs"));
+    gint num = gtk_combo_box_get_active(cbox);
     switch (num) {
-        case 1:
+        case 0:
             aspell_speller_add_to_personal(_speller, _word.c_str(), -1);
             break;
-        case 2:
+        case 1:
             if (_speller2)
                 aspell_speller_add_to_personal(_speller2, _word.c_str(), -1);
             break;
-        case 3:
+        case 2:
             if (_speller3)
                 aspell_speller_add_to_personal(_speller3, _word.c_str(), -1);
             break;
@@ -978,27 +981,18 @@ sp_spellcheck_dialog (void)
             GtkWidget *hb = gtk_hbox_new (FALSE, 0);
             sp_spellcheck_new_button (dlg, hb, _("A_dd to dictionary:"), tt, _("Add this word to the chosen dictionary"),
                                       sp_spellcheck_add, "b_add");
-            GtkWidget *cbox = gtk_menu_new ();
-            {
-                GtkWidget *mi = gtk_menu_item_new_with_label(_lang);
-                g_object_set_data (G_OBJECT (mi), "number", GUINT_TO_POINTER (1));
-                gtk_menu_append (GTK_MENU (cbox), mi);
-            }
+            GtkComboBox *cbox = GTK_COMBO_BOX (gtk_combo_box_new_text());
+            gtk_combo_box_append_text (cbox,  _lang);
             if (_lang2) {
-                GtkWidget *mi = gtk_menu_item_new_with_label(_lang2);
-                g_object_set_data (G_OBJECT (mi), "number", GUINT_TO_POINTER (2));
-                gtk_menu_append (GTK_MENU (cbox), mi);
+                gtk_combo_box_append_text (cbox, _lang2);
             }
             if (_lang3) {
-                GtkWidget *mi = gtk_menu_item_new_with_label(_lang3);
-                g_object_set_data (G_OBJECT (mi), "number", GUINT_TO_POINTER (3));
-                gtk_menu_append (GTK_MENU (cbox), mi);
+                gtk_combo_box_append_text (cbox, _lang3);
             }
-            gtk_widget_show_all (cbox);
-            GtkWidget *mnu = gtk_option_menu_new();
-            gtk_option_menu_set_menu(GTK_OPTION_MENU(mnu), cbox);
+            gtk_combo_box_set_active (cbox, 0);
+            gtk_widget_show_all (GTK_WIDGET(cbox));
             g_object_set_data (G_OBJECT (dlg), "addto_langs", cbox);
-            gtk_box_pack_start (GTK_BOX (hb), mnu, TRUE, TRUE, 0);
+            gtk_box_pack_start (GTK_BOX (hb), GTK_WIDGET(cbox), TRUE, TRUE, 0);
             gtk_box_pack_start (GTK_BOX (vb), hb, FALSE, FALSE, 0);
         }
 
@@ -1041,4 +1035,4 @@ void sp_spellcheck_dialog (void) {}
   fill-column:99
   End:
 */
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :