Version 3.3.0.0 with CSSS! is out.
От: c-smile Канада http://terrainformatica.com
Дата: 12.05.08 05:26
Оценка: 121 (8) +1
Залил на сайт версию 3.3.0.0 в которой наличествует CSSS! — css-script engine.

CSSS! это в общем-то простой (я бы даже сказал спартанский) script'овый движок который тем не менее позволяет делать на удивление много вещей.
Например всякого рода простейшие автоматы: click на эту кнопку — enable ту группу inputs. Валидация. Всякого рода форматирование и локализация. Простые рачсеты типа totals. Короче смотрите примеры в html_samples/csss!/ папке.

CSSS! живет рядом с behaviors — они друг друга дополняют. Из CSSS! можно вызывать native методы (on_script_call).

(кажется я родил очередной лисапет. наверное судьба такая)

Re: Version 3.3.0.0 with CSSS! is out.
От: TK Лес кывт.рф
Дата: 12.05.08 13:04
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>CSSS! это в общем-то простой (я бы даже сказал спартанский) script'овый движок который тем не менее позволяет делать на удивление много вещей. Например всякого рода простейшие автоматы: click на эту кнопку — enable ту группу inputs. Валидация. Всякого рода форматирование и локализация. Простые рачсеты типа totals. Короче смотрите примеры в html_samples/csss!/ папке.


хм. не нашел примера на тему validation. в behavior_form.cpp ничего похожего нет...

CS>CSSS! живет рядом с behaviors — они друг друга дополняют. Из CSSS! можно вызывать native методы (on_script_call).


А можно использовать HTMLayoutAttachEventHandler для получения on_script_call?

CS>(кажется я родил очередной лисапет. наверное судьба такая)


В sciter такой будет?
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re: Version 3.3.0.0 with CSSS! is out.
От: aloch Россия  
Дата: 12.05.08 15:19
Оценка:
Здравствуйте, c-smile, Вы писали:

Пример label-for-activation.htm вызывает падение browse.exe после примерно трех щелчков по разным label


Re[2]: Version 3.3.0.0 with CSSS! is out.
От: c-smile Канада http://terrainformatica.com
Дата: 12.05.08 16:10
Оценка:
Здравствуйте, aloch, Вы писали:

A>Здравствуйте, c-smile, Вы писали:


A>Пример label-for-activation.htm вызывает падение browse.exe после примерно трех щелчков по разным label


Ага, спсибо. Поймал.
Чего-то VC optimizer невзлюбил один мой файл...
Поправил. Залил на сайт. Можно забирать.
Re[2]: Version 3.3.0.0 with CSSS! is out.
От: c-smile Канада http://terrainformatica.com
Дата: 12.05.08 16:41
Оценка: 19 (1)
Здравствуйте, TK, Вы писали:

TK>Здравствуйте, c-smile, Вы писали:


CS>>CSSS! это в общем-то простой (я бы даже сказал спартанский) script'овый движок который тем не менее позволяет делать на удивление много вещей. Например всякого рода простейшие автоматы: click на эту кнопку — enable ту группу inputs. Валидация. Всякого рода форматирование и локализация. Простые рачсеты типа totals. Короче смотрите примеры в html_samples/csss!/ папке.


TK>хм. не нашел примера на тему validation. в behavior_form.cpp ничего похожего нет...


Validation примеры будут в след билдах. В CSSS! надо еще regexp втащить.

CS>>CSSS! живет рядом с behaviors — они друг друга дополняют. Из CSSS! можно вызывать native методы (on_script_call).


TK>А можно использовать HTMLayoutAttachEventHandler для получения on_script_call?


Да.

CS>>(кажется я родил очередной лисапет. наверное судьба такая)


TK>В sciter такой будет?


Угу. Сегодня.
Re[3]: Version 3.3.0.0 with CSSS! is out.
От: TK Лес кывт.рф
Дата: 12.05.08 16:47
Оценка:
Здравствуйте, c-smile, Вы писали:

TK>>А можно использовать HTMLayoutAttachEventHandler для получения on_script_call?

CS>Да.

А как его из CSS звать? У меня такое только для behaviors прокатило...

TK>>В sciter такой будет?

CS>Угу. Сегодня.

Супер! А там тоже через XCALL или через HANDLE_SCRIPTING_METHOD_CALL?
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[4]: Version 3.3.0.0 with CSSS! is out.
От: c-smile Канада http://terrainformatica.com
Дата: 12.05.08 17:41
Оценка:
Здравствуйте, TK, Вы писали:

TK>Здравствуйте, c-smile, Вы писали:


TK>>>А можно использовать HTMLayoutAttachEventHandler для получения on_script_call?

CS>>Да.

