- Предварительный план разработки библиотеки Gtk+ 3.0, mag, 14:32 , 10-Апр-09 (1) +1
- Предварительный план разработки библиотеки Gtk+ 3.0, Frank, 15:05 , 10-Апр-09 (3)
- Предварительный план разработки библиотеки Gtk+ 3.0, Ivan, 15:14 , 10-Апр-09 (4)
- Предварительный план разработки библиотеки Gtk+ 3.0, Lindemidux, 15:47 , 10-Апр-09 (8)
- У меня тут возникла небольшая проблема с GtkToggleAction, sergeyvp, 15:57 , 10-Апр-09 (9)
В моём проекте возникла необходимость переключить состояние чекбокса без издания соответствующего сигнала, то есть втихаря. Но оказалось что сделать это обычным методом g_object_set невозможно из-за стиля написания объектов GTK+.Я задал вопрос по поводу замены в gtktoggleaction.c строки gtk_toggle_action_set_active (action, g_value_get_boolean (value)); на строчку action->private_data->active = g_value_get_boolean (value); чтобы появилась возможность "молчиливого" переключения состояния виджета, но мне ответили что это противоречит стилю написания GTK+ виджетов, а в чём конкретно проблема не объяснили. Уровень моего английского не позволяет устроить полноценную дискуссию на данную тему в списке рассылке разработчиков в связи с чем просьба к русским хакерам -- разъясните мне почему нельзя изменить стиль написания объектов GTK+ так как я это предложил выше?
- У меня тут возникла небольшая проблема с GtkToggleAction, vitek, 22:58 , 10-Апр-09 (36)
- У меня тут возникла небольшая проблема с GtkToggleAction, sergeyvp, 23:27 , 10-Апр-09 (39)
Ну так я на будущее имею ввиду, сейчас я конечно с помощью какого нибудь "костыля" обойдусь, но вот в 3.0 по моему нужна возможность "тихого" переключения свойств виджета, тем более что это очень просто сделать. У меня например самописные объекты реализованы именно так как я описал выше и это позволяет переключать свойства либо с сигналом либо без и при этом не нужно никаких дополнительных обработчиков (костылей).То есть используя метод g_object_set свойство переключается без сигнала, а при использовании метода gtk_widget_set_*** сигнал издаётся и если необходимо выполняются дополнительные обработки. Фактически gtk_widget_set_*** является оболочкой для g_object_set со всеми необходимыми дополнениями.
- У меня тут возникла небольшая проблема с GtkToggleAction, FractalizeR, 00:24 , 11-Апр-09 (42)
- У меня тут возникла небольшая проблема с GtkToggleAction, sergeyvp, 02:10 , 11-Апр-09 (47)
>>> Это не стоит делать по очень простой причине. Нарушается инкапсуляция. Прямого доступа к полям объекта следует избегать всеми силами.Дело в том что именно так и сделано в методах gtk_widget_set_***, это совсем не прямой доступ, это как раз доступ через классовый метод на сколько я понимаю. Суть проблемы в том что архитектура GObjects позволяет реализовать два метода переключения свойств объекта, один через стандартный метод g_object_set другой через оболочку gtk_widget_set_***. Так вот в GTK+ на данный момент в стандартном методе прописана оболочка, то есть всё перевёрнуто вверх ногами, вместо того чтобы в оболочке прописать стандартный метод а в стандартном методе сделать простое присвоение тем самым дать разработчику возможность менять свойство объекта двумя способами. Сейчас же мы фактически имея два метода используем одну и туже функцию, по моему это не правильно.
- У меня тут возникла небольшая проблема с GtkToggleAction, FractalizeR, 12:39 , 11-Апр-09 (49)
- У меня тут возникла небольшая проблема с GtkToggleAction, sergeyvp, 12:47 , 11-Апр-09 (51)
>>> но это лучше, чем дать программисту право изменять поля объекта.Я видимо как то неправильно объяснил своё предложение. Я не предлагаю включить включить возможность прямого доступа к полям объекта. Я предлагая привести в порядок методы объекта, чтобы имея два метода можно было иметь два способа изменения полей, с сигналом и без. На данный момент в GTK+ два метода но оба по сути делают одно и то же.
- У меня тут возникла небольшая проблема с GtkToggleAction, Ян Злобин, 03:00 , 13-Май-10 (61)
- Предварительный план разработки библиотеки Gtk+ 3.0, Аноним, 16:07 , 10-Апр-09 (10)
- Предварительный план разработки библиотеки Gtk+ 3.0, Аноним, 16:26 , 10-Апр-09 (11)
- Предварительный план разработки библиотеки Gtk+ 3.0, Аноним, 16:50 , 10-Апр-09 (13)
- Предварительный план разработки библиотеки Gtk+ 3.0, аноним, 17:13 , 10-Апр-09 (15)
- Предварительный план разработки библиотеки Gtk+ 3.0, nim, 20:26 , 10-Апр-09 (22) –1
- Предварительный план разработки библиотеки Gtk+ 3.0, Аноним, 21:08 , 10-Апр-09 (27) +1
- Предварительный план разработки библиотеки Gtk+ 3.0, Capth, 21:20 , 10-Апр-09 (28) +1
- Предварительный план разработки библиотеки Gtk+ 3.0, V, 21:34 , 10-Апр-09 (31)
- Предварительный план разработки библиотеки Gtk+ 3.0, V, 21:39 , 10-Апр-09 (32)
- Предварительный план разработки библиотеки Gtk+ 3.0, sauron, 17:29 , 10-Апр-09 (16)
- Предварительный план разработки библиотеки Gtk+ 3.0, me, 18:59 , 10-Апр-09 (18)
- Предварительный план разработки библиотеки Gtk+ 3.0, СуперАноним, 19:22 , 10-Апр-09 (20)
- Предварительный план разработки библиотеки Gtk+ 3.0, Аноним, 00:39 , 12-Апр-09 (56)
- Предварительный план разработки библиотеки Gtk+ 3.0, Аноним, 03:36 , 29-Апр-09 (59)
- Предварительный план разработки библиотеки Gtk+ 3.0, Чь то Имя, 16:36 , 25-Мрт-10 (60)
|