Lazarus "из коробки".

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Logo
постоялец
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Сообщение Logo »

Mr.Smart писал(а):AShen
Перенасыщение среды пакетами не есть хорошо :wink:

з.ы. Для меня больше половины данных пакетов не нужно...
2з.ы. А вообще дополнительные пакеты (я так считаю) должны поставляться, но по умолчанию не должны быть установлены.

Для начинающего большое количество пакетов - хорошо, а по мере возростания разберутся как ненужное отключить, это не проблема.
Аватара пользователя
AShen
постоялец
Сообщения: 155
Зарегистрирован: 26.08.2005 10:22:44
Откуда: Новороссийск

Сообщение AShen »

Да, для начинающих хорошо, хоть пощупают что есть что.
Но тут палка о двух концах: много пакетов - медленная загрузка (сейчас лазарь у меня ~20Мб весит), мало пакетов - быстрая загрузка.
Приходится искать золотую середину.
Вот сейчас думаю: стоит ли добавить ещё пару пакетов: mplayer, asc?
Если да, то получается что вроде всё охватываю: СУБД (аж несколько различных пакетов, в том числе RxNew, Zeoslib), работа с сетью (lnet, indy), генерация отчётов (вплоть до экспорта в pdf), экспорт данных в самые различные форматы. Разве что мультимедии не хватает.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

AShen
А Indy у Вас на полтора десятка закладок раскидана, как в их родном пакете? Мне не нравится. Неудобно...
Аватара пользователя
AShen
постоялец
Сообщения: 155
Зарегистрирован: 26.08.2005 10:22:44
Откуда: Новороссийск

Сообщение AShen »

Да, Вадим, как у них по умолчанию. Мне тоже не понравилось. На закладке зачастую по 2-3 компонента ...
Как это привести к удобному виду можете подсказать?