TK>А как его из CSS звать? У меня такое только для behaviors прокатило...


event_handler::event_handler(... | HANDLE_METHOD_CALL)



TK>>>В sciter такой будет?

CS>>Угу. Сегодня.

TK>Супер! А там тоже через XCALL или через HANDLE_SCRIPTING_METHOD_CALL?


Интересный вопрос.

HANDLE_SCRIPTING_METHOD_CALL — это вызовы из tiscript.
Стоит ли различать вызовы из CSSS! ?
Если нет то через HANDLE_SCRIPTING_METHOD_CALL сделаю.
Re[5]: Version 3.3.0.0 with CSSS! is out.
От: TK Лес кывт.рф
Дата: 12.05.08 19:18
Оценка:
Здравствуйте, c-smile, Вы писали:

TK>>А как его из CSS звать? У меня такое только для behaviors прокатило...


CS>
CS>event_handler::event_handler(... | HANDLE_METHOD_CALL)
CS>


Вру :) не работает с HTMLayoutWindowAttachEventHandler (может и работает но, не понятно как вызывать)
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[6]: Version 3.3.0.0 with CSSS! is out.
От: c-smile Канада http://terrainformatica.com
Дата: 12.05.08 19:50
Оценка:
Здравствуйте, TK, Вы писали:

TK>Здравствуйте, c-smile, Вы писали:


TK>>>А как его из CSS звать? У меня такое только для behaviors прокатило...


CS>>
CS>>event_handler::event_handler(... | HANDLE_METHOD_CALL)
CS>>


TK>Вру не работает с HTMLayoutWindowAttachEventHandler (может и работает но, не понятно как вызывать)


Вот это:

my.element
{
  assigned! : self:value = global-foo("hello!");
}


Должно прийти на on_script_call() на те event handlers что сидят на view. (т.е. HTMLayoutWindowAttachEventHandler)
Попробуй.
Re[7]: Version 3.3.0.0 with CSSS! is out.
От: TK Лес кывт.рф
Дата: 12.05.08 20:15
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Должно прийти на on_script_call() на те event handlers что сидят на view. (т.е. HTMLayoutWindowAttachEventHandler)

CS>Попробуй.

хм. что-то не приходит...
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[8]: Version 3.3.0.0 with CSSS! is out.
От: c-smile Канада http://terrainformatica.com
Дата: 12.05.08 20:27
Оценка:
Здравствуйте, TK, Вы писали:

TK>Здравствуйте, c-smile, Вы писали:


CS>>Должно прийти на on_script_call() на те event handlers что сидят на view. (т.е. HTMLayoutWindowAttachEventHandler)

CS>>Попробуй.

TK>хм. что-то не приходит...


В след. билде придет. Бага там.
Re[9]: Version 3.3.0.0 with CSSS! is out.
От: TK Лес кывт.рф
Дата: 12.05.08 20:47
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>В след. билде придет. Бага там.


Спасибо :)

PS
А с этой темой — здесь
Автор: TK
Дата: 23.04.08
есть какие-нибудь новости? В Sciter уведомления INITIALIZATION_EVENTS.BEHAVIOR_DETACH после удаления элемента так и не приходят...
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[10]: Version 3.3.0.0 with CSSS! is out.
От: c-smile Канада http://terrainformatica.com
Дата: 13.05.08 05:07
Оценка:
Здравствуйте, TK, Вы писали:

TK>Здравствуйте, c-smile, Вы писали:


CS>>В след. билде придет. Бага там.


TK>Спасибо


Я обновил SDK на сайте. csss!/custom-global-functions.htm — демо.

TK>PS

TK>А с этой темой — здесь
Автор: TK
Дата: 23.04.08
есть какие-нибудь новости? В Sciter уведомления INITIALIZATION_EVENTS.BEHAVIOR_DETACH после удаления элемента так и не приходят...


Еще раз, что-то держит элемент.

Я вообще не понимаю зачем для Sciter нужна обертка DOM в .NET.
В принципе в .NET должен быть обработчик host callback вызовов. Апотому обработку событий эффективнее делать в скрипте sciter.
host callback как gate UI <-> логика вообще представляется очень привлекательным. Эдакий ultimate layer splitter.

.NET имеет смысл для htmlayout. Это да. Потому как behaviors надо же на чем-то писать...
Честно говоря на C++ даже в общем-то как-то поприятнее-то будет. Но это уж дело личных предпочтений.
Re: Version 3.3.0.0 with CSSS! is out.
От: Obukhov Россия  
Дата: 13.05.08 06:05
Оценка:
Круто, давно такого ждал большое спасибо.

