On 16/12/11 22:15, Kris De Gussem wrote:
BTW: today I made my first commit that is going deep into the source code. I just committed the refactoring of sp-attribute-widget.cpp from gtk to gtkmm (see my mail in "Next release check-in..."). Hoping all went fine. :-)
Inkscape 0.48+devel r10775 on Mac OS X 10.5.8 (i386), GCC 4.2.1
1) The properties dialog cannot be kept closed anymore: Once the object properties dialog has been opened and closed in the current session, it gets reopened together with any other dialog that is opened (be it a dockable one or another floating-only dialog), also in new document windows opened from within the same Inkscape instance (the dialog was been shared/reused by all document windows already before r10775).
2) Dockable vs undockable dialogs Would it be possible to convert the object properties dialog to a dockable dialog in the course of this C++ification? See also https://bugs.launchpad.net/inkscape/+bug/592323
3) Compiler warning: header include On OS X 10.5.8 Leopard with Apple's GCC 4.2.1 (which uses the header files from the system default compiler GCC 4.0.1), I get a warning about "at least one deprecated or antiquated header" with regard to '#include <vector.h>' in 'src/widgets/widgets/sp-attribute-widget.h':
CXX dialogs/item-properties.o In file included from /usr/include/c++/4.0.0/backward/vector.h:59, from dialogs/../widgets/sp-attribute-widget.h:23, from dialogs/item-properties.cpp:35: /usr/include/c++/4.0.0/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To disable this warning use -Wno-deprecated.
4) Compiler warning: signed vs unsigned (possibly due to the outdated GCC version on my legacy system?)
CXX widgets/sp-attribute-widget.o widgets/sp-attribute-widget.cpp: In member function ‘void SPAttributeTable::set_object(SPObject*, std::vector<Glib::ustring, std::allocatorGlib::ustring >&, std::vector<Glib::ustring, std::allocatorGlib::ustring >&, GtkWidget*)’: widgets/sp-attribute-widget.cpp:280: warning: comparison between signed and unsigned integer expressions widgets/sp-attribute-widget.cpp: In member function ‘void SPAttributeTable::set_repr(Inkscape::XML::Node*, std::vector<Glib::ustring, std::allocatorGlib::ustring >&, std::vector<Glib::ustring, std::allocatorGlib::ustring >&, GtkWidget*)’: widgets/sp-attribute-widget.cpp:338: warning: comparison between signed and unsigned integer expressions widgets/sp-attribute-widget.cpp: In function ‘void sp_attribute_table_object_modified(SPObject*, guint, SPAttributeTable*)’: widgets/sp-attribute-widget.cpp:384: warning: comparison between signed and unsigned integer expressions widgets/sp-attribute-widget.cpp: In function ‘void sp_attribute_table_entry_changed(Gtk::Editable*, SPAttributeTable*)’: widgets/sp-attribute-widget.cpp:411: warning: comparison between signed and unsigned integer expressions
Build Configuration:
Compiler: g++-4.2 CPPFLAGS: -Werror=format-security -Wall -Wformat -Wformat-security -W -D_FORTIFY_SOURCE=2 -I/Volumes/green/mp-inkscape/with-a-long-long-long-directory-name/include CXXFLAGS: -Wpointer-arith -Wcast-align -Wsign-compare -Woverloaded-virtual -Wswitch -Wno-unused-parameter -O3 CFLAGS: -Wno-pointer-sign -O3 LDFLAGS: -L/Volumes/green/mp-inkscape/with-a-long-long-long-directory-name/lib
~suv