Вверх ↑
Этот топик читают: Гость
Администрация
Ответов: 15294
Рейтинг: 1518
#61: 2011-05-31 19:47:14 ЛС | профиль | цитата
есть более перспективная версия пакета Lazarus на базе RTCG с родным редактором форм:
pack-lazarus
карма: 26
0
файлы: 1pack-lazarus.png [77.4KB] [824]
Ответов: 3349
Рейтинг: 233
#62: 2011-05-31 19:52:42 ЛС | профиль | цитата
Dilma, И когда оно будет доступно простым смертным?
карма: 1

0
Администрация
Ответов: 15294
Рейтинг: 1518
#63: 2011-05-31 19:59:08 ЛС | профиль | цитата
когда будет готов базис, отталкиваясь от которого можно уже наращивать элементную базу (путем портирования или написания в нуля)
------------ Дoбавленo в 19.59:
для сравнения:

вот так выглядит код кнопки в пакете Windows

#pas
unit hiButton;

interface

uses Windows,Kol,Share,Win;

{$I share.inc}

type
THIButton = class(THIWin)
private
procedure _OnClick(Obj:PObj);
public
_event_onClick:THI_Event;
_prop_Data:TData;
_prop_Caption:string;
_prop_DefaultBtn:boolean;

procedure Init; override;
procedure _work_doCaption(var _Data:TData; Index:word);
end;

implementation

procedure THIButton.Init;
begin
Control := NewButton(FParent,_prop_Caption);
Control.OnClick := _OnClick;
Control.Style := Control.Style or BS_MULTILINE;
inherited;
end;

procedure THIButton._work_doCaption;
begin
Control.Caption := ToString(_Data);
end;

procedure THIButton._OnClick;
begin
_hi_OnEvent_(_event_onClick,_prop_Data);
end;

end.

а вот так в пакете Lazarus под RTCG

#hws
include("WinControl-proc")

func init
addWidget('TButton')
include("WinControl-init")
sys.set_undef_field('Caption')
sys.add_event('onClick', this.props("Data").value)
end

func doCaption(text)
blk.println(this.codename + '.Caption := ', text, ';')
end
карма: 26
0
Ответов: 3349
Рейтинг: 233
#64: 2011-05-31 20:01:42 ЛС | профиль | цитата
[offtop]Ждем, не терпится уже посмотреть[/offtop]
------------ Дoбавленo в 20.01:
Dilma, а конечный код?
карма: 1

0
Администрация
Ответов: 15294
Рейтинг: 1518
#65: 2011-05-31 20:04:45 ЛС | профиль | цитата
конечный код элемента, как и в FTCG размазан по всему проекту и сильно зависит от того, к чему еще он подключен
карма: 26
0
Ответов: 5446
Рейтинг: 323
#66: 2011-05-31 20:13:39 ЛС | профиль | цитата
Dilma, как я понимаю, set_undef_field(prop) - это аналог FTCG-конструкции
if isset(prop)
println(widget+"."+`prop`+"="+prop)
endif
Так? RTCG выглядит заманчиво, прямо реализация моей старой идеи FTCG-препроцессора


карма: 1

0
Администрация
Ответов: 15294
Рейтинг: 1518
#67: 2011-05-31 20:21:23 ЛС | профиль | цитата
iarspider, вроде того. В RTCG решено все же отказаться от расширений через объект lng и файл direct.inc и заменить объектом sys, реализацию которого делает автор пакета. В данном случае set_undef_field реализован в скрипте так:

#hws
...
func set_undef_field(field, prop)
if(typeof(prop) == 0)
prop = this.props(field)
end
if(not prop.isdef)
blk_init.println(this.codename + '.' + field + ' := ', prop.value, ';')
end
end
...

соответственно все блоки, из которых строится конечный код приложения представлены своими глобальными переменными и переключаться между ними через block.select() уже не нужно. Объект this всегда указывает на текущий элемент, в контексте которого был вызван скрипт и предоставляет полный доступ ко всем его свойствам и точкам.
карма: 26
0
Ответов: 5227
Рейтинг: 587
#68: 2011-05-31 21:57:38 ЛС | профиль | цитата
delete
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Разработчик
Ответов: 4697
Рейтинг: 426
#69: 2011-06-01 10:52:06 ЛС | профиль | цитата
Dilma, а кодогенератор RTCG уже не будет подвергнут никаким изменениям? Выложи, пожалуйста, поиграться dll-ку
карма: 10
0
Администрация
Ответов: 15294
Рейтинг: 1518
#70: 2011-06-01 16:30:54 ЛС | профиль | цитата
Assasin писал(а):
кодогенератор RTCG уже не будет подвергнут никаким изменениям?

всмысле?
карма: 26
0
Ответов: 3889
Рейтинг: 362
#71: 2011-06-01 16:55:59 ЛС | профиль | цитата
Dilma, предполагаемый перевод: "Есть ли RC кодогенератора под windows", не изменится ли синтаксисповедение в следующих, если начать изучать его сейчас, чтобы не переучиваться?
карма: 1

0
Ответов: 3349
Рейтинг: 233
#72: 2011-06-01 17:00:36 ЛС | профиль | цитата
nesco, А кто ему мешал код сгенерировать в Linux, откомпилировать в Windows?
карма: 1

0
Разработчик
Ответов: 26067
Рейтинг: 2121
#73: 2011-06-01 17:01:49 ЛС | профиль | цитата
Ivann писал(а):
А кто ему мешал код сгенерировать в Linux, откомпилировать в Windows?

Под LCL можно, насколько я читал по нему описание. Но синтаксис RG вроде один на все должен быть
карма: 22

0
Ответов: 3349
Рейтинг: 233
#74: 2011-06-01 17:03:15 ЛС | профиль | цитата
Как там "Написал однажды, скомпилировал везде"
------------ Дoбавленo в 17.03:
Хм, почему тогда не Java?(Мысли вслух)
карма: 1

0
Разработчик
Ответов: 26067
Рейтинг: 2121
#75: 2011-06-01 17:05:17 ЛС | профиль | цитата
Ivann писал(а):
Хм, почему тогда не Java?

Какова скорость компиляции у Java компилятора
Да и кто мешает написать под Java пакет
карма: 22

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)