Есть вопросец:
есть вот такой стиль:
    select#INPUT_CODE
    {
      assigned! : 
        self.value-changed(); /* call when-value-changed event handler as a function */ 
      value-changed! : 
        $(code#INPUT_CODE):value = self:value;
    }


В итоге в code#INPUT_CODE попадает значение из выбранного option[value], а мне нужно, что бы присвоилось не значение а содержимое (текст)
Если написать вот так: $(code#INPUT_CODE):value = $c(caption):content; то не прокатывает,
и так тоже: $(code#INPUT_CODE):value = $c(option:current):content;

Если написать вот так: $(code#INPUT_CODE):value = $c(option:current);
получаю {undefined}. Но это в принципе понятно.

Как такое сделать можно ?
... << RSDN@Home 1.2.0 alpha rev. 774>>
Re[2]: Version 3.3.0.0 with CSSS! is out.
От: c-smile Канада http://terrainformatica.com
Дата: 13.05.08 06:37
Оценка:
Здравствуйте, Obukhov, Вы писали:

O>Как такое сделать можно ?


Попробуй так:

     select#INPUT_CODE
     {
      assigned! : 
        self.value-changed(); /* call value-changed event handler as a function */ 
      value-changed! : 
        $(code#INPUT_CODE):value = $1c(option:current):value;
     }
Re[3]: Version 3.3.0.0 with CSSS! is out.
От: Obukhov Россия  
Дата: 13.05.08 07:01
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Попробуй так:


Заработало !!!

Но есть пара особенностей:
1. При первоначальной загрузке страницы (хотя select имеет определенный выбранный пункт) у code#INPUT_CODE значение пустое пока не перещелкнешь select.
2. При перещелкивании select с помощью курсорных клавиш, значение у code#INPUT_CODE меняется на адекватное, но при этом сам select остается неизменным (не перерисовывается).

как можно побороть пункт 1 ?
по второму щас постараюсь прислать пример.
... << RSDN@Home 1.2.0 alpha rev. 774>>
Re[11]: Version 3.3.0.0 with CSSS! is out.
От: TK Лес кывт.рф
Дата: 13.05.08 07:25
Оценка:
Здравствуйте, c-smile, Вы писали:

TK>>А с этой темой — здесь
Автор: TK
Дата: 23.04.08
есть какие-нибудь новости? В Sciter уведомления INITIALIZATION_EVENTS.BEHAVIOR_DETACH после удаления элемента так и не приходят...


CS>Еще раз, что-то держит элемент.


А в HTMLayout не держит? Реализация для Htmlayout/Sciter отличается только тем, что в одном случае дергаются функции Htmlayout а в другом, SciterGetDomApi() и вызовы SciterDomApi — в HTMLayout при удалении все детачится, в Sciter нет. Я правильно понимаю, что HELEMENT это просто поинтер на какой-то C++ объект? Если смотреть на него отладчиком то, счетчик ссылок в ноль уходит.

Например, почему element.Parent.InnerHtml = "" приводит к вызову BEHAVIOR_DETACH для element, а если заменить на element.DetachElement() нет?

CS>Я вообще не понимаю зачем для Sciter нужна обертка DOM в .NET.


Есть обертка, она может работать или с Htmlayout или со Sciter. какой смысл отрезать для варианта со Sciter DOM, раз он уже там есть?

CS>В принципе в .NET должен быть обработчик host callback вызовов. Апотому обработку событий эффективнее делать в скрипте sciter. host callback как gate UI <-> логика вообще представляется очень привлекательным. Эдакий ultimate layer splitter.


Не спорю С другой стороны, есть некоторые заморочки с CompactFramework — там проще использовать htmlayout.
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re: Version 3.3.0.0 with CSSS! is out.
От: Hawk Россия  
Дата: 13.05.08 08:22
Оценка: 18 (1)
Файл htmlayout.dll вырос в размере более, чем в два раза — с ~700K до ~1700K. Это навсегда или потом обратно "похудеет"?
Re[3]: Version 3.3.0.0 with CSSS! is out.
От: Obukhov Россия  
Дата: 13.05.08 11:21
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Чего-то VC optimizer невзлюбил один мой файл...


Интересно, а как вы ловили что оптимайзер сломал код ?
вопрос чисто по обмену опытом
... << RSDN@Home 1.2.0 alpha rev. 774>>
Re: Version 3.3.0.0 with CSSS! is out.
От: Obukhov Россия  
Дата: 13.05.08 12:03
Оценка: 36 (1)
А еще происходит падение при загрузке вот такого стиля.

    select#SYSTEM
    {
      value-changed! : 
          $1(tr.info_fields):checked = (self:value == 6);
    }
... << RSDN@Home 1.2.0 alpha rev. 774>>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.