Добавлено спустя 17 минут 21 секунду:
2 Vadim:
Если не ошибусь, то это определяется здесь:
[ashen@oasu3 lazarus]$ cat IdRegister.pas | grep RegisterComponents
RegisterComponents(RSRegIndyClients, [
RegisterComponents(RSRegIndyServers, [
// RegisterComponents(RSRegIndyServers, [
RegisterComponents(RSRegIndyIntercepts, [
RegisterComponents(RSRegIndyIOHandlers, [
RegisterComponents(RSRegSASL, [
RegisterComponents(RSRegIndyMisc, [
RegisterComponents(RSRegIndyClients+ RSProt+'(a-m)', [
RegisterComponents(RSRegIndyClients+RSProt+ '(n-z)', [
RegisterComponents(RSRegIndyServers+RSProt+ '(a-m)', [
RegisterComponents(RSRegIndyServers+RSProt+ '(n-z)', [
// RegisterComponents(RSRegIndyServers, [
RegisterComponents(RSRegIndyServers+RSMappedPort,[
RegisterComponents(RSRegIndyIntercepts+RSProt, [
RegisterComponents(RSRegSASL+RSProt, [
RegisterComponents(RSRegIndyIOHandlers+RSProt, [
RegisterComponents(RSRegIndyMisc+RSProt, [
RegisterComponents(RSRegIndyMisc+RSProt + RSEncoder, [
RegisterComponents(RSRegIndyMisc+RSProt + RSDecoder, [
[ashen@oasu3 lazarus]$

Надо будет попробовать поиграться с этим.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

AShen писал(а):Как это привести к удобному виду можете подсказать?

Это нетривиальное занятие. :)
В архиве с компонентами есть каталог Lazarus. В этом каталоге есть файлы *.pas, в которых вызывается процедура:
RegisterComponents(Имя_закладки, [массив, компонентов, этой, закладки, разделённый, запятыми]);
Там названия закладок берутся из ресурсных строк, которые, в свою очередь, лежат в файлах IdDsnCoreResourceStrings.pas и IdDsnResourceStrings.pas. Может и ещё где-нибудь есть дополнительно, я сильно то не рылся, но эти два основные. Нужно перераспределить состав массивов, т.е. второго параметра процедуры RegisterComponents(), раскидав компоненты либо по существующим названиям, либо создав свои названия закладок, например "Indy Servers", "Indy Clients", "Indy Miscs" и распределить по ним (по соответствующим им массивам) компоненты.
Последний раз редактировалось Vadim 23.11.2009 17:20:39, всего редактировалось 1 раз.
Аватара пользователя
AShen
постоялец
Сообщения: 155
Зарегистрирован: 26.08.2005 10:22:44
Откуда: Новороссийск

Сообщение AShen »

Возьмётесь? Я бегло глянул, что к чему. :)
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

AShen
Возьмусь, но ближе к выходным. ;)
Аватара пользователя
AShen
постоялец
Сообщения: 155
Зарегистрирован: 26.08.2005 10:22:44
Откуда: Новороссийск

Сообщение AShen »

Подожду, а то эти дни и так занимался распиливанием и раскладыванием LCL'ок, так, что б робот альтовский смог их собрать без каких либо проблем.
Ссылку на нароботки свои дать?
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

Он (lnet) когда-то на самом деле был в стандартной поставке, но потом его убрали.
Аватара пользователя
AShen
постоялец
Сообщения: 155
Зарегистрирован: 26.08.2005 10:22:44
Откуда: Новороссийск

Сообщение AShen »

Sergei I. Gorelkin писал(а):Он (lnet) когда-то на самом деле был в стандартной поставке, но потом его убрали.

То то я его не нашёл ... :)
Logo
постоялец
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Сообщение Logo »

Indy может перебрать и оставить только рабочие компоненты, а то оно такое там все запущенное, да и лишнего много.
Аватара пользователя
AShen
постоялец
Сообщения: 155
Зарегистрирован: 26.08.2005 10:22:44
Откуда: Новороссийск

Сообщение AShen »

2 logo: если сможете выявить рабочие/не рабочие компоненты в Indy? Буду премного презнателен.
А то у меня то собралось без проблем. И lazarus с indy, да и другими добавленными мной компонентами, не валится при старте и работе.
А вот с orpheus'ом сегфолтится при старте. Пытался отловить из-за чего, да плюнул и выкинул их из своей сборки.
Свободного времени на это совсем нет ... :(

2 all: Мои наработки:
git://git.altlinux.org/people/ashen/pac ... azarus.git
или
http://git.altlinux.org/people/ashen/pa ... azarus.git

бранч master.
Logo
постоялец
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Сообщение Logo »

AShen писал(а):2 logo: если сможете выявить рабочие/не рабочие компоненты в Indy? Буду премного презнателен.
А то у меня то собралось без проблем. И lazarus с indy, да и другими добавленными мной компонентами, не валится при старте и работе.

Попробуйте, что либо из серверов поставить на форму в режиме дизайна. Проверял на x86_64 - валится. Попробую еще на i386.

Попробую перебрать компоненты, хотя времени мало, но тема интересная.
Аватара пользователя
AShen
постоялец
Сообщения: 155
Зарегистрирован: 26.08.2005 10:22:44
Откуда: Новороссийск

Сообщение AShen »

хм ...
mplayer LCL не собирается через make, в упор не видит mplayerctrl.pas
acs ситуация подобная с описанной выше logo для indy.
Как только на форму укладываю TACSAudioOut (другие не пробывал), Lazarus сегфолтится ...
ViTality
постоялец
Сообщения: 308
Зарегистрирован: 05.10.2007 15:12:02

Сообщение ViTality »

AShen писал(а):CodeTyphon freeware, а не opensources. В топку закрытое ПО.

Ну "закрытое" у них только то, что они сами написали. А не изменения в исходниках компонент, которые распространяются под открытой лицензией. И я думаю вы без проблем можете их использовать в своей сборке.
Ответить