Для установки нажмите кнопочку Установить расширение. И это всё.

Исходный код расширения WIKI 2 регулярно проверяется специалистами Mozilla Foundation, Google и Apple. Вы также можете это сделать в любой момент.

4,5
Келли Слэйтон
Мои поздравления с отличным проектом... что за великолепная идея!
Александр Григорьевский
Я использую WIKI 2 каждый день
и почти забыл как выглядит оригинальная Википедия.
Статистика
На русском, статей
Улучшено за 24 ч.
Добавлено за 24 ч.
Что мы делаем. Каждая страница проходит через несколько сотен совершенствующих техник. Совершенно та же Википедия. Только лучше.
.
Лео
Ньютон
Яркие
Мягкие

MSE (среда визуального программирования)

Из Википедии — свободной энциклопедии

MSEide+MSEgui
Логотип программы MSEide+MSEgui
Скриншот программы MSEide+MSEgui
Тип IDE
Разработчик Martin Schreiber
Написана на Pascal
 Операционные системы Linux и др. UNIX-подобные, Windows
Последняя версия 5.10.0 (12 февраля 2024; 29 дней назад (2024-02-12))
Состояние активное
Лицензия GNU GPL, GNU LGPL
Сайт github.com/mse-org

MSE — среда визуального программирования с использованием компилятора Free Pascal. Состоит из библиотеки визуальных компонентов MSEgui и редактора форм и исходных текстов MSEide.

В отличие от, например, проекта Lazarus, MSE не ориентируется на совместимость с Delphi VCL, что в некоторых случаях упрощает разработку и освобождает от громоздкости.

Имеет: встроенный отладчик, подсветку синтаксиса, автозавершение полей классов, навигацию по коду, генератор отчётов и т. д.


ВНИМАНИЕ : проект MSE теперь является частью mse-org : https://github.com/mse-org

Исходники MSEide и MSEgui находятся здесь: https://github.com/mse-org/mseide-msegui

Биография Мартина: https://sites.google.com/view/martin-schreiber-biography/

Особенности и преимущества

Юникод

Во всех компонентах используется Юникод. Также юникод используется и при печати, что позволяет в одном выходном документе выводить символы нескольких кодировок. Исходные тексты тоже могут быть в юникоде, что позволяет использовать текстовые константы без проблем переносимости между Win32 и Linux.

Печать

Имеет несколько механизмов печати :

  • в выходном формате PostScript (Win32 и Linux);
  • прямая печать GDI-принтер (естественно — только для Win32);
  • в «contributed» — есть класс для текстовой печати в выходной кодировке CP866 (Russian DOS), со спецметодами форматирования (урезание, автоперенос, заполнение) столбцов, и рисования рамок — как псевдографических, так и упрощенных (из символов «|-+»);

Базы данных

Особый акцент сделан на разработку приложений для работы с БД

  • доступ к БД на PostgreSQL, MySQL, SQLite и Firebird без промежуточных драйверов
  • доступ к БД на Oracle, MSAcess, ASA, DB2 и прочим — при наличии исходников промежуточной библиотеки ZeosDBO
  • имеет очень мощный компонент TMSESQLQuery, который предоставляет
    • чтение и запись БД через SQL-запросы, включая SQLite3
    • реализация «FieldDefs» позволяет вручную назначить типы полей выборки, если они определились некорректно (очень полезно для SQLite3)
    • параметрические запросы
    • автогенерация запросов изменения данных
    • возможность прозрачной замены автоматически снегерированных запросов на «свои»
    • автоопределение уникальных индексов и автоназначение ключевых полей по найденному PRIMARY-индексу
    • оффлайновый режим для модификации данных после разрыва соединения, с записью при восстановлении соединения
    • локальный режим, заменяющий TMemDataset
    • локальные индексы на всех типах полей, кроме MEMO/BLOB (с авто-переупорядочением выборки при активации индекса) и фильтрация, эти индексы могут быть составными
    • оффлайновый и локальный режимы имеют возможность хранить данные (включая BLOB и картинки) в локальном файле
    • выборка, кэширование и запись BLOB-полей
    • юникодная перекодировка на лету
    • раздельные транзакции для чтения и записи
    • опциональный фиктивный режим транзакций (очень полезен для SQLite3 и прочих БД, в которых невозможны вложенные транзакции)
    • опциональное автоподтвержение транзакции после записи изменений
    • опциональная перевыборка данных после подтверждения транзакции
    • компонент TDBWidgetGrid :
      • позволяет разместить списки выбора, логические переключатели, изображения и т. п. прямо в ячейках таблиц
      • позволяет разместить в фиксированных строках (header и footer) практически любые виджеты, что удобно для реализации переключателей сортировки, режимов и т. п.
      • позволяет объединять ячейки в фиксированных строках
      • предоставляет автонумеруемые фиксированные столбцы
  • экономный режим работы БД-таблиц, когда таблица «держит» в памяти только минимально необходимую порцию данных
  • компонент TDBLookupBuffer позволяет скопировать одно или несколько полей выборки в сверхбыстрый буфер памяти, используемый для обслуживания списков выбора, поиска одного поля через другое и прочих операций, не вызывая при этом ренавигации и прочих нежелательных эффектов в выборке
  • каждый тип данных имеет свой компонент для ускорения обращения к полям (если доступ через «FieldByName» оказывается медленным)
  • компонент для работы с автоинкрементными полями (очень полезен для вставке данных в режиме «мастер -детали»)
  • компоненты для прозрачной увязки таблиц «мастер-детали»

