[prev in list] [next in list] [prev in thread] [next in thread]
List: php-gtk-dev
Subject: Re: [PHP-GTK-DEV] GtkTreeView get_cursor patch
From: Adam Lebsack <adam () ruffdogs ! com>
Date: 2006-02-28 20:45:58
Message-ID: 3EB094C2-3E73-4419-893D-453D2C07D24C () ruffdogs ! com
[Download RAW message or body]
Andrei,
Upon further inspection, it looks like it may be partially the fault
of my PHP code, I just want to check.
Basically, between get_cursor calls, I'm calling $treeview->set_model
(&new GtkListStore(Gtk::TYPE_STRING));
Looks like that clears out any cursor selection on the treeview, and
get_cursor returns a NULL path. Next time it's called like that, it
segfaults, so it seems the set_model doesn't set any keyboard focus
information on the treeview.
Adam
On Feb 27, 2006, at 8:24 PM, Andrei Zmievski wrote:
> Can you please provide a small script reproducing the problem? I
> tried calling the function several times and it works.
>
> -Andrei
>
>
> On Feb 27, 2006, at 8:13 AM, Adam Lebsack wrote:
>
>> Andrei,
>>
>> That function is casing a segfault now.... After calling it a
>> couple times, it just crashes the program. My version didn't do
>> this, and I struggled to figure out why, but couldn't. That's
>> probably why my code was a bit ugly. :)
>>
>> Got any ideas?
>>
>> Thanks,
>> Adam
>>
>> On Feb 23, 2006, at 10:00 PM, Andrei Zmievski wrote:
>>
>>> Applied, with some modifications.
>>>
>>> -Andrei
>>>
>>>
>>> On Feb 14, 2006, at 8:57 AM, Adam Lebsack wrote:
>>>
>>>> Hey guys,
>>>>
>>>> 've been doing some development with php-gtk2 and I needed a
>>>> function implemented, so I uhhh... implemented it. It's
>>>> GtkTreeView::get_cursor.
>>>>
>>>> I've included the patch. Could we get this override into the
>>>> CVS tree? Thanks!
>>>>
>>>> Adam Lebsack
>>>>
>>>> --- php-gtk/ext/gtk+/gtktreeview.overrides 2006-02-13
>>>> 20:09:54.000000000 -0700
>>>> +++ php-gtk.patched/ext/gtk+/gtktreeview.overrides 2006-02-10
>>>> 16:39:30.000000000 -0700
>>>> @@ -1020,6 +1020,32 @@
>>>> }
>>>> %%
>>>> +override gtk_tree_view_get_cursor
>>>> +PHP_METHOD
>>>> +{
>>>> + GtkTreePath *path = NULL;
>>>> + GtkTreeViewColumn *column = NULL;
>>>> + zval *php_path = NULL, *php_column = NULL;
>>>> +
>>>> + NOT_STATIC_METHOD();
>>>> + gtk_tree_view_get_cursor(GTK_TREE_VIEW(PHPG_GOBJECT
>>>> (this_ptr)), &path, &column);
>>>> +
>>>> + array_init(return_value);
>>>> + if (path) {
>>>> + phpg_tree_path_to_zval(path, &php_path TSRMLS_CC);
>>>> + phpg_gobject_new(&php_column, (GObject*)column
>>>> TSRMLS_CC);
>>>> +
>>>> + array_init(return_value);
>>>> + add_next_index_zval(return_value, php_path);
>>>> + add_next_index_zval(return_value, php_column);
>>>> + } else {
>>>> + RETURN_FALSE;
>>>> + //MAKE_STD_ZVAL(php_path);
>>>> + //MAKE_STD_ZVAL(php_column);
>>>> + }
>>>> +}
>>>> +
>>>> +%%
>>>> add-arginfo GtkTreeView get_path_at_pos
>>>> static
>>>> ZEND_BEGIN_ARG_INFO(ARGINFO_NAME, 0)
>>>>
>>>>
>>>>
>>>> --
>>>> PHP-GTK Development Mailing List (http://gtk.php.net/)
>>>> To unsubscribe, visit: http://www.php.net/unsub.php
>>>
>>> --
>>> PHP-GTK Development Mailing List (http://gtk.php.net/)
>>> To unsubscribe, visit: http://www.php.net/unsub.php
>>>
>
--
PHP-GTK Development Mailing List (http://gtk.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic