2006-01-07 Duncan Coutts * svgcairo/Graphics/Rendering/Cairo/SVG.chs: new libsvg-cairo binding. * svgcairo/svgcairo.pkg.in, svgcairo/svgcairo.package.conf.in, svgcairo/svgcairo.cabal.in: new package files * configure.ac, Makefile.am: add build support for new svgcairo package. 2006-01-08 Axel Simon * soegtk/Graphics/SOE/Gtk.hs.pp: Fixed a qualified name which made ghc 6.2.2 fall over (when it shouldn't). 2006-01-07 Duncan Coutts * configure.ac: bump version to 0.9.10.2 to help track recent changes. 2006-01-06 Duncan Coutts * cairo/Graphics/Rendering/Cairo/Matrix.chs: fix bugs reported by "MenTaLguY" using a slight variation on the patch he supplied. Also implement scalarMultiply using the 'pointwise' function. 2005-12-12 Duncan Coutts * cairo/Graphics/Rendering/Cairo.hs: fix some doc references. 2005-12-9 Duncan Coutts * demo/fastdraw/FastDraw.hs: intersect the exposed region with the region covered by the pixbuf before drawing the rectangles. 2005-12-9 Axel Simon * demo/fastdraw/FastDraw.hs: Fixed two parameters. * glib/System/Glib/UTFString.hs.pp: Renamed from glib/System/Glib/UTFString.hs since it needs to be run through CPP to appease haddock. 2005-12-8 Duncan Coutts * glib/System/Glib/FFI.hs.pp: We should almost certainly not be using the standard free function anywhere in the glib or gtk bindings, so we do not re-export it from this module. It is not gueranteed by the Haskell FFI spec that free calls the C free() function. It is also not guaranteed that g_free() simply calls the stanard C free() function. * glib/System/Glib/UTFString.hs: call g_free() rather than Haskell free for freeing glib strings (which of course were allocated with g_new()). * gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp: use withUTFStringArray and withUTFStringArray0 rather than ad-hoc implementations. * gtk/Graphics/UI/Gtk/General/StockItems.hsc: use readUTFString rather than peekUTFString + g_free(). * glib/System/Glib/GList.chs: add withGSList function. * sourceview/Graphics/UI/Gtk/SourceView/SourceTag.chs: use withGSList and withUTFStrings rather than the more complex exising solution. * gtk/Graphics/UI/Gtk/TreeList/TreePath.chs.pp: export newTreePath for use in other modules but not for top-level export. * gtk/Graphics/UI/Gtk/TreeList/CustomStore.chs, gtk/Graphics/UI/Gtk/TreeList/Gtk2HsStore.c, gtk/Graphics/UI/Gtk/TreeList/Gtk2HsStore.h: add low-level parts of an implementation of custom GtkTreeModels. This includes a GObject written in C that implements the GtkTreeModel interface and delegates the implementation via a Haskell interface. This does not yet include any actual implementations of the Haskell CustomStore interface. * Makefile.am: build the new files. 2005-12-7 Axel Simon * glib/System/Glib/Signals.chs.pp, gtk/Graphics/UI/Gtk.hs: Add new signal functions and export some of them. * tools/callbackGen/gtkmarshal.list, gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp: Add text_insert signal and the ability to stop the signal. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp: Renamed onInsertText to onBufferInsertText. This breaks the API but changing this function seems more natural than the function in Editable. * gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: Removed unnecessary function. * gtk/Graphics/UI/Gtk/TreeList/ListStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp: Fixed documentation. 2005-11-26 Axel Simon * glib/System/Glib/GObject.chs.pp: Add a new constructGObject function that does not increment the reference count of the GObject. * gconf/System/Gnome/GConf/GConfClient.chs glade/Graphics/UI/Gtk/Glade.chs gtk/Graphics/UI/Gtk/Cairo.chs.pp gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp gtk/Graphics/UI/Gtk/ActionMenuToolbar/Action.chs.pp gtk/Graphics/UI/Gtk/ActionMenuToolbar/ActionGroup.chs.pp gtk/Graphics/UI/Gtk/ActionMenuToolbar/RadioAction.chs.pp gtk/Graphics/UI/Gtk/ActionMenuToolbar/ToggleAction.chs.pp gtk/Graphics/UI/Gtk/ActionMenuToolbar/UIManager.chs.pp gtk/Graphics/UI/Gtk/Display/Image.chs.pp gtk/Graphics/UI/Gtk/Display/Label.chs.pp gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp gtk/Graphics/UI/Gtk/Gdk/Drawable.chs.pp gtk/Graphics/UI/Gtk/Gdk/GC.chs gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp gtk/Graphics/UI/Gtk/Gdk/Pixmap.chs.pp gtk/Graphics/UI/Gtk/General/IconFactory.chs.pp gtk/Graphics/UI/Gtk/General/Style.chs gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs.pp gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp gtk/Graphics/UI/Gtk/Multiline/TextTagTable.chs gtk/Graphics/UI/Gtk/Multiline/TextView.chs.pp gtk/Graphics/UI/Gtk/Pango/Description.chs gtk/Graphics/UI/Gtk/Pango/GlyphStorage.chs.pp gtk/Graphics/UI/Gtk/Pango/Layout.chs.pp gtk/Graphics/UI/Gtk/TreeList/ListStore.chs.pp gtk/Graphics/UI/Gtk/TreeList/TreeModelSort.chs.pp gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp gtk/Graphics/UI/Gtk/Windows/Window.chs.pp gtk/Graphics/UI/Gtk/Windows/WindowGroup.chs sourceview/Graphics/UI/Gtk/SourceView/SourceBuffer.chs sourceview/Graphics/UI/Gtk/SourceView/SourceIter.chs sourceview/Graphics/UI/Gtk/SourceView/SourceLanguagesManager.chs sourceview/Graphics/UI/Gtk/SourceView/SourceStyleScheme.chs sourceview/Graphics/UI/Gtk/SourceView/SourceTag.chs sourceview/Graphics/UI/Gtk/SourceView/SourceTagTable.chs sourceview/Graphics/UI/Gtk/SourceView/SourceView.chs: Replaced occurrences of makeNewGObject with constructNewGObject if the function does pass the reference count to the caller. 2005-11-22 Duncan Coutts * soegtk/Graphics/SOE/Gtk.hs.pp: add an implementation of the SOE API. * soegtk/soegtk.cabal.in, soegtk/soegtk.pkg.in, soegtk/soegtk.package.conf.in: add package files. * configure.ac, Makefile.am: add support for building the new package. 2005-11-19 Axel Simon * gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuItem.chs: Improve docs. * gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: Added a show instance to PangoRectangle. 2005-11-19 Duncan Coutts * gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp: remove the treeModelRefNode and treeModelUnrefNode functions since they would only be used by implementations of views and we do not expect many of these to be implemented in Haskell. 2005-11-18 Duncan Coutts * gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp: add pixbufNewFromFileAtSize and pixbufNewFromFileAtScale. Also rearange export list slightly. These functions are particularly useful for laoding svg files at different zoom levels. * gtk/Graphics/UI/Gtk/Entry/VScale.chs: correct mistake in doc cross-reference. * gtk/Graphics/UI/Gtk/Gdk/Drawable.chs.pp: remove reference to the unbound object type 'Bitmap'. * gtk/Graphics/UI/Gtk/General/Style.chs: remove discussion of unbound 'rc' functions. * gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp: remove reference to function which we bind as part of another function. * gtk/Graphics/UI/Gtk/Layout/Table.chs: correct spelling mistake in doc cross-reference. * gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp: haddock cannot cope with an ' character directly after a type. * gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp: change doc cross-reference to it's most likely target. * gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs.pp: remove discuccion of an unbound and deprecated function. * gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs.pp: remove doc cross-reference to the unbound Gdk function 'keyboardGrab'. * gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioToolButton.chs.pp: change doc cross-reference to its intended target. * gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp: change the doc cross-reference of a couple type names to their actual names. * gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp: correct spelling mistake in doc cross-reference. * gtk/Graphics/UI/Gtk/Selectors/FileChooserWidget.chs.pp: import an extra function so it's in scope for a doc cross-reference. * gtk/Graphics/UI/Gtk/Selectors/FileFilter.chs.pp: remove reference to unbound function. * gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs: remove reference to an unbound and deprecated function. * gtk/Graphics/UI/Gtk/Selectors/FontSelectionDialog.chs: remove reference to an unbound and deprecated function. * gtk/Graphics/UI/Gtk/TreeList/CellRenderer.hs: remove discussion of unbound and semi-internal functions. Add newly bound class to the class hierarchy doc section. * gtk/Graphics/UI/Gtk/TreeList/CellRendererCombo.chs.pp: reference cellRendererSet rather than gObjectSet. * gtk/Graphics/UI/Gtk/TreeList/CellView.chs.pp: remove unhelpful C-style return value documentation. * gtk/Graphics/UI/Gtk/TreeList/TreeViewColumn.chs.pp: cross-reference the plural correctly. * gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/RadioAction.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/ToggleAction.chs.pp, gtk/Graphics/UI/Gtk/Buttons/CheckButton.chs, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs.pp, gtk/Graphics/UI/Gtk/Embedding/Plug.chs.pp, gtk/Graphics/UI/Gtk/Embedding/Socket.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/HScale.chs, gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ImageMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/SeparatorToolItem.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextIter.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextMark.chs, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontButton.chs.pp, gtk/Graphics/UI/Gtk/TreeList/CellRendererText.chs, gtk/Graphics/UI/Gtk/TreeList/TreeIter.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp, gtk/Graphics/UI/Gtk/Windows/WindowGroup.chs: fix many haddock warnings. These are mostly cross-references to things that are not in scope. This can be fixed either by importing the appropriate modules or fully qualifing the references. I have taken the latter approach to avoid introducing too many unnecessary inter-module dependencies (in particular cyclic dependencies). 2005-11-17 Duncan Coutts * gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp: use a pure FFI declaration rather than using unsafePerformIO. * gtk/Graphics/UI/Gtk/Gdk/Enums.chs: move the definition of a couple enums to the only module where they are used. Also fixup a documentation cross-reference. * gtk/Graphics/UI/Gtk/Gdk/Region.chs.pp: move the enums into the Region module. * gtk/Graphics/UI/Gtk/General/Enums.chs.pp: remove the CurveType enum which would have been used by the GammaCurve object had it ever been bound. * gtk/Graphics/UI/Gtk/Misc/DrawingArea.chs: remove doc reference to Curve object. * tools/hierarchyGen/hierarchy.list: remove the GtkCurve because it is not bound. * gtk/Graphics/UI/Gtk/Layout/VBox.chs: remove reference to the GammaCurve object. * gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp: bind the treeModelRefNode and treeModelUnrefNode functions. * mogul/Graphics/UI/Gtk/Mogul/GetWidget.hs.pp: remove the getCurve function since we've removed the Curve object. 2005-11-16 Duncan Coutts * tools/hierarchyGen/hierarchy.list: remove GtkGammaCurve because it is not bound. * mogul/Graphics/UI/Gtk/Mogul/GetWidget.hs.pp: remove lookup for GammaCurve. * glib/System/Glib/Attributes.hs, glib/System/Glib/GError.chs.pp, glib/System/Glib/GValue.chs, glib/System/Glib/MainLoop.chs.pp, glib/System/Glib/StoreValue.hsc: minor haddock markup and cross-reference fixes. * gconf/System/Gnome/GConf/GConfClient.chs: minor haddock markup and cross-reference fixes. * gtkglext/Graphics/UI/Gtk/OpenGL/Drawable.chs, gtkglext/Graphics/UI/Gtk/OpenGL/Context.chs: documentations fixes. 2005-11-13 Axel Simon * gtk/Graphics/UI/Gtk/Cairo.chs.pp: Flip arguments of cairoFontMapSetResolution to make it consistent. * gtk/Graphics/UI/Gtk/Misc/Adjustment.chs.pp: Added signal-emitting functions that seem to be necessary to force the Adjustment to update. * demo/cairo/CairoGhci.hs: Added this file so people can play with Ciaro from within ghci. 2005-11-12 Duncan Coutts * gtk/Graphics/UI/Gtk/TreeList/CellRendererPixbuf.chs: implement cellPixbuf attribute. Not properly tested yet. * gtk/Graphics/UI/Gtk/TreeList/CellRendererCombo.chs.pp, gtk/Graphics/UI/Gtk/TreeList/CellRendererProgress.chs.pp: add new cell renderers. * tools/hierarchyGen/hierarchy.list: add GtkCellRendererProgress and GtkCellRendererCombo classes. * gtk/Graphics/UI/Gtk.hs: export the two new modules. * Makefile.am: add the new files to the sources list. 2005-11-12 Axel Simon * Makefile.am: Corrected missing var definition that resulted in generating insufficient dependencies for the mogul package. * cairo/Graphics/Rendering/Cairo.hs: Remove imports that are already available through the type module. * gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp: Make the pop-up menu function easier to use. Add more documentation. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp: Make the constructor more generic, so it also takes a SourceTagTable for the sourceview widget. * gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, tools/callbackGen/gtkmarshal.list: Add the onTextTagEvent. Don't know if this is really useful. * gtk/Graphics/UI/Gtk/Multiline/TextView.chs.pp: I got very confused as to why the scroll function doesn't work as expected. Expand comment to reflect my misery. * gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp: Correct bad English in comment. 2005-11-11 Duncan Coutts * demo/cairo/Drawing2.hs, demo/cairo/Makefile: new cairo demo thanks to Johan Bockgård. * glib/System/Glib/FFI.hs, glib/System/Glib/FFI.hs.pp, mogul/Graphics/UI/Gtk/Mogul.hs, mogul/Graphics/UI/Gtk/Mogul.hs.pp, mogul/Graphics/UI/Gtk/Mogul/GetWidget.hs, mogul/Graphics/UI/Gtk/Mogul/GetWidget.hs.pp, mogul/Graphics/UI/Gtk/Mogul/NewWidget.hs, mogul/Graphics/UI/Gtk/Mogul/NewWidget.hs.pp: rename to .pp and remove {-# OPTIONS -cpp #-} pragma and remove #include. * gtk/Graphics/UI/Gtk/Embedding/Plug.chs, gtk/Graphics/UI/Gtk/Embedding/Plug.chs.pp, gtk/Graphics/UI/Gtk/Embedding/Socket.chs, gtk/Graphics/UI/Gtk/Embedding/Socket.chs.pp: rename to .pp and conditionally build the body of the modules if we are not building on windows or we are using Gtk+ 2.8. * gtk/Graphics/UI/Gtk/Embedding/Embedding.hsc: conditionally build the body of the module if we are not building on windows or we are using Gtk+ 2.8. * gtk/Graphics/UI/Gtk.hs: remove all conditional compilation. The embedding modules are now re-exported unconditionally (though they may export nothing). * mk/common.mk: add rule for preprocessing .hs.pp to .hs * Makefile.am: Rename various modules as above. Add support for .hs.pp files in the SOURCES lists. Move the embedding modules into libHSgtk_a_SOURCES rather than including them in the list conditionally. Remove the html_HSFILES_PREPROC variable and the .hs to .hs.uncpp rule. * configure.ac: build GtkPlug and GtkSocket on Win32 when using Gtk+ 2.8 or later. * demo/opengl/RotatingCube.hs: minor changes to the OpenGL demo. * TODO: add item about cairo backends. 2005-11-10 Duncan Coutts * gtk/Graphics/UI/Gtk/General/StockItems.hsc: fix inverted Gtk version check for stockUnindent. 2005-11-09 Duncan Coutts * gtkglext/Graphics/UI/Gtk/OpenGL.hs, gtkglext/Graphics/UI/Gtk/OpenGL/Config.chs, gtkglext/Graphics/UI/Gtk/OpenGL/General.chs, gtkglext/Graphics/UI/Gtk/OpenGL/Context.chs, gtkglext/Graphics/UI/Gtk/OpenGL/Pixmap.chs, gtkglext/Graphics/UI/Gtk/OpenGL/Drawable.chs, gtkglext/Graphics/UI/Gtk/OpenGL/DrawingArea.chs, gtkglext/Graphics/UI/Gtk/OpenGL/Window.chs: new gtkglext package, the Gtk+ OpenGL extension. * demo/opengl/RotatingCube.hs, demo/opengl/Makefile: add OpenGL demo. * gtkglext/gtkglext.cabal.in, gtkglext/gtkglext.pkg.in, gtkglext/gtkglext.package.conf.in: new build files for the gtkglext package. * tools/hierarchyGen/hierarchy.list: add extra GL classes. * configure.ac, Makefile.am: add build system support for the new gtkglext package. * gtkglext/Graphics/UI/Gtk/OpenGL/Types.chs: remove file that was accidentally added to cvs. * sourceview/sourceview.h, sourceview/sourceview.pkg.in, sourceview/sourceview.package.conf.in: remove unnecessary include. * docs/tutorial/Makefile: fix the base-url once and for all. * configure.ac: bump version to 0.9.10.1 to help track recent changes. * tools/apiGen/Makefile: add the gtkglext package to the apiGen system. * tools/apiGen/Marshal.hs: use refGObject function for non-constructor cases of marshaling GObject types. 2005-11-08 Duncan Coutts * sourceview/sourceview.pkg.in: probable fix for the problem of building the sourceview demo using -fvia-C with ghc 6.2 or earlier. * Makefile.am: make it easier to use extra flags when building haddock docs. Also add a "dist-docs" target for building a docs tarball. 2005-11-07 Duncan Coutts * gtk/Graphics/UI/Gtk/General/Structs.hsc: deal with the case that widget->window might be null when the widget is not realized. Give an error message rather than segfaulting. * gtk/Graphics/UI/Gtk/General/Structs.hsc: do not fill in the 3 Pixmap GC attributes as null when they are Nothing as this causes an X11 'BadPixmap' error. * TODO: remove some completed and old todo items. * configure.ac: add --enable-split-objs option (off by default). Substitute into mk/link-splitobjs.sh script and make it executable. * mk/common.mk: add a slightly different .hs -> .o build rule when using -split-objs * Makefile.am: add -split-objs to the HCFLAGS of the libs and set mk/link-splitobjs.sh as the linker command when we configure using --enable-split-objs. * mk/link-splitobjs.sh.in: linker script to use when in --enable-split-objs mode. * configure.ac: updates suggested by the autoupdate script which checks for deprecated autoconf/automake macros. Also remove variables which used to be used by c2hs but are no longer used. * Makefile.am: add cairo/COPYRIGHT to EXTRA_DIST * cairo/Graphics/Rendering/Cairo/Internal/Surfaces/PNG.chs: correct location of COPYRIGHT file. * cairo/Graphics/Rendering/Cairo/Matrix.chs: add definitions of the other Num class members for the Matrix data type. Also, make the Matrix strict in its elements. 2005-11-06 Axel Simon * configure.ac, gtk/gtk.pkg: Make compile with ghc 6.2 (no cabal) when Cairo is installed. The package file was actually broken. * gtk/Graphics/UI/Gtk/Display/Statusbar.chs: Export MessageId and ContextId. * gtk/Graphics/UI/Gtk/General/StockItems.hsc: Add all available stock ids but map them to missing image if Gtk is not new enough. * gtk/Graphics/UI/Gtk/General/Structs.hsc: Make ResponseId instance of Eq. * gtk/Graphics/UI/Gtk/Pango/Font.chs.pp: Docu wibble. 2005-11-06 Duncan Coutts * gtk/Graphics/UI/Gtk/Pango/Context.chs.pp, gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp: remove redundent imports. * gtk/Graphics/UI/Gtk/General/General.chs: use withArrayLen rather than withArray and length. 2005-11-01 Axel Simon * cairo/Graphics/Rendering/Cairo/Types.chs: Force descriptions in comments on separate lines. 2005-10-31 Duncan Coutts * gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolButton.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: fix a couple FIXMEs, updating the documentation and implementation. * gtk/Graphics/UI/Gtk/TreeList/CellView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/IconView.chs.pp: fix a FIXME. These involve a couple minor type changes but they are not a commonly used functions I think. * cairo/Graphics/Rendering/Cairo/Types.chs: extend the documentation in a few places. * configure.ac: Bump version number to 0.9.10. 2005-10-30 Axel Simon * Makefile.am, cairo/Graphics/Rendering/Cairo.hs, cairo/Graphics/Rendering/Cairo/Internal.hs, cairo/Graphics/Rendering/Cairo/Types.chs: Create at least some documentation for the Cairo types. Hide the Types module instead of excluding it from documentation. We cannot include Internal.hs since haddock cannot parse the deriving clause. * gtk/Graphics/UI/Gtk/Cairo.chs.pp: Documentation fixes. * gtk/Graphics/UI/Gtk/Pango/Layout.chs.pp: Export a function to create a layout and set its text at the same time. This function is called layoutText instead of layoutNew since the latter clashed with the Layout widget. 2005-10-30 Duncan Coutts * glib/System/Glib/Signals.chs.pp: prune rather than hide this module so that the things we do want documented are documented here and not in the top level gtk module. * gtk/Graphics/UI/Gtk/Abstract/ContainerChildProperties.chs: hide this module from haddock. It's purely an implementation detail. * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: fix some incorrect haddock markup and fully qualify the Button data constructor that was getting linked to the Button type instead which is totally different. * Makefile.am: adjust the html_HSFILES_HIDDEN to reflect the above changes as well as tidying up some duplication. * Makefile.am: use $(GHCPKG_BUILD_GHCI_LIB) rather than literal --auto-ghci-libs for platforms where the latter doesn't work (like Solaris when not using GNU ld) * Makefile.am: add cairo/Graphics/Rendering/Cairo/Types.hs to the haddock hidden list so that make doesn't keep re-running haddock in an attempt to generate what would be the corresponding html output file. 2005-10-29 Duncan Coutts * Makefile.am: the profile viewer demo actually needs Gtk+ 2.6. * configure.ac: put the mozilla lib dir into the gtk2hs-config.h file. * mozembed/Graphics/UI/Gtk/MozEmbed.chs, mozembed/Graphics/UI/Gtk/MozEmbed.chs.pp: rename to .pp and export a new string value mozEmbedDefaultCompPath which is the mozilla lib dir. This is the default value used to initialise the mozilla embeding component. * Makefile.am: rename MozEmbed.chs to MozEmbed.chs.pp * demo/mozembed/TestEmbedMoz.hs: update the demo to use the mozEmbedDefaultCompPath. Hopefully this will make it work on BSD too. 2005-10-26 Duncan Coutts * gconf/System/Gnome/GConf/GConfClient.chs: call g_type_init before creating any GConfClient objects. * gtk/Graphics/UI/Gtk/Gdk/Pixmap.chs, gtk/Graphics/UI/Gtk/Gdk/Pixmap.chs.pp: rename to .pp. Make pixmapNew work even with the broken header files that come with Gtk+ 2.1.x that Sun shipped for Solaris 9. * Makefile.am: rename Pixmap.chs to Pixmap.chs.pp * gtk/Graphics/UI/Gtk/Gdk/Pixmap.chs.pp: discovered that it was not Sun's broken header files but just a generalisation in the type from Gtk+ 2.0 to 2.2. Make it work with both versions. * gtk/Graphics/UI/Gtk/Pango/GlyphStorage.chs.pp, gtk/Graphics/UI/Gtk/Pango/Layout.chs.pp, gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: minor fixes for ghc 5.04. * Makefile.am: add TreePath.hs and TreeRowReference.hs to the html_HSFILES_HIDDEN list. * APICHANGES: note the renaming of the Event record field names. * configure.ac: bump version to 0.9.9.8 for the second 0.9.10 release candidate. 2005-10-25 Axel Simon * gtk/Graphics/UI/Gtk/Pango/Attributes.chs.pp: Character distances are only available in Pango 1.6 and higher. * gtk/Graphics/UI/Gtk/Pango/Layout.chs.pp: getLayoutFontDescription is not available in Pango 1.6 and lower. * gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: Remove the PangoMatrix type as we don't use it ever. 2005-10-25 Duncan Coutts * Makefile.am: add demo/actionMenu to the list of demos to be built. * configure.ac: specify the cairo version dependency exactly to prevent problems with ghc-pkg when upgrading from older gtk2hs versions. Remove redundant AC_DEFINE for the cairo package. * acinclude.m4: do the AC_DEFINE for each package properly. * mk/chsDepend.in: use * rather than ? in the sed RE, since the BSD/OSX version of sed does not accept the latter. * gtk/Graphics/UI/Gtk/Pango/Types.chs.pp, gtk/Graphics/UI/Gtk/Pango/GlyphStorage.chs.pp, gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp: PangoGlyphItem is only available in Pango 1.2 and later. * gtk/Graphics/UI/Gtk/Pango/Attributes.chs.pp: the fall back font attribute is only available in Pango 1.4 and later. * gtk/Graphics/UI/Gtk/Pango/Layout.chs.pp: the 'auto_dir' functions are only available in Pango 1.4 and later. The layoutIterGetItem uses the PangoGlyphItem type which is only available in Pango 1.2 and later. Also export layoutIterGetItem (I assume it is supposed to be exported as it is not used internally). * gtk/Graphics/UI/Gtk/General/Structs.hsc: Some of the values in the PangoDirection enumeration are only available in Pango 1.4 and later. * gtk/Graphics/UI/Gtk/Pango/Font.chs, gtk/Graphics/UI/Gtk/Pango/Font.chs.pp: rename to .pp version so we can include things conditionally on the pango version. The pangoFontFamilyIsMonospace and pangoFontFaceListSizes functions are only in Pango 1.4 and later. * Makefile.am: rename Font.chs -> Font.chs.pp * glib/System/Glib/FFI.hs: make this compile with ghc 5.04.3 2005-10-24 Axel Simon * gtk/Graphics/UI/Gtk/TreeList/TreePath.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeRowReference.chs.pp: Hide modules in documentation. * gtk/Graphics/UI/Gtk/Pango/Markup.hs: Docu fix. 2005-10-24 Duncan Coutts * gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp, gtk/Graphics/UI/Gtk/Cairo.chs.pp: minor documentation changes. * gtk/Graphics/UI/Gtk.hs: export module Graphics.UI.Gtk.Pango.Context * gtk/Graphics/UI/Gtk/Gdk/Drawable.chs.pp: export toDrawable * gtk/Graphics/UI/Gtk/General/Structs.hsc: make gcGetValues work properly. Previously the forground and backround values were just random. This is because gdk_gc_get_values only fills in the pixel value for the colors fields. We now get the rgb values using gdk_colormap_query_color. * gtk/Graphics/UI/Gtk/General/IconFactory.chs.pp: minor doc fixes and export toIconFactory. * configure.ac: bump version to 0.9.9.7 for the frist 0.9.10 release candidate. 2005-10-22 Duncan Coutts * mozembed/Graphics/UI/Gtk/MozEmbed.chs: add documentation. * demo/mozembed/TestEmbedMoz.hs: fix demo code to not override the components path (as suggested in the new documentation). * configure.ac: find the MOZEMBED_LIBDIR. Change the hack we use for adding the appropriate runtime LD path to the MOZEMBED_LIBS flags; now it adds the -Wl,-rpath,${MOZEMBED_LIBDIR} if it's not there already. * gtk/Graphics/UI/Gtk/Pango/Attributes.chs.pp: fix a warning. 2005-10-22 Axel Simon * gtk/Graphics/UI/Gtk/Pango/GlyphStorage.chs.pp: Docu fix. 2005-10-21 Duncan Coutts * gtk/Graphics/UI/Gtk/Pango/Attributes.chs.pp: for some reason a couple pango functions are not available on windows in pango 1.8.x, only pango 1.10.x. So complile them conditional on that pango version on win32. * Makefile.am: add new demos to EXTRA_DIST. * configure.ac: require autoconf 2.59 * INSTALL: note the autoconf and automake version requirements. (patch from dons via darcs) * tools/c2hs/base/general/Binary.hs: #include the new ghconfig.h file when using ghc 6.4 or later. Get the value of SIZEOF_VOID_P from ghc's config.h or ghcconfig.h file. * gtk/Graphics/UI/Gtk/Gdk/Events.hsc: add Event constructor and use new marshAny for the delete, destroy, map and unmap events. * acinclude.m4: add whether each package is going built in the gtk2hs-config.h file. * Makefile.am: install gtk2hs-config.h in $(pkglibdir)/include/ * glib/glib.package.conf.in: add the $(pkglibdir)/include/ directory to the include search path so modules which use any gtk2hs package can #include to find out what packages and versions are available. * configure.ac: no need for expensive AC_CHECK_SIZEOF(void *, 4) any more since we get the SIZEOF_VOID_P from ghc's config header file. Remove a redundent assignment. Correct the description of the pango version numbers in the gtk2hs-config.h file. * gtk/Graphics/UI/Gtk/Pango/Attributes.chs.pp: I misunderstod cpp semantics first time round, so fix this again. * gtk/Graphics/UI/Gtk/Cairo.chs.pp: use qualified imports properly. * mk/chsDepend.in: make the script grock qualified c2hs import hooks. * TODO: add entry: export all the enums used in the Event, ie Button & Click 2005-10-20 Axel Simon * Makefile.am: Added a new file Attributes.chs.pp since they are needed in two files in Pango. Added this and Pango.Types to the list of no-html files. * gtk/Graphics/UI/Gtk/Pango/Attributes.chs.pp: New file used by Rendering and Layout. * gtk/Graphics/UI/Gtk/Pango/Layout.chs.pp: Completed except for two functions that are quite labor intensive. * gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp: Remove the Attribute type. * gtk/Graphics/UI/Gtk/Pango/Font.chs: Docu fixes. 2005-10-19 Duncan Coutts * gtk/Graphics/UI/Gtk/Gdk/Events.hsc: fix bug with delete events not being marshaled. Added a better error message in case we get any more of these in future. * gtk/Graphics/UI/Gtk/Abstract/Bin.chs, gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Container.chs, gtk/Graphics/UI/Gtk/Abstract/Misc.chs, gtk/Graphics/UI/Gtk/Abstract/Object.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Range.chs, gtk/Graphics/UI/Gtk/Abstract/Scale.chs, gtk/Graphics/UI/Gtk/Abstract/Scrollbar.hs, gtk/Graphics/UI/Gtk/Abstract/Separator.hs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: export to{Object} functions. * gtk/Graphics/UI/Gtk/ActionMenuToolbar/Action.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/ActionGroup.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/RadioAction.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/ToggleAction.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/UIManager.chs.pp: export to{Object} functions. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/Buttons/CheckButton.chs, gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs.pp, gtk/Graphics/UI/Gtk/Buttons/ToggleButton.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/Display/AccelLabel.chs, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs.pp, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs.pp, gtk/Graphics/UI/Gtk/Display/Statusbar.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/Embedding/Plug.chs, gtk/Graphics/UI/Gtk/Embedding/Socket.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp, gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/HScale.chs, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs, gtk/Graphics/UI/Gtk/Entry/VScale.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/General/Style.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/Layout/Alignment.chs.pp, gtk/Graphics/UI/Gtk/Layout/AspectFrame.chs, gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/Layout/Fixed.chs, gtk/Graphics/UI/Gtk/Layout/HBox.chs, gtk/Graphics/UI/Gtk/Layout/HButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/HPaned.chs, gtk/Graphics/UI/Gtk/Layout/Layout.chs, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs, gtk/Graphics/UI/Gtk/Layout/VBox.chs, gtk/Graphics/UI/Gtk/Layout/VButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/VPaned.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ImageMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/SeparatorMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/SeparatorToolItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/TearoffMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp: export to{Object} functions. * gtk/Graphics/UI/Gtk/Misc/Adjustment.chs.pp, gtk/Graphics/UI/Gtk/Misc/Arrow.chs, gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/Misc/DrawingArea.chs, gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/HandleBox.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs.pp, gtk/Graphics/UI/Gtk/Misc/Tooltips.chs.pp, gtk/Graphics/UI/Gtk/Misc/Viewport.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextMark.chs, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextTagTable.chs, gtk/Graphics/UI/Gtk/Multiline/TextView.chs.pp: export to{Object} functions. * gtk/Graphics/UI/Gtk/Ornaments/Frame.chs, gtk/Graphics/UI/Gtk/Ornaments/HSeparator.chs, gtk/Graphics/UI/Gtk/Ornaments/VSeparator.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/Scrolling/HScrollbar.chs, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs.pp, gtk/Graphics/UI/Gtk/Scrolling/VScrollbar.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/Selectors/ColorButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/ColorSelection.chs, gtk/Graphics/UI/Gtk/Selectors/ColorSelectionDialog.chs, gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserDialog.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserWidget.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileFilter.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileSelection.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FontSelectionDialog.chs: export to{Object} functions. * gtk/Graphics/UI/Gtk/TreeList/CellRenderer.hs, gtk/Graphics/UI/Gtk/TreeList/CellRendererPixbuf.chs, gtk/Graphics/UI/Gtk/TreeList/CellRendererText.chs, gtk/Graphics/UI/Gtk/TreeList/CellRendererToggle.chs, gtk/Graphics/UI/Gtk/TreeList/CellView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/IconView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/ListStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeModelSort.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeViewColumn.chs.pp: export to{Object} functions. * gtk/Graphics/UI/Gtk/Windows/AboutDialog.chs.pp, gtk/Graphics/UI/Gtk/Windows/Dialog.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp, gtk/Graphics/UI/Gtk/Windows/WindowGroup.chs: export to{Object} functions. * glade/Graphics/UI/Gtk/Glade.chs: update docs and coding style of bindings. * tools/apiGen/CodeGen.hs, tools/apiGen/ModuleScan.hs: minor apigen updates. Add the to{Object} functions to the export list. 2005-10-18 Duncan Coutts * gtk/Graphics/UI/Gtk/Gdk/Events.hsc: more cleanups to the Event structure. Rename various record selector names. Use Word32 for timestamps rather than Integer. Use the Gtk.Keys module rather than defining things locally. * gtk/Graphics/UI/Gtk/Gdk/Keys.chs: remove use of c2hs {# fun #} hooks, use normal {# call #} hooks instead. Add keyvalToChar which is used in the Event marshaling. Add documentation. * gtk/Graphics/UI/Gtk/General/StockItems.hsc: use Gtk.Keys.KeyVal for the Keyval rather than Integer. * gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: use Word32 for timestamps rather than Integer. * gtk/Graphics/UI/Gtk/Display/Label.chs.pp: use KeyVal imported from Gtk.Keys module rather than local definition. * demo/cairo/Drawing.hs, demo/fastdraw/FastDraw.hs, demo/graphic/Drawing.hs, demo/treeList/ListTest.hs: fix demos to use new event record field names. * cairo/Graphics/Rendering/Cairo/Types.chs: remove RULES pragma. It duplicates rules from ghc's libraries anyway and causes compilation problems with ghc-6.2. * demo/cairo/Text.hs: fix the text demo to take account of the changed behaviour of showText in cairo 1.0. * cairo/Graphics/Rendering/Cairo/Internal.hs, cairo/Graphics/Rendering/Cairo.hs: move the definition of the Render monad into the Internal module. * Makefile.am: various changes: do not exclude the System.Glib.Signals module from the haddock docs, merely hide it. correct gtk/Graphics/UI/Gtk/Cairo.chs to gtk/Graphics/UI/Gtk/Cairo.chs.pp in the gtk soruces list. Add a couple pango modules to the list of hidden haddock modules. Do not use the local cairo.h header but rather the system one. Fix the list of expected haddock index html files. * configure.ac: bump the revision to help people trak recent incompatible changes. 2005-10-17 Axel Simon * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Events.hsc, gtk/Graphics/UI/Gtk/General/Enums.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp: Qualify all field names of Event, rename Button enumeration to MouseButton. This change breaks code, but avoids many annoying name clashes. In particular Events doesn't have to be imported qualified anymore. * gtk/Graphics/UI/Gtk.hs, gtk/Graphics/UI/Gtk/Cairo.chs.pp: Export all Cairo drawing primitives, remove the primitive to draw a Gtk Rectangle. * gtk/Graphics/UI/Gtk/General/Structs.hsc, gtk/Graphics/UI/Gtk/Pango/Context.chs.pp, gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp, gtk/Graphics/UI/Gtk/Pango/Font.chs, gtk/Graphics/UI/Gtk/Pango/Layout.chs.pp, gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp, gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: Added Tab Stops (on the fly). Move FontMetrics into the Type module and added a new function to query the font metrics for a PangoItem. Added a new accessor function in Structs.hsc to get at the language of a PangoItem. 2005-10-17 Duncan Coutts * glib/System/Glib/FFI.hs: fix typo in withArrayLen #ifdef stuff. * configure.ac: fix for ./configure --disable-mozilla --enable-firefox * tools/c2hs/gen/GenBind.hs: use "with" rather than "withObject". This fixes deprecation warning when building cairo. 2005-10-16 Axel Simon * Makefile.am, gtk/Graphics/UI/Gtk.hs, gtk/Graphics/UI/Gtk/Pango/Context.chs.pp, gtk/Graphics/UI/Gtk/Pango/Font.chs: Added new files to make the interface to Pango easier. They regroup stuff relating to PangoContext and Fonts into single modules. This also completes the font module of Pango, still not bound are PangoFont and PangoFontSet. PangoFont is already used internally and it is questionable if any of these two types is useful to the programmer. * gtk/Graphics/UI/Gtk/Cairo.chs.pp, gtk/Graphics/UI/Gtk/Pango/Description.chs, gtk/Graphics/UI/Gtk/Pango/GlyphStorage.chs.pp, gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp: Changed due to regrouping of stuff; see above. * gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: Fixed Show instance of PangoUnits. * demo/cairo/Drawing.hs: Only render with Pango via Cairo. * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: Docu fixes. * demo/fonts/Fonts.hs, demo/fonts/Makefile: New demo listing all fonts that are installed on the system. 2005-10-15 Axel Simon * cairo/cairo.pkg.in, glib/System/Glib/FFI.hs, cairo/Graphics/Rendering/Cairo/Internal/Drawing/Cairo.chs: Make compile with ghc 6.2: Fix typo in package file, remove dependency on 'mtl' since it doesn't exist in 6.2, add withArrayLen to FFI.hs since that doesn't come with 6.2. * gtk/Graphics/UI/Gtk/Cairo.chs.pp: Add function to render Pango text in Cairo contexts. * demo/actionMenu/ActionMenu.hs: Wiggles. 2005-10-15 Duncan Coutts * cairo/Graphics/Rendering/Cairo.hs: replace the unsafe surfaceCreateSimilar with the safe withSimilarSurface. Also add renderWithSimilarSurface which is more convenient when in a Render context. Also generalise renderWith so that it can be used in an IO context and a Render context. Also make some documentation improvements. (Thanks to Paolo and Cale) * cairo/Graphics/Rendering/Cairo.hs: more minor changes. * demo/cairo/StarAndRing.hs: make this demo use the new renderWithSimilarSurface function to make it more elegant and symetric. 2005-10-14 Duncan Coutts * gtk/Graphics/UI/Gtk/Gdk/Gdk.chs: bind gdk_flush function and documentation (I needed this for implementing the SOE api). * gtk/Graphics/UI/Gtk.hs: no need to not import the Graphics.UI.Gtk.Cairo module when !ENABLE_CAIRO since the module itself only defines any functions if ENABLE_CAIRO and Gtk+ >= 2.8. 2005-10-13 Axel Simon * demo/actionMenu/ActionMenu.hs, demo/actionMenu/Makefile: Added new demo. 2005-10-11 Duncan Coutts * Makefile.am: delete the .precomp files in an ordinary "make clean" rather than "make distclean" since they are not so expensive to re-generate anymore and it seems to trip people up when they rebuild against different Gtk+ versions. * acinclude.m4: deal with libz on glibc systems in the same way as the pthread issue, ie don't directly link to it since it breaks ghci. * gtk/Graphics/UI/Gtk/Cairo.chs.pp: don't import Control.Monad.Reader unnecessarily (which otherwise causes a linker error when defined(ENABLE_CAIRO) && !GTK_CHECK_VERSION(2,8,0)) * Makefile.am: build the cairo demo. * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: for onMotionNotify in the 'hint' mode we must enable the PointerMotionMask event as well as the PointerMotionHintMask or we will not recieve any motion events. * glib/System/Glib/hsgclosure.c, glib/System/Glib/hsgclosure.h, glib/System/Glib/Signals.chs.pp: cope with signal handlers that provide a non-null return GValue but with an invalid type by ignoring them (which is what the python version does too). This fixes the Entry onEntryActivate signal and probably others. Also improve the debugging and error checking code and rename the C functions to use the gtk2hs namespace/prefix. * glib/System/Glib/MainLoop.chs.pp: new module with glib main loop functions ike the timout and idle functions and the priority constants. Also add inputAdd for arranging callbacks upon activity on a file descriptor. * gtk/Graphics/UI/Gtk/General/Structs.hsc: remove priority constants. * gtk/Graphics/UI/Gtk/General/General.chs: remove timeout and idle callback functions and import them from System.Glib.MainLoop instead. * Makefile.am: add MainLoop.chs.pp to glib SOURCES. 2005-09-25 Axel Simon * glade/Glade.chs: Fixed a comment reported by Marco Tulio Gontijo e Silva. * gtk/Graphics/UI/Gtk.hs: Only import Cairo stuff if Cairo is present. 2005-09-22 Duncan Coutts * mozembed/Graphics/UI/Gtk/MozEmbed/.keep: add file just to ensure that cvs creates the directory since otherwise it'd be empty and cvs sometimes prunes empty directories. * compile, missing: add these autotools files so that users don't have to use autoreconf -i. (Other autotool projects seem to keep these files in cvs and I'm getting tired of telling people they need to use autoreconf with the -i flag.) 2005-09-20 Duncan Coutts * sourceview/Graphics/UI/Gtk/SourceView/SourceBuffer.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceLanguage.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceLanguagesManager.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceMarker.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceStyleScheme.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceTag.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceTagTable.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceView.chs: export the castTo* functions. 2005-09-19 Duncan Coutts * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: bug fix. Add a special case to widgetAddEvents work around a GTK+ bug. See http://bugzilla.gnome.org/show_bug.cgi?id=316702 2005-09-16 Duncan Coutts * glade/Graphics/UI/Gtk/Glade.chs: make sure the widget returned from xmlGetWidget is fully evaluated so that casting errors get reported from xmlGetWidget rather than when the widget is first used and restructure the code slightly so that the named widget not existing also gets reported from xmlGetWidget rather than at first use. 2005-09-15 Duncan Coutts * TODO: note a possible solution to the win32 non-console app problem. 2005-09-14 Duncan Coutts * configure.ac: allow the gtkmozembed package to be built agsinst the Mozilla Firefox libraries. It's configurable with --enable-firefox. Do not use the AM_HCFLAGS variable since it upsets some versions of autoconf. * mk/common.mk: remove use of AM_HCFLAGS 2005-09-11 Duncan Coutts * cairo/cairo.package.conf.in: remove cairo-pdf.h and cairo-ps.h from the includes since we're not currently building the pdf/ps backends. 2005-09-10 Duncan Coutts * cairo/Graphics/Rendering/Cairo.hs: haddock fixes. 2005-09-09 Duncan Coutts * tools/apiGen/Makefile: update for Gtk+ 2.8 sources * tools/apiGen/CodeGen.hs: small updates for Gtk+ 2.8 2005-08-30 Duncan Coutts * cairo/Graphics/Rendering/Cairo.hs: fix bug with allocating surfaces. 2005-08-29 Duncan Coutts * cairo/Graphics/Rendering/Cairo/Types.chs: merge patches from Paolo; move the definition of the Render monad into the Types module. * cairo/Graphics/Rendering/Cairo.hs: merge patches from Paolo; add haddock documentation for many functions. * demo/cairo/Drawing.hs, demo/cairo/StarAndRing.hs, demo/cairo/Text.hs, demo/cairo/Makefile: add cairo demos. * glib/System/Glib/Properties.chs: make the enum and object property constructor functions take the enum/object GType as an argument. This should make these types of properties actually work. * gtk/Graphics/UI/Gtk/Abstract/Container.chs, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp, gtk/Graphics/UI/Gtk/Misc/Arrow.chs, gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserButton.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: pass the appropriate enum/object GType as an extra argument to the property constructor. * Makefile.am: build the cairo Types module using -fglasgow-exts and exclude most other modules from the haddock docs. * gtk/Graphics/UI/Gtk/Cairo.chs.pp: merge patches from Paolo and myself to make the Gtk cairo backend use the high level api style. * demo/cairo/Drawing.hs: update the Gtk cairo demo to use the high level api. * cairo/Graphics/Rendering/Cairo.hs: merge more documantation changes by Paolo (and some small changes by myself). * glib/System/Glib/Attributes.hs: improve the documentation for the attributes api and rename the Prop type to something less confusing. * glib/System/Glib/GError.chs.pp: simple doc reformatting and use Gtk2Hs rather than gtk2hs. * gtk/Graphics/UI/Gtk/ActionMenuToolbar/UIManager.chs.pp: name the attributes consistently with the other functions. Export the uiManagerUi attribute and update its default value (as of Gtk+ 2.8.3). * gtk/Graphics/UI/Gtk/TreeList/CellRenderer.hs: add missing export for toCellRenderer casting function. * gtk/Graphics/UI/Gtk.hs: do not import toCellRenderer from Graphics.UI.Gtk.Types, so no need to import Graphics.UI.Gtk.Types at all. Import ConnectId, disconnect from System.Glib.Signals instead of Graphics.UI.Gtk.Signals so Graphics.UI.Gtk.Signals does not need to be imported at all. * Makefile.am: exclude the Gtk.Signals module from the haddock documentation. * configure.ac: bump version to 0.9.9.5 in preparation for a special Gtk2Hs release including the cairo code. This is to mark the completion of Paolo's Google Summer of Code project. 2005-08-27 Duncan Coutts * cairo/COPYRIGHT, cairo/cairo.h, cairo/cairo.pkg.in, cairo/cairo.package.conf.in, cairo/cairo.cabal.in, cairo/Graphics/Rendering/Cairo.hs, cairo/Graphics/Rendering/Cairo/Types.chs, cairo/Graphics/Rendering/Cairo/Matrix.chs, cairo/Graphics/Rendering/Cairo/PDF.hs, cairo/Graphics/Rendering/Cairo/PS.hs, cairo/Graphics/Rendering/Cairo/Internal.hs, cairo/Graphics/Rendering/Cairo/Internal/Utilities.chs cairo/Graphics/Rendering/Cairo/Internal/Drawing/Cairo.chs, cairo/Graphics/Rendering/Cairo/Internal/Drawing/Paths.chs, cairo/Graphics/Rendering/Cairo/Internal/Drawing/Patterns.chs, cairo/Graphics/Rendering/Cairo/Internal/Drawing/Text.chs, cairo/Graphics/Rendering/Cairo/Internal/Drawing/Transformations.chs, cairo/Graphics/Rendering/Cairo/Internal/Fonts/FontOptions.chs, cairo/Graphics/Rendering/Cairo/Internal/Surfaces/Surface.chs, cairo/Graphics/Rendering/Cairo/Internal/Surfaces/Image.chs cairo/Graphics/Rendering/Cairo/Internal/Surfaces/PNG.chs, cairo/Graphics/Rendering/Cairo/Internal/Surfaces/PDF.chs, cairo/Graphics/Rendering/Cairo/Internal/Surfaces/PS.chs: add cairo bindings package by Paolo Martini. * gtk/Graphics/UI/Gtk/Cairo.chs.pp: add Gtk/cairo integration module. * gtk/Graphics/UI/Gtk.hs: re-export the Graphics.UI.Gtk.Cairo module. * configure.ac, Makefile.am: add the cairo package to the build sytem. * gtk/gtk.pkg.in, gtk/gtk.package.conf.in, gtk/gtk.cabal.in: make the gtk package depend on the cairo package if we're building with cairo. * AUTHORS: add Paolo Martini. * gtk/Graphics/UI/Gtk/Cairo.chs.pp: make it build correctly. * cairo/cairo.cabal.in, cairo/cairo.package.conf.in: use BSD3 rather than BSD for the license field. * cairo/Graphics/Rendering/Cairo/Internal/Surfaces/PNG.chs, cairo/Graphics/Rendering/Cairo.hs: merge patches from Paolo to do the error checking in surfaceWriteToPNG. 2005-08-26 Duncan Coutts * configure.ac: add glib and pango to the PKG_CHECK_MODULES test. Hopefully this will make things work better on Mac OS X. 2005-08-26 Axel Simon * gtk/Graphics/UI/Gtk/Gdk/Events.hsc: Derive Ord for Modifiers. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp: Pass a TextTagTable as the Maybe argument to textBufferNew. Using a class context only fails to compile if Nothing is passed in. * gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs.pp: Conditionally compile some functions for Gtk versions earlier than 2.8. 2005-08-25 Duncan Coutts * gtk/Graphics/UI/Gtk/Pango/Layout.chs.pp: remove the definition of the EllipsizeMode and import the version that already existed in the Pango.Enum module instead. And use the PANGO_CHECK_VERSION test. * gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp: use the PANGO_CHECK_VERSION test rather than GTK_CHECK_VERSION. * gtk/Graphics/UI/Gtk/ActionMenuToolbar/UIManager.chs.pp, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolButton.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp: trivial haddock fixes. 2005-08-24 Duncan Coutts * mk/common.mk: strip two suffixes off to get the package name, due to the fact that we're now caling the package files foo.package.conf. * gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs, gtk/Graphics/UI/Gtk/Misc/Adjustment.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs, gtk/Graphics/UI/Gtk/Windows/Dialog.chs, gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs.pp, gtk/Graphics/UI/Gtk/Misc/Adjustment.chs.pp, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs.pp, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs.pp, gtk/Graphics/UI/Gtk/Windows/Dialog.chs.pp: rename some .chs files to .chs.pp files in preparation for adding bits conditional on Gtk+ 2.8. * Makefile.am: Rename the above files. Also, only compile the filechooser demo if the glade package was built. * configure.ac: Add cases for Gtk+ 2.8. * tools/callbackGen/gtkmarshal.list: add new signal type needed by some new Gtk+ 2.8 signal. * gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Scale.chs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: merge Gtk+ 2.8 updates. these are mostly documentation changes/additions and new functions. The code names of properties now use '-' as a word seperator by default rather than '_' (and using the right name saves some internal translation and allocation in glib). * gtk/Graphics/UI/Gtk/ActionMenuToolbar/Action.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/UIManager.chs.pp: as above. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs.pp, gtk/Graphics/UI/Gtk/Buttons/ToggleButton.chs: as above. * gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs.pp, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs.pp: as above. * gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/HScale.chs, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs, gtk/Graphics/UI/Gtk/Entry/VScale.chs: Gtk+ 2.8 updates as above. * gtk/Graphics/UI/Gtk/Layout/Alignment.chs.pp, gtk/Graphics/UI/Gtk/Layout/AspectFrame.chs, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs: Gtk+ 2.8 updates as above. * gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp: as above. * gtk/Graphics/UI/Gtk/Misc/Adjustment.chs.pp, gtk/Graphics/UI/Gtk/Misc/Arrow.chs, gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/HandleBox.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs.pp: Gtk+ 2.8 updates as above. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextIter.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextView.chs.pp: as above. * gtk/Graphics/UI/Gtk/Ornaments/Frame.chs: Gtk+ 2.8 updates as above. * gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs.pp: as above. * gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileSelection.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs: as above. * gtk/Graphics/UI/Gtk/TreeList/CellView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp: as above. * gtk/Graphics/UI/Gtk/Windows/AboutDialog.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: Gtk+ 2.8 updates as above. * glib/System/Glib/Properties.chs: add an extra property constructor. 2005-08-20 Axel Simon * glib/System/Glib/UTFString.hs, gtk/Graphics/UI/Gtk.hs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Drawable.chs.pp, gtk/Graphics/UI/Gtk/General/Enums.chs.pp, gtk/Graphics/UI/Gtk/General/Structs.hsc, gtk/Graphics/UI/Gtk/Pango/Description.chs, gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp, gtk/Graphics/UI/Gtk/Pango/Markup.hs, gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp, gtk/Graphics/UI/Gtk/Pango/Types.chs.pp : Major rework of the types in Pango in order to add functions that take indices as offsets to Haskell Strings but call Gtk with offsets to UTF-8 string buffers. The result is a data type UTFCorrection in UTFString.hs a change of most pango newtypes to data types that contain this correction. The new pango interface is complete with the exceptions of LogAttrs (to break unicode strings) and Tab Stops. In particular I identified two data types (PangoItem and GlyphItem) that are crucial and decided to hide all the other Pango types. PangoAttributes are, for example, are now completely represented in Haskell and only used when creating a new PangoItem. * Makefile.am, gtk/Graphics/UI/Gtk/Pango/Layout.chs.pp, gtk/Graphics/UI/Gtk/Pango/Layout.chs: Renamed the latter to the former. * configure.ac: Added a macro to check for the version of Pango. 2005-08-8 Axel Simon * configure.ac: Bump version number to 0.9.9. 2005-08-7 Axel Simon * configure.ac, Makefile.am: Define the conditional variable HYPENATED_DOCS which gets set if haddock with version greater than 0.6 is detected. The new version of haddock creates URLs with - in them instead of . to separate modules. * Makefile.am: Added Gtk.Pango.Types.hs to the html_HSFILES_HIDDEN variable since make reinvokes haddock since it doesn't produce an html page for this file - it is hidden. 2005-08-3 Duncan Coutts * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp, gtk/Graphics/UI/Gtk/General/General.chs, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp, gtk/Graphics/UI/Gtk.hs: export a few gdk and pango enum types. 2005-08-1 Duncan Coutts * gtk/Graphics/UI/Gtk/Abstract/Container.chs, gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextIter.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: export a few enum types. 2005-07-30 Axel Simon * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Events.hsc, gtk/Graphics/UI/Gtk/General/IconFactory.chs.pp, gtk/Graphics/UI/Gtk/General/Structs.hsc: Removed documentation FIXMEs in Widget.chs. * gtk/Graphics/UI/Gtk/Layout/Layout.chs: Added a function to access the DrawWindow. * gtk/Graphics/UI/Gtk/General/Structs.hsc: Meddled with pangoScale again. * gtk/Graphics/UI/Gtk/Pango/Description.chs, gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp, gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: Documentation fixes. In particular, hide the Types module. * gtk/Graphics/UI/Gtk/Pango/Layout.chs: Docu fixes and added a constructor for the empty layout. The constructor is called layoutEmpty so that it doesn't clash with Layout.Layout.layoutNew. 2005-07-29 Duncan Coutts * tools/c2hs/c/CNames.hs: add a case for CAsmExt that does nothing, but at least doesn't cause a pattern match failure. 2005-07-27 Duncan Coutts * tools/c2hs/c/CAST.hs: add new asm constructors for a couple data types. But only as place holders, they do not hold the whole asm statement. * tools/c2hs/c/CLexer.x: add the asm/__asm/__asm__ keyword. * tools/c2hs/c/CParser.y: add support for asm top level declarations, asm statements (including GNU C extended asm syntax) and asm annotations on function declarations. Also support C string literal concatentation (which is often used in asm statements). * gconf/gconf.package.conf.in, glade/glade.package.conf.in glib/glib.package.conf.in, gtk/gtk.package.conf.in, mogul/mogul.package.conf.in, mozembed/mozembed.package.conf.in, sourceview/sourceview.package.conf.in: rename the .cabal files to .package.conf files since these are not real cabal files but are "installed package info" files for ghc-pkg. * gconf/gconf.cabal.in, glade/glade.cabal.in, glib/glib.cabal.in, gtk/gtk.cabal.in, mogul/mogul.cabal.in, mozembed/mozembed.cabal.in, sourceview/sourceview.cabal.in: add genuine cabal files. These are processed in much the same way as before but are never used. * configure.ac: change the USE_CABAL var to USE_NEW_PKG_FORMAT and reflect the change in the package names. Add the all .package.conf files to the list of files that configure substitutes into. * Makefile.am: change USE_CABAL to USE_NEW_PKG_FORMAT and .cabal to .package.conf. Substitute into the .cabal files as well as the package files. * docs/tools/AddLinks.hs: Add support for 'ordinary' html, rather than xhtml. Currently doesn't do much highliting. * tools/apiGen/Makefile: minor update to the gdk section. * TODO: add a few more notes. * glib/System/Glib/FFI.hs: remove foreignFree since it is no longer used anywhere. Use a simpler implementation of nullForeignPtr when using GHC 6.2 or later. 2005-07-23 Duncan Coutts * gtk/Graphics/UI/Gtk/General/General.chs, glib/System/Glib/Signals.chs.pp: fix segfaults/fatal errors due to unsafe foreign calls on g_signal_handler_disconnect and g_source_remove. Make them both use safe calls. However I don't understand why they are re-entering Haskell land. Perplexing. * gtk/Graphics/UI/Gtk/Multiline/TextIter.chs.pp: change mkTextIter to mkTextIterCopy and as the name suggests make it take a copy of the iter. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp: change uses of mkTextIter to mkTextIterCopy. This fixes the segfaults due to trying to free C stack allocated 'GtkTextIter's. * gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp: take advantage of the TreeIter marshaling utility functions. This simplifies the code and eliminates the only uses of foreignFree. * gtk/Graphics/UI/Gtk/Selectors/FileChooserButton.chs.pp: make the FileChooserButton an instance of the FileChooser interface. 2005-07-21 Duncan Coutts * gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp: trivial doc fix. 2005-07-20 Duncan Coutts * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp: make text_buffer_create_mark a safe foreign call since calling it can emit a signal. 2005-07-14 Axel Simon * gtk/Graphics/UI/Gtk/Abstract/Container.chs: Export ContainerForeachCB. 2005-07-14 Axel Simon * Makefile.am, gtk/Graphics/UI/Gtk.hs, gtk/Graphics/UI/Gtk/Gdk/Pixmap.chs: Added Pixmap as in gdk_pixmap, not the deprecated gtk_pixmap. * gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp: Fixed a memory allocation bug found by Armin Groesslinger. Fixed a docu bug. * gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: Fixed compilation against Gtk 2.2. * AUTHORS: Added Armin Groesslinger to the contributors. 2005-07-6 Duncan Coutts * gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp: export the ButtonBoxStyle flags type. We need to audit these things more carefully. * gtk/Graphics/UI/Gtk.hs: export Graphics.UI.Gtk.Pango.Description because it contains useful user-facing things. I don't think there's any private/internal stuff exported from it. * demo/buttonbox/ButtonBox.hs: update the demo to use the "set" style syntax. Also show how to use child attributes. 2005-07-5 Duncan Coutts * demo/concurrent/Progress.hs: use timeoutAddFull rather than idleAdd for the yield concurrency thing. This change means that it no longer takes 100% cpu time. By adjusting the timeout you can balance the latency and the polling load. A timeout value of 20 to 50 milliseconds seems to give adequete latency with negligable load. Also make the progress bar pulse more frequent. 2005-07-3 Axel Simon * gtk/Graphics/UI/Gtk/General/Enums.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Box.chs: Moved and expanded documentation on Packing in containers. 2005-07-3 Duncan Coutts * glib/System/Glib/Properties.chs: mark g_object_set_property as not being safe. That function can indeed call back into Haskell land since setting properties can trigger signals. * gtk/Graphics/UI/Gtk/TreeList/CellRendererText.chs: fix bug, setting editable attribute to Nothing should set editable-set to False. * gtk/Graphics/UI/Gtk/Abstract/Container.chs: remove containerChild(Get|Set)Property since it suffers from the same problem that object(Get|Set)Property had. Instead of these functions, users can use type safe child attributes (not yet added). * demo/treeList/ListTest.hs: show how to set an attribute on the renderer that applies to all the rows, ie it's global rather than being determined on a per-row bssis by the data model. * gtk/Graphics/UI/Gtk/General/General.chs: tidy up the documentation. * gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: add windowTitle attribute. Change windowGetTitle to cope with NULLs and fix docs. * tools/apiGen/format-docs.xsl: extract child properties. * tools/apiGen/Makefile: bug fix and update vte params. * tools/apiGen/Api.hs: extract the childprop information. * tools/apiGen/Docs.hs: extract the childprop documentation. * tools/apiGen/CodeGen.hs: produce code for the child attributes. * apicoverage/Makefile: minor change, make it look for .chs(.pp) files rather than .hs files and remove redundant filter. * apicoverage/gtk.ignore: minor update. * gtk/Graphics/UI/Gtk/Abstract/ContainerChildProperties.chs: a module much like the glib Properties one, but for container child properties rather than ordinary properties. It defines functions for constructing attributes based on child properties. * Makefile.am: add ContainerChildProperties.chs to source list. * gtk/Graphics/UI/Gtk/Abstract/Container.chs: change the documentation on child attributes to reflect the new system. * gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs, gtk/Graphics/UI/Gtk/Layout/Layout.chs, gtk/Graphics/UI/Gtk/Layout/Fixed.chs: add child attributes. * gtk/Graphics/UI/Gtk/General/Enums.chs.pp: add toPacking and fromPacking functions for converting between the Packing enum and the expand and fill Gtk+ concepts. * gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp: add child attributes. For the expand and fill attributes, replace them with a packing attribute that gets/sets both the expand and fill attributes. * glib/System/Glib/Properties.chs: use withCString rather than withUTFString for the proeprty names since they are internal and always ASCII. * demo/hello/World.hs: update the hello world demo to reflect some of the changes we made to the one on the website. Also add setting of the window title as an example of setting multiple properties at once. * demo/profileviewer/ProfileViewer.hs: add an about box to the profile viewer. * gtk/Graphics/UI/Gtk.hs: export the ButtonBox module which was missing for some reason. * tools/c2hs/c/CLexer.x: reformat to fit in 80 columns. Use little token functions to improve clarity. Only generate unique names for tokens that actually need them (saves 5% running time). This is the version sent to Manuel for inclusion in mainline c2hs. * tools/c2hs/c/CParser.y: reformat to fit in 80 columns. This is the version sent to Manuel for inclusion in mainline c2hs. * tools/c2hs/toplevel/Main.hs: remove the debugging/timing messages. 2005-07-2 Duncan Coutts * glib/System/Glib/GValueTypes.chs: add value(Set|Get)Enum and value(Set|Get)Flags. Remove use of valueInit since it is done elsewhere. * glib/System/Glib/Properties.chs: use valueInit in objectSetPropertyInternal and objectGetPropertyInternal. Modify other object(Set|Get)Property* functions to pass the GType. * glib/System/Glib/StoreValue.hsc: use valueInit in valueSetGenericValue and remove object(Set|Get)PropertyGeneric since they are not used much and are hard to implement correctly. * gtk/Graphics/UI/Gtk/Abstract/Object.chs.pp: remove objectSetProperty and objectGetProperty which were just wrappers around object(Set|Get)PropertyGeneric. * gtk/Graphics/UI/Gtk/TreeList/CellRenderer.hs: change the implementation of cellRendererSet and cellRendererGet because objectSetProperty and objectGetProperty were removed. For object(Set|Get)PropertyInternal we do have the GType available from the Attribute. Even so, it would be preferable if cellRenderer(Set|Get) were replaced with ordinary type safe Attributes. 2005-07-1 Duncan Coutts * sourceview/sourceview.cabal.in: switch the order of include files so they get #included in the right order. This is possibly rather fragile. * docs/prologue.txt.in: prologue text for the Haddock reference docs. * Makefile.am: hide glib/System/Glib/FFI.hs rather than excluding it so that haddock can find more links. Fix index name. Use prologue text file. * configure.ac: substitute the version number in docs/prologue.txt.in and change the commented-out "no console window" linker command to a shorter variant. 2005-06-23 Duncan Coutts * docs/tutorial/Makefile: change the base url to point ot the 0.9.8 docs. 2005-06-22 Duncan Coutts * Makefile.am: some minor fixes suggested by the debian packaging people. Clean the generated .hs files for the parse & lexer on make maintainerclean rather than on distclean. Use nobase_hi_DATA rather than nobase_hi_SCRIPTS so that the .hi files do not get installed with +x execute permissions. Include gtk2hs.haddock in the files that get cleaned and make sure all the haddock index files get cleaned. Install the gtk2hs.haddock file into the same dir as the html docs rather than the directory below, by default. 2005-06-21 Duncan Coutts * AUTHORS: note that Axel is author and developer and that Duncan is current maintainer. Apparently this better reflects reality. * demo/fastdraw/FastDraw.hs: change fastdraw demo to add more comments and make it compile with -O by default (which makes a large difference). Use a faster looping construct and add a comment mentioning that GHC is better at optimising the doFromTo kind of loop than the "sequence_ [ ... | x <- ... ]" kind of loop. 2005-06-20 Duncan Coutts * gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp: change the return type of entryCompletionGetEntry back to what it was previously which is what it should be. It must have been accidentally changed in a over-zelous merge from the generated modules. Found this accidental change using new apidiff tool. * gtk/Graphics/UI/Gtk/Gdk/Events.hsc: export the Modifier data constructors and make it an instance of Eq, but Show is probably not necessary. * gtk/Graphics/UI/Gtk/Gdk/DrawWindow.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Drawable.chs.pp, gtk/Graphics/UI/Gtk/Gdk/GC.chs, gtk/Graphics/UI/Gtk/Gdk/Gdk.chs, gtk/Graphics/UI/Gtk/Gdk/Keys.chs, gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Region.chs.pp: tidy up the haddock header docs. Move the TODO items so they don't appear in the generated docs. * configure.ac: Bump version to 0.9.8. 2005-06-18 Duncan Coutts * acinclude.m4: fix file name quoting in the .cabal files so that paths with spaces in get read properly. * gconf/gconf.cabal.in, glade/glade.cabal.in, glib/glib.cabal.in gtk/gtk.cabal.in, mogul/mogul.cabal.in, mozembed/mozembed.cabal.in sourceview/sourceview.cabal.in: put the import-dirs value in "" quotes so that paths with spaces in get read properly (fixes installing on Windows with GHC 6.4 and the default install location of "C:/Program Files/..."). Also rename the field extra-ld-opts to ld-options since that is what it should actually be called for the new cabal format (fixes linker error when building gconf demo on OpenBSD). 2005-06-16 Axel Simon * glib/System/Glib/hsgclosure.c: add more compatability with GHC 5.04 * gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp: Fixed some documentation. 2005-06-15 Duncan Coutts * configure.ac: enable the new GClosure-based signals implementation for GHC 6.4.1 and later (for which it now works with GHCi). * Makefile.am: the treeList and fastdraw demos require Gtk+ 2.2. * glib/System/Glib/hsgclosure.c: add compatability for GHC 5.04. * Makefile.am: use -Werror-implicit-function-declaration when compiling glib/System/Glib/hsgclosure.c so we can catch changes in the GHC RTS API. 2005-06-15 Axel Simon * Makefile.am: Use correct path to user-supplied package.conf file when building demos. Add the --force flag to ghc-pkg to circumvent a bug in earlier versions of ghc-pkg, namely that it not picks up global packages when it checks that dependencies are satisfied. * demo/gconf/Makefile: Add missing dependency on gtk. This only showed when compiling with a local package file. 2005-06-14 Duncan Coutts * Makefile.am: fix for ghc 6.4 on windows when compiling via C (which is implied by -O), use -I. so that ghc can find #include"gtk/wingtk.h" Add the fastdraw demo files to the EXTRA_DIST list and add the list of demo that are built by the make installtest target. * COPYING.LIB: update to LGPL 2.1 since virtually every module now carries that license. A small number of modules carry LGPL 2.0 notices but they also state that the licensee may at their discretion use any later version of the LGPL license. 2005-06-13 Axel Simon * INSTALL: Update install instructions. * demo/hello/World.hs: Simplified the hello-world program. 2005-06-13 Duncan Coutts * demo/fastdraw/FastDraw.hs demo/fastdraw/Makefile: these accidentally did not get into the branch-0-9-8 because they were not in my checkout when I did the branch. * Makefile.am: use the correct ghc-pkg syntax for ghc-6.2 and earlier. * configure.ac: use a more traditional way of setting an argument's default value. * tools/c2hs/c/CParser.hs tools/c2hs/c/CLexer.hs: remove the old lexer and parser. * tools/c2hs/c/CParser2.y tools/c2hs/c/CParser.y, tools/c2hs/c/CLexer2.x tools/c2hs/c/CLexer.x: rename the new lexer and parser (CLexer2.x, CParser2.y) to simply CLexer.x and CParser.y. * Makefile.am, configure.ac: remove the old C lexer and parser and rename the new lexer and parser (CLexer2.x, CParser2.y) to simply CLexer.x and CParser.y. * tools/c2hs/c/C.hs: use only the new lexer and parser rather than using both with the decision made at runtime. * tools/c2hs/toplevel/Main.hs, tools/c2hs/state/Switches.hs: remove the command line switch which used to select which C parser implementation to use. Also remove the debug option to dump the C AST after parsing. * tools/c2hs/base/syms/Attributes.hs, tools/c2hs/c/CAST.hs: remove Show instances for the AST data types since they are no longer needed. * tools/c2hs/c/CPretty.hs: add back the old Show instance for CDecl. 2005-06-11 Duncan Coutts * Makefile.am: add demo/calc/calc.glade to EXTRA_DIST. 2005-06-10 Duncan Coutts * configure.ac: bump version to 0.9.7.92, which is the second 0.9.8 release candidate. 2005-06-9 Axel Simon * gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp: Fixed treeSelectionSelectedForeach which had some arguments swapped around, giving a Gtk-CRITICAL message and no selected rows. * demo/treeList/ListTest.hs: Added two ways to get selected rows. 2005-06-9 Duncan Coutts * configure.ac: Use the new GClosure based signals implementation on x86_64 arch. Tidy up the packager mode logic to make it more comprehensable and extensable. * Makefile.am: use $(SED) rather than sed. Use sed -e s1 -e s2 rather than multiple sed invocations in a pipeline. Use '|' character rather than ':' as the sed 's' command seperator since paths on windows can contain the ':', eg "c:\". Remove the sed substitution upon registering since it is already done by the install-exec-local. Split the install-data-hook and uninstall-hook into two versions depending on USE_CABAL. This allows us to use the natural syntax for both versions rather than having to try to find syntax that works with both versions (anyway, the new cabal requires the version number as part of the package name when unregistering). * glib/glib.cabal.in, gtk/gtk.cabal.in, mogul/mogul.cabal.in, glade/glade.cabal.in, gconf/gconf.cabal.in, sourceview/sourceview.cabal.in, mozembed/mozembed.cabal.in: update the homepage url to http://haskell.org/gtk2hs/ * mk/common.mk: add $(AM_HCFLAGS) everywhere we currently have $(HCFLAGS), the HCFLAGS now belong to the user and are not set anywhere by the build system (except by ./configure --with-hcflags=) this allows the build system to use AM_HCFLAGS itself. * configure.ac: ghc 6.4 has slightly different dependency chasing behaviour (-M option) and it doesn't define WIN32 when cpp'ing .hs files so the dep generation for mogul chokes on windows because in the gtk/Graphics/UI/Gtk.hs file it conditionally imports things based on WIN32 being defined. So we need to supply -DWIN32 more globally. So set AM_HCFLAGS += -DWIN32 on win32. Also use AM_HCFLAGS for the default flags rather than HCFLAGS. Add a couple things to make it easier to generate the installer on windows. Set WIN32_INSTALLER if we're in packager mode on windows and find the Gtk installation prefix which is used in preparing the .pkg/.cabal files for the installer. * Makefile.am: don't add -DWIN32 to the gtk package's HCFLAGS since that is now added more globally. If WIN32_INSTALLER then do the package file variable substitution differently because the windows installer will do some of the substitutions later depending on where Gtk and Gtk2Hs happen to get installed on the end users machine. 2005-06-7 Duncan Coutts * acinclude.m4: add two new macros to replace the checkDirs script. GTKHS_PACKAGE_FILTER_CFLAGS(RESULT_CFLAGS, FILTER_CFLAGS, INPUT_CFLAGS) and there is a similar one for LDFLAGS. It assigns to RESULT_CFLAGS only the INPUT_CFLAGS that refer to existing directories and those that are not yet in the FILTER_CFLAGS. * configure.ac: change the calls to the checkDirs script for calls to the two new macros. In particular the global user supplied CFLAGS and LDFLAGS are not used as the FILTER_(C|LD)FLAGS as implicitly happened before and which caused build problems on OpenBSD. * configure.ac: make sure we only fail due to problems with the version of happy if we would actually use happy during the build (ie not in a normal distribution tarball). * configure.ac: bump version to 0.9.7.91, which is the first 0.9.8 release candidate. 2005-06-7 Axel Simon * configure.ac: Fail if happy version is less than 1.15. 2005-06-5 Duncan Coutts * Makefile.am: instead of doing the .pkg/.cabal file substitution in the install-data-local hook, do it in the install-exec-local hook because this happens before the .pkg/.cabal files get installed. 2005-06-3 Duncan Coutts * configure.ac: use the correct variable in the 32bit/64bit test. Since we're using the HSTOOLFLAGS when compiling .hs files, there's no need to have -Hxm in the default HCFLAGS, so it's now just -O. * acinclude.m4: fix macro to use the right variable, this fixes the --enable-packager-mode * mk/common.mk: use the HSTOOLFLAGS when compiling .hs files. Use the user supplied CFLAGS LDFLAGS and CPPFLAGS in the .hsc to .hs rule. * Makefile.am: use $(MAKE) rather than 'make' for systems with gmake. 2005-06-2 Duncan Coutts * tools/c2hs/c/CParser2.y: generalise the places where GNU C attributes are allowed, so hopefully they are now allowed wherever the old parser allowed them. Allow them after each declaration specifier rather than just at the end of a sequence of declaration specifiers. This fixes a parse error in the glib header files on windows. Also rename the GNU C attributes non-terminal and make it possibly empty so some other rules can be simplified. We still need a non-empty version however in one place to avoid a shidt/reduce conflict. * Makefile.am: include the parser and lexer .hs files in the distributed sources list so that users will not need alex and happy installed on their systems. Also make these files be cleaned only on distclean rather than a normal clean. * configure.ac: add an error message if one tries to configure using an external c2hs since this doesn't work. Modify the tests for alex and happy to only report errors if the tools would actually be needed. This test should deal with the case of a cvs checkout in which case alex and happy will be needed and should also deal with a normal distribution tarball which should not need alex and happy since the prebuilt source files will be included. * mk/common.mk: stick the heap limit right down since the new parser allows us to do this. Yay! * gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp: use pixbuf_savev_utf8 rather than pixbuf_savev only after Gtk+ 2.6.5 since this is when it was first added. This fixes building on widows with Gtk+ 2.6.0 to 2.6.4. * configure.ac: in packager mode make it default to --without-pkgreg since this is what most packagers will want. * configure.ac: add a test to detect if there is an old copy of config.h hanging around that might mess up the build. Also remove the -C-D__signed=signed option to c2hs since the c2hs lexer has recognised __signed as an alias of signed for quite some time now. * mk/common.mk, configure.ac: move the decision about what to set for the HSTOOLFLAGS from mk/common.mk to configure.ac which is a better place to make the decision and where we have access to more like whether we're runnning on a 32bit or 64bit machine. Also remove EXTRA_HFILES variable from configure.ac since it is not used anywhere. * mk/common.mk: pass all ld flags to ghc escaped with -optl. 2005-06-1 Duncan Coutts * tools/c2hs/c/CLexer2.x, tools/c2hs/c/CParser2.y: various tidying up; remove debugging code, remove unused code. Do some operations slightly more strictly. Add better error reporting facilites to the lexer / parser monad and use that do do propper error messages like in the original lexer and parser. * gtk/Graphics/UI/Gtk/Multiline/TextIter.chs.pp: change an #elif with an empty condition to a normal #else since older versions of gcc's cpp traditional mode do not like the former construct. 2005-06-01 Axel Simon * Makefile.am, configure.ac: Turn alex and happy into variables. Only check for these if we are building the local c2hs. 2005-05-31 Duncan Coutts * tools/c2hs/c/CLexer2.x: a new alex based C lexer. * tools/c2hs/c/CParser2.y: a new happy based C parser. * tools/c2hs/state/Switches.hs, tools/c2hs/toplevel/Main.hs: add a command line flag to switch beteen the old and new parsers. Also add an extra dump kind which dumps the C AST after parsing. * tools/c2hs/c/CAST.hs, tools/c2hs/base/syms/Attributes.hs, tools/c2hs/c/CPretty.hs: make the C AST showable and remove the existing Show instance which used the pretty printer (used in error messages). This change is only for the purposes of testing the new parser and is not permanent. * tools/c2hs/c/C.hs: switch between the two lexer & parser implementations at runtime depending on the command line flag. Change the tracing message so we can be sure which parser implementation is being used (use -d trace to see this). Add the C AST dump feature (use -d ast to get this dump). * Makefile.am: add the new files to the c2hs sources lists. Add rules for building the lexer and parser using alex and happy. Automake recognises .y files as belonging to yacc which is annoying so we have to do it slightly differently. 2005-05-21 Duncan Coutts * mogul/GetWidget.hs, mogul/MDialog.hs, mogul/Mogul.hs, mogul/NewWidget.hs, mogul/TreeList.hs, mogul/WidgetTable.hs: remove old files. * sourceview/SourceBuffer.chs, sourceview/SourceIter.chs, sourceview/SourceLanguage.chs, sourceview/SourceLanguagesManager.chs, sourceview/SourceMarker.chs, sourceview/SourceStyleScheme.chs, sourceview/SourceTag.chs, sourceview/SourceTagStyle.hsc, sourceview/SourceTagTable.chs, sourceview/SourceView.chs: remove more old files. * glib/System/Glib/Signals.chs.pp: arrange for GClosure to be defined and exported irrespective of USE_GCLOSUE_SIGNALS_IMPL so it can be used elsewhere. * glib/System/Glib/Signals.chs.pp, glib/System/Glib/FFI.hs: changed license from GPL to LGPL 2.1 * gtk/Graphics/UI/Gtk.hs: changed license from GPL to LGPL 2.1 and tidied up the module documentaion. * mogul/Graphics/UI/Gtk/Mogul/GetWidget.hs, mogul/Graphics/UI/Gtk/Mogul/MDialog.hs, mogul/Graphics/UI/Gtk/Mogul/NewWidget.hs, mogul/Graphics/UI/Gtk/Mogul/TreeList.hs, mogul/Graphics/UI/Gtk/Mogul/WidgetTable.hs, mogul/Graphics/UI/Gtk/Mogul.hs: changed license from GPL to LGPL 2.1 * sourceview/Graphics/UI/Gtk/SourceView/SourceBuffer.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceIter.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceLanguage.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceLanguagesManager.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceMarker.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceStyleScheme.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceTag.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceTagStyle.hsc, sourceview/Graphics/UI/Gtk/SourceView/SourceTagTable.chs, sourceview/Graphics/UI/Gtk/SourceView/SourceView.chs, sourceview/Graphics/UI/Gtk/SourceView.hs: changed license from GPL to LGPL 2.1 and added haddock header info. * tools/callbackGen/Signal.chs.template: changed license from GPL to LGPL 2.1 * gtk/Graphics/UI/Gtk/Abstract/Bin.chs: make binGetChild return Maybe. * gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp: make panedGetChild(1|2) return Maybe. * gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp: make comboBoxSetModel accept the model argument in a Maybe type so it is possible to unset the model. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp: make textBufferGetIterAtLine folow the normal argument order convention. * gtk/Graphics/UI/Gtk/Ornaments/Frame.chs: make frameGetLabelAlign and frameSetLabelAlign get and set the yalign as well as just the xalign. * gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp: make treeViewExpandRow folow the normal argument order convention and change the docs a bit. * APICHANGES: record these api changes. * TODO: add and remove various items. * gtk/Graphics/UI/Gtk/Selectors/FontButton.chs.pp: missed one when I changed the section name in the docs from "Properties" to "Attributes" 2005-05-19 Duncan Coutts * gtk2hs.iss.in: do a better job at checking version numbers. Display version number of GHC and Gtk+ in the "ready to install" wizzard page. Add check for Gtk+ 2.6.7 which don't work. Change it to be a multi installer that installs for Gtk+ 2.4.x or 2.6.x depending on the version installed. 2005-05-18 Duncan Coutts * gtk2hs.iss.in: Inno Setup installer script. This is currently only for the 0.9.7.1 windows release and only for the gtk-2.6 build. It does now detect ghc and gtk in what should be a reasonably robust manner. 2005-05-18 Axel Simon * demo/fastDraw/FastDraw.hs: Made it a bit more interesting. Showed how to increase performance. 2005-05-16 Duncan Coutts * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: use new properties functions. * gtk/Graphics/UI/Gtk/Selectors/FileChooserButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserWidget.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: conditional compilation fixes for Gtk+ versions before 2.4. * tools/callbackGen/HookGenerator.hs: liberalise the type of boxed object marshalers from (Ptr a -> IO a) to (Ptr a' -> IO a) so we can give marshExposeRect its natural type of (Ptr Event -> IO Rectangle). * gtk/Graphics/UI/Gtk/Gdk/Events.hsc: compilation fix in definition of Event's Key data constructor (I assume this is what was intended). A couple haddock fixes. Add type signature to marshExposeRect (since it is exported and would otherwise get type Ptr a -> IO Rectangle). * tools/apiGen/Api.hs: correct spelling error (which actually broke the parser). * tools/apiGen/CodeGen.hs: rename the documentation section heading from "Properties" to "Attributes" since that's what we seem to be calling them these days. Generate attribute definitions using the new attributes API and the new GObject properties convenience functions. * tools/apiGen/Marshal.hs: supporting change to the above attributes / properties change: return the Haskell type of properties rather than the GenericValue constructor. Also add marshaling for a couple extra types. * tools/apiGen/FormatDocs.hs: add 'data' to the illegal identifier / keywords list. * tools/apiGen/MarshalFixup.hs: add various extra functions to the fixup tables. Add 5 extra functions to the win32 "_utf8" file name functions list. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp, gtk/Graphics/UI/Gtk/Windows/WindowGroup.chs: conditional compilation fixes for Gtk+ versions before 2.4. * tools/hierarchyGen/hierarchy.list: GtkWindowGroup has been around since Gtk 2.0, not Gtk 2.4. 2005-05-15 Axel Simon * APICHANGES: Report on how events have changed. * demo/fastdraw/FastDraw.hs: Fixed a Gtk warning on resizing. * glib/System/Glib/Flags.hs: Added a comment for us on how not to change the toFlags function. * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: Added comments to certain event handlers. Added the canFocus property. * gtk/Graphics/UI/Gtk/Gdk/DrawWindow.chs.pp: Fixed documentation for drawPixbuf. * gtk/Graphics/UI/Gtk/Gdk/Enums.chs, gtk/Graphics/UI/Gtk/General/Enums.chs.pp, gtk/Graphics/UI/Gtk/General/StockItems.hsc, gtk/Graphics/UI/Gtk/Gdk/Events.hsc: Added more documentation. 2005-05-15 Duncan Coutts * gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp: fixes for building with Gtk+ 2.0. 2005-05-14 Axel Simon * gtk/Graphics/UI/Gtk/Display/ProgressBar.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs.pp: Don't import Gtk 2.6 enums when compiling for 2.4. 2005-05-14 Duncan Coutts * glib/System/Glib/GObject.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/ActionGroup.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/General/General.chs, gtk/Graphics/UI/Gtk/Selectors/FileFilter.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp, gtk/Graphics/UI/Gtk/Windows/AboutDialog.chs.pp: rename mkFunPtrDestructor to mkFunPtrDestroyNotify so it does not clash with a function of the same name from glib's Signals module. (The version from the glib Signals module is renamed to mkFunPtrClosureNotify.) * gtk/Graphics/UI/Gtk/ActionMenuToolbar/UIManager.chs.pp, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileSelection.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: add win32 _utf8 variants for a handful of newly bound functions that use file names. This should fix the build on win32. * gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp: the EllipsizeMode enum was added in some later version of Pango. Gtk+ 2.6 depends on this later Pango version so we can bind it for Gtk+ 2.6 and later. * glib/System/Glib/Signals.chs, glib/System/Glib/Signals.chs.pp: rename to .chs.pp so we can add conditional stuff. * glib/System/Glib/Signals.chs.pp: add back code used in the old signals implementation, and compile it conditionaly on USE_GCLOSUE_SIGNALS_IMPL not being defined. * tools/callbackGen/HookGenerator.hs: add the old signals generation code, and use it when USE_GCLOSUE_SIGNALS_IMPL is not defined. When it is defined, code that uses the new GClosure based signals implementation is generated instead. * configure.ac: add code to decide when to use the new or old signals implementation. We use the new implementation for sparc and amd64 arches and we intend to use it for ghc 6.4.1 when it will hopefully work with GHCi (not yet tested). Otherwise we use the old implementation. Define USE_GCLOSUE_SIGNALS_IMPL depending on the decision. Also use simpler way of getting the ghc version string. * Makefile.am: rename Signals.chs to Signals.chs.pp. Add -I. to the HookGenerator's HCFLAGS so it can #include gtk2hs-config.h to get at the USE_GCLOSUE_SIGNALS_IMPL define. When using the new GClosure-based signals implementation we need to compile and link in hsgclosure.c. When using the old signals implementation, the various Signals modules use ffi import wrapper and so we need to link in the _stub.o files. Also, add gtk/Graphics/UI/Gtk/Gdk/PixbufData.hs to html_HSFILES_HIDDEN so the docs build ok. * Makefile.am: remove tools/c2hs/base/general/FiniteMaps.hs from the c2hs sources list that I accidentally comitted recently. * glib/System/Glib/GValueTypes.chs: bug fix. The GValue needs to be initialised to hold an object type before it is set. * gtk/Graphics/UI/Gtk/Gdk/DrawWindow.chs.pp, gtk/Graphics/UI/Gtk/Gdk/GC.chs, gtk/Graphics/UI/Gtk/General/General.chs: change use of deprecated function 'withObject' to its replacement 'with'. * gtk/Graphics/UI/Gtk/Abstract/Container.chs: minor doc fix. Also add a new property 'containerChild' which is a write only property that can be used to add a new child to the container. Eg instead of saying: containerAdd window button you can say: set window [ containerChild := button ] 2005-05-11 Duncan Coutts * acinclude.m4: add extra GTKHS_PKG_CHECK macro which does a whole bunch of stuff. It's used for each optional package that corresponds to a pkg-config package. It adds an --enable-* configure flag and sets FLAGS etc. * configure.ac: don't use AM_PROG_CC_C_O since we don't need C subdir-objects support and this marco causes problems for autotools on debian. Remove the GHC_INCLUDEDIR since we don't need it, we can just use ghc to complie C fles, and ghc knows it's own include dir. Add an --enable-packager-mode flag. It disables automatic package selection which is good for packagers who want control over dependencies. Use the new GTKHS_PKG_CHECK for each package. Also, we don't need the pkg-config check because the PKG_CHECK_MODULES does that anyway. * mk/common.mk: add a build rule for C files. It puts the .o file in the subdir correctly. It uses $(HC) as the C compiler, passing all gcc-specific flags via ghc's -optc flag. * Makefile.am: remove the subdir-objects obtion since we don't need it and also add no-dependencies since we don't need the C dependency tracking feature (and it reduces the clutter of build files). Make each optional package be guarded by it's own ENABLE_ flag rather than grouping several under ENABLE_GNOME. Remove th rule for building glib/System/Glib/hsgclosure.c since the general rule takes care of it. For the installation phase, do the variable substitution on the .pkg / .cabal files we install so that they can be registered without the packager having to do the substitution (which in the case of the ${modules} substitution would be too hard to do). 2005-05-11 Axel Simon * gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp, gtk/Graphics/UI/Gtk/Gdk/PixbufData.hs: Make Pixbuf data available as MArray. * demo/fastdraw/FastDraw.hs demo/fastdraw/Makefile: New demo that shows how to use onExposeRegion and the Pixbuf as an MArray. * gtk/Graphics/UI/Gtk/Gdk/Drawable.chs.pp: Documentation fix. * Makefile.am: Added new demo an PixbufData.hs. 2005-05-10 Axel Simon * gtk/Graphics/UI/Gtk/ActionMenuToolbar/Action.chs.pp, gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp: When compiling for Gtk 2.4, remove attributes that can't be set. * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Events.hsc: Add an onExposeRegion handler that delivers a Region for redrawing instead of a Rectangle. 2005-05-8 Duncan Coutts * glib/System/Glib/Flags.hs: new module defining the Flags type class. Copied from Gdk.Enums module. Change class methods into ordinary functions and reimplement toFlags function so that it works. Tested with QuickCheck. * gtk/Graphics/UI/Gtk/Gdk/Enums.chs: remove Flags class definition and import System.Glib.Flags instead. Also, don't re-export Flags class and functions so other modules will explicitly import it. * gtk/Graphics/UI/Gtk/General/Enums.chs.pp, gtk/Graphics/UI/Gtk/Gdk/DrawWindow.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileFilter.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextIter.chs.pp, gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/UIManager.chs.pp, sourceview/Graphics/UI/Gtk/SourceView/SourceIter.chs: import Flags from System.Glib.Flags rather than Graphics.UI.Gtk.(General|Gdk).Enums * glib/System/Glib/Attributes.hs: don't export Attr data constructor. * glib/System/Glib/Properties.chs: don't import Attr data constructor. Import flags from new Flags module and define objectGetPropertyFlags, objectSetPropertyFlags and newAttrFromFlagsProperty. * Makefile.am: add new module and move Attributes compile flags to here rather than {-# OPTIONS #-} pragma in the module itself. * gtk/Graphics/UI/Gtk.hs: export attributes API * docs/tutorial/Makefile: change base-url to new website * gtk/Graphics/UI/Gtk/ActionMenuToolbar/Action.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/ActionGroup.chs.pp, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs: haddock fixes, change "" to \"\" in several places. * gtk/Graphics/UI/Gtk/Embedding/Embedding.hsc, gtk/Graphics/UI/Gtk/Gdk/Drawable.chs.pp, gtk/Graphics/UI/Gtk/Gdk/GC.chs, gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Region.chs.pp, gtk/Graphics/UI/Gtk/General/General.chs, gtk/Graphics/UI/Gtk/General/StockItems.hsc, gtk/Graphics/UI/Gtk/General/Structs.hsc, gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp, gtk/Graphics/UI/Gtk/Pango/Markup.hs, gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp, gtk/Graphics/UI/Gtk/Pango/Types.chs.pp, gtk/Graphics/UI/Gtk/TreeList/CellRenderer.hs: fix maintainer email address so it doesn't contain unnecessary '\'. * gtk/Graphics/UI/Gtk/Gdk/Gdk.chs, gtk/Graphics/UI/Gtk/Gdk/Keys.chs: change {# context lib= to "gdk" rather than "libgdk" and fix maintainer email address. * gtk/Graphics/UI/Gtk/Pango/Description.chs: import Systems.Glib.Flags 2005-05-7 Duncan Coutts * glib/System/Glib/GValueTypes.chs: make valueSetString deal with String rather than Maybe String, and introduce value(G|S)etMaybeString for the latter. * glib/System/Glib/StoreValue.hsc: knock on change from the above. * glib/System/Glib/Attributes.hs: add the full attributes API and the Prop and get/set user facing API. This module is completely standalone so it should be reusable or easy to swap out and depend on an external implementaion should that be necessary (eg for hscairo integration). * glib/System/Glib/Properties.chs: add more property get/set functions and add convenience functions for making attributes that are based on GObject properties. * gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Container.chs, gtk/Graphics/UI/Gtk/Abstract/Misc.chs, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Range.chs, gtk/Graphics/UI/Gtk/Abstract/Scale.chs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: use the new attributes API and add a few new attributes. Also change the name of the section in the documentation from "Properties" to "Attributes" since this is what we seem to be calling them. * gtk/Graphics/UI/Gtk/ActionMenuToolbar/Action.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/ActionGroup.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/RadioAction.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/ToggleAction.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/UIManager.chs.pp: as above. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs, gtk/Graphics/UI/Gtk/Buttons/ToggleButton.chs: changes as above. * gtk/Graphics/UI/Gtk/Display/AccelLabel.chs, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs.pp, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs.pp, gtk/Graphics/UI/Gtk/Display/Statusbar.chs: changes as above. * gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp, gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs: changes as above. * gtk/Graphics/UI/Gtk/Layout/Alignment.chs.pp, gtk/Graphics/UI/Gtk/Layout/AspectFrame.chs, gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/Layout/Fixed.chs, gtk/Graphics/UI/Gtk/Layout/Layout.chs, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs: changes as above. * gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ImageMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/SeparatorToolItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp: changes as above. * gtk/Graphics/UI/Gtk/Misc/Adjustment.chs, gtk/Graphics/UI/Gtk/Misc/Arrow.chs, gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/HandleBox.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs, gtk/Graphics/UI/Gtk/Misc/Viewport.chs: changes as above. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextIter.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextMark.chs, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextView.chs.pp: changes as above. * gtk/Graphics/UI/Gtk/Ornaments/Frame.chs, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs: changes as above. * gtk/Graphics/UI/Gtk/Selectors/ColorButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/ColorSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileFilter.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileSelection.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FontSelectionDialog.chs: as above. * gtk/Graphics/UI/Gtk/Selectors/FileChooserDialog.chs.pp: knock on change from renaming valueSetString to valueSetMaybeString. * gtk/Graphics/UI/Gtk/TreeList/CellView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/IconView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp: changes as above. * gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp: attribute changes as above and also tidy up some binding code renaming treeView(G|S)et(H|V)adjustment to treeView(G|S)et(H|V)Adjustment. * gtk/Graphics/UI/Gtk/TreeList/TreeViewColumn.chs.pp: attribute changes as above and also improve module level documentation. * gtk/Graphics/UI/Gtk/Windows/AboutDialog.chs.pp, gtk/Graphics/UI/Gtk/Windows/Dialog.chs, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: attribute changes as above. * APICHANGES: new file to record API changes that may affect users. Add note about the renaming of treeView(G|S)et(H|V)adjustment to treeView(G|S)et(H|V)Adjustment. 2005-04-28 Duncan Coutts * Makefile.am: add gconf/System/Gnome/GConf/marshal.list to EXTRA_DIST 2005-04-25 Duncan Coutts * docs: new directory. * Makefile.am: change where the haddock reference docs will be built from doc/ to docs/reference * docs/tools: new directory for tools used in building tutorial and other documentation. * docs/tools/AddLinks.hs: txt2tags post-processing tool for adding hyperlinks to haddock reference docs and Haskell syntax highlighting to code examples used in txt2tags verbatim sections. * docs/tutorial/Makefile: a makefile with rules for building .xhtml and .pdf files from corresponding .t2t files. Also builds and invokes the AddLinks post-processor. 2005-04-20 Duncan Coutts * gtk/Graphics/UI/Gtk/TreeList/TreeIter.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreePath.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeRowReference.chs.pp: new modules, split these out from the TreeModel module. Add various useful marshaling functions to that the marshaling code in the other tree model/view modules can be much more concise. * gtk/Graphics/UI/Gtk/TreeList/CellRenderer.hs: add module documentation. * gtk/Graphics/UI/Gtk/TreeList/CellRendererPixbuf.chs: add module documentation and trivial code changes. * gtk/Graphics/UI/Gtk/TreeList/CellRendererText.chs: various minor changes. Rewrite onEdited/afterEdited signal marshalers to be much simpler. * gtk/Graphics/UI/Gtk/TreeList/CellRendererToggle.chs: add module documentation and code formatting changes. * gtk/Graphics/UI/Gtk/TreeList/CellView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/IconView.chs.pp: adust imports and make use of new marshaling utilities to simplify code. * gtk/Graphics/UI/Gtk/TreeList/ListStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp: code formatting changes and make use of new marshaling utilities to simplify code. Also adust imports and other trivial changes. * gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp: move the implementation of TreeIter, TreePath and TreeRowReference to their own modules. Also code formatting changes and some minor documentation changes. * gtk/Graphics/UI/Gtk/TreeList/TreeModelSort.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp: adust imports and make use of new marshaling utilities to simplify code. Also code formatting changes and some minor documentation changes. * gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp: adust imports and code formatting changes. * gtk/Graphics/UI/Gtk/TreeList/TreeViewColumn.chs.pp: code formatting changes. * Makefile.am: add the three new files to the gtk sources list and move a couple others to a more appropriate place. * gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp: adjust imports due to TreeIter now living it it's own module. * gtk/Graphics/UI/Gtk.hs: TreeModel no longer exports so many internal functions so they do not need to be hidden. * Makefile.am: add missing _stub.o file to libHSgtk_a_LIBADD 2005-04-19 Duncan Coutts * tools/hierarchyGen/Hierarchy.chs.template, tools/hierarchyGen/TypeGen.hs: factor out common code from the down casting functions into another function and reimplement the originals in terms of that. Saves a bit of code space. * glib/System/Glib/GTypeConstants.hsc: new file defining some GType constant values that were previously defined via TMType. * glib/System/Glib/GValue.chs: move GenericValue definition to StoreValue module. Make GValue into a newtype which no longer depends on GenericValue. Also add a couple utility functions. Also convert license to LGPL. * glib/System/Glib/GParameter.hsc: GValue is now a newtype requiring a minor change. Also convert license to LGPL. * glib/System/Glib/GValueTypes.chs: make the valueSet* functions call valueInit since these functions do not get used in any other circumstance and it localises knowledge of the GType. Also comment out the CChar versions since it is not clear if we need them. Also convert license to LGPL. * glib/System/Glib/StoreValue.hsc: new home of GenericValue deinition until it is eliminated entirely. Comment out the constructors that are unsafe or in the case of the CChar ones how they are to be used. Instead of making GenericValue an instance of Storable, define value(G|S)etGenericValue functions similar to the ones in GValueTypes. Also convert license to LGPL. * glib/System/Glib/Types.chs, glib/System/Glib/GType.chs, glib/System/Glib/GObject.chs.pp, glib/System/Glib/GList.chs, glib/System/Glib/GError.chs.pp, glib/System/Glib/UTFString.hs: convert license to LGPL. * glib/System/Glib/Properties.chs: new module with GObject property getter / setter functions that will be used in the implementation of 'Attr's in the other modules. * gtk/Graphics/UI/Gtk/Abstract/Container.chs: changes due to GValue/GenericValue change. Also tidy up a bit of marshaling code to make it use the usual marshaling functions. * gtk/Graphics/UI/Gtk/Abstract/Object.chs.pp: re-implement objectSetProperty and objectGetProperty in terms of the new glib functions rather than the direct implemntation. * gtk/Graphics/UI/Gtk/Misc/Adjustment.chs: change from using the generic object(G|S)etProperty functions to the new type specific ones. * gtk/Graphics/UI/Gtk/Selectors/FileChooserDialog.chs.pp: change the marshaling of GValue to not use GenericValue. * gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/ListStore.chs.pp: minor changes necessary due to the changes in GenericValue, it moving module and no longer being an instance of Storable. * Makefile.am: build support for the new modules. * mk/common.mk: make .hsc -> .hs transform work with ghc 6.2 2005-04-18 Duncan Coutts * tools/apiGen/Makefile: re-do the makefile so it scales to more packages and add lots more packages. Not all of these will build yet as it requires a few more code gen fixes. * tools/apiGen/mkdocxml.sh: add support for alternate style of gtk-doc xml documentation files which a nmber of the new packages use. * tools/apiGen/gtk-sources.xml, tools/apiGen/gnomecanvas-sources.xml, tools/apiGen/glade-sources.xml, tools/apiGen/glade-sources.xml, tools/apiGen/gdk-sources.xml: update the source spec files to reflect slightly changed dir names. * tools/apiGen/gconf-sources.xml, tools/apiGen/gda-sources.xml, tools/apiGen/gnomedb-sources.xml, tools/apiGen/gnome-sources.xml, tools/apiGen/gnomeui-sources.xml, tools/apiGen/gnomeprint-sources.xml, tools/apiGen/gnomeprintui-sources.xml, tools/apiGen/gnomevfs-sources.xml, tools/apiGen/gtkhtml2-sources.xml, tools/apiGen/gtkhtml3-sources.xml, tools/apiGen/sourceview-sources.xml, tools/apiGen/vte-sources.xml: add a bunch of new source spec files. * tools/apiGen/CodeGen.hs: make it a warning rather than an error for an object to not inherit from GObject. * tools/apiGen/Docs.hs: be more liberal in parsing nested paragraphs. 2005-04-15 Duncan Coutts * tools/apiGen/Api.hs, tools/apiGen/ApiGen.hs, tools/apiGen/CodeGen.hs: also extract info for boxed objects and generate (partial) binding modules. 2005-04-14 Duncan Coutts * tools/apiGen/Api.hs: extract information about classes. Basically just consist of methods. * tools/apiGen/ApiGen.hs: generate bindig modules for classes. Fix doc identifier to module name mapping so we can specify it manually when it doesn't match up right. Fix rcs annoyance. * tools/apiGen/CodeGen.hs: add code for converting a class to a basic object so we can generate code for classes. Add classes into the type map. Rework the code that inserts preprocessor directives to allow them to nest and work the way a human would write them (possibly slightly pointless but it was an interesting challenge!). * tools/apiGen/FormatDocs.hs: fix syntax of character constants to be compatible with GHC 6.4. * tools/apiGen/Marshal.hs: add marshaling for possibly NULL TreeIters and add special case for casts in GtkToolItem constructors. * tools/apiGen/MarshalFixup.hs: Add a function to allow us to manually override the mapping from type names to documentation identifiers so we can generate code with documentation for some modules where the documentation title does not match the type name. Also add wadges of extra info into the existing tables. * tools/apiGen/gtk.ignore: add more functions we don't need to bind. * gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: since the code generator now is more frugal in adding #ifdefs add the corresponding changes in a couple modules. These are the only ones since the others had been done by hand in the first place. 2005-04-13 Axel Simon * Makefile.am: Clean dependencies on on 'make clean' (instead of 'make distclean'. Do not build dependencies on 'make clean'. 2005-04-13 Duncan Coutts * gtk/Graphics/UI/Gtk/ActionMenuToolbar/ActionGroup.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/RadioAction.chs.pp, gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioToolButton.chs.pp: sort out the radio button API and docs. Change the recently added modules to match the API of the existing radio modules ie the groups are not given as lists but by represetative members. Improve the docs to try and better explain this slightly odd API style. * Makefile.am, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs.pp: rename to .pp in preparation for adding new methods. * gtk/Graphics/UI/Gtk/Display/ProgressBar.chs.pp: add a new property and its associated getter and setter methods. * gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp: export method that was already implemented but accidentally not exported. * gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp: add new method. 2005-04-12 Duncan Coutts * mk/common.mk: change the way gtk2hs-config.h is used during .hsc -> .hs transforms. It is now only used during the cpp phase and is not output into the .hs file as a {-# INCLUDE "gtk2hs-config.h" #-} pragma. This means that it does not used at compile time (and so compiling -fvia-C does not complain that gtk2hs-config.h cannot be found). * gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToggleToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioToolButton.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/SeparatorMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/SeparatorToolItem.chs.pp: add several new modules, the *ToolButton ones that go with the "action-based menu and toolbar api" and a couple other simple modules. This adds about 0.8Kloc. * gtk/Graphics/UI/Gtk/ActionMenuToolbar/Action.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/ActionGroup.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/RadioAction.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/ToggleAction.chs.pp, gtk/Graphics/UI/Gtk/ActionMenuToolbar/UIManager.chs.pp: add the "action-based menu and toolbar api" modules. This adds about 1.6Kloc. * gtk/Graphics/UI/Gtk.hs: export newly added modules. * Makefile: build newly added modules. * tools/hierarchyGen/hierarchy.list: add GtkSeparatorMenuItem and GtkMenuToolButton classes to hierarchy. 2005-04-11 Duncan Coutts * glib/System/Glib/FFI.hs: add withForeignPtrs function which is useful when it comes to marshaling lists of GObjects. * glib/System/Glib/GList.chs: remove unused function. * glib/System/Glib/UTFString.hs: add two new string marshaling functions, peekUTFStringArray and peekUTFStringArray0 for marshaling arrays of strings. * gtk/Graphics/UI/Gtk/Abstract/Container.chs: don't use local definition of withForeignPtrs, use new general version. * gtk/Graphics/UI/Gtk/Selectors/FileSelection.chs.pp: bind three more methods. We need to think about the file name encoding issue again. * gtk/Graphics/UI/Gtk/Windows/AboutDialog.chs.pp: bind three more methods and four more properties. Also tidy up docs a tad. * configure.ac: rename config.h to gtk2hs-config.h which eliminates clashes with the config.h from ghc and consequently allows the --disable-depricated option to work. * Makefile.am: The mogul modules #include our config headder file and so we need to -I. for the mogul modules. Also rename CONFIG_H to CONFIG_HEADER since that's the name of the builtin variable. * mk/common.mk: remove CONFIG_H definition and rely on builtin var CONFIG_HEADER instead. Also -I. when doing the .hsc -> .hs transforms so it can find the local gtk2hs-config.h (previously it accidentally imported the ghc's config.h) * mogul/Graphics/UI/Gtk/Mogul/GetWidget.hs, mogul/Graphics/UI/Gtk/Mogul/NewWidget.hs, mogul/Graphics/UI/Gtk/Mogul.hs: rename config.h to gtk2hs-config.h * gtk/Graphics/UI/Gtk/General/Structs.hsc: add {-# OPTIONS -cpp #-} so that #ifndef DISABLE_DEPRECATED works. 2005-04-8 Duncan Coutts * gtk/Graphics/UI/Gtk/Windows/AboutDialog.chs.pp, gtk/Graphics/UI/Gtk/Windows/AboutDialog.chs, Makefile.am: accidentally committed the .chs file rather than the .chs.pp file and was using that in Makefile.am as well. So fix all that. * glib/System/Glib/GList.chs: add readGList function needed for some new modules. Remove unused ptrToInt function. * glib/System/Glib/FFI.hs, tools/hierarchyGen/TypeGen.hs, tools/hierarchyGen/Hierarchy.chs.template, gtk/Graphics/UI/Gtk/General/Structs.hsc, mogul/Graphics/UI/Gtk/Mogul/WidgetTable.hs, sourceview/Graphics/UI/Gtk/SourceView/SourceTagTable.chs: change use of foreignPtrToPtr to unsafeForeignPtrToPtr and provide backwards compatability for GHC pre-6.2. * gtk/Graphics/UI/Gtk/Entry/HScale.chs, gtk/Graphics/UI/Gtk/Layout/HBox.chs, gtk/Graphics/UI/Gtk/Layout/HButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/HPaned.chs, gtk/Graphics/UI/Gtk/Layout/VBox.chs, gtk/Graphics/UI/Gtk/Layout/VButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/VPaned.chs, gtk/Graphics/UI/Gtk/Ornaments/HSeparator.chs, gtk/Graphics/UI/Gtk/Ornaments/VSeparator.chs: just for fun, last trivial change so that these modules are exactly the same as those produced by the code generator! * gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp: fix compilation with DISABLE_DEPRECATED. 2005-04-08 Axel Simon * Makefile.am: Add a comment on why make clean builds dependencies. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextView.chs.pp, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp, tools/hierarchyGen/hierarchy.list: Corrected conditional compilation so that it compiles with Gtk 2.4. 2005-04-7 Duncan Coutts * gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp: add several new signals * gtk/Graphics/UI/Gtk/Abstract/Range.chs: tidy up header and export list. Unfortunately, we cannot export onValueChanged at the moment since it clashes with the same signals from another module. * gtk/Graphics/UI/Gtk/Abstract/Scrollbar.hs: add extra module level documentation. * gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp: bind 26 extra functions. Update TODO list and other minor changes. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp: bind two new functions. * gtk/Graphics/UI/Gtk/Display/Image.chs.pp: bind a few more functions and a property. * gtk/Graphics/UI/Gtk/Display/Label.chs.pp: bind 10 more methods and a few properties. Update docs to refer to PangoLayout rather than Layout. * gtk/Graphics/UI/Gtk/Embedding/Plug.chs, gtk/Graphics/UI/Gtk/Embedding/Socket.chs: merge from generated modules. Code formatting and documentation changes. * gtk/Graphics/UI/Gtk/Gdk/Region.chs.pp: change use of deprecated function 'withObject' to 'with'. Remove support for ghc pre 5.04. * gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp: add bindings for several new methods and properties. * gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp: add one extra method. * gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs.pp: add a couple extra methods. * gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp: add bindings for several new methods, properties and signals. * gtk/Graphics/UI/Gtk/Gdk/Enums.chs: add 4 extra enums that are needed for new Windows methods. * gtk/Graphics/UI/Gtk/Layout/Fixed.chs: trivial doc changes. * gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp: export a method that we already bound but not exported. * gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: Remove support for older ghc * gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs, gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/Viewport.chs: simple documentation changes. * gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp: add an extra enum needed by new Label methods. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp: add bindings for a few more methods. * gtk/Graphics/UI/Gtk/Multiline/TextView.chs.pp: add bindings for a few new methods and a couple properties. * gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp: add binding to an extra proerty and its getter/setter methods. * gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: add bindings for another 20 methods. * gtk/Graphics/UI/Gtk/Selectors/FileChooserButton.chs.pp: add myself as author. * gtk/Graphics/UI/Gtk/TreeList/CellView.chs.pp: fix bug caused by overlapping patterns. * Makefile.am: rename several modules to .pp (I swear I committed this before!) * Makefile.am: remove gcc flag -Wextra since older gcc versions do not understand it. 2005-04-6 Duncan Coutts * tools/callbackGen/gtkmarshal.list: tidy up slightly, and add extra marshaler since it'll be needed soon. * tools/hierarchyGen/hierarchy.list: add an extra class to hierarchy. * glib/System/Glib/hsgclosure.c, glib/System/Glib/hsgclosure.h: add support for an alternative way of doing signals. We have one single 'generic' marshaler implemented in C using glib's GClosure system. It uses GHC's public rts api to invoke Haskell callbacks, passing parameters of the appropriate types. * glib/System/Glib/Signals.chs: add Haskell-side interface to the new marshaling code. Basically adds connectGeneric which is used by all the per-type marshaling functions. * Makefile.am: build support for new marshalign modules. We need GHC_INCLUDEDIR so we can get at the GHC rts headder files. * configure.ac: provide GHC_INCLUDEDIR, which is bascially just `$GHC --print-libdir`/include * tools/callbackGen/HookGenerator.hs, tools/callbackGen/Signal.chs.template: modify the callback marshaler code generator to generate marshalers that use the new GClosure-based marshaling system. Change the signals template so that it import the System.Glib.Signals code rather than defining everything locally. Also parameterise by the module name so we can have more than a single global Signals module. The code dealing with the Sparc 4 word marshaling restriction has been dropped as it is no longer a problem. * Makefile.am: change the way gtk/Graphics/UI/Gtk/Signals.chs is built. The template file and the module name are now explictly specified. Also, the module no longer has any foreign "wrapper" imports so there is no longer any Signals_stub.o file. * configure.ac: remove the check for the four word callback issue since it is no longer relevant. Also remove support for providing an alternate gtkmarshal.list file since it it is not used. * gconf/System/Gnome/GConf/marshal.list: add local marshal list that contains the callback types that gconf needs. * Makefile.am: generate a Signals module for the gconf package. Also make it inherit it's build settings from glib rather than gtk. * gconf/System/Gnome/GConf/GConfClient.chs: import local Signals module so that we can eliminate the dependency of the gconf package on gtk package. * gconf/gconf.cabal.in, gconf/gconf.pkg.in: change the dep from gtk to glib. * configure.ac: change the gconf flags so that they inherit from glib rather than gtk. * tools/callbackGen/gtkmarshal.list: remove the marhsaler that was only needed by gconf. * tools/apicoverage/Makefile: cure bit rot in apicoverage tool * tools/apicoverage/gtk.ignore: ignore the _utf8 variants that exist for some functions. * tools/apiGen/ApiGen.hs, tools/apiGen/Template.chs: fix rcs tags. * tools/apiGen/CodeGen.hs: minor bug fixes. * tools/apiGen/FormatDocs.hs: rename a function. Allow us to fix when a module is available from since the mechanism we use to detect this does not always work. * tools/apiGen/Marshal.hs: rename a function. Add marshaling support for GdkColor and improve support for GtkTreePath. * tools/apiGen/MarshalFixup.hs: add fixup info for the version when a module is available from. Generalise stripKnownPrefixes to cTypeNameToHSType so we can deal with the naming of GdkWindow -> DrawWindow and PangoLayout remains PangoLayout rather than having the Pango prefix stripped off. Add many more cases to the other fixup tables. * tools/apiGen/gtk.ignore: ignore more internal functions that we do not want to bind. * Makefile.am, gtk/Graphics/UI/Gtk/Abstract/Widget.chs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs, gtk/Graphics/UI/Gtk/Display/Label.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs, gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextView.chs, gtk/Graphics/UI/Gtk/Multiline/TextView.chs.pp: rename several modules to .pp (without changing module content) in preparation for adding new functions from later Gtk+ versions. 2005-04-5 Duncan Coutts * glib/System/Glib/UTFString.hs: add some extra functions for marshaling lists and arrays of UTF-8 strings. * gtk/Graphics/UI/Gtk/Selectors/ColorButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserButton.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileFilter.chs.pp, gtk/Graphics/UI/Gtk/TreeList/IconView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/CellView.chs.pp, gtk/Graphics/UI/Gtk/Windows/AboutDialog.chs, gtk/Graphics/UI/Gtk/Windows/WindowGroup.chs: add several new modules. This adds ~2.6 Kloc. * gtk/Graphics/UI/Gtk.hs: export the new modules. * Makefile.am: add the new modules to libHSgtk_a_SOURCES. Also add _stub.o files to libHSgtk_a_LIBADD. * tools/hierarchyGen/hierarchy.list: add new classes to hierarchy. 2005-04-4 Duncan Coutts * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs, gtk/Graphics/UI/Gtk/Multiline/TextMark.chs, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextTagTable.chs, gtk/Graphics/UI/Gtk/Multiline/TextView.chs: merge from generated modules. Changed code formatting and documentation. In one or two places fix minor bugs. Remove two non-exsistant functions from TextView module. 2005-04-3 Duncan Coutts * gtk/Graphics/UI/Gtk/Selectors/ColorSelection.chs, gtk/Graphics/UI/Gtk/Selectors/ColorSelectionDialog.chs, gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserDialog.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserWidget.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileSelection.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FontSelectionDialog.chs: merge from generated modules. Changed code formatting and documentation. 2005-04-2 Duncan Coutts * gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ImageMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/TearoffMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp: more merging from the generated modules. Code formatting changes. Documentation changes. One or two actual code changes but nothing that affects the API. * gtk/Graphics/UI/Gtk/Misc/Arrow.chs, gtk/Graphics/UI/Gtk/Misc/DrawingArea.chs, gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/HandleBox.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs, gtk/Graphics/UI/Gtk/Misc/Tooltips.chs.pp, gtk/Graphics/UI/Gtk/Misc/Viewport.chs: mostly trivial code changes. * gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp: add property, export extra function as well as trivial code changes. * gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/Object.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Range.chs, gtk/Graphics/UI/Gtk/Abstract/Scale.chs: minor changes. Mostly generalising the types of attributes. * gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp: rename attribute buttonBoxLayout to buttonBoxLayoutStyle. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/Buttons/CheckButton.chs, gtk/Graphics/UI/Gtk/Buttons/ToggleButton.chs: minor changes. Attributes and casts. * gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs: code formatting changes. * gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp, gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/HScale.chs, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs, gtk/Graphics/UI/Gtk/Entry/VScale.chs: various minor changes. * gtk/Graphics/UI/Gtk/Display/AccelLabel.chs, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs, gtk/Graphics/UI/Gtk/Display/Statusbar.chs: various minor changes merged from the generated modules. * gtk/Graphics/UI/Gtk/Layout/Alignment.chs.pp, gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp: trivial changes merged from the generated modules. * gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs: trivial changes merged from the generated modules. 2005-04-1 Duncan Coutts * tools/apiGen/ModuleScan.hs, tools/apiGen/ApiGen.hs, tools/apiGen/Template.chs: do rcs version and timestamps. * tools/apiGen/README: update to reflect recent changes. * tools/apiGen/CodeGen.hs, tools/apiGen/MarshalFixup.hs: add support for ignoring documentation of selected parameters or return values. Often the docs for these in the original C docs are rather pointless. * tools/apiGen/gapi2xml.pl: minor change from upstream. 2005-03-31 Duncan Coutts * tools/apiGen/Makefile: update to latest versions of source code for all packages. * tools/apiGen/CodeGen.hs: generalise parameter marshaling to include 'out' parameters as well as ordinary 'in' parameters and hidden / internal parameters. Also deal with 'shared' methods. These methods are like Java static methods. They take no self/object parameter. * tools/apiGen/Marshal.hs: add support for marshaling the most common out parameter types: gboolean*, gint*, guint*, gfloat*, gdouble* and gchar**. Also add 'in' and return marshaling for a couple other misc types like fixed width integral types: guint16 and guint32. 2005-03-27 Duncan Coutts * gtk/Graphics/UI/Gtk/Abstract/Container.chs: documentation changes and code formatting changes. Also added a few extra functions and a couple properties. * gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: added bindings for 22 extra functions (most of which are probably useful!). * gtk/Graphics/UI/Gtk/Abstract/Widget.chs: documentation changes and code formatting changes. Also added a few extra functions, in particular the ones I needed for my simulation visualiser. * tools/apiGen/ExcludeApi.hs: fix exclude regex matcher. * tools/apiGen/Makefile: add ExcludeApi.hs as a dependency of ApiGen. * tools/apiGen/gtk.ignore: add a bunch of internal functions to ignore when generating binding modules. * tools/apicoverage/Makefile: add a more detailed summary report. 2005-03-26 Duncan Coutts * mozembed/Graphics/UI/Gtk/MozEmbed.chs: use Int in the signal handler return type rather than (Num n, Integral n) => n since there's no need to be so general (and it breaks my new signals system!) * tools/callbackGen/gtkmarshal.list: comment out all the signal marshalers that are not currently used. This saves several 100k in a final striped program. Feel free to re-enable any of them at any time. * gtk/Graphics/UI/Gtk/Windows/Dialog.chs, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: documentation changes and code formatting changes. * gtk/Graphics/UI/Gtk/Windows/Dialog.chs: Ooops! over zelous merging. Minor fix. 2005-03-25 Duncan Coutts * tools/apiGen/ModuleScan.hs: match up against existing .hs modules if there is no .chs or .chs.pp files. * tools/apiGen/ApiGen.hs: minor knock-on change from above. * tools/apiGen/MarshalFixup.hs: more fixup info. * tools/apiGen/CodeGen.hs: pass whether the function is a constructor on to the marshaling functions. This allows them to add castPtr for constructors. Output the constructors in the same order as they occur in the original module (same as we do for functions). Change KnownSymbols map to include the full chaing of parents of each class rather than just a clasification of whether they inherit from GObject or GtkObject. For leaf classes, generate the properties with the specific type rather than it's corresponding typeclass. * tools/apiGen/Marshal.hs: The KnownSymbols map change described above. Add castPtr for constructors and include the specific types that we are casting from and to, just for safty in case the code generator gets it wrong and disagrees with c2hs on types. Add marshaling for gunichar. * tools/apiGen/Makefile: add gobject-api.xml to the --includeapi list so we don't need a special case for GObject in the code generator. * tools/apiGen/glib-sources.xml: make this into glib not gobject. * tools/apiGen/gobject-sources.xml: add gobject seperately. * demo/concurrent/Progress.hs: Fix progress demo to use the right idle priority. This is a knock-on change from fixing the priority constants in gtk/Graphics/UI/Gtk/General/Structs.hsc. * demo/buttonbox/Makefile, demo/calc/Makefile, demo/concurrent/Makefile, demo/filechooser/Makefile, demo/gconf/Makefile, demo/glade/Makefile, demo/graphic/Makefile, demo/hello/Makefile, demo/mozembed/Makefile, demo/profileviewer/Makefile, demo/sourceview/Makefile, demo/treeList/Makefile, demo/unicode/Makefile: add HC variable so that the ghc version can be overridden, eg by make installcheck. * Makefile.am: add the calc demo to the distribution and have it built with make isntallcheck. Override HC=$(HC) when making the demos so the right version of ghc is used. * TODO: add some more todo items 2005-03-24 Duncan Coutts * gtk/Graphics/UI/Gtk/Scrolling/HScrollbar.chs, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs, gtk/Graphics/UI/Gtk/Scrolling/VScrollbar.chs: documentation changes and code formatting changes. * gtk/Graphics/UI/Gtk/Ornaments/Frame.chs, gtk/Graphics/UI/Gtk/Ornaments/HSeparator.chs, gtk/Graphics/UI/Gtk/Ornaments/VSeparator.chs: documentation changes and code formatting changes. * gtk/Graphics/UI/Gtk/Layout/Alignment.chs.pp, gtk/Graphics/UI/Gtk/Layout/AspectFrame.chs, gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/Layout/Fixed.chs, gtk/Graphics/UI/Gtk/Layout/HBox.chs, gtk/Graphics/UI/Gtk/Layout/HButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/HPaned.chs, gtk/Graphics/UI/Gtk/Layout/Layout.chs, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs, gtk/Graphics/UI/Gtk/Layout/VBox.chs, gtk/Graphics/UI/Gtk/Layout/VButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/VPaned.chs: documentation changes and code formatting changes. 2005-03-23 Duncan Coutts * glib/glib.cabal.in, gtk/gtk.cabal.in, mogul/mogul.cabal.in, glade/glade.cabal.in, sourceview/sourceview.cabal.in, gconf/gconf.cabal.in, mozembed/mozembed.cabal.in: add new cabal package file templates. * configure.ac: bump version to make it clear we're in a development mode (we can no longer use _pre since cabal does not like that as a version number). Add test for cabal support (ghc >= 6.4). Add *.cabal.in files to the list of files that need substitution in AC_OUTPUT. * acinclude.m4: modify the way the flags are formatted depending on whether USE_CABAL is set. The old package format used " quotes around elements in string lists, the new cabal package format does not. * Makefile.am: use $(PKGEXT) to specify which package file to use, the .cabal one or the .pkg one. Add -ignore-package glib when compiling modules in each package (conditionally on USE_CABAL) since otheriwse if the package is already installed the compilation would fail. Modify the package registering code. Use sed to substitute for ${pkglibdir} since ghc-pkg no longer does substitution. Also substitute for ${modules} the list of modules in the package. * tools/callbackGen/HookGenerator.hs, tools/callbackGen/Signal.chs.template: use template substitution mechanism like the other code generators do. * Makefile.am: use tools/callbackGen/Signal.chs.template rather than tools/callbackGen/Signal.chs-boot1 and 2. 2005-03-18 Duncan Coutts * mk/common.mk: temporary fix for building with GHC 6.4. Temporary until we fix c2hs to not override the pragmas at the top of generated files. 2005-03-16 Duncan Coutts * gtk/Graphics/UI/Gtk/Misc/Adjustment.chs, gtk/Graphics/UI/Gtk/Misc/Arrow.chs, gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/Misc/DrawingArea.chs, gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/HandleBox.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs, gtk/Graphics/UI/Gtk/Misc/Tooltips.chs.pp, gtk/Graphics/UI/Gtk/Misc/Viewport.chs: documentation changes and code formatting changes. * Makefile.am: specify AUTOMAKE_OPTIONS = 1.8 to require that version of automake. * mozembed/Graphics/UI/Gtk/MozEmbed/.cvsignore: add .cvsignore file, but mainly this file being present will force a normal CVS checkout to create the directory, the lack of which will break the build. On the quest to make a clean CVS checkout build "just work"! 2005-03-15 Duncan Coutts * glib/System/Glib/FFI.hs: add maybeNull function which is used by marshaling functions to help marshal values that might be NULL into a Maybe type where NULL gets mapped to Nothing. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/Buttons/CheckButton.chs, gtk/Graphics/UI/Gtk/Buttons/ToggleButton.chs: documentation changes and code formatting changes. * gtk/Graphics/UI/Gtk/Abstract/Range.chs: Haddock markup fixes. * gtk/Graphics/UI/Gtk/Display/AccelLabel.chs, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs, gtk/Graphics/UI/Gtk/Display/Statusbar.chs: documentation changes and code formatting changes. * gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp, gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/HScale.chs, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs, gtk/Graphics/UI/Gtk/Entry/VScale.chs: documentation changes and code formatting changes. * gtk/Graphics/UI/Gtk/General/Structs.hsc: Define priorityHigh and priorityDefault as the correct C constants. Add priorityHighIdle and priorityDefaultIdle. * gtk/Graphics/UI/Gtk/General/General.chs: export the two extra priority values. Add timeoutAddFull binding which is like timeoutAdd but allows you to specift the priority. Redfine timeoutAdd in terms of timeoutAddFull. Add more extensive documentation for both functions. Fix the documentation of idleAdd to reccomend the right priority. 2005-03-14 Duncan Coutts * gtk/Graphics/UI/Gtk/Gdk/Region.chs.pp: segfault bug fix. Clear up confusion between pointer to rectangles and pointer to a pointer to rectangles. * gtk/Graphics/UI/Gtk/Abstract/Bin.chs, gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Misc.chs, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Range.chs, gtk/Graphics/UI/Gtk/Abstract/Scale.chs, gtk/Graphics/UI/Gtk/Abstract/Scrollbar.hs, gtk/Graphics/UI/Gtk/Abstract/Separator.hs: documentation changes and code formatting changes. 2005-03-13 Duncan Coutts * glib/System/Glib/Attributes.hs: new file defining Attr data type * Makefile.am: add glib/System/Glib/Attributes.hs to glib sources list * gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Range.chs, gtk/Graphics/UI/Gtk/Abstract/Scale.chs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs : add a few properties. For the first round, just the easy properties that are implemented in terms of existing getter/setter functions and where there are no issues with NULL/Maybe types. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/Buttons/ToggleButton.chs: add properties. For ToggleButton, change the argument order of toggleButtonSetActive and toggleButtonSetInconsistent so they take the object first like every other method and so that they match the type for an Attr. * gtk/Graphics/UI/Gtk/Display/Label.chs, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs: add properties. * gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp, gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs: add properties. * gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/Layout/Layout.chs, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs: add properties. * gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp: add properties. * gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/HandleBox.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs, gtk/Graphics/UI/Gtk/Misc/Viewport.chs: add properties. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs, gtk/Graphics/UI/Gtk/Multiline/TextMark.chs, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextView.chs: add properties. * gtk/Graphics/UI/Gtk/Ornaments/Frame.chs: add properties. * gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs: add properties. * gtk/Graphics/UI/Gtk/Selectors/ColorSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FontSelectionDialog.chs: add properties. * gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeViewColumn.chs.pp: add properties. * gtk/Graphics/UI/Gtk/Windows/Dialog.chs, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: add properties. 2005-03-06 Duncan Coutts * tools/apiGen/CodeGen.hs: Prefix property names with their object. Make sure all properties are in the export list. 2005-03-04 Duncan Coutts * Makefile.am: Fix one of the GHC 6.4 build failures by changing the root path that c2hs_config.h gets #include'ed from. Previously it was ok to #include relative to the build root whereas GHC 6.4 only allows it to be relative to the source file being compiled. Move tools/c2hs/toplevel/C2HSConfig.hs from tools_c2hs_c2hsLocal_SOURCES to nodist_tools_c2hs_c2hsLocal_SOURCES so that the file does not end up in the .tar.gz distribution. It is generated from C2HSConfig.hs.in so C2HSConfig.hs should not be present in a clean tree. Also change the MOSTLYCLEANFILES to reflect the changed location of the .deps files. * gtk/Graphics/UI/Gtk/Abstract/Widget.chs: remove widgetLockAccelerators and widgetUnlockAccelerators as they do not exist in Gtk+ anymore (probably since version 2.0). * tools/apiGen/ApiGen.hs: remove pointless and verbose warnings. * tools/apiGen/ModuleScan.hs: collect export list from existing modules. * tools/apiGen/CodeGen.hs: generate signals and methods export lists in the same order as in the original modules. Also, improve the signal code generaton - though it's still not quite there yet for object types. * tools/apiGen/Marshal.hs: For signals, produce the Haskell type as well as the signal handler tag. For object types this is not right yet because it uses the object type rather than the object class. Also change the marshaling of object parameter types to cover all four possibilities of: (leaf class/non-leaf class) x (ordinary/maybe type). 2005-03-01 Duncan Coutts * tools/apiGen/CodeGen.hs: do deprecated and version ifdefs a bit better especialy if the whole module is new or deprecated. * tools/apiGen/Docs.hs: seperate documentation of callbacks from documentation of methods. Generalise the summary field to be list of paragraphs rather than just a single paragraph so that we can add things to the summary documentations like deprecation notices. * tools/apiGen/ApiGen.hs: trivial follow on change. * tools/apiGen/FormatDocs.hs: for deprecated modules, instead of anotating every function with a deprecation warning, just add a note to the module summary. Also put version notes in the module summary rather than at the end of the detail section. * tools/apiGen/gapi2xml.pl, tools/apiGen/gtk-sources.xml: merge upstream changes to the gapi parser tool and adjust the sources spec file so that it will now work with gtk+-2.6.1. (There seems to be an additional problem with 2.6.2 and 2.6.3 in the filechooser modules which I have not yet tracked down) 2005-02-27 Duncan Coutts * glib/System/Glib/GObject.chs.pp: change mkDestructor into mkFunPtrDestructor which is a tad more abstract (hiding the use of IORefs). Also this reduces the amount of code in client modules. * gtk/Graphics/UI/Gtk/General/General.chs: change use of mkDestructor to mkFunPtrDestructor and no longer export mkDestructor. * gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp: change use of mkDestructor to mkFunPtrDestructor. * tools/callbackGen/Signal.chs-boot2: Following the same pattern for GClosureNotify as for GDestroyNotify above define a local copy of mkFunPtrDestructor for use in signal connection functions. * tools/callbackGen/HookGenerator.hs: change use of mkDestructor to mkFunPtrDestructor following the same pattern as before. This reduces code duplication a bit (saves about 350 lines of code). * tools/apiGen/StringUtils.hs: extra utility function. * tools/apiGen/Template.chs: change the way imports are generated. * tools/apiGen/ApiGen.hs: use new genImports function. * tools/apiGen/CodeGen.hs: new genImports function which preserves imports from original module. Add "Implements" code section for gobject classes that implement interfaces; this is modeled in Haskell just by extra instance declerations. Significantly reworked code for generating proeprties to use getter setter functions rather than a generic implementation where that makes sence. * tools/apiGen/FormatDocs.hs: move some common formatting code out of CodeGen.hs to this module. Also change the name of the "Description" section to "Detail" so that the Haddock documentation does not have two "Description" sections which is probably confusing. * tools/apiGen/Api.hs: extract "implements interface" information from the api xml files. And move a hack from this module to CodeGen.hs * tools/apiGen/Marshal.hs: factor out "IO" return type from marshaling functions to where they are used. Also make flag types be lists, which was previously incorrect. * tools/apiGen/MarshalFixup.hs: add a couple more leaf classes. 2005-02-26 Duncan Coutts * tools/callbackGen/Signal.chs-boot1: add #hide Haddock annotation so the Signal module will not appear in the generated docs. * Makefile.am: It is useful to have a seperate variable holding the files that are generated from nothing using code generators so define a GENERATEDSOURCES variable for each package and re-define some other variables in terms of that. We use it to define nodist_*_SOURCES and html_HSFILES_HIDDEN for each package (since all the generated files are hidden). Instead of having each packages .dep files depending on all of the packages .chs file (which causes lots of unnecessary invocations of chsDepend) make them just depend on the .chs files that might not exist which are the ones produced by code generators. So make them depend on the GENERATEDSOURCES files. * mk/chsDepend.in: since we no longer make the .dep files depend on every .chs file in sight, the .chs file (produced from the .chs.pp file) might not exist when the .dep file is generated so look for .chs.pp files as well as .chs file when calculating the deps. This is possibly a bit of a hack. * gtk/Graphics/UI/Gtk/Misc/GArrow.chs, gtk/Graphics/UI/Gtk/Misc/Arrow.chs: rename module from GArrow.chs and also make various documentation and formatting changes. * gtk/Graphics/UI/Gtk/Windows/FileSel.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileSelection.chs.pp: rename module and move it to a more appropriate category. Also make various documentation and formatting changes. * Makefile.am: change names of the two modules, GArrow and FileSel. * gtk/Graphics/UI/Gtk.hs: change the names of the two modules, GArrow and FileSel. 2005-02-25 Duncan Coutts * gtk/Graphics/UI/Gtk/Abstract/Bin.chs, gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Container.chs, gtk/Graphics/UI/Gtk/Abstract/Misc.chs, gtk/Graphics/UI/Gtk/Abstract/Object.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Range.chs, gtk/Graphics/UI/Gtk/Abstract/Scale.chs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs: add more module level documentation and tidy up exiting documentation. Also add/modify section headers. Also LGPL'ify remaining modules with permission from Matthew Walton. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/Buttons/CheckButton.chs, gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs, gtk/Graphics/UI/Gtk/Buttons/ToggleButton.chs: same for Buttons modules * gtk/Graphics/UI/Gtk/Display/AccelLabel.chs, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs, gtk/Graphics/UI/Gtk/Display/Statusbar.chs: same for Display modules * gtk/Graphics/UI/Gtk/Embedding/Plug.chs, gtk/Graphics/UI/Gtk/Embedding/Socket.chs: same for Embedding modules * gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp, gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/HScale.chs, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs, gtk/Graphics/UI/Gtk/Entry/VScale.chs: same for Entry modules * gtk/Graphics/UI/Gtk/General/IconFactory.chs.pp, gtk/Graphics/UI/Gtk/General/Style.chs: same for General modules * gtk/Graphics/UI/Gtk/Layout/Alignment.chs.pp, gtk/Graphics/UI/Gtk/Layout/AspectFrame.chs, gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/Layout/Fixed.chs, gtk/Graphics/UI/Gtk/Layout/HBox.chs, gtk/Graphics/UI/Gtk/Layout/HButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/HPaned.chs, gtk/Graphics/UI/Gtk/Layout/Layout.chs, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs, gtk/Graphics/UI/Gtk/Layout/VBox.chs, gtk/Graphics/UI/Gtk/Layout/VButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/VPaned.chs: same for Layout modules. Also Also LGPL'ify remaining modules with permission from Matthew Walton. * gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ImageMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/TearoffMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp: same for MenuComboToolbar modules. * gtk/Graphics/UI/Gtk/Misc/Adjustment.chs, gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/Misc/DrawingArea.chs, gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/HandleBox.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs, gtk/Graphics/UI/Gtk/Misc/Tooltips.chs.pp, gtk/Graphics/UI/Gtk/Misc/Viewport.chs: same for Misc modules. * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs, gtk/Graphics/UI/Gtk/Multiline/TextMark.chs, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextTagTable.chs, gtk/Graphics/UI/Gtk/Multiline/TextView.chs: same for Multiline modules * gtk/Graphics/UI/Gtk/Ornaments/Frame.chs, gtk/Graphics/UI/Gtk/Ornaments/HSeparator.chs, gtk/Graphics/UI/Gtk/Ornaments/VSeparator.chs: same for the Ornaments modules. * gtk/Graphics/UI/Gtk/Scrolling/HScrollbar.chs, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs, gtk/Graphics/UI/Gtk/Scrolling/VScrollbar.chs: same for the Scrolling modules. * gtk/Graphics/UI/Gtk/Selectors/ColorSelection.chs, gtk/Graphics/UI/Gtk/Selectors/ColorSelectionDialog.chs, gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserDialog.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserWidget.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FontSelectionDialog.chs: same for the Selectors modules. * gtk/Graphics/UI/Gtk/TreeList/CellRendererPixbuf.chs, gtk/Graphics/UI/Gtk/TreeList/CellRendererText.chs, gtk/Graphics/UI/Gtk/TreeList/CellRendererToggle.chs, gtk/Graphics/UI/Gtk/TreeList/ListStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeModelSort.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeViewColumn.chs.pp: same for the TreeList modules. * gtk/Graphics/UI/Gtk/Windows/Dialog.chs, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: same for Windows modules. * tools/hierarchyGen/Hierarchy.chs.template: update template to use LGPL and add '#hide' Haddock annotation so the Types modules will not be included in the generated documentation. With the current cvs version of Haddock this makes everything work nicely. * tools/hierarchyGen/TypeGen.hs: fix templateSubstitute function to cope with escaped '@' symbols. * Makefile.am: since hidden modules do not have corresponding html docs generated for them we need to exclude the hidden modules from the html_DATA variable. * tools/apiGen/CodeGen.hs: tweak generation of TODO doc messages. Use the short {# call foo_bar #} form rather than the full {# call gtk_foo_bar #} when the original module uses this form. * tools/apiGen/ModuleScan.hs: preserve short form of {# call #} from scanned modules. * tools/apiGen/Template.chs: put TODO messages before Haddock markup section. * tools/apiGen/FormatDocs.hs, tools/apiGen/MarshalFixup.hs: move name fixup information to the MarshalFixup module. * tools/apiGen/Makefile: add MarshalFixup.hs dep. * gtk/Graphics/UI/Gtk/Abstract/Bin.chs, gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Misc.chs, gtk/Graphics/UI/Gtk/Display/Label.chs, gtk/Graphics/UI/Gtk/General/Style.chs, gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp, gtk/Graphics/UI/Gtk/Misc/DrawingArea.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs, gtk/Graphics/UI/Gtk/Multiline/TextView.chs, gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp: trivial white space changes to better match the generated code. * gtk/Graphics/UI/Gtk/Abstract/Container.chs, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Range.chs, gtk/Graphics/UI/Gtk/Abstract/Scale.chs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs, gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Layout/Fixed.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuItem.chs, gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Selectors/ColorSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserDialog.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserWidget.chs.pp, gtk/Graphics/UI/Gtk/TreeList/CellRendererText.chs, gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeViewColumn.chs.pp: minor documentation changes * gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs: other trivial changes to better match the generated code. * gtk/Graphics/UI/Gtk/TreeList/TreeModelSort.chs.pp: since GtkTreeModelSort implementes the GtkTreeModel interface, make TreeModelSort an instance of TreeModelClass. * gtk/Graphics/UI/Gtk/MenuComboToolbar/ImageMenuItem.chs: relicense to LGPL with permission of Jonas Svensson. 2005-02-24 Duncan Coutts * configure.ac: Bump version to 0.9.7.1 2005-02-23 Duncan Coutts * tools/apiGen/MarshalFixup.hs: new module containing fixup information about specials cases. This is existign tables of info moved out of Marshal.hs and FormatDocs.hs so it is better seperated and so it's esier to change for people who don't understand the rest of the code. Also added some more leaf classes and some fnction with maybe null return values. * tools/apiGen/Marshal.hs: move the tables of fixup info into their own module. * tools/apiGen/FormatDocs.hs: customise the C to Haskell function name conversion with a bunch of special cases, eg "hadjustment" becomes "HAdjustment" rather than "Hadjustment". The special cases go in the new MarshalFixup.hs module. * tools/apiGen/CodeGen.hs: fix generation of property and signal names 2005-02-21 Duncan Coutts * tools/apiGen/Marshal.hs: pass function name to parameter and return marshaling functions so that they can be used to lookup per-function fixup information. Add per-function fixup info maps; one to say that a function parameter can take a NULL pointer and one to say that the function return value can be NULL. Use this info to marshal these using Maybe types. Support Maybe for object parameters and returns and Maybe for string parameters and returns. * tools/apiGen/FormatDocs.hs: add parameter to say if NULLs should be converted to Nothing or if they should generate FIXME messages. * tools/apiGen/CodeGen.hs: include constructors in mapping of C function names from original modules so unsafe tags are preserved for constructors. Tell doc formatting functions when to ignore NULLs; do it when any of the function parameters or return are a Maybe type. * tools/apiGen/ApiGen.hs: trivial change 2005-02-20 Duncan Coutts * tools/apiGen/Api.hs: add support for misc symbols: structs, boxed, class, aliases and callbacks. * tools/apiGen/FormatDocs.hs: format these extra misc types. Format constants correctly. Format object names as symbol hyperlinks rather than module hyperlinks. Format the class hierarchy better. * tools/apiGen/Marshal.hs: add misc types. Add a list of known misc types that do not need to generate FIXME's in the generated docs. Add a list of types that are 'leaf' classes where we do not need to generate code that allows for subclasses, eg GtkAdjustment. Add marshaling for some extra simple types gdouble, gfloat and some boxed types: TreeIter, TreePath and TextIter. Add a convertSignalType function which maps C type names to signal type specs, eg OBJECT etc. * tools/apiGen/CodeGen.hs: Add section names in the generated code. Make generated constructors preserve 'unsafe' annotations. Do signal generation more fully; produce the full connect_* name. Add misc types to the symbols map. 2005-02-19 Axel Simon * Makefile.am: Repaired the uninstall-hook which somehow worked on the wrong variable thereby not removing any packages. 2005-02-17 Duncan Coutts * gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp: fix display of documentation by moving much of it inside the export list. * tools/apiGen/ModuleScan.hs: add ability to exclude certain modules when scanning existing modules. This is useful so that we do not confuse some Gtk module with a Gdk or Pango module of the same name. * tools/apiGen/FormatDocs.hs: more minor improements to the docs. Format constants inside literal tags and do not escape "'" so much when it is not necessary. * tools/apiGen/ExcludeApi.hs: new module that can parse the api.ignore files and filter on theri basis. It the same code as used in the apicoverage system. * tools/apiGen/ApiGen.hs: add new options --excludeapi and --excludescan. Use the ExcludeApi stuff to filter the list of methods in each object before doing code generation. * tools/apiGen/CodeGen.hs: no need to exclude *_get_type functions here since the ExcludeApi functionality now covers this. * tools/apiGen/gtk.ignore: list a few functions regexps that we do not want to bind including the *_get_type ones but also the _valist and _ref / _unref ones. * tools/apiGen/Makefile: add --excludeapi and --excludescan commands when generating gtk-modules. Also add a 'clean' target. * tools/apiGen/glib-sources.xml: strip version numbers. * configure.ac: remove "--subsystem windows" linker option for now. Bump version to 0.9.7.1_rc4 2005-02-16 Axel Simon * Makefile.am: Renamed TreeViewColumn.chs, TreeModelSort.chs, TreeSelection.chs, DrawWindow.hs to .chs.pp files. * demo/unicode/Arabic.hs: Make the font sensibly large. * gtk/Graphics/UI/Gtk/Gdk/Enums.chs: Docu fix. * gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp, mogul/Graphics/UI/Gtk/Mogul.hs, mogul/Graphics/UI/Gtk/Mogul/TreeList.hs: Changed the type TreePath to list of integers and got rid of the C-side TreePath type. The Mogul TreePath type is now integrated into TreeModel. Completed TreeModel and TreeView binding. * gtk/Graphics/UI/Gtk/Gdk/DrawWindow.chs.pp: Bind all sensible functions (i.e. those that are not in gtk_window). * tools/apiGen/atk-sources.xml, tools/apiGen/gdk-sources.xml, tools/apiGen/glade-sources.xml, tools/apiGen/gnomecanvas-sources.xml, tools/apiGen/gtk-sources.xml, tools/apiGen/pango-sources.xml, tools/apiGen/Makefile: Make the build work for different version numbers by renaming the source trees to names without version numbers. 2005-02-15 Duncan Coutts * gtk/Graphics/UI/Gtk/Display/Image.chs.pp: fix an #if test so that it works correctly and is consistent with the other similar ones. * tools/apiGen/CodeGen.hs, tools/apiGen/Marshal.hs: deal with the _utf8 issue on win32. Generate code for {# call #}'s using the appropriate #if's. 2005-02-14 Duncan Coutts * tools/apiGen/glib-sources.xml: add extra sources spec. * tools/apiGen/gnomecanvas-sources.xml: refer to the correct version. * tools/apiGen/format-docs.xsl: collect docs on "Style Properties" and allow formatting in module summary. * tools/apiGen/Api.hs, tools/apiGen/Docs.hs, tools/apiGen/Marshal.hs, tools/apiGen/FormatDocs.hs, tools/apiGen/CodeGen.hs, tools/apiGen/ApiGen.hs: lots of little improvements to the generated documentation. Generalise the "KnownTypes" table to "KnownSymbols" and use that in various places to make the recognition of things we should hyperlink more accurate. Convert enum value names to Haskell style names. Recognise type names and enum value names even when they are not marked up in the original docs. Deal with deprecated objects and methods, but only generate deprecated methods where they exist in the original modules (ie don't add new deprecated methods). Handle "shared" methods but ignore the *_get_type() ones. Cchange to using FM's for the KnownSymbols map so it's not all quite so slow. * tools/apiGen/Makefile: use the glib api when generating the gtk modules, and similarly, use the gtk api when generating the gnomecanvas modules. 2005-02-13 Axel Simon * configure.ac: Removed some unnecessary tests and variable. * tools/checkDir: Use $SED from the configure file instead of sed, similar for grep. This helps on Solaris where the native sed cannot cope with the expression in this file, giving a "Bad substitution". * gtk/Graphics/UI/Gtk/General/IconFactory.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp: Conditionally rename functions that take file names to match the special convention of having a _utf8 ending on Windows. * gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs.pp, gtk/Graphics/UI/Gtk/Windows/FileSel.chs.pp: As above. Furthermore renamed from .chs to .chs.pp. * Makefile.am: Rename the files from .chs to .chs.pp. 2005-02-12 Duncan Coutts * gtk/Graphics/UI/Gtk/Abstract/Bin.chs, gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/Container.chs, gtk/Graphics/UI/Gtk/Abstract/Misc.chs, gtk/Graphics/UI/Gtk/Abstract/Object.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Range.chs, gtk/Graphics/UI/Gtk/Abstract/Scale.chs, gtk/Graphics/UI/Gtk/Abstract/Scrollbar.hs, gtk/Graphics/UI/Gtk/Abstract/Separator.hs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs: Tidy up module headers and re-licence from GPL to LGPL 2.1, also add haddock maintainer, stability and portability fields. * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/Buttons/CheckButton.chs, gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs, gtk/Graphics/UI/Gtk/Buttons/ToggleButton.chs: same for Buttons * gtk/Graphics/UI/Gtk/Display/AccelLabel.chs, gtk/Graphics/UI/Gtk/Display/Image.chs.pp, gtk/Graphics/UI/Gtk/Display/Label.chs, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs, gtk/Graphics/UI/Gtk/Display/Statusbar.chs: same for Display * gtk/Graphics/UI/Gtk/Embedding/Embedding.hsc, gtk/Graphics/UI/Gtk/Embedding/Plug.chs, gtk/Graphics/UI/Gtk/Embedding/Socket.chs: same for Embedding * gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp, gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/HScale.chs, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs, gtk/Graphics/UI/Gtk/Entry/VScale.chs: same for Entry modules * gtk/Graphics/UI/Gtk/Gdk/DrawWindow.hs, gtk/Graphics/UI/Gtk/Gdk/Drawable.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Enums.chs, gtk/Graphics/UI/Gtk/Gdk/Events.hsc, gtk/Graphics/UI/Gtk/Gdk/GC.chs, gtk/Graphics/UI/Gtk/Gdk/Gdk.chs, gtk/Graphics/UI/Gtk/Gdk/Keys.chs, gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs, gtk/Graphics/UI/Gtk/Gdk/Region.chs.pp: same for Gdk modules * gtk/Graphics/UI/Gtk/General/Enums.chs.pp, gtk/Graphics/UI/Gtk/General/General.chs, gtk/Graphics/UI/Gtk/General/IconFactory.chs.pp, gtk/Graphics/UI/Gtk/General/StockItems.hsc, gtk/Graphics/UI/Gtk/General/Structs.hsc, gtk/Graphics/UI/Gtk/General/Style.chs: same for General cetegory * gtk/Graphics/UI/Gtk/Layout/Alignment.chs.pp, gtk/Graphics/UI/Gtk/Layout/AspectFrame.chs, gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/Layout/Fixed.chs, gtk/Graphics/UI/Gtk/Layout/HBox.chs, gtk/Graphics/UI/Gtk/Layout/HPaned.chs, gtk/Graphics/UI/Gtk/Layout/Layout.chs, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs, gtk/Graphics/UI/Gtk/Layout/VBox.chs, gtk/Graphics/UI/Gtk/Layout/VPaned.chs: same for Layout modules * gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ImageMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/TearoffMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp: same for MenuComboToolbar category * gtk/Graphics/UI/Gtk/Misc/Adjustment.chs, gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/Misc/DrawingArea.chs, gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/GArrow.chs, gtk/Graphics/UI/Gtk/Misc/HandleBox.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs, gtk/Graphics/UI/Gtk/Misc/Tooltips.chs.pp, gtk/Graphics/UI/Gtk/Misc/Viewport.chs: same for Misc category * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs, gtk/Graphics/UI/Gtk/Multiline/TextIter.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextMark.chs, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextTagTable.chs, gtk/Graphics/UI/Gtk/Multiline/TextView.chs: same for Multiline * gtk/Graphics/UI/Gtk/Ornaments/Frame.chs, gtk/Graphics/UI/Gtk/Ornaments/HSeparator.chs, gtk/Graphics/UI/Gtk/Ornaments/VSeparator.chs: same for Ornaments * gtk/Graphics/UI/Gtk/Pango/Description.chs, gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp, gtk/Graphics/UI/Gtk/Pango/Layout.chs, gtk/Graphics/UI/Gtk/Pango/Markup.hs, gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp, gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: same for Pango modules * gtk/Graphics/UI/Gtk/Scrolling/HScrollbar.chs, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs, gtk/Graphics/UI/Gtk/Scrolling/VScrollbar.chs: same for Scrolling * gtk/Graphics/UI/Gtk/Selectors/ColorSelection.chs, gtk/Graphics/UI/Gtk/Selectors/ColorSelectionDialog.chs, gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserDialog.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserWidget.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FontSelectionDialog.chs: same for Selectors category * gtk/Graphics/UI/Gtk/TreeList/CellRenderer.hs, gtk/Graphics/UI/Gtk/TreeList/CellRendererPixbuf.chs, gtk/Graphics/UI/Gtk/TreeList/CellRendererText.chs, gtk/Graphics/UI/Gtk/TreeList/CellRendererToggle.chs, gtk/Graphics/UI/Gtk/TreeList/ListStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeModelSort.chs, gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs, gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeViewColumn.chs: same for TreeList * gtk/Graphics/UI/Gtk/Windows/Dialog.chs, gtk/Graphics/UI/Gtk/Windows/FileSel.chs, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: same for Windows * gtk/Makefile, gconf/Makefile, glade/Makefile, mogul/Makefile, sourceview/Makefile: remove makefiles that were used by the old build system. * compat/LocalControl.hs, compat/LocalData.hs: remove old compat modules. * tools/c2hs/toplevel/.cvsignore, tools/c2hs/.cvsignore, tools/apiGen/.cvsignore, mozembed/.cvsignore, glib/.cvsignore, glade/Graphics/UI/Gtk/Glade/.cvsignore, glade/Graphics/UI/Gtk/.cvsignore, gconf/.cvsignore, gconf/System/Gnome/GConf/.cvsignore, glade/.cvsignore, gtk/.cvsignore, mogul/.cvsignore, sourceview/.cvsignore, tools/callbackGen/.cvsignore, tools/hierarchyGen/.cvsignore, .cvsignore: add and update some of the cvsignore files. 2005-02-12 Axel Simon * Makefile.am: Let the pre-processor run over Image.chs by renaming it to Image.chs.pp. * gtk/Graphics/UI/Gtk/Display/Image.chs.pp: Renamed from Image.chs and changed the function name that is called under Windows for the method image_new_from_file which is now called ..._file_utf8. 2005-02-11 Duncan Coutts * Makefile.am: use -DWIN32 for the gtk modules when building on win32. This is only needed for gtk/Graphics/UI/Gtk.hs but the deps calculation needs it too so we have to specify it for the whole gtk pacakge. #include"gtk/wingtk.h" when compiling Gtk.General.General and add gtk/wingtk.h to EXTRA_DIST. * gtk/wingtk.h: #include before the #undef directives so that it will not matter which order ghc puts the #includes when compiling via C. gtk/gtk.h has include guards so it can safely be included more than once. * configure.ac: remove WIN32 from config.h again. We can pass -DWIN32 to ghc instead. Make the default be to disable the gnome and mozilla packages on win32. Bump version to 0.9.7.1_rc2 * configure.ac: oops, forgot to set HSCFLAGS="-C -optc-mms-bitfields" Bump version to 0.9.7.1_rc3 * tools/apiGen/Template.chs: describe our modules as "portable" and include rcs tags in generated modules. * gtk/Graphics/UI/Gtk.hs: no need to #include anymore since the only thing it needed was WIN32 and we now use -DWIN32 instead. * gtk/Graphics/UI/Gtk/General/General.chs: add the pragma {-# NOINLINE initGUI #-} and an explanaition of why this is necessary. * TODO: update the TODO list, add a note to rename some modules after the 0.9.7.1 release and remove some old items that are no longer relevant. 2005-02-10 Duncan Coutts * tools/apiGen/CodeGen.hs: make use of the information from scanning the original modules. We order the function implementations so that they are in the same order as in the origial module and unsafe C calls are preserved. * tools/apiGen/ModuleScan.hs: fix a bug and do a bit of renaming. * tools/apiGen/ApiGen.hs: pass the info from scanning the original modules into the main code gen bits. 2005-02-07 Duncan Coutts * tools/apiGen/ModuleScan.hs: new module that scans the existing module source files to pick out useful information so that we can use that information to improve the generated modules. * tools/apiGen/ApiGen.hs: take advantage of the new ModuleScan information in the various module headder fields. Add a new --scanmodules flag. * tools/apiGen/Template.chs: add author and copyright variable. * tools/apiGen/Makefile: use the new --scanmodules feature. * tools/apiGen/StringUtils.hs: add extra utility function. * mk/common.mk: Add $(EXEEXT) when trying to build c2hsLocal. Set HSTOOLFLAGS = -H350m -M400m for the release so more people can build ok. On windows we need more memory for some reaons so set HSTOOLFLAGS = -H400m -M650m * configure.ac: Add $(EXEEXT) to C2HS name. Do define WIN32 afterall since ghc does not define it (though gcc does so it'll give a warning) Bumb the version to 0.9.7.1_rc1 2005-02-06 Duncan Coutts * configure.ac: win32 fixes. Do not define WIN32 on windows since it is already defined o that platform. Define a conditional so that Makefile.am can conditonally compile a few modules. We no longer need to pass -fnative-struct to gcc on windows. * Makefile.am: win32 fixes. Add $(EXEEXT) in a few places to so names of dependencies are correct on windows. Only compile the plug and socket modules on non-win32 platforms. * tools/c2hs/toplevel/C2HSConfig.hs.in: comment out the @TMPDIR@ substitution since it causes problems in windows and is not used anyway. * tools/c2hs/c/CParser.hs: make c2hs accept __attribute__'s on declerations of functions returning pointer types. This is needed for some mingw header file. 2005-02-05 Duncan Coutts * tools/apiGen/ApiGen.hs: add support for interfaces, deal with examples in a more general way and improve the generation of properties. * tools/apiGen/format-docs.xsl: deal with another kind of table. * tools/apiGen/ApiGen.hs, tools/apiGen/Api.hs, tools/apiGen/Docs.hs, tools/apiGen/FormatDocs.hs, tools/apiGen/Marshal.hs, tools/apiGen/CodeGen.hs, tools/apiGen/StringUtils.hs: split ApiGen.hs into several modules to make it easier to manage and understand. * tools/apiGen/Makefile: update the Makefile accordingly 2005-02-04 Axel Simon * gtk/Graphics/UI/Gtk/Display/Image.chs: Added imageSetFromPixbuf. 2005-02-03 Duncan Coutts * demo/calc/CalcModel.hs: fix a bug in formatting numbers for display. I was stripping off trailing 0's too enthusiasticly. 2005-01-31 Duncan Coutts * demo/glade/simple.glade: remove libgnome requirement, it was unnecesary. 2005-01-30 Duncan Coutts * tools/apiGen/ApiGen.hs: first go at generating signals including documentation. Ignore virstual methods as they are internal. * tools/apiGen/format-docs.xsl: extract signal documentation, and adjust for new formatting of property documentation. * gtk/abstract, gtk/buttons, gtk/display, gtk/embedding, gtk/entry, gtk/gdk, gtk/general, gtk/glib, gtk/layout, gtk/menuComboToolbar, gtk/misc, gtk/multiline, gtk/ornaments, gtk/pango, gtk/scrolling, gtk/selectors, gtk/signals, gtk/treeList, gtk/typehier, gtk/windows: remove directories where the non-hierarchical modules used to live. 2005-01-28 Duncan Coutts * tools/apiGen/Makefile: use sed to do the patching rather than an external patch file (which I'd never added to cvs anyway). This time it should work for other people "out of the box". 2005-01-27 Duncan Coutts * tools/apiGen/gapi2xml.pl, tools/apiGen/gapi_parser.pl, tools/apiGen/gapi_pp.pl: sync up with the latest version of these tools from the mono/gtk# project. * tools/apiGen/ApiGen.hs: minor updates necessary to work with the updated gapi tools. * tools/apiGen/atk-sources.xml, tools/apiGen/gdk-sources.xml tools/apiGen/glade-sources.xml, tools/apiGen/gnomecanvas-sources.xml tools/apiGen/gtk-sources.xml, tools/apiGen/pango-sources.xml, tools/apiGen/Makefile : use later versions of Gtk+ and related libs, now at 2.4.14 rather than 2.2.2. * demo/calc/Calc.hs, demo/calc/CalcModel.hs, demo/calc/Makefile demo/calc/calc.glade: add a simple calculator demo. 2005-01-26 Duncan Coutts * tools/apiGen/ApiGen.hs: Several marshaling improvements. Extract enums from the api file. Produce a list of objects and enums and use it when deciding how to marshal types. Marshal floats and doubles, flags and enums. Distinguish between GObjects and GtkObjects. Extract documentation of properties. Initial go at producing property definitions. * tools/apiGen/format-docs.xsl: extract documentation of properties. * tools/apiGen/Makefile: include parent api files to scan for types. * tools/apiGen/README: note some todo items. * tools/apiGen/atk-sources.xml, tools/apiGen/gdk-sources.xml tools/apiGen/glade-sources.xml, tools/apiGen/gnomecanvas-sources.xml tools/apiGen/gtk-sources.xml, tools/apiGen/pango-sources.xml: add and update sources spec files. 2005-01-25 Duncan Coutts * tools/apiGen/format-docs.xsl: deal with another kind of list and preserve formatting in definition list terms. * tools/apiGen/ApiGen.hs: extract properties and events from the xml api file (but don't use them yet). Improve the formatting of definition lists. Escape things inside literals properly. Eliminate an infinite loop bug in the line wrapping algorithm. 2005-01-24 Duncan Coutts * INSTALL: update the install instructions * Makefile.am: add missing dependency. * configure.ac: bump version to 0.9.7 2005-01-23 Duncan Coutts * tools/apiGen/formatXml.c, tools/apiGen/gapi_parser.pl: add extra bits of the Gtk# gapi system. * tools/apiGen/Makefile, tools/apiGen/mkdocxml.sh: add Makefile to automate everything better. * tools/apiGen/gen-all.sh: retire previous automation script * tools/apiGen/Template.chs, tools/apiGen/format-docs.xsl, tools/apiGen/ApiGen.hs: updates to the code generation tool. Change the style from single module per file to having every module in a single file since this is the way the gapi tool works. * tools/apiGen/gtk-sources.xml, tools/apiGen/gdk-sources.xml, tools/apiGen/pango-sources.xml, tools/apiGen/glade-sources.xml: add gapi-parser input files for an initial set of modules. * tools/apiGen/README: update the description and intructions. 2005-01-23 Axel Simon * Makefile.am, mk/common.mk: Resurrect dependency generation under the new scheme of inferring the current package. Dependency files are now always loaded but only recreated if we are not cleaning or already building dependencies. * mk/common.mk: Set the initial heap size for tools to 400m to accommodate for less fortunate people. * tools/c2hs/chs/CHS.hs: Emit a newline after a LINE directive if the next verbatim text does not start with one. This fixes a problem with gcc on Mac OS. 2005-01-20 Duncan Coutts * Makefile.am: make each package's LIBS include the LIBS of its dependent packages, which is the same as we do for the CFLAGS. * configure.ac: bump version to 0.9.7_rc4 2005-01-19 Duncan Coutts * tools/c2hs/c/CLexer.hs: make c2hs understand the __signed, __signed__, __volatile and __volatile__ portability keyword synonyms. 2005-01-18 Duncan Coutts * tools/c2hs/c/CLexer.hs: trivial fix to allows c2hs to process the glib/gtk 2.6 headders. * gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/ListStore.chs.pp: cope with building against Gtk+ version 2.1.0 which is a version that Sun shipped with its version of Gnome 2. * acinclude.m4: add a macro to deal with a hack on Linux systems where GHCi cannot load the pthread library. Everything still works if we just strip out the -lpthread flag because pthread is a dependency of other libraries I guess. * configure.ac: 1. Do not build GHCi .o files on Solaris because it does not work due to ghc-pkg using an incorrect linker command. 2. Add a hack to add a runtime library search path when linking programs that use mozembed. 3. Use the above mentioned pthread hack for each package that uses pthread. 4. Define some extra conditionals for Gtk versions so we know which demos to build upon make installcheck. 5. Also add a work around for a broken development version of Gtk that Sun decided to ship. * Makefile.am: 1. Revert patch to build GHCi .o files ourselves, instead leave it up to ghc-pkg -g as we did before. 2. Make building GHCi .o files conditional on the Soalris test from configure. 3. Make sure to remove the previous GHCi .o file otherwise ghc-pkg does not re-generate it which would lead to problems for people upgrading. 4. Arrandge for only the appropriate demos to be built and support building them with a non-default package.conf location and with older ghc versions that do not support "auto" packages. 5. Change the install location of gtk2hs.haddock from $(datadir)/doc/gtk2hs/html/ to just $(datadir)/doc/gtk2hs/ to conform with the cabal haddock convention. * gtk2hs.spec.in: revert to building the GHCi .o files in a post-install action and removing them in a uninstall action. * demo/buttonbox/Makefile, demo/concurrent/Makefile, demo/filechooser/Makefile, demo/gconf/Makefile, demo/glade/Makefile demo/graphic/Makefile, demo/hello/Makefile, demo/mozembed/Makefile demo/profileviewer/Makefile, demo/sourceview/Makefile, demo/treeList/Makefile, demo/unicode/Makefile: make all the demos support building with older ghc versions that do not support "auto" packages and so you have to specifiy -package gtk or whatever. * configure.ac: bump version to 0.9.7_rc3 2005-01-17 Duncan Coutts * configure.ac: add an extra option --without-pkgreg to allow distributors to install without registering any packages with ghc-pkg. Also a fix for the C library deps of the glib package which was stopping ghci from loading the glib package (and thus all our other packages). * Makefile.am: move the register package hook to this file from mk/common.mk and make it conditional on the new configure flag. Also install all the .pkg files and install ghci .o files for each .a lib. * mk/common.mk: the register package hook has moved to Makefile.am * gtk2hs.spec.in: update to Jens's latest spec file plus my (probably broken) changes. This needs testing. 2005-01-16 Duncan Coutts * demo/buttonbox/ButtonBox.hs demo/buttonbox/Makefile demo/concurrent/Progress.hs demo/concurrent/Makefile demo/filechooser/FileChooserDemo.hs demo/filechooser/Makefile demo/gconf/GConfDemo.hs demo/gconf/Makefile demo/glade/GladeTest.hs demo/glade/Makefile demo/graphic/Drawing.hs demo/graphic/Makefile demo/hello/Makefile demo/mozembed/TestEmbedMoz.hs demo/mozembed/Makefile demo/profileviewer/ProfileViewer.hs demo/profileviewer/Makefile demo/sourceview/SourceViewTest.hs demo/sourceview/Makefile demo/treeList/ListTest.hs demo/treeList/Makefile demo/unicode/Arabic.hs demo/unicode/Makefile: update all the demos to use the new module names and write new simple makefiles. * Makefile.am: build documentation for all packages. Add installcheck make target that compiles & links all the demos. Arrange for all the demos to be included in the dist tarball. Fix linker problem for gconf due to missing _stub.o file. * configure.ac: bump version to 0.9.7_rc1 * mk/common.mk: do the ghc-pkg registering in a way that works for older ghc versions too. Make the build a little less chatty. * mk/chsDepend.in: be less chatty. * glib/System/Glib/FFI.hs, glib/System/Glib/GType.chs, glib/System/Glib/UTFString.hs: in older ghc versions Foreign does not export unsafePerformIO, so import it from System.IO.Unsafe instead. Also conditionally export unsafePerformIO since older ghc versions do not export it from module Foreign. * tools/c2hs/gen/CInfo.hs, tools/c2hs/toplevel/C2HSConfig.hs.in: import Foreign.C rather than CForeign, since the latter is not available in older versions of ghc. * mogul/Graphics/UI/Gtk/Mogul/WidgetTable.hs, gtk/Graphics/UI/Gtk/Pango/Description.chs: more import tweaks for compatability with older versions of ghc. * tools/c2hs/base/general/FastMutInt.hs, tools/c2hs/base/general/Binary.hs: allow these to compile with older ghc versions 5.04.x and 6.0.x, that lack openBinaryFile and Data.HashTable and that do not like you to put optimisation flags in an {-# OPTIONS #-} pragma. Also define SIZEOF_HSINT more portably. * Makefile.am: fix libHSgtk_a_SOURCES, we were distributing preprocessed sources for some files which is wrong of course, we should distribute the original. Add missing dependency that caused build failure on an older gmake version. Add some HCFLAGS for a couple sources since older ghc versions do not like them to be given in the source file in a an {-# OPTIONS #-} pragma. * configure.ac: do a portability test for sizeof(void *) needed by c2hs's binary serialisation code. Do a versionitis test, the "auto libs" feature was only added in ghc 6, so conditionally define GHCPKG_USE_AUTOLIBS to have the appropriate value to substitute into all the .pkg.in files. * gconf/gconf.pkg.in, glib/glib.pkg.in, mogul/mogul.pkg.in, sourceview/sourceview.pkg.in, glade/glade.pkg.in, gtk/gtk.pkg.in, mozembed/mozembed.pkg.in: use the new GHCPKG_USE_AUTOLIBS substitution so the .pkg files will be understood by older versions of ghc-pkg. * Makefile.am: distribute the gtk2hs.haddock file in case anyone wants to build haddock documentation that references the our docs. Also, clean up the .hs.uncpp files. * demo/profileviewer/ProfileViewer.hs: Whitespace fix. Not sure how this got in. * configure.ac: bump version to 0.9.7_rc2 2005-01-15 Duncan Coutts * mk/common.mk: change the way we find pacakge variables for files being built. It's now based only on the file name rather than through an inherited variable. Hopefully this will be less fragile. * Makefile.am: supply the new PKGNAME variables, remove the NAME variables required under the previous scheme. Add dependencies to make sure all appropriate .chs files exist before .dep files are generated. Put some built sources into nodist__SOURCES so they are not included in the tarball and fixup other rules affected by this. * mk/chsDepend.in: the assertion can now be enabled since it no longer fails. * AUTHORS: credit Wolfram Kahl and co for mozembed. Add note about the documentation coming from Gtk sources. Update my entry. 2005-01-14 Duncan Coutts * mk/chsDepend.in: do the extra check properly and make it a warning by default. It still warns rather a lot. * Makefile.am: move a couple Types.chs locations/names and make sure the empty directories get included in the tarball. Disable building and distributing the apicoverage tool. Make sure Types and Signals files are removed on make clean. * mk/common.mk: make package registering on install work again after the earlier change to using pkglibdir. * mozembed/Graphics/UI/Gtk/MozEmbed.chs, gconf/System/Gnome/GConf/GConfClient.chs: change name of Types import. 2005-01-14 Jens Petersen * mogul/mogul.pkg.in (library_dirs): Use @GTK_LIBDIR_CQ@ * configure.ac (hidir): Uses braces for default value. * acinclude.m4 (GTKHS_REFORMAT_PACKAGE_LIBS): Use pkglibdir now instead of libdir, and delay its expansion. * Makefile.am (EXTRA_DIST): Add "sourceview/sourceview.h". 2005-01-13 Duncan Coutts * gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp: fix whitespace problem that caused compile failure. * configure.ac, Makefile.am, mk/common.mk: Do detection of haddock and add --enable-docs to configure. First hash at building haddock docs - gtk package only so far. Also move some defines from Makefile.am to configure.ac as requested by a FIXME comment. * mk/chsDepend.in: add extra check to the chsDepend script (disabled). Dare anyone to enable it and watch the build break! We still have some issues with the NAME make var being set incorrectly. I have a plan to replace the cunning NAME hack with a different hack. * configure.ac, Makefile.am: get everything to be installed under $pkglibdir rather than $libdir (ie $prefix/gtk2hs/*). Fix building of .hs.uncpp files needed for haddock (add to SUFFIXs). Get all doc files to be installed. I'm not sure where the html docs should be installed however, it's $(datadir)/doc/gtk2hs/html for now. * tools/c2hs/c/CParser.hs: allow c2hs to cope with (and ignore) multiple __atribute__ annotations. Required for glib-2.6. 2005-01-12 Axel Simon * Makefile.am, gtk/Graphics/UI/Gtk/Pango/Rendering.chs.pp, gtk/Graphics/UI/Gtk/Pango/Enums.chs.pp: Renames both files from .chs to .chs.pp and changed the Makefile accordingly. Preprocessing is now necessary to accommodate the lack of some enum names in Gtk 2.2. * tools/hierarchyGen/hierarchy.list: Only create the FileChooser interface object when building for Gtk 2.4 or higher. 2005-01-12 Duncan Coutts * demo/hello/World.hs: update to work with the new module names. * demo/hello/Makefile: a simple makefile. The old makefile relied on the old build system. This makefile will not build in-place it requires everything to be installed. * tools/apiGen/ApiGen.hs, tools/apiGen/format-docs.xsl, tools/apiGen/gen-all.sh, tools/apiGen/Template.chs: add support for documentation of function arguments. It's mostly and improvement I think though it does add a lot of extra stuff to the final documentation. On the other hand the gtk documentation for functions often refer to argument names so the generated haddoc docs make more sense now. 2005-01-11 Duncan Coutts * glib/glib.pkg.in, gtk/gtk.pkg.in, mogul/mogul.pkg.in, glade/glade.pkg.in, gconf/gconf.pkg.in, sourceview/sourceview.pkg.in, mozembed/mozembed.pkg.in: correct import_dirs. Each module has its own directory under the hi difrectory. Also, since all packages now use the hierachrical module namespace we can install all packages as 'Auto' packages which means that users do not have to specify -package to ghc most of the time. * Makefile.am: correct the install location for glib package's .hi files. Correct a linker error caused by a missing _stub.o file. Everything should install correctly now and the demos should build ok. * gtk/Graphics/UI/Gtk/Pango/Description.chs, gtk/Graphics/UI/Gtk.hs: tiny haddock markup fixes. 2005-01-10 Duncan Coutts * tools/apiGen/format-docs.xsl: nicer code and more comprehensively deal with various sorts of paragrahps, lists, sections and examples. * tools/apiGen/ApiGen.hs: deal with more complicated formatting, definition lists, itemised lists, subsections, inline and titled program listing examples. * tools/apiGen/gen-all.sh: now works with the latest version of gtk * tools/apiGen/Template.chs: import System.Glib.FFI rather than Foreign, also a couple cosmetic improvements. * tools/apicoverage/Makefile: update regexps to match the output of current versions of c2hs. The apicoverage tool should now be accurate. 2005-01-09 Duncan Coutts * tools/apiGen/format-docs.xsl: fix generation of function version numbers when they have no version given. * tools/apiGen/ApiGen.hs: Fix for when no functions are defined in the documentation file. Also, take the c2hs context prefix and lib values from the api file be default. 2005-01-08 Duncan Coutts * gtk/Graphics/UI/Gtk.hs: commit the grand hierarchical namespace conversion. If it all goes wrong, revert back to the tag 'pre-hierarchical-names-conversion'. * gtk/Graphics/UI/Gtk/Abstract/Bin.chs, gtk/Graphics/UI/Gtk/Abstract/Box.chs, gtk/Graphics/UI/Gtk/Abstract/ButtonBox.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Container.chs, gtk/Graphics/UI/Gtk/Abstract/Misc.chs, gtk/Graphics/UI/Gtk/Abstract/Object.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Paned.chs.pp, gtk/Graphics/UI/Gtk/Abstract/Range.chs, gtk/Graphics/UI/Gtk/Abstract/Scale.chs, gtk/Graphics/UI/Gtk/Abstract/Scrollbar.hs, gtk/Graphics/UI/Gtk/Abstract/Separator.hs, gtk/Graphics/UI/Gtk/Abstract/Widget.chs: add abstract category * gtk/Graphics/UI/Gtk/Buttons/Button.chs.pp, gtk/Graphics/UI/Gtk/Buttons/CheckButton.chs, gtk/Graphics/UI/Gtk/Buttons/RadioButton.chs, gtk/Graphics/UI/Gtk/Buttons/ToggleButton.chs: button category * gtk/Graphics/UI/Gtk/Display/AccelLabel.chs, gtk/Graphics/UI/Gtk/Display/Image.chs, gtk/Graphics/UI/Gtk/Display/Label.chs, gtk/Graphics/UI/Gtk/Display/ProgressBar.chs, gtk/Graphics/UI/Gtk/Display/Statusbar.chs: display category * gtk/Graphics/UI/Gtk/Embedding/Embedding.hsc, gtk/Graphics/UI/Gtk/Embedding/Plug.chs, gtk/Graphics/UI/Gtk/Embedding/Socket.chs: embedding category * gtk/Graphics/UI/Gtk/Entry/Editable.chs.pp, gtk/Graphics/UI/Gtk/Entry/Entry.chs.pp, gtk/Graphics/UI/Gtk/Entry/EntryCompletion.chs.pp, gtk/Graphics/UI/Gtk/Entry/HScale.chs, gtk/Graphics/UI/Gtk/Entry/SpinButton.chs, gtk/Graphics/UI/Gtk/Entry/VScale.chs: entry category * gtk/Graphics/UI/Gtk/Gdk/DrawWindow.hs, gtk/Graphics/UI/Gtk/Gdk/Drawable.chs.pp, gtk/Graphics/UI/Gtk/Gdk/Enums.chs, gtk/Graphics/UI/Gtk/Gdk/Events.hsc, gtk/Graphics/UI/Gtk/Gdk/GC.chs, gtk/Graphics/UI/Gtk/Gdk/Gdk.chs, gtk/Graphics/UI/Gtk/Gdk/Keys.chs, gtk/Graphics/UI/Gtk/Gdk/Pixbuf.chs, gtk/Graphics/UI/Gtk/Gdk/Region.chs.pp: gdk category * gtk/Graphics/UI/Gtk/General/Enums.chs.pp, gtk/Graphics/UI/Gtk/General/General.chs, gtk/Graphics/UI/Gtk/General/IconFactory.chs.pp, gtk/Graphics/UI/Gtk/General/StockItems.hsc, gtk/Graphics/UI/Gtk/General/Structs.hsc, gtk/Graphics/UI/Gtk/General/Style.chs: general category * gtk/Graphics/UI/Gtk/Layout/Alignment.chs.pp, gtk/Graphics/UI/Gtk/Layout/AspectFrame.chs, gtk/Graphics/UI/Gtk/Layout/Expander.chs.pp, gtk/Graphics/UI/Gtk/Layout/Fixed.chs, gtk/Graphics/UI/Gtk/Layout/HBox.chs, gtk/Graphics/UI/Gtk/Layout/HButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/HPaned.chs, gtk/Graphics/UI/Gtk/Layout/Layout.chs, gtk/Graphics/UI/Gtk/Layout/Notebook.chs.pp, gtk/Graphics/UI/Gtk/Layout/Table.chs, gtk/Graphics/UI/Gtk/Layout/VBox.chs, gtk/Graphics/UI/Gtk/Layout/VButtonBox.chs, gtk/Graphics/UI/Gtk/Layout/VPaned.chs: layout category * gtk/Graphics/UI/Gtk/MenuComboToolbar/CheckMenuItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Combo.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBox.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ComboBoxEntry.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/ImageMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/Menu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuBar.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/MenuShell.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/OptionMenu.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/RadioMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/TearoffMenuItem.chs, gtk/Graphics/UI/Gtk/MenuComboToolbar/ToolItem.chs.pp, gtk/Graphics/UI/Gtk/MenuComboToolbar/Toolbar.chs.pp: menu combo toolbar category * gtk/Graphics/UI/Gtk/Misc/Adjustment.chs, gtk/Graphics/UI/Gtk/Misc/Calendar.chs.pp, gtk/Graphics/UI/Gtk/Misc/DrawingArea.chs, gtk/Graphics/UI/Gtk/Misc/EventBox.chs.pp, gtk/Graphics/UI/Gtk/Misc/GArrow.chs, gtk/Graphics/UI/Gtk/Misc/HandleBox.chs, gtk/Graphics/UI/Gtk/Misc/SizeGroup.chs, gtk/Graphics/UI/Gtk/Misc/Tooltips.chs.pp, gtk/Graphics/UI/Gtk/Misc/Viewport.chs: misc category * gtk/Graphics/UI/Gtk/Multiline/TextBuffer.chs, gtk/Graphics/UI/Gtk/Multiline/TextIter.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextMark.chs, gtk/Graphics/UI/Gtk/Multiline/TextTag.chs.pp, gtk/Graphics/UI/Gtk/Multiline/TextTagTable.chs, gtk/Graphics/UI/Gtk/Multiline/TextView.chs: multiline category * gtk/Graphics/UI/Gtk/Ornaments/Frame.chs, gtk/Graphics/UI/Gtk/Ornaments/HSeparator.chs, gtk/Graphics/UI/Gtk/Ornaments/VSeparator.chs: ornaments category * gtk/Graphics/UI/Gtk/Pango/Description.chs, gtk/Graphics/UI/Gtk/Pango/Enums.chs, gtk/Graphics/UI/Gtk/Pango/Layout.chs, gtk/Graphics/UI/Gtk/Pango/Markup.hs, gtk/Graphics/UI/Gtk/Pango/Rendering.chs, gtk/Graphics/UI/Gtk/Pango/Types.chs.pp: pango category * gtk/Graphics/UI/Gtk/Scrolling/HScrollbar.chs, gtk/Graphics/UI/Gtk/Scrolling/ScrolledWindow.chs, gtk/Graphics/UI/Gtk/Scrolling/VScrollbar.chs: scrolling category * gtk/Graphics/UI/Gtk/Selectors/ColorSelection.chs, gtk/Graphics/UI/Gtk/Selectors/ColorSelectionDialog.chs, gtk/Graphics/UI/Gtk/Selectors/FileChooser.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserDialog.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FileChooserWidget.chs.pp, gtk/Graphics/UI/Gtk/Selectors/FontSelection.chs, gtk/Graphics/UI/Gtk/Selectors/FontSelectionDialog.chs: selectors * gtk/Graphics/UI/Gtk/TreeList/CellRenderer.hs, gtk/Graphics/UI/Gtk/TreeList/CellRendererPixbuf.chs, gtk/Graphics/UI/Gtk/TreeList/CellRendererText.chs, gtk/Graphics/UI/Gtk/TreeList/CellRendererToggle.chs, gtk/Graphics/UI/Gtk/TreeList/ListStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeModel.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeModelSort.chs, gtk/Graphics/UI/Gtk/TreeList/TreeSelection.chs, gtk/Graphics/UI/Gtk/TreeList/TreeStore.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeView.chs.pp, gtk/Graphics/UI/Gtk/TreeList/TreeViewColumn.chs: tree list selectors * gtk/Graphics/UI/Gtk/Windows/Dialog.chs, gtk/Graphics/UI/Gtk/Windows/FileSel.chs, gtk/Graphics/UI/Gtk/Windows/Window.chs.pp: windows selectors * glade/Graphics/UI/Gtk/Glade.chs: glade package hierarchical namespace conversion. * sourceview/Graphics/UI/Gtk/SourceView/SourceBuffer.chs sourceview/Graphics/UI/Gtk/SourceView/SourceIter.chs sourceview/Graphics/UI/Gtk/SourceView/SourceIter.chs sourceview/Graphics/UI/Gtk/SourceView/SourceLanguage.chs sourceview/Graphics/UI/Gtk/SourceView/SourceLanguagesManager.chs sourceview/Graphics/UI/Gtk/SourceView/SourceMarker.chs sourceview/Graphics/UI/Gtk/SourceView/SourceStyleScheme.chs sourceview/Graphics/UI/Gtk/SourceView/SourceTag.chs sourceview/Graphics/UI/Gtk/SourceView/SourceTagStyle.hsc sourceview/Graphics/UI/Gtk/SourceView/SourceTagTable.chs sourceview/Graphics/UI/Gtk/SourceView/SourceView.chs sourceview/Graphics/UI/Gtk/SourceView.hs: sourceview package hierarchical namespace conversion. * mozembed/Graphics/UI/Gtk/MozEmbed.chs: fixup names of imported modules. * mogul/Graphics/UI/Gtk/Mogul/GetWidget.hs, mogul/Graphics/UI/Gtk/Mogul/MDialog.hs, mogul/Graphics/UI/Gtk/Mogul/NewWidget.hs, mogul/Graphics/UI/Gtk/Mogul/TreeList.hs, mogul/Graphics/UI/Gtk/Mogul/WidgetTable.hs, mogul/Graphics/UI/Gtk/Mogul.hs: mogul package namespace conversion. * gconf/System/Gnome/GConf/GConfValue.chs, gconf/System/Gnome/GConf/GConfClient.chs: fixup names of imported modules. * tools/hierarchyGen/TypeGen.hs: Do not generate top of hierarchy, ie GObject. Let it be imported instead. This allows it to me moved to the glib package. * tools/hierarchyGen/Hierarchy.chs.template: fixup names of imported modules. Also castToGObject will be imported so need not be defined locally. * tools/callbackGen/Signal.chs-boot1, tools/callbackGen/Signal.chs-boot2: fix module name and imports. * mk/common.mk: bludgeon automake into submission. Stop it from falsely detecting clashes between source modules producing the same object file. Also --include the module header for .hsc files. * glib/glib.pkg.in, glib/System/Glib.hs, glib/System/Glib/FFI.hs, glib/System/Glib/GError.chs.pp, glib/System/Glib/GList.chs glib/System/Glib/GObject.chs.pp, glib/System/Glib/GParameter.hsc glib/System/Glib/GType.chs, glib/System/Glib/GValue.chs, glib/System/Glib/GValueTypes.chs, glib/System/Glib/StoreValue.hsc glib/System/Glib/UTFString.hs, glib/System/Glib/Types.chs: move glib modules to a seperate package and use hierarchical namespace names. * configure.ac: add glib tests and flags stuff. Emit the result of the win32 test into config.h so it'll be used. * Makefile.am: add glib package, change file names to reflect module renaming. Add glib flags before gtk flags everywere. All .hi files now install using nobase to preserve directory names. 2005-01-07 Duncan Coutts * tools/apiGen/ApiGen.hs: several documentation improvements, add module level documentation and produce contents list. Also note in the documentation what gtk version the module as a whole and individual functions are avaliable from, eg "available since Gtk version 2.4". * tools/apiGen/format-docs.xsl: extract module level documentation, the summary, description and any extra sections including program listings. The object hierarchy has not yet been added. * tools/apiGen/Template.chs: added Haddock headers and rename some template variables. Move major documentation section to export list. * tools/apiGen/gen-all.sh: fix buglet. * tools/apiGen/README: update TODO list. 2005-01-06 Duncan Coutts * tools/apiGen/ApiGen.hs, tools/apiGen/Template.chs tools/apiGen/format-docs.xsl, tools/apiGen/gen-all.sh, tools/apiGen/gapi2xml.pl, tools/apiGen/gapi_pp.pl, tools/apiGen/README: new tool to semi-automatically generate binding modules from C headder files with Haddock documentation extracted from gtk-doc docbook xml files. Perl scripts by gtk-sharp team. 2004-12-19 Duncan Coutts * configure.ac: add support for conditionals in Makefile.am so that --disable-gnome, --disable-libglade will work again. Instead of doing #include in config.h just define the GTK_CHECK_VERSION in config.h. It's a simple macro and it means that now config.h does not depend on any -I include paths so can be used in any module. Also added hack to stop warnings about PACKAGE_* variables clashing with the ones from ghc's version of config.h. * gtk/treeList/TreeView.chs.pp: do not #include, the GTK_CHECK_VERSION macro is now defined in config.h * mk/common.mk: include config.h when building .precomp files since config.h has the *_DISABLE_DEPRECATED #defines which modify the gtk headers. Also, use a per-library search path. Possibly controversial, revert it if you don't like the idea. * Makefile.am: Use per-library / per-program search paths. Make the glade, gconf, sourceview and mozembed packages build conditionally on ENABLE_* variables set by ./configure --disable-*. Also, ditch the use of BUILDSOURCES, having re-read the automake manual I concluded it's not helpful. * tools/callbackGen/HookGenerator.hs: remove support for pre-5.04 ghc. 2004-12-18 Duncan Coutts * tools/c2hs/toplevel/Main.hs: remove performance debuging output when processing .chs files. Keep debugging output for generating .precomp files to remind us how slow it is and to bug me to fix it! * mozembed/Graphics/UI/Gtk/MozEmbed.chs: tidy up module header. * mk/chsDepend.in: make chsDepend understand hierarchical modules names and change the dependency of .hs files to be on the .chi files rather than the .chs files. This is how it is done for .o and .hs files, that is, the .o file depends on the .hi files. * Makefile.am: make the various 'clean' targets more thorough. Also get the .hi files to be installed for the other packages. 2004-12-17 Duncan Coutts * mozembed/Graphics/UI/Gtk/MozEmbed.chs: new bindings to GtkMozEmbed contributed by Wolfram Kahl (with previous work by Scott West and Jonas Svensson). * mozembed/mozembed.pkg.in: new package file * tools/hierarchyGen/hierarchy.list, tools/callbackGen/gtkmarshal.list: class definition and extra signal prototype for GtkMozEmbed. * configure.ac: checks for version of mozilla-gtkmozembed and get CFLAGS etc. * Makefile.am: add support for building the mozembed package. * mk/common.mk: do not -#include when compiling .hs to .o as it is unnecessary and breaks for modules that do not have -I/usr/include/gtk-2.0 in their CPPFLAGS. * demo/mozembed/TestEmbedMoz.hs, demo/mozembed/Makefile: add mozembed test program. 2004-12-14 Duncan Coutts * mk/common.mk: quoting/escaping fix so that headers are -#include'd properly. This allows a build using ./configure --with-hcflags=-fvia-C to get further. 2004-12-13 Duncan Coutts * tools/hierarchyGen/TypeGen.hs: make the tool use an external template file rather than embeding all the module text. Also added a --parentname parameter to allow modules to inherit definitions from other modules - this replaces the 'if fname/="Hierarchy" then' hack. * tools/hierarchyGen/Hierarchy.chs.template: new file. Template for class hierarchy definition modules. Used by the TypeGenerator program. * Makefile.am: modify invocation of TypeGenerator to pass template file and pass --parentname=Hierarchy for all packages other than gtk. * mk/common.mk: allow per-module HCFLAGS * Makefile.am: c2hs builds without -fglasgow-exts except for the Parsers and C2HSConfig modules. * tools/c2hs/base/sysdep/SysDep.hs: simplify import and re-export. * Makefile.am: build glade and sourceview with more targeted use of -fglasgow-exts 2004-12-12 Duncan Coutts * gtk/gtk.pkg.in: change package_deps to haskell98 rather than base to fix linker problem. * Makefile.am: use $()-style make variable rather than @@-style variable substitution. * mk/common.mk: restore use of the $(HCFLAGS) in compile and link commands. The variable comes from ./configure's --with-hcflags parameter. Also when registering packages use update rather than add so that reinstallations do not fail. 2004-12-12 Axel Simon * gtk/menuComboToolbar/Toolbar.chs.pp: Change comments in order not to confuse haddock. The pre-processor leaves blank lines which makes haddock assume the comment has ended. Use mult-line comments. * gtk/abstract/Range.chs, abstract/Widget.chs, display/Label.chs, misc/Adjustment.chs, scrolling/HScrollbar.chs, scrolling/VScrollbar.chs: Add some more functions. * Makefile.am, mk/common.mk: Avoid building dependencies when saying "make clean". * gtk/pango/Description.chs, gtk/pango/PangoEnums.chs: Rearranged enumerations, added new functions to query fonts. * gtk/pango/Markup.hs, gtk/pango/PangoLayout.chs, gtk/pango/PangoTypes.chs.pp, gtk/pango/Rendering.chs: As above. New functionality only available due to fixed in c2hs that allow type synonyms in hooks. * tools/hierarchyGen/hierarchy.list: Corrected a typo. * demo/unicode/Arabic.hs: Simplify example. * gtk/general/Structs.hsc: Changed the type of pangoScale from Int to Integer. * acinclude.m4: Replaced a -I with a -L which fixes installation of packages. * sourceview/sourceview.pkg.in: Added forgotten comma. 2004-12-9 Duncan Coutts * gtk/embedding/Embedding.hsc, gtk/entry/EntryCompletion.chs.pp, gtk/gdk/Events.hsc, gtk/gdk/GC.chs, gtk/gdk/GdkEnums.chs, gtk/gdk/Keys.chs, gtk/gdk/Pixbuf.chs, gtk/general/FFI.hs, gtk/general/General.chs, gtk/general/StockItems.hsc, gtk/general/Structs.hsc, gtk/glib/GObject.chs.pp, gtk/glib/GType.chs gtk/treeList/StoreValue.hsc, gtk/treeList/TreeSelection.chs, gtk/treeList/TreeView.chs.pp, mogul/TreeList.hs, mogul/WidgetTable.hs, tools/callbackGen/Signal.chs-boot2, tools/c2hs/base/sysdep/SysDep.hs: change some import modules to use modern hierarchical modules so we no longer need the LocalData or LocalControl modules, nor the data or lang packages. This should still work all the way back to ghc 5.04.x, though this needs testing. * mk/common.mk: make install-data-hook more likely to work by adding a ';' after each command to execute. Also limit tools memory hunger. * acinclude.m4, configure.ac: add two new macros for changing the representation of the *_CFLAGS so they can be stuck into the *.pkg files. The macros do exactly the same thing as the existing code in configure.ac but we now want to do it for all the packages. * gtk/gtk.pkg.in, mogul/mogul.pkg.in, sourceview/sourceview.pkg.in, glade/glade.pkg.in, gconf/gconf.pkg.in: update these to use the new variables set by the above macros. Also change the name of the gtk2hs package to be just gtk and prefix all package lib names with HS. * Makefile.am: make package library names start with HS, ie libHSgtk.a Also eliminate the compat/* modules and package deps on the data and lang packages as they are all no longer needed. 2004-12-8 Duncan Coutts * acinclude.m4: fix an automake warning about underquoted definitions * Makefile.am: build glade, gconf, sourceview & mogul packages * configure.ac: add new .pkg files to AC_OUTPUT list * mogul/mogul.pkg, glade/glade.pkg, gconf/gconf.pkg, sourceview/sourceview.pkg: add new pkg files * TODO: record a couple issues with the build 2004-12-7 Duncan Coutts * mk/common.mk: tiny tidyup * tools/c2hs/chs/CHS.hs: apply old patch to our new c2hs, makes c2hs deal with hierarchical module names. * tools/c2hs/gen/GenBind.hs: apply old patch to our new c2hs, fix handling of typedef'ed C types. Needed for SourceMarker.chs. * gconf/System/Gnome/GConf/GConfClient.chs, gconf/System/Gnome/GConf/GConfValue.chs: make these work with our current version of c2hs. It's not entirely obvious to me if this is an improvement in c2hs or a regression. Could do with investigating. 2004-12-02 Jens Petersen * configure.ac: Use modern invocation of AC_INIT with name and version. Call AM_INIT_AUTOMAKE without args. No longer override VERSION variable with VERSION file. * Makefile.am (EXTRA_DIST): No longer include VERSION file. Add "tools/checkDirs.sh". 2004-12-01 Axel Simon * gtk/menuComboToolbar/Toolbar.chs.pp: Removed two slashes that confused haddock. * mk/common.mk: Build the package with the correct name, not the name of the package file. Removed a bogus variable during linking. 2004-11-28 Axel Simon * Makefile.am: Add all _stub.o files as library dependencies. This seems to be enough to link the stub files into the archive. * tools/c2hs/base/sysdep/SysDep([GN]HC?|Posix{UN}AVAIL).hs: Tie SysDep.hs and SysDepPosix.hs directly to the GHC 6 versions. * gtk/gtk2hs.pkg: Package file for gtk2hs. * configure.ac, tools/checkDir.sh: Determine CFLAGS and LDFLAGS for each of the libraries, in particular remove directories that are already present in Gtk from more derived libraries. * Makefile.am, mk/common.mk: Add a new goal for calculating dependencies for Haskell files. This new target allows the recursive invocation with the name of the library/application for which dependencies are generated. This allows for choosing the correct CFLAGS for doing pre-processing. Furthermore, fixed the installation of a package. * mk/applicatoin.mk, config.mk.in, library.mk, recurse.mk: Remove. 2004-11-26 Axel Simon * configure.ac: Changed AC_CONFIG_HEADERS to AM_CONFIG_HEADER. 2004-11-26 Jens Petersen * Makefile.am (EXTRA_DIST): Include Signal.chs-boot*, gtkmarshal.list, hierarchy.list and c2hs_config.h in tarball. * configure.ac: Output mk/config.mk. * tools/c2hs/toplevel/Main.hs: Fix spelling of finish. 2004-11-21 Axel Simon * Makefile.am, tools/c2hs/gen/GenBind.hs, tools/c2hs/gen/GBMonad.hs: Incorporate the patch so that Ptr, ForeignPtr and StablePtr are expanded correctlyl independently of whether they are wrapped in a newtype or just synonyms. Fixed (hopefully) a bug in c2hs' get hook that didn't cope with pointers. * Makefile.am, configure.ac: Generating dependencies now involves building c2hs on the fly. This is bad for saying make clean on a clean tree, but so far I this is the cleanest solution. * gtk/*/*.chs.cpp: Renamed all these files to .chs.pp since automake otherwise thinks they are C++ sources. 2004-10-28 Axel Simon * mk/mkDepend.in: Undo changes. Dependencies are again where the .chs ffiles are. * Makefile.am: Fancy dependency generation through makes built-in feature of updating files that are -include'd. I had to sacrifice separate CFLAGS for different packages/applications. See comment at the beginning of Makefile.am. 2004-10-27 Axel Simon * mk/mkDepend.in: Redirect dependencies into .dep/ directory. * Makefile.am: Now builds libgtk2hs.a. Managed to define rule to turn .chs.cpp into .chs, hence renamed all files that need to be pre-processed. * gtk/*/*.chspp: Renamed to .chs.cpp 2004-10-25 Axel Simon * configure.ac: Don't update mk/config.mk.in which no longer exists. * Makefile.am: Repair automake: Force object files to be in subdirectories. * aclocal.m4: Removed. This file is regenerated automatically. 2004-10-24 Axel Simon * configure.in, configure.ac, Makefile, Makefile.am: Removed old and added new versions these. The new build system is based on automake. 38 files in gtk/* were pre-processed with cpp. These have all been renamed to .chspp. * tools/hierachyGen/TypeGen.hs: Add newline to help message. Let generated file import withForeignPtr which is used by the c2hs generated code. 2004-09-04 Axel Simon * Makefile, mk/recurse.mk: Set MAKE_APPS to empty and introduce MAKE_DEMOS. Demos are only built on "make all" not on "make inplace". Demos are never installed, applications are. The latter never did anything since mk/application.mk does not provide an install target. 2004-08-19 Jens Petersen * configure.in (GHC_DOCDIR): Default to unset. * mk/library.mk (HADDOCK_BASEDOC_FLAG): New variable to handle haddock flag for ghc base documentation BASEDOC_DIR if GHC_DOCDIR set. * gtk/Makefile (EXCLUDE_DOCS): Add Hierarchy.hs * sourceview/Makefile (C2HS_EXTRA_FLAGS): Replaces HIDIRS for c2hs. * mogul/Makefile: Add EXCLUDE_DOCS and PREPROC_DOCS for haddock. * mk/recurse.mk: Remove $(MAKE_DOCS) dependency from all targets. Add html and install-html targets. * mk/library.mk (PKGDOCDIR): New variable to hold package doc dir. (html): New target that builds packages docs with haddock. Just warns if HADDOCK is not defined. (install-html): New target to install packages docs. * mk/config.mk.in: Add HADDOCK and GHC_DOCDIR replacing BUILDDOCS, xml and xslt related variables. * mk/common.mk (INST_DOCDIR): Setup new variable. (C2HSFLAGGED): Add C2HS_EXTRA_FLAGS for finding .chi files. * gtk/multiline/TextView.chs: Fix doc typos at top. * gtk/Makefile: Add EXCLUDE_DOCS and PREPROC_DOCS for haddock. * glade/Makefile (C2HS_EXTRA_FLAGS): Replaces HIDIRS for c2hs only. * gconf/System/Gnome/GConf/GConfClient.chs: Doc tweaks to make haddock happy at top and for gconfAddDir. * gconf/Makefile (C2HS_EXTRA_FLAGS): Replaces HIDIRS for c2hs only. * gtk2hs.spec.in: Use ghc-6.2.1 and define short ghc version %ghcver. Use License instead of Copyright. Update buildrequires. Add separate subpackages for sourceview, gconf and glade Name subpackages with %ghcver. Subpackages now require the appropriate -devel package. Define %ghclibdir and %gtk2hsdir. (%build): Update configure invocation - drop xml options and use --prefix and --libdir. Make html. Use mkdir. Clean demo dirs with find. (%post,%preun): Update and add scripts for new subpackages. (%files): Html docs are now in /usr/share/doc/gtk2hs. * configure.in: Comment out GtkGLExt, HOpenGL checks. Check for haddock instead of xslt. Add --with-ghc-docdir option. Remove xml catalog and xsl checks. Replace missing xml final warning with haddock missing warning. * Makefile: No longer build gendoc or doc. Build mogul after gtk2. 2004-08-16 Axel Simon * mk/common.mk, mk/library.mk, mk/recurse.mk, Makefile: Make clean and make distclean remove more files now. 2004-08-15 Axel Simon * VERSION: Bumped to 0.9.6. Release. 2004-08-11 Axel Simon * configure.in: Make install-sh executable and don't inform about OpenGL status since it doesn't work anyway. 2004-08-10 Duncan Coutts * configure.in: require autoconf 2.50 or greater, 2.13 doesn't work. * gtk/layout/Notebook.chs: fix typos. * compat/LocalControl.hs, compat/LocalData.hs, gtk/general/FFI.hs: remove support for versions of ghc pre 5.04. * gconf/System/Gnome/GConf/GConfClient.chs, gtk/abstract/Container.chs gtk/entry/EntryCompletion.chs, gtk/general/General.chs, gtk/glib/GObject.chs, gtk/multiline/TextIter.chs, gtk/multiline/TextTagTable.chs, gtk/treeList/TreeModel.chs, gtk/treeList/TreeSelection.chs, gtk/treeList/TreeView.chs, tools/callbackGen/Signal.chs-boot2: ghc 5.04 supports the new FFI syntax so remove old-style "foreign export dynamic" versions. 2004-08-9 Duncan Coutts * gtk/layout/Notebook.chs: bind some new functions. Mark deprecated functions. Generalise the notebook(Append|Prepend|Insert)PageMenu functions to take an arbitrary widget for the popup menu. This is a slight change in API. Quite a bit of docs cleanup. 2004-08-8 Duncan Coutts * mk/library.mk, mk/common.mk: Axel's patches to change the way the _stub.o files are found so new gtk-2.4 modules don't cause link errors whe building for gtk-2.2 or 2.0. With a slight change so the _stub.o files are looked for after compiling rather than before. * gtk/misc/FileChooserWidget.chs, gtk/menuComboToolbar/ToolItem.chs, gtk/menuComboToolbar/ComboBoxEntry.chs, gtk/menuComboToolbar/ComboBox.chs, gtk/layout/Expander.chs, gtk/entry/EntryCompletion.chs, gtk/abstract/FileChooser.chs, gtk/windows/FileChooserDialog.chs, gtk/general/Gtk.hs: Axel's patches to change the way gtk-2.4 modules are excluded when building for earlier versions. Instead of not importing them into Gtk.hs, make them have empty bodies. That way c2hs doesn't see the new functions. * gconf/System/Gnome/GConf/GConfValue.chs: Add back partial support for the GConfSchema type so getting a schema key will not fail. * gconf/System/Gnome/GConf/GConfClient.chs: Make documantation Haddock compatible. * gtk/entry/Entry.chs, gtk/general/Enums.chs, gtk/general/Structs.hsc, gtk/menuComboToolbar/Combo.chs, gtk/menuComboToolbar/OptionMenu.chs, gtk/menuComboToolbar/Toolbar.chs, gtk/misc/Tooltips.chs, gtk/windows/Window.chs, configure.in: add #ifndef DISABLE_DEPRECATED exclusions. Everything should build now with --disabled-deprecated. * mogul/Makefile, mogul/Mogul.hs, mogul/NewWidget.hs, mogul/GetWidget.hs: make mogul build with --disabled-deprecated. 2004-08-6 Duncan Coutts * configure.in, mk/config.mk.in, gtk/Makefile, mogul/Makefile, glade/Makefile, sourceview/Makefile: drop support for ghc 5.02.x. the minimum version required is now 5.04.x. * gtk/menuComboToolbar/Menu.chs, gtk/layout/Fixed.chs, gtk/display/Label.chs: haddock markup fixes. * gtk/glib/GError.chs, gtk/multiline/TextTagTable.chs: ghc 5.04.x compatability fixes. * gtk/treeList/TreeModel.chs: ghc 5.04.x compatability and C symbol name typo fix. * tools/hierarchyGen/hierarchy.list: gtk_clipboard_get_type() was missing from gtk-2.0, it apeared in gtk-2.2 so we can only bind GtkClipboard from gtk-2.2 onwards. * gtk/abstract/ButtonBox.chs, gtk/entry/Entry.chs: make them build with gtk-2.0 & 2.2. * gconf/System/Gnome/GConf/GConfValue.chs, gconf/System/Gnome/GConf/GConfClient.chs: remove GConfSchema type. It was never bound properly. This also fixes compatability with ghc 6.0 and ghc 5.04.x. 2004-08-5 Duncan Coutts * gtk/treeList/TreeView.chs, gtk/multiline/TextTag.chs, gtk/multiline/TextTagTable.chs, gtk/multiline/TextView.chs: add missing functions & fix typo bug. * gtk/treeList/api.ignore: add more ignored functions. 2004-08-4 Duncan Coutts * gtk/abstract/Container.chs, gtk/treeList/TreeSelection.chs, gtk/treeList/TreeModelSort.chs, gtk/treeList/TreeViewColumn.chs, gtk/treeList/TreeModel.chs: add missing functions. * gtk/abstract/api.ignore, gtk/treeList/api.ignore: update list of ignored functions. * configure.in, mk/config.mk.in, tools/hierarchyGen/hierarchy.list, gtk/Makefile: add --disable-deprecated config option. Note that this configuration will not build sucessfully yet. * gtk/abstract/Object.chs, gtk/entry/Entry.chs: minor doc fixes. 2004-08-3 Duncan Coutts * gtk/abstract/FileChooser.chs, gtk/general/FFI.hs: move a couple of string marshaling functions to a common location. * tools/apicoverage/Makefile: accurate count of unbound gtk functions. * tools/apicoverage/gtk.ignore: add a few more APIs to ignore. * gtk/buttons/ToggleButton.chs, gtk/buttons/RadioButton.chs, gtk/display/AccelLabel.chs, gtk/general/IconFactory.chs, gtk/menuComboToolbar/CheckMenuItem.chs, gtk/menuComboToolbar/RadioMenuItem.chs: add missing functions. Also tidy up documentation a bit. * gtk/menuComboToolbar/api.ignore: exclude deprecated and internal radio_menu_item and toolbar functions. * tools/callbackGen/gtkmarshal.list: updated marshal list from gtk-2.4. It adds several new ones and removes a few which we don't seem to use. Required for a signal in the Toolbar module. * tools/hierarchyGen/hierarchy.list: new classes for gtk-2.4, a few old ones that were missing and some more Gdk classes. * gtk/menuComboToolbar/ImageMenuItem.chs: fix type error introduced by c2hs being able to 'see' new AccelGroup class. Also fiddle with docs. * gtk/menuComboToolbar/Toolbar.chs, gtk/menuComboToolbar/MenuItem.chs gtk/menuComboToolbar/Menu.chs: add missing functions, including accelerator-related ones. Also tidy up documentation a bit. * gtk/general/Structs.hsc: remove unneeded toolbar function. * gtk/selectors/ColorSelection.chs, gtk/selectors/FontSelection.chs gtk/selectors/ColorSelectionDialog.chs, gtk/selectors/FontSelectionDialog.chs, gtk/layout/Fixed.chs, gtk/misc/SizeGroup.chs, gtk/menuComboToolbar/ToolItem.chs: new modules * gtk/selectors/api.ignore: new file, mark deprecated functions. * gtk/Makefile: add new directory 'selectors' to SUBDIRS. * gtk/general/Gtk.hs: export new modules * demo/profileviewer/Makefile, demo/profileviewer/ProfileViewer.hs: fix bug in demo and rename executable to be consistent. * gtk/buttons/api.ignore, gtk/display/api.ignore, gtk/embedding/api.ignore: mark deprecated and unued functions (oops forgot to commit these before). * demo/filechooser/.cvsignore, demo/gconf/.cvsignore, demo/glade/.cvsignore, gconf/System/Gnome/GConf/.cvsignore, glade/.cvsignore, gtk/selectors/.cvsignore, sourceview/.cvsignore, tools/apicoverage/.cvsignore, tools/callbackGen/.cvsignore, tools/hierarchyGen/.cvsignore, gtk/abstract/.cvsignore, gtk/entry/.cvsignore, gtk/gdk/.cvsignore, gtk/glib/.cvsignore, gtk/layout/.cvsignore, gtk/menuComboToolbar/.cvsignore, gtk/misc/.cvsignore, gtk/windows/.cvsignore: add and update .cvsignore files so our cvs updates are less noisy. 2004-08-1 Duncan Coutts * gtk/entry/SpinButton.chs, gtk/layout/Table.chs, gtk/layout/Layout.chs gtk/misc/Viewport.chs, gtk/misc/Tooltips.chs, gtk/scrolling/ScrolledWindow.chs, gtk/treeList/ListStore.chs, gtk/display/Label.chs, gtk/abstract/Misc.chs, gtk/abstract/Paned.chs, gtk/abstract/Range.chs, gtk/abstract/Scale.chs: add missing functions. Also fix a couple typo bugs and tidy up some documentation. * gtk/layout/api.ignore, gtk/misc/api.ignore, gtk/treeList/api.ignore gtk/windows/api.ignore, gtk/abstract/api.ignore: updated with more deprecated functions to ignore. * tools/apicoverage/gtk.ignore: updated api ignore stuff. Some added, some moved elsewhere. * tools/apicoverage/Makefile: new target 'summary' to list the number of unbound gtk functions, grouped by namespace prefix. 2004-07-30 Duncan Coutts * gtk/entry/Editable.chs, gtk/entry/Entry.chs: split off editable functions into separate module and make Entry an instance of the EditableClass. Also add missing functions. * gtk/entry/SpinButton.chs: make SpinButton an EditableClass instance. * tools/hierarchyGen/hierarchy.list: add GtkEditable as an interface. * gtk/general/Gtk.hs: export new Editable module. * gtk/buttons/Button.chs, gtk/menuComboToolbar/CheckMenuItem.chs, gtk/misc/Calendar.chs, gtk/misc/EventBox.chs, gtk/misc/HandleBox.chs gtk/entry/HScale, gtk/entry/VScale, gtk/ornaments/Frame.chs, gtk/treeList/CellRendererToggle.chs: add missing functions. * gtk/general/Structs.hsc: remove unneeded CheckMenuItem function. * gtk/misc/api.ignore, gtk/treeList/api.ignore, gtk/entry/api.ignore gtk/abstract/api.ignore, gtk/general/api.ignore, gtk/windows/api.ignore gtk/menuComboToolbar/api.ignore, gtk/layout/api.ignore: new files to mark unbound functions, for use with the api coverage tool. * tools/apicoverage/Makefile: filter gtk.coverage too to reduce noise. This ignores where we are currently implementing deprecated functions. 2004-07-29 Duncan Coutts * gtk/general/General.chs: don't use depreciated gtk main loop functions to install timout and idle handlers, use glib equivalents. * demo/filechooser/Makefile: FileChooserDemo.glade in EXTRA_TARFILES. * gtk/abstract/FileChooser.chs: instance FileChooserError GErrorClass * gtk2hs/gtk/abstract/Box.chs, gtk/misc/Adjustment.chs, gtk/layout/Alignment.chs: implement missing functions * tools/apicoverage/Makefile, tools/apicoverage/Exclude.hs, tools/apicoverage/gtk.ignore, tools/apicoverage/README: new tool to check on our coverage of the gtk api. 2004-07-28 Duncan Coutts * Makefile: only build filechooser demo with gtk-2.4 * demo/filechooser/FileChooserDemo.glade: add demo's glade file 2004-07-28 Jens Petersen * demo/glade/Makefile (EXTRA_TARFILES): Include simple.glade. * mk/common.mk: Define INST_HIDIR, INST_LIBDIR, INST_INCLDIR and INST_BINDIR directly as normal make variables, so that lib packages get installed in separate subdirs. 2004-07-27 Duncan Coutts * demo/gconf/GConfDemo.hs, demo/gconf/Makefile: new gconf demo/test * Makefile: build gconf demo 2004-07-27 Jens Petersen * mk/config.mk.in: Define ABS_TOP. No longer define CPP. * mk/common.mk: Sedpipe ABS_TOP and use it for TARDIR to fix tarsource target. * glade/Makefile: Use TOP. Generate GladeType.chs with the same invocation used by sourceview and gtk. * doc/Makefile: Use common.mk and EXTRA_TARFILES, drop own tarsource target and no longer set CURDIR and TARDIR. * VERSION: Up to 0.9.5.50 2004-07-26 Axel Simon * gtk/abstract/ButtonBox.chs: Remove buttonBoxGetChildSecondary for Gtk prior to 2.4. 2004-07-26 Duncan Coutts * configure.in: use relative $(TOP) variable rather than absolute $TOP variable, so Makefiles use relative paths. Add test for gconf package. Test for particular versions of gtk API. * Makefile: add gconf to list of dirs to build * tools/hierarchyGen/hierarchy.list: add GConf object. Remove preprocessor annotations, build classes conditionally using tags like 'gtk-2.4'. Remove unnecessary annotations by taking advantage of changes in the TypeGenerator. Only create GtkFileFilter when building against gtk 2.4 or later. * tools/hierarchyGen/TypeGen.hs: be a bit cleverer with dealing with type prefixes, less hard coded knowledge of Gtk types. No not require _get_type annotations when they can be worked out automatically. Allow tags like 'gtk-2.4'. Extra command line option to specify module name. * tools/callbackGen/gtkmarshal.list: add callback spec needed by gconf * sourceview/Makefile: do not run cpp over hierarchy.list * mk/config.mk.in: remove absolute path TOP variable. Add gconf flags. Add gtk version check flags. * gtk/Makefile: do not run cpp over hierarchy.list. Add gtk-2.x tags conditional on appropriate config flags. * c2hs/chs/CHS.hs: parse hierarchical module names ok. * c2hs/base/syntax/Parsers.hs, c2hs/c/CParser.hs: Manuel Chakravarty's patch to fix the space leak I found. c2hs runs much faster now. * gconf/Makefile, gconf/System/Gnome/GConf.hs, gconf/System/Gnome/GConf/GConfClient.chs, gconf/System/Gnome/GConf/GConfValue.chs: new binding to GConf config system. Uses hierarchical module names. 2004-07-24 Duncan Coutts * gtk/glib/GError.chs, gtk/abstract/FileChooser.chs: spelling fix propogateGError to propagateGError 2004-07-17 Duncan Coutts * gtk/glib/GError.chs: extra function for converting GError exceptions to ordinary user errors. * tools/callbackGen/HookGenerator.hs: wrap callbacks in GError exception handler. * tools/callbackGen/Signal.chs-boot2: import GError 2004-07-16 Duncan Coutts * gtk/glib/GError.chs: new module for dealing with GErrors * gtk/general/Structs.hsc: removed GError definition, also documentation fixes. * gtk/abstract/FileChooser.chs: use new GError module, remove own definition of propogateGError * gtk/gdk/Pixbuf.chs: use new GError module, also documentation fixes 2004-06-04 Axel Simon * gtk/gdk/Drawable.chs: fixed typo in drawLine. Thanks to Mats-Ola Persson. 2004-05-27 Duncan Coutts * gtk/pango/Markup.hs, gtk/pango/PangoLayout.chs, gtk/general/Structs.hsc, gtk/gdk/Pixbuf.chs: fix DOCFIXMEs fix also a constructor spelling typo (FUdoulbe -> FUdouble) 2004-05-25 Duncan Coutts * mogul/GetWidget.hs, mogul/MDialog.hs, mogul/Mogul.hs, mogul/NewWidget.hs, mogul/TreeList.hs, mogul/WidgetTable.hs: initial haddockification * glade/Glade.chs: initial haddockification * sourceview/SourceBuffer.chs, sourceview/SourceIter.chs, sourceview/SourceLanguage.chs, sourceview/SourceLanguagesManager.chs, sourceview/SourceMarker.chs, sourceview/SourceStyleScheme.chs, sourceview/SourceTag.chs, sourceview/SourceTagStyle.hsc, sourceview/SourceTagTable.chs, sourceview/SourceView.chs: initial haddockification * tools/hierarchyGen/TypeGen.hs: make prog generator produce haddock compatible documentation * tools/callbackGen/Signal.chs-boot1: make signals module header haddock compatible 2004-05-23 Duncan Coutts * gtk/abstract/Bin.chs, gtk/abstract/Box.chs, gtk/abstract/ButtonBox.chs, gtk/abstract/Container.chs, gtk/abstract/FileChooser.chs, gtk/abstract/Misc.chs, gtk/abstract/Object.chs, gtk/abstract/Paned.chs, gtk/abstract/Range.chs, gtk/abstract/Scale.chs, gtk/abstract/Scrollbar.hs, gtk/abstract/Separator.hs, gtk/abstract/Widget.chs: initial haddockification * gtk/buttons/Button.chs, gtk/buttons/CheckButton.chs, gtk/buttons/RadioButton.chs, gtk/buttons/ToggleButton.chs: initial haddockification * gtk/display/AccelLabel.chs, gtk/display/Image.chs, gtk/display/Label.chs, gtk/display/ProgressBar.chs, gtk/display/Statusbar.chs: initial haddockification * gtk/entry/Entry.chs, gtk/entry/EntryCompletion.chs, gtk/entry/HScale.chs, gtk/entry/SpinButton.chs, gtk/entry/VScale.chs: initial haddockification * gtk/gdk/DrawWindow.hs, gtk/gdk/Drawable.chs, gtk/gdk/Events.hsc, gtk/gdk/GC.chs, gtk/gdk/Gdk.chs, gtk/gdk/GdkEnums.chs, gtk/gdk/Keys.chs, gtk/gdk/Pixbuf.chs, gtk/gdk/Region.chs: initial haddockification * gtk/general/Enums.chs, gtk/general/FFI.hs, gtk/general/General.chs, gtk/general/Gtk.hs, gtk/general/IconFactory.chs, gtk/general/StockItems.hsc gtk/general/Structs.hsc, gtk/general/Style.chs: initial haddockification * gtk/glib/GList.chs, gtk/glib/GObject.chs, gtk/glib/GType.chs, gtk/glib/GValue.chs, gtk/glib/GValueTypes.chs: initial haddockification * gtk/layout/Alignment.chs, gtk/layout/AspectFrame.chs, gtk/layout/Expander.chs, gtk/layout/HBox.chs, gtk/layout/HButtonBox.chs, gtk/layout/HPaned.chs, gtk/layout/Layout.chs, gtk/layout/Notebook.chs, gtk/layout/Table.chs, gtk/layout/VBox.chs, gtk/layout/VButtonBox.chs, gtk/layout/VPaned.chs: initial haddockification * gtk/menuComboToolbar/CheckMenuItem.chs, gtk/menuComboToolbar/Combo.chs, gtk/menuComboToolbar/ComboBox.chs, gtk/menuComboToolbar/ComboBoxEntry.chs, gtk/menuComboToolbar/ImageMenuItem.chs, gtk/menuComboToolbar/Menu.chs, gtk/menuComboToolbar/MenuBar.chs, gtk/menuComboToolbar/MenuItem.chs, gtk/menuComboToolbar/MenuShell.chs, gtk/menuComboToolbar/OptionMenu.chs, gtk/menuComboToolbar/RadioMenuItem.chs, gtk/menuComboToolbar/TearoffMenuItem.chs, gtk/menuComboToolbar/Toolbar.chs: initial haddockification * gtk/misc/Adjustment.chs, gtk/misc/Calendar.chs, gtk/misc/DrawingArea.chs, gtk/misc/EventBox.chs, gtk/misc/FileChooserWidget.chs, gtk/misc/GArrow.chs, gtk/misc/HandleBox.chs, gtk/misc/Tooltips.chs, gtk/misc/Viewport.chs: initial haddockification * gtk/multiline/TextBuffer.chs, gtk/multiline/TextIter.chs gtk/multiline/TextMark.chs, gtk/multiline/TextTag.chs, gtk/multiline/TextTagTable.chs, gtk/multiline/TextView.chs: initial haddockification * gtk/ornaments/Frame.chs, gtk/ornaments/HSeparator.chs, gtk/ornaments/VSeparator.chs: initial haddockification * gtk/pango/Markup.hs, gtk/pango/PangoLayout.chs, gtk/pango/PangoTypes.chs, gtk/pango/Rendering.chs: initial haddockification * gtk/scrolling/HScrollbar.chs, gtk/scrolling/ScrolledWindow.chs, gtk/scrolling/VScrollbar.chs: initial haddockification * gtk/treeList/CellRenderer.hs, gtk/treeList/CellRendererPixbuf.chs, gtk/treeList/CellRendererText.chs, gtk/treeList/CellRendererToggle.chs, gtk/treeList/ListStore.chs, gtk/treeList/StoreValue.hsc, gtk/treeList/TreeModel.chs, gtk/treeList/TreeModelSort.chs, gtk/treeList/TreeSelection.chs, gtk/treeList/TreeStore.chs, gtk/treeList/TreeView.chs, gtk/treeList/TreeViewColumn.chs: initial haddockification * gtk/windows/Dialog.chs, gtk/windows/FileChooserDialog.chs, gtk/windows/FileSel.chs, gtk/windows/Window.chs: initial haddockification * embedding/Embedding.hsc, embedding/Plug.hs, embedding/Socket.chs: initial haddockification * gtk/glib/GParameter.hsc: initial haddockification 2004-05-21 Duncan Coutts * gtk/abstract/FileChooser.chs, gtk/abstract/Widget.chs: more minor doc fixes * gtk/windows/FileSel.chs: document as depreciated as of gtk 2.4 2004-05-20 Duncan Coutts * gtk/gdk/Pixbuf.chs, gtk/general/Structs.hsc, gtk/treeList/TreeModel.chs: minor doc fixes in preperation for 'haddock'ification * c2hs/chs/CHS.hs: make c2hs emit a haddock-compatible headder remove **'s which confuse haddock 2004-05-17 Duncan Coutts * demo/sourceview/haskell.lang: updated syntax highlighting 2004-05-14 Duncan Coutts * demo/profileviewer/ProfileViewer.hs, demo/profileviewer/ParseProfile.hs, demo/profileviewer/ProfileViewer.glade, demo/profileviewer/ProfileViewer.gladep, demo/profileviewer/Makefile: new demo, a viewer for ghc's time-profile log files 2004-05-6 Duncan Coutts * gtk/glib/GParameter.hsc: new marshaling support module needed for GObject.objectNew * gtk/glib/GObject.chs: added constructor objectNew, this is needed for FileChooserDialog * gtk/general/Gtk.hs: re-enable building FileChooserDialog * Makefile: enable building filechooser demo * gtk/windows/FileChooserDialog.chs: whitespace fix, to help in calculating depandancies of .chs files 2004-05-4 Duncan Coutts * configure.in, Makefile, mk/config.mk.in: allow libglade to be built without the gnome modules. * tools/hierarchyGen/TypeGen.hs: remove class methods from GObjectClass. Use unsafeCoerce instead. 2004-05-2 Duncan Coutts * gtk/treeList/TreeStore.chs: added method treeStoreClear * Makefile: fix typo 2004-05-2 Duncan Coutts * demo/buttonbox/Makefile, demo/concurrent/Makefile, demo/glade/Makefile, demo/graphic/Makefile, demo/hello/Makefile, demo/sourceview/Makefile, demo/treeList/Makefile, demo/unicode/Makefile: removed unnecessary required packages * demo/sourceview/SourceViewTest.hs: remove Mogul dependancy * gtk/abstract/FileChooser.chs: add signals & change some return types to Maybe * demo/filechooser/FileChooserDemo: flesh out demo * configure.in, Makefile, mk/config.mk.in: change gnome modules to be enabled as a group rather than being individually enabled 2004-04-30 Duncan Coutts * sourceview/Makefile, * glade/Makefile: added proprocessor pass for hierarchy.list * glade/Glade.chs: fix lib prefix * gtk/entry/EntryCompletion.chs, gtk/layout/Expander.chs, gtk/menuComboToolbar/ComboBoxEntry.chs, gtk/menuComboToolbar/ComboBox.chs: fix descriptions in headers * gtk/abstract/ButtonBox.chs, gtk/layout/HButtonBox.chs, gtk/layout/VButtonBox.chs, demo/buttonbox/Makefile, demo/buttonbox/ButtonBox.hs, AUTHORS: new widgets and demo contributed by Matthew Walton * gtk/abstract/Bin.chs: new (slightly pointless) abstract class * gtk/general/Gtk.hs: export new modules * gtk/general/Structs.hsc: bug fix for toResponse. Can now get response code back from dialogs ok. * gtk/abstract/FileChooser.chs, gtk/misc/FileChooserWidget.chs, gtk/windows/FileChooserDialog.chs, gtk/general/Gtk.hs, demo/filechooser/Makefile, demo/filechooser/FileChooserDemo.hs: added new FileChooser modules and a (unfinished) demo program * gtk/general/Gtk.hs: temporarily disable building FileChooserDialog, one of its dependancies has not been committed 2004-04-29 Duncan Coutts * gtk/Makefile: use standard $(CPP) variable 2004-04-27 Duncan Coutts * gtk/entry/Entry.chs: added new gtk 2.4 methods * gtk/entry/EntryCompletion.chs, gtk/layout/Expander.chs, gtk/menuComboToolbar/ComboBox.chs, gtk/menuComboToolbar/ComboBoxEntry.chs: new gtk 2.4 modules * gtk/general/Gtk.hs: export new gtk 2.4 modules * gtk/Makefile: added proprocessor pass to hierarchy.list before so we can selectively generate types depending on the gtk version. * tools/hierarchyGen/TypeGen.hs: allow to read stdin * tools/hierarchyGen/hierarchy.list: change comments style to be compatible with preprocessor and add some new gtk 2.4 classes 2004-04-24 Duncan Coutts * gtk/abstract/Object.chs: fixed warning 2004-04-18 Axel Simon * demo/glade/Makefile, glade/Makefile: Renamed the glade library to glade2hs. I got link errors since the only libglade which is picked up is the real libglade.a whereas the Haskell binding is never found. 2004-04-17 Axel Simon * VERSION: bumped to 0.9.5 2004-04-16 Duncan Coutts * gtk/layout/Notebook.chs: added ifdef's for compatibility with gtk 2.4 as well as 2.2 & 2.0 * sourceview/SourceIter.chs: new file with bindings for three extra TextIter methods * sourceview/Makefile: added header for extra file * sourceview/sourceview.h: added header for extra file * sourceview/SourceView.chs: added extra exported module 2004-04-15 Duncan Coutts * modul/WidgetTable.hs: added import of FFI (foreignPtrToPtr) for GHC 6.2 2004-01-07 Axel Simon * c2hs/c/Attrs.hs: Remove a superfluous comma. * gtk/general/FFI.hs: Rename unsafeForeignPtrToPtr to foreignPtrToPtr for GHC 6.2. * AUTHORS: Mention JP Bernardy who supplied the patch. 2003-12-11 Duncan Coutts * tools/hierarchyGen/TypeGen.hs: changed the way the object hierarchy is implemented. All classes except GObject now have no member functions. The from* to* functions are now ordinary functions with a class constraint. This saves carrying around so many class dictionaries per object - now only one. * configure.in: added libglade detection * Makefile: added glade and demo/glade targets * mk/config.mk.in: added LIBGLADE_* variables * tools/hierarchyGen/hierarchy.list: added GladeXML class * glade/Glade.chs: new libglade binding module * glade/Makefile: new file * demo/glade/Makefile: new file * demo/glade/GladeTest.hs: simple demo of Glade functionality * demo/glade/simple.glade: glade file used by the demo program 2003-11-26 Duncan Coutts * tools/hierarchyGen/TypeGen.hs: added extra commandline parameters --lib= --prefix=, which set the c2hs context directive. This is needed for libglade bindings. 2003-11-19 Duncan Coutts * tools/hierarchyGen/hierarchy.list: added GtkSourceMarker and GtkSourceStyleScheme. The latter is actually an interface, but everything implementing a glib-style interface must be a GObject. * sourceview/Makefile: added SourceStyleScheme-HEADER * sourceview/SourceMarker.chs: new module, requires recently comitted changes to c2hs in order to build ok. * sourceview/sourceview.h: added missing #include for gtksourcemarker * sourceview/SourceStyleScheme.chs: removed unnecessary code, now that GtkSourceStyleScheme has been added into the hierarchy.list * sourceview/SourceLanguage.chs: added bindings for more functions, mostly related to SourceMarker * sourceview/SourceBuffer.chs: added remaining function bindings, again mostly related to SourceMarker 2003-11-18 Axel Simon * demo/sourceview/Sourceview.hs: Give an error message if the language spec file is not found. 2003-11-17 Axel Simon * c2hs/gen/GenBind.hs: Do not peek through C typedefs when determining the C type equivalent of a Haskell type. This corrects a problem with GtkSourceViewMarker which is a typedef of GtkTextMark. c2hs generated an interface file which said that all GtkTextMarks are now SourceViews in Haskell. This was a bug in c2hs. * sourceview/SourceLanguagesManager.chs: Completed sourceLanguagesManagerGetLangFilesDirs. * mk/library.mk: Install one file and one directory at a time. The local install-sh script cannot cope with more. * configure.in: Mange Cygwin paths properly. Not tested. Remove unused substitutions. * tools/hierarchyGen/TypeGen.hs: Make parser accept both "if" and "as" statements. * sourceview/sourceview.h: Added the gtksourceviewmarker.h to the include file list. * hierarchyGen/hierarchy.list: Added SourceviewMarker. 2003-11-16 Axel Simon * configure.in, INSTALL: Documentation updates. In particular, the user has to do a make and then a make install. * configure.in: Force Unix library names when using ghc <6.0. * c2hs/C/CParser.hs: Fix the parsing of __attribute__, necessary for Windows. * mk/library.mk: Uncomment the path mangeling. On Windows this is still mandatory as /d/ has to be turned into d:/ when generating package.conf files. * mk/config.in, mk/library.mk, install-sh: Make sure the package installs if the local install-sh script is used. Added different variables for the install command, depending on what is installed. Updated install-sh with a newer version. * gtk/layout/Notebook.chs: The function notebookGetNPages does not exist in Gtk 2.0. Do not bind it in this case. 2003-11-15 Axel Simon * INSTALL: Add instructions for Windows. * Makefile: Only build Sourceview if ENABLE_SOURCEVIEW is set. * mk/recurse.mk: Add a distclean goal that removes the localpackage.conf file. Make the build stop if there is an error in one of the subdirectories. * gtk/treeView/TreeSelection.chs: Remove a deprecated warning. * configure.in: Closed a case expression. Simplified and corrected the search for XML catalog files. * gtk/Makefile, sourceview/Makefile: Make them use the tools in tools/callbackGen and tools/hierarchyGen. * tools/typehier, tools/signals, tools/hierarchyGen, tools/callbackGen: Moved this files to a different directory. Reason: Everytime I remove the two directories typehier and signals from gtk/, CVS removes them from tools. * tools/typehier/TypeGen.hs: Renamed file to sort out CVS problem. 2003-11-11 Jens Petersen * demo/sourceview: New directory for import of sourceview demo program by Duncan Coutts . * demo/sourceview/haskell.lang: New file giving haskell highlighting syntax for gtksourceview. * demo/sourceview/SourceViewTest.hs: New file to demonstrate sourceview. * demo/sourceview/Makefile: New file. * sourceview/SourceTag.chs (sourceTagSetStyle): Fix docu typo. * sourceview/Makefile (EXTRA_HFILES): Use relative path. (EXTRA_TARFILES): Not needed. (EXTRA_CPPFLAGS): Use SOURCEVIEW_CFLAGS instead. (EXTRA_LIBS): Use SOURCEVIEW_LIBS instead. * mk/recurse.mk (all): Add MAKE_DOCS. (inplace): Ditto. (noinplace): Ditto. (tarsource): Ditto. (clean): Ditto. * mk/library.mk (installdirs): Reorder directories. * mk/config.mk.in (SOURCEVIEW_LIBS): Define. (SOURCEVIEW_CFLAGS): Ditto. * mk/common.mk: Fixes so that per package INSTALLDIR works: (INSTALLDIROK): Is now a deferred variable. (INST_*): Not passed through SEDPIPE for now. * gtk2hs.spec.in (%build): Instead of "--with c2hs" rpmbuild option, if %c2hs defined then pass it with --with-c2hs= to configure. (%install): Install sourceview haskell.lang file. Clean demo to prevent binary files in doc dir. * configure.in: Only use GTK for gtk2 package check. Use GTKGLEXT for gtkglext and SOURCEVIEW for gtksourceview, so that sourceview cflags and link options do not appear in ghc gtk2 package. Drop unused PIXBUF config vars from GTK config vars. Process SOURCEVIEW config vars in the same way as GTK ones. Search for specific external c2hs in PATH, like c2hs is searched with --with-c2hs=yes. Treat "c2hs-gtk2hs" as a exceptional external c2hs which supports multiple chs files, allowing one to avoid building the internal c2hs on every clean build. * Makefile (MAKE_TOOLS): Only add c2hs when BUILT_IN_C2HS is no. (MAKE_DOCS): gendoc and doc targets moved here from MAKE_TOOLS since doc must be done after gtk. (MAKE_APPS): Add demo/sourceview. (dist): Depend on gtk2hs.spec. (rpm): dist now depends on gtk2hs.spec. (srpm): Ditto. Include Makefile.local if present for local build configuration. 2003-11-07 Axel Simon * tools/signals/HookGenerator.hs, tools/signals/Makefile, tools/signals/Signal.chs-boot1, tools/signals/Signal.chs-boot2, tools/signals/gtkmarshal.list, tools/typehier/Makefile, tools/typehier/hierarchy.list: Dah. Removed the wrong files in the last commit. Resurrect the right ones. 2003-11-07 Axel Simon * tools/typehier/TypeGenerator.hs: Correct typo that caused Hierarchy.chs to include itself. * gtk/Makefile: Use the signal and type hierarchy generators in tools/. * gtk/typehier, gtk/signals: Remove the stale files. 2003-11-04 Jens Petersen * mk/config.mk.in (COMMONINSTALLDIR): Define default base package directory name. * mk/library.mk (INSTALLDIR): Define default package install dir to be under COMMONINSTALLDIR. * gtk/Makefile (INSTALLDIR): Drop local definition and use default. * mogul/Makefile (INSTALLDIR): Ditto. * sourceview/Makefile (INSTALLDIR): Ditto. 2003-11-03 Jens Petersen * gtk2hs.spec.in (BuildRequires): Require gtksourceview-devel. (Requires): Require gtksourceview. (%post): Install sourceview package. (%preun): Remove sourceview package. * mk/recurse.mk (install-without-pkg): New target. * mk/application.mk ($(TARGETOK)): Depend on inplaceinit to make sure required localpackage.conf file exists. (install-without-pkg): Alias to install. * c2hs/c/CLexer.hs (linedir): Fix parsing for latest cpp #line extensions. [upstream patch from Manuel M T Chakravarty] * Makefile (EXTRA_TARFILES): Add mk/recurse.mk. 2003-10-02 Axel Simon * mk/common.mk: Change comments for "targets" help output. * sourceview/Makefile: Corrected header file declaration (unused at the moment). * gtk/glib/GList.chs: Added methods to marshal from GLists and GSLists. * sourceview/SourceLanguagesManager.chs, sourceview/SourceTag.chs, sourceview/SourceTagTable.chs: Added 2003-10-26 Axel Simon * Makefile, mk/recurse.mk, mk/common.mk: Turn the top-level Makefile into a bunch of variable declaration and put the real work into mk/recurse.mk. There are three main directories: tools which are built first and never installed, libraries which are built after the tools installed and registered with ghc and applications which are built last and installed. * demo/sourceview/Makefile, demo/sourceview/SourceViewTest.hs, demo/sourceview/haskell.lang: Added the example for the SourceView binding. * sourceview/Makefile, sourceview/SourceBuffer.chs, SourceLanguagesManager.chs, sourceview/SourceView.chs, sourceview/SourceStyleScheme.chs, sourceview/SourceTag.chs, sourceview/SourceTagStyle.hsc, sourceview/SourceTagTable.chs: New files and patches from Duncan. 2003-10-21 Axel Simon * sourceview/Makefile, sourceview/SourceBuffer.chs, sourceview/SourceLanguage.chs, sourceview/SourceLanguagesManager.chs, sourceview/SourceView.chs, AUTHORS: Added the GtkSourceView widget contributed by Duncan Coutts. * mk/common.mk: Avoid message about several rules for the top-level file which are .chs files. This happend since the top-level file SourceView.chs is not removed form a list containing ./SourceView.chs which is what the wild-card searching gives. Solved by stripping the ./ prefix. * gtk/Makefile, tools/signals/HookGenerator.hs, tools/signals/Makefile, tools/signals/Signal.chs-boot1, tools/signals/Signal.chs-boot2, tools/signals/gtkmarshal.list, tools/typehier/Makefile, tools/typehier/TypeGenerator.hs, tools/typehier/hierarchy.list: Moved these file to a new directory tools/. The reason for this is that parts of the type hierarchy may only be generated if a specific widget is built, in this case it's GtkSourceview. * gtk/multiline/TextBuffer.chs: Use TextBufferClass tb => tb instead of TextBuffer as type for the Textbuffer. * gtk/abstract/Container.chs, gtk/multiline/TextIter.chs: Fix warning about deprecated FFI construct for GHC 6.0. 2003-08-09 Jens Petersen * gtk/multiline/TextView.chs (textViewGetVisibleRect): Fix docu typo. 2003-08-02 Jens Petersen * gtk/multiline/TextBuffer.chs (textBufferGetCharCount): Call text_buffer_get_char_count not text_buffer_get_line_count. 2003-07-31 Jens Petersen * gtk2hs.spec.in: Default to ghc-6.0.1. (%files): Include demo as dir in docs rather than individual source files. * Makefile (inplace): Do not build the demos by default. (noinplace): Ditto. (demo): New separate target to build demos. (install*): Drop no-op for demos. (uninstall): Ditto. 2003-07-18 Axel Simon * VERSION: Bumped to 0.9.4, prepare to do a ghc-6.0 release. * mk/common.mk: Make hsc2hs pass -no-hs-main to ghc when linking. This avoids an undefined symbol error for the Haskell main function on Apple and Solaris. * gtk/Makefile: Added the header file for gdk-pixbuf. 2003-07-15 Jens Petersen * mk/library.mk (install-without-pkg): New target that installs library without installing ghc package. (install): Use it. * gtk2hs.spec.in: Default to ghc-6.0 now. Split binary package into -ghc%{ghc_version} and -doc subpackages. Disable building of debuginfo subpackage. (%install): Use install-without-pkg. (%preun): Only remove object files when uninstalling. * Makefile (install-without-pkg): New target; like install but it does not install the ghc library packages. 2003-07-13 Axel Simon * gtk/misc/Arrow.chs, gtk/general/Gtk.hs: Changed the name of the file to GArrow.chs to avoid the clash with Arrow in hslibs of GHC. * mk/library.mk: Remove the target install from install-pkg and add the target install-pkg to install. Without this, the files are copied but the package file is not updated. * gtk/signals/HookGenerator.hs.in: Removed this file which should have happened a long time ago. HookGenerator.hs is the only file needed. 2003-07-09 Axel Simon * c2hs/gen/GBMonad.hs, c2hs/gen/GenBind.hs: Applied the patch I wrote for c2hs 0.11.5 which created code for ForeignPtrs which is compatible with the new FFI of GHC 6.0. * abstract/Box.chs, abstract/Container.chs, abstract/Misc.chs, abstract/Object.chs, abstract/Paned.chs, abstract/Range.chs, abstract/Scale.chs, abstract/Scrollbar.hs, abstract/Separator.hs, abstract/Widget.chs, buttons/Button.chs, buttons/CheckButton.chs, buttons/RadioButton.chs, buttons/ToggleButton.chs, display/AccelLabel.chs, display/Image.chs, display/Label.chs, display/ProgressBar.chs, display/Statusbar.chs, embedding/Embedding.hsc, embedding/Plug.chs, embedding/Socket.chs, entry/Entry.chs, entry/HScale.chs, entry/SpinButton.chs, entry/VScale.chs, gdk/DrawWindow.hs, gdk/Drawable.chs, gdk/Events.hsc, gdk/GC.chs, gdk/Gdk.chs, gdk/GdkEnums.chs, gdk/Keys.chs, gdk/Pixbuf.chs, gdk/Region.chs, general/Enums.chs, general/General.chs, general/Gtk.hs, general/IconFactory.chs, general/StockItems.hsc, general/Structs.hsc, general/Style.chs, glib/GList.chs, glib/GObject.chs, glib/GType.chs, glib/GValue.chs, glib/GValueTypes.chs, layout/Alignment.chs, layout/AspectFrame.chs, layout/HBox.chs, layout/HPaned.chs, layout/Layout.chs, layout/Notebook.chs, layout/Table.chs, layout/VBox.chs, layout/VPaned.chs, menuComboToolbar/CheckMenuItem.chs, menuComboToolbar/Combo.chs, menuComboToolbar/ImageMenuItem.chs, menuComboToolbar/Menu.chs, menuComboToolbar/MenuBar.chs, menuComboToolbar/MenuItem.chs, menuComboToolbar/MenuShell.chs, menuComboToolbar/OptionMenu.chs, menuComboToolbar/RadioMenuItem.chs, menuComboToolbar/TearoffMenuItem.chs, menuComboToolbar/Toolbar.chs, misc/Adjustment.chs, misc/Arrow.chs, misc/Calendar.chs, misc/DrawingArea.chs, misc/EventBox.chs, misc/HandleBox.chs, misc/Tooltips.chs, misc/Viewport.chs, multiline/TextBuffer.chs, multiline/TextIter.chs, multiline/TextMark.chs, multiline/TextTag.chs, multiline/TextTagTable.chs, multiline/TextView.chs, ornaments/Frame.chs, ornaments/HSeparator.chs, ornaments/VSeparator.chs, pango/Markup.hs, pango/PangoLayout.chs, pango/PangoTypes.chs, pango/Rendering.chs, scrolling/HScrollbar.chs, scrolling/ScrolledWindow.chs, scrolling/VScrollbar.chs, signals/HookGenerator.hs, signals/Signal.chs-boot1, signals/Signal.chs-boot2, treeList/CellRenderer.hs, treeList/CellRendererPixbuf.chs, treeList/CellRendererText.chs, treeList/CellRendererToggle.chs, treeList/ListStore.chs, treeList/StoreValue.hsc, treeList/TreeModel.chs, treeList/TreeModelSort.chs, treeList/TreeSelection.chs, treeList/TreeStore.chs, treeList/TreeView.chs, treeList/TreeViewColumn.chs, typehier/TypeGenerator.hs, windows/Dialog.chs, windows/FileSel.chs, windows/Window.chs: Make compile with GHC 6.00. There are two major changes in the FFI which made me separate everything that has to do with Foreign and Foreign.C into a new file called general/FFI.hs. The file UTFCForeign.hs is now obsolete as its string conversion functions are now in FFI.hs. The nullForeignPtr function is also located here. All files now import FFI instead of Foreign and UTFCForeign. The major changes are: newForeignPtr now takes a pointer to a C function as finalizer. Every destructor function is now defined differently depending on whether the new GHC is used or not. In particular there is now a function called free :: Ptr a -> IO () imported from the Foreign library. In addition to that I defined a function foreignFree which can be used as finalizer to a C data structure. It is equivalent to free if GHC version <=5.04 is used. The second change is that ForeignPtr are no longer accepted as arguments to foreign calls. This change is mainly reflected in c2hs, but also in some files which directly called functions. 2003-07-04 Axel Simon * configure.in mk/config.mk.in mk/library.mk: Turned the --list-packages into a parameter which is determined by configure. The reason is that ghc 6 has a new semantic for ghc-pkg's --list-packages option. 2003-07-03 Jens Petersen * mogul/Makefile (INSTALLDIR): Set to mogul, so that mogul gets installed in its own subdir. * gtk/layout/Notebook.chs (notebookGetNPages): New function. Export it. * gtk/general/Gtk.hs: Import and re-export Gdk. * gtk/gdk/Gdk.chs: New module for gdk.h. Currently just provides beep. * gtk/gdk/Drawable.chs (drawPixbuf): Doc fix: s/arg src/arg pb/. * gtk/Makefile: Define Pixbuf-HEADER and Gdk-HEADER. * gtk2hs.spec.in (Requires): Require ghc5. Post and preun require ghc-pkg. (build): Configure --with-hc. (preun): Ignore package removal errors. * configure.in: --with-hc no longer requires a full-path, when requested compiler is in path. When looking for HOpenGL pass "-l" to ghc-pkg, since "--list-packages" confuses ghc-pkg-6.0 built with ghc5. * VERSION: Bump version to 0.9.3.50. * Makefile (dist): LN already includes the "-s" option. 2003-05-23 Jens Petersen * gendoc/XMLwrite.hs (makeSymDescr): Move colspecs inside the tgroup. * doc/Makefile (html%): Make xsltproc write output directly to subdirectory. Create the directory first if necessary. (fo%): Ditto. (clean): Remove reference xml files. * gtk2hs.spec.in (build): Pass docbook catalog and html xsl to configure and build html docs. (post): Give "-g" option to ghc-pkg to have ghci object files generated. (preun): Always remove any old ghci object files. (files): Include gtk and mogul docs in doc dir. * Makefile (EXTRA_TARFILES): Include gtk2hs.spec after all. 2003-05-22 Axel Simon * gtk/treeList/TreeView.chs: Changed the return type of the onTestCollapseRow and onTestExpandRow signals. Patch submitted by Duncan Coutts . 2003-05-19 Axel Simon * configure.in, mk/config.mk.in: Changed SGML_CATALOG_FILES to XML_CATALOG_FILES. * gtk/general/Gtk.hs: removed the hiding clause from Image. Don't know why it was there in the first place. 2003-05-18 Jens Petersen * gtk/pango/PangoLayout.chs (layoutIterGetLineExtents): Keep last doc ref on one line. (layoutCopy): Fix doc typo in data ref. * gtk/general/StockItems.hsc: s/method stockAdd/method stockAddItem/. * doc/mogul.xml: Docbook 4.2. 2003-05-17 Axel Simon * gtk/gdk/Pixbuf.chs: Fixed documentation on creating inline pictures. 2003-05-17 Axel Simon 0.9.3 release. * c2hs/base/syntax/Lexer.hs: There is a bug in either c2hs or the compiler when parsing the header files on PowerPC. I added a line which stops c2hs from panicing without understanding what is going on. * gendoc/Lexer.hs, gendoc/Update.hs, gendoc/XMLwrite.hs: Improved the documentation. It's still very rudimentary but might be useful. * gtk/gdk/Pixbuf.chs, gtk/general/Structs.hsc: Documentation fixes. 2003-05-16 Axel Simon * AUTHORS: Add Vincenzo. * gtk/Makefile, gtk/gdk/Drawable.chs, gtk/gdk/GdkEnums.chs, gtk/general/Gtk.hs, gtk/general/Structs.hsc, gtk/gdk/Pixbuf.chs, configure.in, mk/config.mk.in: Add a good share of the pixbuf functions. Realize that the pixbuf library is always available when Gtk is installed, thus removed its detection from the configure script. * gtk/general/Style.chs: Add some more elements. * doc/Makefile: Remove -net. Oddly enough the whole translation process falls over if the DTD cannot be found. Worse xsltproc cannot read the CATALOG file, it seems to expect something in XML. * doc/gtk2hs.xml: Require Docbook 4.2. * gendoc/Abstract.hs, gendoc/Lexer.hs, gendoc/Parser.hs, gendoc/State.hs, gendoc/Update.hs, gendoc/XMLwrite.hs: Fixed layout and parser bugs, started to print data types. * gtk/gdk/Pixbuf.chs, gtk/general/StockItems.hsc, gtk/general/Structs.hsc, gtk/general/Style.chs, gtk/pango/PangoTypes.chs, gtk/treeList/TreeView.chs: Fixed documentation bugs. 2003-05-16 Jens Petersen * doc/Makefile (html%): Just write dependency as reference%.xml. (fo%): Ditto. * Makefile (EXTRA_TARFILES): Exclude spec file after all. (dist): Don't depend on spec file. (rpm): Depend on spec file. Build from it and not the tarball. (srpm): Ditto. (gtk2hs.spec): Depend on VERSION. * mk/library.mk: Introduce DESTDIR variable for installing into a staging area or buildroot. (installdirs): Prefix dirs with DESTDIR. (installfiles): Prefix DESTDIR to destinations. (uninstallfiles): Add DESTDIR here too for good measure. * gtk/treeList/TreeView.chs: Documentation formatting fixes. * gtk/pango/PangoLayout.chs (layoutSetWidth): Fix doc typo. * gtk/general/Structs.hsc: Documentation fixes: s/@con/@constructor/. * doc/Makefile (html%): Only depend on the xml file for the target to be transformed. * gtk2hs.spec.in (Release): Append date for snapshot packages. (install): Use DESTDIR. (post): Hence no longer need to filter out buildroot prefix from pkg config files. (preun): Only remove ghc pkg configs when removing rpm package. * Makefile (dist): Add spec file as dependency. (rpm): Depend on dist target not tarball. (srpm): Ditto. (gtk2hs.spec): Target to generate spec file. 2003-05-10 Jens Petersen * mk/library.mk (install): Weaken to an install suitable for packaging in a buildroot, ie do not install the package config file into the buildroot. (installfiles): Install package config file too. (installpackage): Rename to "$(PACKAGENAME).conf". Write pkg config to target, rather than installing directly in compiler's packages list. (install-pkg): New target. Installs pkg config file into compiler's packages list. (uninstall): New target. Unstalls files and removes package from compiler's packages list. ($(TARGETOK)): Remove $(PACKAGENAME).conf so that it will be regenerated. 2003-05-09 Axel Simon * mk/common.mk: Run hsc2hs only with the libraries in CFLAGS not with other optimization/debugging options happening to be in there. 2003-05-08 Jens Petersen * gtk/treeList/TreeSelection.chs (onChanged): Renamed to onSelectionChanged since it conflicted with TextBuffer export. (afterChanged): Ditto to afterSelectionChanged. * gtk/multiline/TextBuffer.chs: Export all the signal event handling functions: onApplyTag, afterApplyTag, onBeginUserAction, afterBeginUserAction, onBufferChanged, afterBufferChanged, onDeleteRange, afterDeleteRange, onEndUserAction, afterEndUserAction, onInsertPixbuf, afterInsertPixbuf, onInsertText, afterInsertText, onMarkDeleted, afterMarkDeleted, onMarkSet, afterMarkSet, onModifiedChanged, afterModifiedChanged, onRemoveTag, afterRemoveTag. Rename onChanged and afterChanged to onBufferChanged and afterBufferChanged respectively. * gtk2hs.spec.in: Use ghc 5.04.3. Move perl buildroot prefix cleaning of package conf files into post-install script. * Makefile (EXTRA_TARFILES): Add gtk2hs.spec.in and gtk2hs.spec. (dist): Remove dist dir recursively. (rpm): New target. (srpm): Ditto. * AUTHORS: Update. 2003-05-15 Axel Simon * configure.in, mk/config.mk.in: Improved detection of OpenGl and GLExt. * mk/common.mk, mk/library.mk: Remove stale .hs files when c2hs fails. 2003-03-24 Axel Simon * demo/concurrent/Progress.hs, demo/graphic/Drawing.hs demo/treeList/ListTest.hs, demo/unicode/Arabic.hs, gtk/general/StockItems.hsc: the stockButton... constants have gone, updated the demos. * gtk/treeList/TreeView.chs: Removed a type error when compiling with Gtk 2.2. * gtk/Makefile: Add GObject to the needed CHI files. 2003-03-24 Axel Simon * gtk/general/Style.chs: Forgot to add this file. * gtk/general/StockItems.hsc, gtk/glib/GList.chs, gtk/menuComboToolbar/Toolbar.chs: Completed the list of stock items. Removed bugs in GList module. Changed name of stockAdd to stockAddItem due to clash with the constant stockAdd. Renamed stockLookup to stockLookupItem for symmetry. Had to change Toolbar for this to work. 2003-03-21 Axel Simon * gtk/gdk/Events.hsc: Forgot to export enumerations from GdkEnum * gtk/Makefile: Add Pango HEADER definitions. Change the location of wingtk.h when creating a TAR ball. Add an explanation on how the HEADER definitions work. * demo/treeList/ListTest.hs: Added a callback that says onto which cell the user right-clicks. * demo/concurrent/Progress.hs: Imported Struct. Should sort out the module imports in Gtk.hs. * Makefile: add the concurrent demo. * VERSION: Bump to 0.9.3 in expectation of a new release. 2003-03-20 Axel Simon * mk/common.mk: Removed ./ and blah/.. in file names when creating tar balls. 2003-03-10 Axel Simon * gtk/signals/Signal.chs-boot2, gtk/general/Gtk.hs: Added a function to disconnect a signal. * mogul/TreeList.hs, mogul/Mogul.hs: Added changed the TreePath from Gtk to Mogul style. Patch by Duncan Coutts. 2003-03-08 Axel Simon * gtk/abstract/Widget.chs, gtk/general/Enums.chs, gtk/general/Gtk.hs, gtk/general/Structs.hsc, gtk/treeList/TreeModel.chs, gtk/treeList/TreeView.chs: Completed TreeView.chs with the exception of DND support. 2003-02-27 Axel Simon * demo/concurrent/Progress.hs demo/concurrent/Makefile: Added an example how concurrent Haskell threads can be run even if Gtk's main loop is running. * gtk/general/General.chs: Exported the three different priorities for idle handlers from Struct.hsc. 2003-02-10 Axel Simon * demo/graphic/Drawing.hs gtk/gdk/Drawable.chs gtk/pango/PangoLayout.chsgtk/typehier/hierarchy.list gtk/pango/PangoTypes.chs: Completed PangoLayout as far as possible. Make the Drawing demo display some text. 2003-02-09 Axel Simon * gtk/abstract/Widget.chs gtk/general/Gtk.hs gtk/general/Structs.hsc gtk/glib/GList.chs gtk/pango/Markup.hs gtk/pango/Rendering.chs gtk/pango/PangoLayout.chs: Started on the layout functions of Pango to draw text. 2003-02-07 Axel Simon * mk/config.mk.in: added the variable CC so that the C compiler can be overridden with CC=blah ./configure * configure.in: don't call SUBST on GTK_CFLAGS and GTK_LIBS since it's done by the GTK macros earlier 2003-01-22 Axel Simon * gendoc/Makefile: forgot to add this file. 2003-01-21 Axel Simon * gtk/wingtk.h: This file is needed for building on Windows. It disables a check of gtk_init_check to see whether the header has been compiled with Microsoft bitfields (which is true for hsc2hs where we mangle structure but false for c2hs where we call this function.) * gtk/Makefile: Inadvertently put hierarchy.list on the list of files to be wiped with make clean. Removed that again. * aclocal.m4 configure.in acinclude.m4 mk/config.mk.in mk/library.mk mk/common.mk: Changed the configuration infrastructure. aclocal.m4 is created by running aclocal, thus shouldn't really be in CVS. The package specific macros are now correctly in include.m4. configure.in changed so that is has options for GLArea and GdkPixbuf which can now selectively be enabled (though there is no code yet). The Makefiles have two new flags called ENABLE_GLAREA and ENABLE_PIXBUF which are set to yes or no. Fixed a bug in mk/library.mk that generated a bogus subsystem argument to the linker. * c2hs/chs/CHS.hs: Change c2hs so that is recognizes an OPTIONS -cpp pragma like ghc's. If this pragma is specified the Haskell program is run through CPP before the hooks are expanded. This is necessary for some files where the API changed between Gtk version 2.0 and 2.2. * gtk/embedding/Plug.chs gtk/embedding/Socket.chs gtk/embedding/Embedding.hsc: Resurrected their functionality under Unix. The Plug was moved from windows/ to embedding/ so it could be selectively compiled, i.e. the whole embedding directory is left out on Windows. 2003-01-20 Axel Simon * configure.in: Corrected wrongly escaped hash sign which serves as a comment to sed. 2003-01-19 Axel Simon * configure.in, gtk/Makefile, gtk/general/Gtk.hs, mk/common.mk, mk/library.mk, mk/config.mk.in: Adapt the configuration system to work differently on Windows. Fixed some installation issues. * mogul/GetWidget.hs mogul/Mogul.hs, mogul/NewWidget.hs: As a temporary fix, I commented out the Plug and Socket modules. * demo/graphic/Drawing.hs: make sure that main has type IO (). * Makefile, doc/Makefile: Add docs to the tar ball. * gtk/typehier/TypeGenerator.hs, gtk/Makefile: Selectively create the types GtkPlug and GtkSocket, depending on whether we are compiling on Windows or not. 2003-01-18 Axel Simon * gtk/windows/Plug.chs, gtk/embedding/Plug.chs: Moved this file to make compiling on Windows easier (omit embedding/ completely) * c2hs/c/CParser.hs: Fixed a parser bug for gcc extensions which became apparent when compiling on Windows (__dllexport). * gtk/general/Structs.hsc, gtk/embedding/Sockets.chs: Quick fix to compile on Windows. Declarations in Structs need to be moved to embedding/ so it is left out when compiling on Windows. 2003-01-11 Jens Petersen * gtk/treeList/TreeStore.chs (treeStoreRemove): lift to Bool * gtk/treeList/ListStore.chs (listStoreRemove): lift to Bool * gtk/general/Structs.hsc (fromResponse): parenthesize ResponseUser i and add fromIntegral on rhs (toResponse): add fromIntegral for ResponseUser * demo/graphic/Drawing.hs (main): use ResponseOk 2003-01-10 Jens Petersen * configure.in: add gtk2hs.spec to output list * gtk2hs.spec.in: new file to generate a project rpm spec file 2003-01-10 Jens Petersen * demo/unicode/Arabic.hs (main): use ResponseYes, ResponseCancel and ResponseOk * gtk/windows/Dialog.chs: import and re-export ResponseId instead of responseName's. import fromResponse and toResponse. (dialogRun): use toResponse (dialogResponse): use fromResponse (dialogAddButton): use fromResponse (dialogAddActionWidget): use fromResponse (dialogSetDefaultResponse): fromResponse (dialogSetResponseSensitive): fromResponse (onResponse, afterResponse): toResponse * gtk/general/Structs.hsc: export fromResponse and toResponse, instead of all the responseName's. ResponseId is now a datatype. fromResponse converts from a ResponseId to the corresponding gtk constant values. toResponse does the reverse map. ResponseUser Int carries positive integer user defined responses. fromResponse and toResponse are only defined for positive integers. 2002-12-19 Axel Simon * VERSION, INSTALL: bump version, tweak instructions * doc/Makefile: create the subdirectories before copying * Makefile: make all also builds documentation, use proper names for the reference pages * gendoc/XMLwrite.hs: insert the name of the current node into each reference page. * gtk/menuComboToolbar/MenuBar.chs, gtk/abstract/Paned.chs: Docu fix, gave the widgets propper names. 2002-12-16 Axel Simon * gendoc/PrettyLib.hs: convert from PackedString to normal String * gendoc/Update.hs, gendoc/XMLwrite.hs: add hyperlinks between from synopsis and tried to link arguments to types. * doc/Makefile doc/gtk2hs.xml doc/mogul.xml: Added documentation. * gtk/treeList/TreeModel.chs: Added two functions and export the function gtk_tree_model_get_iter_from_string for CellRendererText.chs * gtk/treeList/CellRendererText.chs: use the bare function from TreeModel.chs to avoid converting the C string to Haskell and back. * configure.in: Changed the test for c2hs, so that it can cope with: "0.10.17 [compiled for GHC 5.04]", urk. * mk/comon.mk: repaired building with external c2hs, specifically, the -o : option is not understood by normal c2hs. * gtk/Makefile: added the -HEADER definition for all the files which where added since the last time someone compiled with external c2hs (most notably Region.chs, where the build falls over). 2002-12-10 Axel Simon * mk/config.mk.in, mk/library.mk: Separated out targets for installing packages and files. This is an attempt to simplify the creation of RPMs and Debian packages. Removed interactiveInstall for now since ghci still does not work with -package gtk2 or -package mogul. 2002-12-04 Axel Simon * mk/library.mk: update the time of the copied library file so that it compiles on Darwin 2002-12-03 Axel Simon * config.guess, config.sub: updated from GNU website * gtk/treelist/TreeModelSort.chs, gtk/gdk/DrawWindow.hs: added, should have been there before! 2002-12-01 Axel Simon * demo/graphic/Drawing.hs demo/hello/World.hs demo/treeList/ListTest.hs demo/unicode/Arabic.hs gtk/general/General.chs gtk/treeList/ListStore.chs mogul/WidgetTable.hs: Changed the initialization and the main loop function again. 2002-11-08 Axel Simon * gtk/menuComboToolbar/Menu.chs gtk/treeList/ListStore.chs gtk/treeList/TreeModel.chs: Documentation changes. 2002-11-11 Axel Simon * gtk/general/General.chs: Changed the initialization and main loop functions. They now have names which do not clash with the Prelude. * Makefile: Include the two demos "graphics" and "treeList". * demo/graphic/Drawing.hs demo/hello/World.hs demo/treeList/ListTest.hs demo/unicode/Arabic.hs: Reflect the change to the main loop functions. 2002-11-08 Axel Simon * gendoc/Abstract.hs gendoc/Driver.hs gendoc/Lexer.hs gendoc/Parser.hs gendoc/State.hs gendoc/Update.hs gendoc/XMLwrite.hs gtk/abstract/Box.chs gtk/abstract/Range.chs gtk/abstract/Widget.chs gtk/buttons/Button.chs gtk/display/Label.chs gtk/entry/Entry.chs gtk/gdk/Drawable.chs gtk/gdk/Events.hsc gtk/gdk/GC.chs gtk/general/General.chs gtk/general/Gtk.hs gtk/general/IconFactory.chs gtk/general/Structs.hsc gtk/layout/Layout.chs gtk/menuComboToolbar/CheckMenuItem.chs gtk/menuComboToolbar/ImageMenuItem.chs gtk/menuComboToolbar/Toolbar.chs gtk/misc/DrawingArea.chs gtk/misc/HandleBox.chs gtk/misc/Viewport.chs gtk/multiline/TextBuffer.chs gtk/multiline/TextIter.chs gtk/multiline/TextView.chs gtk/pango/Markup.hs gtk/scrolling/ScrolledWindow.chs gtk/windows/Window.chs: More documentation fixes. * gtk/signals/gtkmarshal.list gtk/treeList/CellRenderer.hs gtk/treeList/CellRendererPixbuf.chs gtk/treeList/CellRendererText.chs gtk/treeList/CellRendererToggle.chs gtk/treeList/TreeModel.chs gtk/treeList/TreeView.chs gtk/treeList/TreeViewColumn.chs mogul/Mogul.hs mogul/TreeList.hs: Changed the internals of Attributes in CellRenderer. This now allows to set Just for e.g. a color or the editable flag (for which both "editable" and "editable-set" have to be modified). Added the onEdited signal. 2002-11-04 Axel Simon * gtk/multiline/TextView.chs, general/Enums.chs, general/Gtk.hs: Completed TextView as far as possible. * gendoc/ XMLwrite.hs Abstract.hs Lexer.hs Parser.hs PrettyLib.hs: Switched to Olaf's Pretty Printing library. GHC's library seems to be broken (combinators are not associative). The right combinators still seem to be lacking. * general/Structs.hsc glib/GList.chs glib/GObject.chs glib/GType.chs glib/GValue.chs glib/GValueTypes.chs menuComboToolbar/Menu.chs misc/DrawingArea.chs misc/HandleBox.chs multiline/TextIter.chs typehier/TypeGenerator.hs windows/Dialog.chs: documentation fixes * mk/library.mk: i 2002-10-21 Jens Petersen * mogul/NewWidget.hs (newLayout): Take Maybe Adjustment's. * gtk/layout/Layout.chs: Import fromMaybe and nullForeignPtr. (layoutNew): Use them for Maybe Adjustment arguments. * gtk/abstract/Widget.chs (onGrabFocus, afterGrabFocus): Fix to use connect_NONE__NONE, since "grab_focus" event handler is just IO (). 2002-10-20 Axel Simon * gendoc/Abstract.hs XMLwrite.hs gtk2hs.xml: This version uses the unmodified version of Docbook. I'm still haveing trouble with the pretty-printer library (and with Docbook itself, of course). 2002-10-19 Axel Simon * gendoc/ Abstract.hs Driver.hs Lexer.hs Parser.hs State.hs Update.hs XMLwrite.hs gtk2hs.xml: Machinery to generate documentation from the comments in the binding. I just decided to use the original Docbook without any Haskell specific additions. So this first version tries to define and use a modified version of Docbook. 2002-10-06 Axel Simon * gtk/multiline/TextView.chs: Completed functionality and added all signals. * gtk/abstract/Container.chs gtk/display/Image.chs gtk/general/Gtk.hs gtk/general/Structs.hsc gtk/misc/Tooltips.chs gtk/multiline/TextBuffer.chs gtk/multiline/TextIter.chs gtk/multiline/TextView.chs gtk/treeList/TreeView.chs gtk/typehier/TypeGenerator.hs gtk/typehier/hierarchy.list Added Files: gtk/gdk/Drawable.chs gtk/gdk/GC.chs gtk/gdk/Keys.chs Removed Files: gtk/gdk/GdkDrawable.chs gtk/gdk/GdkGC.chs gtk/gdk/GdkKeys.chs: Get rid of any Gdk prefix in types and module names. 2002-10-01 Axel Simon * gtk/gdk/GdkEnums.chs, gtk/general/Gtk.hs, gtk/general/Structs.hsc, gtk/Makefile, gtk/gdk/GdkGC.chs, gtk/gdk/GdkDrawable.chs,gtk/gdk/Region.chs, gtk/general/Structs.hsc, gtk/typehier/hierarchy.list, gtk/misc/DrawingArea.chs: Added the capabilities to do user specified widgets. * demo/graphic/Drawing.hs demo/graphic/Makefile Makefile: Added a demonstration of how to use the DrawingArea widget. 2002-08-20 Jonas Svensson * gtk/abstract/Widget.chs: Added widgetSetSizeRequest function. 2002-08-15 Jonas Svensson * gtk/menuComboToolbar/ImageMenuItem.chs: Changed type from Image to Widget on get/setImage functions. Changed getImage to return IO (Maybe Widget). 2002-08-13 Axel Simon on behalf of Jonas Svensson * gtk/Makefile: Added ImageMenuItem to list of moduels * gtk/typehier/hierarchy.list: Added GtkImageMenuItem * gtk/general/Gtk.hs: Now imports and exports ImageMenuItem * gtk/menuComboToolbar/ImageMenuItem.chs: Implementation of the GtkImageMenuItem widget. 2002-08-12 Axel Simon * gtk/multiline/TextView.chs: Added SetEditable, GetEditable, SetCursorVisible, GetCursorVisible which was a patch from Jonas Svensson 2002-08-05 Axel Simon * gtk/Makefile, mk/library.mk, mk/common.mk: Smaller fixed for the broken ghc-pkg of ghc version 5.04. ghci still doesn't work. * most .chs files in gtk/: Slight changes of documentation to make the documentation tools work (the latter are not yet in CVS). 2002-08-02 Jens Petersen * gtk/windows/FileSel.chs: Re-export fileSelectionGetButtons. * gtk/general/Structs.hsc(fileSelectionGetButtons): Like fileSelectionQueryButtons in gtk+hs. Export it. 2002-07-23 Axel Simon * gtk/treeList/TreeSelection.chs: Added the "changed" signal. Realized that there are many other modules without signals. * gtk/treeList/TreeView.chs(treeViewGetSelection), gtk/typehier/hierarchy.list: TreeSelection is only a GObject, so generate it with makeNewGObject. 2002-07-21 Axel Simon * gtk/Makefile, mogul/Makefile, gtk/general/UTFCForeign.hs: Make the library compile with GHC 5.04 which introduces hierarchical modules. * gtk/general/General.chs(setLocale): remove * demo/unicode/Arabic.hs: remove setLocale * modul/WidgetTable.hs: Change the dependency on FiniteMap to a newly introduced impedance matcher module compat/LocalData.hs. * treeList/TreeSelection.chs, gdk/GdkKeys.chs, general/Stock.hsc, general/General.chs, signal/Signal.chs-boot2, gdk/Events.hsc, gdk/GdkEnums.hs, glib/GObject.hs, modul/WidgetTable.hs, mogule/TreeList.hs: Changed the dependency on IOExts to a newly introduced impedance matcher module compat/LocalData.hs. * treeList/StoreValue.hs: Changed the dependency on Exception to a newly introduced impedance matcher module compat/LocalControl.hs. * multiline/TextMark.chs, multiline/TextIter.chs, multiline/TextTag.chs, multiline/TextTagTable.chs, multiline/TextView.chs, gdk/GdkKeys.chs, gdk/Events.hsc, gtk/typehier/TypeGenerator.hs: Changed CForeign to UTFCForeign. * gtk/glib/GList.chs: remove CForeign import * configure.in: Corrected the search path when searching for a ghc-pkg which is not in the PATH. Remove all non-existant paths from GTK_CFLAGS and from GTK_LIBS. * mk/chsDepend.in: Removed the dependency .dep <- .chs to avoid that automatic generated .chs files are built when doing a "make distclean". * gtk/Makefile: Changed the dependency on "lang" to "base" for GHC versions with hierarchical module system. * window/FileSel.chs: Changed chi import to normal Haskell import. * mk/common.mk: "inplaceinit" is no longer prerequisite for "all" * mk/library.mk: "noinplace" is no longer prerequisite for "installcheck" 2002-07-19 Axel Simon * gtk/windows/Window.chs: added deprecated windowSetPolicy method and found out that windowGetResizable and windowSetResizable were missing, so I added them as well. * mogul/TreeList.hs: fixed a bug in treeSkelAddAttribute 2002-07-18 Axel Simon * gtk/treeList/CellRendererText.chs: changed the attribute types of foreground and background colors to Maybe String. * gtk/glib/GValue.chs: Changed the String member of the GValue union to Maybe String. * gtk/glib/GValueTypes.chs: Reflect the change in GValue when marshalling strings. * gtk/Makefile: TreeView needs TreeViewColumn.chi, so I added TreeViewColumn to the needed chi-files. * demo/treeList/ListTest.hs: Cell colors are now of type Maybe String. Remove the comments from the writeStore function. 2002-07-18 Jens Petersen * gtk/gdk/GdkKeys.chs: Bind keyvalName and keyvalFromName. * gtk/windows/FileSel.chs: Binding based on file from gtk+hs. fileSelectionQueryButtons needs to be fixed for this to be useful. * mogul/TreeList.hs: Fix a couple of doc typos. * mogul/NewWidget.hs (newNamedScrolledWindow): Maybe take an Adjustment. (newScrolledWindow): Ditto. * gtk/treeList/TreeViewColumn.chs (treeViewColumnNewWithAttributes): Haskell implementation to avoid binding to original variad function. (treeViewColumnAddAttributes): New convenience function. (treeViewColumnSetAttributes): Haskell implementation to avoid binding to original variad function. (treeViewColumnClearAttributes): Add binding. * gtk/treeList/TreeView.chs (treeViewInsertColumnWithAttributes): Haskell implementation to avoid binding to original variad function. * gtk/scrolling/ScrolledWindow.chs (scrolledWindowNew): Make it maybe take Adjustments, passing a null ptr when Nothing is given. * gtk/general/Gtk.hs: Import and re-export GdkKeys and FileSel. * gtk/general/General.chs: Export timeoutAdd, timeoutRemove, idleAdd, idleRemove and HandlerId. * gtk/entry/Entry.chs: Bind entryGetText. * gtk/Makefile: Add header vars for GdkKeys and FileSel. 2002-07-17 Jens Petersen * Added .cvsignore files to most of the directories in the tree to give cleaner cvs updates from a build tree. 2002-07-08 Axel Simon * Reinstantiated the TreeList.hs module in mogul/. Made up a new concept to make the TreeView widget easier to use. To create a TreeStore or ListStore object, the user now has to create a skeleton that holds different attributes. The skeleton can then be converted into a ListStore or TreeStore. This takes care of the fact that columns cannot be added to the store objects on the fly. 2002-06-22 Axel Simon * Changed the configure script to more reliably find GNU versions of sed and grep. Improved the build system which now correctly manages dependencies between .chs file. Changed the calling convention of the functions such that the object is the first argument as in gtk+hs. Prepared for generating automatic documentation. 2002-04-16 Axel Simon * Created the "dist" goal to tar a source distribution. Introduced a VERSION file. 2002-04-14 Axel Simon * Incooperated c2hs version 0.10.12 into the source tree. Omitted the lib/ directory. For the latter I had to change C2HSConfig.hs.in to import "toBool" from MarshalUtils. The sources are otherwise unchanged. * HookGenerator.hs: Added test for SPARC architecture. GHC is unable to generate dynamic callbacks with more than 4 word worth of arguments. By replacing all connectTo... functions which take more than 3 arguments (real args and the GtkObject) with error stubs this is only a temporary solution.