LINUX.ORG.RU

Вышел Lazarus 0.9.28

 , , ,


0

0

Lazarus - это интегрированная среда разработки на FreePascal, поддерживающая множество фреймворков (GTK+, Qt, WinCE, Carbon) и операционных систем Linux, BSD, Windows, MacOS.

Новшества версии 0.9.28:

Главные изменения в интерфейсах LCL

  • GTK2 теперь фреймворк по умолчанию для Linux (необходимо было исправить множество багов. Подробнее тут)

Главные изменения в библиотеке LCL

  • был добавлен TFrame
  • большинство компонентов имеют значения по умолчанию
  • TMonitor class: поддержка мультимониторных конфигураций
  • рефракторинг LCL позволил сократить размер приложений на 15-18%
  • в компоненте TreeView появилась возможность редактирования а также добавлены разнообразные визуальные улучшения
  • новые свойства: TBitBtn.GlyphShowMode, TApplication.ShowButtonGlyphs, которые включают отображения глифов на кнопках, для кадой кнопки или всего приложения
  • новые компоненты: TShellTreeView - показывает диски (разделы) и директории/файлы, TShellListView - показывает директории/файлы и TFilterComboBox - специализируется на отображении фильтра файлов.

Небольшие изменения LCL

  • TColorBox, TColorListBox были полностью переписаны. Теперь они более Delphi-совместимы.
  • TColorDialog.CustomColors было добавлено.
  • добавлена поддержка формата битовой карты os/2 (bmp)
  • в TMouseButtons добавлены mbExtra1, mbExtra2. Поддерживается до 5 кнопок мыши (только Windows)

Изменения в IDE

  • новый диалог настройки IDE объединяющий в себе настройки для: переменных окружения, редактора, codetools, отладчика, опции справки
  • удалён jitform, использовавшийся как хак для создания методов в design-time
  • и другие изменения в поддержке отладчика, редакторе, дизайнере форм

Доработанные и исправленные компоненты

  • TAChart
  • LazReport
  • Printers и PostscriptCanvas
  • TDbGrid, TDrawGrid и TStringGrid

Всего исправленых ошибок 1031.

>>> Подробности

★★★★★

Проверено: maxcom ()

Инструментария под c/c++ действительно больше, это факт. И это весомый выбор в пользу указанных языков для начала серьёзной разработки.

Но это не потому, что паскаль плох. Просто "так получилось".

hobbit ★★★★★
()
Ответ на: комментарий от XeroX

>Не, я конечно понимаю, что сейчас считается дурным тоном забыть о дядюшке баллмере, но не в каждом же посте

родена опасносте!!!!11111 пыщь пыщь

>Баллмер про макось (а тем более ахраичную "классическую" систему) слышал только из сказок.

так и вижу... мама читает маленькому баллмеру на ночь исходные коды MacOS classic и объясняет сложные места :)

shty ★★★★★
()
Ответ на: комментарий от shty

на этой неделе лор - это фансайт баллмера...

А мать его так и делала. Мальчик, откуда ты знаешь эту страшную тайну?

XeroX
()
Ответ на: комментарий от XeroX

>А мать его так и делала. Мальчик, откуда ты знаешь эту страшную тайну?

с libastral'а броадкастом пролетало :)

shty ★★★★★
()
Ответ на: комментарий от XeroX

>на этой неделе лор - это фансайт баллмера...

кстати, ты и сам повысил рейтинг цитируемости оного аж два раза :)

shty ★★★★★
()
Ответ на: комментарий от uzbl

> Хорошо, чаще патч содержит дифф между исходными текстами, но патчи на ядро содержат порой целые файлы с исходным кодом

# echo "Просто текст\nНи разу не программа\n" > f1
# echo "Просто текст\nЭто не программа\nНикакого кода" > f2
# diff f1 f2 > my.patch
# patch f1 my.patch
# cat f1

Патч есть, никакого исходного кода нет и не было. Так что утверждение "патч - это программа" не выдерживает критики.

Hjorn
()
Ответ на: комментарий от XeroX

>А почему никто не разрулил спор фразой: "Паскакаль - это язык для обучения"?

