2004-08-06 Johan Dahlin * NEWS: Update. * gobject/pygflags.c (pyg_flags_from_gtype): Don't comment out the fallback, it break the test. (Wow, the testsuite caught another bug!) * tests/enum.py: Additional tests. * gobject/pygenum.c (pyg_enum_repr): Don't use g_enum_get_value, use enum_class->values[n].value_name instead. Also check if the value is NULL or not. This makes gtk.icon_size_register work a little bit better. * codegen/codegen.py (Wrapper.write_methods): Use methflags argument for defines instead of discarding it 2004-08-04 John Finlay * codegen/argtypes.py Return string instead of Atom. * gtk/gtk.override (_wrap_gtk_selection_data_get_targets) (_wrap_gtk_drag_dest_find_target) (_wrap_gtk_drag_dest_get_target_list) (_wrap_gtk_clipboard_wait_for_targets) (clipboard_request_targets_cb) Return string(s) instead of Atom(s). * gtk/gtkmodule.c (init_gtk) Add string instead of Atom using add_atom. 2004-08-04 Johan Dahlin * tests/enum.py (EnumTest.testOutofBounds): New test. * gobject/pygflags.c (pyg_flags_from_gtype): * gobject/pygenum.c (pyg_enum_from_gtype): Don't segfault on unknown values. 2004-08-04 John Finlay * gtk/gtk.override (_wrap_gtk_stock_lookup) (_wrap_gtk_accelerator_parse) (gtk_accel_map_lookup_entry) Use flags instead of enum. gtk/gdk.override (_wrap_gdk_event_tp_getattr) Return flags instead of ints for event members. (_wrap_gdk_device_get_state) (_wrap_gdk_window_get_pointer) (_wrap_gdk_display_get_pointer) (_wrap_gdk_event_get_state) (_wrap_gdk_keymap_translate_keyboard_state) Return flags instead of ints 2004-08-04 Gustavo J. A. M. Carneiro * everywhere: s/PyGILState_Ensure/pyg_gil_state_ensure; s/PyGILState_Relase/pyg_gil_state_release; s/Py_BEGIN_ALLOW_THREADS/pyg_begin_allow_threads; s/Py_END_ALLOW_THREADS/pyg_end_allow_threads; * gobject/pygobject-private.h, gobject/pygobject.h: Add new macros pyg_threads_enabled, pyg_gil_state_ensure, pyg_gil_state_release, pyg_begin_allow_threads, pyg_end_allow_threads. pyg_threads_enabled indicates whether threads are currently enabled. The others just mimick the equivalent python functions, except that they do nothing when threads are not enabled. * gobject/pygobject.h: Add boolean flag to pygobject API structure indicating whether threading is activated; also add enable_threads api entry point. * gobject/gobjectmodule.c (pyg_enable_threads): New pygobject API function to activate pygtk thread awareness. (pyg_threads_init): gobject.threads_init(), calls pyg_enable_threads. 2004-08-04 Johan Dahlin * gtk/gtk.override (_wrap_gtk_accel_map_lookup_entry): GdkModifierType is flags not an enum. * gobject/pygenum.c (pyg_enum_from_gtype): Don't crash if its not an enum * gobject/pygflags.c (pyg_flags_from_gtype): Don't crash if its not flags 2004-08-03 Gustavo J. A. M. Carneiro * gobject/pygobject.c (pygobject_emit): Remove unused variable _save * gtk/gtkmodule.c (_pygtk_log_func): Aquire GIL. 2004-08-03 Johan Dahlin * gobject/pygenum.c (pyg_enum_from_gtype): Create a new GType on the fly if there isn't one for the GType. (pyg_enum_add): Allow module to be NULL. * codegen/argtypes.py: * gobject/gobjectmodule.c: (pyg_source_remove): * gobject/pygmaincontext.c: (_wrap_g_main_context_iteration), (_wrap_g_main_context_pending): * gobject/pygmainloop.c: (_wrap_g_main_loop_is_running): * gobject/pygobject.c: (pygobject_handler_is_connected): * gobject/pygparamspec.c: (pyg_param_spec_getattr): * gobject/pygtype.c: (pyg_value_as_pyobject): * gtk/gdk.override: * gtk/gtk.override: * gtk/gtktextview.override: * gtk/gtkwidget.override: * pango.override: Add better support for boolean type now when we can require 2.3. Fixes bug 149121 2004-08-03 Johan Dahlin * gtk/pygtktreemodel.c: Clean up most functions here to have only one return path. * gobject/pygobject.c (pygobject_emit): Protect g_value_unset by UNBLOCK/BLOCK_THREADS since it might call pygobject_free which will result in a deadlock. * gobject/gobjectmodule.c (pyg_thread_init): New function, move thread initalization stuff in here. * All over the place: Kill pyg_block/unblock_threads and use PyGILState and Py_BEGIN/END_ALLOW_THREADS. unblock [code] block calls are replaced by Py_BEGIN/END and block [code] unblock calls are replaced by PyGILState. 2004-08-03 Xavier Ordoquy * autogen.sh: Takes ACLOCAL_FLAGS into account. Fixes #149115 (Mariano Suárez-Alvarez) 2004-08-02 John Finlay * gtk/gtk.defs (gtk_expander_new) (gtk_expander_new_with_mnemonic) label can be None - make label optional (gtk_expander_set_label) (gtk_expander_set_label_widget) label and label_widget can be None 2004-08-02 Johan Dahlin * configure.in: Post release version bump * setup.py (MICRO_VERSION): === PyGtk 2.3.95 === 2004-08-02 Johan Dahlin * NEWS: Update * gobject/gobjectmodule.c (initgobject): Call PyEval_InitThreads. Perhaps its something that always should be called. * README (Author): Add a requirements section * configure.in: Require Python 2.3 * setup.py (version): Ditto * gobject/pygtype.c, gobject/pygobject.h: Remove 2.2 compat. * All over the place: Add support for PyGILState. 2004-07-30 John Finlay * gtk/gtk.override (_wrap_gtk_adjustment_new) Impl. Rearrange arg_names and prop_names so value is last. Fixes #148860 (Steve Chaplin). 2004-07-29 John Ehresman * setup.py: Remove --enable-threading from argv before calling distutils 2004-07-29 John Finlay * gtk/gtk.override (_wrap_gtk_action_get_proxies) slist should not be freed. Fixes 148801. (Abel Daniel) 2004-07-29 John Ehresman * setup.py: Add --disable-numeric option to disable numeric support even when the runtime check finds it 2004-04-01 Scott Tai Reviewed by: Johan Dahlin * gtk/gdk.override: Remove ignore for win32, the functions are now implemented on win32 fixes bug 138804 2004-06-14 Benjamin Otte Reviewed by: Johan Dahlin : * codegen/h2def.py (write_func): only remove the first occurence of the object name, we don't want to mess up the function name, fixes bug 144363 2004-07-29 John Finlay * gtk/gtktreeview.override (_wrap_gtk_list_store_insert_before) (_wrap_gtk_list_store_insert_after) Allow sibling to be None. Fixes #148751 (Steve Chaplin) * gtk/pygtktreemodel.c Fix reference leaks. Fixes#148748. Thanks to Tim Evans. 2004-07-29 Johan Dahlin * tests/gtype.py (GTypeTest.checkType): Use gobject.type_name,type_from_name for testing instead of GtkListStore. 2004-07-28 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_view_get_cursor) (_wrap_gtk_tree_sortable_get_sort_column_id) (_wrap_gtk_tree_view_get_drag_dest_row) (_wrap_gtk_tree_view_get_dest_row_at_pos) Fix reference leaks. * gtk/gtk.override (_wrap_gtk_box_query_child_packing) (_wrap_gtk_notebook_query_tab_label_packing) (_wrap_gtk_tooltips__get_active_tips_data) (_wrap_gtk_tooltips__get_tips_data_list) (_wrap_gtk_image_get_pixmap) (_wrap_gtk_image_get_image) (_wrap_gtk_image_get_stock) (_wrap_gtk_image_get_icon_set) (_wrap_gtk_scrolled_window_get_policy) (_wrap_gtk_tooltips_data_get) (_wrap_gtk_accel_map_lookup_entry) Fix reference leaks. * pango.override (pypango_attr_iterator_get_font) Fix reference leaks. 2004-07-28 Johan Dahlin * gobject/pygenum.c (pyg_enum_compare): * gobject/pygflags.c (pyg_flags_compare): Reverse operator, it was wrong before, spotted by Abel Daniel * tests/enum.py (FlagsTest.testComparision) (FlagsTest.testComparision): New tests * gobject/pygtype.c (pyg_type_from_object): If we're on python 2.3, also check for PyBool_Type. Fixes #148684 (Steve Chaplin) * tests/gtype.py (GTypeTest.testBoolType): New test 2004-07-27 John Finlay * gtk/gtk-types.c (pygdk_atom_compare) Remove. (pygdk_atom_richcompare) Implement with comparison to strings. (PyGdkAtom_Type) Set tp_compare to 0 and tp_richcompare to pygdk_atom_richcompare. Allow an Atom to be compared with a string. Fixes #148564. 2004-07-26 Johan Dahlin * acinclude.m4: Remove, replaced with: * m4/jhflags.m4: New file, includes compiler macros * m4/python.m4: New file, includes python macros * autogen.sh: Copy over autogen.sh from gnome-common.h * gtk/__init__.py: Readd _gobject, but warn if it's used 2004-07-25 John Finlay * gtk/pygtktreemodel.c (pygtk_generic_tree_model_get_value) Skip pyg_value_from_pyobject() if return value is Py_None. Fixes #148230. 2004-07-23 John Finlay * gtk/gtk.override (clipboard_request_text_cb) Fix bug when no text. (clipboard_request_targets_cb) Fix bug when no targets. 2004-07-23 Gustavo J. A. M. Carneiro * gtk/gtk.override (_wrap_gtk_list_item_new): Add deprecation warning. * codegen/codegen.py (write_property_based_constructor): Honor the "deprecated" option. 2004-07-23 John Finlay * gtk/gtk.override (_wrap_gtk_dialog_new_with_buttons) (_wrap_gtk_message_dialog_new) Use pyg_flags_get_value(). * gtk/gtk-types.defs (TextSearchFlags) Fix typo. * gtk/gtktextview.override (_wrap_gtk_text_iter_forward_search) (_wrap_gtk_text_iter_backward_search) Use pyg_flags_get_value. * gtk/gtk-extrafuncs.defs (flags) (set_flags) (unset_flags) Use GtkWidgetFlags as args and return value. 2004-07-22 Johan Dahlin * setup.py (MICRO_VERSION): * configure.in: Post release version bump === PyGtk 2.3.94 === 2004-07-22 Johan Dahlin * NEWS: Update 2004-07-21 Johan Dahlin * gobject/pygflags.c (pyg_flags_get_first_value_name) (pyg_flags_get_first_value_nick): Add, so Lorenzo can introspect flags properly too (pyg_flags_get_value_names, pyg_flags_get_value_nicks): Make this a little bit more useful. All values can still be fetch through __flags_values__ * tests/enum.py: Improve and extend to test most enum/flags operations 2004-07-20 John Finlay * codegen/codegen.py (write_enums) Fix bug causing segfault when loading pango module. 2004-07-20 Lorenzo Gil Sanchez * gtk/gtk.override (_wrap_gtk_file_chooser_dialog_new): fixed a compilation error: 'window' variable should be 'parent' 2004-07-20 Johan Dahlin * gtk/gtk.override (_wrap_gtk_file_chooser_dialog_new): Simplify, fix name in exceptions and remove warning. * gobject/pygenum.c (pyg_enum_from_gtype): Fall back to int for unregistered enums. * gobject/pygflags.c (pyg_flags_from_gtype): Ditto * gobject/gobjectmodule.c (initgobject): Rename back to MainLoop, MainContext 2004-07-19 Gustavo J. A. M. Carneiro * gtk/libglade.override (_wrap_glade_xml_new): Allow pydict to be unset. 2004-07-19 Johan Dahlin * setup.py (MICRO_VERSION): * configure.in: Post release version bump === PyGtk 2.3.93 === 2004-07-19 Johan Dahlin * NEWS: Update * gtk/gtk.override (_wrap_gtk_dialog_new_with_buttons): Return 1/0, instead of flagvalue/0 to avoid GObject complains. (_wrap_gtk_dialog_run): Simplify * gtk/libglade.override: Subclass GladeXML so we can wrap lookup_type. Add a new optional argument to GladeXML.__init__ that is a mapping object that will be used to translate types. Thanks to Gustavo for helping out. This should make kiko somewhat happy. Fixes bug 140071 * tests/enum.py (EnumTest.testWindowGetState): Fix, a window is really WITHDRAWN if it's not SHOWN and not ICONIFIED... * tests/common.py: Add .. and ../gobject when distcheck isn't ran * gobject/pygenum.c: Use a dict instead of a tuple for __enum_values__, so we can handle negative enum values (eg: GDK_NOTHING) * gobject/pyflags.c: Ditto for __flag_values__ * gobject/pygparamspec.c (pyg_param_spec_getattr): reference count fixing * gobject/Makefile.am: * setup.py: * makefile.msc: Update, why do I even bother to update 3 different build systems? * gobject/: Split out GParamSpec, GMainLoop, GMainContext and GPointer to separate files. Also remove *.h files and go back to the old scheme (everything in pygobject.h) * description.py: Remove, out of date since 0.6.x! * tests/Makefile.am, tests/common.py: Make distcheck pass 2004-07-18 John Ehresman * gobject/pygflags.c, gobject/pygenum.c, gobject/gobjectmodule.c (initgobject): Remove references to &PyInt_Type from static type struct initialization and manually set it before PyType_Ready calls * makefile.msc, gtk/makefile.msc, gobject/makefile.msc: VC++ makefile changes for new directory layout 2004-07-18 Johan Dahlin * gtk/gtk.override (_wrap_gtk_action_group_add_radio_actions) (_wrap_gtk_action_group_add_toggle_actions) (_wrap_gtk_action_group_add_actions): Add optional user_data argument. * gobject/pygflags.c (pyg_flags_get_value_nicks) (pyg_flags_get_value_names): New getters * gobject/pygenum.c (pyg_enum_get_value_nick) (pyg_enum_get_value_name): New getters * gobject/gobjectmodule.c (pyg_param_spec_getattr): add enum_class and flags_class properties. 2004-07-18 Gustavo J. A. M. Carneiro * gtk/gtk.defs (gtk_combo_new): Add deprectation warning. (gtk_item_factory_new): idem. (gtk_list_item_new): idem. (gtk_list_item_new_with_label): idem. (gtk_option_menu_new): idem. * gtk/gtkclist.override (_wrap_gtk_clist_new_with_titles): Give deprecation warning. * gtk/gtkctree.override (_wrap_gtk_ctree_new_with_titles): Give deprecation warning. * gtk/gtk.defs (plug_new_for_display): Deprecate, since the regular gtk.Plug constructor can accept a GdkDisplay now. * gtk/gtk.override (_wrap_gtk_plug_new): Override constructor, convert to g_object_new based; Add optional parameter 'display', available since Gtk 2.2. * gtk/gtktreeview.override (_wrap_gtk_tree_view_column_new): Convert constructor to property based. * gtk/gtk.defs (gtk_vscrollbar_new): Convert constructor to property based. (gtk_tree_view_new_with_model): idem. (gtk_text_view_new_with_buffer): idem. * gtk/gtk.override (_wrap_gtk_pixmap_new): Override _wrap_gtk_pixmap_new, construct with g_object_new. 2004-07-17 Johan Dahlin * tests/enum.py: add, forgot it in last commit * gobject/: Move gobject source files in here. 2004-07-17 Gustavo J. A. M. Carneiro * gtk/gtk.override (_wrap_gtk_dialog_new_with_buttons): Don't pass 'parent' property if no parent is given or is None. 2004-07-17 Johan Dahlin * codegen/codegen.py: * codegen/argtypes.py: Update for enums * pygtype.c (pyg_value_as_pyobject): Use new enum/flag functions * pygenum.[ch]: Handle GFlag * pygflags.[ch]: Handle GFlag * atk-types.defs: Fix gtype-id for all enums * gobjectmodule.c (initgobject): Clean up and add convinience macros * tests/enum.py: New file * tests/common.py: New file, also stole from gst-python 2004-07-17 Gustavo J. A. M. Carneiro * gtk/gtk.override (_wrap_gtk_table_new): Override to allow rows and columns default to 1, unlike the underlying gtk/C API which defaults to 0. 2004-07-15 John Finlay * gtk/gtk.override (_wrap_gtk_menu_item_new): Use AccelLabel instead of Label and dup MenuItem creation process. (_wrap_gtk_check_menu_item_new): idem (_wrap_gtk_radio_menu_item_new): idem. (_wrap_gtk_button_new): Set "use_underline" to TRUE when stock item (_wrap_gtk_check_button_new): Add optional argument 'use_underline', defaulting to TRUE. (_wrap_gtk_radio_button_new): idem. (_wrap_gtk_toggle_button_new): idem. (_wrap_gtk_message_dialog_new) Fix erroneous error message. #147421 2004-07-15 Gustavo J. A. M. Carneiro * gtk/gtk.override (_wrap_gtk_menu_item_new): add optional argument 'use_underline', defaulting to True. (_wrap_gtk_radio_check_menu_item_new): idem. (_wrap_gtk_radio_menu_item_new): idem. (_wrap_gtk_button_new): idem. Fixes #147421. 2004-07-13 Gustavo J. A. M. Carneiro * gtk/gtk.override (_wrap_gtk_button_new): Construct with g_object_new. (_wrap_gtk_toggle_button_new): idem. (_wrap_gtk_check_button_new): idem. (_wrap_gtk_radio_button_new): idem. (_wrap_gtk_menu_item_new): idem. (_wrap_gtk_check_menu_item_new): idem. (_wrap_gtk_radio_menu_item_new): idem. (_wrap_gtk_check_menu_item_new): idem. (_wrap_gtk_progress_bar_new_with_adjustment): idem. (_wrap_gtk_file_chooser_new): idem. (_wrap_gtk_color_button_new): idem. (_wrap_gtk_combo_box_new): idem. (_wrap_gtk_combo_box_entry_new): idem. (_wrap_gtk_file_chooser_widget_new): idem. (_wrap_gtk_font_button_new): idem. (_wrap_gtk_radio_tool_button_new): idem. (_wrap_gtk_toggle_tool__button_new): idem. (_wrap_gtk_tool_button_new): idem. (_wrap_gtk_entry_new): idem. (_wrap_gtk_dialog_new_with_buttons): idem. (_wrap_gtk_image_menu_item_new): Raise exception if attempted to subclass this object without calling __gobject_init__. (_wrap_gtk_message_dialog_new): idem. 2004-07-12 John Finlay * gtk/gtkwindow.override (set_geometry_hints) Fix arg format string. Fixes #147458. Thanks to Theo Reed. 2004-07-10 Johan Dahlin * tests/runtests.py: New script to run all tests in one take * tests/Makefile.am: autotoolify * tests/signal.py: New simple test taken from examples/gobject/signal.py 2004-07-08 Gustavo J. A. M. Carneiro * gtk/gtk.defs: Change to most constructors to property based. * codegen/codegen.py (GObjectWrapper.write_property_based_constructor): Handle propname != argname cases. * codegen/definitions.py (FunctionDef.__init__): Parse (argname "xxx") inside properties list, to support argname != propname. (Property.__init__): Accept new argname parameter. 2004-07-07 Gustavo J. A. M. Carneiro * codegen/definitions.py (FunctionDef.write_defs): Handle new properties syntax. * gtk/gdk.override (_wrap_gdk_colormap_alloc_color): Raise ValueError instead of TypeError if unable to parse colour specification. (_wrap_gdk_color_parse): idem. Fixes #144862. 2004-07-04 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_model_rows_reordered) Allow None, () or "" for top level path. 2004-07-04 Gustavo J. A. M. Carneiro * gtk/gtk.defs (gtk_hbox_new): Change constructor to property based. * gobjectmodule.c (pyg_parse_constructor_args): Helper function invoked from the generated constructors. * codegen/codegen.py (Wrapper.write_constructor): Delegate to self.write_property_based_constructor() when appropriate. (GObjectWrapper.write_property_based_constructor): New constructor generator, that writes constructors that use g_object_newv and pass constructor arguments as properties. * codegen/definitions.py (Parameter): New Parameter class, to hold the items in (parameter ...). Emulates tuple for compatibility, but is more extensible. (Property): New property class, to hold (property ...) items. (FunctionDef.__init__): Parse (property ...), for new property based constructors. 2004-07-04 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_store_new) Fix typo. (_wrap_gtk_tree_model_rows_reordered) Allow None for path and iter to allow reordering top level rows. Fixes #143834. John Ehresman's patch with mods. 2004-07-04 John Ehresman * tests directory: unit tests 2004-07-04 Gustavo J. A. M. Carneiro * gtk/gtktreeview.override (_wrap_gtk_tree_store_new): Use g_object_newv to create instance, thus allowing subclassing without __gobject_init__. * gtk/gtkmodule.c (init_gtk): Register new warning category, GtkWarning. Register a log handler for Gtk warnings that issues a python warning using GtkWarning category. 2004-07-04 John Ehresman * codegen/argtypes.py (GUniCharArg): Use the converter function pyg_pyobj_to_unichar_conv to parse gunichar parameters, instead of templated code. * pygtype.c (pyg_pyobj_to_unichar_conv): impl. * pygobject.h, gobjectmodule.c: Add pyg_pyobj_to_unichar_conv to list of exported functions. 2004-07-04 Gustavo J. A. M. Carneiro * gtk/gdk.override (_wrap_gdk_colormap_query_color): Implement gdk.Colormap.query_color. * gtk/gdk.defs (query_color): Add gdk.Colormap.query_color. * gtk/gtktreeview.override (pygtk_set_search_equal_func_marshal): Column is integer, not PyGObject! :-/ 2004-07-03 John Finlay * gtk/gtk.defs * gtk/gtk-extrafuncs.defs I goofed in placing the GenericTreeModel methods. Now they should be in the right place. * gtk/gtktreeview.override Ignore gtk_tree_view_get_search_equal_func. * gtk/pygtktreemodel.c * gtk/pygtktreemodel.h * gtk/gtk.defs Add stamp to GenericTreeModel to use in detecting valid TreeIters. Add invalidate_iters() method to allow custom tree models to manage TreeIters when not persistent. Add iter_is_valid() method to allow apps to determine if a TreeIter for a custom tree model is valid. 2004-07-03 Ross Burton * gtk/gdk.defs: Add gdk_pixbuf_new_subpixbuf. 2004-07-03 Gustavo J. A. M. Carneiro * gtk/gtktreeview.override (_wrap_gtk_list_store_new): Construct object with g_object_newv, then call gtk_list_store_set_column_types(). Fixes #123037. (_wrap_gtk_tree_view_set_search_equal_func): Impl. Most code is copy-paste from _wrap_gtk_tree_view_set_column_drag_function. Fixes #145342. (_wrap_gtk_tree_selection_get_selected_rows): Initialize model to NULL, to avoid crash when the tree is empty. 2004-06-29 Lorenzo Gil Sanchez * setup.py: changed the version to 2.3.93 so we can build it on Windows with correct version information. 2004-06-28 Gustavo J. A. M. Carneiro * gtk/gdk.override (_wrap_gdk_window_set_user_data): Fixup and do some real testing of last changes, to make this really safe using a pair of mutual weak references between the widget and its window. Fixes #145091. 2004-06-27 Gustavo J. A. M. Carneiro * codegen/definitions.py (Definition.guess_return_value_ownership): new method (name to guess default value for caller_owns_return. (MethodDef.__init__): Call guess_return_value_ownership here. (FunctionDef.__init__): And here as well. (get_valid_scheme_definitions): new function to filter out invalid elements in a definition. (ObjectDef.__init__): Use get_valid_scheme_definitions here. (InterfaceDef.__init__): and here (EnumDef.__init__): here too (BoxedDef.__init__): and here (PointerDef.__init__): here as well (MethodDef.__init__): idem (FunctionDef.__init__): idem Paches by Scott Tsai, with a bit of refactoring by me. * gtk/gdk.override (_wrap_gdk_color_parse): Raise TypeError when color cannot be parsed. Fixes #144862. * gtk/gtk.override (_wrap_gtk_adjustment__set_value): Use pygtk_util_pyobject_as_double to convert the value. (_wrap_gtk_adjustment__set_lower): idem (_wrap_gtk_adjustment__set_upper): idem (_wrap_gtk_adjustment__set_step_increment): idem (_wrap_gtk_adjustment__set_page_increment): idem (_wrap_gtk_adjustment__set_page_size): idem (pygtk_util_pyobject_as_double): New utility function to convert any numeric object to C double. * gtk/gdk.override (_wrap_gdk_window_set_user_data): Raise TypeError instead of value error when user data is not of gtk.Widget type. (_wrap_gdk_window_set_user_data): Add weak reference to the widget for increased safety, just in case the widget is ever destroyed before the window, however unlikely that may be... 2004-06-26 Lorenzo Gil Sanchez * gtk/gdk.override (_wrap_gdk_window_set_user_data): only allow GtkWidgets to be the user data (_wrap_gdk_display_list_devices): only get GtkWidgets to be simetric with _wrap_gdk_window_set_user_data * gtk/gtk.defs : modified the parameters of some GtkNotebook methods so they can accept NULL arguments * gtk/gtk.override: removed the _wrap_gtk_notebook_insert_page and _wrap_gtk_notebook_set_tab_label since they are not needed anymore with the changes to gtk/gtk.defs 2004-06-20 Scott Tsai * codegen/argtypes.py (ObjectArg.write_return): Check for NULL GObject before unreffing. Fixes Bug 137086 (gtk.gdk.window_lookup assertion). (reviewed by Gustavo Carneiro) 2004-06-20 Gustavo J. A. M. Carneiro * gtk/gtkmodule.c (init_gtk): Just like GtkWindow, register custom sink function for GtkInvisible type. * codegen/codegen.py (GObjectWrapper.get_initial_constructor_substdict): Removed special treatment of GtkInvisible, no longer needed. * gtk/gtkmodule.c (sink_gtkinvisible): Copy-paste from sink_gtkwindow. * pygobject.c (pygobject_new_with_interfaces): Add hack to workaround python tp_(get|set)attr slot inheritance bug. Fixes pygtk bug #144135 (gtk.gdk.GC attributes not working). 2004-06-18 Lorenzo Gil Sanchez * gtk/gdk.override (_wrap_gdk_window_get_user_data): finally I got it working with Gustavo's help * gtk/gdk.override (_wrap_gdk_window_get_user_data): make it compile again * gtk/gdk.defs (get_user_data): added so we can implement _wrap_gdk_window_get_user_data * gtk/gdk.override (_wrap_gdk_window_get_user_data): implemented so we can retrieve the GtkWidget of a GdkWindow. By the way, is it possible to know if a gpointer is a PyObject? * gtk/gtk.override (_wrap_gtk_notebook_insert_page): allow to insert pages without a tab_label widget (i.e None) so a default one is created by GTK+. (_wrap_gtk_notebook_set_tab_label): allow to set a None tab_label widget so a default one is created by GTK+ 2004-06-14 John Finlay * gtk/gtk.override (_wrap_gtk_clipboard_set_with_data) (_wrap_gtk_drag_dest_set) (_wrap_gtk_drag_dest_find_target) (_wrap_gtk_drag_dest_set_target_list) (_wrap_gtk_drag_source_set) (_wrap_gtk_drag_begin) (_wrap_gtk_selection_add_targets) Avoid segfault if first item in a py_targets tuple is None by forcing first item to be a string. (_wrap_gtk_drag_dest_get_target_list) target_list should not be unreffed. 2004-06-14 Lorenzo Gil Sanchez * gtk/gtkwidget.override (_wrap_gtk_widget_hide_on_delete): added dummy args so you can do win.connect ('delete-event', win.hide_on_delete) 2004-06-13 Gustavo J. A. M. Carneiro * gtk/gtkmodule.c (sink_gtkobject, init_gtk): Add custom sink function, that increments reference count of newly created GtkWindow's. Solution provided by James Henstridge, code by Jon Trowbridge. Fixes "Bug 122569: gtk.Window derived class segfaults." * codegen/codegen.py (GObjectWrapper.get_initial_constructor_substdict): Special treatment for GtkWindow no longer necessary due to the custom sink function. 2004-06-12 Johan Dahlin * gtk/gtk.override (_wrap_gtk_accel_groups_from_object): For Kiko. 2004-06-11 Johan Dahlin * gtk/gdk.override (pygdk_filter_func_marshal): Return a GdkEventType and not a PyObject. Fixes bug 143420 (Tim Evans). 2004-06-09 John Finlay * gtk/gtk.override (_wrap_gtk_action_group_add_radio_actions) Fix bug preventing callback being connected. Fixes #144022. Thanks to Steve Chaplin. 2004-06-09 Lorenzo Gil Sanchez * examples/gtk/widget.py (PyGtkWidget.do_size_request): change the allocation parameter to requisition so we have a more clear example. 2004-06-07 Gustavo J. A. M. Carneiro * examples/gtk/widget.py: Don't manually send configure events. Instead, override size-request, taking the exact size of the text and border width into consideration. 2004-06-06 Johan Dahlin * gtk/gdk.override (_wrap_gdk_event_tp_setattr): Add GDK_PROPERTY_NOTIFY attributes. 2004-06-04 Johan Dahlin * gobjectmodule.c (pyg_param_spec_getattr): Add support for paramspec.default_value for GParamSpec types that support it 2004-06-04 Lorenzo Gil Sanchez * gobjectmodule.c (initgobject): added gobject.TYPE_UNICHAR 2004-06-04 Johan Dahlin * gtk/gtkwidget.override (_wrap_gtk_widget_class_install_style_property): Impl * gtk/gtkcontainer.override (_wrap_gtk_container_class_list_child_properties): Rename first kwlist argument to klass (from widget), class should be a GObjectClass and not a GtkWidgetClass (_wrap_gtk_container_class_install_child_property): Impl. * gtk/gtk.defs: Change a couple of methods to functions and set correct class * pygobject.h: Add pyg_param_spec_from_object * gobjectmodule.c (create_property): Don't install the property here, return it instead. And don't require a GObjectClass as argument (pyg_param_spec_from_object): New function (add_properties): Update to new create_property (pygobject_api_functions): Export pyg_param_spec_from_object * gtk/gtkcontainer.override (_wrap_gtk_container_class_list_child_properties): Implement for Lorenzo. * gtk/gdk.override (_wrap_gdk_event_tp_setattr): Fix up *_CHECK calls * examples/gtk/widget.py: Add a new example of subclassing a GtkWidget. * Makefile.am (EXTRA_DIST): Add widget.py * pygobject.c (pygobject_new): guard object_ref call * examples/gtk/uimanager.py: Some more polishing, it'll never be finished! * gtk/gtkwidget.override (_wrap_gtk_widget__set_allocation): Impl. (_wrap_gtk_widget__set_window): Impl. * gtk/gtkclist.override (_wrap_gtk_clist_new_with_titles): put all clist overrides here. * gtk/gtk.override (_wrap_gtk_paint_polygon): Move gtk_widgets_* ignore definitions to gtkwidget.override and clist_* to gtkclist.override (_wrap_gtk_action_group_add_actions): guard ref call (_wrap_gtk_action_group_add_toggle_actions): ditto (_wrap_gtk_action_group_add_radio_actions): ditto * gtk/gtk-types.c (_pygtk_style_helper_new): guard ref call. * gtk/gdk.override (_wrap_gdk_event_tp_setattr): Impl. (I'll have nightmares about this code) (_wrap_gdk_window_new): Clean up a little bit: Proper use of enums and set a boolean to b instead of i. Block unref calls for thread safety issues. (_wrap_gdk_window_set_user_data): Impl. This is also a hairy implementation: If it's a GtkWidget, get the GObject, otherwise put the real pyobject in there. Maybe we should just always put the widget in there. (_wrap_gdk_window_add_filter): Thread safety. 2004-05-30 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_store_reorder) Fix bug I inserted in check for GtkTreeIter. 2004-05-29 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_view_set_column_drag_function) Add. Fixes #127504. 2004-05-28 John Finlay * gtk/gtkcontainer.override (_wrap_gtk_container_child_set) (_wrap_gtk_container_child_get) (_wrap_gtk_container_add_with_properties) Check that at least one arg is passed to method to avoid segfault. * gtk/gtk.override (_wrap_gtk_entry_new) * gtk/gtk.defs (gtk_entry_new) (gtk_entry_new_with_max_length) Apply patch from Scott Tsai. Fixes #139190. 2004-05-28 Johan Dahlin * examples/gtk/uimanager.py: Add a toolbar and fix shortcuts. 2004-05-27 John Finlay * gtk/gtktreeview.override Ignore: gtk_tree_view_column_pack_start gtk_tree_view_column_pack_end gtk_tree_view_column_clear gtk_tree_view_column_set_attributes - these are now covered by the GtkCellLayout interface. Couldn't do the same for gtk_tree_view_column_add_attribute and gtk_tree_view_column_clear_attributes due to backward compatibility. 2004-05-25 John Finlay * examples/gtk/filechooser.py Fix bug #140946. 2004-05-24 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_view_column_set_cell_data_func) Change this override to override gtk_cell_layout_set_cell_data_func - covers all objects that implement GtkCellLayout in GTK+ 2.4 including GtkTreeViewColumn.. Ignore gtk_tree_view_column_set_cell_data_func. 2004-05-24 Johan Dahlin * gtk/gdk.override (_wrap_gdk_keymap_translate_keyboard_state): Remove double ;, fixes compilation with gcc 2.95.3 on FreeBSD. 2004-05-22 Johan Dahlin * NEWS: Don't lie about the release date. * configure.in: post release version bump === PyGtk 2.3.92 === 2004-05-22 Johan Dahlin * NEWS: Update 2004-05-21 Johan Dahlin * gobjectmodule.c (initgobject): Add gobject.pygtk_version (_wrap_g_main_context_iteration): block/unblock (_wrap_g_main_loop_run): ditto 2004-05-21 John Finlay * gtk/gtk-types.c (_pygtk_tree_model_remove_row) Add function to help in row removal from sort and filter models using del (_pygtk_tree_model_set_row) Add support for TreeModelSort and TreeModelFilter setting row values. * gtk/pygtk-private.h (_pygtk_tree_model_remove_row) Add declaration. * gtk/gtktreeview.override (_wrap_gtk_tree_model_tp_setitem) Use _pygtk_tree_model_remove_row() helper function. (_wrap_gtk_tree_model_filter_set_modify_func) Add. Add support to TreeModelSort and TreeModelFilter for Python mapping, number and iter protocols. 2004-05-20 John Finlay * gtk/gtk.defs (gtk_tree_view_column_pack_start) (gtk_tree_view_column_pack_end) Allow expand param to default to TRUE. 2004-05-18 John Finlay * gtk/gtktreeview.override (_wrap_gtk_list_store_remove) Remove this override - generated code is good. * pygobject.c (pygobject_new_with_interfaces) Add new type to the module dict as is done for built-in types. * codegen/argtypes.py Fix bug in non-null default parselist of ObjectArg. Add default handling for AtomArg. * gtk/gtk.defs (gtk_clipboard_get_for_display) (gtk_clipboard_get) Allow args to use default values. 2004-05-16 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_selection_select_range) Raise TypeError if selection mode is not gtk.SELECTION_MULTIPLE 2004-05-15 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_selection_select_all) Raise TypeError if selection mode is not gtk.SELECTION_MULTIPLE 2004-05-13 John Finlay * gtk/gtk.defs (gtk_selection_data_set_text) Default the text len param to -1. 2004-05-11 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_view_column_set_cell_data_func) Allow func to be None to unset the function. 2004-05-10 John Finlay * pygobject.c (pygobject_new) Bump refcount of types created by pygobject_new_with_interfaces. Fixes #141042 * gtk/gtk.defs (gtk_notebook_append_page) (gtk_notebook_append_page_menu) (gtk_notebook_prepend_page) (gtk_notebook_prepend_page_menu) (gtk_notebook_insert_page) (gtk_notebook_insert_page_menu) These return gint in GTK+ 2.4. 2004-05-07 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_model_get) Add. 2004-05-03 John Finlay * gtk/gtktextview.override (_wrap_gtk_text_iter_forward_find_char) (_wrap_gtk_text_iter_backward_find_char) Add. * gtk/gtktreeview.override (_wrap_gtk_tree_store_reorder) Add. (_wrap_gtk_list_store_reorder) Throw exception if indices out of range. * gtk/gtk.override (gtk_accel_group_connect) (gtk_accel_group_disconnect) (gtk_clipboard_set_with_owner) (gtk_clist_set_compare_func) (gtk_color_selection_set_color) (gtk_color_selection_get_color) (gtk_ctree_set_drag_compare_func) Ignore these methods - either deprecated or not needed. (_wrap_gtk_menu_item_toggle_size_request) Add. 2004-05-03 Johan Dahlin * codegen/codegen.py (Wrapper): Add support for tp_as_buffer. 2004-04-25 John Finlay * pango.defs (pango_language_from_string) Rework as a constructor for pango.Language. (pango_language_matches) Rework this as a method for pango.Language. (pango_language_to_string) Add this as a method. * pango.override (_wrap_pango_language_from_string1) (_wrap_pango_language_matches1) Add these to support deprecated pango_language functions. 2004-04-24 John Finlay * pango.override (_wrap_pango_attr_list_filter) Add. (pypango_attr_iterator_get_attrs) Fix memory leak. * pango.defs (pango_font_face_list_sizes) Add definition. * pango.override (_wrap_pango_font_face_list_sizes) Add. * pango.defs (pango_font_family_is_monospace) Add definition. * pango.override (_wrap_pango_font_family_is_monospace) Add two defines to avoid compilation warnings for this function. * pango.defs (pango_fontset_foreach) Add definition. * pango.override (_wrap_pango_fontset_foreach) Add. * pango-types.defs (PangoFontsetSimple) Add class. * pang_defs (pango_fontset_simple_new) (pango_fontset_simple_append) (pango_fontset_simple_size) Add methods for PangoFontsetSimple. 2004-04-23 John Finlay * gtk/gdk.defs (gdk_window_set_accept_focus) (gdk_window_get_group) Add definitions. * pango.defs (pango_attr_fallback_new) Add definition for AttrFallback. * pango.override (_wrap_pango_attr_fallback_new) Add. (pypango_attr_tp_getattr) Add get attribute processing for AttrFallback. * pango.defs (pango_attr_iterator_get_attrs) Add definition. * pango.override (pypango_attr_iterator_get_attrs) Add method. 2004-04-22 John Finlay * gtk/gdk.override (_wrap_gdk_pixbuf_get_file_info) Add. * gtk/gdk.defs (gtk_pixbuf_get_file_info) Add definition. * gtk/gdk.defs (gdk_pixbuf_loader_set_size) (gdk_pixbuf_loader_get_format) (gdk_pixbuf_loader_new_with_mime_type) Add definitions. (gdk_pixbuf_loader_new) Add deprecation warning * gtk/gdk.override (gdk_pixbuf_loader_get_format) Add. * gtk/gdk.override (gdk_query_depths) (gdk_query_visual_types) Add these functions. * gtk/gdk.override (gdk_window_at_pointer) Add. * gtk/gdk.override (gdk_window_at_pointer) Should return None if not on known window. 2004-04-20 John Finlay * gtk/gdk.defs (gtk_colormap_get_screen) Add. * gtk/gdk.override (_wrap_gdk_cursor_new) Add 2 more ways of creating a cursor corresponding to gdk_cursor_new_from_pixbuf and gdk_cursor_new_for_display. * gtk/gdk.override (_wrap_gdk_display_get_maximal_cursor_size) Add. * gtk/gdk.defs (gdk_display_pointer_ungrab) (gdk_display_keyboard_ungrab) Let time_ param default to GDK_CURRENT_TIME. * gtk/gdk.defs (gdk_drawable_draw_pixbuf) Add default value of -1 for the width and height params. gc param can be NULL. * gtk/gdk.override (_wrap_gdk_event_get_state) Add. * gtk/gdk.override (_wrap_gdk_keyval_convert_case) (_wrap_gdk_keymap_get_entries_for_keyval) (_wrap_gdk_keymap_get_entries_for_keycode) (_wrap_gdk_keymap_lookup_key) (_wrap_gdk_keymap_translate_keyboard_state) Add. 2004-04-19 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_view_column_cell_get_position) Add. * gtk/gtk.defs (gtk_ui_manager_add_ui) Allow param action to be NULL. * gtk/gtkwidget.override (_wrap_gtk_widget_style_get_property) (_wrap_gtk_widget_class_list_style_properties) Add keyword arg processing. * gtk/gtk.override (_wrap_gtk_widget_list_mnemonic_labels) Add. * gtk/gdk.override (_wrap_gdk_event_tp_getattr) Add "group" attribute for GDK_KEY_PRESS and GDK_KEY_RELEASE event objects. Fix member list build value bug. 2004-04-18 John Finlay * gtk/gtktreeview.override (_wrap_gtk_tree_model_filter_set_visible_func) Add. (_wrap_gtk_tree_model_filter_convert_child_iter_to_iter) Return the iter instead of passing it in. Throw exceptions on errors. (_wrap_gtk_tree_model_filter_convert_iter_to_child_iter) Return the child iter instead of passing it in. * gtk/gtktreeview.override (gtk_tree_row_reference_new_proxy) (gtk_tree_row_reference_inserted) (gtk_tree_row_reference_deleted) (gtk_tree_row_reference_reordered) Ignore these. * gtk/gtk.defs (gtk_tree_store_move_after) (gtk_tree_store_move_before) Allow position param to be NULL. * gtk/gtk.defs (gtk_tree_view_move_column_after) Allow base_column to be NULL. 2004-04-18 Gustavo J. A. M. Carneiro * gobjectmodule.c (pyg_type_register): Make sure we have a unique GType name by appending -v to the name. Allows registering multiple python classes with the same name in the same module. 2004-04-17 John Finlay * gtk/gtk.defs Add GtkToolItem constructor and method definitions. * gtk/gtk.defs (gtk_tool_item_set_proxy_menu_item) Allow menu_item to be NULL. (gtk_tool_item_set_tooltip) Allow parameters tip_text and tip_private to be NULL. Default these to NULL. * gtk/gtk.defs Make gtk_tooltips_get_info_from_tip_window a method of GtkWindow. * gtk/gtk.override (_wrap_gtk_tooltips_get_info_from_tip_window) Add. * codegen/argtypes.py (GtkTreePath) Remove extra older null assignment - the one assuming a tree path is a tuple. * gtk/gtk.defs (gtk_tree_model_filter_new) Allow root param to default to NULL. 2004-04-16 John Finlay * gtk/gtk.override Expanded gtk_draw_* since it excluded new gtk_draw_insertion_cursor function. * gtk/gtk.override Add definition of PyGdkDrawable_Type * gtk/gtk.defs (gtk_draw_insertion_cursor) area can be NULL. (gtk_text_buffer_paste_clipboard) override_location can be NULL. * gtk/gtktextview.override (_wrap_gtk_text_tag_table_foreach) Add. * gtk/gtk.override (_wrap_gtk_toggle_tool_button_new) Allow an optional stock_id parameter. (gtk_toggle_tool_button_new_from_stock) Ignore. * gtk/gtk.defs (gtk_toolbar_insert) (gtk_toolbar_get_item_index) (gtk_toolbar_get_n_items) (gtk_toolbar_get_nth_item) (gtk_toolbar_get_drop_index) (gtk_toolbar_set_drop_highlight_item) (gtk_toolbar_set_show_arrow) (gtk_toolbar_get_show_arrow) (gtk_toolbar_get_relief_style) Add new toolbar methods from GTK+ 2.4 (gtk_toolbar_append_item) (gtk_toolbar_prepend_item) (gtk_toolbar_insert_item) (gtk_toolbar_insert_stock) (gtk_toolbar_append_space) (gtk_toolbar_prepend_space) (gtk_toolbar_insert_space) (gtk_toolbar_remove_space) (gtk_toolbar_append_element) (gtk_toolbar_prepend_element) (gtk_toolbar_insert_element) (gtk_toolbar_append_widget) (gtk_toolbar_prepend_widget) (gtk_toolbar_insert_widget) (gtk_toolbar_set_icon_size) (gtk_toolbar_unset_icon_size) Add deprecations for these old toolbar methods. * gtk/gtk.override (_wrap_gtk_toolbar_append_item) (_wrap_gtk_toolbar_prepend_item) (_wrap_gtk_toolbar_insert_item) (_wrap_gtk_toolbar_insert_stock) (_wrap_gtk_toolbar_append_element) (_wrap_gtk_toolbar_prepend_element) (_wrap_gtk_toolbar_insert_element) Add deprecation warnings. * gtk/gtk.defs (gtk_toolbar_set_drop_highlight_item) Allow tool_item parameter to be NULL * gtk/gtk.defs Add GtkToolButton constructor and method definitions. * gtk/gtk.override (_wrap_gtk_tool_button_new) Allow specifying stock_id or icon_widget - label combination. 2004-04-16 Johan Dahlin * configure.in: Post release version bump === PyGtk 2.3.91 === 2004-04-16 Johan Dahlin * NEWS: Update 2004-04-15 Gustavo J. A. M. Carneiro * pygboxed.c (PyGBoxed_Type, PyGPointer_Type): idem. * pygobject.c (PyGObject_Type): idem. * gobjectmodule.c (PyGInterface_Type): Typecast tp_free slot to 'freefunc' to avoid compiler warning. * pygobject.h: Conditionally make an alias for function type 'destructor' called 'freefunc', for backward compatibility with those poor souls still stuck with Python 2.2. * codegen/codegen.py (Wrapper): change typecast of tp_free slot from destructor to freefunc, for compatibility with Python 2.3. 2004-04-15 John Finlay * gtk/gtk.defs Add defs for GtkRadioAction * gtk/gtk.override (_wrap_gtk_radio_action_set_group) (_wrap_gtk_radio_action_get_group) Add. * gtk/gtk.defs Add defs for GtkRadioToolButton * gtk/gtk.override (_wrap_gtk_radio_tool_button_new) (_wrap_gtk_radio_tool_button_set_group) (_wrap_gtk_radio_tool_button_get_group) Add. * gtk/gtk.override (_wrap_gtk_scale_get_layout_offsets) Add. * gtk/gtk.defs (gtk_selection_owner_set_for_display) Allow widget param to be NULL. 2004-04-14 John Finlay * gtk/gtk.override (_wrap_gtk_icon_size_lookup_for_settings) Add. * gtk/gtk.override (_wrap_gtk_icon_theme_get_search_path) (_wrap_gtk_icon_theme_set_search_path) Add. * gtk/gtk.override (_wrap_gtk_icon_theme_list_icons) Add. * gtk/gtk-types.defs (IconInfo) Add GtkIconInfo boxed type. * gtk/gtk.defs (gtk_icon_info_copy) Add (caller-owns-return #t) * gtk/gtk.override (_wrap_gtk_icon_info_get_embedded_rect) Add. (_wrap_gtk_icon_info_get_attach_points) Add. * gtk/gtk.defs (gtk_list_store_move_sfter) Allow position to be NULL (gtk_list_store_move_before) Allow position to be NULL * gtk/gtk.defs (gtk_menu_set_screen) Allow screen to be NULL. 2004-04-13 Johan Dahlin * gobjectmodule.c (pyg_register_interface): Move quark_to_string to initgobject * codegen/codegen.py: Add support for tp_new 2004-04-13 John Finlay * gtk/gtk.override (_wrap_gtk_clipboard_wait_for_targets) Add. * gtk/gtk.override (_wrap_gtk_clipboard_request_contents) (_wrap_gtk_clipboard_request_text) (_wrap_gtk_clipboard_request_targets) Add. * gtk/gtk.defs More gtk_ function cleanup. 2004-04-12 John Finlay * gtk/gtk.override (_wrap_gtk_action_group_add_radio_actions) Fix bugs in connecting callback to first radio action. 2004-04-12 Johan Dahlin * pygtk.spec.in: Update, with help of Jason Tackaberry and Thomas Vander Stichele 2004-04-11 Johan Dahlin * NEWS: Add 2.3.90 stuff here, forgot to do it! * AUTHORS: Update, add the current active developers here * pygobject.c (pygobject_new_with_interfaces): New function. (pygobject_lookup_class): Modify so we're not traversing parents for unknown types but instead creating new types when they're not registered. We're also using pygobject_new_with_interfaces so interfaces gets attached correctly. Partial fix for bug 129032 * gobjectmodule.c: Add quark and attach the PyTypeObject for GInterfaces. * pygobject-private.h: Make PyGInterface_Type and pyginterface_type_key public 2004-04-10 John Finlay * gtk/gtk.override (_wrap_gtk_action_group_add_toggle_actions) Make method more like C API - add is_active processing. (_wrap_gtk_action_group_add_radio_actions) Make method more like C API - remove per item callback processing, add value and on_change parameters and processing. Add Runtime exceptions. * gtk/gtk.defs (gtk_clipboard_set_text) Allow len param to default to -1 - calculates text length. 2004-04-10 Johan Dahlin * gtk/__init__.py: Move GtkDeprecatedWarning ... Remove global module import and do it in the class _Deprecated and delete _Deprecated when done. (_Deprecated.__repr__): Add. * gtk/gtkmodule.c: ... here, and rename it to DeprecatedWarning 2004-04-10 Gustavo J. A. M. Carneiro * configure.in: Bump version up to 2.3.91. * examples/pygtk-demo/demos/images.py: Add 'Images' demo ported to python by Joey Tsai (see bug #100873). * Makefile.am (EXTRA_DIST): Add floppybuddy.gif and alphatest.png, copied from gtk+, for pygtk-demo. 2004-04-09 John Finlay * gtk/gtk.defs (gtk_action_group_add_action_with_accel) The accelerator can be NULL to force stock accel usage. 2004-04-09 Gustavo J. A. M. Carneiro * pygtype.c (pyg_value_as_pyobject): Convert GValueArray to python list, not tuple, as per comment in bug 129966. * gobjectmodule.c (initgobject, _pyg_strv_from_gvalue) (_pyg_strv_to_gvalue): Register GValue<->PyObject conversion functions for boxed type G_TYPE_STRV. Code is taken from gnome-python (bonobomodule.c), except that conversion to python object creates python list instead of tuple, as per comment in bug 129966. 2004-04-09 Johan Dahlin * gtk/__init__.py: Add deprecation warnings for all deprecated functions. 2004-04-08 John Finlay * gtk/gtk.override (_wrap_gtk_file_filter_filter) Add. (_wrap_gtk_file_filter_add_custom) Add. * gtk/gtk.override (_wrap_gtk_font_button_new) Add to allow optional fontname parameter. * gtk/gtk.override (_wrap_gtk_action_get_proxies) Add. 2004-04-07 John Finlay * gtk/gtk.override (_wrap_gtk_file_chooser_widget_new) Add to allow action and backend as optional parameters similar to _wrap_gtk_file_chooser_dialog_new. 2004-04-07 Johan Dahlin * gtk/gtk.override (_wrap_gtk_color_button_get_color): Remove unused variable. * configure.in: Nicer error messages (pytk-2-2 branch instead of gnome-gtk-1-2) * codegen/codegen.py (Wrapper.write_methods): Use the methods name (instead of the "c" name) so we get a nicer output. 2004-04-06 John Finlay * gtk/gtk.override (_wrap_gtk_file_chooser_get_filenames) (_wrap_gtk_file_chooser_get_uris) (_wrap_gtk_file_chooser_list_filters) (_wrap_gtk_file_chooser_list_shortcut_folder_uris) (_wrap_gtk_file_chooser_list_shortcut_folders) Add. * gtk/gdk.defs (gdk_pixbuf_new_from_file_at_size) Add. 2004-04-05 Johan Dahlin * gtk/gtk.defs (gtk_entry_new_with_max_length): Remove deprecation flag 2004-04-05 John Finlay * gtk/gtk.override (_wrap_gtk_combo_box_entry_new) Allow a TreeModel and text column to be optionally specified when creating a ComboBoxEntry. Allow model parameter to be None. (_wrap_gtk_combo_box_new) Allow model parameter to be None. * gtk/gtk.override (_wrap_gtk_entry_completion_set_match_func) Add. 2004-04-04 John Finlay * gtk/gtk.defs Removed gtk_ from various define-function definitions so that the function naming is consistent i.e. gtk.function instead of gtk.gtk_function: gtk_accel_map_add_entry, gtk_binding_parse_binding, gtk_combo_box_new_text, gtk_combo_box_entry_new_text, gtk_file_system_error_quark, gtk_file_paths_sort, gtk_file_paths_copy, gtk_file_paths_free, gtk_icon_theme_error_quark, gtk_icon_theme_get_default, gtk_icon_theme_get_for_screen, gtk_icon_theme_add_builtin_icon, gtk_preview_get_info, gtk_tooltips_data_get, gtk_tree_path_new_from_string, gtk_tree_path_new_from_indices and gtk_tree_path_new_first. * gtk/gtk.override (_wrap_gtk_tooltips_data_get1) Add deprecation warning for gtk.gtk_tooltips_data_get(). * gtk/gtk.defs (gtk_cell_layout_pack_start) (gtk_cell_layout_pack_end) Allow the expand param to default to TRUE. 2004-04-04 Gustavo J. A. M. Carneiro * gtk/gdk.override (_wrap_gdk_window_new): If compiling for win32 platform, add a g_object_ref for the newly created GdkWindow. Thanks John Ehresman. Fixes #122755. * gtk/Makefile.am (_gtk_la_CFLAGS): Add -DPLATFORM_WIN32 depending on PLATFORM_WIN32 AM conditional. 2004-04-04 Johan Dahlin * gtk/gtk.defs (icon_set_new): Is not a constructor, patch from Scott Tsai, fixes bug 138576 2004-04-03 John Finlay * gtk/gtk.override (_wrap_gtk_color_button_new) Implement with gtk_color_button_new_with_color() to allow optionally specifying a GdkColor. * gtk/gtk.override (_wrap_gtk_color_button_get_color) Return a GdkColor instead of passing in a GdkColor to be filled in. * gtk/gtk-types.defs Added CellLayout interface and references to it for ComboBox, ComboBoxEntry, TreeViewColumn and EntryCompletion. * gtk/gtk.override (_wrap_gtk_combo_box_new) Allow a TreeModel to be optionally specified when creating a ComboBox. (_wrap_gtk_combo_box_get_active_iter) Return a TreeIter pointing at the active item or None if no active item. * gtk/gtk.override (_wrap_gtk_cell_layout_set_attributes) Added. 2004-04-02 Gustavo J. A. M. Carneiro * acconfig.h: This file is deprecated in newer automake. Removed. 2004-04-02 Johan Dahlin * pygtk-2.0.pc.in (pyexecdir): Add * gtk/gtktreeview.override: Update ignore * gtk/gtk.override (_wrap_gtk_action_group_list_actions) (_wrap_gtk_action_group_add_toogle_actions) (_wrap_gtk_action_group_add_radio_actions): Impl. Update ignore 2004-04-01 John Finlay * gtk/gtk.override (_wrap_gtk_accel_group_connect_by_path) Add. (_wrap_gtk_file_chooser_dialog_new) Fix small bug. 2004-03-31 John Finlay * gtk/gtk.override (_wrap_gtk_alignment_get_padding) Add. === PyGtk 2.3.90 === 2004-03-30 Johan Dahlin * examples/gtk/filechooser.py (response): Updated, call dialog.destroy() * examples/gtk/uimanager.py: New example * gtk/gtk.override (_wrap_gtk_ui_manager_add_ui_from_string): Override, get rid of second argument. * gtk/gtk.defs (gtk_ui_manager_new): is Constructor of GtkUIManager, not GtkUiManager. * gtk/gtk.override (_wrap_gtk_action_group_add_actions): Impl 2004-03-28 Xavier Ordoquy * gtk/gtk-types.defs: Fixes #138476 . Added the Layout class (Patch from scottt) 2004-03-29 Johan Dahlin * gtk/gtk.override (_wrap_gtk_file_chooser_dialog_new): Add backend as fifth argument (_wrap_gtk_progress_bar_new_with_adjustment): Fix constructor, it should return an int, not a PyObject. * gtk/gtk.defs: Remove GtkText, GtkTree and GtkTreeItem. * gtk/gtktreeview.override (_wrap_gtk_list_store_set): Impl. * gtk/gtk.override (_wrap_gtk_button_get_alignment): Impl. (_wrap_gtk_ui_manager_get_toplevels): Impl. 2004-03-28 Johan Dahlin * gtk/gtk.override (_wrap_gtk_file_chooser_dialog_new): Impl, based on gtk_dialog_new * Makefile.am: Add example to EXTRA_DIST * examples/gtk/filechooser.py (filter): New example 2004-03-28 Xavier Ordoquy * gtk/gtk.defs: Updated to match gtk 2.4 API. 2004-03-28 Johan Dahlin * gtk/gtk-types.defs (TreeModelFilter): implements GtkTreeModel and GtkTreeDragSource (FileFilter): Add (FileChooserDialog): implements GtkFileChooser (FileChooser): Add. * gtk/gdk.defs, gtk/gdk.defs: Merge in some changes from 2.4. * gtk/gtk-types.defs: Gtk+ 2.4 API and remove GtkTextLayout (which was accidentally added) * configure.in: Require glib 2.4, gtk+ 2.4 and libglade 2.3.6. * codegen/h2def.py: Add a new option to be able to separate output of objects and functions * gtk/gtk-types.defs: Sort and remove ifdef HAVE_GTK24 for GtkTextSearchFlags * gtk/gtk.override: Remove unneedded ignore statement * gtk/pygtkcellrenderer.h: Cleanup * gtk/pygtktreemodel.h: Ditto * gtk/gtktreeview.override: Add a prototype for pygtk_cell_data_func_marshal 2004-03-27 Johan Dahlin * gtk/gtk.defs (widget_list_style_properties): This is a function, not a method. * pygobject-private.h, pygobject.h, gobjectmodule.c: Make PyGParamSpec_Type and pyg_param_spec_new part of the public API. * gtk/gtkwidget.override (_wrap_gtk_widget_style_get_property) (_wrap_gtk_widget_class_list_style_properties): Impl. Fixes bug 138104 * setup.py: Removed installation of libglade and libxml2 DLLs on win32 (these are now part of the dropline installer). patch by Cedric Gustin, fixed bug 136731 * gtk/gtk.override (_wrap_gtk_main_quit): Override, this does two things differently from the old (auto generated) version, first it checks if gtk_main_level() is non zero and raises a RuntimeError if it's not. It also allows arguments and completely ignores them, this is closer to the old 0.6.x behavior and suitable for usage like this: obj.connect(signal, gtk.main_quit), fixes bug 136705 * gtk/gtkmodule.c (python_do_pending_calls): Check gtk_main_level before calling gtk_main_quit, since it might be called outside of a mainloop (eg, gtk.main_iteration). Avoids warnings on the console as found in example in bug 138163 2004-03-25 Johan Dahlin * examples/glade/autoconnect.py: New small example 2004-03-22 Xavier Ordoquy * gtk/gtk.defs: Removed the _gtk_* functions as the are private and not exported in the module. 2004-03-22 Xavier Ordoquy * codegen/h2def.py: Added the interface detection (interface -*Iface- inheriting from GTypeInterface) 2004-03-20 Gustavo J. A. M. Carneiro * gtk/gtkmodule.c (init_gtk): Define constants for the predefined atoms listed in . Fixes #137091 ("constants" for selection atoms). * gtk/gdk.override (_wrap_gdk_atom_intern): Override; return Py_None if gdk_atom_intern returns GDK_NONE. Fixes #137093 "gtk.gdk.atom_intern always creates an atom". (headers): Add protype for have_numpy() to avoid later implicit declaration warning. 2004-03-18 Xavier Ordoquy * codegen/h2def.py: Added the interface detection (class inheriting from GTypeInterface) 2004-03-18 Xavier Ordoquy * gtk/gtk.defs: Cosmetic changes to match h2def output exactly in order to ease further merges. 2004-03-12 Johan Dahlin * gtk/gtk.override (_wrap_gtk_accel_group_connect_group): 2004-03-12 Xavier Ordoquy Fixes #136811 (h2def ignores some functions) * codegen/h2def.py: skips the extern "C" === PyGTK 2.2.0 === 2004-03-11 Johan Dahlin * configure.in: Bump version * setup.py (MINOR_VERSION): Bump version * NEWS: Update 2004-03-09 Xavier Ordoquy * codegen/code-coverage.py: utility to scan the unmatched symbols from the binded libraries. Written by James Henstridge (see bug #71465) 2004-03-09 Xavier Ordoquy Fixes #136597 (gtkgl still referenced in build files) * gtk/.cvsignore: * gtk/makefile.msc: Removed references to gtkgl. 2004-03-09 Johan Dahlin * gtk/gdk.override (pygdk_filter_func_marshal): Impl. (_wrap_gdk_window_add_filter): Impl. 2004-03-08 Gustavo J. A. M. Carneiro * configure.in: Remove leftover definition of gtkgl_required_version. * gobjectmodule.c (pyg_enum_add_constants): Delegate to pyg_flags_add_constants if the GType is really a flags type instead of enum. (pyg_flags_add_constants): Delegate to pyg_enum_add_constants if the GType is really a enum type instead of flags. Based on John Ehresman's patch. Fixes (better) #136204 (GtkTextSearchFlags warning). 2004-03-07 Hagen Moebius * codegen/docextract.py: avoid the non-uniform behavior of gtk-doc to have an imaginary "returns" parameter. it is converted into the -tag. 2004-03-07 Gustavo J. A. M. Carneiro * examples/pygtk-demo/gtk-logo-rgb.gif, * Makefile.am (EXTRA_DIST): Add gtk-logo-rgb.gif, because of stock icon registration example. * examples/pygtk-demo/demos/appwindow.py: Fix stock icon registration. 2004-03-06 John Ehresman * gtk/gtktreeview.override (map_expanded_rows_cb) (_wrap_gtk_tree_view_map_expanded_rows): Wrapper for GtkTreeView.map_expanded_rows. Fixes #136309. Review and minor enhancement by Gustavo Carneiro. * gtk/pygtktreemodel.c (pygtk_generic_tree_model_iface_init) (pygtk_generic_tree_model_unref_node) (pygtk_generic_tree_model_ref_node): Add support for optional TreeModel ref_node & unref_node callbacks. Fixes #136312. Reviewed by Gustavo Carneiro. * gtk/gtktreeview.override (pygtk_cell_data_func_marshal): Fix reference problem on cunote->data. Fixes #136306 ( pygtk_cell_data_func_marshal ref counting in 2.2.0rc1 ). Reviewed by Gustavo Caneiro. 2004-03-06 Gustavo J. A. M. Carneiro * gtk/makefile.msc: use PYGTK_CODEGEN_DEFINES here too. * gtk/gtk-types.defs: Make TextSearchFlags an enum or flags type, conditional on HAVE_GTK24 being defined. Fixes #136204. * gtk/Makefile.am (.defs.c): Pass $(PYGTK_CODEGEN_DEFINES) to code generator, for conditional compiling of GTK+ 2.4 features. * configure.in: Check for gtk+ >= 2.3.4 and, if found, define PYGTK_CODEGEN_DEFINES="-DHAVE_GTK24". * codegen/defsparser.py (DefsParser.ifndef): Implement (ifndef ...) (DefsParser.ifdef): args no longer includes the function name (ifdef) as first element of list, so needed to offset indices to make it work again. (DefsParser.ifndef): idem. 2004-03-05 Johan Dahlin * codegen/codegen.py (Wrapper.write_constructor): Cleaning up write_source and starting to refactor Wrapper a little bit, to avoid so much code duplication * gtk/gdk.override (_wrap_gdk_pixbuf_fill): This should fix both bug 136205 and bug 136205. We're now allowing both long and int and converts them properly. 2004-03-04 Johan Dahlin * gtk/gdk.override (_wrap_gdk_pixbuf_get_pixels_array): New function (_wrap_gdk_pixbuf_get_pixels_array): Deprecate, in favor of .get_pixels_array(), based on Patch by Tim Evans, fixes bug 90255 * pygobject.c (pygobject_chain_from_overridden): * pygtype.c (pyg_signal_class_closure_marshal): Fixes for bug 132704, Patch by John Ehresman. * gtk/gdk.override (have_numpy): New function, to initialize/check numpy (_wrap_gdk_pixbuf__get_pixel_array): Use it here (_wrap_gdk_pixbuf_new_from_array): and here Patch by Tim Evans, fixed bug 122786 2004-03-03 Graham Carlyle * gobjectmodule.c (pyobject_free): block/unblock threads around Py_DECREF, because we may not hold the interpreter lock at this point. Fixes #135963 (gc of gtk.ListStore aborts intrepeter after gtk.threads_init() called). Reviewed by Gustavo Carneiro. 2004-03-02 Johan Dahlin * gtk/gdk.override (_wrap_gdk_event_tp_getattr): Add GdkEventKey.hardware_code. Fixes bug 129032, patch by Laur Ivan. 2004-03-01 Johan Dahlin * codegen/codegen.py (Wrapper.write_methods): Check for defined methods in the override file. (Wrapper.write_functions): Ditto for functions * codegen/override.py (Overrides.__parse_override): Clean up a little and add some docstrings. Also add a new keyword, define (Overrides.get_functions, Overrides.get_defines_for) (Overrides.function, Overrides.define): New methods. 2004-02-28 Gustavo J. A. M. Carneiro * gtk/gtk.override (_wrap_gtk_accel_group_connect): Add wrapper for gtk_accel_group_connect. 2004-02-24 Gustavo J. A. M. Carneiro * gtk/gtkmodule.c, gtk/pygtk.h: Make pygdk_rectangle_from_pyobject a public API function. Fixes #135279. 2004-02-24 Johan Dahlin * gtk/gtk.override (_wrap_gtk_stock_list_ids): Plug a leak. * pygobject.c (pygobject_chain_from_overridden): signa->signal 2004-02-23 Gustavo J. A. M. Carneiro * gtk/gdk.defs (GdkDrawable.get_image): Add caller-owns-return, as suggested by John D. Hunter. Fixes #133681. * gtk/gtk.override (_wrap_gtk_menu_popup): accept large long integers for the 'time' argument. 2004-02-23 Xavier Ordoquy * Makefile.am: * gtk/Makefile.am: applied patch from Naofumi Yasufuku. Fixes bug 121339 (dsextras.py installation directory). 2004-02-22 Gustavo J. A. M. Carneiro * gtk/gdk.override (_wrap_gdk_pixbuf_new_from_array) (_wrap_gdk_pixbuf_new_from_array): apply Tim Evans' patch to create pixbuf from data (string) or from a Numeric Python array. 2004-02-22 Xavier Ordoquy * codegen/h2def.py: don't expect a whitespace after the type name Fixes bug #128988, patch from Jon Willeke. 2004-02-19 Gustavo J. A. M. Carneiro * gtk/gtktreeview.override (pygtk_cell_data_func_marshal): Fix multiple python object reference leaks. 2004-02-14 Gustavo J. A. M. Carneiro * gtk/gtk.override (_wrap_gtk_binding_entry_remove): impl. * gtk/gtk.defs (binding_entry_remove): remove gtk_ prefix from function name. 2004-02-10 Seth Nickell Reviewed by: random luser * gtk/gdk.override: Change type of argument in signature for gdk.event_get_axis from "d" to "i" so that get_axis works 2004-01-14 Johan Dahlin * gtk/pygtktreemodel.c (pygtk_generic_tree_model_iter_n_children): Allow iter to be set to NULL, based on patch by Don Allingham Fixes bug 125172 2003-12-24 Gustavo J. A. M. Carneiro * pygtype.c (pyg_value_as_pyobject): Add special handling for GValueArray, converting it to a tuple while calling pyg_value_as_pyobject recursively for each inner value. 2003-12-23 James Henstridge * gtk/gtktreeview.override (pygtk_tree_selection_get_selected_rows): implement (fixes bug #111489). * codegen/h2def.py (clean_func): apply patch from Jon Willeke to strip out eg. G_BEGIN_DECLS, which was tripping up some of the following regexps (fixes bug #129414). * pygobject.c (pygobject_get_property): explicitly check if the property is readable first, and raise an exception otherwise (pygobject_set_property): check if property is readable (fixes bug #121544). 2003-12-22 James Henstridge * setup.py: distutils fixes from Alif Wahid (bug #123014). * gtk/gdk.override (ignore-win32): ignore gdk_font_get_display. * gtk/gtk.override (ignore): ignore plug construct functions. (ignore-win32): ignore gtk_plug_new_for_display. * gtk/gdk.defs (pixmap_foreign_new_for_display): caller owns return. (pixmap_foreign_new): same here (bug #129754). (window_foreign_new): same here. (window_foreign_new_for_display): same here. 2003-12-20 Gustavo J. A. M. Carneiro * codegen/codegen.py (Wrapper.get_initial_constructor_substdict): now receives the constructor FunctionDef as argument. (Wrapper.write_constructor): Pass the constructor get_initial_constructor_substdict. (GObjectWrapper.get_initial_constructor_substdict): Receive/pass constructor argument. If constructor's caller_owns_return flag is set to #f, add an extra g_object_ref(self->obj). (GBoxedWrapper.get_initial_constructor_sub): Receive/pass extra constructor argument. (GPointerWrapper.get_initial_constructor_substdict): idem. 2003-12-17 James Henstridge * gtk/gtk-types.defs (TextSearchFlags): GtkTextSearchFlags is a flags value, rather than an enum. 2003-12-16 James Henstridge * configure.in (CFLAGS): add -fno-strict-aliasing to CFLAGS if the compiler supports it. The Python API breaks some of the strict aliasing rules. * acinclude.m4 (JH_ADD_CFLAG): new macro to check whether the compiler supports a particular cflag. * codegen/codegen.py (GInterface.get_initial_class_substdict): GInterface wrappers should be sizeof(PyObject), since they are mixins. 2003-12-19 Johan Dahlin * gtk/gdk.defs (fill): Change to guint32. Patch by hyriand@thegraveyard.org. Fixes 121611. * gtk/pygtkcellrenderer.c (pygtk_generic_cell_renderer_start_editing): Allow return values that are NULL. Patch by Tim Evans, fixes #122786 * gtk/gtktreeview.override (_wrap_gtk_tree_model_iter_children): Allow parent to be None. Patch by Benjamin CAMA, fixes #124593 * gtk/gtk.defs: Allow all GdkColor arguments for gtk_widget_modify_* to be null. Patch by jkluebs@luebsphoto.com, fixes #127178 (GtkTreeView.expand_row): Set return value to gboolean. Patch by Doug Quale, fixes #126406 2003-12-18 Johan Dahlin * gtk/gtk.defs (set_tip): Allow null for tip_text. Patch by John Ehresman, fixes #128623. * gtk/pygtktreemodel.c: handle None iterator values. Patch by John Ehresman, fixes #126479. 2003-12-09 Johan Dahlin * gtk/gtktreeview.override (_wrap_gtk_list_store_reorder): Impl. 2003-12-05 Johan Dahlin * gtk/gtktreeview.override (pygtk_tree_selection_foreach_marshal): Increase the ref count on Py_None (#128448, Vsevolod Fedorov) * gtk/gtk-types.c (pygtk_tree_model_row_get_parent): Swap parent and child argument. (#123605, patch by Steve Chaplin) 2003-10-23 Johan Dahlin * gtk/gtk.override (_wrap_gtk_item_factory_create_items): Use GdkPixbuf objects instead of raw strings, Thanks to Rob Melby for the patch, #123456 * gtk/gtkwidget.override (_wrap_gtk_widget_size_request): pass back the values instead of pointers to them. Thanks to Rob Melby for the patch, #125272 2003-09-17 James Henstridge * gtk/gtk.override (_wrap_gtk_clipboard_set_with_data): wrap function. 2003-09-16 James Henstridge * gtk/gdk.override (_wrap_gdk_window_set_geometry_hints): add wrapper. (gdk_window_peek_children): ignore. (_wrap_gdk_window_set_icon_list): add wrapper. (_wrap_gdk_screen_get_setting): add wrapper (this one spews lots of warnings though. Not sure how to fix properly). 2003-09-15 James Henstridge * gtk/gdk.override (_wrap_gdk_display_get_window_at_pointer): add wrapper. (_wrap_gdk_drag_find_window_for_screen): add wrapper. * gtk/gtkgl*: remove files. * gtk/Makefile.am: remove gtkgl binding. * configure.in (build_gtkgl): remove gtkgl bindings. 2003-09-04 James Henstridge * gtk/gtk.override (headers): add defs for GdkDisplay and GdkScreen * gtk/gtk.defs, gtk/gtk-types.defs: update for 2.2 APIs. Covers bug #113224, #113908, #117929 and #121031. * gtk/gdk.override (_wrap_gdk_pixbuf_get_formats): implement function. Returns a list of dictionaries (bug #118253). 2003-09-03 James Henstridge * gtk/gdk.override: add some overrides for GdkDisplay and GdkScreen. * gtk/Makefile.am (gtk_overrides): gtk.c doesn't depend on gdk.override. * gtk/gdk.override: hack so that GDK_DISPLAY() is the cast macro. * gtk/gdk.defs, gtk/gdk-types.defs: incorporate new 2.2 APIs. * configure.in: set version number to 2.1.0 so that it differs from the 2.0 branch. 2003-09-02 James Henstridge * ChangeLog.pre-2-0: rename old change log.