Библиотеки

Полностью сама отрисовывает компоненты. Например, в GNU/Linux не использует никаких сторонних виджетов — в Linux работает напрямую с Xlib, в Windows: использует только функции API. Адаптирует встроенную палитру к не-TrueColor режимам экрана с малым количеством цветов (255 и менее)

Базовым классом для элементов GUI является twidget. В отличие от Delphi MSEgui не делает различия между простыми графическими элементами и элементами, которые могут получить фокус ввода — всем виджетам доступна вся функциональность класса twidget.

Экземпляры twidget имеют два важных свойства — twidget.frame и twidget.face.

  • frame ответственен за рамку вокруг рабочей области элемента — это может быть как «стандартная» псевдотрёхмерная рамка, так и некая составная конструкция, собираемая из растровых элементов.
  • face отрисовывает фон рабочей области GUI элемента — позволяет отображать цветовые градиенты, растровые изображения и использовать полупрозрачность.

Свойства frame и face можно задавать централизовано, используя tframecomp и tfacecomp — что упрощает использование «скинов».

Для редактирования исходных данных простых типов в MSEgui доступны специализированные виджеты (tintegeredit, trealedit, tdatetimeedit…). Главное свойство-обработчик сообщений этих виджетов — onsetvalue, через него задаётся реакция виджетов на пользовательский ввод.

Может создавать окна непрямоугольной формы, при этом используя библиотеку libXext. Поддерживает Wayland.

В отличие от Lazarus, MSEgui позволяет наследование визуальных форм и создание MDI-приложений.

Лицензия

Бесплатная, с открытыми исходниками. Оболочка распространяется под лицензией GNU GPL, библиотека — под модифицированной GNU LGPL с возможностью прилинковки к закрытым проектам.

История

Будучи в основном программистом на паскале Мартин Шрайбер разработал MSEgui после того, как компания Borland прекратила поддержку своей linux-среды программирования Kylix. Он использовал получившийся программный продукт для своей основной работы — разработки программного обеспечения для PC и микроконтроллеров на заказ[1].

В 2013 году он начал работу над более простым по сравнению с Free Pascal паскалеподобным языком программирования MSElang, использующим в качестве бэкенда LLVM и добился на этом пути определённых результатов[2].

29 ноября 2018 года с Мартином Шрайбером случился сильный сердечный приступ и 27 декабря 2018 года он скончался[3]. в настоящее время разработка MSEgui и других проектов Мартина Шрайбера продолжена сообществом на GitHub[4]

См. также

Примечания

  1. Équipe Pascal. Interview with Martin Schreiber (фр.). Developpez.com (23 декабря 2015). Дата обращения: 7 февраля 2019. Архивировано 9 февраля 2019 года.
  2. Home · Wiki · MSEide MSEgui / Mselang (англ.). GitLab. Дата обращения: 7 февраля 2019. Архивировано 9 февраля 2019 года.
  3. Wir trauern um Martin Schreiber : Ankündigungen • Deutsches Lazarusforum. www.lazarusforum.de. Дата обращения: 7 февраля 2019. Архивировано 9 февраля 2019 года.
  4. Проект MSE (среда визуального программирования) на сайте GitHub

Ссылки

Эта страница в последний раз была отредактирована 12 марта 2024 в 10:26.
Как только страница обновилась в Википедии она обновляется в Вики 2.
Обычно почти сразу, изредка в течении часа.
Основа этой страницы находится в Википедии. Текст доступен по лицензии CC BY-SA 3.0 Unported License. Нетекстовые медиаданные доступны под собственными лицензиями. Wikipedia® — зарегистрированный товарный знак организации Wikimedia Foundation, Inc. WIKI 2 является независимой компанией и не аффилирована с Фондом Викимедиа (Wikimedia Foundation).