sam aoû 6 17:20:39 CEST 2005 Dodji Seketeli * src/mlview-plugin-descriptor.[cc|h], src/mlview-plugin-manager.[cc|h], src/mlview-plugin.[cc|h], src/mlview-plugin-window.h, tests/firstplugin.cc, src/tests/firstplugin.xml, ui/mlview-plugins-window.glade: these files got pulled from a patch from Nicolas Centa to add support for plugins in MlView. * src/mlview-safe-ptr.h src/mlview-safe-ptr-utils.h src/mlview-view-manager.h menu-descriptions/main-menu-bar.xml tests/Makefile.am src/Makefile.am src/main.cc src/mlview-app-context.h src/mlview-app.cc src/mlview-utils.h ui/Makefile.am, src/mlview-prefs-storage-gconf-impl.cc: these files got modified by the very same patch by Nicolas Centa. I modified them a bit. Here is a small log of what I did: don't expose PluginManager in AppContext.h. Instead, make it be a private member of mlview::App. Control *when* the plugins are going to get loaded, that is, call PluginManager::load_all_plugins_from_default_plugins_dir(), at the end of App::App(), when the MlView application is correctly initialized. in mlview-plugin-descriptor.h and mlview-plugin.h Make the classes respect the canonical form of mlview classes, i.e only one member, declaration of assignment operator, copy constructor, etc, don't expose any member data, only accesors. in mlview-plugin-descriptor.cc: replace if (!condition) goto error ; by THROW_IF_FAIL (condition) ; replace char* by safer UString. in mlview-plugin-manager.cc and other files don't do catch (...) only and don't do it without tracing. removed mlview-safe-ptr-object-utils.h, move its content into mlview-safe-ptr-utils.h jeu aoû 4 22:23:41 CEST 2005 Philippe Mechaï * configure.in: Added gnome-vfs-2 dependency, it was formerly included by eel. Re-Added libgnomeui2, formerly included by eel and need by EggRecentItems This fixes compilation errors in previous patch jeu aoû 4 21:25:42 CEST 2005 Philippe Mechaï * configure.in: Removed dependency on EEL * src/Makefile.am: Added mlview-prefs-category-sizes.(cc|h) to the sources * src/mlview-app-context.cc * src/mlview-app-context.h: Completely removed the old AppSettings class * src/mlview-app.cc * src/mlview-editor.cc * src/mlview-icon-tree.cc * src/mlview-node-type-picker.cc * src/mlview-parsing-utils.cc * src/mlview-tree-editor.cc * src/mlview-tree-view.cc * src/mlview-xml-document.cc * src/mlview-view-factory.cc * src/mlview-view-manager.cc: Completely removed references to the old AppSettings class. Everything has been switched to the new preferences system. * src/mlview-prefs.cc: Added reference to new preferences category (ie Sizes) * src/mlview-prefs-category-sizes.(cc|h): First revision of a new category that handle various ui sizes in order to keep state among sessions. This category doesn't have an associated frame because these preferences are for internal use only * src/mlview-prefs-category-treeview.(cc|h): Added a public constant CATEGORY_ID (removed hardcoded strings) * src/mlview-prefs-category-frame-treeview.cc: Removed a dummy paste * src/mlview-prefs-category-general.(cc|h): Added a public constant CATEGORY_ID (removed hardcoded strings) 2005-08-03 22:30:18 CEST Philippe Mechaï * src/mlview-prefs-category-treeview.(cc|h): Added methods to get colours from an mlview::TreeEditorsNodeColou const Glib::ustring get_color_for_type (mlview::TreeEditorsNodeColour) const Glib::ustring get_color_for_type_default (mlview::TreeEditorsNodeColour) * src/mlview-tree-editor.cc * src/mlview-icon-tree.cc Added instant-apply color change in the treeview. It seems not to work for the Document & the DTD nodes. Might not be strange as i also had problem with them for the selection color patch. 2005-08-03 19:55:19 CEST Philippe Mechai * schemas/mlview.schemas: Added new configuration key for treeview attributes values colour * src/mlview-prefs-category-frame-treeview.cc: Added the new preference colour to the list * src/mlview-tree-editor.cc: Added code to handle the new preference colour lun aoû 1 21:51:52 CEST 2005 Dodji Seketeli * src/mlview-source-view.cc: don't put tooltip and action names in GtkAction entries that refer to STOCK items (thanks to Philippe Mechaï for spoting that). Add a GTK_STOCK_DELETE menuitem to the contextual menu. lun aoû 1 19:26:56 CEST 2005 Dodji Seketeli * test/testsafeptr.cc: added some basic (yet to be complete) tests for the safeptr class. 2005-07-31 23:03:46 CEST Philippe Mechai * configure.in: Added depency on libvte used for the execute command dialog. * ui/mlview-exec-command.glade: First revision of the new Execute Command dialog ui * menu-descriptions/main-menu-bar.xml: Added menu entry for Execute command * src/mlview-app.cc: Added callback for the Execute command menu action * src/mlview-exec-command-dialog.(cc|h): First revision of the new Execute Command dialog. This dialog let the user enter a command to run against the current document. sam jui 30 17:18:05 CEST 2005: Dodji Seketeli * src/mlview-source-view.(cc|h), src/mlview-prefs-category-sourceview.(cc|h), schemas/mlview.schemas, src/mlview-prefs-category-frame-sourceview.(cc|h): applied a patch from Philippe Mechaï to add the preferences related to the source view to the preferences management system. sam jui 30 13:42:36 CEST 2005 Dodji Seketeli * src/mlview-source-view.(cc|h): added cut/copy/paste to the contexutal mlview::Clipboard class to put/get text/nodes to/from the clipboard. sam jui 30 14:40:53 CEST 2005 Dodji Seketeli * src/mlview-view-manager.h: don't include mlview-safe-opbject-utils.h anymore. Include mlview-safe-ptr-utils.h instead. This should fix #311433. 2005-07-29 23:40:28 CEST Philippe Mechai * src/mlview-source-view.cc: Added complete preferences support 2005-07-29 22:53:34 CEST Philippe Mechai * src/mlview-tree-editor.cc: Fixed a little regression with the search bar position. 2005-07-29 20:15:22 CEST Philippe Mechai * ui/mlview-prefs-window.glade: Created the SourceView preferences category ui * schemas/mlview.schemas: Added configuration keys for the SourceView * src/mlview-prefs-category-sourceview.(cc|h): First revision of the SourceView preferences category. * src/mlview-prefs-category-frame-sourceview.(cc|h): First revision of the SourceView preferences category frame. * src/mlview-prefs.(cc|h): Added reference to the new preferences category * src/mlview-prefs-window.cc: Added code to use the new preferences category frame 2005-07-26 20:57:45 CEST Philippe Mechai * src/mlview-ui-utils.(cc.h): Moved the color conversion from Gdk::Color to an ustring hex representation to two new ui oriented utility functions. * src/mlview-prefs-category-treeview.cc: Removed color conversion code * src/mlview-icon-tree.cc * src/mlview-tree-editor.cc: Selection color patch should (hopefully) be really finished 2005-07-26 19:34:23 CEST Philippe Mechai * src/mlview-icon-tree.cc * src/mlview-tree-editor.cc: Added instant-apply font change to the treeview 2005-07-26 01:15:17 CEST Philippe Mechai * src/mlview-icon-tree.cc * src/mlview-tree-editor.cc: Added code to handle color change when a node is selected. Basically added a boolean parameter to all the _to_string_tag functions and used the current theme selection foreground color when set to true, the colour stored in the preferences otherwise. Fixed bug #155081 2005-07-26 00:22:12 CEST Philippe Mechai * src/mlview-prefs-category-*.h: Added code to handle default value. For each preference accessor the same method suffixed with _default has been added. A 'Reset to default' has been added to all category frames dim jui 24 12:16:59 CEST 2005 Dodji Seketeli * src/mlview-prefs-storage-manager.h, src/mlview-prefs-storage-gconf-impl.h: Don't use 'throw' but rather THROW() . The side effect of this is that we all use the same unique mlview::Exception class throughtout the application (for the time being). See docs/coding-standards.txt for more explanations. Also, use SafePtr to avoid leaks elegantly. * src/mlview-safe-ptr-utils.h: when you want to use SafePtr, you now have to include this file only. dim jui 24 07:29:00 CEST 2005 Dodji Seketeli * po/POTFILES.in: added some missing files in here. Sat Jul 23 20:36:54 CEST 2005 Nicolas Centa * src/mlview-exception.cc, src/mlview-exception.h: added a protected void constructor to mlview::Exception to allow easy inheritance. src/mlview-prefs-storage-manager.h, src/mlview-prefs-storage-gconf-impl.h, src/mlview-prefs-storage-gconf-impl.cc: added error management to preferences storages. sam jui 23 12:45:09 CEST 2005 Dodji Seketeli * Makefile.am: correctly reference docs/coding-standards.txt * po/POTFILES.in: don't reference ui/mlview-preferences.glade. * src/mlview-preferences.cc, src/mlview-preferences.h: remove these useless files. ven jui 22 16:20:22 CEST 2005 Dodji Seketeli * src/mlview-view-manager.h, src/mlivew-gvc-iface.h, mlview-old-gvc.h, mlview-validator.h, mlview-validation-output.h: applied patch mlview--main-happypeng--0.9--patch-1 from Nicolas centa to fix gcc 4 compilation errors. ven jui 22 15:22:59 CEST 2005 Dodji Seketeli * src/mlview-app.cc: fixed a regression introduced by my last patch: make the edit menu be selectable by default. * src/mlview-old-gvc.cc: (OldGVC::remove_view): don't notify the view that is gona be swapped out. Notifying views is the job of the ViewManager. * src/mlview-prefs-category-treeview.cc: (MlViewPrefsCategoryTreeView::set_color_for_type): use correct format for g_snprintf(). * src/mlview-safe-gobject-utils.h: added GtkWidgetRef/Unref, GtkSourceViewRef/Unref. * src/mlview-source-view.cc: refcount the private GtkSourceView delegate. Delegates should always be alive when we need them. * src/mlview-view-manager.cc: (ViewManager::on_views_swapped): don't notify a views of its swapping in when we are closing it. mer jui 20 10:46:02 CEST 2005 * src/mlview-old-gvc.cc: cleaned mlview::OldGVC::on_switch_page(), moved the generic stuffs into mlview::ViewManager. Now, when implementing a GVCIface, you just need to emit GVCIface::signal_views_swapped(). signal when views swap. Also, clean the mlview::OldGVC to make it lean an simple. The app seems not to crash too much anymore. 2005-07-19 23:40:59 CEST Philippe Mechai * src/mlview-prefs-category-treeview.cc: Fixed color conversion code. Took code directly from GTK+ 2005-07-19 22:27:38 CEST Philippe Mechai * ui/mlview-prefs-window.glade: Fixed bug #127064 (rename Text Node to Text Node Content). * src/mlview-prefs-*.h: All classes where heavily documented mar jui 19 08:01:29 CEST 2005 Dodji Seketeli * view management files: fixed the last crashes I have seen. did a big cleanup of mlview::OldGVC::on_switch_page(). Added mlview_tree_editor_reload_from_doc() method. Make it reload the doc upon the "document-reloaded" signal emission by MlViewXMLDocument. The code of mlview::OldGVC::on_switch_page() should be put at the mlview::ViewManager level now. 2005-07-18 00:30:51 CEST Philippe Mechai * src/mlview-prefs.cc: Added reference to new preferences category * src/mlview-prefs-category-treeview.(cc|h): First revision of the treeview preferences category * src/mlview-prefs-category-frame-treeview.cc: Added calls to the treeview preferences category * src/mlview-prefs-category-general.(cc|h) * src/mlview-prefs-category-search.(cc|h): Added some more code. Still not finished * src/mlview-tree-editor.cc: Changed color conversion code lun jui 18 12:02:08 CEST 2005 Dodji Seketeli * view management files: fixed lots of craches around the views swapping management. Some important crashes remain to fix though: I need to allow all the types of views to "reload" an MlViewXMLDocument when the doc emits the "document-reloaded" signal. It is right to let each view reload itself upon document reloading, rather than trying to destroy/recreate the view by the GVC, which is neither trivial nor elegant or even right. 2005-07-17 14:45:14 CEST Philippe Mechai * ui/mlview-prefs-window.glade: Added font chooser button in the treeview category frame * schemas/mlview.schema: All treeview related keys have been moved to /apps/mlview/treeview Treeview colours are in /apps/mlview/treeview/colours * src/mlview-app-context.(cc|h): Added a new preference for the treeview font in the AppSettings struct Changed a few gconf keys path to match schema changes * src/mlview-prefs.cc: Fixed a leak * src/mlview-icon-tree.cc * src/mlview-tree-editor.cc: Added code to load font when the view is created 2005-07-17 03:16:34 CEST Philippe Mechai * src/mlview-prefs.cc: Added reference to new category * src/mlview-prefs-category-frame-search.cc: Added calls to the preferences search category * src/mlview-prefs-category-search.(cc|h): First revision of the preferences search category 2005-07-17 02:08:40 CEST Philippe Mechai * src/mlview-prefs-window.cc * src/mlview-prefs-category-frame-general.cc: Cleanups, Tweaks & Fixes * src/mlview-prefs.(cc|h): New class. Handles preferences * src/mlview-prefs-category.(cc|h): Base class for preferences categories * src/mlview-prefs-category-general.(cc|h): General preferences category * src/mlview-prefs-storage-manager.h: Definition of preferences storage interface * src/mlview-prefs-storage-gconf-impl.(cc|h): New class. GConf-based implementation of the PrefsStorageManager 2005-07-16 03:33:48 CEST 2005 Philippe Mechaï * ui/mlview-prefs-window.glade: Created new category frame ui for treeview category * src/mlview-prefs-window.(cc|h): Added code to handle the new category * src/mlview-prefs-category-treeview.(cc|h): New class for the treeview category frame * src/mlview-prefs-category-general.cc * src/mlview-prefs-category-search.cc: Cleanups, Tweaks & Fixes :) sam jui 16 01:10:26 CEST 2005 Dodji Seketeli * mlview-editor.cc: (Editor::close_all_xml_documents): fix this. * mlview-gvc-iface.cc: (GvCIface::set_cur_view): make this optionaly emit a "views-swapperd" signal. * src/mlview-iview.cc: put IViewPriv::view_impl_ptr into a safeptr. added IView::set_view_widget() and IView::get_view_widget() to get/associate a widget to the view. Views must no more inherit widgets, for ref/unref hell management reasons. * src/mlview-object.cc: (Object::Object): ref objects at creation. This prevents early objet destruction. * src/mlview-old-gvc: (OldgGVC::insert_view): don't cast IView* into Gtk::Widget*, use ->get_view_widget() instead. Don't forget to show the content of a notbook page before inserting it. Otherwise, the page will never come on front, event if you call Gtk::Notebook::set_current_page(). (OldGVC::rebuild_view): don't cast IView* into Gtk::Widget* (OldGVC::on_switch_page): shield this from 2 calls of this method without the pages actually switching. Make sure the graphical view updates its cur_view pointer, and emit a signal to let the view manager do the same * src/mlview-safe-gobject-utils.h: added GtkWidgetMMRef and GtkWidgetMMUnref so that we can build safeptrs of Gtk::Widget pointers. 2005-07-15 22:53:18 GMT Philippe Mechaï * ui/mlview-main-app-win2.glade: Re-added a statusbar * src/mlview-tree-editor.cc: Added code to reorder the search bar in the main-app-win2 main vbox * src/mlview-prefs-window.(cc|h): New class to handle the Preferences window * src/mlview-prefs-category-frame.(cc|h): Base class for categories frame This is an abstract class * src/mlview-prefs-category-frame-general.(cc.h): Category frame for the preferences general category * src/mlview-prefs-category-frame-search.(cc|h): Category frame for the preferences search category jeu jui 14 08:29:05 CEST 2005 Dodji Seketeli * src/mlview-app-context.cc: (AppContextPriv::AppContextPriv): properly initialise the private members of AppContext to NULL otherwise boom. * src/mlview-app.c: (App::init_from_glade): initialize the context member right at the begining of the method, otherwise boom. jeu jui 14 00:20:44 CEST 2005 Dodji Seketeli * lots of files: ported MlViewAppContext to mlview::AppContext, bringing in type safety, especially for signal yay!. I changed *all* the client classes to reflect that change. Also, now, no client class exposes the mlview::AppContext in its public api. AppContext is now a good singleton pattern citizen. If you can to get it, call mlview::AppContext::get_instance (). The lifetime of the instance of AppContext is the lifetime of mlview::App. * src/mlview-clipboard.(cc|h): started to hack on the basis the new clipboard architecture. DISCLAIMER: I think mlview is miserably broken at this point. I don't even expect the app to launch. It only compiles. I'll try to debug it and bring it back to life soonish. Time for bed now. dim jui 10 15:58:50 CEST 2005 Dodji Seketeli * src/mlview-object.(cc|h), mlview-validator.(cc|h), src/mlview-validation-output.(cc|h): applied a patch from Benoit Dejean to fix gcc 4 compilation errors. dim jui 10 09:15:34 CEST 2005 Dodji Seketeli * src/mlview-view-manager.cc: (ViewManager::insert_view): applied a patch from Philippe Mechai to fix a stupid regression I have introduced. This Should fix #309922 . sam jui 9 19:12:12 CEST 2005 Dodji Seketeli * docs/view-system.txt: updated this * src/main.cc: updated this to reflect name changes in safeptrisms. * src/mlview-app.cc: changed this to reflect the birth of the ViewManager. * src/mlview-editor.cc: Huge change to delegate view management to the brand new ViewManager. Basically, to add/remove a view , you first get a pointer on mlview::ViewManager and invoke mlview::ViewManager::insert_view() or mlview::ViewManager::remove_view() etc. Also, put all the pointer members in SafePtr. I am sure this'll lead to nights of debugging. But a better life is ahead if I take this route. * src/mlview-exception.(h|cc): allow exceptions feeding with UString messages. * src/mlview-gvc-iface.(h|cc): added the Graphical View Container Interface class, the mother interface of all the graphical view containers. * src/mlview-object.cc, src/mlview-safe-gobject-utils.h, src/mlview-safe-object-utils.h, src/mlview-sage-ptr.h: don't make ref/unref return integers, shorten the name of ref/unref functors. * src/mlview-view-adapter.cc: plug the ref/unref method on the Glib::Object reference/unreference() method so that views get refcouting only using the GObject refcounting system. * src/mlview-view-manager.(cc|h): went forward here. ViewManager now delegates the graphical management to mlview::GVCIface. * src/mlview-gvc-factory.(cc|h): added this factory to create graphical view container objects. * src/mlview-old-gvc.(cc|h): all the previous graphical view management code is now implemented by the OldGVC class, which is a delegate of mlview::ViewManager. This class handle views layouting by using a classical notebook. Just as what was done before. A New graphical view container should come to light in the coming months. * src/mlview-view-factory.(cc|h): added this factory to create IView objects. The view creation abstraction code that was in previously in mlview::Editor has been moved here. Much Cleaner. jeu jui 7 08:44:01 CEST 2005 Dodji Seketeli * src/mlview-gvc-iface.h, src/mlview-view-manager.(cc|h): added this new classes. Just started to work on a well separated view manager and graphical view container. Sun jul 3 19:09:52 CEST 2005 Dodji Seketeli * NEWS: updated the translation part for 0.8 lun jun 27 22:21:49 CEST 2005 Philippe Mechaï <pmechai@free.> * src/mlview-node-editor.c: added standalone checkbox handling * src/mlview-xml-document.[ch]: added standalone attribute handling Added 2 new methods gboolean mlview_xml_document_is_standalone (MlViewXMLDocument*) void mlview_xml_document_set_standalone (MlViewXMLDocument*, gboolean) jeu mai 12 22:58:43 CEST 2005 Philippe Mechai <pmechai@free.fr> * ui/Makefile.am: switched to the new search box * ui/mlview-search-node.glade: new search box ui * src/mlview-tree-view.c: adapted the code to the new ui. Mon jun 27 22:34:28 CEST 2005 Dodji Seketeli <dodji@mlview.org> * docs/view-system.txt: added this doc to revision control Sun jun 26 23:45:33 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/main.cc: put the mlview_application into a brand new SafePtr class that can handle virtually all the pointers, even those which lifecyle is handled by something else but new/delete. * src/mlview-object.(h|cc): added refcounting to this class * src/mlview-validator.(h|cc): started to put in place the kernel of the new element name completion engine to come * src/mlview-safe-ptr.h: added this implem of smart pointer. This one can wrap native pointer types (such as types coming from libxml) which lifecyle is not managed using malloc/free or new/delete. For example, there can be a pointer type Foo, that is instantiated by the function foo_new(), and destroyed by foo_destroyed (). The mlview::SafePtr() can handle this, via template-foo and functor objects. * src/mlview-safe-libxml-utils.h, src/mlview-safe-gobject-utils.h, src/mlview-safe-object-utils.h: these are utils to allow mlview::SafePtr to handle pointer types as different as gobject (libgobject), Glib::Object, xmlRegexec, and mlview::Object. As you can some of these types support reference counting, others don't. However, mlview::SafePtr can handle all of them. Sat jun 18 19:53:38 CEST 2005 Dodji Seketeli <dodji@mlview.org> * tests/testcompl2.cc: this will be the testbed for completion stuffs. * src/mlview-validation-output.cc, src/mlview-validator.cc, src/mlvie-validator-window.cc: moved this to C++. Mainly the validator so that I can use it in the completion testbed. * src/mlview-source-view.cc: a little bit of debugging here, and put this view as the default view from now on. Fri jun 17 23:58:09 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.cc: don't unref xml doc when removing the view. The view is responsible of refing/unrefin the doc. * src/mlview-iview.cc: use IView::set_document () in the constructor so the the doc is properly ref'ed. make sure that IView::set_document (NULL) ; unrefs the doc hold by the view. * src/mlview-node-editor.cc: ref the widgets we need to touch in the destructor and unref them in the destructor. * src/mlview-source-view.cc: make sure the 'create_source_view_instance()' manages the instance of MlViewSourceView it creates. * src/mlview-tree-view.cc: here again, make sure the member widgets are 'managed' and are ref'ed. This way, we can touch them in the destructor without any fear of touching deallocating memory. In the destructor, make sure to unref what has been ref'ed. Also, make create_tree_view_instance() manage the view it creates. * src/mlview-xml-document.cc: replace the g_return_if_fail() by THROW_IF_FAIL() and a small part of the g_return_val_if_fail() too. This entry fixes a leak and a crash that was appearing when we close a view. Thu jun 16 23:49:44 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.cc: wired the source view back. Fixed some view adding/removing logic. Now, it seems there are still some bugs with view name setting upon first saving. * src/mlview-iview.cc: fix the IView::set_document() method. * src/mlview-source-view.cc: debuged the porting of this class. * src/mlview-tree-view.cc: (TreeView::handle_contextual_menu_request): fixed a nasty typo here. * src/mlview-utils.h: add an endl at the end of what is displayed by the LOG_TO_ERROR_STREAM() macro Tue jun 14 22:40:17 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.cc: heavy debug of this class to make it capable of adding new view and removing them without too much crashing. Replaced all the g_return_* by THROW_IF_FAIL(). * src/mlview-tree-view.cc|h: implemented the IView::get_must_rebuild_upon_document_reload() method. Tue jun 14 08:01:11 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-app.cc: reflect the changes in the view system porting. * src/mlview-editor.cc: debug the view 'adding' workflow, and make it work somehow. Now, the global notebook is a Gtk::Notebook, not a GtkNotebook anymore. Sun jun 12 16:31:30 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-source-view.(cc|h): ported MlViewSourceView to mlview::SourceView and update mlview-editor.c accordingly. Okay, the view system is ported and compile. It is broken though. I need to make mlview::Editor use a Gtk::Notebook instead of a GtkNotebook so that the whole thing can work. Today, mlview does not run anymore. Sat jun 11 14:06:29 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-tree-view.(cc|h], src/mlview-iview.(cc|h), src/mlview-view-adapater.(cc|h): Of porting the view system up to MlViewTreeView into C++. I still need to port the MlViewSourceView. * src/mlview-app.cc, src/mlview-editor.cc, : modify these classes to reflect the changes that appear in the view system. * src/mlview-exception.h: fix this header to prevent double inclusion. * src/mlview-object.(h|cc): moved the decl and def of the MethodNotImplementedException exception class. * src/mlview-object.c: don't make mlview::Object inherit sigc::trackable because it prevents mlview::TreeView to compile. * src/mlview-tree-editor.h: put 'const' here and there. * src/mlview-ustring.(cc|h): added a copy constr for Glib::ustring. Fri May 27 17:37:44 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.cc: this class has no more GHashTable. Maps rules. Okay, the views manipulation code needs testing now. (Editor::close_xml_document): don't loop over a map from which you are removing elements. That can invalidate your current iterator and crash the application. This is a first attempt to fix http://bugzilla.gnome.org/show_bug.cgi?id=305586 . Thu May 26 20:25:28 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-ustring.(cc|h): added the class mlview::UString that derives from Glib::ustring. It's = operator accepts NULL char * and sets the content to "" in that case. * src/main.cc: use mlview::UString instead of Glib::ustring. * src/mlview-editor.cc: replaced mlview::EditorPriv::opened_file_base_names and mlview::EditorPriv::opened_file_paths (GHashTables) by standard maps. Also we use mlview::UString instead of Glib::ustrings here. * src/mlview-editor.cc: Sun May 22 23:04:20 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.cc: Replaced EditorPriv::opened_document_label_names (a GHashTable) by a map. Also fixed some crashes that occurs in the "open doc" workflow, as well as "save". Actually, this is due to str = NULL, when str is a Glib::ustring. Hmmh, I will code a mlview::Ustring that accepts a str = NULL, and use that one thoughout the project. Sun May 22 19:46:59 CEST 2005 Dodji Seketlei <dodji@mlview.org> * src/mlview-editor.cc: started to remove the GHashTables used in the Editor class and replaced them by maps. Rock on. * src/mlview-exception.h, src/mlview-utils.h: don't rely on g_log() anymore for our logs. It has behaviours I don't really get. * docs/coding-standards.txt: update this Sun May 22 09:58:02 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/main.cc: correctly handle the case where the user provides a dtd in command line mode. Make sure a Glib::ustring is not compared with "NULL", but with "" instead. * src/mlview-editor.cc: ported the destruction code of MlViewEditor to mlview::Editor::~Editor. No crash seen (yet). Hmmh, it seems like this entry actually provides a first decent step of the porting of MlViewEditor to mlview::Editor. Sun May 22 09:14:02 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/main.cc: enclose everything in try/catch to report exceptions. don't pass NULL ptr to a Glib::ustring constructor, this raises an exception and brings the app down. Now the application comes up. Still, it display some error messages I have to hunt down. Yay anyway. I also have to code the mlview::Editor::~Editor() method otherwise that class will leak like a pig. Sun May 22 01:54:49 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-object.h: don't make mlview::Object inherit Glib::Object because it makes the app goes down when mlview::Editor derives from Gtk::VBox (which is a Glib::Object) and from mlview::Object. Make it derive from sigc::trackable so that all mlview::Object can emit signals. * src/mlview-app.cc: (App::init_from_glade): don't use g_signal_connect on to emit signals on mlview::Editor since this class now uses the sigc signal/slot mecanics. This was crashing mlview at startup. Okay, now, mlview still crashes when you try to open a document. I will look at this issue later. Bed time for now. Sat May 21 19:30:47 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-exception.cc: added the root exception class of mlview. * src/mlview-editor.cc: started to c++fy this. It compiles somehow, but is terribly broken, segfaults at startup and leaks terribly :-\ Anyway, bye bye MlViewEditor, long life mlview::Editor. * src/main.cc, src/mlview-app.(cc|), src/mlview-iview.(cc|h], src/mlview-utils.h, src/mlview-view-adapter.cc, src/mlview-xml-document.(cc|h], src/mlview-xslt-utils.(cc|h), src/mlview-drop-manager.cc: changed these classes to match the changes in mlview-editor.(cc|h) * src/Makefile.am: added mlview-exception.cc, and re-arrange the compilation order to better fit with the porting needs. Tue May 17 23:00:36 CEST 2005 Dodji Seketeli <dodji@mlview.org> * configure.in: used gtkmm-2.4 instead of gtkmm-2.0 * docs/coding-standards.txt: started to hack on a coding standards doc. Tue May 17 21:04:35 CEST 2005 Dodji Seketeli <dodji@mlview.org> * configure.in: test the presence of gtkmm2.0. Add a -Wall -Werror to compile line. Added more configuration reporting at the end of the configure stage. * src/main.cc: debug this to make mlview actually launch again. basically init the Gtkmm toolkit by instancing Gtk::Main * src/mlview-app.cc: debug this to actually make the whole mlview launch and work again. * src/mlview-utils.cc: added a debuggin macro here. * src/mlview-cell-renderer.cc: fix some compilation warnings due to the -Wall flag. Okay, this entry unbreaks the mlview build again. Tue May 17 08:20:46 CEST 2005 DOdji Seketeli <dodji@mlview.org> * src/mlview-app.h, src/mlview-app.cc: refactored this into real C++ object oriented code. Now, this is located in the mlview namespace, and class names don't need to start with 'MlView' anymore. namespace rules. Also, it derives from the mlview::Object class now. The mlview::Object class derives from Glib::Object. All the mlview classes should derive from mlview::Object from now on. Okay, the interfaces should maybe derive from class mlview::Interface that is not written yet. * src/mlview-object.cc, src/mlview-object.h: added this class to the project. * src/mlview-service.cc, src/mlview-service.h, src/main.cc: * configure.in: make the projet depend on libgtkmm2.0 . propagated the change of MlViewApp into mlview::App here. Oh, this entry breaks the mlview code. It crashes at launch time. I need to give it gdb love. Sun May 15 18:57:32 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-service.cc, src/mlview-app.cc, src/mlview-file-descriptor.h, src/mlview-kb-eng.cc, src/mlview-doc-mutation.cc, src/mlview-doc-mutation-stack.cc, src/mlview-cell-renderer.cc, src/mlview-schemas-window.cc, src/mlview-validator-window.cc, src/mlview-schema.cc, src/mlview-schema-list.cc, src/mlview-drop-manager.cc: Applied a patch from Stephane Wirtel to finally make the compile whole project compile. I just added some G_BEGIN_DECLS/G_END_DECLS in mlview-file-descriptor.h to make it link. Hoooray, we now have the first version of mlview++ running :-). Thank you Steph. Sun May 15 15:04:29 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-tree-editor.cc: second attempt to make this really compile with g++ 2005-05-15 Stephane Wirtel <stephane.wirtel@belgacom.net> * src/mlview-node-editor.cc: g++ified this. Sun May 15 12:46:06 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-app.cc: g++ified this. thanks to Stephane Wirtel. Sun May 15 11:47:22 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/*.cc: went forward in g++ification. Now, everything should compile up to mlview-validator.cc, included. Sat May 14 23:52:08 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.c: make this compile with g++ Sat May 14 23:05:45 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-source-view.cc, src/mlview-iview.cc, src/mlview-tree-view.cc, src/mlview-view-adapter.cc: make these file compile with g++ Sat May 14 20:39:05 CEST 2005 Dodji Seketeli <dodji@mlview.org> * configure.in, src/Makefile.am, src/*: set the default compiler to g++, rename the files *.c into *.cc. * src/mlview-app-context.cc, src/mlview-utils.cc: make these files compile with g++. The whole project doesn't compile yet, but I keep the faith. Sat avr 30 21:50:04 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlviewctl.c, configure.in: make sure the beast compiles without dbus support. Thanks to mohinze and herckb for reporting this. Sun avr 24 18:04:35 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-ping-dbo.[ch], src/mlview-ping-dbc.[ch], src/mlview-dbus-cli.[ch]: added support for remotely closing the application by "mlviewctl close-application". * src/mlviw-app.[ch]: added public MlViewApp::close_application() and MlViewApp::close_docs() methods. * configure.in: configure --enable-debug=yes triggers logging of everything that goes through mlview_utils_trace_debug(). * src/mlview-kb-eng.c: use mlview_utils_trace_debug() instead of the former #ifdef MLVIEW_VERBOSE g_print() #endif Sun avr 24 13:20:00 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-dbus-cli.c: added the "load-xml-file" support. * src/mlview-editor-dbc.c: make the MlViewEditorDBC::load_xml_file() method work. It now correctly invokes with the MlViewEditorDBO::load_xml_file_with_dtd() method. * src/mlview-editor-dbo.c: correctly construct the instances of this class. Make the MlViewEditorDBO::load_xml_file_with_dtd() actually work. * src/mlview-editor.[ch]: modified MlViewEditor::load_xml_file(), MlViewEditor::load_xml_file_with_dtd() so that they can do their job in a non interactive way, i.e, without poping up windows asking questions to the user. This is useful for remote control. Adapted the client code to this API change. * src/main.c,src/mlview-app.c,mlview-parsing-utils.c: adapted the code to the MlViewEditor API change w.r.t document loading. * src/mlview-service.c: use mlview_utils_trace_debug() instead of printf(). * src/mlviewctl.c: added the "load-xml-file" command to the help. Sat avr 23 22:14:07 CEST 2005 Dodji Seketeli <dodji@mlview.org> * configure.in,src/mlview-utils.h: make sure the messages logged using mlview_utils_trace_debug() macro are displayed only if the MLVIEW_DEBUG env variable is set. Also, this macro has the same signature as printf() now, which makes it pretty much convenient to log messages. Also, replaced all the mlview_utils_trace_info() function calls by mlview_utils_trace_debug(). sed -i is great. * src/Makefile.am: added mlview-ping-dbo.c (MlView Ping DBus Object) and mlview-ping-dbc.c (MlView Ping DBus Client) to the project. * src/mlview-dbus-cli.c: make this actually work. Make it support the "list-services" and "ping-service" functionality. * src/mlview-editor-dbo.c: added some debug messages * src/mlview-idbc.c: added a default MlViewIDBC::get_bus() method. here to get the dbus session bus. * src/mlview-service.c: added a hook for the MlViewPingDBO object. Also, added a hack so that each instance of MlView can have a unique dbus service name. Actually, the services are named org.mlview.Service.a, org.mlview.Service.b, etc ... until org.mlview.Service.z . There cannot be more than 26 instances of mlview up at the same time. I tried to call the services org.mlview.Service-0, org.mlview.Service-1 etc, but it appeared that dbus clients can't join dbus services which name contain either '-' or digits. Thu avr 21 00:20:29 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/Makefile.am: created a new library: libmlviewdbusclient.so. It is to be linked with dbus client apps. For the moment, this library contains mlview-editor-dbc.[ch], the editor dbus client class. Also started to work on mlviewctl, the command line tool that'll be used to control mlview "remotely", via the command line. The testing framework is getting in place slowly. * src/mlview-editor-dbc.[ch]: first non tested implementation of the call to the "load_xml_file_dtd" method. * src/mlview-service.c: (get_bus): more robust error reporting * src/mlview-dbus-cli.[ch]: added this file. It the class that abstracts the mlview command line interface that'll be the core of the coming testing framework. * src/mlviewctl.c: added this file. It is the command line tool to be used by users willing to control mlview remotely (i.e, via ipc) Mon avr 18 00:00:15 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/Makefile.am, src/mlview-idbc.[ch], src/mlview-editor-dbc.[ch]: started to write the skeleton of the "MlView DBus Client Interface" and the first class to implement that interface, MlView editor DBus Client, MlViewEditorDBC. This is only gobject-foo atm. Nothing works yet, but the ball is rolling. Sun avr 17 13:39:15 CEST 2005 Dodji Seketeli <dodji@mlview.org> * configure.in: don't append dodji's flags when MLVIEW_DEVEL=on env var is set. Make them override the default flags instead. * src/Makefile.am: don't compile mlview-dbus-manager.[ch] anymore. This is going to be replaced by th new framework. This new framework is composed of dbus objects that implements the interface MlViewIDBO, MlView Dbus Object Interface. Objects are activated when the MlViewService is started. Of course, when dbus is not enabled starting the MlViewService does void. For the moment, MlViewEditorDBO is the only dbus object implemented, and it has not client yet. But that'll come soon. I prefer not breaking users who compile mlview and who don't have dbus correctly installed yet. The dbus framework will get slowly up to speed by the time DBus gets more widely installed. * main.c: call MlViewService::start() instead of calling the dbus manager. This is the begining of the new framework. * src/mlview-app.c: (close_application): call MlViewService::stop() when closing the app. This is a from where to cleanup all the dbus'isms. * src/mlview-editor-dbo.c: go forward in implementing the MlView Editor DBus Object. Make sure the object properly inits himself etc ... * src/mlview-idbo.[ch]: cleanups. src/mlview-service.[ch]: make this start to work. It now properly register/unregister the dbus objects of the apps etc. Registration is done indirectly by MlViewService::start(). Unregistration is donne by MlViewSerice::stop(). This respects the basic paradigm that says "a service is a process in whice DBus objects runs." So, starting a service means "make what is necessary to have the dbus object ready to serve requests coming from clients". Fri avr 15 09:49:28 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-idbo.h,src/mlview-editor-dbo.[ch]: Went forward in coding the editor dbus object methods. Nothing works yet, but the framework is getting in place slowly. * src/mlview-editor.[ch],src/mlview-file-descriptor.[ch], src/mlview-parsing-utils.[ch],src/mlview-xml-document.[ch]: added the 'const' keyword here and there for cleanup purposes. Thu avr 7 22:24:08 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor-dbo.[ch],src/mlview-idbo.[ch], mlview-service.[ch],configure.in: building a new framework for the DBus managed objects running in a DBus service in MlView. Basically, this work is rooted in what toonsy has done so far. There is one org.mlview.MlViewService running. This service runs many DBus objects. The MlViewService is started in the main. It registers the objects which are then ready to service requests. I am just at the beginning of the framework design. Tue mar 29 22:10:24 CEST 2005 Dodji Seketeli <dodji@mlview.org> * COPYRIGHT: updated COPYRIGHT information Sun mar 27 20:12:34 EST 2005 Mohinze Tidjani <mtidjani@free.fr> * src/mlview-tree-editor.c: (mlview_tree_update_child_node_added): In the call of the mlview_utils_gtk_tree_expand_row_to_depth, I replace the depth value from "-1" to 1. Basically, now, this called function expand the tree to one level after a child node was added. This should fix #163892 Sun mar 27 17:52:40 CEST 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-utils.c (mlview_utils_parse_start_tag): forgot to init a variable. no good. Sun mar 20 21:49:58 CET 2005 Philippe Mechai <pmechai@free.fr> * src/mlview-dbus-manager.[ch]: Added a simple DBus Object to MlView. This object represents the current MlView Instance. It is used in order to ensure that there's never more than one MlView instance running. * src/mlview-app.[ch]: Added method: mlview_app_set_visible (MlViewApp *) Used to display the main window. This is used to delay the display of the main window. It avoids having the window display and hide when there's already an instance running. * ui/mlview-main-app-win2.glade: Make the window not visible by default. Sun mar 20 13:56:48 CET 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-app-context.[ch]: Added an mlview_app_context_notify_view_undo_state_changed() function. Basically, now, the undo/redo actions are now conceptually carried by the views. An undo/redo is view specific. It is the duty of the view to decide wether an undo should afect the in memory MlViewXMLDocument or not. So the signal emited by the MlViewAppContext to reflect an undo state change is now named "view-undo-state-changed", no more "document-undo-state-changed". * src/mlview-app.c: Reflect the changes in the new undo/redo "philosophy". Use the MlViewEditor::can_redo() and MlViewEditor::can_undo() (instead of the methods of MlViewXMLDocument) to update the undo/redo state arrows of the application menu * src/mlview-editor.c: (mlview_editor_switch_notebook_page_cb): make sure to call mlview_app_context_notify_view_undo_state_changed() so that the application can update it's undo/redo state arrows correctly when we switch from one view to another. (mlview_editor_undo,redo,can_undo,can_redo): make these methods delegate their behaviour to the MlViewIView::undo,redo,can_undo,can_redo of the current editing view * src/mlview-iview.[ch]: added the pure virtual methods MlViewIView::undo,redo,can_undo,can_redo, to support the new undo/redo philosophy. * src/mlview-source-view.[ch]: provide a brand new undo/redo capability that delegates its behaviour to GtkSourceView . * src/mlview-tree-view.[ch]: provide an undo/redo capability. This one is not different than the one we had previously at the MlViewEditor level. Now, what's new is that the *view* now has a specific undo/redo behaviour. * src/mlview-tree-editor.[ch]: Connect to the MlViewXMLDocument::"document-undo-state-changed" signal to notify the whole app about the undo state change. * src/mlview-xml-document.[ch]: small changes to reflect the new undo/redo philosophy. Sat mar 19 11:23:33 CET 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-utils.[ch]: added the xmlDictFreeMem() function to free strings potentially owns by the libxml2 dictionnary. * src/mlview-parsing-utils.[ch] : (build_required_element_content): don't xmlFree() node->name ; use xmlDictFreeMem() instead. This is the third attempt of fixing #160882 . In any case, this definitely saves me from a double free. * src/mlview-iview.h: started to move the undo/redo management to the view level. I want to have MlViewIView::undo() MlViewIView::redo(), etc... so that undo/redo can be view specific. The MlViewEditor::undo() would then delegate the job to the current view. Okay, this is the big picture. Nothing is done yet. Thu mar 17 21:47:53 CET 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.c: (mlview_editor_open_xml_document_interactive): add an assert to make sure we got the EggRecentModel when we ask it. * src/recent-files/egg-recent-view-uimanager.c: (egg_recent_view_uimanager_set_list): don't unref the EggRecentItem when the action is destroyed. This causes a double free because the EggRecentItem will be unrefed anyway. Thank to Richard Hult who enlighted me in this topic. I hope this fixes #160882 Thu mar 17 00:51:01 CET 2005 Dodji Seketeli <dodji@mlview.org> * src/*.[ch]: fixed a couple of warnings reported by gcc 3.3.5. * src/mlview-iview.[ch]: switched MlViewIView back to an GTypeInterface. Now, I understand better how to use GTypeInterfaces * src/mlview-view-adapter.[ch], src/mlview-tree-view.[ch], src/mlview-source-view.c: made the necessary modifications to make the views work crashless. This should fix #170457. * configure.in: fix this to make the dodji flags applied. Wed mar 16 00:50:51 CET 2005 Dodji Seketeli <dodji@mlview.org> * po/*: pulled i18n stuffs from the CVS. * src/mlview-ivew.[ch]: make the iview not be a GInterface anymore. It was a pain in the arse for me to manage. Now, it inherits a vbox. It's less elegant, but I least, I can use the virtual method paradigm. * src/mlview-view-adapter.[ch], src/mlview-tree-view.c, src/mlview-source-view.c: make the changes necessary to reflect the type change of MlViewIView . All this type changing stuffs should fix some crashes that were occuring when switching from a type of view to another one Sun mar 13 21:56:08 CET 2005 Dodji Seketeli <dodji@mlview.org> * po/POTFILES.in: added src/mlview-source-view.c, ui/mlview-new-document.glade, and ui/mlview-node-editor.glade * src/mlview-editor.c: (mlview_editor_save_xml_document_as): use the mlview_editor_get_current_document() instead of touching the private data of the MlViewEditor class. * src/mlview-file-descriptor.c: (mlview_file_descriptor_update_modified_time): unbreak this. (mlview_file_descriptor_is_modified): unbreak this. * src/mlview-source-view.c: Override the abstract MlViewIView::get_document() method. Make it reload the dom when the buffer has been modified. Added a "close relevant tag" contextual menu item to close the last opened tag. The former menu item has been renamed "close all tags" because it clauses all the opened tags. Sat mar 12 15:35:25 CET 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.[ch]: (mlview_editor_load_xml_file_with_dtd): open docs using the source view as default view. * src/mlview-tree-view.c: (activate_or_deactivate_proper_menu_items2): There is no menuitem named UncommentNodeAction. Rather use UncommentNodeMenuitem. This fixes the second error message reported in bug http://bugs.gnome.org/show_bug.cgi?id=169189 . This entry closes this bug as the first error message was fixed when closing the bug #157593. * autogen.sh: switched to automake 1.7.2 * src/mlview-tree-editor.c, src/mlview-cell-renderer.[ch]: change the name of the "editing-started" signal into "editing-has-started". This fixes http://bugs.gnome.org/show_bug.cgi?id=157593 Wed mar 9 23:51:04 CET 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-source-view.[ch]: (get_last_dangling_opened_tag): fix several bugs here and there. Make this function actually work. (mlview_source_view_close_currently_opened_tag ): idem here. Fixed several bugs that were preventing this method to actually work. Sun mar 6 22:32:40 CET 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-source-view.[ch]: went forward in the tag closing feature. Still does not work. There is even maybe an infinite loop in close_tag_action_cb() because the mlview_source_view_close_currently_opened_tag() doesn't detect doesn't work properly the second time it is called. Still it works fine the first time... which is a progress. * src/mlview-utils.c: (mlview_utils_parse_element_name2): fix this to make the a_name_end_iter point to the end of the parsed name, unlike like the C++ stl iterators. (mlview_utils_parse_start_tag2): fix various bugs in this function. made it work, basically. (mlview_utils_parse_closing_tag2): made this function work. Wed mar 2 10:01:06 CET 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-source-view.[ch],src/mlview-utils.c: bug fixing in the "close opened tag" feature. Still have to make it work. Mon feb 28 15:31:12 CET 2005 Dodji Seketeli <dodji@mlview.org> * src/mlview-source-view.c: more contexual menu code. Now has the code to pop contextual menu up. I still have to plug the tag closing code in there. * menu-descriptions/source-view-edit-menu.xml: added the ui-manager desc file of the contextual menu for the source view. * src/mlview-source-view.c: more progress on the tag closing code of this view. Has something that builds now. Doesn't work though. Thu dec 16 21:20:01 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-app.c: (build_view_types_choice_submenu): added this private method to compute the list of menuentries that lets the user choose the type of view she want to create on the document. The list is built dynamically from all the types of views supported by the MlViewEditor class. (new_view_on_doc_menuitem_actoin_cb): modified this to take benefit of the dynamicaly created menuentries thingy (build_and_init_menus): modify this to make it dynamically build the types of view choice dynamically. * src/mlview-editor.c: (mlview_editor_create_new_view_document3), (mlview_editor_create_new_view_on_current_document): Added these public methods to create views of a given 'type'. Thu dec 9 13:22:13 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.c: (build_ext_subset_id_list): make this function not reentrant. When clearing/rebuilding the ext subset combo, block the ext_subset_system_id_combo_changed_cb being called, otherwise we crash. * src/mlview-schema-list.c: (mlview_schema_list_get_size): added this new method to the class. Renamed mlview_schema_list_associate_schema() into mlview_schema_list_add_schema(). Same thing for mlview_schema_list_unasociated_xxx which has been renamed into mlview_schema_list_remove_schema_xxx() ... * src/mlview-schema.c: (mlview_schema_destroy): added this method. Make mlview_schema_unref() use this new method. * src/mlview-xml-document.c: (mlview_xml_document_new): a better handling of external subset object sharing between MlViewSchema and native xmlDoc. This makes us duplicate the xmlDtd because it doesn't have refcounting. This is not resource friendly but it is the only to do it in a maintainable way. (mlview_xml_document_set_ext_subset_with_url): Same object sharing and better lifetime management work w.r.t the dtd associated to the native xmlDoc. This makes us crash much less. Tue dec 7 16:48:19 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-node-editor.c: (select_dtd_in_ext_subset_id_list): replace a dry g_return_if_fail() by a debugable message output. Also, avoid signal handler reentrancy. This is bad truely bad. * src/mlview-schema.c: (mlview_schema_new_from_dtd), (mlview_schema_load_from_file): Let the caller choose to free (or not) the native underlying schema (dtd, xsd, or rng) upon MlViewSchema instance destruction. This allows the MlViewSchema to safely share the native schema with other components. * src/mlview-xml-document.c: (mlview_xml_document_new): make the MlViewSchema properly share the native dtd with the MlViewXMLDocument and not necesarily free it at destruction time. This fixes a nasty memory management bug. * configure.in: fixed a typo: say GTK2 not GKT2. Thanks to Jonas Geiregat who spotted it. Mon dec 6 23:17:58 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-xml-document.c: (mlview_xml_document_reload_from_buffer): set PRIVATE (a_this)->cur_node to NULL after reloading the xml doc because the previous pointer belongs now to a freed doc. Accessing it is no good for our health. Sun dec 5 16:03:34 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-tree-editor.c: don't store the native xmlDoc in the tree view because we don't control it's lifetime. Only store the MlViewXMLDocument. This fixes a bunch of memory errors. Thanks valgrind. * src/mlview-xml-document.c: (mlview_xml_document_save_xml_doc): don't use a freed xmlDoc. No good for memory related ecology. Sat dec 4 21:36:57 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-source-view.c: Detect the change of the view vis a vis the DOM and update the DOM when necessary. Update the DOM when the user wants to save it and when it is not up to date. * src/mlview-xml-document.c: emit the signal "going-to-save" the xml doc is to be saved. Thu dec 2 22:55:36 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-source-view.c: make sure the view gets sync'ed to DOM when it is swapped out. Still need to make sure that 'dirty' views __i.e views that aren't in sync with the DOM__ get sync'ed when the user hits the 'save' button so that the view get sync'ed into DOM before the DOM itself gets saved to disk. When this is done, then I'll be able to focus on editing features inside the view itself. Thu dec 2 12:31:20 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-view-adapter.c: (connect_to_document): make sure definition and declaration have the same API wed dec 1 23:20:49 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.c: (get_current_view_from_notebook): take the case of empty notebook in account. * src/mlview-view-adapter.c: (set_document): make sure to ref the document. Sun nov 28 19:00:24 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-source-view.c: added syntax highligthing based on gtksourceview magic here. Also added plumbing to reload the document when the view is swapped in. * src/mlview-xml-document.c: added a MlViewXMLDocument::get_mime_type() method here. Sat nov 27 13:29:41 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-editor.[ch]: added lots of voodoo to be able to handle view rebuilding when the user goes from one to another. The views can decide not to build rebuild upon 'swapped-in' signal though. New public methods that got in are: mlview_editor_rebuild_view(), mlview_editor_add_view_at_index(), mlview_editor_create_new_view_on_document2(). * src/mlview-ivew.[ch]: added 'get-must-rebuild-upon-document-reload' signal. This is actualy a virtual method implemented as a signal. Make sure MlViewIView setters/getters flush better error messages whet there are not implemented. Added MlViewIView::set_desc_type_name(), MlViewIView::get_desc_type_name() and MlViewIView::get_mus_rebuild_upon_document_rebuild() interface methods. * src/mlview-source-view.c: (dispose), (finalize): don't forget to chain these method up with their parent classes implementation. * src/mlview-tree-view.c: implement the 'get_must_rebuild_upon_document_reload' MlViewIView virtual method. * src/mlview-view-adapter.c: implement the MlViewIView::get_desc_type_name() and MlViewIView::set_desc_type_name() virtual methods. * src/mlview-xml-document.c: added a 'document-reloaded' signal. Added a mlview_xml_document_reload_from_buffer() method. Mon nov 22 23:22:12 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-iview.c: fix the signal parameters. * src/mlview-source-view.c: (mlview_source_view_dispose): don't unref packed widgets because their lifetime is already managed. * src/mlview-tree-view.c: (mlview_tree_view_construct): fix some stupid stuffs here. Okay basically, the source-view shows itself now. Doesn't do anything yet though. Mon nov 22 00:08:44 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/*.[ch]: lots of modifications on the road of MlViewSourceView. actually, cleaned up some broken view management stuffs to make true multi view work. Reached the screenshot state ;) nothing more. Still have to make all this shit work. Sat nov 20 19:29:38 CET 2004 Dodji Seketeli <dodji@mlview.org> * configure.in src/mlview-source-view.[ch], src/Makefile.am: started to hack up a source editing view. Nothing can be tested yet. Thu nov 11 20:03:18 CET 2004 Philippe Mechaï <pmechai@free.fr> * src/mlview-editor.c: Changed New Document Dialog (Fix bug #154731). Fri nov 12 16:59:25 CET 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-tree-view.c: (paste_node_as_next_action.cb): action name is paste-node-as-next-sibling, not past-node-as-next-sibling. This fixes http://bugs.gnome.org/show_bug.cgi?id=157966 . Thu nov 11 17:11:02 CET 2004 Dodji Seketeli <dodji@mlview.org> * NEWS: updated this for 0.8.0. Thu nov 11 17:11:02 CET 2004 Dodji Seketeli <dodji@mlview.org> * mime/mlview.keys, mime/Makefile.am: make mlview known to the system when it comes to open xml files. * application-registry/Makefile.am, application-registry/mlview.applications: add mlview to the list of applications of the system. Sun nov 7 20:27:54 CET 2004 Dodji Seketeli <dodji@mlview.org> * configure.in: define the MLVIEW_EXE variable. * mlview.desktop.in: unbroke this. Put the menu in application/development. Unfuck the binary path. * pixmaps/Makefile.am: distribute the public mlview icon in $(prefix)/share/pixmaps/, not in $(prefix)/share/mlview. * src/mlview-app.c: (init_app_win) : unfuck the search patch of the mlview icon. Wed nov 3 22:31:23 CET 2004 Dodji Seketeli <dodji@mlview.org> * configure.in: setup a new set of compilation flags + -Werror. now, warnings should not be accepted anymore. * src/mlview-editor.c,src/mlview-file-descriptors.c, src/mlview-marshal.c, src/mlview-parsing-utils.c, src/mlview-validator-window.c: fixed some errors catched by the new compilation flags set. Mon Nov 1 23:07:54 CET 2004 Philippe Mechaï <pmechai@free.fr> * schemas/mlview.schema: Added keys to persist window size, and gutters' position of GtkPaned widgets. * src/mlview-app-context.[ch]: Added functions to save window and treeview state (size & gutters' positions). Added code to handle new schema keys. * src/mlview-app.c src/mlview-tree-view.c: Added code to change size of window and positions of the GtkPaned widgets' gutters from the settings. Mon nov 1 03:40:02 CET 2004 Philippe Mechaï <pmechai@free.fr> * Makefile.am configure.in: * menu-descriptions/main-menubar.xml: * src/recent-files/*: * src/Makefile.am: * src/mlview-app.c src/mlview-editor.c: Added support for recent files from libegg. Used code from planner (src/recent-files/egg-recent-view-uimanager.[ch]) in order to make things work with GtkUIManager. Sun oct 31 02:02:34 CET 2004 Philippe Mechai <pmechai@free.fr> * src/mlview-node-editor.c ui/mlview-node-editor.glade: Switched the MlViewNodeEditor to Glade. Added the glade file. Fixed some little bugs in Schemas and Validation windows. * src/mlview-completion-table.c: Switched layout from 2 rows 2 columns to 4 rows 1 column. * src/mlview-tree-view: Changed GtkPaned layout (see bug #150932) Sun oct 31 00:14:09 CEST 2004 Dodji Seketeli <dodji@mvliew.org> * menu-descriptions/main-menu-bar.xml: added a new "reload xml document" entry in here. * src/Makefile.am: renamed the MlView binary into mlview. No more mlv. * src/mlview-app.c: hook the new mlview_editor_reload_document() method in here. * src/mlview-editor.c: renamed the mlview_editor_get_cur_doc_view() into mlview_editor_get_current_document_view() and mlview_editor_get_cur_doc() into mlview_editor_get_current_document(). Following the rule of minimum surprise is good. Added a new mview_editor_reload_document() method. Stupid simple. Mon oct 25 03:48:58 CEST 2004 Dodji Seketeli <dodji@mlview.org> * configure.in: bump libmlview version info. * src/mlview-xml-document.[ch]: make the mlview_xml_document_replace_node() method be undo/redo aware. Now the mlview_xml_document_uncomment() is fully undo/redo aware and functionnal. It only needs testing love. Sun oct 17 02:11:27 CEST 2004 Philippe Mechai <pmechai@free.fr> * pixmaps/Makefile.am pixmaps/mlview-*-schema.png: Added icons to distinguish schemas in the schema dialog. * src/mlview-schema.h: Added arrays to index schema labels & icon path. * src/mlview-schemas-window.c: Added icons instead of stock items. Changed from the old glade file to the new one. Which means adding code to manage the new add dialog. FIXME: Make entry history work ! * src/mlview-validation-window.c: Added some code to handle icon state for the new dialog. Sun oct 17 09:07:35 PDT 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-node-editor.c: catch the "node-commented", "node-uncommented" and "replace-node" signals to update the node editor accordingly. Otherwise, the comment/uncomment workflow lead us to touch some dirty memory. * src/mlview-xml-document.[ch]: emit the "replace-node" signal before doing node replacement in the comment/uncomment workflow. Still need to make mlview_xml_document_replace_node() undo/redo powered otherwise, the comment/uncomment node breaks the undo stack. Fri oct 15 13:58:52 CEST 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-xml-document.[ch]: make the mlview_xml_document_comment_node() and mlview_xml_document_uncomment_node() methods be undo/redo powered. This still need some testing. * src/mlview-tree-editor.c: update this to reflect the api change of mlview_xml_document_comment_node() and mlview_xml_document_uncomment_node(). Tue oct 12 01:11:15 CEST 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-xml-document.[ch], src/mlview-tree-view.[ch]: src/mlview-tree-editor.[ch], src/mlview-parsing.[ch]: Started to add an uncommented feature. Already testable. Still lack undo/redo though. * synch with mlview--mainline--0.7 . Sun oct 10 12:42:35 CEST 2004 Dodji Seketeli <dodji@mlview.org> * fr.po/fix some translation strings here. * src/mlview-tree-editor.c: (button_press_event_cb): when user right clicks, select the node before displaying the contextual menu. This fixes http://bugs.gnome.org/show_bug.cgi?id=154002 . * po/fr.po: pulled fr translations from CVS * po/fr.po: fix a merge breakage Sat oct 9 14:17:25 CEST 2004 Dodji Seketeli <dodji@mlview.org> * po/[en_GB,fr.po]: pull updated translations from CVS. Fri oct 8 14:47:04 CEST 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-tree-editor.c: make the search node window behave correctly when the user hits enter/esc * autogen.sh: enable/disable verbose now triggered by MLVIEW_DEVEL . * src/mlview-view-adapter.c: (build_name_edition_dialog): pass the correct params to gtk_dialog_new_with_buttons() so that esc/enter correctly activates/cancels the "set-view-name" dialog. This fixes bug #154340 Thu oct 7 00:38:35 CEST 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-tree-editor.c: make the search node dialog react to esc/enter correctly. * src/mlview-xml-document.c: (mlview_xml_document_set_node_name_without_xpath): added this method to set node name without using xpath. You can't address dtd node using xpath. * src/mlview-tree-editor.c: (mlview_tree_editor_edit_dtd_node): use mlview_xml_document_set_node_name_without_xpath() to set dtd node name. This fixes #154338 . Tue oct 5 21:56:57 CEST 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-app-context.c: (mlview_app_context_get_file_chooser): change this iface to allow mode selection: "open" or "save" mode. This should fix #154491 . * src/mlview-editor.c: propagate the mlview_app_context_get_file_chooser() api change. * src/mlview-file-descriptor.c: (mlview_file_descriptor_new): replace a g_return_val_if_fail() by an if test. This kills a bunch of runtime warnings and it fixes #154489 * src/mlview-parsing-utils.c, src/mlview-schema.c: propagate the mlview_app_context_file_chooser() api change. Sun oct 3 14:15:23 CEST 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-app.c: applied the patch http://bugs.gnome.org/show_bug.cgi?id=154342 from Sebastion Bacher to fix the credit dialog box text. This fixes bug http://bugs.gnome.org/show_bug.cgi?id=154342 . * src/mlview-tree-view.c: Remove a useless nulle entry from the gv_edit_menu_actions table. This should fix http://bugs.gnome.org/show_bug.cgi?id=154337 . * src/mlview-kb-eng.c,src/mlview-tree-view.c: show debug messages only when MLVIEW_VERBOSE is defined. * autogen.sh: don't enable verbose debugging messages by default. This entry should fix http://bugs.gnome.org/show_bug.cgi?id=154339 . Sun oct 3 00:41:23 CEST 2004 Dodji Seketeli <dodji@mlview.org> * ============= MlView 0.7.0 ===================== sat oct 2 23:57:28 CEST 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-tree-editor.c,mlview-utils.c: gcc-2.95 compilation fixes. * po/[de,ja,nl].po: pulled translations from CVS Thu sep 30 15:11:19 CEST 2004 Dodji Seketeli <dodji@mlview.org> * po/[cs,en_CA,nl].po: pulled translations from CVS. * configure.in: move the gettext init before the library checks. It seems that helps to fix the i18n breakage. * src/Makefile.am: cleanup the i18n releated defines * src/mlview-app.c: explicitely trigger i18n in the gtkuimanager * src/mlview-tree-view: explicitely trigger i18n in the gtkuimanager... Wed sep 29 14:55:10 CEST 2004 Dodji Seketeli <dodji@mview.org> * po/POTFILES.in, po/en_CA.po, po/fr.po: Pulled translations from CVS to arch. * src/mlview-app.c: (set_tree_view_proportions_cb): Added this function to set the proportion of the tree view at the view realize time. We seriously need to rework the layout of the tree view to let more place to the tree editor widget. Mon sep 27 23:49:45 CEST 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-schema.c: (mlview_schema_load_interactive): use the new filechooser. This fixes http://bugs.gnome.org/show_bug.cgi?id=153856 . 2004-09-27 Philippe Mechaï <pmechai@free.fr> * ui/mlview-uri-dialog.glade: Added some eye candy to the dialog :) 2004-09-27 Philippe Mechaï <pmechai@free.fr> * src/mlview-file-descriptor.c,src/mlview-file-descriptor.h: Added a convenient method to get the file descriptor's uri as a string. Password and port are hidden. * src/mlview-editor.c: Fixed a bunch of bugs (mostly side effects) caused by the uri-fication of file names. Mon sep 27 23:49:45 CEST 2004 Dodji Seketeli <dodji@mlview.org> * src/mlview-tree-view.c: (mlview_tree_view_is_swapped_out): clear the contextual menu of the current view when the view is swapped out. Otherwise, it is added to the contextual menu of the other views. Did the same thing when the view is getting destroyed. This fixes bug http://bugs.gnome.org/show_bug.cgi?id=153874. * src/mlview-schema.c: (mlview_schema_load_interactive): use the new filechooser. This fixes http://bugs.gnome.org/show_bug.cgi?id=153856 . Sun sep 26 16:43:47 CEST 2004 Dodji Seketeli <dodji@mlview.org> * po/ en_GB.po: sync'ed with CVS HEAD * src/mlview-editor.c: (mlview_editor_remove_xml_document_view): when a view is removed from the notebook, set the current view pointer to the new selected view, otherwise, boom. This fixes http://bugs.gnome.org/show_bug.cgi?id=153735 . 2004-09-26 Philippe Mechai <pmechai@free.fr> * src/mlview-node-editor.c: redesigned document node editor to be more HIG compliant. gotta rework the others too. Some bug fixes and code cleanup here and there. 2004-09-25 Philippe Mechai <pmechai@free.fr> * src/mlview-file-descriptor.h, src/mlview-file-descriptor.c: added mlview_file_descriptor_get_mime_type () which return the mime type :/ * src/mlview-editor.c: added eye candy to the notebook tab titles. added the icon associated to the mime-type and a close button. * menu-descriptions/main-toolbar.xml: removed close button from the toolbar. 2004-09-23 Philippe Mechai <pmechai@free.fr> * src/mlview-file-descriptor.h, src/mlview-file-descriptor.c: replaced actual implementation with gnome-vfs calls. little fixes here and there :) * src/mlview-editor.c, src/mlview-file-descriptor.h: fixed a bug with tab labels: changed mlview_file_descriptor_get_path to return the complete uri for non local uris. changed mlview-editor to crop the label when uri are too long. 2004-09-18 Philippe Mechai <pmechai@free.fr> * Makefile.am, src/mlview-drop-manager.h, src/mlview-drop-manager.c: added files for drop management. now widgets willing to support dnd just have to call: mlview_drop_manager_register_target (MlViewAppContext*, GtkWidget*); atm only a simple mime-type filter is implemented. in the future widgets will have the ability to register their own handlers for drop support. * src/mlview-app.c: removed drop support and added a call to new function. * src/mlview-editor.c, src/mlview_parsing_utils.c: cleaned gnome-vfs implementation. little bug when looking whether the widget is already in the editor or not. 2004-09-18 Dodji Seketeli <dodji@seketeli.org> * AUTHORS, src/mlview-app.c: added Philippe Mechai in to the credits list. 2004-09-17 Philippe Mechai <pmechai@free.fr> * src/mlview-app.c: added basic drop support. Still need to filter dropped uris. 2004-09-17 Philippe Mechai <pmechai@free.fr> * menu-descriptions/main-menu-bar.xml,src/mlview-app.c: Added an open location menu entry in the file menu. * src/mlview-editor.c,src/mlview-parsing-utils.c, src/mlview-tree-view.c,src/mlview-utils.c: Initial port over to gnome-vfs. 2004-09-17 Dodji Seketeli <dodji@seketeli.org> * configure.in: enable new gtk file chooser by default. This is a patch from John Spray. 2004-09-16 Dodji Seketeli <dodji@seketeli.org> * src/mlview-parsing-utils.c: (mlview_parsing_utils_ask_for_DTD_change_and_validation): Smallish indentation and coding style fixes. * src/mlview-utils.c: (mlview_utils_uri_is_relative): fix this to correctly detect relative URIs. 2004-09-15 Dodji Seketeli <dodji@seketeli.org> * src/mlview-editor.c: (mlview_editor_create_new_xml_document): Parse what is typed to be the root element name. Don't assume it's correct input. * src/mlview-tree-editor.c: (handle_nt_picker_ok_button_clicked_to_add_child): (handle_nt_picker_ok_button_clicked_to_insert_sibling_node): Parsed what is typed to be the element name. Don't assume it's correct input. This entry should fix http://bugs.gnome.org/show_bug.cgi?id=152629 . 2004-09-14 Dodji Seketeli <dodji@seketeli.org> * src/mlview-cell-renderer.c: (get_layout): start playing with line wrapping. For the sake of testing, set the line wrapp length to around 80 char max. This should enhance legibility. I still need to make this a parameter to pass to the MlViewCellRenderer. 2004-09-12 Dodji Seketeli <dodji@seketeli.org> * src/mlview-utils.c: (mlview_utils_escape_underscore_for_gtk_widgets): Wrote this to escape names with underscore so that they appear correctly in menus and gtktreeview titles. * src/mlview-tree-editor.c: Use the the previous function to escape file names with underscores in the GtkTreeView column title. This fixes http://bugs.gnome.org/show_bug.cgi?id=150384 . * src/mlview-utils.c: (mlview_utils_uri_is_relative): Applied patch http://bugs.gnome.org/attachment.cgi?id=31487&action=view from lepejac@telenet.be to fix bug http://bugs.gnome.org/show_bug.cgi?id=150290 . I have modified the patch to make it compile with c89 compilers and make it comply with our coding rules. 2004-09-11 Dodji Seketeli <dodji@seketeli.org> * src/mlview-tree-editor.c: (mlview_tree_editor_cut_node3): prevent the user from cutting XML root node and document root nodes. This makes no sense and lets the editor in an unstable state. This should fix http://bugs.gnome.org/show_bug.cgi?id=152232 . * src/mlview-node-editor.c: detect when a characters are deleted from the text node view and start an editing transaction then. Also, make sure mlview_node_editor_edit_xml_node() is not executed when editing transactions are not commited. This prevents reentrancy related undo bugs. This entry fixes http://bugs.gnome.org/show_bug.cgi?id=150206 . * src/mlview-icon-tree.c: (node_cell_edited_cb): Make sure to parse node name before setting it. Garbage can get in otherwise. * src/mlview-tree-editor.c: (node_cell_edited_cb): After a new name is set, update node_path before calling mlview_xml_document_synch_attributes(). This fixes http://bugs.gnome.org/show_bug.cgi?id=150184 . * src/mlview-tree-view.c: (document_ext_subset_changed_cb): when a dtd is associated to a document, don't only show the completion table widget, also update it according to the currently selected node ! This fixes http://bugs.gnome.org/show_bug.cgi?id=150175. 2004-09-10 Dodji Seketeli <dodji@seketeli.org> * src/mlview-editor.c: applied patch http://bugs.gnome.org/attachment.cgi?id=31429&action=view, from Thierry Moisan to fix bug http://bugs.gnome.org/show_bug.cgi?id=148335. 2004-09-09 Dodji Seketeli <dodji@seketeli.org> * src/mlview-parsing-utils.[ch], src/mlview-xml-document.c: already found a bug in the fragment (de)serialisation and clipboard management code. 2004-09-08 Dodji Seketeli <dodji@seketeli.org> * src/mlview-xml-document.c: modified the node clipboard management. Now, copying a node to clipboard means serializing the node and storing that serialize fragment in the clipboard. Copying nodes from the clipboard means parsing the last stored fragment. This will maybe be hosed when entities comes into play ... well, let's jump into it and see what comes out of the game. * src/mlview-tree-editor.c: made the changes to reflect the clipboard management change. 2004-09-06 Dodji Seketeli <dodji@seketeli.org> * src/mlview-editor.c: some cleanups * src/mlview-node-editor.c,src/mlview-schemas-window.c, src/mlview-validator.c, src/mlview-validator-window.c, src/mlview-schema.c,src/mlview-schema-list.c: Made a cleanup. Remove public members from MlViewSchema. That's good for coming abi compatibility burden. Propage the changes where it's needed. * src/mlview-xml-document.c: let the document know about the schema association. 2004-09-05 Dodji Seketeli <dodji@seketeli.org> * menu-descriptions/main-menu-bar.xml: added some separators in the edit menu. * src/mlview-app-context.[ch]: some cleanup * src/mlview-app.c: plug the "plugable edit menu" machinery. * src/mlview-editor.[ch],src/mlview-iview.[ch],src/mlview-tree-view.[ch]: Add the ability for views to edit the "edit menu" and thus "export" the editing action they are aware of. Woaaaa, that's ubercool. I still need to document that. * po/ChangeLog, po/enCA.po, po/pt_BR.po: sync'ed this translations from CVS HEAD to mlview--mainline--0.7 2004-09-04 Dodji Seketeli <dodji@seketeli.org> * src/mlview-tree-editor.[ch],src/mlview-tree-view.[ch]: add support for next sibling element node insertion via the contextual popup menu. * src/mlview-tree-editor.[ch],src/mlview-tree-view.[ch]: add support for prev sibling element node insertion via the contextual popup menu. 2004-09-03 Dodji Seketeli <dodji@seketeli.org> * configure.in, src/mlview-app-context.[ch]: remove dependancy on libgnomeui. * src/mlview-tree-editor.[ch]: (mlview_tree_editor_add_child_element_node): (mlview_tree_editor_add_child_text_node): added these methods to support the new contextual menu design reorganization. * src/mlview-tree-view.c: Build element insertion completion submenu in the contextual menu. Make child element nodes actually possible. Still have to do the same for sibling elements. 2004-09-01 Dodji Seketeli <dodji@seketeli.org> * src/mlview-tree-view.c: (build_edit_menu_body): Forgoted to add the "copy node" menuitem in the contextual menu. (update_completion_popup_submenu2): Went forward in filling the completion menuitems of the "add child node" submenu. I still have to make this really work. Once that's done, I'll do the same for "insert next child" and "insert prev child" submenus. 2004-08-31 Dodji Seketeli <dodji@seketeli.org> * src/mlview-app.c: removed the stock icon from the help menu * src/mlview-tree-view.c: Went forward in the contextual menu management. The element name completion ain't there yet, but the basics of the contextual menu is there. Still a lot to do there. Basically stated to write update_completion_popup_submenu2() that should replace update_completion_popup_submenu() soon. 2004-08-27 Dodji Seketeli <dodji@seketeli.org> * configure.in: bumped dependencies required versions to libxml2 2.6.11, libxslt 1.1.8, gtk+ 2.4.3, gconf 2.6.2, libglade 2.4.0 eel 2.6.2 and glib 2.4.6. 2004-08-26 Dodji Seketeli <dodji@seketeli.org> * src/mlview-tree-view.c: (activate_or_deactivate_proper_menu_items2): added this new helper function to set the sensitivity of the contextual menu items depending of the context. This is totally GtkUIManager based. * src/mlview-xml-document.c: (mlview_xml_document_get_root_element): added this new public method. * src/mlview-app.c: Update about string. Patch from Baptiste Mille-Mathias. * src/mlview-tree-view.c: (mlview_tree_view_get_ui_manager): make this method public to access the uimanager associated to MlViewTreeView (mlview_tree_view_get_contextual_menu): port this over uimanager. 2004-08-25 Dodji Seketeli <dodji@seketeli.org> * src/mlview-tree-editor.c: (handle_nt_picker_ok_button_clicked_to_add_child): (handle_nt_picker_ok_button_clicked_to_insert_sibling_node): more xpath related bug fixes. Now we should be able to Insert new nodes in the document using the contextual menu. 2004-08-24 Dodji Seketeli <dodji@seketeli.org> * src/mlview-tree-editor.c: (handle_nt_picker_ok_button_clicked_to_add_child) Started to fix a bug that occurs when we add new nodes to the tree. (This is related to node addressing via xpath) Basically, make sure a node has a name before adding it to to the tree. 2004-08-23 Dodji Seketeli <dodji@gnome.org> * menu-descriptions/main-menu-bar.xml: numerous fixes in here. * src/mlview-app-context.c: (mlview_app_context_get_ui_manager): added this method to access the app wide uimanager. * mlview-tree-view.c: went forward in porting the contextual menu plumbing over gtkuimanager. Start to display something even if the menuitself doesn't work yet. 2004-08-20 Dodji Seketeli <dodji@gnome.org> * short-term-todo.xml: updated this. * src/mlview-app.c: Wired the menubar/toolbar accelerators plumbing. * src/mlview-editor.c: (mlview_editor_remove_xml_document_view): g_object_ref() the view before removing it. This way, signaling happens before the view is removed. g_object_unref() the view after signaling. This prevent some weird memory management bugs. * src/mlview-app-context.c: (mlview_app_context_notify_document_undo_state_changed): One must be able to call this method with a NULL document argument. * src/mlview-app.c: Updated about dialog. Code the actions sensitivity management. We are now at the same level of functionality as what we had before this port over GtkUIManager, woohoo ! 2004-08-19 Dodji Seketeli <dodji@gnome.org> * menu-descriptions/main-toolbar.xml: share the same actions with the main menubar. * src/mlview-app.c: Put the structure of actions place. Wire the action callbacks to bring life to the editor again; * ui/mlview-main-app-win2.glade: edit this file with MlView to fix MlView's interface. Eating own dog food is good. 2004-08-18 Dodji Seketeli <dodji@gnome.org> * ui/mlview-main-app-win2.glade,menu-descriptions/main-menu-bar.xml, src/mlview-app.[ch], src/mlview-utils.c: go forward in the gtkuimanager based menu machinery. 2004-08-16 Dodji Seketeli <dodji@gnome.org> * src/mlview-app.c: went a bit forward in defining the menu structure. * menu-descriptions/main-toolbar.xml: added this new toobar description file. 2004-08-15 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_remove_redundant_ns_def_from_node) : fix a crasher in here. * src/mlview-ns-editor.c: (mlview_ns_editor_enable_node_alteration): added this api to enable/disable node alteration. When we just update the ns editor, make sure we can't alter the node. * src/mlview-xml-document.c: (mlview_xml_document_add_child_node_real): (mlview_xml_document_insert_prev_sibling_node_real): (mlview_xml_document_insert_next_sibling_node_real): Whenever a new node is added to the document, make sure to remove possible duplicated default namespaces, reconciliate namespaces and update default namespace when it is needed. This fixes a long time anoying and hard to reproduce/describe bug that was happening when a default namespaced document was edited. 2004-08-14 Dodji Seketeli <dodji@gnome.org> * src/mlview-attrs-editor.c,src/mlview-completion-table.c, src/mlview-icon-tree.c, src/mlview-node-editor.c, src/mlview-tree-editor.c: Don't use xmlGetNodePath(), use mlview_xml_document_get_node_path() instead. * src/mlview-utils.[ch]: remove mlview_utils_get_node_from_xpath(). * src/mlview-xml-document.[ch]: (mlview_xml_document_get_node_xpath): add this method to calculate node path without forgetting about possible default namespaces. 2004-08-10 Dodji Seketeli <dodji@gnome.org> * src/mlview-app-context.c: properly shield the use of GtkFileChooser in the MLVIEW_WITH_GTK_FILE_CHOOSER define. This allow the code to build with gnome 2.4. 2004-08-09 Dodji Seketeli <dodji@gnome.org> * src/mlview-attrs-editor.c,src/mlview-completion-table.c, src/mlview-tree-editor.c: Propagate the API change of mlview_xml_document_set_attribute() and mlview_xml_document_synch_attributes() * src/mlview-tree-editor.c: (mlview_xml_document_set_attribute) * src/mlview-xml-document.c: add the undo here. 2004-08-04 Dodji Seketeli <dodji@gnome.org> * src/mlview-icon-tree.c,src/mlview-node-editor.c, src/mlview-tree-editor.c: propagate the mlview_xml_document_set_node_content() API change. * src/mlview-xml-document.c: added undo to the "set-node-content" mutation. * src/mlview-app.c,src/mlview-editor.c: re-wire the redo. * src/mlview-completion-table.c,src/mlview-icon-tree.c, src/mlview-node-editor.c,src/mlview-tree-editor.c: propagated the API changes to address document nodes using xpath expressions. * src/mlview-doc-mutation-stack.c: (mlview_doc_mutation_stack_clear): fix this to properly decrement the mutations_len priv field. * src/mlview-xml-document.c: properly handle the redo, woot ! Fix numerous bugs to make the undo/redo work properly. A lots of memleaks are still to be killed though. Started to modify basically all the mutation APIs to address document nodes via xpath expressions. 2004-08-03 Dodji Seketeli <dodji@gnome.org> * src/mlview-icon-tree.c,src/mlview-node-editor.c, src/mlview-tree-editor.c: propagated the api change of mlview_xml_document_set_node_name(). * src/mlview-xml-document.c: code the undo of the "set-node-name" mutation. 2004-08-02 Dodji Seketeli <dodji@gnome.org> * src/mlview-completion-table.c,src/mlview-tree-editor.c: propagageted the API change of the MlViewXMLDocument::insert_next_sibling_node() method. * src/mlview-xml-document.c: added undo support for the "insert-next-sibling" mutation. * src/mlview-completion-table.c: propagated the API change of the MlViewXMLDocument::insert_prev_sibling_node() method. * src/mlview-doc-mutation.c: (mlview_doc_mutation_new): don't ref the MlViewDocMutation at instanciation time. * src/mlview-tree-editor.c: propagated the the API change of hte MlViewXMLDocument::insert_prev_sibling_node() method. * mlview-xml-document.c: code the undo for the MlViewXMLDocument::insert_prev_sibling_node() 2004-08-01 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor.c: propagated the API change of mlview_xml_document_cut_node(). * mlview-xml-document.c: added undo support to the "cut-node" mutation. * docs/user-docs/keybindings.html: added this file to the source tree. 2004-07-29 Dodji Seketeli <dodji@gnome.org> * src/mlview-app-context.c: added an "document-undo-state-changed" signal to get notified when a document goes from the "can-undo" state to the "cant-undo" state, or vice versa. Client code can send this notification by invoking mlview_app_context_notify_document_undo_state_changed(). * src/mlview-app.c: added undo and redo buttons to the toolbar. connect the necessary signal plumbering. * src/mlview-completion-table.c: propagate the mlview_xml_document_add_child_node() api change. * src/mlview-doc-mutation-stack.c: added ref/unref calls to the stacked instances of MlViewDocMutation (mlview_doc_mutation_stack_clear): added this method to clear a mutation stack. * src/mlview-doc-mutation.c: (mlview_doc_mutation_get_doc): added this method to access the document associated to the mutation. (mlview_doc_mutation_destroy): (mlview_doc_mutation_ref): (mlview_doc_mutation_unref):newly added method for memory management. * src/mlview-editor.c: added an undo/redo methods. They actually call the mlview_xml_document_undo_mutation() and mlview_xml_document_redo_mutation() methods on the currently selected document. Also added a bunch of undo management methods. * src/mlview-tree-editor.c: propagated the api change of mlview_xml_document_add_child_node(). * src/mlview-utils.[ch]: (mlview_utils_get_node_from_xpath): gets the node that matches an xpath expression. * src/mlview-xml-document.c: (mlview_xml_document_add_child_node_real): added this method to really do the "add-child-node" "mutation". This does not handle any kind of undo stuff. (mlview_xml_document_do_mutation_add_child_node): the "do_mutation" handler of the "add-child-node" mutation. (mlview_xml_document_undo_mutation_add_child_node): the "undo_mutation" handler of the the "add-child-node" mutation. (mlview_xml_document_record_mutation_for_undo): records a given mutation for later undo. I.E pushes the mutation on the undo stack and clears the redo stack. Also notifies the world about the change in the undo state. (mlview_xml_document_record_mutation_for_redo): records a given mutation undo for later redo. I.E pops the mutation from the undo stack and pushes is on the redo stack. Notifies the world about the change in undo state. (mlview_xml_document_add_child_node): Change the content of this method to make it use the mutation plumbering and make it support undo. (mlview_xml_document_can_undo_mutation): tests if the undo stack is empty, i.e, if an undo action is possible. (mlview_xml_document_can_redo_mutation): tests if the redo stack is empty, i.e, if an redo action is possible. (mlview_xml_document_undo_mutation): undo the topmost mutation pushed on the undo stack. I.E, calls the undo handler of the mutation topmost mutation object pushed on the undo stack. Pushes that mutation object on the redo stack. Pop the undo stack. * ui/mlview-main-app-win.glade: add undo/redo buttons in the app toolbar. 2004-07-27 Dodji Seketeli <dodji@gnome.org> * src/mlview-doc-mutation-stack.[ch], src/mlview-doc-mutation.[ch]: added these new files as part of the work on the new undo/redo functionality. * src/mlview-utils.h: added some new members to the MlViewStatus enum. * src/mlview-xml-document.c: added an undo and redo stack to the private members of MlViewXMLDocument. I have finally started to work on undo/redo. Woot. 2004-07-25 Dodji Seketeli <dodji@gnome.org> * docs/user-docs/keybindings.xml: fixed a couple of typos here. * short-term-todo.xml: updated this * src/mlview-editor.c: corrects some comments * src/mlview-tree-editor.c: when the document is modified, append a "(modified)" string to the first column of the tree editing widget when the document is modified. When the document is saved, append a " saved" string instead. * src/mlview-xml-document.c: don't emit the "document-changed" signal when a node is commented and when a node or when a node is replaced. * src/mlview-tree-editor.c: fixed a selection bug in the (mlview_tree_editor_select_next_sibling_node2): (mlview_tree_editor_select_prev_sibling_node2): (mlview_tree_editor_select_parent_node2): Fixed a selection bug in here. * docs/user-docs/keybindings.xml: updated keybindings doc. 2004-07-24 Dodji Seketeli <dodji@gnome.org> * docs/user-docs/keybindings.xml: started to write this documenation about keybindings. * long-term-todo.xml,short-term-todo.xml: updated these * src/mlview-tree-editor.[ch]: added "ctrl-down"/select-next-sibling, "ctrl-up"/select-prev-sibling, "esc-up"/select-parent-node. Added a bunch of new methods to select next/prev sibling nodes and parent node. * src/mlview-tree-view.c: added select next/prev sibling node and parent node to the contextual menu. 2004-07-23 Dodji Seketeli <dodji@gnome.org> * docs/mlview-internals/src/mlview-internals2.xml: Went forward with the documentation. * src/mlview-app-context.[ch]: added the "document-name-changed" signal. (mlview_app_context_notify_document_name_changed): Added this method to notify listeners that the document name has changed. This basically emits the "document-name-changed" signal. * src/mlview-app.[ch]: listen to the "document-name-changed" and "view-swapped" signal and change the title of the main window to reflect the name of the document being edited. This is kind of required by the HIG. (mlview_app_set_main_window_title): added this public method to change the name of the main app window. * mlview-tree-editor.c: make the application context notify listeners about the change of the file path of xml documents. 2004-07-22 Dodji Seketeli <dodji@gnome.org> * docs/mlview-internals/src/mlview-internals2.xml: went forward in this documentation a bit. This is a nice test for MlView actually. * src/mlview-app-context.[ch]: (mlview_app_context_get_file_chooser): added this method to get a cached version of the file chooser. MlView components should use this method to get a file selector. They should not instanciate their own file chooser. * src/mlview-app.c: (init_app_win): allow the app window to shrink. * src/mlview-editor.c,src/mlview-parsing-utils.c, src/mlview-xslt-utils.c: grab the file chooser from the MlViewAppContext instance instead of instanciating a new one all the time. * src/mlview-node-editor.c: added the 'esc !' keybinding to commit the current editing transaction. No more need to go click in another node of the tree editor to commit the content of the current node content being edited. * src/mlview-editor.c: (mlview_editor_select_view_to_open): initialize some variables. (mlview_editor_create_new_xml_document): add a verbose message for when a bad view type name gconf key has been specified. 2004-07-21 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c,src/mlview-xml-document.c: fixed two strings typos. This should fix bugs http://bugs.gnome.org/show_bug.cgi?id=147820 and http://bugs.gnome.org/show_bug.cgi?id=148015 . * po/*.po updated po files from cvs. * src/mlview-editor.c,src/mlview-parsing-utils.c, src/mlview-xslt-utils.c: really enable switch on/off of the new file selector. Just in case ... * src/mlview-app.c: * src/mlview-file-selection.c: fixed typos. * src/mlview-tree-editor.c: (get_search_dialog): Build a new "search node" dialog based on a GtkWindow, not a GtkDialog. This way, the MlView application can still receive events when the user is doing a search. This should fix bug #145383. * ui/mlview-search-node.glade: added this new search dialog glade file. This one has strictly the same aspect as the previous one. But it is based on a plain bare GtkWindow instead of a GtkDialog. 2004-07-19 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c,src/mlview-parsing-utils.c,src/mlview-xstl-utils.c: Applied the patch #27495 from Benjamin Dauvergne. This patch Adds the support of the new gtk file chooser. * autogen.sh,configure.in: trigger the usage of the new gtk file chooser with --enable-gtk-file-chooser=yes|no . 2004-07-18 Dodji Seketeli <dodji@gnome.org> * src/mlview-parsing-utils.c: (mlview_parsing_utils_serialize_node_to_buf): use g_strdup() here, instead of xmlStrndup() which was causing weird memory errors. 2004-07-17 Nicolas Centa <nicolas.centa@free.fr> * src/mlview-schema.[ch]: * src/mlview-schema-list.[ch]: * src/mlview-validator.[ch]: * src/mlview-validation-output.[ch]: * src/mlview-schemas-window.[ch]: * src/mlview-validator-window.[ch]: The new validation system, designed to support XSD and Relax-NG schemas, basically works. I will try to write some documentation about it. Currently it should work well with DTDs and is not very well tested with schemas. 2004-07-15 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: (mlview_editor_open_local_xml_document_interactive): When the user tries to open a document that is already open, ask her whether she want to reload it or not. (build_reload_file_confirmation_dialog): add this new confirmation dialog. This fixes bug #144983. 2004-07-14 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: * src/mlview-parsing-utils.c: * src/mlview-utils.c: Applied the patch nicolas.centa@free.fr--mlview-hacks/mlview--happypeng-fixes--0.6--patch-3 from Nicolas Centa to fix bug 144981 (Problem in relative to absolute file path conversions) * src/mlview-tree-editor.c: (mlview_tree_editor_select_node): Fixed the really annoying bug that was happening when the user hit the 'del' key and triggers the 'delete-node' keybinding. (mlview_tree_editor_update_node_cut): Select the prev node or the parent node after deletion of a given node. 2004-07-11 Dodji Seketeli <dodji@gnome.org> * src/mlview-parsing-utils.[ch]: (mlview_parsing_utils_serialize_node_to_buf) (mlview_parsing_utils_do_comment_node) (mlview_parsing_utils_parse_fragment): added these helpers to support the "comment-node" feature. * src/mlview-tree-editor.c: added the following keybdings: (y) -> "copy node", (pc) -> "paste node as child", (pn) -> "paste node as next sibling", (pp) -> "paste node as previous sibling", ([esc],c) -> "comment current node". Oh, and also added the "comment-current-node" feature. * src/mlview-tree-view.c: (comment_node_menuitem_activated_cb) (mlview_tree_view_build_contextual_menu) (mlview_tree_view_execute_action) (activate_or_deactivate_proper_menu_items): Propagated the modifications needed to Add the the "comment current node" feature. It seems that these modifcations corrupt the heap or something. We now need some valgrind love. * src/mlview-xml-document.[ch]: (mlview_xml_document_replace_node) (mlview_xml_document_comment_node): Added these methods to support the "comment node" feature. * src/mlview-tree-editor.c: make sure that a selected node is always made visible. * src/mlview-tree-editor.c: (mlview_tree_editor_cut_cur_node): select the node in an idle time to avoid possible reentrancy problems. * configure.in: enable the usage of MlViewCellRenderer/MlViewEntry by default. * src/mlview-cell-renderer.c: (custom_selection_bounds): call MlViewEntry methods only on MlViewEntry instances. * src/mlview-kb-eng.[ch]: make the keybinding engine class even more complete and usable by libmlview widgets. * src/mlview-node-editor.[ch]: make this use the brand new keybinding engine and define a "esc-o" binding to select the tree editing widget and continue the editing of the tree. This only works when the current node being edited is a text node. Did some cleanups too. * src/mlview-tree-editor.[ch] : defined a 'o' keybinding that selects the node editing widget. Also defined a 'f' keybinding that folds/unfolds the current selected node. Ripped off the keybindings management code an put into the MlViewKBEng class. * src/mlview-tree-view.c: Put here the code that controls the 'o'/'esc-o' keybinding. Jeez, this is a quit heavy ChangeLog entry. 2004-07-09 Dodji Seketeli <dodji@gnome.org> * src/Makefile.am: added mlview-kb-eng.c to the distro. * src/mlview-tree-editor.c: switched to the new keybinding handling engine MlViewKBEng. This lead to an overall better keybinding handling. * mlview-kb-eng.[ch]: added this new keybinding handling engine. 2004-07-07 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor.c: lots of cleanup. * src/mlview-tree-editor.c: more work on the completion & keybindings stuffs. * src/mlview-cell-renderer.[ch]: Better handling of editable content selection. Still need to handle some few cases. * src/mlview-entry.c: fix several crashers here, and make this work. * src/mlview-tree-editor.c: really popup the completion list (still need the libxml patch). Better handling of the editing mode in of the gtktreecells ... This takes doing some stuffs during idle time. 2004-07-07 Nicolas Centa <nicolas.centa@free.fr> * src/mlview-parsing-utils.[ch]: I replaced mlview_parsing_utils_load_xml_file with two functions : mlview_parsing_utils_load_xml_file_with_dtd and mlview_parsing_utils_load_xml_file_with_dtd_interactive. See API documentation. * src/mlview-xml-document.[ch]: I replaced mlview_xml_document_open with two functions : mlview_xml_document_open_with_dtd and mlview_parsing_utils_open_with_dtd_interactive. See API documentation. * src/mlview-editor.c: (mlview_editor_load_xml_file_with_dtd): I adapted this function to this new MlViewXMLDocument API for opening documents. 2004-07-03 Dodji Seketeli <dodji@gnome.org> * autogen.sh,configure.in: enable the libxml experimental completion code. This needs a special patch to libxml2. * src/mlview-completion-table.c: modified this quite heavily to work around a reentrency bug in GtkTreeView widget. Also, when adding node, make sure not the compute the required subtrees (when we use the experimental completion patch of libxml) * src/mlview-parsing-utils.c: (mlview_parsing_utils_build_element_name_completion_list): Make this support the experimental completion patch of libxml2; This is of course #ifdef protected. * src/mlview-styled-view.c: make this compile with the last libcroco/sewfox combo. * mlview-tree-editor.c: when using the experimental completion patch, do not compute the required subtree. * src/mlview-utils.c: (mlview_utils_get_last_child_element_node): added this helper function to get the last child element node of a given node. * tests/testcompl.c: make this work when we use the experimental completion patch. This is #ifdef protected. 2004-07-02 Nicolas Centa <nicolas.centa@free.fr> * src/mlview-editor.c, src/mlview-utils.c, src/mlview-parsing-utils.c: mlview always uses absolute paths for XML documents and DTDs, and the relative/absolute URI conversion functions seem to work. This should fix http://bugzilla.gnome.org/show_bug.cgi?id=144981 . 2004-06-20 Dodji Seketeli <dodji@gnome.org> * tests/testcompl.c:more work on this. Actually make it work basically. * tests/testcompl.c: added this skeleton of completion test facility * configure.in, Makefile.am, tests/Makefile.am: added the tests/testcompl.c 2004-06-14 Dodji Seketeli <dodji@gnome.org> * src/mlvliew-utils.[ch]: (xmlElectElementNamesFromElementContent): (xmlGetValidElementChildrenIfNoChildren): Started these helpers to compute the completionlist (xmlGetValidElementsChildren2): Started to work on this api to get children elements completion list. A lot of work is still needed, but at least, I have started. 2004-06-06 Dodji Seketeli <dodji@gnome.org> * src/mlview-entry.c: (mlview_entry_class_init): cleaned this up. Don't connect to "key-press-event-cb" only. All the other signals are pretty useless. (build_new_completion_menu): Make sure there is a default completion string stored at completion menu build time. (select_next_or_prev_menu_item): If no menu entry is selected, select the first one by default. (mlview_entry_set_current_word_to_current_completion_string): debug this and make it work somehow. * src/mlview-cell-renderer.c: cleanup, move get_current_word_bounds() into mlview-utils.c and make it a public helper. * src/mlview-entry.c: (build_new_completion_menu): Manage the menu so that we can get the value of the selected menu entry. (the completion string) (mlview_entry_set_current_word_to_current_completion_string): started to work on this public method that should replace the current word with the selected completion string. * src/mlview-utils.c: (mlview_utils_get_current_word_bounds): moved get_current_word_bounds() from mlview-cell-render.c to here. 2004-06-05 Dodji Seketeli <dodji@gnome.org> * src/mlview-entry.[ch]: (select_next_or_prev_menu_item) (mlview_entry_construct) (key_press_event_cb): Added this new helpers. (mlview_entry_hide_word_completion_menu) (mlview_entry_is_popup_win_visible) (mlview_entry_select_next_popup_menu_item) (mlview_entry_select_prev_popup_menu_item): Added these public methods. Here goes to summary: More work on the completion popup window management. Now, the completion menu can be popup'ed, hiden, and the up/down arrows can be used. Nothing usefull is down yet, but things are going forward. 2004-06-04 Dodji Seketeli <dodji@gnome.org> * src/mlview-entry.c: (set_completion_menu_content), (get_completion_menu): Added these two new help functions to implement a singleton pattern on the completion menu. This is just the very beginning and does nothing useful yet. 2004-06-03 Dodji Seketeli <dodji@gnome.org> * src/mlview-entry.c: (compute_completion_list_popup_menu_position): A bit of cleanup and make this work somehow. (build_completion_menu): Went forward here, and make this properly build the menu. (mlview_entry_popup_word_completion_menu): Make this popup a dummy word completion menu just to see What it looks like. This method will require some signature changes in a very near feature, obviously. * src/mlview-tree-editor.c: (word_changed_cb): plug in here the use of the new mlview_entry_popup_word_completion_menu() and do some cleanups. All in all we can now see how the completion feature will look like at the end. Woot. Stay tuned. 2004-06-02 Dodji Seketeli <dodji@gnome.org> * src/mlview-entry.c: (build_completion_menu): started this to build the menu treeview. (mlview_entry_popup_word_completion_menu): went forward here. Doesn't do anything yet. But it will soon. 2004-05-31 Dodji Seketeli <dodji@gnome.org> * autogen.sh: launch configure with --enable-custom-cell-renderer=yes by default. * src/Makefile.am: added mlview-entry.[ch] to the project. * src/mlview-cell-renderer.c: (mlview_cell_renderer_class_init): fix a crash in the "word-changed" signal creation code. Added more parameters to the "word-changed" signal. (mlview_cell_renderer_text_start_editing): Use the newly added MlViewEntry instread of the custom GtkEntry. * src/mlview-tree-editor.c: more code sketch to popup a completion menu * src/mlview-entry.[ch]: This new widget (that inherits GtkEntry) is there to provide advanced "word completion while typing" feature. Almost nothing is done yet. But the work is underway. * po/POTFILES.in: added src/mlview-cell-renderer.c, src/mlview-entr.c, src/mlview-validation-output.c and ui/mlview-validation-report.glade . * src/mlview-app-context.c: (mlview_app_content_get_type): make this return GType, not guint. * src/mlview-editor.c: (mlview_editor_get_type): make this return GType, not guint. 2004-05-25 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor.c: put #define MLVIEW_WITH_CUSTOM_CELL_RENDERER where needed so that this file can compile when the macro is not defined. * src/mlview-tree-editor.c: connect to the "word-changed" signal to debug it. * src/mlview-cell-renderer.c: make this emit a "word-changed" signal when a word is changed. * src/mlview-cell-renderer.c: (get_current_word_bounds): added this new help function to get the bounds of the word being edited. (mlview_cell_renderer_insert_text_cb): Connect this callback to the "insert-text" signal of the gtkentry used by the cell renderer for editing. Start to put the analysing code in place. 2004-05-23 Nicolas Centa <nicolas.centa@free.fr> * src/mlview-editor.c mlview doesn't ask you if you want to save or close without saving the document when there are still views on this document. This should fix http://bugzilla.gnome.org/show_bug.cgi?id=142861 . * src/mlview-tree-view.c Cleanly disconnects from MlViewXMLDocument when the view is destroyed but the document is still alive. This should fix http://bugzilla.gnome.org/show_bug.cgi?id=142980 . 2004-05-20 Dodji Seketeli <dodji@gnome.org> * config.h.in,configure.in: enable/disable the use of MlViewCellRenderer via --enable-custom-cell-renderer=yes|no. * src/mlview-cell-renderer.[ch]: make this work like a GtkCellRendererText. From now on I can Start hacking it to add the completion features I want. * src/mlview-icon-tree.c, src/mlview-tree-editor.c: Make these tree editing widget use MlViewCellRenderer if --enable-custom-cell-renderer=yes at configure time. * src/mlview-marshal.list: added a "VOID:STRING,STRING" marshaler. 2004-05-19 Dodji Seketeli <dodji@gnome.org> * src/Makefile.am,src/mlview-cell-renderer.[ch]: Stated to code a custom cell renderer. 2004-05-18 Dodji Seketeli <dodji@gnome.org> * po/POTFILES.in: renamed mlview-tree-editor2.c into mlview-tree-editor.c 2004-05-17 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: (xmlNodeIsChildOf): fixed a stupid I've made here. * src/mlview-xml-document.c: (mlview_xml_document_open_with_dtd): don't popup the validation window when no DTD is associated to the document. This entry is a patch from Nicolas Centa. 2004-05-16 Dodji Seketeli <dodji@gnome.org> * src/mlview-app-context.c,src/Makefile.am, src/mlview-validation-context.[ch] src/mlview-validation-output.[ch] src/mlview-validation-report.[ch] src/mlview-app-context.c src/mlview-app-context.h src/mlview-editor.c src/mlview-editor.h src/mlview-marshal.c src/mlview-marshal.h src/mlview-marshal.list src/mlview-utils.c src/mlview-utils.h src/mlview-xml-document.c src/mlview-xml-document.h: Applied patch nicolas.centa@free.fr--mlview-hacks/mlview--happypeng--0.7--patch-4 From Nicolas Centa. This adds new pretty validation error reporting stuffs. 2004-05-16 Dodji Seketeli <dodji@gnome.org> * short-term-todo.xml: updated this. * src/mlview-tree-editor.c: Coded a "delete-node" keybinding. It's binded on the 'delete' key for the moment. (mlview_tree_editor_cut_node3): (mlview_tree_editor_cut_cur_node): These two functions were added to support the 'delete' node keybinding. * src/mlview-tree-view.c: applied a patch from Adrian Bunk <bunk@fs.tum.de> to fix a compilation error when using gcc-2.95 2004-05-15 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor.c: defined 4 keybings :'<' (insert-next-sibling-element), '>' (insert-prev-sibling-element), 'c' (insert-child-element) 't' (insert-child-text-node). This helped in debugging the keybinding architecture. * autogen.sh: enable the MLVIEW_VERBOSE macro by default in developement mode. * configure.in: bumped version number to 0.7.0 (development version) and version info to 6:0:0 . Added some friendly message at the end of the configure. * src/mlview-tree-editor.c: Started to write down the infrastructure to parse input key sequence and match them with predefined keybindings. (key_press_event_cb): (analyse_key_press_and_call_editing_action): (lookup_a_key_binding): This are the helper function that will do the basic keybinding management job. (widget_realized_cb): in here, connect our keybing management plumbing to the "key-press-event". * src/mlview-utils.h: added some more values to 'enum MlViewStatus'. 2004-05-11 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: (display_message_dialog) fix a stupid compilation error that shows up on some architectures like alpha. 2004-05-10 Dodji Seketeli <dodji@gnome.org> * src/Makefile.am,src/mlview-icon-tree.[ch], src/mlview-styled-view.[ch],src/mlview-tree-view.[ch], src/mlview-xslt-utils.h: renamed the MlViewTreeEditor2 class into MlViewTreeEditor . 2004-05-09 Dodji Seketeli <dodji@gnome.org> * ====================== 0.6.3 release ==================== 2004-05-09 Dodji Seketeli <dodji@gnome.org> * configure.in: make mlview depend on libxml2 2.5.11 and libxslt 1.0.33 (at least) * src/mlview-parsing-utils.c: make this compile with libxml2 < 2.6. * src/mlview-app.c: updated copyright in the about dialog box. * NEWS: updated this. * src/mlview-parsing-utils.c: (mlview_resolve_external_entity): smalling fix here in the resolution algorithm. Better handling of local dtds not addressed by the system catalog. * docs/release-notes-template.xml, docs/release-notes-template.xhtml: Updated the release notes. * configure.in: bumped version-info to 5:0:0. 2004-05-08 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (search_in_node): Search in attributes of element nodes only. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=142152 . Also make this go look into more types of nodes. * po/de.po: update of German translation by Daniel Holbach. * src/main.c,src/mlview-editor.c: applied a path from Daniel Holbach to fix several string errors. * docs/mlview-internals/src/mlview-internals2.xml: went forward in writting this. * src/mlview-app-context.c: (mlview_app_context_message): make this come back to life. * src/mlview-utils.c: (mlview_utils_display_message_dialog): added this method to display info dialogs. * src/mlview-xml-document.c: (mlview_xml_document_dispose): fixed a crasher here during xmlDoc/xmlDtd destruction. Basically disociate the document and the dtd because (in our case) they don't share the same string dictionnary. Otherwise, xmlFreeDtd() crashes. * src/mlview-icon-tree.c: (node_cell_edited_cb): Add support for cdata section editing. * src/mlview-tree-editor2.c: (build_tree_model_from_xml_tree): (node_cell_edited_cb): add support for cdata section editing. (mlview_tree_editor2_edit_cdata_section_node): Created this new method for cdata node editing. * src/mlview-utils.c: (mlview_utils_parse_cdata_section): Created this helper method to parse cdata node tag. * src/main.c: fixed a string typo. * src/mlview-icon-tree.c: handle the readonly support of cdata section nodes. * src/mlview-node-editor.c: implement the semi transaction scheme for cdata section node to fix the bad memory management bug that happens when the node editor is used. Do the same thing fo comment nodes. * src/mlview-tree-editor2.c: handle the readonly support of cdata section nodes. 2004-05-07 Dodji Seketeli <dodji@gnome.org> * src/mlview-node-editor.c: In the element node view, implement the transaction scheme to update the document model. * docs/mlview-internals/src/mlview-internals2.xml: went forward on this. * src/mlview-node-editor.c: Started to code a mini editing transaction support for the text nodes. This solves some big memory management problems and should be applied to all the types of nodes. More on this later ... 2004-05-05 Dodji Seketeli <dodji@gnome.org> * docs/release-notes-template.xhtml, docs/release-notes-template.xml: Started to update the release notes. 2004-05-04 Dodji Seketeli <dodji@gnome.org> * src/mlview-attrs-editor.c: (attr_name_cell_edited_cb): Make sure we can't have two attributes with the same name. This should fix http://bugzilla.gnome.org/show_bug.cgi?id=132756 . * src/mlview-tree-editor2.c: (mlview_tree_editor2_add_child_node): (mlview_tree_editor2_insert_sibling_node): make sure we don't end up with two root elements. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=130251 . 2004-05-03 Dodji Seketeli <dodji@gnome.org> * src/mlview-parsing-utils.c: (mlview_external_subset_sax_handler): fix a silly bug here, otherwise we won't load the dtd. (mlview_parsing_utils_validate_dtd): Initialise the validation context to zero, otherwise validation is b0rked. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=141664 . (mlview_parsing_utils_build_element_name_completion_list): Do a hack here to workaround a libxml2 regression: Do xmlGenericError = NULL before calling xmlValidGetValidElements() and call xmlSetGenericErrorFunc after otherwise xmlValidGetValidElements keeps dumping error messages. * tests/validation/valid.dtd,tests/validation/valid.xml: modify this so that valid.xml validates. * po/POTFILES.in: added src/mlview-styled-view.c, ui/mlview-main-app-win.glade and ui/mlview-css-picker.glade here. * configure.in: replace AM_PROG_LIBTOOL with AC_PROG_LIBTOOL as the former is deprecated in libtool > 1.4.x 2004-05-02 Dodji Seketeli <dodji@gnome.org> * schemas/Makefile.am: make the schemas go in $(GCONF_SCHMA_FILE_DIR). This fixes http://bugzilla.gnome.org/show_bug.cgi?id=135429 . * src/mlview-icon-tree.h: fix the MLVIEW_TYPE_ICON_TREE macro. * src/mlview-editor.c: (mlview_editor_load_xml_file): convert relative file path to absolute one. This is way safer. * src/mlview-parsing-utils.c: (load_xml_document_from_local_file): don't forget to overload the resolveEntity callback with our own mlview_sax_resolve_entity(). (mlview_resolve_external_entity): if the external entity *paths* haven't been resolved via the catalog, check if the system id is reachable in the file system. (mlview_parsing_utils_ask_for_DTD_change_and_validation): change the signature and code of this function to make sure to convert the relative uri of the dtd into an absolute one using the document uri as a base, hence the modification of mlview_editor_load_xml_file(). This should fix http://bugzilla.gnome.org/show_bug.cgi?id=127072 . (mlview_parsing_utils_load_a_dtd): Ported this over libxml 2.6 series and above without breaking it on libxml2 < 2.6. * src/mlview-utils.c: (mlview_utils_uri_is_relative): (mlview_utils_relative_uri_to_absolute_uri): (mlview_utils_get_dir_name_from_uri): Added these new helper functions. 2004-05-01 Dodji Seketeli <dodji@gnome.org> * autogen.sh: unplugged the styled view by default. * schemas/mlview.schemas, src/mlview-app-context.c, src/mlview-app-context.h, src/mlview-tree-editor2.c, src/mlview-tree-view.c, src/mlview-view-adapter.c: Applied a patch sent by Nicolas Centa to support element name completion in the popup menu. 2004-05-01 Adam Weinberger <adamw@gnome.org> * configure.in: Added en_CA to ALL_LINGUAS. 2004-04-09 Gareth Owen <gowen72@yahoo.com> * configure.in: Added en_GB to ALL_LINGUAS 2004-02-28 Dodji Seketeli <dodji@gnome.org> * src/mlview-parsing-utils.c: (mlview_external_subset_sax_handler): start to make the parsing facilities more libxml2 2.6.xx friendly. * configure.in: forced mlview to use libxml2 2.6.6 and libxslt 1.1.2 2004-02-26 Dodji Seketeli <dodji@gnome.org> * config.h.in,configure.in: define the macro LIBXML_2_6_SERIES_OR_ABOVE when we use libxml2 2.6.xx. This will be useful in the process of cleaning up the way we use libxml2 (given the new api in 2.6) without breaking the 2.N.xx (N<6) series. 2004-02-24 Dodji Seketeli <dodji@gnome.org> * src/mlview-app.[ch]: (set_editing_enabled): better enabling/disabling of editing when its needed. * src/mlview-tree-view.c: now some menuitems of the contextual menu are disabled to prevent the user to perform unwanted editing actions, or enabled when applicable. 2004-02-21 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: (mlview_editor_confirm_close): removed a warning. * src/mlview-iview.[hc]: removed a crasher related to bad signal handling. * src/mlview-node-editor.c: (xml_doc_node_unselected_cb): (mlview_node_editor_connect_to_doc): connect to and handle the "node-unselected" signal. * src/mlview-styled-view.c: removed the update_from_cascade() function. * src/mlview-tree-editor2.c: make sure to disconnect from the "content-changed" signal of xml-document . * src/mlview-view-adapter.c: made a lot of cleanup. * src/mlview-xml-document.[ch]: add a "node-unselected" signal emited just before selecting a new node. 2004-02-18 Dodji Seketeli <dodji@gnome.org> * ui/mlview-css-picker.glade: applied a patch from Stephane Bonhomme to fix a stupid error I have made. 2004-02-18 Dodji Seketeli <dodji@gnome.org> * autogen.sh: enable default arguments even when users provide some. * src/mlview-app-context.[ch], src/mlview-app.[ch], src/mlview-editor.[ch]: Editing is now enabled only when editing views are opened. * src/mlview-iview.h: fix a nasty crasher already fixed in HEAD. * src/mlview-tree-view.c: start working on the support of contextual menu enabling/disabling depending on the ... context. 2004-02-15 Dodji Seketeli <dodji@gnome.org> * docs/mlview-internals/uml/mlview-class-diagram.dia, docs/mlview-internals/uml/mlview-class-diagram.png: added this uml class diagram of the project. 2004-02-15 Dodji Seketeli <dodji@gnome.org> * src/mlview-iview.h: First field of struct _MlViewIView should be a field of type GTypeInterFace g_iface. 2004-02-15 Dodji Seketeli <dodji@gnome.org> * src/mlview-iview.[ch]: changed the prototype of the "name-changed" signal here. * src/mlview-view-adapter.c: removed the "name-changed" signal as this signal is already defined by the parent interface already. This is a possible crasher. We rely on the "name-changed" signal of MlViewIView instead. 2004-02-14 Dodji Seketeli <dodji@gnome.org> * src/mlview-app.c: (init_app_win): make sure to set a default icon for all mlview windows. src/mlview-editor.c: (mlview_editor_select_view_to_open), (mlview_editor_create_new_view_on_document) applied a patch from Stephane Bonhomme<s.bonhomme@wanadoo.fr>. This patch lets the user choose the kind of view she want to use to edit a document. It is triggered whenever the user clicks in "action->new view on document". 2004-02-09 Sebastien Bacher <seb128@debian.org> * src/mlview-app.c: (close_application), (delete_event_cb): * src/mlview-editor.[ch]: (mlview_editor_close_all_xml_documents_interactive), (mlview_editor_confirm_close): Fixed bug with cancel on the exit dialog (Closes: #130184). Added name, of the document to save, to the dialog. 2004-02-09 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: (mlview_editor_add_xml_document_view): don't forget to set the view name even when the name is "untitled<n>". 2004-02-07 Robert Sedak <robert.sedak@sk.htnet.hr> * configure.in: Added "hr" (Croatian) to ALL_LINGUAS. 2004-02-05 Dodji Seketeli <dodji@gnome.org> * src/mlview-styled-view.c: wired up the editing support of the left hand tree editing widget to it's contextual menu. 2004-02-04 Dodji Seketeli <dodji@gnome.org> * configure.in: fixed some typos in the options enabling. * src/mlview-app-context.[ch]: (mlview_app_context_ask_internal_subset_node_name): put this new function here. This is the result of a small refactoring task. * src/mlview-styled-view.c: coded a cascade selection dialog. Went forward in editing support wiring of the left hand tree editor, especially the contextual menu stuff. Started to add some facility to reload css (broken atm) and to dump the box model (this still needs some love). * ui/mlview-css-picker.glade: new glade file added (for the css selection dialog) 2004-02-01 Dodji Seketeli <dodji@gnome.org> * src/mlview-node-type-picker.c,src/mlview-tree-editor2.c: applied a patch from nicolas to address http://bugzilla.gnome.org/show_bug.cgi?id=132034. 2004-01-31 Luuk de Waard <luuk@myjaring.net> * src/main.c: * src/mlview-editor.h, src/mlview-xml-document.h: * src/mlview-editor.c, src/mlview-xml-document.c: Added --dtd/-d commandline option Changed mlview_xml_document_open, mlview_editor_load_xml_file Added mlview_xml_document_open_with_dtd Added mlview_editor_load_xml_file_with_dtd Bugzilla: 131372 2004-01-31 Sebastien Bacher <seb128@debian.org> * src/mlview-attrs-editor.c: (mlview_attrs_editor_construct), (tree_key_press_cb): allow to delete the selected attribute by pressing the Del key in the list of the attributes. 2004-01-31 Dodji Seketeli <dodji@gnome.org> * tests/test4.xml: new test file. 2004-01-31 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: removed every reference to mlview_tree_view_*** and replaced it with the new multi-type-of-view scheme. * src/mlview-styled-view.c: properly connected the tree editing widget to the document object model -> it does editing in this view now. Also added some api documentation here. Well, it seems like hacking in the bus makes me write some api doc ... sweet. 2004-01-29 Kjartan Maraas <kmaraas@gnome.org> * configure.in: Added "no" to ALL_LINGUAS. 2004-01-29 Dodji Seketeli <dodji@gnome.org> * tests/test3.xml: added this new simple test file 2004-01-27 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: added the "styled-view" to the table of possible views. Still have to remove all references to mlview_tree_view_* from this file though. * src/mlview-styled-view.c: (mlview_styled_view_new) : added this new entry point. (mlview_styled_view_construct): make this work. 2004-01-25 Dodji Seketeli <dodji@gnome.org> * autogen.sh: configure --enable-style=yes --enable-verbose=yes by default in development mode. * config.h.in: defined MLVIEW_VERBOSE and MLVIEW_WITH_STYLE macros to control when the styled view is switched on and when verbose debug message dumping should be switched on. * src/main.c: removed include config.h. * src/mlview-app-context.h: include config.h here. * configure.in: autotool plumbering to support what's above. * src/Makefile.am: added new files mlview-styled-view.[hc] to the build system 2004-01-24 Dodji Seketeli <dodji@gnome.org> * src/main.c: some smallish cleanups. 2004-01-24 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.[ch]: (mlview_editor_create_new_view_on_document): wired the support of the semi-dynamic editing view type choice. 2004-01-22 Dodji Seketeli <dodji@gnome.org> * src/mlview-app-context.[ch]: added a new gconf key to define the name of the default editing view. * src/mlview-editor.c: (mlview_editor_load_xml_file): added the ability to semi-dynamically instanciate editing views, based on their name. 2004-01-22 Dodji Seketeli <dodji@gnome.org> * src/mlview-app-context.[ch]: added a signal plumbering to notifies views' swapping. * src/mlview-app.c: make the main menu bar accessible from the application context. * src/mlview-editor.c: notify the application (via the application context) when views swap * src/mlview-tree-editor2.c: (button_press_event_cb)fix some bad button press handling here. * src/mlview-tree-view.c: added the ability to detect when this view comes up front (swapped). 2004-01-17 Dodji Seketeli <dodji@gnome.org> * src/mlview-completion-table.c,src/mlview-tree-view.c, src/mlview-xml-document.c: applied a patch from Nicolas Centa to make the presence of the completion widget be contextual. Made some minor modifications to prevent some smallish potential problems. 2004-01-17 Dodji Seketeli <dodji@gnome.org> * src/mlview-app.c,ui/mlview-main-app-win.glade: added "associate dtd, validate doc and apply xslt" menuitems to the Action menu. * src/mlview-tree-view.c: added several menu items to the contextual menu. 2004-01-15 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-view.c: Wired the contextual menu to real editing actions. (mlview_tree_view_dispose): make sure to disconnect from signal we connect to on objects which life time is longer than ours. Otherwise, bang. 2004-01-15 Dodji Seketeli <dodji@gnome.org> * src/mlview-app-context.c: (mlview_app_context_init_clas): fixed some bugs in signal creation * src/mlview-editor.c: (mlview_editor_load_xml_file): unwired some button-pressed event handling code that had nothing to do here. * src/mlview-tree-editor2.c: used the new (still wet) contextual menu architecture to signal a contextual menu request when needed. * src/mlview-tree-view.c: started to connect to the contextual menu request signal and build the menu. 2004-01-13 Dodji Seketeli <dodji@gnome.org> * src/mlview-app-context.[ch]: (mlview_app_context_notify_contextual_menu_request): This new function adds the ability for editing widget to signal that a user wants a contextual menu. * src/mlview-app.c: (mlview_app_new) fix a crash prone memory management error. * src/mlview-tree-view.c: (mlview_tree_view_handle_contextual_menu_request) (contextual_menu_requested_cb): added these functions to handle the contextual menu requests comming from editing widgets. 2004-01-12 Dodji Seketeli <dodji@gnome.org> * po/POTFILES.in: added src/mlview-completion-table.c into the translatable files list. * ui/Makefile.am: removed the mlview-main-app-win.glade file that has nothing to do in HEAD right now. 2004-01-12 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-view.c: (mlview_tree_view_build_contextual_menu), (mlview_tree_view_get_contextual_menu): started to write the contextual menu code. * src/mlview-app.c: (connect_menu_and_toolbar_signals) (init_menu_and_tool_bar): do the necessary signal plumbing to wire the basic editing functionalities. * ui/mlview-main-app-win.glade: more gui-fu here. 2004-01-11 Dodji Seketeli <dodji@gnome.org> * pixmaps/Makefile.am: cleanup icon naming and packaging. * src/main.c,src/mlview-app-context.[ch],src/mlview-app.[ch], src/mlview-editor.[ch], src/mlview-utils.[ch], ui/Makefile.am: started a big refactoring to replace the GnomeApp-&-co based application container building scheme by a scheme based on glade. This the start of the final work toward the support of multi-type-of-editing-views. 2004-01-11 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c,src/mlview-utils.[ch], src/mlview-xml-document.c,src/mlview-xslt-utils.c: Applied patch http://bugzilla.gnome.org/showattachment.cgi?attach_id=22740. from Paolo Borelli. That fixes bug http://bugzilla.gnome.org/show_bug.cgi?id=130089 . 2004-01-11 Dodji Seketeli <dodji@gnome.org> * src/mlview-completion-table.[ch],src/Makefile.am, src/mlview-tree-view.c: applied a patch from Nicolas Centa that provides the current editing view with an completion based entirely based on gtk+-2.xxx 2004-01-11 Dodji Seketeli <dodji@gnome.org> * revert previous changeset. Screwed up the branch creation. 2004-01-11 Dodji Seketeli <dodji@gnome.org> * pixmaps/Makefile.am: cleanup icon naming and packaging. * src/main.c,src/mlview-app-context.[ch],src/mlview-app.[ch], src/mlview-editor.[ch], src/mlview-utils.[ch], ui/Makefile.am: started a big refactoring to replace the GnomeApp-&-co based application container building scheme by a scheme based on glade. This the start of the final work toward the support of multi-type-of-editing-views. 2003-12-26 Dodji Seketeli <dodji@gnome.org> * src/mlview-icon-tree.c: (mlview_icon_tree_load_icons): fixed a typo I've made here. (mlview_icon_tree_free_icons): made this more reliable. * pixmaps/xml-entity-ref-node.png: added this new icone done by Baptiste Mille-Mathias . * src/mlview-node-type-picker.c: (mlview_node_type_picker_init): disactivate combo drowpdown when the "enter" key is hit. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=130027. * src/mlview-tree-editor2.c: (handle_nt_picker_ok_button_clicked_to_add_child) : Stop considering that strings coming from gtk widgets are non utf8. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=130036 . 2003-12-25 Dodji Seketeli <dodji@gnome.org> * src/mlview-app-context.c: (mlview_app_context_dispose), (mlview_app_context_finalize): fixed a leak here. * short-term-todo.xml: updated TODO list. * pixmaps/Makefile.am: added a new placeholder icon for the new supported entity reference nodes. * src/mlview-icon-tree.c: added read only support for entity reference nodes. * src/mlview-tree-editor2.c: added read only support fo entity ref nodes. Also did a bit of refactoring here. * tests/test2.xml: added a test case for the entity ref nodes. 2003-12-22 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: (xmlSetEntityNodeName) take care we can not give entity A a name that belongs to entity B. * src/mlview-xml-document.c: (mlview_xml_document_set_entity_node_name) better handling of error cases. 2003-12-21 Dodji Seketeli <dodji@gnome.org> * src/mlview-attrs-editor.c: added an #include <libxml/hash.h> here. * src/mlview-tree-editor2.c: (handle_nt_picker_ok_button_clicked_to_add_child), (handle_nt_picker_ok_button_clicked_to_insert_sibling_node) (mlview_tree_editor2_edit_xml_entity_decl_node): use mlview_xml_document_set_entity_node_name() to set entity node name, not, mlview_xml_document_set_node_name() because entity nodes are special. Editing their name requires special considerations. Basically, this makes the core of entity addition/edition work now. * src/mlview-utils.[ch]: (xmlSetEntityNodeName): added this as the low level function to edit an entity's name. Take care to update the entities dictionary accordingly. * src/mlview-xml-document.[ch]: (mlview_xml_document_set_entity_node_name): added this public api to allow entity name editing. 2003-12-21 Dodji Seketeli <dodji@gnome.org> * src/mlview-app.c: added a new "create an internal subset" menu item in the "action" menu. * src/mlview-icon-tree.c: added support for internal subset node editing here. Also made a bit of refactoring here. * src/mlview-node-type-picker.c: add support for the 4 entity declaration types. Did some refactoring here too. * src/mlview-tree-editor2.[ch]: added support to add/edit internal subset nodes and also allow an internal subset node can have entity declaration nodes as children nodes. * src/mlview-tree-view.[ch]: allow support for internal subset node creation. * src/mlview-xml-document.[ch]: (mlview_xml_document_create_internal_subset): added this to create internal subset node. 2003-12-19 Dodji Seketeli <dodji@gnome.org> * src/mlview-icon-tree.c: (build_tree_model_from_xml_tree): make entity decl nodes editable. (node_cell_edited_cb): plug the entity decl nodes edition capabilities. * src/mlview-tree-editor2.c: (node_cell_editor_cb):factorize the entity decl edition, put it in a reusable function and use this function here. (mlview_tree_editor2_edit_xml_entity_decl_node): new function that contains factorize code to edit entity decl node. 2003-12-18 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: (entity_node_public_id_changed_cb) (entity_node_system_id_changed_cb) (entity_node_content_changed_cb): new callbacks for entity to handle entity nodes editing events. (node_cell_edited_cb): plug everything to make entity nodes editing work. (mlview_tree_editor2_external_general_parsed_entity_to_string) (mlview_tree_editor2_external_general_unparsed_entity_to_string) (mlview_tree_editor2_external_parameter_entity_to_string): heavily debugged these functions. (mlview_tree_editor2_connect_to_doc): connect to entity nodes editing signals. * src/mlview-utils.c: (mlview_utils_parse_char_ref) (mlview_utils_parse_internal_general_entity) (mlview_utils_parse_internal_parameter_entity): A lot of debugging here too ... * src/mlview-xml-document.[ch]: (mlview_xml_document_set_entity_content) (mlview_xml_document_set_entity_public_id) (mlview_xml_document_set_entity_system_id): added these new entity node editing functions. 2003-12-18 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: (build_tree_model_from_xml_tree): enable editing of entity declaration nodes, at least for testing purposes. (node_cell_edited_cb): started to plug the new entity declaration parsing helpers functions here. * src/mlview-utils.c: random debugging here to make the new entity declaration parsing helper function basically work. 2003-12-17 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.[ch]: (mlview_utils_parse_external_general_unparsed_entity), (mlview_utils_parse_internal_parameter_entity), (mlview_utils_parse_external_parameter_entity): More helper functions for the read/write support of the entity declaration nodes. 2003-12-17 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: (node_cell_edited_cb): prepare the read/write support of entity declaration nodes. * src/mlview-utils.[ch]: (mlview_utils_parse_entity_ref) (mlview_utils_parse_char_ref) (mlview_utils_parse_pe_ref) (mlview_utils_parse_entity_value) (mlview_utils_parse_internal_general_entity) (mlview_utils_parse_external_general_parsed_entity): added these helper functions for the read/write support of entity declaration nodes. 2003-12-15 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: (mlview_utils_parse_external_id): fixed a small bug in the external id parser. * src/mlview-xml-document.c: (mlview_xml_document_set_dtd_node_system_id) (mlview_xml_document_set_dtd_node_public_id): added these two new methods. * src/mlview-tree-editor2.c: (node_cell_edited_cb): better doctype node editing support based on the enhancements above. 2003-12-14 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: (mlview_utils_parse_external_id) (mlview_utils_is_pubidchar): added these helper functions for the DOCTYPE node editing support. (mlview_utils_parse_doctype_decl): continued this for the read/write support of DOCTYPE nodes. * src/mlview-tree-editor2.c: (node_cell_edited_cb) started to add an experimental doctype node editing support. 2003-12-10 Dodji Seketeli <dodji@gnome.org> ================== 0.6.2 release ================= 2003-12-10 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: applied http://bugzilla.gnome.org/showattachment.cgi?attach_id=22273 from Paolo Borelli. This HIGifies/beautifies the "new root element name" dialog that appears when the user creates a new document. While at it, removed the isolat1 to utf8 conversion I was doing on the element name. There is no need for this on GTK2. * src/mlview-xslt-utils.c: (mlview_xslt_utils_transform_document): fixed a smallish parsing error against gcc-2.96. 2003-12-09 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.[ch],src/mlview-tree-view.[ch]: partly applied http://bugzilla.gnome.org/showattachment.cgi?attach_id=21940 . Only applied the part that fixes the critical error message and the guint to GType fix. Thanks to Paolo Borelli for this patch. * configure.in: docs/release-notes-template.xhtml,docs/release-notes-template.xml, docs/release-notes-template.txt: updated this for 0.6.2 * Makefile.am,mlview-mdk.spec.in: fixed rpm generation stuffs. 2003-12-02 Dodji Seketeli <dodji@gnome.org> * configure.in: added eel as a new dependency. * schemas/mlview.schemas: applied the gconf-colour patch sent by Nicolas Centa. This make the colours of the xml nodes configurable and stored as gconf keys. Augmented this patch to support entities nodes colours. * src/mlview-app-context.[ch]: modified this in the spirit of the gconf-colour patch to support the xml nodes colours as gconf keys. Also made this use eel gconf helpers. Refactored the layout of the struct MlViewAppSettings. * src/mlview-editor.c: reported the struct MlViewAppSettings changes. * src/mlview-icon-tree.c: added read only support of entities nodes. Refactored this a bit. * src/mlview-node-type-picker.c,src/mlview-parsing-utils.c: reported the struct MlViewAppSettings changes. * src/mlview-tree-editor2.[ch]: refactored this a bit. Make sure the private data stay in the private part of MlViewTreeEditor. Added support of read only entity nodes. * src/mlview-utils.[ch]: some refactoring here concerning the entities node support. 2003-11-29 Dodji Seketeli <dodji@gnome.org> * tests/test2.xml: updated this to test external parameter entities. * src/mlview-utils.[ch]: (mlview_utils_external_general_unparsed_entity_to_string) (mlview_utils_internal_parameter_entity_to_string) (mlview_utils_external_parameter_entity_to_string): added these helper functions for the read only support of entities. * src/mlview-tree-editor2.c: (node_to_string_tag): went forward in coding the read only support for the different types of entities. 2003-11-27 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.[ch]: (mlview_utils_internal_general_entity_to_string): (mlview_utils_external_general_parsed_entity_to_string): Added these two helper functions to for the support of entities. * src/mlview-tree-editor2.c: (node_to_string_tag): added (read only) support for internal general entities and external parsed entities. (build_tree_model_from_xml_tree): added the type "ENTITY Declaration Node" 2003-11-27 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: (mlview_editor_dispose): fixed a nasty memory management bug in the destroy process of the MlViewEditor class. (mlview_editor_close_xml_document_interactive): second attempt to close http://bugzilla.gnome.org/show_bug.cgi?id=127678 . Thanks to Paolo Borelli for being dense on this. 2003-11-26 Dodji Seketeli <dodji@gnome.org> * src/mlview-app.c: pushed the new button at the left of the toolbar to comply with HIG. * src/mlview-tree-editor2.c: (node_to_string_tag): went a bit forward in the (read only) support of entities. * tests/test2.xml: added this test file for entities related development purposes. 2003-11-26 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: (mlview_utils_parse_element_name): fixed a stupid parsing bug here. 2003-11-26 Dodji Seketeli <dodji@gnome.org> * configure.in: reset my devel environment ;) * src/mlview-editor.c: (mlview_editor_load_xml_file): fixed a long time small bug here in the notebook tab switching process. (mlview_editor_add_xml_document_view): make sure to set the newly added notebook tab as the current active one. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=127704 . (mlview_editor_create_new_xml_document): check here that the root element name entered by the user is a well formed element name. If not, popup an error message and cancel the new document creation process. This partially fixes http://bugzilla.gnome.org/show_bug.cgi?id=127922 . * src/mlview-view-adapter.c: (build_name_edition_dialog): fix a silly error that was preventing the dialog of the "set new name to view" feature to show up correctly. 2003-11-25 Dodji Seketeli <dodji@gnome.org> * AUTHORS: updated this to add Paolo Borelli and Stephane Bonhomme. * configure.in,pixmaps/Makefile.in,src/Makefile.am, src/mlview-app.c,src/mlview-editor.[ch], src/mlview-xslt-utils.[ch]: applied a patch from Stephane Bonhomme that adds the initial of xslt in MlView. 2003-11-24 Dodji Seketeli <dodji@gnome.org> * src/main.c,src/mlview-app-context.[ch],src/mlview-app.[ch], src/mlview-attribute-picker.c,src/mlview-attrs-editor.c, src/mlview-editor.c,src/mlview-icon-tree.c,src/mlview-node-type-picker.c, src/mlview-node-type-picker.c,src/mlview-parsing-utils.c, src/mlview-preferences.c,src/mlview-tree-editor2.c, src/mlview-utils.[ch],src/mlview-view-adapter.c: applied patches http://bugzilla.gnome.org/showattachment.cgi?attach_id=21759 and the first trivial patch from paolo borelli<pborelli@katamail.com> to remove the "quit" menu item from the toolbar. * src/main.c: (mlview_editor_close_xml_document_interactive): fixed the critical message emited when user clicks on "close" and where no doc is opened. * src/mlview-icon-tree.c: (node_to_string_tag) fixed a stupid memory management bug I have introduced. * src/mlview-tree-editor2.c: (node_to_string_tag): fixed another stupid management bug I have pushed in. * tests/test.xml: pushed a non regression test in here. 2003-11-23 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: (mlview_editor_confirm_close): fixed a smallish bug here. (mlview_editor_close_xml_document_interactive): * src/mlview-icon-tree.c,src/mlview-ns-editor.c, src/mlview-tree-editor2.c: Fixed compilation errors that occur on gcc-2.9x by my fault. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=127720 . Thanks to Mike Castle<dalgoda@ix.netcom.com> who spotted this and provided a patch. 2003-11-23 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c: applied a patch from Paolo Borelli <pborelli@katamail.com>. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=127678 and Improves the ugly close confirmation dialog we had. 2003-11-23 Dodji Seketeli <dodji@gnome.org> * src/mlview-icon-tree.c,src/mlview-tree-editor2.c: (node_to_string_ta): second attempt to escape all the predefined entities in markup strings to be given to pango. This should fix http://bugzilla.gnome.org/show_bug.cgi?id=127697 . thanks to Happypeng who sent a fix: http://bugzilla.gnome.org/showattachment.cgi?attach_id=21705. I have modified the fix to make consider more cases. 2003-11-23 Christian Neumair <chris@gnome-de.org> * configure.in: Added German (de) to ALL_LINGUAS. 2003-11-22 Dodji Seketeli <dodji@gnome.org> * src/mlview-icon-tree.c,src/mlview-tree-editor2.c, src/mlview-utils.c: started to add the support of doc type decls. 2003-11-21 Dodji Seketeli <dodji@gnome.org> ========= 0.6.1 release ===================== 2003-11-21 Dodji Seketeli <dodji@gnome.org> * pixmaps/*: added the png to be added (oops forgot to add'em for the previous patch). and remove those that are to be removed. 2003-11-20 Dodji <dodji@gnome.org> * pixmaps/Makefile.am: * src/mlview-icon-tree.c: * src/mlview-icon-tree.h: applied a patch from Nicolas Centa <happypeng@free.fr> that gives better names to the icons used by mlview. That should ease the task of people willing to do some artwork for the project. I have added some error handling messages in case we don't find the icons at load time. 2003-11-20 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: (mlview_utils_escape_angle_brackets_in_str): rename this function into mlview_utils_escape_predef_entities_in_str() (mlview_utils_escape_predef_entities_in_str): make this function escaped all the predefined entities (<,>,&). * src/mlview-icon-tree.c: (build_xml_attrs_list_str): make this use mlview_utils_escape_predef_entities_in_str() . * src/mlview-tree-editor2.c: (node_to_string_tag): make this use mlview_utils_escape_predef_entities_in_str() . 2003-11-19 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: (mlview_utils_escape_angle_brackets_in_str): added this new function to escape the angle brackets found in a given string. * src/mlview-icon-tree.c: (node_to_string_tag): make sure we escape the angle bracket found in strings so that pango and gmarkup don't cry at label's text markup parsing time. * src/mlview-tree-editor2.c: (node_to_string_tag), (mlview_tree_editor2_build_attrs_list_str): very same comment as for the above entry. These three entries fix bug http://bugzilla.gnome.org/show_bug.cgi?id=127388 . 2003-11-19 Dodji Seketeli <dodji@gnome.org> * docs/release-notes-template.xml: updated this. 2003-11-18 Dodji Seketeli <dodji@gnome.org> * src/mlview-app.c: (close_application): new function to re factor the mlview application closing workflow. (delete_event_cb): added this callback that is called when user clicks on the on close button of the window. This uses the new close_application() function (exit_cb): made this use close_application(). * mlview_editor_dispose: fixed a long time memory management crashing bug here. * mlview_editor_save_and_close_xml_document: Ask the user if she want to overwrite a given file only when it's strictly necessary. * src/mlview-file-descriptor.c: (mlview_file_descriptor_set_file_path): a quick hack that replaces a freed memory read by a leak. * src/mlview-parsing-utils.c: fixed an mlview critical error here. * src/mlview-xml-document.c: (document_changed_cb): update the last doc modification time each time the document is modified. More generally, went throughout this file to make sure we emit the "document-changed" each time the document *is* changed. The modifications done here fix http://bugzilla.gnome.org/show_bug.cgi?id=127131 . 2003-11-16 Dodji Seketeli <dodji@gnome.org> * mlview-mdk.spec.in: fixed a smallish bug here. * AUTHORS: updated this to add Baptiste Mille-Mathias. * src/mlview-tree-editor2.c: (mlview_tree_editor2_build_attrs_list_str): fixed a crasher that occured at document load time. * docs/mdk-rpm-howto.txt: added this howto copied from http://qa.mandrakesoft.com/twiki/bin/view/Main/RpmHowTo . * configure.in,mlview-mdk.spec.in, po/POTFILES.in,schemas/Makefile.am: Huge cleanup and lot of packaging fixes. 2003-11-14 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_add_child_node), (mlview_xml_document_insert_prev_sibling_node), (mlview_xml_document_insert_next_sibling_node): When you add a node using a libxml2 routine, work with the node returned by libxml2's routine and not the initial node !! This fixes http://bugzilla.gnome.org/show_bug.cgi?id=127019 . Thanks to Samuel Mounie for reporting this bug !! * src/mlview-tree-editor2.c: (nodeset_selected_cb): visualy update the xml node each time it is selected. (mlview_tree_editor2_update_child_node_added), (mlview_tree_editor2_update_node_pasted), (mlview_tree_editor2_update_sibling_node_inserted): when we are trying to upated an added node that already existed (when we merge two adjacent xml text nodes for ex) select that node. That will also update it. * src/mlview-icon-tree.c,: (update_visual_node): fixed the critical error message that was displayed here. * src/mlview-tree-editor2.c: (mlview_tree_editor2_disconnect_from_doc): do not forget to unregister the callback associated to the "node-selected" signal emited by the document object model. Thanks to Stephane Bonhomme who filled the bug. * src/mlview-node-editor.c: (mlview_node_editor_disconnect_from_doc): do not forget to unregister the callback associated to the "node-selected" signal emited by the document object model. Thanks to Stephane Bonhomme who filled the bug. * README: Baptiste Mille-Mathias updated this. * src/Makefile.am: removed all call to pkg-config and handle libs and compile flags in a less insane manner. * configure.in: modified the configure to fine test the availability of gnome libs. * pixmaps/Makefile.am: added icons sent by Baptiste Mille-Mathias. 2003-11-13 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c,src/mlview-view-adapter.c: updated api documentation. * src/mlview-tree-view.[ch]: updated apidoc and fixed a small typo. 2003-11-13 Dodji Seketeli <dodji@gnome.org> * src/mlview-parsing-utils.c: updated api documentation. * src/mlview-ns-editor.[ch]: fixed a smallish typo here and updated api document. * src/mlview-node-editor.c: (mlview_node_editor_disconnect_from_doc) make sure to call the mlview_ns_editor_disconnect_from_doc() here. 2003-11-11 Dodji Seketeli <dodji@gnome.org> * src/mlview-node-type-picker.c: updated api documentation. * src/mlview-file-selection.c,src/mlview-icon-tree.c, src/mlview-iview.c,src/mlview-node-editor.c,src/mlview-node-type-picker.c: Updated api documentation. * src/mlview-app-context.c,src/mlview-attribute-picker.c, src/mlview-attrs-editor.c,src/mlview-editor.c, src/mlview-node-editor.[hc],src/mlview-node-type-picker.[ch], src/mlview-ns-editor.[ch],src/mlview-parsing-utils.[ch], src/mlview-preferences.[ch],src/mlview-tree-editor2.[ch], src/mlview-tree-view.[ch],src/mlview-view-adapter.[ch]: Updated api documentation. 2003-11-09 Dodji Seketeli <dodji@gnome.org> * src/mlview-action.h,src/mlview-icon-tree.[ch], src/mlview-iview.[hc]: updated documentation. * src/Makefile.am: removed the mlview-global-settings.[ch] files from the distribution. * src/mlview-app-context.c,src/mlview-editor.c, src/mlview-parsing-utils.c,src/mlview-tree-editor2.c, src/mlview-xml-document.c: updates this to reflect the the removal of mlview-global-settings.h. * src/mlview-app.c: reflect the removal of mlview-global-settings.h and unplugged the non working settings widget code. * src/mlview-action.h,src/mlview-app.h, src/mlview-file-selection.c,src/mlview-file-selection.h, src/mlview-xml-document.c: updated api documentation 2003-11-08 Dodji Seketeli <dodji@gnome.org> * docs/release-notes-template.txt: generated a txt version of docs/release-notes-template.xml. * docs/release-notes-template.xml,docs/release-notes-template.xhtml: started to update this for the coming release. * src/mlview-tree-editor2.c: (mlview_tree_editor2_get_node_type_picker): fix a small bug. (mlview_tree_editor2_update_child_node_added): (mlview_tree_editor2_update_sibling_node_inserted): make sure to propagate the "node-selected" signal when a node is add to the tree and selected. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=126483 . * src/mlview-file-descriptor.c: (mlview_file_descriptor_set_file_path): fixed a memory management bug here. This fixes bug http://bugzilla.gnome.org/show_bug.cgi?id=126486 . 2003-11-06 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_remove_attribute): fixed a crash prone memory management bug here. * src/mlview-node-editor.c: (mlview_node_editor_content_changed_cb): modified this to let the "focus-out-event" progate through the widget hierachy. This fixes a crasher. 2003-11-05 Dodji Seketeli <dodji@gnome.org> * src/mlview-file-descriptor.c: heavily modified this class to support file paths that are not valid URIs. In that case, MlViewFileDescriptor stores the file path and relies on it for file manipulations. URIs are used only when the file path given in input can be parsed as a valid URI. This fixes bug http://bugzilla.gnome.org/show_bug.cgi?id=121251 . 2003-11-04 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_open): when mlview_parsing_utlis_load_xml_file() fails, properly return NULL instead of using g_return_val_if_fail(). * src/mlview-utils.c: (mlview_utils_display_error_dialog): cleaned this up. Use a GtkMessageDialog properly instead of what I was poorly using before. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=125982. * src/mlview-attrs-editor.c: include the libxml/parser.h header instead of just the libxml/hash.h. This fixes a compilation error that occurs against libxml2 >= 2.6. * src/mlview-app-context.c: (mlview_app_context_bufferize_error): did some cleanups here. 2003-11-02 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_insert_next_sibling_node): build required attribute list for xml element nodes only. * src/mlview-tree-editor2.c: (nodeset_selected_cb) (mlview_tree_editor2_select_node): An other attempt to make the "node-selected" signal based node selection mecanism work. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=125995. * src/mlview-node-type-picker.c: (mlview_node_type_picker_build_element_name_choice_list): build completion list for xml element nodes only. * src/mlview-node-editor.c: (mlview_node_editor_build_xml_comment_node_view) (mlview_node_editor_build_xml_cdata_section_node_view) (mlview_node_editor_build_xml_pi_node_view): Connect the rigth widget to the "focus-out-event" signal. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=125996. * src/mlview-icon-tree.c: indented this correctly. * src/mlview-editor.c: (mlview_editor_create_new_xml_document): build completion list for xml element nodes only. (mlview_editor_close_xml_document_interactive): cancel the view closing process if the user closes the dialog window. 2003-11-01 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: (mlview_utils_parse_pi): added this to parse processing instruction nodes. (mlview_utils_parse_comment): added this parse comment nodes. * src/mlview-tree-editor2.c: (node_to_string_tag): fixed comments and processing node representation. (build_tree_model_from_xml_tree,node_cell_edited_cb): make PI and comment node editable directly on the tree. This entry fixes http://bugzilla.gnome.org/show_bug.cgi?id=125473 and does far more. 2003-10-31 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: (mlview_tree_editor2_update_child_node_added ): select the node after having updated it. this fixes some critical error messages. (mlview_tree_editor2_select_node): change the signature and behaviour of this function to help avoid useless loops that was occuring during the node selection process. (nodeset_selected_cb,xml_doc_searched_node_found_cb): avoid useless numerous loops that was occuring during the node selection process. also made sure to avoid leaks in case of exception. * src/mlview-node-type-picker.c: revisited the dialog stuffs and made some cleanups. Fixed bug http://bugzilla.gnome.org/show_bug.cgi?id=125447. 2003-10-30 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c,src/mlview-tree-view.c, src/mlview-utils.c,src/mlview-view-adapter.c, src/mlview-xml-document.c: revisited and cleaned up all the instances of GtkDialog. This also fixes bug http://bugzilla.gnome.org/show_bug.cgi?id=124891 . 2003-10-30 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c : (mlview_xml_document_associate_dtd): fixed bug http://bugzilla.gnome.org/show_bug.cgi?id=124986 2003-10-28 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-view.c: (tree_selected_cb) don't use the C++ reserved 'this' keyword. * src/mlview-node-editor.c: (mlview_node_editor_name_changed_cb) make this return FALSE to fix a crasher. * src/mlview-app-context.c: (mlview_app_context_get_settings) init the newly allocated memory. 2003-10-27 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_insert_next_sibling_node) fixed a crasher here. * src/mlview-icon-tree.c, src/mlview-tree-editor2.[ch]: applied a patch from Nicolas Centa<happypeng@free.fr>: fixes some bugs in the node folding/unfolding, and in the signal connection process of mlview-icon-tree.c. Modified the patch a bit to fix some compilation warnings and to add licensing information where needed. * src/mlview-file-descriptor.c: some light cleanups. 2003-10-26 Sebastien Bacher <seb128@debian.org> * debian/*: Added a debian/ dir to the CVS. 2003-10-26 Dodji Seketeli <dodji@gnome.org> * pixmaps/folder_violet_open.png,src/mlview-icon-tree.[ch], Makefile.am: applied a patch from Nicolas Centa<happypeng@free.fr> that supplies two icons for the folding/unfolding of elements. * src/mlview-app.c: updated the about dialog to add Nicolas Centa<happypeng@free.fr> in the credit box. * schemas/Makefile.am: fixed a typo which consequence was that schema file got installed in /gconf/blah not in /etc/gconf/blah. * pixmaps/Makefile.am, pixmaps/control-center2.png: removed the control-center2.png file which landed in pixmaps/ by error. * Makefile.am: reference mlview-mdk.spec.in, not mlview.spec.in . * configure.in: bumpped version number to 0.6.1-pre1 * COPYRIGHT: added this file. 2003-10-26 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-view.c: applied a patch from happypeng<happypeng@free.fr> that fixes the behaviour of the edition widgets when the main window is re-scaled. Modified the patch a bit to enable the shrinking of the element name completion panel. 2003-10-26 Dodji Seketeli <dodji@gnome.org> * pixmaps/Makefile.am, pixmaps/blockdevice.png, pixmaps/folder_violet.png, pixmaps/misc_doc.png, pixmaps/txt.png, pixmaps/unknown.png, src/Makefile.am, src/mlview-icon-tree.c, src/mlview-icon-tree.h, src/mlview-tree-editor2.c, src/mlview-tree-editor2.h, src/mlview-tree-view.c: applied a patch from nicolas centa<happypeng@free.fr> that adds a new fancy tree editor widget to the default editing view. 2003-10-26 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.[ch]: added an mlview_xml_document_select_node() which does nothing but emitting the "node-selected" signal. The views are now responsible to connect to this signal and update themselves to reflect this new state. * src/mlview-tree-view.c: (mlview_tree_view_new) at the end of the construction of the view, select the xml doc node. * src/mlview-tree-editor2.c: make this widget sensible to the "node-selected" signal now emitted by the MlViewXMLDocument class. * src/mlview-node-editor.c: (xml_doc_node_changed_cb): added this controller to take the "node-selected" signal now emitted by the MlViewXMLDocument class. (mlview_node_editor_connect_to_doc): connect to the "node-selected" signal now emitted by the MlViewXMLDocument class. 2003-10-24 Dodji Seketeli <dodji@gnome.org> * ui/mlview-dtd-choice.glade: revamped this a bit. * ui/Makefile.am: added mlview-dtd-choice-dtd-not-resolved.glade . file. * src/mlview-xml-document.c: tiny cleanup. * src/mlview-parsing-utils.[ch]: cleaned this code up. (mlview_parsing_utils_ask_for_DTD_change_and_validation): heavily debugged this function to make the external DTD subset resolution work properly (at least the nominal cases). 2003-10-24 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: (build_tree_view_from_xml_doc) : fixed bug http://bugzilla.gnome.org/show_bug.cgi?id=125241 . * src/mlview-parsing-utils.c: applied a patch from Nicolas Centa<happypeng@free.fr> to fix a crash that when opening a non existing file. * src/mlview-app-context.[ch],src/mlview-app.c, src/mlview-editor.c,src/mlview-tree-editor2.[ch], src/mlview-xml-document.c: remove the dead old settings management code. 2003-10-22 Dodji Seketeli <dodji@gnome.org> * src/mlview-editor.c, src/mlview-node-type-picker.c, src/mlview-parsing-utils.c,src/mlview-xml-document.c: We are now based on gconf only for settings management :) 2003-10-21 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: applied a patch from Nicolas Centa<happypeng@free.fr> that adds syntaxic coloration to the tree. * src/mlview-parsing-utils.c: more settings management code replacement work. 2003-10-21 Dodji Seketeli <dodji@gnome.org> * src/mlview-node-editor.c, src/mlview-tree-view.c: applied a patch from Nicolas Centa<happypeng@free.fr> which provides the infrastructure to have several tree editor widgets in the current MlViewTreeView editing view. 2003-10-21 Dodji Seketeli <dodji@gnome.org> * schemas/Makefile.am: use $(GCONFTOOL) instead of gconftool. * configure.in: added tests for gconf2 >= 2.4.0 2003-10-20 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: (mlview_tree_editor2_edit_xml_doc): fixed bug http://bugzilla.gnome.org/show_bug.cgi?id=124898 . * src/mlview-parsing-utils.c: started to go throughout the code and replace any reference to the old settings management code and replace it by the new api. * src/mlview-app-context.c: went forward in the coding of the gconf based settings management api. added. (mlview_app_context_load_gconf_settings ()): added this to bulk load the gconf settings and populate the struct MlViewAppSettings. (mlview_app_context_get_settings ()): make sure to call the mlview_app_context_load_gconf_settings() at init time. * schemas/mlview.schemas: added the "validation-is-on" key to the gconf schemas. 2003-10-19 Dodji Seketeli <dodji@gnome.org> * src/mlview-app-context.[ch]: defined an MlViewAppSettings data structure that holds the application settings. These settings are kept uptodate via a gconf based mecanism. The application can then access this read-only settings data structure from the application context. The basics are in place. * entities-catalog/gconf/gconf.dtd: added the gconf dtd in the distribution for testing purposes. This helps because I use mlview to edit gconf schemas :) * Makefile.am,configure.in, schemas/Makefile.am,schemas/mlview.schemas: added an initial trivial gconf schema in the distribution. This is the starting point of the rewrite of the settings management of mlview based on gconf. * src/*.[ch]: cleaned up the header file included, removing the old gnome.h and replacing it by more suitable header files. * src/Makefile.am: removed dead code and (re)define the ENABLE_NLS macro to resurect the i18n. 2003-10-18 Dodji Seketeli <dodji@gnome.org> * src/mlview-attrs-editor.c: (mlview_attrs_editor_insert_attribute ()) bugfix: add an association "row reference"/xmlAttr * when adding a new xmlAttr into the editor. 2003-10-18 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.[ch]: (mlview_utils_tree_path_string_to_iter) added this helper function. * src/mlview-ns-editor.c: (mlview_ns_editor_clear) fixed a cut'n paste silly bug. * src/mlview-attrs-editor.c: more debuging made this widget work. 2003-10-16 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: (xml_doc_node_attribute_removed_cb) fixed a typo that was preventing this function to complete correctly. * src/mlview-attrs-editor.c: heavy debugging of the new attribute editor widget ... * src/mlview-xml-document.[ch]: added a "node-attribute-added" signal and made the mlview_xml_document_set_attribute() emit when necessary. * src/mlview-attrs-editor.[ch]: went forward in modifying this widget to make behave like the MlViewNSEditor. 2003-10-14 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: (mlview_tree_editor2_update_sibling_node_inserted) When a node is inserted, expand it before selecting it. * src/mlview-node-editor.c: (mlview_node_editor_name_changed_cb ()), (mlview_node_editor_build_xml_doc_node_view()): made sure the we set the new text node content only when the editing widget looses focus. This was an annoying bug. * src/mlview-editor.c: (mlview_editor_add_xml_document_view ()): resised the tree view a bit. * src/mlview-attrs-editor.c: started to make this look and behave like the ns editor. A rather big rewritte will happen here. * short-term-todo.xml: udpated this ... so many things to do :-\ * src/mlview-tree-editor2.c: (xml_doc_node_namespace_removed_cb ()): fixed a bug that prevented this to work. * src/mlview-ns-editor.c: (ns_uri_cell_edited_cb ()): fixed a bug here. Added the ability to remove a namespace where the uri cell is empty. (mlview_ns_editor_update_ns_removed()) made this work. 2003-10-12 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: (xml_doc_searched_node_found_cb) fixed the typo that broke the "search node" feature. * src/mlview-app.c: (search_cb) put the right action.name here so that the view knows what we are talking about. * long-term-todo.xml, short-term-todo.xml: added this two todo files in docbook format. * TODO: removed this file. * docs/mlview-internals/src/contextual-menu-design.xml: added this draft of the new contextual menu design. * src/mlview-utils.[ch]: (mlview_utils_gtk_tree_view_expand_row_to_depth2) new method added. * src/mlview-tree-view.c: fixed a small bug due to a bad returned valued typing. * src/mlview-tree-editor2.c: (mlview_tree_editor2_update_child_node_added ()) (mlview_tree_editor2_update_sibling_node_inserted ()) When a new node is added, expand its subtree to the leaves and select it. (mlview_tree_editor2_update_node_cut ()) Now the title of start tag column of the treeview is properly set to the uri of the entity being edited. * src/mlview-node-editor.c: (mlview_node_editor_content_changed_cb ()) changed this to make it called only when the node textview looses the focus. This was a really annoying bug. 2003-10-11 Dodji Seketeli <dodji@gnome.org> * src/mlview-file-descriptor.[ch]: applied a patch from Simon Barner<barner@gmx.de> that fixes compilation error on BSD. 2003-10-11 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.[ch]: (mlview_xml_document_set_ns ()): new method added. * src/mlview-tree-view.c: (mlview_tree_view_dispose ()): fixed two crashers here. * src/mlview-tree-editor2.c: (xml_doc_node_namespace_changed_cb ()): fixed a bad assert typo here. * src/mlview-ns-editor.c: added ns_prefix_cell_edited_cb() and connect it to "edited" signal of the namespace prefix cell. This enables proper edition of Ns prefix. * src/mlview-node-editor.c: Made sure to block signals when modifing the GtkTextBuffer(s) that hold the content xml nodes. This prevents from infinite loops. * src/mlview-attrs-editor.c: (mlview_attrs_editor_disconnect_from_doc ()): fixed a bad assert here. 2003-10-09 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_create_ns ()) made this a bit more reliable especially when the user wants to add a namespace with an empty prefix. * mlview-tree-view.c: basically debugged this. It works a bit better now. Also provided dispose/finalize methods in lieu of the former destroy method. * src/mlview-tree-editor2.c: (xml_doc_node_namespace_added_cb ()) fixed some typos again <grin/>. * src/mlview-ns-editor.c: (mlview_ns_editor_build_gui ()) made sure to connect the ns_uri_cell_edited_cb() to the "edited" signal emited by the ns prefix cell renderer. (mlview_ns_editor_edit_namespace ()) fixed a small typo. * mlview_node_editor_connect_to_doc: fixed an annoying typo here. * src/mlview-node-editor.[hc]: made sure not to use the private keyword for an identifier. Let's be cool with C++ compilers and they'll be cool with us. 2003-10-07 Dodji Seketeli <dodji@gnome.org> * src/mlview-ns-editor.c: (mlview_ns_editor_edit_node_visible_namespaces ()): make sure to call mview_ns_editor_clear() here. (mlview_ns_editor_clear ()): make sure to remove entries from the ns_row hash table at widget clear time. * src/mlview-editor.c: made sure to reset the right panel proportions. * src/mlview-xml-document.c: fixed some signal creation interface problems. Made sure to emit the "node-changed" signal whenever the node changes. * src/mlview-utils.c: removed any reference to deprecated gtk1 widgets. * src/mlview-tree-editor2.c: made this _truly_ MVC. * src/mlview-ns-editor.c: went forward in this. Implemented the new list widget concept proposed by Nicolas Centa. * src/mlview-node-editor.c: transformed this into a native gtk2 widget. removed all the ifdefs that I put here during the porting. * src/mlview-editor.c: replaced every reference to the old MlViewXMLDocTreeView widget by references to the new MlViewTreeView widget. Remove all hardcoded calls to edition actions exposed by views. Now, MlViewEditor::execute_action() is just a proxy to the MlViewIView::exectute_action() call. * src/mlview-attrs-editor.c: made this truly MVC now. Now, this widget directly connects to signal emitted by MlViewXMLDocument and updates itselft independantly from its container widget. * src/mlview-app.c: replaced the calls to the editing action methods present in MlViewEditor by calls to the new MlViewEditor::execute_action (MlViewAction *) ; * src/Makefile.am: added mlview-action.h, mlview-iview.[ch], mlview-view-adapter.[ch], mlview-tree-view.[ch] to the project. Removed mlview-tree-editor.[ch], mlview-xml-doc-tree-view.[ch], mlview-xml-document-view.[ch] from the project. * all tagged the project as STABLE_10_7_2003 just before applying my huge patch that breaks everything. 2003-09-25 Dodji Seketeli <dodji@gnome.org> * src/mlview-ns-editor.c: (mlview_ns_editor_update_ns_removed) coded this. * src/mlview-node-editor.c: integrated the new MlViewNSEditor sketch here. 2003-09-25 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.[ch]: added (mlview_xml_document_remove_ns) to remove namespaces. * src/mlview-ns-editor.c: gone forward. 2003-09-24 Gael CHAMOULAUD (strider) <strider@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_save): Fixed BUG 119009 2003-09-23 Dodji Seketeli <dodji@gnome.org> * src/mlview-ns-editor.c: fixed a small bug. (mlview_ns_editor_edit_node_visible_namespaces) added this new function. * src/mlview-xml-document.[ch]: added "node-namespace-added", "node-namespace-changed" and "node-namespace" signals. Also added mlview_xml_document_create_ns(). * src/mlview-ns-editor.[ch]: a _lot_ of bits pushed in this toward the gtk2 rewrite. * src/mlview-namespace-editor.c: cleaned up some signal creation interfaces. Uses mlview-marshal.h. * src/*.[ch]: removed copyright information from the files and centralized it in the COPYRIGHT file. Updating is much easier this way. * Makefile.am: Added a COPYRIGHT file where all the copyright information is centralized. * AUTHORS: added Nicolas Centa here. 2003-09-20 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: applied a patch from Nicolas Centa to fix the glade file lookup path. * src/main.c,src/mlview-app.c: applied a patch that fixes the command line parsing, handles the program init much better and fixes the toolbar rendering issues. This patch was submited by Nicolas Centa. 2003-09-16 Dodji Seketeli <dodji@gnome.org> * src/mlview-namespace-editor.[hc]: started to write the interfaces of the future new gtk2 based namespace editor. * src/Makefile.am: added the interfaces of the new MlViewNSEditor code. 2003-09-16 Dodji Seketeli <dodji@gnome.org> * src/mlview-node-editor.c: make the new native gtk+2 MlViewAttrsEditor widget the default attribute editor, thus deprecating the MlViewAttributesList widget. woohoo :) * src/mlview-attrs-editor.c: (hash_table_free_row_ref): fixed the prototype of this function which was wrong. (row_selected_cb): sometimes, this function can be called in such conditions that gtk_tree_selection_get_selected() fails. Consider this as an error case, not an exception one. get out silently. (mlview_attrs_editor_remove_attribute): fixed a silly bug here. Finally got this to work. * configure.in: added the -ansi compiler option when we are in the "Dodji environment". * src/mlview-app.c: fixed some ansi C errors. * src/main.c: fixed some ansi C errors. * src/mlview-settings-builder.c: fixed some ansi C errors. * src/mlview-tree-editor.c: fixed some ansi C errors. 2003-09-13 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_class_init): Fixed a couple of signal creation code here. Most problems were due to my calling of bad marshaling functions with bad parameters. (mlview_xml_document_set_attribute_name): Emit the "node-attribute-name-changed" signal, not the "file-path-changed" one. * src/mlview-attrs-editor.[ch]: made this new widget start to work so so. 2003-09-12 Dodji Seketeli <dodji@gnome.org> * configure.in: added russian translation sent by Vitaly Lipatov<LAV@VL3143.spb.edu> . 2003-09-10 Dodji Seketeli <dodji@gnome.org> * src/mlview-node-editor.[ch]: started to replace the old gtk1 based MlViewAttributesList widget by a new (not yet working) gtk2 based MlViewAttrsEditor. This replacement is protected/enabled by the macro WITH_ATTRS_EDITOR. * src/mlview-attrs-editor.[ch]: fixed a stupid compilation breakage <grin/>. 2003-09-10 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: (mlview_xml_document_class_init) fixed some bad signal creation parameters, added a new "node-attribute-removed" signal. (mlview_xml_document_remove_attribute) this must emit "node-attribute-removed" signal, not "node-attribute-name-changed". * src/mlview-attrs-editor.[ch]: got this to compile for the first time. * src/Makefile.am: added src/mlview-attrs-editor.c to compiled filed. 2003-09-08 Dodji Seketeli <dodji@gnome.org> * src/mlview-attrs-editor.[ch]: added more code here to for the re-write over gtk2. * src/mlview-xml-document.[ch] : changed the signature of mlview_xml_document_set_attribute() i.e, make it return an xmlAttr * when upon successfull completion. This is used by mlview-attrs-editor.c 2003-09-07 Dodji Seketeli <dodji@gnome.org> * src/mlview-attrs-editor.[ch]: (name_edit_entry_changed_cb, value_edit_entry_changed_cb): rewrote these functions for gtk2 and better MVC compliance. (mlview_attrs_editor_new, mlview_attrs_editor_set_editable): rewrote this for for gtk2. (mlview_attrs_editor_get_tree_view): added this. 2003-09-06 Dodji Seketeli <dodji@gnome.org> * Makefile.am, mlview-mdk.spec.in: an even better rpm packaging now. Created a particular spec file for mdk. Another one is to come for redhat. 2003-09-06 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: cleaned up the i18n init a bit. * src/mlview-app.c, mlview-parsing-utils.c, src/mlview-preferences.c, src/mlview-tree-editor2.c: use gnome_program_locate_file() to locate resources in $(datadir). * src/mlview-app-context.c (mlview_app_context_set_window_icon): use gnome_program_locate_file() to locate resources in $(datadir) This is much cleaner than the way we used to handle this before. * src/main.c: use gnome_program_init() instead of the old gnome_init_with_popt_table(). * src/Makefile.am: cleanup. * pixmaps/Makefile.am: standardized the distribution of pixmaps and make them go in $(datadir)/pixmaps like the how the other gnome applications do. * mlview.desktop.in: created this file instead of generating the mlview.desktop in a makefile. Thanks to Christophe Merlet who spotted this. This fixes http://bugzilla.gnome.org/show_bug.cgi?id=121485. * configure.in, ui/Makefile.am: big cleanup. Support the usage of the DESTDIR variable. bug http://bugzilla.gnome.org/show_bug.cgi?id=121482. * Makefile.am: big cleanup here. Handle the new mlview.desktop file smoothly. 2003-09-04 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.[ch]: added the emission of the "attribute-value-changed" signal and cleanup the prototype of the "attribute-name-changed" signal callback. Made sure mlview_xml_document_set_attribute() send both signals when it's relevant. Coded the mlview_xml_document_set_attribute_name() and make sure it sends the "attribute-name-changed" signal. 2003-09-04 Dodji Seketeli <dodji@gnome.org> * mlview.spec.in: more cleanups and fixes. * Makefile.am: fixed the rpm generation & add an entry to the desktop menu. 2003-09-03 Dodji Seketeli <dodji@gnome.org> * mlview.spec.in: cleanup and fixes. * Makefile.am, configure.in: don't install all the crap that is in entity-catalog anymore. * src/mlview-xml-document.c: planing to add mlview_xml_document_set_attribute_name() to support the the writting of of mlview-attrs-editor.[ch]. * src/mlview-utils.h: just added a type fo enum MlViewStatus * src/mlview-attrs-editor.[ch]: more bits pushed into this toward the rewrite over gtk2. 2003-09-01 Metin Amiroff <metin@karegen.com> configure.in: Added "az" in ALL_LINGUAS. 2003-09-01 Danilo Å egan <dsegan@gmx.net> * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS. 2003-08-31 Dodji Seketeli <dodji@gnome.org> * src/mlview-attrs-editor.[ch]: initial import. The start of the rewrite of the MlViewAttributesList widget over gtk2 * src/mlview-tree-editor2.c (mlview_tree_editor2_class_ini): fixed some smallish typo. * src/mlview-utils.c (mlview_utils_parse_reference): fixed a smallish typo that made some compiler cry. 2003-08-30 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c (mlview_xml_document_set_node_content) : added support of utf8 encoding here. * src/mlview-tree-editor2.c: added support of "on tree edition" for text nodes also. * src/Makefile.am: replaced *.h by the real name of each header file. This makes make distcheck happy. Thank to Abel Cheung for spotting this. * docs/mlview-internals/src/mlview-internals.xml: updated this to test mlview a bit. * configure.in bumped version name to 0.6.0 * src/mlview-xml-document.c: (mlview_xml_document_synch_attributes): debuged this and made it work. * src/mlview-utils.c: (mlview_utils_parse_start_tag): debuged this function so that it can actually parse a real xml start tag. * src/mlview-tree-editor2.c (start_tag_cell_edited_cb): made sure the code that enables edition of attributes is plugged. 2003-08-29 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: added mlview_xml_document_set_attribute(), mlview_xml_document_remove_attribute(), mlview_xml_document_synch_attributes() to help implement the "in tree edition" feature. * src/mlview-utils.c: mode helper function to support the "in tree edition" feature. * src/mlview-tree-editor2.c (start_tag_cell_edited_cb): made this ready to call mlview_xml_document_synch_attributes () to update attributes. * src/mlview-marshal.list: added a new VOID:POINTER,POINTER,POINTER marshaller. * src/mlview-attributes-list.[ch]: reindented this a bit. removed any reference to the 'private' keywork to stay ecological with respect to c++ compilers. 2003-08-28 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: made the start tag parsing code work. * src/mlview-tree-editor2.c: wired/enabled the "edition in tree" functionality by default. 2003-08-27 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.[ch]: added the ability to edit the element start tags directly in the tree. I Basically just "wired" the process. I Still have to make all this work. * src/mlview-utils.[ch]: added more helper functions to support the "on tree" edition of the element start tags. This is still a design sketch. 2003-08-26 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.[ch]: started to write a bunch of helper functions to support the "in tree edition" feature. Basically, these functions are there to help parse the start tags the user edits. Nothing is working yet, but the framework is coming along. 2003-08-23 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.c: revisited the search backend code. Now, it seems fully functionnal. * src/mlview-tree-editor2.c: some heavy bits pushed here to provide an experimental support of drag'n drop. * src/Makefile.am: moved here the definition of PACKAGE_LOCALE_DIR and PACKAGE_DATA_DIR. * config.h.in: removed PACKAGE_LOCALE_DIR, PACKAGE_DATA_DIR define it on the compilation command line in src/Makefile.am This was what has broken the i18n in the last days. 2003-08-19 Artur Flinta <aflinta@cvs.gnome.org> * configure.in: Added "pl" to ALL_LINGUAS. 2003-08-17 Dodji Seketeli <dodji@gnome.org> * ui/tree-view-find-dialog.glade: added a "prev" button to allow "backward search". * src/mlview-xml-document.c: pushed a lot of bits into this to support the search functionality. coded an mlview_xml_document_search2() function. This support forward/backward progressive search directly on the xml tree. * src/mlview-xml-doc-tree-view.c: fixed some warnings here. * src/mlview-utils.[ch]: added some string comparison functions: mlview_utils_strstr(), mlview_utils_strstr_ignore_case(), mlview_utils_str_equals_ignore_case(), mlview_utils_str_equals(). debugged the mlview_utils_gtk_tree_view_expand_row_to_depth() . * src/mlview-tree-editor2.c: wired the case insentive search. * src/mlview-namespace-editor.c: fixed some compiler warnings. * src/mlview-attributes-list.c: fixed some compiler warnings. * src/mlview-app.c: moved the "search" entry to the "edit" menu. 2003-08-15 Dodji Seketeli <dodji@gnome.org> * ui/tree-view-find-dialog.glade: updated this to remove support of the backward search for the moment. * src/mlview-xml-document.c: added mlview_xml_document_search() and its necessary helper function. This is is experimental and need some serious enhancement to perform backward search as well as descent progressive search. * src/mlview-xml-doc-tree-view.c: naming cleanup was needed here. Done. Added the searched_node_found_cb() callback to get notified when MlViewXMLDocument finds a node that matches the search criteria. * src/mlview-tree-editor2.c: fixed the search calling sequence Cleanup the search api somewhat. Removed support of upward search as this is not yet supported by MlViewXMLDocument. Added mlview_tree_editor2_select_node(). 2003-08-14 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-document.[ch]: fixed some compiler warnings. Moved the "search" related datatype here. * src/mlview-tree-editor2.[ch]: pushed a lot of bits into the new "search" coding task. Made a glade-2 based search dialog, managed data gathering and object lifecycle. * src/mlview-tree-editor.h: moved the types related to "search" in src/mlview-xml-document.h * src/mlview-preferences.c: removed a string from the list of translatable strings. * mlview_node_type_picker_set_title: fixed some compiler warnings. * src/mlview-node-editor.c: fixed some compiler warnings. * src/mlview-app.c: fixed some compiler warnings here. * configure.in,src/Makefile.am,config.h.in: removed the -D flags on the compilator commande line and put them in the config.h.in -> config.h instead. This makes a shorter command line and helps you figure out which configure time option you have compiled with. 2003-08-12 Gaël CHAMOULAUD <strider@gnome.org> * src/mlview-app.c: (display_about_dialog): Fixes bugzilla bug #119709 [http://bugzilla.gnome.org/show_bug.cgi?id=119709] - #119709: Please *don't* mark names and email addresses for translation. They shouldn't be translated anyway, and just introduce clutter and an unnecessary burden for translators. Additionally, having them marked for translation introduces a danger of having them actually "translated" by accident and/or misspelled. Thanks to Christian Rose <menthos@menthos.com>. 2003-08-11 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-doc-tree-view.c: + mlview_xml_doc_tree_view_cut_node(), mlview_xml_doc_tree_view_copy_node(), mlview_xml_doc_tree_view_paste_node_as_prev_sibling(): make these work. * src/mlview-tree-editor2.c: +nodeset_selected_cb(): handle the case when no node is selected. +mlview_tree_editor2_update_node_cut(): free the instance of gtkrowreference whenever a node gets cut and fixed an assert condition. * src/mlview-app.c: fixed the copyrights date. 2003-08-10 Dodji Seketeli <dodji@gnome.org> * src/mlview-app.c: changed static void go_url_home_cb () into static void go_url_home_cb (void) to fix some compiler warnings. * src/mlview-tree-editor2.c: + fixed the "insert sibling node" workflow in build_tree_model_from_xml_tree() + removed the use of g_object_unref() to destroy the instance of node type picker. Replaced it by gtk_widget_destroy(). This fixes some crashes I had. * src/mlview-node-type-picker.c: added mlview_node_type_picker_dispose() and mlview_node_type_picker_finalize() for a more convenient object destruction handling. Removed mlview_node_type_picker_destroy(). 2003-08-10 Gaël CHAMOULAUD (strider) <strider@gnome.org> * src/mlview-app.c: (go_url_home_cb): Added a link to go directly on the mlview website (http://www.mlview.org) 2003-08-10 Gaël CHAMOULAUD (strider) <strider@gnome.org> * po/ChangeLog: * po/ca.po: * po/cs.po: * po/es.po: * po/fr.po: * po/ja.po: * po/ml.po: * po/ms.po: * po/nl.po: * po/pt.po: * po/pt_BR.po: * po/sv.po: * src/mlview-app.c: (display_about_dialog): Added a small pixbuf for gnome-about widget and updated our email <dodji@mlview.org> & <strider@mlview.org> 2003-08-09 Hasbullah Bin Pit <sebol@ikhlas.com> * configure.in: Added 'ms' (Malay) to ALL_LINGUAS. * po/ms.po: Added Malay translation. 2003-08-09 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: fixed a crasher due to a bad handling of the object destruction process. This took adding proper mlview_tree_editor2_finalize() and mlview_tree_editor2_dispose(). Also fixed the leaks due to bad management of instances of GtkTreePath . * src/mlview-xml-doc-tree-view.[ch]: moved the #define TREE_EDITOR2 to the .h file. * src/mlview-tree-editor2.[ch]: heavy debugging. fixed some crashers. A lots of leaks remain due to improper management of tree_path and rowreference. 2003-08-07 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-doc-tree-view.[ch]: some big changes here. the porting over the MlViewTreeEditor2 widget compiles now. I still have to debug this and make it work. The ported widget is protected by #ifdef TREE_EDITOR2. * src/mlview-tree-editor2.[ch]: added mlview_tree_editor2_get_cur_sel_start(). 2003-08-05 Dodji Seketeli <dodji@gnome.org> * src/mlview-xml-doc-tree-view.c: started to migrate from the use of MlViewTreeEditor to MlViewTreeEditor2. This is protected by a #define for the time being. Anyway, nothing is visible still :-\. * src/mlview-tree-editor2.[ch]: documented the signal callbacks and removed the useless ones. * src/mlview-tree-editor.c: removed the useless signals. 2003-08-05 Gaël CHAMOULAUD (strider) <strider@gnome.org> * po/ca.po: * po/cs.po: * po/es.po: * po/fr.po: * po/ja.po: * po/nl.po: * po/pt.po: * po/pt_BR.po: * po/sv.po: * src/mlview-app.c: Fixes bugzilla bug #119008 [http://bugzilla.gnome.org/show_bug.cgi?id=119008] - #119008: mlview msgid includes non-ASCII character breaking gettext Unmarked "Copyright © 2002-2003 Dodji Seketeli, Gael Chamoulaud" string for translation Thanks to Christian Rose <menthos@menthos.com> 2003-08-05 Gaël CHAMOULAUD (strider) <strider@gnome.org> * po/ca.po: * po/cs.po: * po/es.po: * po/fr.po: * po/ja.po: * po/nl.po: * po/pt.po: * po/pt_BR.po: * po/sv.po: * ui/mlview-dtd-choice.glade: * ui/mlview-preferences.glade: Fixes bugzilla bug #119010 [http://bugzilla.gnome.org/show_bug.cgi?id=119010] - #119010: Remove unnecessary markup from glade messages in mlview Thanks to Christian Rose <menthos@menthos.com> 2003-08-05 Gaël CHAMOULAUD (strider) <strider@gnome.org> * po/ca.po: * po/cs.po: * po/es.po: * po/fr.po: * po/ja.po: * po/nl.po: * po/pt.po: * po/pt_BR.po: * po/sv.po: * src/mlview-node-editor.c: * src/mlview-settings-builder.c: * src/mlview-xml-doc-tree-view.c: * ui/mlview-preferences.glade: Fixes bugzilla bug #119169 [http://bugzilla.gnome.org/show_bug.cgi?id=119169] - #119169: Avoid trailing spaces in mlview messages Thanks to Christian Rose <menthos@menthos.com> 2003-08-04 Gaël CHAMOULAUD (strider) <strider@gnome.org> * po/ca.po: * po/cs.po: * po/es.po: * po/fr.po: * po/ja.po: * po/nl.po: * po/pt.po: * po/pt_BR.po: * po/sv.po: * src/mlview-attribute-picker.c: * src/mlview-editor.c: * src/mlview-parsing-utils.c: * src/mlview-settings-builder.c: * src/mlview-utils.c: * src/mlview-xml-document.c: * ui/mlview-dtd-choice.glade: * ui/mlview-preferences.glade: Fixes bugzilla bug #119011 and #119012 - #119011: Whitespace before punctuation in mlview messages - #119012: Missing "file" in mlview message 2003-08-04 Dodji Seketeli <dodji@gnome.org> * src/mlview-utils.c: coded a new mlview_utils_gtk_tree_view_expand_row_to_depth() that expands a row of a gtktreeview to a given depth. * src/mlview-tree-editor2.c: more code toward the MlViewTreeEditor rewrite. * src/mlview-tree-editor.c: re-indented this a bit. 2003-08-03 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.[ch]: ported/recoded a couple of functions for gtk2. * src/mlview-tree-editor.c (mlview_tree_editor_set_root_element): fixed a smallish harmless bug here. * src/mlview-node-type-picker.c: fixed compiler warnings here. * src/mlview-utils.c (mlview_utils_init_i18n): fixed the i18 init bug that was breaking the utf8 strings. The init is now calls bind_textdomain_codeset (PACKAGE, "UTF-8"). Thanks to Christophe Merlet<redfox@redfoxcenter.org> for spoting thing. * src/mlview-app.c: removed the pixbuf from the about dialog because it was too big. The about dialog now has a human size ;) This has been reported by Christophe Merlet<redfox@redfoxcenter.org> 2003-08-02 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: more code pushed into this. * src/mlview-app.c, src/mlview-attributes-list.c, src/mlview-editor.c, src/mlview-namespace-editor.c, src/mlview-node-type-picker.c, src/mlview-parsing-utils.c, src/mlview-preferences.c, src/mlview-tree-editor.c: updated the calls to mlview_app_context_set_window_icon() to comply with the new prototype of this function. * src/mlview-file-selection.c: fixed a gcc warning. * mlview-indent: added this new indentation script that indents the mlview sources the right way. * src/*.[ch]: run the mlview-indent script on all the files. they now follow the gnome coding style as specified at http://developer.gnome.org/doc/guides/programming-guidelines/code-style.html. * src/mlview-attribute-picker.c:applied a patch from Fabrice Plard to fixed a crash due to an uninitialized variable. * src/mlview-app-context.c (mlview_app_context_set_window_icon): applied a patch from Fabrice Plard to fixe this and make it work under gnome2. 2003-08-01 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.[ch]: pushed more code into the rewrite of the MlViewTreeEditor widget. I am still damn far from the target, but thinks are coming along nicely. * src/mlview-app-context.[ch]: make this properly inherit GObject instead of GtkObject. 2003-07-31 GAEL CHAMOULAUD (strider) <strider@gnome.org> * po/ca.po: update po files with new strings * po/cs.po: update po files with new strings * po/es.po: update po files with new strings * po/fr.po: update po files with new strings * po/ja.po: update po files with new strings * po/nl.po: update po files with new strings * po/pt.po: update po files with new strings * po/pt_BR.po: update po files with new strings * po/sv.po: update po files with new strings 2003-07-31 Dodji Seketeli <dodji@gnome.org> * src/*.c: Applied a patch from Fabrice Plat <fabriceplat@yahoo.fr> to replace all the GnomeDialog used in mlview by GtkDialog. This is a very usefull patch as GnomeDialog is deprecated in gnome2. Dodji. 2003-07-27 GAEL CHAMOULAUD (strider) <strider@gnome.org> * src/mlview-parsing-utils.c: Used mlview_utils_glade_widget_is_unable method * src/mlview-preferences.c: Used mlview_utils_glade_widget_is_unable method * src/mlview-utils.c: Coded a new method (mlview_utils_glade_widget_is_unable): * src/mlview-utils.h: Coded a new method (mlview_utils_glade_widget_is_unable): 2003-07-27 Gaël CHAMOULAUD (strider) <strider@gnome.org> * src/mlview-parsing-utils.c: (mlview_parsing_utils_ask_for_DTD_change_and_validation): Used a new GtkDialog widget for resolve external entity * ui/mlview-dtd-choice.glade: added an other GtkDialog Widget 2003-07-27 Gaël CHAMOULAUD (strider) <strider@gnome.org> * src/mlview-parsing-utils.c: (mlview_parsing_utils_ask_for_DTD_change_and_validation): Changed the gnome-dialog (is deprecated) by a gtk-dialog with libglade * src/mlview-preferences.c: small clean up * ui/Makefile.am: Added a new glade file for dtd change and validation dialog * ui/mlview-preferences.glade: Added a new glade file for dtd change and validation dialog 2003-07-27 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c:cleaned up the gtk1 signal legacy and made it gtk2 compliant. Started to code nodeset_selected_cb() function. Going toward the coding of all the functions needed to have this widget embedded into the MlViewXMlDocTreeView widget. 2003-07-26 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: when forward in the rewrite of this for gtk2 compliance. Started to think about how to associate a treestore row to an xmlNode * at a very low cost. * src/mlview-parsing-utils.c: removed some useless/staled function declarations/definitions. * src/mlview-preferences.c: fixed some compile time warnings * src/mlview-attributes-list.c: fixed some compile time warnings. 2003-07-26 Dodji Seketeli <dodji@gnome.org> * src/mlview-tree-editor2.c: started this new widget which is basically the port of mlview-tree-editor.c over gtk2. It is pretty useless for the time being but we gona be able to test it soon. * src/mlview-tree-editor.c: some reindentation was needed here. * src/Makefile.am: added the mlview-tree-editor2.c file in the list of files to be compiled. 2003-07-21 Gaël CHAMOULAUD (strider) <strider@gnome.org> * src/mlview-app.c: (edit_settings_cb): * src/mlview-preferences.c: (mlview_preferences_dialog_show): Fetched the mlview context for the icon widget's settings. * src/mlview-preferences.h: * ui/mlview-preferences.glade: small clean up 2003-07-21 Gaël CHAMOULAUD (strider) <strider@gnome.org> * src/mlview-preferences.c: Made a few modification 2003-07-20 Gaël CHAMOULAUD (strider) <strider@gnome.org> * Makefile.am: * configure.in: added libglade checking * src/Makefile.am: * src/mlview-app.c: (edit_settings_cb): * src/mlview-preferences.c: (column_set_func_pixbuf), (mlview_preferences_unload_current_page), (mlview_preferences_load_page), (mlview_preferences_change_page_cb), (mlview_preferences_icon_list), (mlview_preferences_dialog_response_cb), (mlview_preferences_dialog_show): a new settings interface made with libglade * src/mlview-preferences.h: * ui/Makefile.am: * ui/mlview-preferences.glade: 2003-07-18 Dodji <dodji@gnome.org> * src/mlview-app.c: removed the old buggy application settings code/widget. Strider<strider@freespiders.org> is writing a new settings widget. * src/mlview-parsing-utils.c (load_xml_document_from_local_file ): cleanup. (mlview_external_entity_loader): if the external entity URI hasn't been resolved through the normal catalog, try to load the entity from the disk if it is a local URI. Give libxml2 the correct parsing context it expects. 2003-07-13 dodji <dodji@gnome.org> * src/mlview-editor.c: fixed bug http://bugzilla.gnome.org/show_bug.cgi?id=117152. 2003-07-11 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c: heavily revisited the loading sequence of an xml document. Libxml2's sax userData field is used by the sax handlers which build the DOM so there is no place left for mlview to store it's context. I removed the ugly hack I did before and replaced it by a global variable to store the mlview app context. This is still ugly but less than the previous implementation. This is still a work in progress. * src/mlview-app-context.c, src/mlview-app.c: make sure MlViewAppContext correctly ihnerits GObject and not GtkObject anymore. Remove all the call to the GTK_OBJECT_XX macros on instances of MlViewAppContext. * src/main.c: use mlview_utils_init()/mlview_utils_cleanup(). * src/mlview-utils.[ch]: added new mlview_utils_init()/mlview_utils_cleanup() to init/cleanup libxml catalog stuffs. In the future, these functions will be the place to put global mlview init/cleanup stuffs. 2003-07-09 Dodji Seketeli * src/Makefile.am: added the marshall.[ch] in the build system. * all: made a lot gtk2 compilance and stability fixes. 2003-07-06 Dodji <dodji@gnome.org> * src/mlview-editor.c: gnome2 port modifications. Fixed some compiler warnings. * all-files: merged gnome2-port branch into the HEAD. fixed a lot of compiler warnings. 2003-06-22 Jordi Mallach <jordi@sindominio.net> * configure.in (ALL_LINGUAS): Added "ca" (Catalan). 2003-06-01 Miloslav Trmac <mitr@volny.cz> * configure.in: Added "cs" (Czech) to ALL_LINGUAS. 2003-04-17 Christian Rose <menthos@menthos.com> * configure.in: Added "sv" to ALL_LINGUAS. 2003-04-16 Duarte Loreto <happyguy_pt@hotmail.com> * configure.in: Added "pt" (Portuguese) to ALL_LINGUAS. 2003-03-05 Gaël Chamoulaud <strider@freespiders.org> * configure.in: fix a configure bug. Make sure to properly check the libxml2 versions. 2003-06-28 Gaël Chamoulaud (strider) <strider@freespiders.org> * pixmaps/Makefile.am: Added mlview-app-icon.png and clean up Makefile.am * src/mlview-app.c (display_about_dialog): fixed the display of the mlview's logo. Tests if the about window is present. 2003-06-28 Gaël Chamoulaud (strider) <strider@freespiders.org> * src/mlview-xml-doc-tree-view.c: Modified the main UI 2003-06-28 Gaël Chamoulaud (strider) <strider@freespiders.org> * configure.in : Made a big cleanup. 2003-06-22 Gaël Chamoulaud (strider) <strider@freespiders.org> * configure.in (ALL_LINGUAS): Added "ca" (Catalan) Thanks to Jordim Mallach === gnome-mlview 0.5.0 === 2003-06-15 Gaêl Chamoulaud (strider) <strider@freespiders.org> * configure.in: bump version # to 0.5.O 2003-04-29 Evandro Fernandes Giovanini <evandrofg@ig.com.br> * configure.in(ALL_LINGUAS): Added "pt_BR" (Brazilian Portuguese). 2003-04-28 Pablo Gonzalo del Campo <pablodc@bigfoot.com> * configure.in: Added "es" to ALL_LINGUAS. 2003-04-17 Christian Rose <menthos@menthos.com> * configure.in: Added "sv" to ALL_LINGUAS. 2003-04-16 Duarte Loreto <happyguy_pt@hotmail.com> * configure.in: Added "pt" (Portuguese) to ALL_LINGUAS. 2003-03-17 Gaël Chamoulaud <strider@freespiders.org> * src/mlview-app.c (g_menu_edit_tree): Added Stock button (g_toolbar): Added a settings button on toolbar 2003-03-16 Gaël Chamoulaud <strider@freespiders.org> * all-files: big cleanup 2003-03-13 Gaël Chamoulaud <strider@freespiders.org> * src/mlview-app.c (display_about_dialog): Modified method for translation 2003-03-09 Gaël Chamoulaud <strider@freespiders.org> * src/mlview-file-selection.c (mlview_file_selection_mark_destroy): change the interface of mlview_file_selection_mark_destroy () signal emitted by the GtkWidget MlviewFileSelection. 2003-02-22 Dodji <dodji@gnome.org> * src/mlview-file-selection.c: change the interface of mlview_file_selection_closed_callback () which is a callback to connect to the "delete-event" signal emitted by the GtkWidget MlViewFileSelection. Took also care to call gtk_widget_hide() to properly hide the widget when the user clicks on the destroy cross of the MlViewFileSelection window. 2003-02-14 Gaël Chamoulaud (Strider) <strider@freespiders.org> * src/Makefile.am (LDADD): fix a Makefile bug ! 2003-02-11 Gaël Chamoulaud (Strider) <strider@freespiders.org> * configure.in: Fix the autoconf Warning (AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"GETTEXT_PACKAGE",[fix])) * accconfig.h: deprecated. It has been deleted ! 2003-02-09 Dodji <dodji@gnome.org> * all-files: first version of a gnome2 port by strider <the_strider@freespiders.org>. Yeepy !!!. 2003-01-14 gettextize <bug-gnu-gettext@gnu.org> * Makefile.am (SUBDIRS): Add m4. (SUBDIRS): Remove intl. (ACLOCAL_AMFLAGS): New variable. (EXTRA_DIST): Add config.rpath. * configure.in (AC_OUTPUT): Add m4/Makefile. 2002-12-27 dodji <dodji@gnome.org> * configure.in: made a big cleanup. Made sure autoconf 2.5x must be used. Refactored the version management and gnome libs checking. * Makefile.am (EXTRA_DIST): added the mlview-internals.xml doc in the distro. 2002-12-17 dodji <dodji@gnome.org> * configure.in (REQUIRED_MINOR): fixed a configure bug. Make sure to properly check the libxml2 versions. The bug was reported by Gael Chamoulaud <the_strider@parinux.org> 2002-12-03 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c (load_xml_document_from_local_file): applied the intial patch of Pierre Barbier de Reuille to support gzipped loading and saving of gzipped files. * configure.in: update to check the presence of zlib. * src/Makefile.am (libmlview_la_LDFLAGS): updated the makefile to make the versioning of the library comply with gun libtools rules. * src/mlview-utils.c (mlview_utils_set_window_deco): Transformed the "is window realized" assert into a simple test. * src/mlview-editor.c (mlview_editor_close_xml_document_without_saving): bugfix: handle correctly the NULLing of the current view pointer. 2002-11-16 dodji <dodji@gnome.org> * src/mlview-editor.c (mlview_editor_remove_xml_document_view): fixed an illegal read error thanks to valgrind. 2002-11-14 dodji <dodji@gnome.org> * src/mlview-editor.c (mlview_editor_save_xml_document_as): bugfix: when doing save as, update the reference to the new file path and remove the reference to the old one. * src/mlview-xml-document.c (mlview_xml_document_save): bugfix: notify the save only if it succeeds. * src/mlview-utils.c (mlview_utils_set_window_deco): Added this function to set the icon of the windows of mlview. I have to make sure this function is used everywhere it is needed. * src/mlview-app-context.c (mlview_app_context_error): made this function use the new mlview_utils_display_error_dialog() instead of gnome_app_error(). * src/mlview-utils.c (mlview_utils_display_error_dialog): added this function to wrap error messages in a GtkText. That way, MlView won't display ultra long error message boxes anymore. I still have to make sure this function is used anywhere it is needed in the code. 2002-11-10 dodji <dodji@gnome.org> * src/mlview-app-context.c (mlview_app_context_destroy): fixed a memleak by destroying the global file selection widget. * src/mlview-parsing-utils.c (mlview_parsing_utils_load_a_dtd): * src/mlview-parsing-utils.c (load_xml_document_from_local_file): * src/mlview-settings-management.c (mlview_settings_manager_load_settings_from_disk): fixed memleaks by calling xmlCleanupParsrer each time we parse a file. * src/mlview-settings-builder.c: fixed a memleak. 2002-11-07 dodji <dodji@gnome.org> * src/mlview-xml-document.c (mlview_xml_document_destroy): fixed some memleaks. 2002-11-06 dodji <dodji@gnome.org> * src/mlview-tree-editor.c (build_ctree_from_xml_tree): fixed a stupid memory leak bug. * configure.in: updated the version number. Made sure to test the presence of libxml2 2.4.26 * Makefile.am (uninstall-local): made sure the uninstall does not stop if the rm fails. * src/mlview-attributes-list.c: fixed a mem leak bug. 2002-11-03 dodji <dodji@gnome.org> * src/mlview-xml-document.c (mlview_xml_document_save): Modified the signature and the behaviour of this function. I've also removed the mlview_xml_document_save_as function. Now, only mlview_xml_document_save() does the job of saving the document. I have also provided this function with facilities to warn the user on each attempt to overwrite an existing file. * src/mlview-editor.c (mlview_editor_save_xml_document_as): The update of the view name is made here anymore. It is made in mlview_xml_doc_tree_view_set_xml_document_path() instead. 2002-11-02 dodji <dodji@gnome.org> * src/mlview-editor.c (mlview_editor_open_local_xml_document_interactive): * src/mlview-editor.c (mlview_editor_save_xml_document_as_interactive): * src/mlview-editor.c (mlview_editor_save_and_close_xml_document): * src/mlview-editor.c (mlview_parsing_utils_let_user_choose_a_dtd): strduped the result of gtk_file_selection_get_filename() to avoid side effects. 2002-10-31 dodji <dodji@gnome.org> * src/mlview-editor.c (mlview_editor_create_new_xml_document): started to fix a bug reported by Pierre-Paul Lavoie<ppl@nbnet.nb.ca>: the children list of the root node was not automatically built so the xmlValidGetValidElements() function called on the root element was not working. This is due to how the xmlValidGetValidElements is coded: if the current element node is not valid, it does not return the list of it valid feasible elements. 2002-10-26 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c (mlview_parsing_utils_validate_dtd): fixed a crash bug: replaced the call to xmlValidateDocument() by xmlValidateDtd(). * src/mlview-parsing-utils.c (mlview_parsing_utils_build_attribute_value_set ): fixed a crash bug: the attributes desc of the DTD hold a dangling pointer to a "doc". So One must neve reference this pointer. To access the xml doc from the attribute desc, one should instead use parent->doc instead. This is what I have done. 2002-10-24 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c (custom_xmlSAXParseDTD): fixed a leak and prevent a memory corruption. To prevent the memory corruption, (the double free bug of the 2002-10-22) I have coded and used the method mlview_parser_ctxt_update_real_context() . 2002-10-22 dodji <dodji@gnome.org> * src/mlview-app-context.c (mlview_app_context_destroy): fixed a memory leak. * src/mlview-parsing-utils.c (custom_xmlSAXParseDTD): fixed a double free bugs. * src/mlview-tree-editor.c (node_to_start_tag): fixed some memory pbs spotted by valgrind. 2002-09-18 dodji <dodji@gnome.org> * src/mlview-node-editor.c: started to work on the following feature: provide facility to choose the encoding of the saved xml file. I have just started to code some few functions: mlview_node_editor_get_available_encodings () mlview_node_editor_add_supported_encoding () mlview_node_editor_del_supported_encoding () mlview_node_editor_ref_available_encodings () mlview_node_editor_unref_available_encodings () I still have to go forward with this. (mlview_node_editor_unref_available_encodings): fixed another silly bug... humm... I am too tired this night. It's time to go to bed. * src/mlview-tree-editor.c (node_to_start_tag): fixed a silly bug. 2002-09-16 dodji <dodji@gnome.org> * src/mlview-node-type-picker.c: (mlview_node_type_picker_clear_node_type_choice_list): Fixed a minor bug: made sure to block the signal emission before clearing the node type picker. Also made sure to restore it before returning. * src/mlview-node-editor.c: (mlview_node_editor_xml_element_node_view_edit_xml_node): (mlview_node_editor_xml_text_node_view_edit_xml_node): (mlview_node_editor_xml_comment_node_view_edit_xml_node): (mlview_node_editor_xml_cdata_section_node_view_edit_xml_node): (mlview_node_editor_xml_pi_node_view_edit_xml_node): (mlview_node_editor_xml_pi_node_view_edit_xml_node): (mlview_node_editor_name_changed_cb): (mlview_node_editor_content_changed_cb): made all these function isolat1 aware. I've just made them use the isolat1 aware function of mlview-xml-document.c and mlview-utils.c. * src/mlview-xml-document.c : modified the signature of the following functions to be able to choose wether if they should emit signals or not: mlview_xml_document_add_child_node (), mlview_xml_document_cut_node (), mlview_xml_document_insert_prev_sibling_node (), mlview_xml_document_insert_next_sibling_node (), mlview_xml_document_paste_node_as_child (), mlview_xml_document_set_node_content (), mlview_xml_document_set_node_name () . Of course, modifying these functions implied modifying all the code that was calling'em. I've debugged the following isolatin1 aware functions: mlview_xml_document_set_node_name (), mlview_xml_document_node_get_name (), mlview_xml_document_node_get_fqn_len_as_isolat1 (), mlview_xml_document_node_get_fqn (), mlview_xml_document_node_get_content (), mlview_xml_document_set_node_content () . I've modified these isolatin1 aware functions to make'em much more easy to use: mlview_xml_document_node_get_name (), mlview_xml_document_node_get_fqn_len_as_isolat1 (), mlview_xml_document_node_get_fqn (), mlview_xml_document_node_get_content (), * src/mlview-utils.c: modified all the iso latin1 functions to provide them with better names, better signatures. Oh, I've also somehow debugged'em. Here is the list of these modified debugged functions: mlview_utils_isolat1_str_len_as_utf8 (), mlview_utils_utf8_str_len_as_isolat1 (), mlview_utils_isolat1_str_to_utf8 (), mlview_utils_utf8_str_to_isolat1 () . 2002-09-12 dodji <dodji@gnome.org> * src/mlview-node-editor.c: added support of iso8859_1 viewing in node editior for name and content viewing. Still have to do the same thing for edition. I have not tested anything yet. 2002-09-11 dodji <dodji@gnome.org> * src/mlview-utils.c: added the following functions to support iso8859_1 edition: mlview_utils_iso_8859_1_str_len_as_utf8 (), mlview_utils_utf8_str_len_as_iso8859_1 (). * src/mlview-xml-document.c: added more functions to support iso9959_1 char edition. these functions are : mlview_xml_document_node_get_fqn_len_as_iso8859_1 (), mlview_xml_document_node_get_name (), mlview_xml_document_node_get_fqn (), and mlview_xml_document_node_get_content () . * src/mlview-node-editor.c (mlview_node_editor_xml_element_node_view_edit_xml_node) : modified this function to make it support iso8859_1 char edition. 2002-09-10 dodji <dodji@gnome.org> * src/mlview-utils.c (mlview_utils_translate_str_to_utf8): debugged this function. * src/mlview-xml-document.c (mlview_xml_document_set_node_content): started to add support for editing iso8859_1 caracter set. * src/mlview-tree-editor.c (node_to_start_tag): started to add support for editing iso8859_1 caracter set. 2002-09-08 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c (mlview_parsing_utils_build_graphical_attribute_value_set): Applied a patch from Pierre Barbier de Reuille <pierre.barbierdereuille@wanadoo.fr> to fix a silly pointer bug. Many thanks to Pierre :) 2002-08-30 dodji <dodji@gnome.org> * Makefile.am: applied patch from Gregory Leblanc <gleblanc@linuxweasel.com> to fix broken sym links at install time. 2002-08-24 dodji <dodji@gnome.org> * po/ja.po: updated po file graciously sent by takeshi aihana <aihana@jcom.home.ne.jp>. * src/Makefile.am: applied patch from takeshi aihana <aihana@jcom.home.ne.jp> to fix compile time error that occurs when both libxml1 and libxml2 headers files are installed on the system. 2002-08-22 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c (mlview_parsing_utils_validate_dtd): * src/mlview-xml-document.c (mlview_xml_document_validate): * src/mlview-parsing-utils.c (mlview_custom_external_subset_sax_handler): made a modif to fix bug #999. This modif intends to take internal subset in account when triggering the validation. 2002-06-27 dodji <dodji@gnome.org> * src/mlview-tree-editor.c (mlview_tree_editor_add_child_node_interactive): fixed bug 729. 2002-06-26 dodji <dodji@gnome.org> * src/mlview-editor.c: fixed bug 723. * src/mlview-parsing-utils.c (load_xml_document_from_local_file): added indentation to the saved source. 2002-06-23 dodji <dodji@gnome.org> * src/mlview-xml-document.c (mlview_xml_document_add_child_node): modified the signature of the this method to fix bug 727. Now, this one can choose not to add required subtree even if validation is turned on. 2002-06-20 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c (mlview_parsing_utils_build_attribute_name_completion_list): added alphabetical sorting to the attribute name completion list. (build_required_element_content): debbuged this function. Added support of detection of infinite loop in the dtd tree... especially in the OR declarations. Fixed some crashed that were related to this kind of infinite loops. 2002-06-20 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c (mlview_parsing_utils_build_element_name_completion_list): debugged this function (fixed bug 700) and made it use the newly coded xmlValidGetValidElementsChildren () function. Added alphabetical sorting of the element names completion list. * src/utils.c: added a the function xmlValidGetValidElementsChildren (). It does the job of xmlValidGetValidElements () when the element does not have any children and when we want to add children to it. 2002-06-18 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c (build_required_element_content): Fixed a bug. Seems to work better now. Still have to test it. 2002-06-18 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c (mlview_parsing_utils_build_required_children_tree): debugged this function. seems to work on docbook doc now. Still have to test it. 2002-06-07 dodji <dodji@gnome.org> * src/mlview-editor.c: added the "set-name" feature. I've tested it a bit. It still in a beta stage. 2002-06-06 dodji <dodji@gnome.org> * src/mlview-xml-document.c: created calls to mlview_xml_document_set_node_content () and mlview_xml_document_set_node_name () * src/mlview-node-editor.c: replaced the calls to xmlNodeSetContent () and xmlNodeSetName () by the corresponding calls to mlview_xml_document_set_...() 2002-05-27 dodji <dodji@gnome.org> * src/mlview-xml-document.c: finished the code of the function mlview_xml_document_add_child_node (). It works somehow now. * src/mlview-parsing-utils.c: =>coded the function mlview_parsing_utils_build_attribute_value_set () on the model of mlview_attribute_picker_build_attribute_value_set (). Replaced all the calls to mlview_attribute_picker_build_attribute_value_set () by calls to mlview_parsing_utils_build_attribute_value_set (). =>coded the function mlview_parsing_utils_build_required_attributes_list (). =>finished the code of mlview_parsing_utils_build_required_children_tree () by integrating the building of the attributes of each node added to the required children tree. 2002-05-12 dodji <dodji@gnome.org> * src/mlview-tree-editor.c: completely removed the node clipboard of MlViewTreeEditor class. The node clipboard is now located in the MlViewXMLDocument class. 2002-05-11 dodji <dodji@gnome.org> * src/mlview-xml-doc-tree-view.c: revisited the following items of MlViewXMLDocTreeView: =>made it inherit MlViewXMLView for future extensibility. =>modified the creation of this object so that it is created from an MlViewXMLDocument. During the creation, this view connects itself to the signals of the MlViewXMLDocument given in parameter. Still have to handle the destruction of the view so that it disconnects from the MlViewXMLDocument signals. =>provide the callbacks that handle the edition events fired by the MlViewXMLDocument objects * src/mlview-tree-editor.c: started to rewrite the edition methods of this object so that they invoke the edition methods of the MlViewXMLDocument class instead of the methods of the underlying libxml. So far, i have written the methods associated to the followind edition actions: "add-child-node", "insert-sibling-node", "cut", "paste-node-as-child", "paste-node-as-sibling". * src/mlview-xml-document.c: this object is now an active xml DOM wrapper. It is nearly the heart of mlview now. it contains edition methods that emit signal after each significant edition action. The views just have to 1)call the edition methods of this objects and not the methods of the underlying libxml. 2)connect to this object's edition signals and provide callbacks to update theirselves. 2002-03-24 dodji <dodji@gnome.org> * Makefile.am: updated licence info + added mlview, gnome-mlview and gmlview as mlview binary names. (Thanks to Nestor Diaz <nestordi@usuarios.retecal.es> for bug reports) * src/main.c: have the i18n stuffs working now. * src/mlview-editor.c: added support for the contextual menu. * src/mlview-attribute-picker.c (mlview_attribute_picker_destroy): updated the destructor. * src/mlview-settings-builder.c (mlview_settings_builder_destroy): updated the destruction function. * src/mlview-parsing-utils.c (mlview_custom_external_subset_sax_handler): bug: When validation is on and the document has no dtd associated, mlview produces an error message and does not load the dtd. Fixed. 2002-03-12 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c: provided this file with routines that support elements/attributes name completion. 2002-03-09 dodji <dodji@gnome.org> * src/mlview-tree-editor.c: coded the "expand to node feature". * src/mlview-xml-doc-tree-view.c: integrated the expand to node feature. * src/mlview-xml-document.c: the doc does not hold the different views anymore. The views are now build from the document. * src/mlview-xml-document-view.c: created this class to be the base class of the document views. * src/mlview-editor.c: started a code cleanup. Now, the views are build from the document. Still have to transform the document into an active gtkobject that can emit signals. The editor does not hold document anymore. It holds views intead. this is a preparation for the multiview orientation of mlview. I want to be able to work on this feature progressively and smoothly across the releases ... 2002-03-02 dodji <dodji@gnome.org> * src/mlview-node-type-picker.c: this widget is now capable of doing element names completion. * src/mlview-settings-builder.c: another brand new widget component. Based on the mlview-settings-management.c framework, its job is to centralize the building of the settings daialog, to enable these settings to be put inside a hash table. this hash table is then passed to mlview-app-context.c component. As all the other components of mlview have accessed to instances of MlViewAppContext, they all can accessed the settings. And that avoids using global variables for settings management. * src/mlview-attribute-picker.c: pushed the code of this widget to a somewhat useable standpoint. It still in early alpha stage but it can do some basic name completion jobs whenever validation is on .. hmmmh still have to give it the ability to detect that validation is on/off. i started to use *+use the gtk_widget_set_sentive () func to set some button insensitive when they cannot be accessed. Still have to generalize that to all the gui. * src/mlview-attributes-list.c: renamed this widget from the former properties-list widget. Made it aware of the brand new MlViewAttributePicker widget. * src/mlview-parsing-utils.c (mlview_custom_external_subset_sax_handler): cleaned up this function. Have now some clean basis of the work flow of the loading of the xml document. More generally, changed this file a lot since last entry. Can now pass the MlViewAppContext to the sax handler by inheriting the xmlParserCtxt etc ... Also overrides the error display routines of libxml more cleanly. * src/mlview-editor.c (mlview_editor_load_xml_file): fixed a bug that caused the document to freeze when an attempt to load the same document a second time without validation lead to WF errors. 2002-02-06 dodji <dodji@gnome.org> * src/mlview-attribute-picker.c: Started to add support of attribute name completion. This widget is new. * src/mlview-attributes-list.c: fixed a bug that freezed mlview whenever user enter a null string attribute name or value. 2002-01-27 dodji <dodji@gnome.org> * Makefile.am: added the rpm target. Can now build rpms 2002-01-20 dodji <dodji@gnome.org> * src/mlview-xml-document.c: fixed some few bugs that occured uppon cancel of some actions. * src/mlview-parsing-utils.c: debugged the error reporting functions. 2002-01-18 dodji <dodji@gnome.org> * src/mlview-parsing-utils.c: overloaded the error reporting function of libxml to display graphicaly the error reported by libxml at xml doc parse time. * src/mlview-app-context.c: added the messages display facilities. 2002-01-16 dodji <dodji@gnome.org> * src/mlview-app-context.c: started to add status messaging. Wrapped some of the methods of GnomeAppBar so that status reporting can be logged fo further analysis ... why not ?. 2002-01-13 dodji <dodji@gnome.org> * src/mlview-xml-document.c: coded the validation on demand. Fixed a couple of bugs in the validation code that i started. Still have to code an error and message reporting architecture. That is very important to report parsing and validation errors. * src/mlview-file-selection.c: this widget is now useable and is used. It extends GtkFileSelection allowing users to invoque a blocking run() method that will do all the interaction with the user before returning. The run() method returns the number of the button clicked by the user. 2002-01-06 dodji <dodji@gnome.org> * src/mlview-xml-document.c: started to add the validation to the xml file load sequence. Can now validate an xml file against a local dtd. Still have to improve the user interface. * src/mlview-editor.c: started to modify the way we handle fileselection sequence. The way it is done is too complicated today. that is due to the way GtkFileSelection widget is designed. It requires callbacks connected to each buttons ... which is fine. But what i would like is a behaviour like GnomeDialog one. I want to invoke a king of gtk_file_selection_run method which returns when the user has selected one file. I can then retrieve the information i need from the widget. That would be better imho. 2002-01-03 dodji <dodji@gnome.org> * src/mlview-tree-editor.c: made MlViewEditor aware of settings management by laying on the settings management framework. still working for one setting exported by MlViewTreeEditor component. * src/mlview-settings-management.c: added this file a couple of weeks ago. It contains the settings management framework functions. The whole thing seems to work somehow... still have to debug settings uninstall functionality * src/mlview-tree-editor.c: long since last changelog. Added support of settings. The initial expansion level of the xml tree is now part of a settings set that contains ... only that setting. Have to debug settings entry destruction ... 2001-12-06 dodji <dodji@gnome.org> * src/mlview-xml-document.c: put all the low level things related to xml parsing in the new file mlview-parsing-utils.c * src/mlview-parsing-utils.c: put in this new file all the low level stuffs related to xml parsing. mlview-xml-document.c looks better now. added support for saving the external subset definition during the first parse time so that one can load that external subset later. 2001-12-01 dodji <dodji@gnome.org> * src/utils.c: coded the core functions for handling of auto scroll in GtkCList/GtkCTree based widgets * src/mlview-tree-editor.c (mlview_tree_editor_get_data_from_find_dialog_and_perform_search): added support of Auto scroll when the "search" finds a row that matches ... * src/mlview-properties-list.c: added support of native scrolling. * src/mlview-namespace-editor.c: added support for scrolling. * src/mlview-node-editor.c: added native support of scrolling. 2001-11-28 dodji <dodji@gnome.org> * src/mlview-node-editor.c (mlview_node_editor_set_left_right_percentage): added the functionality to set the proportion of the paned widgets of the document. this function is the one that actually does the job. * src/mlview-xml-document.c: added the functionality to set the proportion of the paned widgets of the document. 2001-11-28 dodji seketeli <dodji@gnome.org> * src/mlview-xml-doc-tree-view.c: added the functionality to set the proportion of the paned widgets. * src/mlview-editor.c: added the functionality to set the proportion of the paned widgets. * src/mlview-tree-editor.c: added some basic search functionality. 2001-11-17 dodji seketeli <dodji@gnome.org> * src/mlview-tree-editor.c: started to code the helper functions that will provide the search facilites. 2001-11-13 dodji seketeli <dodji@gnome.org> * src/mlview-tree-editor.c (attributes_list_to_string): added support of namespaces in attributes representation. 2001-11-13 dodji seketeli <dodji@gnome.org> * src/mlview-properties-list.c: added support of namespaces in attributes edition. 2001-11-12 dodji seketeli <dodji@gnome.org> * src/mlview-node-editor.c (mlview_node_editor_name_changed_cb): added support of namespace prefix edition. First version. i think i will put the new code into a function. That will look better. 2001-11-11 dodji seketeli <dodji@gnome.org> * src/mlview-tree-editor.c (mlview_tree_editor_insert_prev_sibling_node_interactive): uses the features of MlViewNodeTypePicker to make its entry fields grab the focus. Also sets it title to reflect the type of node addition the user is performing. 2001-11-11 dodji seketeli <dodji@gnome.org> * src/mlview-node-type-picker.c: added support to set the focus to the text entry and to set the ok button as default button. Also added support to set the title of the picker. 2001-11-11 dodji seketeli <dodji@gnome.org> * src/mlview-editor.c (mlview_editor_create_new_xml_document): the node name grabs the focus and the ok button is now the default button. 2001-11-10 dodji seketeli <dodji@gnome.org> * src/mlview-namespace-editor.c: can now add/remove namespace defs safely. 2001-11-10 dodji seketeli <dodji@gnome.org> * src/mlview-tree-editor.c: now, the node type picker is build only once and then cache to boost the speed of subsquent calls to it. * src/mlview-namespace-editor.c: removed the "show all namespace" and "show local" buttons and associated buttons. 2001-11-10 dodji seketeli <dodji@gnome.org> * src/utils.c (xmlUnlinkNsDef): fixed a bug. Could not remove a namespace if it was not first ns of the ns list. 2001-11-10 dodji seketeli <dodji@gnome.org> * src/utils.c (xmlUnlinkNs): fixed a bug. Could not remove a namespace if it was not first ns of the ns list. 2001-11-07 dodji seketeli <dodji@gnome.org> * src/utils.c (xmlUnlinkNsDef): added this method. first implem. Not tested. * src/mlview-namespace-editor.c (mlview_namespace_editor_remove_namespace_def): the method mlview_namespace_editor_remove_namespace() has been renamed to this one and revisited though not tested yet. 2001-11-07 dodji seketeli <dodji@gnome.org> * src/mlview-namespace-editor.c (remove_namespace_button_clicked_cb): first implem of this method. Not tested yet. 2001-11-06 dodji seketeli <dodji@gnome.org> * src/mlview-namespace-editor.c (add_namespace_button_clicked_cb): revisited this function and made it much more legible now. Coded the helper for it. (mlview_namespace_editor_add_namespace): coded the first version of this function. it works ... (mlview_namespace_editor_ask_namespace_to_user_and_add_it): this function now uses mlview_namespace_editor_add_namespace. it is more legible. 2001-11-06 dodji seketeli <dodji@gnome.org> * src/mlview-namespace-editor.c (mlview_namespace_editor_remove_namespace): just coded a first version of this function. Not tested. I just have to go to bed. 2001-11-05 dodji seketeli <dodji@gnome.org> * src/mlview-namespace-editor.c (add_namespace_button_clicked_cb): just coded a first version of this function. Not tested. I just have to go to bed. 2001-11-04 dodji seketeli <dodji@gnome.org> * src/mlview-namespace-editor.c: went forward in namespace edition. Now, the namespace can be modified. The user can modify only the ns defined on the current node. 2001-11-03 dodji seketeli <dodji@gnome.org> * src/mlview-namespace-editor.c: started to add add support for namespace edition. this widget can now view (only) all the namespaces visibles by a given node. 2001-10-28 dodji seketeli <dodji@gnome.org> * src/mlview-node-editor.c (mlview_node_editor_xml_doc_node_view_edit_xml_node): created this function to edit xml document nodes using a dedicated view. This adds basic support of edition of xml doc node. For the time being, the edition of xml node only allows viewing. To be able to properly edit a doc node, there is a little more code to write. Look at this function as a starting point. 2001-10-27 dodji seketeli <dodji@gnome.org> * src/mlview-tree-editor.c (build_ctree_from_xml_doc): enable the presence of comments, and pis. before and after the root element node. * src/mlview-node-editor.c (mlview_node_editor_edit_xml_node): rewrote this function so that, it only calls the edit method of the right view. this makes this central function looks better. 2001-10-23 dodji seketeli <dodji@gnome.org> * src/mlview-node-type-picker.c: now, wen creating a node (add child or insert sibling node), the MlViewNodeTypePicker also asks for the node name of node content. Seems to work. Still have to test it. 2001-10-23 dodji seketeli <dodji@gnome.org> * src/mlview-editor.c (mlview_editor_create_new_xml_document): now, when creating a new document, a dialog asks the name of the root element. Seems to work. Have to test it. 2001-10-23 dodji seketeli <dodji@gnome.org> * src/mlview-tree-editor.c (nt_picker_ok_button_clicked_to_add_child_cb): now, wen creating a node (add child or insert sibling node), the MlViewNodeTypePicker also asks for the node name of node content. In tree editor, get also the node name or content to set the newly created node. Seems to work. Still have to test it. 2001-10-18 dodji seketeli <dodji@gnome.org> * src/mlview-xml-document.c (mlview_xml_document_paste_node_as_child): added the "paste node as child feature" * src/mlview-app.c (paste_node_as_child_cb): added the "paste node as child" feature. * src/mlview-xml-doc-tree-view.c (mlview_xml_doc_tree_view_paste_node_as_child): added the "paste node as child" feature. Works. 2001-10-18 dodji seketeli <dodji@gnome.org> * src/mlview-tree-editor.c: debugged the paste node functionality. The clipboard now contains xmlNodePtr's and not GtkCTreeNode* anymore. fixed a bug in the mlview_tree_editor_get_node_from_clipboard() method that was not returning the good node. 2001-10-17 dodji seketeli <dodji@gnome.org> * src/mlview-node-editor.c : actually added the view to edito pi nodes. Works. 2001-10-17 dodji seketeli <dodji@gnome.org> * src/mlview-app.c (g_edition_toolbar): added an edition toobar to the main window. 2001-10-13 dodji seketeli <dodji@gnome.org> * src/mlview-tree-editor.c: added support to display comment nodes and pi nodes. 2001-10-13 dodji seketeli <dodji@gnome.org> * src/mlview-node-editor.c: defined the XMLPINodeView struct. Have to define the methods to edit an pi node thru it. 2001-10-12 dodji seketeli <dodji@gnome.org> * src/mlview-file-descriptor.c: added functions to handle the last modif time of the in-memory xml file and also to determine the update state of the in-memory xml file against the on-disk xml file. 2001-08-25 dodji seketeli <dodji@gnome.org> * src/mlview-properties-list.c (mlview_properties_list_edit_xml_attributes): added the function mlview_properties_list_edit_xml_attributes(), the add and remove attributes buttons in mlview_properties_list_init(). So far, only the add button has it signal "clicked" connected to a callback function (add_attribute_button_clicked_cb()) which calls the function mlview_properties_list_edit_xml_attributes(). Also performed some minor bug fixes. 2001-08-18 dodji seketeli <dodji@gnome.org> * all: this week, i put the project on the savannah.gnu.org server. * COPYING: made a copy of the GPL text. 2001-06-09 Seketeli Dodji <dodji@gnome.org> * mlvieweditor.[c|h]: initial version. Created a GtkWidget that makes an abstraction of an mlview editor