почему же - было дело, просто это вызвало мелкосрач про говновузы и их обитателей :)

shty ★★★★★
()
Ответ на: комментарий от shty

Ну что за дурацкая привычка мерится пруфлинками? А если я скажем это в старой книжке прочитал что, скан разыскивать? Ты лучше скажи чего не хватает в Паскале (особенно в современных реализациях) для написания софта работающего с железом? Указатели есть? Есть. В процессорные регистры писать можно? Можно, я еще со школы помню что в турбо-паскале специальные переменные для этого были. Записи (структуры) с битовыми полями есть? Есть. Ассемблерные вставки? Есть! Нет конечно динамических массивов но не думаю что это кого-то остановит

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от DNA_Seq

> А если я скажем это в старой книжке прочитал что, скан разыскивать?

а если ты прочитал про одно, подумал про другое, а со временем информация претерпела трансформацию? за достоверность никто не поручится, я уж точно

>Ты лучше скажи чего не хватает в Паскале (особенно в современных реализациях) для написания софта работающего с железом?

а того же чего в лиспе... поезд ушёл, сейчас уже есть более интересные и прогрессивные вещи в мире

в C/C++ же накоплен значительный опыт (читай база кода) написания системных вещей, опять же отсутствующий в паскале... где оберон модный, к примеру?

shty ★★★★★
()
Ответ на: комментарий от shty

>а достоверность никто не поручится, я уж точно

а какая-нибудь вшивая инетовская страничка как я понимаю нотариально заверена?

>в C/C++


А теперь о Си.. Тупой препроцессор, отсутствие раздельной компиляции (и как результат - епля с зависимостями), откровенно плохая реализация строк (в результате любая приличная библиотека для крестов имеет _свою_ реализацию этих самых строк), три разных вида выделения памяти причем инициализируют выделенную область далеко не все, не определено порядок укладки в стек переменных (вспомним ++i + ++i) и тд и тп... Ведь в других языках таких проблем нет

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от impfp

>var a: array of integer; {Чем не динамический массив?}

в турбо-паскале так было сделать нельзя, может в каком-нибудь object pascal можно

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от DNA_Seq

Ах, турбопаскаль... Ну звините. Думал, речь еще об fpc

impfp
()
Ответ на: комментарий от DNA_Seq

>а какая-нибудь вшивая инетовская страничка как я понимаю нотариально заверена?

а причём тут страничка???

>А теперь о Си.. Тупой препроцессор...

бла-бла-бла... о чём это Вы, уважаемый? перечитайте ещё раз о чём я Вам говорил...

и ещё раз, время паскаля ушло - сейчас рулят другие штуки

shty ★★★★★
()
Ответ на: комментарий от XeroX

>Эта фраза срабатывает с очень малым шансом :D

ну в этот раз таки прокнула :)

shty ★★★★★
()
Ответ на: комментарий от shty

> а того же чего в лиспе...

Список?

> поезд ушёл,

Давно Титаник стал поездом?

> сейчас уже есть более интересные и прогрессивные вещи в мире

Список?

ugoday ★★★★★
()
Ответ на: комментарий от shty

>и ещё раз, время паскаля ушло - сейчас рулят другие штуки

Ну и что же по твоему рулит? Паскаль объективно хороший язык, логичный и простой. Жаль Модула-2 и Оберон распространения не получили (и не в последнюю очередь потому что и Паскаль покрывал значительную часть потребностей)

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от ugoday

>> а того же чего в лиспе...

>Список?

мало вменяемых реализаций, сравнительно небольшая кодовая база, относительная сложность изучения... наличие Haskell :)

>> поезд ушёл,

>Давно Титаник стал поездом?

очевидно же... как только из техпроцесса исключили напильник

>> сейчас уже есть более интересные и прогрессивные вещи в мире

>Список?

навскидку: OCaml, Python

да тот же, прости господи, C# куда более вменяемый

shty ★★★★★
()
Ответ на: комментарий от shty

Хуже - для кого? Для разработчика - ну, хуже, но не смертельно. Насколько мне известно, хорошо разработанные процедурные системы ничуть не тяжелее в сопровождении, чем объектно-ориентированные. Это раз.

