From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Tue, 18 Apr 2006 22:27:28 +0300 From: Michael Shigorin To: ALT Linux Sisyphus discussion list Message-ID: <20060418192728.GT25667@osdn.org.ua> Mail-Followup-To: ALT Linux Sisyphus discussion list References: <20060413145833.GC18003@basalt.office.altlinux.org> <20060415192418.GE970@osdn.org.ua> <20060418065036.GC32534@basalt.office.altlinux.org> <20060418071945.GP25667@osdn.org.ua> <20060418135639.GA11682@basalt.office.altlinux.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="GID0FwUMdk1T2AWN" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20060418135639.GA11682@basalt.office.altlinux.org> User-Agent: Mutt/1.4.2.1i Subject: Re: [sisyphus] =?koi8-r?b?STog8Mnbxc0gzc/E1czJIMTM0SBhbHRlcmF0b3Ig?= =?koi8-r?b?W3NlcnZpY2VzIHIvP10=?= X-BeenThere: sisyphus@lists.altlinux.org X-Mailman-Version: 2.1.7 Precedence: list Reply-To: shigorin@gmail.com, ALT Linux Sisyphus discussion list List-Id: ALT Linux Sisyphus discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Apr 2006 19:27:44 -0000 Archived-At: List-Archive: List-Post: --GID0FwUMdk1T2AWN Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit update: при помощи lioka допетрил, как бы на свои две кнопочки чего повесить -- примерно так: ; это заведомо неправильно, т.к. одинаковые списки... потом (hbox (document:id enabled (listbox rows (woo-list-names '/services))) (document:id disabled (listbox rows (woo-list-names '/services)))) (hbox (button "Disable" (on-click (woo-write '/services 'command 'disable 'param (enabled text)))) (button "Enable" (on-click (woo-write '/services 'command 'enable 'param (disabled text))))) Соответственно разница относительно (button "Write" (on-click (woo-write '/services 'param (lb text)))) -- в том, что передаётся дополнительный параметр (чего ж меня и плющило -- 'param есть синтаксис, библиотека или изменяемое?), и этот 'command при помощи backend3.sh в шелл-бэкенде можно забрать как $in_command: write) echo "param=$in_param" > ~/tmp/backend-out echo "command=$in_command" >> ~/tmp/backend-out Получаем в ~/tmp/backend-out что-нить вроде param=cups command=enable Порой для простоты старта разработки достаточно не упростить, а доходчиво объяснить на пальцах :) On Tue, Apr 18, 2006 at 05:56:39PM +0400, Stanislav Ievlev wrote: > > > > Как хотя бы примотать кнопки "enable"/"disable" > > > Давай по порядку. 1. Расскажи какие кнопки и куда > > "Для начала" -- две кнопки. У тебя в примерах фигурирует > > одна кнопка с woo-write по одному адресу, а как эти сущности > > размножаются (ведь нет woo-write2, под которую можно > > подсунуть обработчик "write2" в backend3?) -- непонятно. > Ну как кнопки размножаются я думаю понятно - повторением > конструкции (button ...) А какие действия размножить хочется? Enable и Disable. Любое из них сейчас сделать могу, чуточку перекрасив Write, а вот два -- не пойму, что синтаксис или библиотека, а что -- переменная. > > Наверное, просто недочитал или недопонял прочитанное, но там > > же рядом ссылка на "читать про сложнее" была бы в тему. > > > 2. Что такое списки с <> ? И зачем они нужны? > > Ну, "переносилки", как у тебя в Psi в настраивалке тулбаров: > > on off > > +---+ +---+ > > | a | | b | > > | c | << | e | > > | d | >> | | > > | | | | > > +---+ +---+ > Ну можно посмотреть как это сделано в standalone или alterator-xkb > Есть операции для удаления и добавления элементов с список. Даже так... > Первая зовётся как (<имя listbox> remove <номер строки>) Т.е. надо где-то держать массив, причём всегда и точно соответствующий тому, что передано, и самому про нему искать? (не особо страшно, но напрашивается на хотя бы remove text в тех случаях, когда элементы гарантированно уникальны -- e.g. это пакеты или сервисы) > Вторая (<имя listbox> append-row <текст или текст с картинкой>) Спасибо. -- ---- WBR, Michael Shigorin ------ Linux.Kiev http://www.linux.kiev.ua/ --GID0FwUMdk1T2AWN Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="services.scm" (document:surround "/std/frame") (label "Services") (vbox( (label "Enabled") (document:id enabled (listbox rows (woo-list-names '/services))))) (vbox( (label "Disabled") (document:id disabled (listbox rows (woo-list-names '/services))))) (hbox (button "Disable" (on-click (woo-write '/services 'command 'disable 'param (enabled text)))) (button "Enable" (on-click (woo-write '/services 'command 'enable 'param (disabled text))))) (vbox (label "test")) (groupbox "group" (layout-policy 100 100) (vbox (groupbox "group1" (layout-policy -1 50 left)) (groupbox "group2" (layout-policy -1 20)) (groupbox "group3" (layout-policy -1 30 right)))) (frame:buttons-view (button "Quit" (on-click (document:end)))) --GID0FwUMdk1T2AWN Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=services #!/bin/sh CHKCONFIG=/sbin/chkconfig INITDIR=/etc/rc.d/init.d . /usr/share/alterator/build/backend3.sh on_message() { case "$in_action" in list) shift; service="$1" [ "$service" != "/" ] || service="*" echo '( ' #find -L "$INITDIR" -mindepth 1 -maxdepth 1 -type f -perm +0111 -name "$service" -printf '("%f") ' | sort -r find -L "$INITDIR" -mindepth 1 -maxdepth 1 -type f -perm +0111 ! -name '*.rpm*' ! -name '*~' -printf '("%f") ' | sort -r echo ')' ;; write) echo "param=$in_param" > ~/tmp/backend-out echo "command=$in_command" >> ~/tmp/backend-out echo "()" ;; esac } message_loop --GID0FwUMdk1T2AWN--