[12:35:30] <Kemet> %
[12:35:38] <alexey.veselovsky> .
[12:36:15] <Kemet> какая же енто гадость - проперти в А2
[12:36:22] <Kemet> в АО те
[12:36:32] <alexey.veselovsky> ы?
[12:36:40] <Kemet> пронраммно
[12:37:03] <Kemet> программно реализовано - танны нинужногно кота
[12:37:21] <alexey.veselovsky> да ладно, удобно же!
[12:37:29] <Kemet> и постоянный оверхед на ровном месте
[12:38:04] <alexey.veselovsky> если оно имеет пустой сеттер, оно разве не скомпилится в простое присваивание?
[12:39:55] <Kemet> не, ну оно понятно - верти как хочешь, но вот взять к примеру ректанглепроперти, -прямоугольник тобишь - чтобы посчитать слиентРект, надо дернуть этот рекорд из проперти в переменную, и только потом использовать, эти пересылки накапливаются, и вот у меня на слабеньком микре гуй очень тормозит изза этих вот накладок
[12:40:36] <Kemet> alexey.veselovsky: пропертей в языаке нету, это просто объект
[12:41:33] <Kemet> там вообще сплошной xml везде - типа модно ж было
[12:41:39] <geniepro> закат солнца вручную (как это любят в оберонах) всегда хуже правильного языкового средства
[12:48:55] <Kemet> geniepro: а потом все эти проперти вручную инитить, типав так :
(* behavior *)
NEW(isRepeating, PrototypeBisRepeating, NIL, NIL); properties.Add(isRepeating);
NEW(isToggle, PrototypeBisToggle, NIL, NIL); properties.Add(isToggle);
NEW(isInverse, PrototypeBisInverse, NIL, NIL); properties.Add(isInverse);
NEW(indicateToggle, PrototypeBindicateToggle, NIL, NIL); properties.Add(indicateToggle);
NEW(onClickHandler, PrototypeBonClickHandler, NIL, NIL); properties.Add(onClickHandler);
[12:54:03] <geniepro> а как выглядит их использование-то?
[12:54:54] <Kemet> val := prop.Get() ; prop.Set(val)
[12:56:33] <Kemet> IF indicateToggle.Get() THEN ...
[12:58:33] <Kemet> или так
PROCEDURE GetClientRect*() : Rectangles.Rectangle;
VAR r, t : Rectangles.Rectangle;
BEGIN
r := bounds.Get();
t := Rectangles.MakeRect(0, 0, r.r - r.l, r.b - r.t);
RETURN t
END GetClientRect;
[13:02:03] <geniepro> стоп! но где здесь проперти??? это же обычные методы, а вовсе не проперти!
[13:02:09] <Kemet> реализация базового типа проперти занимает строк 250
[13:02:35] <Kemet> geniepro: это проперти, у них ест сеттер и гктткр
[13:02:47] <Kemet> геттер
[13:02:50] <geniepro> они используются как методы, а не как проперти
[13:04:27] <geniepro> widget.SetColor(red); color := widget.GetColor(); -- это методы
widget.Color := red; color := widget.Color; -- вот это проперти
[13:04:36] <Kemet> не, проперть тут это такой тип, у которого есть сеттер, геттер и куча других методов, включая сохранение/восстановление из потока и хмл , и тп. и есть список пропертей у компонента. проперти хранят значения разных типов, под каждый тип реализуются руками
[13:05:24] <geniepro> короче оберонщики как всегда выдумывают свои собственные значения устоявшихся терминов а потом удивляются, что мейнстрим их отвергает как еретиков...
[13:05:57] <Kemet> geniepro:
bounds-, bearing-, relativeBounds-: WMProperties.RectangleProperty;
alignment- : WMProperties.Int32Property;
[13:07:33] <Kemet> alignment - проперть типа целое и чтобы его прочитать нужно использовать геттер get, а для установки сеттер Set()
[13:08:35] <geniepro> почему назвали пропертями, а не аттрибутами как все нормальные люди?
[13:09:09] <Kemet> ну это и есть свойства
[13:09:22] <Kemet> только сделанные вручгую
[13:09:40] <Kemet> библиотечно
[13:15:59] <Kemet> alexey.veselovsky: #typedef struct css_stylesheet_params css_stylesheet_params - это только для того чтобы от struct избавиться ?
[13:17:41] <geniepro> ага
[13:18:03] <geniepro> после с++ с уже убогий, конечно
[13:18:37] <alexey.veselovsky> угу.
[13:24:09] <Kemet> geniepro: вот реализация этих пропертей https://github.com/metacore/A2OS/blob/master/source/WMProperties.Mod
[13:28:16] <geniepro> IF (SELF.generator # NIL) THEN
ELSIF (repositoryName # NIL) & (componentName # NIL) THEN
зачем они так по сишному оформляют условие?
[13:29:14] <geniepro> IF (nonDefault = FALSE) THEN
мда уж, не про такой ли код ермаков писал, что это код новичков?
[13:31:29] <Kemet> ну таки сложно их новичками назвать )) - отцы-основатели жпе
[13:41:31] <Kemet> geniepro: а что там сишного?
[13:46:03] <Kemet> скобки что-ли
[14:10:01] <geniepro> http://pan-andriy.livejournal.com/743146.html
под видом кого русофобы называют "вежливых людей" российским спецназом
очередная провокация
[14:21:05] <geniepro> http://ic.pics.livejournal.com/vbulahtin/9232037/274465/274465_original.jpg
[14:26:34] <geniepro> http://www.eg.ru/upimg/photo/173435.jpg - ДиКапримо такой плакса, оказывается ))
[16:07:45] <geniepro> Интервью:
— Скажите, а ваш генеральный директор сегодня пьян?
— Нет, он вообще не пьёт.
— А не требует ли он от секретарши орального секса?
— О чём это вы? Секретаршу он выбирал исходя из деловых качеств.
— А как вам сегодняшняя погода?
— Удивительный день. Солнышко светит…
Опубликовано: «Удивительный день. Генеральный директор пришёл на работу трезвым и не потребовал от секретарши орального секса».
[21:18:21] <geniepro> ну писец, и Лем, и Корчак -- не поляки вовсе, а польские евреи )))
среди поляков вообще нет хороших людей )))
[21:23:50] <Jordan> Лем это который фантаст? Читал приключения Тихого.