Re: [gnome-cyr] Почему у меня постоянно бъются темы?
- From: =?koi8-r?q?=E1=CC=C5=CB=D3=C5=CA_=EC=C0=C2=C9=CD=CF=D7?= <avl l14 ru>
- To: gnome-cyr gnome org
- Subject: Re: [gnome-cyr] =?koi8-r?q?=F0=CF=DE=C5=CD=D5_=D5_=CD=C5=CE=D1?==?koi8-r?q?_=D0=CF=D3=D4=CF=D1=CE=CE=CF_=C2=DF=C0=D4=D3=D1_=D4=C5=CD?==?koi8-r?q?=D9=3F?=
- Date: Sat, 12 Jul 2003 15:51:14 +0400
Sergey V. Oudaltsov пишет:
И покодирую.
Вот дойдем до красивой и стройной модели да и начнем...
Ой, баюс, баюс...
И правильно. После таких моих заяв, говоря языком экспертов - "пора
впадать в панику". :)
не совсем так.
требуется только возможность отключать уже сконфигуренные группы.
enable_group(index)
disable_group(index)
Легко. Это то же самое, что secondaryGroupMask |= ( 1 << index ) или
secondaryGroupMask &= ~( 1 << index ). Группа становится дополнительной,
ее можно активизировать только через меню. Приделать к этому вызов - нет
проблем.
отлично.
надо придумать такую концепцию, чтоб была красива и не мешала
воплощать
необходимый функционал.
я не стою горой за данные функции, но давайте смотреть, что мы можем
сделать.
Приведенные выше функции реализуемы легко. Я боялся худшего -
переинициализации всей конфигурации, типа
setConfig( model, layouts, options ... )
В принципе, даже это есть. Но давать это плагинам в виде публичного API
не хоца. А то начнут пользовать, а люди будут ругаться на "тормоза".
усекли и забыли.
Прямо так жестко? Введем "Бритву Любимова" (сорри за фамильярность,
но в истории так принято) и будем отсекать:)
а как же иначе? это концептуальный вопрос. иначе кодить нечего...
Концептуально - да, конечно. Я боялся, что Вы захотите составить два
_окончательных_ списка функций. Если дело только в концепции (в правилах
при отборе фич для core и плагинов) - тогда да, обязательно.
окончательный список фич будет выбит на мраморной плите на могиле
переключателки.
никак не раньше. :)
Опять умный тезис хотел процитировать, да подумал, что хватит. Не на
кафедре. :)
Да ладно, все свои:)
стороны плагины будут писаться и нами, но в порядке очереди. Вот эту
очередь и стоит выстроить. Хотя бы по зависимостям, а еще лучше и по
весу.
Ну вот это уже конкретнее. Т.е. берем конечный маленький список первых
плагинов и смотрим, что им нужно.
Для себя, подробней и на русском.
Не. Только на аглицком, с вашего соизволения. И лежать оно все, понятно,
будет в CVS. Сколь угодно подробно.
Мне кажется, что попытка вести девелопмент сразу на английском - большая
ошибка.
Имхо, стоило бы переводить roadmap с обсужденного русского варианта и
класть рядом.
Но дело, вобщем, хозяйское.
Нельзя рассчитывать на помощь других, не имея четкого плана.
"Есть ли у вас план, мистер Фикс?":)
вот сейчас и проясняем позиции. :)
Перефразируя - "Будет день, будет и курево..."
*список раскладок* (я понимаю, что ограничение на 4 раскладки, но
закладывать это в дизайн странички как то недальновидно)
Можно заложить. Изменение протокола xkb практически вряд ли
осуществимо.
Ну хотя бы подумать на эту тему. Ну плохо же разворачивать
классический
список в шеренгу...
Это обсуждаемо. Вопрос лишь в том, как пользователь, добавивший 4
раскладки, будет воспринимать внезапное посерение кнопки "Добавить".
Жаловаться ведь побежит, гаденыш.
и это ЗДОРОВО! :)
такие жалобы - двигатель прогресса.
А если никому не нужно более 4-х раскладок и никто не заметит?
А если таки снимут это ограничение? Редизайн?
Не забывайте, что конфигуратор внедряется в гном. Дефолтная раскладка,
это очень важный параметр. Он обязательно должен быть доступен для
гнома
и без апплета.
Зачем??? Кто ее, кроме апплета будет использовать? И главное - человек
что-то там себе сконфигурил - и будет ждать, что это повлияет на его
жисть (на поведение системы). А оно не влияет. Никак. Или нужно человека
молотком по башке - "ЗАГРУЗИ АППЛЕТ, ДЯДЯ!"
Я тут малек запутался.
Как я понял, связь между конфигуратором и монитором (за исключением
паразитных связей) идет через xkb
gconf <=> конфигуратор => xkb => монитор <=> gconf
Настройка default group концептуально должна быть в xkb и тогда
настройка этого параметра будет в клнфигураторе. Интересно, что скажет Иван?
Это важно, потому что такая настройка обязана быть общесистемной и
используемой всеми (к примеру, виджеты для ввода паролей ). Иначе в ней
просто нет никакого толка.
Как костыль, конечно, можно ее продублировать в апплет. Она пригодится,
как хороший парметр для дефолтных предустановленных правил.
И то не уверен, что в аплете это так уж необходимо.
Он 100% нужен для rule-based engine. Одно из action - установить
группу
по дефолту.
Глобальную? Для класса окна? Не понял, сорри. В любом случае - это будет
использовать только апплет и его плагины.
При инициализации или для класса окна.
Насчет только апплета см выше.
минимально, это флаги 1,2,3,4
и движок 0 ->4 при 4 в лог идут все записи, при 0 - ничего. при 2 ->
записи с флагами 1 и 2.
Уже есть. Правда, в libxklavier - но испоользуется везде (и плагины
могут). Посмотрите на XkbDebug. Достаточно?
XklDebug( 100, "Applet configuration changed in GConf - reiniting...\n" );
По минимумум, да.
В идеале бы сделать флаги в виде битовой маски , чтобы в уи можно было
лист с чекбоксами сделать и ловить только нужное, а не движок с числом.
XklDebug( 0x0001, "Applet configuration changed in GConf -
reiniting...\n" );
XklDebug( 0x0002, "event...\n" );
XklDebug( 0x0004, "plugin...\n" );
XklDebug( 0x0008, "...\n" );
Зато я понял из дальнейшего контекста, что предполагается включать и
выключать сконфигуреные раскладки в control-center.
Тоже годится.
А я опять не понял:)
В конфигураторе имеем список групп с кнопками добавить/удалить/вверх по
списку/вниз по списку.
Каждая группа имеет свойство - enable и соответсвующий чекбокс в листе.
Добавил я, к примеру, 4 группы. (лично у меня -три рус, англ, фр) Но мне
одна из них нужна только изредка (лично мне фр. нужна для сестры раз в
полгода). Я беру и выключаю чекбокс этой группы и работаю с тремя
раскладками.
А когда надо поработать с текстом на этом редком для меня языке, я не
добавляю его (и не объясняю сестре по телефону, как ее добавить),
разыскивая в длиннющем списке всех раскладок и ставя на нужное место, а
просто щелкаю на чекбокс и OK (это объяснить гораздо проще).
Отчасти такое решение снимает остроту ограничения в 4-ре раскладки,
поскольку перемещает его из области "4 раскладки" в еще более редкую
область "4 активных раскладки"
Воля ваша, а я бы флажки _временно_ (до stable релиза) прибил.
До какого предела? Вообще - или выбор картинки руками?
вообще.
Не, пусть будут. С ними веселее:)
ну и ладно.
Например, чтобы показать, что функция автокоррекции вводимого текста
включена. Фон надписи поменять можно?
Короче, надо сделать так. Еще две функции (точки входа) у плагина -
во-первых, плагин может заменить GtkWidget внутри апплета на свой.
Во-вторых, он может "скорректировать" существующий GtkWidget. В ядре
будут две реализации - label и картинка. Остальное - как хотите.
нет. так никто писать не будет.
Стоимость реализации такой индикации в плагине заведомо превысит ее пользу.
Функция могла бы быть
SetForeground(color)
SetBackground(color)
SetBorder(color)
AddMask (pixbuf)
А если два плагина начнут свои виджеты подставлять по очереди? Дожно
быть несколько простых независимых (битовая маска) индикаторов на поле
переключателки. Или не делать ничего в этом плане - по минимуму и это
вариант.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]