Для пользователя - ваш std:vector и мой array of concreteType - вещи одного порядка (в смысле - ему похрен, или одинаково хорошо). Это два.

std:vector

угадай чем оно хуже newdata vector a = [a] ? Это три.

impfp
()
Ответ на: комментарий от DNA_Seq

>Ну и что же по твоему рулит?

см. выше....

>Паскаль объективно хороший язык, логичный и простой.

а кто спорит?

>Жаль Модула-2 и Оберон распространения не получили (и не в последнюю очередь потому что и Паскаль покрывал значительную часть потребностей)

поясните взаимосвязь, а то получается что оберон слили из-за паскаля :)

shty ★★★★★
()
Ответ на: комментарий от shty

>навскидку: OCaml, Python
>да тот же, прости господи, C# куда более вменяемый


Ты наверное из тех людей, которые могут сравнить bash и fortran и сказать кто лучше.

madcore ★★★★★
()
Ответ на: комментарий от shty

> просто чёт я не в курсе что все дрова были на паскале там... и, честно говоря, это очень сомнительно... но я всё ещё жду пруфа, а вдруг не прав :)

порылся в инете, в форумах говорят, что макось таки была написана на паскале с ассемблером, а кое-где упоминают, что компилятор паскаля для эппла сделала микрософт О_о

unC0Rr ★★★★★
()
Ответ на: комментарий от impfp

>Хуже - для кого? Для разработчика - ну, хуже, но не смертельно.

бгыгы, выжми всё - наше всё... чем удобнее, тем меньше ошибок, которые совершают программисты, тем легче поддерживать... продолжать?

>Насколько мне известно, хорошо разработанные процедурные системы ничуть не тяжелее в сопровождении, чем объектно-ориентированные.

ну согласен же... только их вменяемых единицы :) и, кстати, хороший пример - Hoops 3D

>Для пользователя - ваш std:vector и мой array of concreteType - вещи одного порядка (в смысле - ему похрен, или одинаково хорошо).

пользователь вообще о таком ни разу не при делах :)

>угадай чем оно хуже newdata vector a = [a] ?

vector.find, к примеру, не?

короче use algorithm.h luke :)

или vector< vector<Ty> >, не?

а как насчёт N-мерной сетки? при помощи stl::vector - легко, а как там паскаль?

shty ★★★★★
()
Ответ на: комментарий от DNA_Seq

>в турбо-паскале так было сделать нельзя, может в каком-нибудь object pascal можно

Угу, это позже TurboPascal появилось, в нем только либо через работу с памятью можно было имитировать динамические массивы, либо при работе с одномерными массивами можно было сделать финт ушами при передаче массива в подпрограмму: была конструкция позволяющая передать одномерный массив произвольной длины в подпрограмму.

kss ★★★★★
()
Ответ на: комментарий от Deleted

>куча софта есть и развивается

И все страшные как смертный грех и/или глючные. Тот же любимый windows-пользователями qip.

они покажутся прекрасными если только глянуть на КДЕ,... и да, плазма не падает, ога

anonymous
()
Ответ на: комментарий от impfp

>Вас забанил гугл?

ага, я назвал его жалким болотным червяком :)

я просто не осознал к чему Вы это?

shty ★★★★★
()
Ответ на: комментарий от madcore

>>навскидку: OCaml, Python... да тот же, прости господи, C# куда более вменяемый

>Ты наверное из тех людей, которые могут сравнить bash и fortran и сказать кто лучше.

не, моя монография называется: "что лучше windows или assembler" :)

а если серьёзно, Вы о чём?

shty ★★★★★
()
Ответ на: комментарий от anonymous

И это нынешний анонимус, за которого мы столько боролись? Тьфу.

Deleted
()
Ответ на: комментарий от uzbl

>патчи на ядро содержат порой целые файлы с исходным кодом

Только вот эти файлы с исходным кодом сами по себе патчем не являются. Патч -- это всегда дифф между двумя объектами.

kss ★★★★★
()
Ответ на: комментарий от madcore

