KDE Frameworks - это набор библиотек и программных фреймворков, легко доступных для любых программных стеков или приложений на основе Qt в нескольких операционных системах . [6] Предлагая часто необходимые функциональные решения, такие как интеграция оборудования, поддержка форматов файлов, дополнительные графические элементы управления , функции построения графиков, проверка орфографии, коллекция служит технологической основой для KDE Plasma 5 и приложений KDE, распространяемых под GNU Lesser General Public License (LGPL) . [7]
Автор (ы) оригинала | KDE |
---|---|
Разработчики) | KDE |
Первый выпуск | 1 июля 2014 г . |
Стабильный выпуск | 5.83.0 (12 июня 2021 г . [±] [1] | )
Репозиторий | |
Написано в | C ++ ( Qt ) |
Операционная система | Кроссплатформенность (включая «частичную» поддержку Android , [2] [3] Windows , [4] macOS и Haiku ) |
Тип | |
Лицензия | Стандартная общественная лицензия ограниченного применения GNU (LGPL) [5] |
Веб-сайт | api |
Обзор
Текущие рамки KDE основаны на Qt 5, что позволяет более широко использовать QML , более простой декларативный язык программирования на основе JavaScript , для разработки пользовательских интерфейсов. Механизм визуализации графики, используемый QML, позволяет создавать более гибкие пользовательские интерфейсы на разных устройствах. [8]
Поскольку компиляция программного обеспечения KDE разделена на KDE Frameworks 5, KDE Plasma 5 и приложения KDE , каждый подпроект может выбирать свой собственный темп разработки. KDE Frameworks выпускаются ежемесячно [9] и используют git. [10] [11]
Должна быть возможность установить KDE Frameworks вместе с KDE Platform 4, чтобы приложения могли использовать любую из них. [12]
API и стабильность ABI
Выпуски платформы - это те, которые начинают серию (номер версии X.0). Только этим основным выпускам разрешено нарушать двоичную совместимость с предыдущей версией. Релизы младшей серии (X.1, X.2, ...) будут гарантировать двоичную переносимость ( API и ABI ). Это означает, например, что программное обеспечение, разработанное для KDE 3.0, будет работать во всех (будущих) выпусках KDE 3; однако не гарантируется, что приложение, разработанное для KDE 2, сможет использовать библиотеки KDE 3. Номера основных версий KDE в основном соответствуют циклу выпуска Qt, что означает, что KDE SC 4 основан на Qt 4, а KDE 3 основан на Qt 3.
Поддерживаемые операционные системы
Репозиторий каждого фреймворка должен содержать файл с именем metainfo.yaml . [13] Этот файл содержит информацию о лице, обслуживающем фреймворк, типе, поддерживаемой операционной системе и другую информацию. В настоящее время поддерживаются платформы Linux, Microsoft Windows, macOS и Android.
Архитектура программного обеспечения
Состав
Платформы имеют четкую структуру зависимостей, разделенных на «категории» и «уровни». «Категории» относятся к зависимостям времени выполнения:
- Функциональные элементы не зависят от времени выполнения.
- Интеграция обозначает код, которому могут потребоваться зависимости времени выполнения для интеграции в зависимости от того, что предлагает ОС или платформа.
- Решения имеют обязательные зависимости во время выполнения.
«Уровни» относятся к зависимостям времени компиляции от других фреймворков.
- Фреймворки уровня 1 не имеют зависимостей внутри фреймворков и нуждаются только в Qt и других соответствующих библиотеках.
- Платформы уровня 2 могут зависеть только от уровня 1.
- Платформы уровня 3 могут зависеть от других платформ уровня 3, а также от уровней 2 и 1.
Составные части
Комплект KDE Frameworks состоит из более чем 70 пакетов. Они существовали как один большой пакет, называемый kdelibs, в KDE SC 4 . Kdelibs был разделен на несколько отдельных фреймворков, некоторые из которых больше не являются частью KDE, но были интегрированы в Qt 5.2 . [14]
Фреймворки KDE сгруппированы в четыре разных уровня в зависимости от других библиотек. Фреймворки уровня 1 зависят только от Qt или других системных библиотек. Фреймворки уровня 2 могут зависеть от библиотек уровня 1, Qt и / или других системных библиотек и так далее. [15]
Полный список фреймворков | |||
---|---|---|---|
Имя | Уровень | мерзавец | Описание |
Frameworkintegration | 4 | frameworkintegration.git | Framework Integration - это набор подключаемых модулей, отвечающих за лучшую интеграцию приложений Qt при запуске в рабочем пространстве KDE Plasma. Приложениям не нужно ссылаться на это напрямую. Библиотека KF5Style обеспечивает интеграцию с настройками KDE Plasma Workspace для стилей Qt. Создайте свой стиль Qt из KStyle, чтобы автоматически наследовать различные настройки из KDE Plasma Workspace, обеспечивая согласованный пользовательский интерфейс. Например, это обеспечит согласованную настройку активации одним или двойным щелчком и использование стандартных тематических значков. |
KActivities | 3 | kactivities.git | Основные компоненты для диспетчера действий KDE. |
KApiDox | 4 | kapidox.git | Скрипты и данные для построения документации API в стандартном формате и стиле. Эта структура содержит сценарии и данные для создания документации API (dox) в стандартном формате и стиле. Инструмент Doxygen используется для фактического извлечения и форматирования документации, но этот фреймворк предоставляет сценарий-оболочку, чтобы сделать создание документации более удобным (включая параметры чтения из целевой платформы или другого модуля), и стандартный шаблон для созданной документации. |
KАрхив | 1 | karchive.git | Классы для удобного чтения, создания и управления «архивными» форматами, включая zip и tar . |
KAuth | 2 | kauth.git | Предоставляет удобный, интегрированный в систему способ разгрузить действия, которые необходимо выполнять от имени привилегированного пользователя, небольшим вспомогательным утилитам. |
КЗаметки | 3 | kbookmarks.git | KBookmarks позволяет вам получать доступ и управлять закладками, хранящимися в «формате XBEL». Чаще всего закладки используются в веб-браузерах, но это также может быть полезно в любом приложении, где локальные файлы или URL-адреса могут быть сохранены в виде закладок. |
KCMUtils | 3 | kcmutils.git | Утилиты, в том числе KSettings, для модулей системных настроек KDE. KCMUtils предоставляет различные классы для работы с KCModules. KCModules можно создавать с помощью фреймворка KConfigWidgets. |
KCodecs | 1 | kcodecs.git | KCodecs - это библиотека кодирования строк, она предоставляет набор методов для управления строками с использованием различных кодировок. Он может автоматически определять кодировку строки, переводить объекты XML, проверять адреса электронной почты и находить кодировки по имени более терпимым способом, чем QTextCodec (полезно, например, для данных, поступающих из Интернета). |
KЗавершение | 2 | kcompletion.git | Фреймворк автозавершения строк, включая редактирование строки и поле со списком. При вводе имен файлов, адресов электронной почты и другого текста, когда пользователь часто хочет выбрать из существующих данных (включая то, что он набрал ранее), а не вводить что-либо полностью оригинальное, пользователи часто находят полезным, если им нужно ввести только первые несколько символов, и затем попросите приложение предложить им набор вариантов или попытаться закончить то, что они набирали. Почтовые клиенты, оболочки и диалоговые окна «открыть файл» часто предоставляют эту функцию. Эта структура помогает реализовать это в приложениях на основе Qt. Вы можете использовать один из готовых к завершению виджетов, предоставляемых этой структурой, или напрямую интегрировать его в другие виджеты вашего приложения. Самый простой способ начать - использовать KComboBox, KHistoryComboBox или KLineEdit. Если вы хотите интегрировать завершение в другие части пользовательского интерфейса, вы можете использовать KCompletion для управления и выбора возможных завершений. |
KConfig | 1 | kconfig.git | Постоянные платформенно-независимые настройки приложения состоят из двух частей: KConfigCore и KConfigGui. KConfigCore обеспечивает доступ к самим файлам конфигурации, то есть он также генерирует конфигурацию в XML . KConfigGui предоставляет способ привязать графические элементы управления (виджеты) к конфигурации, чтобы они автоматически инициализировались из конфигурации и автоматически распространяли свои изменения в соответствующие файлы конфигурации. |
KConfigWidgets | 3 | kconfigwidgets.git | Графические элементы управления (виджеты) для диалоговых окон конфигурации. Виджеты для диалоговых окон конфигурации. KConfigWidgets предоставляет простые в использовании классы для создания диалоговых окон конфигурации, а также набор виджетов, которые используют KConfig для хранения своих настроек. |
KCoreAddons | 1 | kcoreaddons.git | Утилиты для основных функций приложения и доступа к ОС. Библиотека дополнений Qt с набором утилит без графического интерфейса. KCoreAddons предоставляет классы, построенные поверх QtCore, для выполнения различных задач, таких как управление типами mime, автосохранение файлов, создание файлов резервных копий, генерация случайных последовательностей, выполнение текстовых манипуляций, таких как замена макросов, доступ к информации о пользователе и многое другое. |
KCrash | 2 | kcrash.git | Предоставляет поддержку для перехвата и обработки сбоев приложений. |
KDBusAddons | 1 | kdbusaddons.git | KDBusAddons предоставляет удобные классы DBus поверх QtDBus, а также API для создания модулей KDED. |
KДекларативная | 3 | kdeclarative.git | Аддон для декларативного Qt |
KDED | 3 | kded.git | KDED означает KDE Daemon, центральный демон рабочих пространств KDE. KDED работает в фоновом режиме и выполняет ряд небольших задач. Некоторые из этих задач встроены, другие запускаются по запросу. |
KDesignerPlugin | 3 | kdeclarative.git | Эта структура предоставляет плагины для Qt Designer, которые позволяют отображать виджеты, предоставляемые различными фреймворками KDE, а также утилиту (kgendesignerplugin), которую можно использовать для создания других таких плагинов из файлов описания в стиле ini. |
KDESu | 3 | kdesu.git | KDESU (суперпользователь KDE) предоставляет пользовательский интерфейс для запуска команд оболочки с привилегиями root. Он предоставляет функциональные возможности для создания интерфейсов GUI для программ консольного режима (запрашивающих пароль). Например, kdesu и kdessh используют его для взаимодействия с su и ssh соответственно. |
KDEWebkit | 3 | kdewebkit.git | Интеграция механизма рендеринга HTML WebKit . Библиотека KDEWebkit обеспечивает интеграцию библиотеки QtWebKit с KDE. Если вы используете QtWebKit в своем приложении KDE, вам рекомендуется использовать этот слой вместо прямого использования классов QtWebKit. В частности, вы должны использовать KWebView вместо QWebView, KGraphicsWebView вместо QGraphicsWebView и KWebPage вместо QWebPage. |
KDNSSDFramework | 2 | kdnssd.git | KDNSSD - это библиотека для обработки протокола обнаружения служб на основе DNS ( DNS-SD ), уровня [Zeroconf] ( http://www.zeroconf.org ), который позволяет обнаруживать сетевые службы, такие как принтеры, без каких-либо вмешательство пользователя или централизованная инфраструктура. |
KDocИнструменты | 2 | kdoctools.git | Предоставляет инструменты для создания документации в различных форматах из файлов DocBook. |
KEmoticons | 3 | kemoticons.git | Предоставляет темы смайлов, а также вспомогательные классы для автоматического преобразования текстовых смайлов в графические. |
KGlobalAccel | 1 | kglobalaccel.git | KGlobalAccel позволяет использовать глобальные сочетания клавиш (ускорители), которые не зависят от окна в фокусе. В отличие от обычных ярлыков, окно приложения не требует фокусировки для их активации. |
KGuiAddons | 1 | kguiaddons.git | Дополнения KDE GUI; Утилиты для графических пользовательских интерфейсов; Надстройки графического интерфейса KDE предоставляют утилиты для графического пользовательского интерфейса в области цветов, шрифтов, текста, изображений, ввода с клавиатуры. |
KHTML | 4 | khtml.git | KHTML - это механизм рендеринга HTML, на основе которого был создан WebKit. Он основан на технологии KParts и использует KJS для поддержки JavaScript. |
Ki18n | 1 | ki18n.git | Интернационализация текста пользовательского интерфейса на основе gettext в KDE. KI18n предоставляет функциональные возможности для интернационализации текста пользовательского интерфейса в приложениях на основе системы перевода GNU Gettext . Он включает в себя стандартные функции Gettext, так что программисты и переводчики могут использовать знакомые инструменты и рабочие процессы Gettext. KI18n также предоставляет дополнительные функции как для программистов, так и для переводчиков, которые могут помочь достичь более высокого общего качества исходного и переведенного текста. Это включает захват аргументов, настраиваемую разметку и скрипты перевода. |
KIconThemes | 3 | kiconthemes.git | Эта библиотека содержит классы для улучшения обработки значков в приложениях, использующих KDE Frameworks. |
KIdleTime | 1 | kidletime.git | Модуль интеграции для определения времени простоя. |
KImageFormats | 1 | kimageformats.git | Плагины, позволяющие QImage поддерживать дополнительные форматы файлов. Этот фреймворк предоставляет дополнительные плагины формата изображения для QtGui. Таким образом, он не требуется для компиляции любого другого программного обеспечения, но может быть требованием времени выполнения для программного обеспечения на основе Qt для поддержки определенных форматов изображений. Следующие форматы изображений поддерживают только чтение:
Следующие форматы изображений поддерживают чтение и запись:
|
KInit | 3 | kinit.git | kdeinit - это средство запуска процессов, которое запускает процессы путем разветвления и последующей загрузки динамической библиотеки, которая должна содержать функцию kdemain (...). kdeinit ускоряет запуск приложений в рабочих областях KDE; kdeinit связан со всеми библиотеками, которые необходимы стандартному приложению KDE. С помощью этого метода запуск приложения становится намного быстрее, потому что теперь необходимо связать только само приложение, в то время как в противном случае необходимо связать как приложение, так и все используемые им библиотеки. |
КИО | 3 | kio.git | Прозрачный сетевой доступ к файлам и данным. Этот фреймворк реализует почти все функции управления файлами, которые вам когда-либо понадобятся. Dolphin и диалоговое окно файлов KDE также используют это для обеспечения сетевого управления файлами. |
Киригами | 1 | kirigami.git | Набор подключаемых модулей QtQuick для создания пользовательских интерфейсов на основе рекомендаций KDE UX. |
KItemModels | 1 | kitemmodels.git | Набор моделей элементов, расширяющих структуру представления модели Qt. KItemModels предоставляет следующие модели:
|
KItemViews | 1 | kitemviews.git | Набор представлений элементов, расширяющих структуру представления модели Qt. KItemViews включает набор представлений, которые можно использовать с моделями элементов. Он включает представления для категоризации списков и добавления фильтров поиска в плоские и иерархические списки. |
KJobWidgets | 2 | kjobwidgets.git | KJobWIdgets предоставляет виджеты для отображения хода выполнения асинхронных заданий. |
KJS | 1 | kjs.git | KJS предоставляет интерпретатор, совместимый с ECMAScript. Стандарт ECMA основан на хорошо известных языках сценариев, таких как Netscape JavaScript и Microsoft JScript. |
KJSEmbed | 3 | kjsembed.git | KSJEmbed предоставляет метод привязки объектов JavaScript к объектам QObject, чтобы вы могли создавать сценарии для своих приложений. |
KMediaPlayer | 3 | kmediaplayer.git | Не рекомендуется : интерфейс для медиаплеера KParts. KMediaPlayer основан на платформе KParts, чтобы предоставить общий интерфейс для KParts, который может воспроизводить медиафайлы. Этот фреймворк помогает при переносе. Он не рекомендуется для новых проектов, а для существующих проектов, которые его используют, рекомендуется переносить его подальше и вместо этого использовать простые KParts. |
KNewStuff | 3 | knowstuff.git | Платформа для загрузки и обмена дополнительными данными приложения. Библиотека KNewStuff реализует совместный обмен данными для приложений. Он использует libattica для поддержки спецификации Open Collaboration Services. Attica - это библиотека Qt, которая реализует API Open Collaboration Services версии 1.6. Он обеспечивает легкий доступ к таким службам, как запрос информации о людях и содержании. |
KNotifications | 3 | knotifications.git | Решение с абстракцией для системных уведомлений. |
KNotifyConfig | 3 | knotifyconfig.git | Модуль для настройки KNotify. |
KParts | 3 | kparts.git | Библиотека KParts реализует структуру для частей KDE. Один отдельный компонент пользовательского интерфейса называется KPart и представляет собой сложный виджет с пользовательским интерфейсом, определяемым в терминах действий (элементы меню, значки панели инструментов). KParts аналогичны компонентам Bonobo в GNOME и элементам управления ActiveX в объектной модели компонентов Microsoft . Konsole доступна как KPart и используется в таких приложениях, как Konqueror и Kate . Примеры использования KParts:
Дополнительная документация:
|
KPlotting | 1 | kplotting.git | KPlotWidget - это класс, производный от QWidget, который предоставляет виртуальный базовый класс для упрощения построения графиков данных. Идея KPlotWidget заключается в том, что у вас есть только указать информацию в «единицах данных»; т.е. натуральные единицы отображаемых данных. KPlotWidget автоматически конвертирует все в пиксельные единицы экрана. KPlotWidget рисует оси X и Y с делениями и метками. Он автоматически определяет, сколько делений использовать и где они должны быть, на основе ограничений данных, указанных для графика. Вы изменяете пределы, вызывая `setLimits (double x1, double x2, double y1, double y2)`. Данные для построения графика сохраняются с использованием класса KPlotObject. KPlotObject состоит из QList QPointF, каждый из которых определяет координаты X, Y точки данных. KPlotObject также указывает «тип» данных для построения графика (ТОЧКИ или КРИВАЯ, или ПОЛИГОН, или МЕТКА). |
КПты | 2 | kpty.git | Взаимодействие с псевдотерминальными устройствами. Эта библиотека предоставляет примитивы для взаимодействия с псевдотерминальными устройствами, а также производный класс KProcess для запуска дочерних процессов и связи с ними с помощью pty. |
Kross | 3 | kross.git | Встраивание скриптов в приложения. Kross - это скриптовый мост для встраивания скриптовых функций в приложение. Он поддерживает QtScript в качестве серверной части интерпретатора сценариев. Ядро Kross обеспечивает структуру для прозрачной работы с внутренними интерфейсами интерпретатора и предлагает абстрактные функции для работы со сценариями. |
KRunner | 3 | krunner.git | Фреймворк для предоставления различных действий по строковому запросу. Платформа для плазменных бегунов. Рабочее пространство Plasma предоставляет приложение под названием KRunner, которое, среди прочего, позволяет вводить текст в текстовую область, что приводит к появлению различных действий и информации, соответствующей тексту, по мере набора текста. Одно из приложений для этого - универсальный раннер, который можно запустить с помощью ALT+ F2. |
KService | 3 | kservice.git | KService предоставляет платформу плагинов для обработки сервисов рабочего стола. Сервисы могут быть приложениями или библиотеками. Они могут быть привязаны к типам MIME или обрабатываться кодом конкретного приложения. |
KSyntax | 1 | подсветка синтаксиса.git | Это автономная реализация механизма подсветки синтаксиса Kate. Он задуман как строительный блок для текстовых редакторов, а также для простой визуализации выделенного текста (например, как HTML), поддерживающий интеграцию с настраиваемым редактором, а также готовый к использованию подкласс QSyntaxHighlighter. |
KTextEditor | 3 | ktexteditor.git | KTextEditor предоставляет мощный компонент текстового редактора, который вы можете встроить в свое приложение либо как KPart, либо с помощью библиотеки KF5 :: TextEditor (если вам нужно больше контроля). Компонент текстового редактора содержит множество полезных функций, от выделения синтаксиса и автоматического отступа до расширенной поддержки сценариев, что делает его подходящим для всего, от простого встроенного редактора текстовых файлов до расширенной IDE. |
KTextWidgets | 3 | ktextwidgets.git | KTextWidgets предоставляет виджеты для отображения и редактирования текста. Он поддерживает форматированный текст, а также простой текст. |
KUnitConversion | 2 | kunitconversion.git | KUnitConversion предоставляет функции для преобразования значений в различные физические единицы. Он поддерживает преобразование различных префиксов (например, кило, мега, гига), а также преобразование между различными системами единиц (например, литры, галлоны). Поддерживаются следующие области:
|
KWalletFramework | 3 | kwallet.git | Надежное хранилище паролей на рабочем столе. Этот фреймворк состоит из двух основных компонентов:
|
KWayland | 1 | kwayland.git | KWayland - это библиотека KDE для реализации поддержки Wayland в приложениях KDE, она удовлетворяет потребности, выходящие за рамки того, что предоставляет QtWayland . Все приложения KDE в сеансе плазмы используют эту библиотеку и, возможно, LXQt. KWayland является частью KDE Frameworks с 5.22 (май 2016 г.); ранее он распространялся как часть KDE Plasma 5. |
KWidgetsAddons | 1 | kwidgetsaddons.git | Аддон с различными классами поверх QtWidgets. Если вы переносите приложения из библиотеки «kdeui» KDE Platform 4, вы найдете здесь множество ее классов. Предоставляются классы действий, которые могут быть добавлены в панели инструментов или меню, широкий спектр виджетов для выбора символов, шрифтов, цветов, действий, дат и времени или типов MIME, а также диалоговые окна с поддержкой платформы для страниц конфигурации, окон сообщений и т. Д. и запросы пароля. Дополнительные виджеты и классы можно найти в других фреймворках KDE. |
KWindowSystem | 1 | kwindowsystem.git | Позволяет взаимодействовать с оконной системой . Он предоставляет NETRootInfo для доступа к глобальному состоянию (все, что установлено в корневом окне) и NETWinInfo для всей информации о конкретном окне. У классов есть оконный менеджер и клиентская перспектива. Это основа, на которой работает KWin и различные части графической оболочки, такие как диспетчер задач. [16] В дополнение к классам, специфичным для X11, у нас есть удобный API KWindowInfo и KWindowSystem, который обеспечивает API, независимый от оконной системы, для наших приложений. |
KXMLGUI | 3 | kxmlgui.git | KXMLGUI предоставляет основу для абстрактного управления действиями меню и панели инструментов. Действия настраиваются через XML-описание и перехватчики в коде приложения. Фреймворк поддерживает объединение нескольких описаний, например, для интеграции действий из плагинов. KXMLGui использует функциональные возможности авторизации в киоске KConfig (см. Пространство имен KAuthorized в этой структуре). Примечательно, что экземпляры QAction, добавленные в KActionCollection, отключаются, если KAuthorized :: authorizeAction () сообщает, что они не авторизованы. Пункты стандартного меню справки (KHelpMenu) также могут быть отключены в зависимости от настроек киоска, а редактирование панели инструментов может быть ограничено. См. Документацию KActionCollection, KHelpMenu и KToolBar для получения дополнительной информации. |
Плазма-каркас | 3 | плазма-framework.git | Базовые библиотеки, компоненты среды выполнения и инструменты рабочих пространств KDE Plasma на основе KF5 и Qt5. Плазменный каркас обеспечивает следующее:
|
Тюрьма | 1 | тюрьма. git | Prison - это основанный на Qt слой / библиотека абстракции штрих-кодов, обеспечивающий единообразный доступ к генерации штрих-кодов с данными. |
Твердый | 1 | solid.git | Solid предоставляет способ запросов и взаимодействия с оборудованием независимо от базовой операционной системы. Он предоставляет разработчикам приложений следующие функции:
|
Сонет | 1 | sonnet.git | Sonnet - это подключаемая библиотека проверки орфографии для приложений на основе Qt. Он поддерживает несколько различных плагинов, включая HSpell, Enchant, ASpell и HUNSPELL. Он также поддерживает автоматическое определение языка на основе комбинации различных алгоритмов. Самый простой способ использовать Sonnet в вашем приложении - использовать класс SpellCheckDecorator в вашем QTextEdit. |
Синдикация | 2 | синдикация.git | Syndication - это библиотека парсеров RSS / Atom. |
ThreadWeaver | 1 | threadweaver.git | ThreadWeaver - это очередь заданий. Он выполняет задания в потоках, которыми он управляет внутри. |
Программные пакеты
Дистрибутив Linux использует некоторую систему управления пакетами для упаковки распространяемого программного обеспечения. Debian , например , распространяет KGlobalAccel под названием пакета libkf5globalaccel , [17] в то время как Fedora распространяет его под именем kf5-kglobalaccel . [18]
История выпуска
Релизу 5.0 предшествовали предварительная версия технологии, два альфа-релиза и три бета-релиза. [19] [20] [21]
Frameworks 5 релизов | ||||||
---|---|---|---|---|---|---|
Версия | Дата | Заметки | ||||
5.0 | 7 июля 2014 [22] | Первоначальный выпуск, требуется Qt 5.2. | Старая версия Последняя версия Будущий выпуск | |||
5.1 | 7 августа 2014 [23] | |||||
5.2 | 12 сентября 2014 [24] | |||||
5,3 | 7 октября 2014 [25] | |||||
5,4 | 6 ноября 2014 [26] | |||||
5.5 | 11 декабря 2014 [27] | |||||
5,6 | 8 января 2015 [28] | Новые фреймворки: KPackage и NetworkManagerQt | ||||
5,7 | 14 февраля 2015 [29] | |||||
5,8 | 13 марта 2015 [30] | Новые фреймворки: KPeople и KXmlRpcClient | ||||
5.9 | 10 апреля 2015 [31] | Новый фреймворк: ModemManagerQt | ||||
5.10 | 8 мая 2015 [32] | |||||
5.11 | 12 июня 2015 [33] | Новый фреймворк: BlueZ-Qt (см. BlueZ ) | ||||
5,12 | 10 июля 2015 [34] | |||||
5,13 | 12 августа 2015 [35] | Новые фреймворки: Baloo (заменяет NEPOMUK ) и KFileMetaData, теперь требует Qt 5.3. | ||||
5,14 | 11 сентября 2015 [36] | |||||
5,15 | 10 октября 2015 [37] | |||||
5,16 | 13 ноября 2015 [38] | |||||
5,17 | 12 декабря 2015 [39] | |||||
5,18 | 9 января 2016 [40] | |||||
5,19 | 13 февраля 2016 [41] | |||||
5.20 | 13 марта 2016 [42] | |||||
5.21 | 9 апреля 2016 [43] | Новый фреймворк: KActivities-stats, теперь требует Qt 5.4. | ||||
5,22 | 15 мая 2016 [44] | Новый фреймворк: KWayland | ||||
5,23 | 13 июня 2016 [45] | |||||
5,24 | 9 июля 2016 [46] | |||||
5,25 | 13 августа 2016 [47] | Теперь требуется Qt 5.5 или выше. | ||||
5,26 | 10 сентября 2016 [48] | |||||
5,27 | 8 октября 2016 [49] | |||||
5,28 | 15 ноября 2016 [50] | Новый фреймворк: KSyntaxHighlighting [51] | ||||
5,29 | 12 декабря 2016 [52] | Новый фреймворк: тюрьма | ||||
5.30 | 14 января 2017 [53] | Добавить поддержку KNewStuff для KPackage | ||||
5,31 | 11 февраля 2017 [54] | Многие модули теперь имеют привязки к Python, теперь требуется Qt 5.6 или выше. | ||||
5,32 | 11 марта 2017 [55] | |||||
5,33 | 8 апреля 2017 [56] | |||||
5,34 | 13 мая 2017 [57] | |||||
5,35 | 1 июня 2017 [58] | |||||
5,36 | 8 июля 2017 [59] | |||||
5,37 | 13 августа 2017 [60] | Новый фреймворк: Kirigami, теперь требуется Qt 5.7 или выше. | ||||
5,38 | 9 сентября 2017 [61] | |||||
5,39 | 14 октября 2017 [62] | |||||
5,40 | 11 ноября 2017 [63] | |||||
5,41 | 10 декабря 2017 [64] | |||||
5,42 | 13 января 2018 [65] | |||||
5,43 | 12 февраля 2018 [66] | Новые рамки: Праздники и Цель | ||||
5,44 | 10 марта 2018 [67] | |||||
5,45 | 14 апреля 2018 [68] | требует Qt 5.8 или выше | ||||
5,46 | 12 мая 2018 [69] | |||||
5,47 | 9 июня 2018 [70] | |||||
5,48 | 15 июля 2018 [71] | |||||
5,49 | 11 августа 2018 [72] | |||||
5,50 | 8 сентября 2018 [73] | Новый фреймворк: Syndication | ||||
5,51 | 15 октября 2018 [74] | |||||
5,52 | 10 ноября 2018 [75] | |||||
5,53 | 9 декабря 2018 [76] | требуется Qt 5.9 или выше | ||||
5,54 | 12 января 2019 [77] | |||||
5,55 | 9 февраля 2019 [78] | требуется Qt 5.10 или выше | ||||
5,56 | 9 марта 2019 [79] | |||||
5,57 | 13 апреля 2019 [80] | |||||
5,58 | 13 мая 2019 [81] | |||||
5,59 | 8 июня 2019 [82] | |||||
5,60 | 13 июля 2019 [83] | требуется Qt 5.11 или выше | ||||
5,61 | 10 августа 2019 [84] | |||||
5,62 | 14 сентября 2019 [85] | |||||
5,63 | 12 октября 2019 [86] | Добавлены KCalendarCore и KContacts | ||||
5,64 | 10 ноября 2019 [87] | |||||
5,65 | 14 декабря 2019 [88] | Добавлен KQuickCharts | ||||
5,66 | 11 января 2020 [89] | |||||
5,67 | 8 февраля 2020 [90] | |||||
5,68 | 15 марта 2020 [91] | |||||
5,69 | 5 апреля 2020 [92] | |||||
5,70 | 9 мая 2020 [93] | |||||
5,71 | 13 июня 2020 [94] | |||||
5,72 | 11 июля 2020 [95] | |||||
5,73 | 8 августа 2020 [96] | |||||
5,74 | 12 сентября 2020 [97] | |||||
5,75 | 10 октября 2020 [98] | |||||
5,76 | 7 ноября 2020 [99] | |||||
5,77 | 12 декабря 2020 [100] | |||||
5,78 | 9 января 2021 г. [101] | |||||
5,79 | 12 февраля 2021 г. [102] | |||||
5,80 | 13 марта 2021 г. [103] | |||||
5,81 | 10 апреля 2021 г. [104] | |||||
5,82 | 8 мая 2021 г. [105] | |||||
5,83 | 12 июня 2021 г. [106] | |||||
5,84 [107] |
История
Исходный код KDE Frameworks существует со времен KDElibs 1. Первый выпуск KDE Frameworks был с версией 5, чтобы учесть тот факт, что кодовая база была версией KDE Platform версии 4 (единственной основной версией KDE Platform ).
Переход с платформы KDE на платформу KDE Frameworks начался в августе 2013 года под руководством ведущих технических разработчиков KDE. [8]
После первоначального выпуска KDE Frameworks 5.0 разработчики сосредоточились на добавлении новых функций к компонентам KDE Frameworks 5 [108] , примером которых является лучшая интеграция Firefox в KDE. [109]
Основное улучшение Frameworks 5 - это его модульность. В более ранних версиях KDE библиотеки были объединены в один большой пакет. В Frameworks библиотеки были разделены на отдельные более мелкие пакеты. Это облегчает использование библиотек другим программным обеспечением на основе Qt, поскольку зависимости могут быть минимальными. [8]
В то время как KDE 4 был основан на версии 4 набора инструментов виджетов Qt , Frameworks 5 основан на версии 5.
Принятие
Кроме того, KDE Software Compilation , существуют и другие усыновителей , такие как настольные среды LXQt , MoonLightDE или Гавайских островов.
Версия 3.0 Krita , редактора растровой графики пакета Calligra Suite , выпущенного 31 мая 2016 г., зависит от KDE Frameworks 5 и Qt 5.2.
С Kirigami также увеличивается использование такими приложениями, как Amarok , Avogadro , Trojitá или Subsurface .
Рекомендации
- ^ «KDE Ships Frameworks 5.83.0» . KDE . 12 июня 2021 . Проверено 16 июня 2021 года .
- ^ https://www.kde.org/announcements/kde-frameworks-5.24.0.php
- ^ https://community.kde.org/Android
- ^ https://api.kde.org/
- ^ «Первый выпуск KDE Frameworks 5» . 2014-07-07.
- ^ «Фреймворки KDE» . Документация по API .
- ^ «Фреймворки KDE» . Техническая база .
- ^ а б в Ховард Чан (4 сентября 2013 г.). «Структура выпуска KDE развивается» . KDE . Проверено 27 февраля 2014 .
- ^ «График выпуска KDE Frameworks 5» .
- ^ «Рабочий процесс Git для фреймворков» .
- ^ «Документация по API KDE Frameworks5» . Архивировано из оригинала на 2014-08-22.
- ^ «Совместимость с KDE Platform 4» .
- ^ "metainfo.yaml KConfig" .
- ^ Джос Поортвлит (17 декабря 2013). «Qt 5.2 - Основа для KDE Frameworks 5» . Dot.kde.org . Проверено 10 марта 2014 .
- ^ Ховард Чан (25 сентября 2013 г.). «Рамки 5» . Dot.kde.org . Проверено 10 марта 2014 .
- ^ http://blog.martin-graesslin.com/blog/2014/02/kwindowsystem-in-frameworks-5/
- ^ «KGlobalAccel в Debian» .
- ^ «KGlobalAccel в Fedora» .
- ^ «Предварительный просмотр технологии Frameworks 5» . KDE. 2014-01-07.
- ^ «KDE выпускает первую альфа-версию Frameworks 5» . KDE. 2014-02-14.
- ^ «KDE выпускает вторую альфа-версию Frameworks 5» . KDE. 2014-03-03.
- ^ «Первый выпуск KDE Frameworks 5» . KDE . 2014-07-07 . Проверено 31 декабря 2017 .
- ^ «Второй выпуск KDE Frameworks 5» . KDE . 2014-08-07 . Проверено 31 декабря 2017 .
- ^ «Выпуск KDE Frameworks 5.2.0» . KDE. 12 сентября 2014 . Проверено 5 марта 2015 года .
- ^ «Выпуск KDE Frameworks 5.3.0» . KDE. 7 октября 2014 . Проверено 5 марта 2014 .
- ^ «Выпуск KDE Frameworks 5.4.0» . KDE. 6 ноября 2014 . Проверено 5 марта 2015 года .
- ^ «Выпуск KDE Frameworks 5.5.0» . KDE. 11 декабря 2014 . Проверено 5 марта 2015 года .
- ^ «Выпуск KDE Frameworks 5.6.0» . KDE. 8 января 2015 . Проверено 5 марта 2015 года .
- ^ «Выпуск KDE Frameworks 5.7.0» . KDE. 14 февраля 2015 . Проверено 5 марта 2015 года .
- ^ «Выпуск KDE Frameworks 5.8.0» . KDE. 13 марта 2015 . Проверено 13 марта 2015 года .
- ^ «Выпуск KDE Frameworks 5.9.0» . KDE. 10 апреля 2015 . Проверено 30 апреля 2015 года .
- ^ «Выпуск KDE Frameworks 5.10.0» . KDE. 8 мая 2015 . Дата обращения 9 мая 2015 .
- ^ «Выпуск KDE Frameworks 5.11.0» . KDE . Проверено 29 июня 2015 года .
- ^ «Выпуск KDE Frameworks 5.12.0» . KDE . Проверено 10 июля 2015 года .
- ^ «Выпуск KDE Frameworks 5.13.0» . KDE. 2015-08-12 . Проверено 12 августа 2015 .
- ^ «Выпуск KDE Frameworks 5.14.0» . KDE. 2015-09-12 . Проверено 12 сентября 2015 .
- ^ «Выпуск KDE Frameworks 5.15.0» . KDE. 2015-10-10.
- ^ «Выпуск KDE Frameworks 5.16.0» . KDE. 2015-11-13.
- ^ «Выпуск KDE Frameworks 5.17.0» . KDE. 2015-12-12.
- ^ «Выпуск KDE Frameworks 5.18.0» . KDE. 2016-01-09.
- ^ «Выпуск KDE Frameworks 5.19.0» . KDE. 2016-02-13.
- ^ «Выпуск KDE Frameworks 5.20.0» . KDE . 2016-03-13 . Проверено 31 декабря 2017 .
- ^ «Выпуск KDE Frameworks 5.21.0» . KDE . 2016-04-09 . Проверено 9 апреля 2016 .
- ^ «Выпуск KDE Frameworks 5.22.0» . KDE . 2016-05-15 . Проверено 15 мая 2016 .
- ^ «Выпуск KDE Frameworks 5.23.0» . KDE . 2016-06-13 . Проверено 14 июня 2016 .
- ^ «Выпуск KDE Frameworks 5.24.0» . KDE . 2016-07-09 . Проверено 10 июля 2016 .
- ^ «Выпуск KDE Frameworks 5.25.0» . KDE . 2016-08-13 . Проверено 21 августа 2016 .
- ^ «Выпуск KDE Frameworks 5.26.0» . KDE . 2016-09-10 . Проверено 8 октября 2016 .
- ^ «Выпуск KDE Frameworks 5.27.0» . KDE . 2016-10-08 . Проверено 8 октября 2016 .
- ^ «Выпуск KDE Frameworks 5.28.0» . KDE . 2016-11-15 . Проверено 15 ноября 2016 .
- ^ «KSyntaxHighlighing: новая структура подсветки синтаксиса» . KDE . 2016-11-15 . Проверено 21 ноября 2016 .
- ^ «Выпуск KDE Frameworks 5.29.0» . KDE . 2016-12-12 . Проверено 13 декабря 2016 .
- ^ «Выпуск KDE Frameworks 5.30.0» . KDE . 2017-01-14 . Проверено 27 января 2017 .
- ^ «Выпуск KDE Frameworks 5.31.0» . KDE . 2017-02-11 . Проверено 19 февраля 2017 .
- ^ «Выпуск KDE Frameworks 5.32.0» . KDE . 2017-03-11 . Проверено 11 марта 2017 .
- ^ «Выпуск KDE Frameworks 5.33.0» . KDE . 2017-04-08 . Проверено 8 апреля 2017 .
- ^ «Выпуск KDE Frameworks 5.34.0» . KDE . 2017-05-13 . Проверено 13 мая 2017 .
- ^ «Выпуск KDE Frameworks 5.35.0» . KDE . 2017-06-10 . Проверено 10 июня 2017 .
- ^ «Выпуск KDE Frameworks 5.36.0» . KDE . 2017-07-08 . Проверено 8 июля 2017 .
- ^ «Выпуск KDE Frameworks 5.37.0» . KDE . 2017-08-13 . Проверено 9 сентября 2017 .
- ^ «Выпуск KDE Frameworks 5.38.0» . KDE . 2017-09-09 . Проверено 9 сентября 2017 .
- ^ «Выпуск KDE Frameworks 5.39.0» . KDE . 2017-10-14 . Проверено 31 декабря 2017 .
- ^ «Выпуск KDE Frameworks 5.40.0» . KDE . 2017-11-11 . Проверено 31 декабря 2017 .
- ^ «Выпуск KDE Frameworks 5.41.0» . KDE . 2017-12-10 . Проверено 31 декабря 2017 .
- ^ «Выпуск KDE Frameworks 5.42.0» . KDE . 2018-01-13 . Проверено 15 января 2018 .
- ^ «Выпуск KDE Frameworks 5.43.0» . KDE . 2018-02-12 . Проверено 12 февраля 2018 .
- ^ «Выпуск KDE Frameworks 5.44.0» . KDE . 2018-03-10 . Проверено 14 апреля 2018 .
- ^ «Выпуск KDE Frameworks 5.45.0» . KDE . 2018-04-14 . Проверено 14 апреля 2018 .
- ^ «Выпуск KDE Frameworks 5.46.0» . KDE . 2018-05-12 . Проверено 12 мая 2018 .
- ^ «Выпуск KDE Frameworks 5.47.0» . KDE . 2018-06-09 . Проверено 9 июня 2018 .
- ^ «Выпуск KDE Frameworks 5.48.0» . KDE . 2018-07-15 . Проверено 15 августа 2018 .
- ^ «Выпуск KDE Frameworks 5.49.0» . KDE . 2018-08-11 . Проверено 15 августа 2018 .
- ^ «Выпуск KDE Frameworks 5.50.0» . KDE . 2018-09-08 . Проверено 8 сентября 2018 .
- ^ «Выпуск KDE Frameworks 5.51.0» . KDE . 2018-10-15 . Проверено 29 января 2019 .
- ^ «Выпуск KDE Frameworks 5.52.0» . KDE . 2018-11-10 . Проверено 29 января 2019 .
- ^ «Выпуск KDE Frameworks 5.53.0» . KDE . 2018-12-09 . Проверено 29 января 2019 .
- ^ «Выпуск KDE Frameworks 5.54.0» . KDE . 2019-01-12 . Проверено 29 января 2019 .
- ^ «Выпуск KDE Frameworks 5.55.0» . KDE . 2019-02-09 . Проверено 9 февраля 2019 .
- ^ «Выпуск KDE Frameworks 5.56.0» . KDE . 2019-03-09 . Проверено 4 сентября 2019 .
- ^ «Выпуск KDE Frameworks 5.57.0» . KDE . 2019-04-13 . Проверено 18 апреля 2019 .
- ^ «Выпуск KDE Frameworks 5.58.0» . KDE . 2019-05-13 . Проверено 4 сентября 2019 .
- ^ «Выпуск KDE Frameworks 5.59.0» . KDE . 2019-06-08 . Проверено 4 сентября 2019 .
- ^ «Выпуск KDE Frameworks 5.60.0» . KDE . 2019-07-13 . Проверено 4 сентября 2019 .
- ^ «Выпуск KDE Frameworks 5.61.0» . KDE . 2019-08-10 . Проверено 4 сентября 2019 .
- ^ «Выпуск KDE Frameworks 5.62.0» . KDE . 2019-09-14 . Проверено 12 октября 2019 .
- ^ «Выпуск KDE Frameworks 5.63.0» . KDE . 2019-10-12 . Проверено 12 октября 2019 .
- ^ «Выпуск KDE Frameworks 5.64.0» . KDE . 2019-11-10 . Проверено 14 декабря 2019 .
- ^ «Выпуск KDE Frameworks 5.65.0» . KDE . 2019-12-14 . Проверено 14 декабря 2019 .
- ^ «Выпуск KDE Frameworks 5.66.0» . KDE . 2020-01-11 . Проверено 11 января 2020 .
- ^ «Выпуск KDE Frameworks 5.67.0» . KDE . 2020-02-02 . Проверено 9 февраля 2020 .
- ^ «Выпуск KDE Frameworks 5.68.0» . KDE . 2020-03-15 . Проверено 16 марта 2020 .
- ^ «Выпуск KDE Frameworks 5.69.0» . KDE . Проверено 6 мая 2020 .
- ^ «Выпуск KDE Frameworks 5.70.0» . KDE . Проверено 9 мая 2020 .
- ^ «Выпуск KDE Frameworks 5.71.0» . KDE . Проверено 13 июня 2020 .
- ^ «Выпуск KDE Frameworks 5.72.0» . KDE . Проверено 14 июля 2020 .
- ^ «Выпуск KDE Frameworks 5.73.0» . KDE . Проверено 9 августа 2020 .
- ^ «Выпуск KDE Frameworks 5.74.0» . KDE . Проверено 12 сентября 2020 .
- ^ «Выпуск KDE Frameworks 5.75.0» . KDE . Проверено 12 октября 2020 .
- ^ «Выпуск KDE Frameworks 5.76.0» . KDE . Проверено 14 ноября 2020 .
- ^ «Выпуск KDE Frameworks 5.77.0» . KDE . Проверено 12 декабря 2020 .
- ^ «KDE Ships Frameworks 5.78.0» . KDE . Проверено 9 января 2021 .
- ^ «KDE Ships Frameworks 5.79.0» . KDE . Проверено 15 февраля 2021 .
- ^ «KDE Ships Frameworks 5.80.0» . KDE . Проверено 14 марта 2021 .
- ^ «KDE Ships Frameworks 5.81.0» . KDE . Проверено 10 апреля 2021 .
- ^ «KDE Ships Frameworks 5.82.0» . KDE . Проверено 8 мая 2021 .
- ^ «KDE Ships Frameworks 5.83.0» . KDE . Проверено 12 июня 2021 .
- ^ «Расписания / Рамки» . KDE . Проверено 12 июня 2021 .
- ^ «Протокол заседания по обновлению KF5 2014-w28» . 2014-07-08.
- ^ «Интеграция Firefox + KDE: Обеспечение FF для надежного использования Dolphin» . 2014-07-03.
Внешние ссылки
- KDE Frameworks в собственном экземпляре Gitlab KDE
- Фреймворки KDE в старом Phabricator
- Список репозиториев KDE Frameworks в Phabricator