>Ты наверное из тех людей, которые могут сравнить bash и fortran и сказать кто лучше.

и да, системные скрипты в linux лучше писать на bash'e, а числодробилки пох где на fortran :p

shty ★★★★★
()
Ответ на: комментарий от shty

Вы попросили привести пример ("где, мол, оберон модный, к примеру?"), я порылся в вебринге оберона (гугл свах) и подкинул наиболее (по моей имхе, ессно) подходящую ссылку применения оберона.

impfp
()
Ответ на: комментарий от impfp

а сорри, не догнал... чёт libmozg сбоит... позырю :)

shty ★★★★★
()
Ответ на: комментарий от shty

или vector< vector<Ty> >, не?

Не, так дела не пойдут, вот он- типичный крестовик-затейник, нихира не видящий ничего более абстрактного , чем темплейты...

impfp
()
Ответ на: комментарий от kss

>>и да, системные скрипты в linux лучше писать на bash'e

>На dash'е :-P

KeyError: dash :)

shty ★★★★★
()
Ответ на: комментарий от impfp

>Не, так дела не пойдут, вот он- типичный крестовик-затейник, нихира не видящий ничего более абстрактного , чем темплейты...

а по делу то сказать нечего??? :lol:

shty ★★★★★
()
Ответ на: комментарий от shty

А чего говорить: на твой пример темплейта С++ был дан некий хаскелевский аналог, раз уж системами типов (я вижу эту нитку именно так - уж не обессудьте) пошли меряться.

impfp
()
Ответ на: комментарий от vyv

> с матчастью сначала ознакомься. в лазарусе вполне продвинутое выравнивание виджетов и тех возможностей, что есть, вполне достаточно чтоб сотворить качественный ГУИ без дополнительного программирования. ПРУФ - http://freepascal.ru/article//lazarus/20090217210602/

Мой дорогой друг, если ты не безнадежно туп, сбросай эту формочку, что по ссылке тобою приведена, в Qt Designer, тебе для этого понадобится мышка и около десятка BoxLayout'ов. Сбросай, и посмотри на нее в динамике; поресайзи окошко туда-сюда; проверь, можно ли сделать это окно меньше некоего размера, диктуемого геометрией использованных контролов; также проверь, как изменяются контролы при изменении размеров окна, сохраняются ли между ними при этом пропорции, и не нарушается ли общая гармоничность компоновки виджетов; не наезжают ли они друг на друга при ресайзе окна, ну и так далее. Как закончишь с этим (а у меня на это ушло 10 минут, включая написание этого сообщения), запусти ту херню на lazaraus'е, что опять же по ссылке, приведенной тобой, и повтори все то же самое с ней. После этого, попробуй сделать (для себя, не для меня!) выводы о преимуществах нормальных менеджеров компоновки над тем классическим набором костылей a la 'привет из 90х', что ты попытался было по наивности мне впарить под видом профессионального инструмента.

anonymous
()
Ответ на: комментарий от shty

> мало вменяемых реализаций

> OCaml, Python

А у окамла со змеюкой конечно же много реализаций и все они вменяемы?

Вообще не понял смысл этого требования. Зачем Вам более одной вменяемой реализации стандарта?

> Python

Бу-га-га.

> C# куда более вменяемый

критерий вменяемости?

ugoday ★★★★★
()
Ответ на: комментарий от hobbit

> Ну кому-то (не мне), наоборот, абсолютное размещение милее.

Ага, ну кто-то и сайты делает под разрешение 1024x768, прибивая все гвоздями к этому разрешению, в результате чуть что - либо появляется горизонтальная полоса прокрутки, либо пол-экрана пустого. Руки бы поотрывать за такие формочки и за такие сайты.

c:lords prisonment намекает на их скорую участь.

anonymous
()
Ответ на: комментарий от shty

>>угадай чем оно хуже newdata vector a = [a] ?

> vector.find, к примеру, не? > короче use algorithm.h luke :) > или vector< vector<Ty> >, не?

Для справки, вся та хуита, коей вы меряетесь (в (более (вменяемом (языке)))) появилась сотни лет назад.

ugoday ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.