Redaktor:Mthw0/sandbox
KDE Frameworks je zbierka knižníc a frameworkov od KDE, ktoré sú ľahko dostupné pre všetky softvérové balíčky alebo aplikácie založené na Qt vo viacerých operačných systémoch.
Ponúkajú širokú škálu bežne potrebných funkčných riešení, ako je hardvérová integrácia, podpora formátu súborov, ďalšie grafické ovládacie prvky, funkcie vykresľovania, kontrola pravopisu a ďalšie a slúžia ako technologický základ pre aplikácie KDE Plasma 5 a KDE distribuované na základe GNU Lesser General Public License (LGPL).
Prehľad
[upraviť | upraviť zdroj]Súčasné KDE Frameworks sú založené na Qt 5, ktorý umožňuje širšie používanie QML, jednoduchšieho deklaračného programovacieho jazyka založeného na JavaScripte, pre návrh užívateľských rozhraní. Grafický renderovací modul používaný QML umožňuje plynulejšie užívateľské rozhranie medzi rôznymi zariadeniami.[1]
Od rozdelenia softvérovej kompilácie KDE do rámcov KDE 5, aplikácií KDE Plasma 5 a KDE si každý podprojekt môže zvoliť svoje vlastné tempo vývoja. KDE Frameworks sa vydávajú mesačne[2] a používajú git.[3][4]
Malo by byť možné nainštalovať KDE Framework spolu s KDE Platform 4, aby aplikácie mohli používať jeden z nich.[5]
Stabilita API a ABI
[upraviť | upraviť zdroj]Vydania platformy sú hlavné vydania, ktoré začínajú sériami (číslo verzie X.0). Iba tieto hlavné vydania môžu prerušiť binárnu kompatibilitu s predchodcom. Na druhej strane, vydania v menších sériách (X.1, X.2, ...) zaručia binárnu prenosnosť (API & ABI). To napríklad znamená, že softvér vyvinutý pre KDE 3.0 bude fungovať vo všetkých (budúcich) vydaniach KDE 3; Avšak aplikácia vyvinutá pre KDE 2 nezaručuje, že bude môcť využívať knižnice KDE 3. Čísla hlavných verzií KDE sa riadia hlavne cyklom vydania Qt, čo znamená, že KDE SC 4 je založený na Qt 4, zatiaľ čo KDE 3 bol založený na Qt 3.
Podporované operačné systémy
[upraviť | upraviť zdroj]Úložisko každého rámca by malo obsahovať súbor s názvom metainfo.yaml.[6] Tento súbor dokumentuje správcu rámca, typ, podporovaný operačný systém a ďalšie informácie. V súčasnosti podporované platformy sú Linux, Microsoft Windows, Mac OS X a Android.
Softvérová architektúra
[upraviť | upraviť zdroj]Štruktúra
[upraviť | upraviť zdroj]Rámce majú jasnú štruktúru závislosti a sú rozdelené do „kategórií“ a „úrovní“. „Kategórie“ sa týkajú závislostí runtime:
- Funkčné prvky nemajú závislosť od doby behu.
- Integrácia označuje kód, ktorý si môže vyžadovať integráciu runtime modulov v závislosti od toho, čo OS alebo platforma ponúka.
- Riešenia majú záväzné závislosti na runtime.
„Úrovne“ sa týkajú závislostí v čase kompilácie od iných rámcov.
- Rámce triedy 1 nemajú v rámci rámcov žiadnu závislosť a potrebujú iba Qt a ďalšie príslušné knižnice.
- Rámce úrovne 2 môžu závisieť iba od úrovne 1.
- Rámce Tier 3 môžu závisieť od iných rámcov Tier 3, ako aj Tier 2 a Tier 1.
Komponenty
[upraviť | upraviť zdroj]TBalík KDE Frameworks obsahuje viac ako 70 balíkov. V KDE SC 4 existovali ako jeden veľký balík nazývaný kdelibs. Kdelibs bol rozdelený do niekoľkých samostatných rámcov, z ktorých niektoré už nie sú súčasťou KDE, ale boli integrované do Qt 5.2.[7]
KDE Frameworks sú zoskupené do štyroch rôznych úrovní podľa závislosti od iných knižníc. Rámce triedy 1 závisia iba od Qt alebo iných systémových knižníc. Rámce úrovne 2 môžu závisieť od knižníc úrovne 1, Qt a/alebo iných systémových knižníc atď.[8]
Complete list of frameworks | |||
---|---|---|---|
Name | Tier | git | Description |
Frameworkintegration | 4 | frameworkintegration.git | Framework Integration is a set of plugins responsible for better integration of Qt applications when running on a KDE Plasma workspace. Applications do not need to link to this directly. The library KF5Style provides integration with KDE Plasma Workspace settings for Qt styles. Derive your Qt style from KStyle to automatically inherit various settings from the KDE Plasma Workspace, providing a consistent user experience. For example, this will ensure a consistent single-click or double-click activation setting, and the use of standard themed icons. |
KActivities | 3 | kactivities.git | Core components for KDE Activities' Activity Manager. |
KApiDox | 4 | kapidox.git | Scripts and data for building API documentation in a standard format and style. This framework contains scripts and data for building API documentation (dox) in a standard format and style. The Doxygen tool is used to do the actual documentation extraction and formatting, but this framework provides a wrapper script to make generating the documentation more convenient (including reading settings from the target framework or other module) and a standard template for the generated documentation. |
KArchive | 1 | karchive.git | Classes for easy reading, creation and manipulation of "archive" formats including zip and tar. |
KAuth | 2 | kauth.git | Provides a convenient, system-integrated way to offload actions that need to be performed as a privileged user to small helper utilities. |
KBookmarks | 3 | kbookmarks.git | KBookmarks lets you access and manipulate bookmarks stored using the "XBEL format". The most common use for bookmarks is web browsers, but this can also be useful in any application where local files or URLs can be saved as bookmarks. |
KCMUtils | 3 | kcmutils.git | Utilities, i.a. KSettings, for KDE System Settings modules. KCMUtils provides various classes to work with KCModules. KCModules can be created with the KConfigWidgets framework. |
KCodecs | 1 | kcodecs.git | KCodecs is a string encoding library, it provides a collection of methods to manipulate strings using various encodings. It can automatically determine the charset of a string, translate XML entities, validate email addresses, and find encodings by name in a more tolerant way than QTextCodec (useful e.g. for data coming from the Internet). |
KCompletion | 2 | kcompletion.git | String completion framework, including completion-enabled lineedit and combobox. When typing filenames, email addresses and other text where the user often wants to select from existing data (including what they previously typed) rather than enter anything wholly original, users often find it helpful if they only need to type the first few characters, and then have the application offer them a set of choices or attempt to finish off what they were typing. Email clients, shells and "open file" dialogs often provide this functionality. This framework helps implement this in Qt-based applications. You can use one of the completion-ready widgets provided by this framework, or integrate it into your application's other widgets directly. The easiest way to get started is to use a KComboBox, KHistoryComboBox or KLineEdit. If you want to integrate completion into other parts of the user interface, you can use KCompletion to manage and select the possible completions. |
KConfig | 1 | kconfig.git | Persistent platform-independent application settings made of two parts: KConfigCore and KConfigGui. KConfigCore provides access to the configuration files themselves, meaning it also generates the configuration in XML. KConfigGui provides a way to hook graphical control elements (widgets) to the configuration so that they are automatically initialized from the configuration and automatically propagate their changes to their respective configuration files. |
KConfigWidgets | 3 | kconfigwidgets.git | Graphical control elements (widgets) for configuration dialogs. Widgets for configuration dialogs. KConfigWidgets provides easy-to-use classes to create configuration dialogs, as well as a set of widgets which uses KConfig to store their settings. |
KCoreAddons | 1 | kcoreaddons.git | Utilities for core application functionality and accessing the OS. Qt addon library with a collection of non-GUI utilities. KCoreAddons provides classes built on top of QtCore to perform various tasks such as manipulating mime types, autosaving files, creating backup files, generating random sequences, performing text manipulations such as macro replacement, accessing user information and many more. |
KCrash | 2 | kcrash.git | Provides support for intercepting and handling application crashes. |
KDBusAddons | 1 | kdbusaddons.git | KDBusAddons provides convenience DBus classes on top of QtDBus, as well as an API to create KDED modules. |
KDeclarative | 3 | kdeclarative.git | Addon for Qt declarative |
KDED | 3 | kded.git | KDED stands for KDE Daemon, the central daemon of KDE work spaces. KDED runs in the background and performs a number of small tasks. Some of these tasks are built in, others are started on demand. |
KDesignerPlugin | 3 | kdeclarative.git | This framework provides plugins for Qt Designer that allow it to display the widgets provided by various KDE frameworks, as well as a utility (kgendesignerplugin) that can be used to generate other such plugins from ini-style description files. |
KDESu | 3 | kdesu.git | KDESU (KDE super user) provides a user interface for running shell commands with root privileges. It provides functionality for building GUI front ends for (password asking) console mode programs. For example, kdesu and kdessh use it to interface with su and ssh respectively. |
KDEWebkit | 3 | kdewebkit.git | Integration of the HTML rendering engine WebKit. The KDEWebkit library provides KDE integration of the QtWebKit library. If you are using QtWebKit in your KDE application, you are encouraged to use this layer instead of using the QtWebKit classes directly. In particular, you should use KWebView in place of QWebView, KGraphicsWebView in place of QGraphicsWebView and KWebPage in place of QWebPage. |
KDNSSDFramework | 2 | kdnssd.git | KDNSSD is a library for handling the DNS-based Service Discovery Protocol (DNS-SD), the layer of [Zeroconf] (http://www.zeroconf.org) that allows network services, such as printers, to be discovered without any user intervention or centralized infrastructure. |
KDocTools | 2 | kdoctools.git | Provides tools to generate documentation in various format from DocBook files. |
KEmoticons | 3 | kemoticons.git | Provides emoticons themes as well as helper classes to automatically convert text emoticons to graphical emoticons. |
KGlobalAccel | 1 | kglobalaccel.git | KGlobalAccel allows you to have global keyboard shortcuts (accelerators) that are independent of the focused window. Unlike regular shortcuts, the application's window does not need focus for them to be activated. |
KGuiAddons | 1 | kguiaddons.git | KDE GUI Addons; Utilities for graphical user interfaces; The KDE GUI addons provide utilities for graphical user interfaces in the areas of colors, fonts, text, images, keyboard input. |
KHTML | 4 | khtml.git | KHTML is the HTML rendering engine from which WebKit was forked. It is based on the KParts technology and uses KJS for JavaScript support. |
Ki18n | 1 | ki18n.git | KDE gettext-based UI text internationalization. KI18n provides functionality for internationalizing user interface text in applications, based on the GNU Gettext translation system. It wraps the standard Gettext functionality, so that the programmers and translators can use the familiar Gettext tools and workflows. KI18n provides additional functionality as well, for both programmers and translators, which can help to achieve a higher overall quality of source and translated text. This includes argument capturing, customizable markup, and translation scripting. |
KIconThemes | 3 | kiconthemes.git | This library contains classes to improve the handling of icons in applications using the KDE Frameworks. |
KIdleTime | 1 | kidletime.git | Integration module for idle time detection. |
KImageFormats | 1 | kimageformats.git | Plugins to allow QImage to support extra file formats. This framework provides additional image format plugins for QtGui. As such it is not required for the compilation of any other software, but Máj be a runtime requirement for Qt-based software to support certain image formats. The following image formats have read-only support:
The following image formats have read and write support:
|
KInit | 3 | kinit.git | kdeinit is a process launcher, that launches processes by forking and then loading a dynamic library which should contain a 'kdemain(...)' function. kdeinit speeds up start of applications on KDE workspaces; kdeinit is linked against all libraries a standard KDE application needs. With this technique starting an application becomes much faster because now only the application itself needs to be linked whereas otherwise both the application as well as all the libraries it uses need to be linked. |
KIO | 3 | kio.git | Network transparent access to files and data. This framework implements almost all the file management functions you will ever need. Dolphin and the KDE file dialog also uses this to provide its network-enabled file management. |
Kirigami | 1 | kirigami.git | A set of QtQuick plugins to build user interfaces based on the KDE UX guidelines |
KItemModels | 1 | kitemmodels.git | Set of item models extending the Qt model-view framework. KItemModels provides the following models:
|
KItemViews | 1 | kitemviews.git | Set of item views extending the Qt model-view framework. KItemViews includes a set of views, which can be used with item models. It includes views for categorizing lists and to add search filters to flat and hierarchical lists. |
KJobWidgets | 2 | kjobwidgets.git | KJobWIdgets provides widgets for showing progress of asynchronous jobs. |
KJS | 1 | kjs.git | KJS provides an ECMAScript compatible interpreter. The ECMA standard is based on well known scripting languages such as Netscape's JavaScript and Microsoft's JScript. |
KJSEmbed | 3 | kjsembed.git | KSJEmbed provides a method of binding JavaScript objects to QObjects, so you can script your applications. |
KMediaPlayer | 3 | kmediaplayer.git | Deprecated: Interface for media player KParts. KMediaPlayer builds on the KParts framework to provide a common interface for KParts that can play media files. This framework is a porting aid. It is not recommended for new projects, and existing projects that use it are advised to port away from it, and use plain KParts instead. |
KNewStuff | 3 | knewstuff.git | Framework for downloading and sharing additional application data. The KNewStuff library implements collaborative data sharing for applications. It uses libattica to support the Open Collaboration Services specification. Attica is a Qt library that implements the Open Collaboration Services API version 1.6. It grants easy access to the services such as querying information about persons and contents. |
KNotifications | 3 | knotifications.git | Solution with abstraction for system notifications. |
KNotifyConfig | 3 | knotifyconfig.git | Module for KNotify configuration. |
KParts | 3 | kparts.git | The KParts library implements the framework for KDE parts. One individual user interface component is called a KPart and is some elaborate widget with a user-interface defined in terms of actions (menu items, toolbar icons). KParts are analogous to Bonobo components in GNOME and ActiveX controls in Microsoft's Component Object Model. Konsole is available as a KPart and is used in applications like Konqueror and Kate. Example uses of KParts:
Further documentation:
|
KPlotting | 1 | kplotting.git | KPlotWidget is a QWidget-derived class that provides a virtual base class for easy data-plotting. The idea behind KPlotWidget is that you only have
to specify information in "data units"; i.e., the natural units of the data being plotted. KPlotWidget automatically converts everything to screen pixel units. KPlotWidget draws X and Y axes with tick marks and tick labels. It automatically determines how many tick marks to use and where they should be, based on the data limits specified for the plot. You change the limits by calling `setLimits(double x1, double x2, double y1, double y2)`. Data to be plotted are stored using the KPlotObject class. KPlotObject consists of a QList of QPointF's, each specifying the X,Y coordinates of a data point. KPlotObject also specifies the "type" of data to be plotted (POINTS or CURVE or POLYGON or LABEL). |
KPty | 2 | kpty.git | Interfacing with pseudo terminal devices. This library provides primitives to interface with pseudo terminal devices as well as a KProcess derived class for running child processes and communicating with them using a pty. |
Kross | 3 | kross.git | Embedding of scripting into applications. Kross is a scripting bridge to embed scripting functionality into an application. It supports QtScript as a scripting interpreter back-end. The core of Kross provides the framework to deal transparently with interpreter-back-ends and offers abstract functionality to deal with scripts. |
KRunner | 3 | krunner.git | Framework for providing different actions given a string query. Framework for Plasma runners. The Plasma workspace provides an application called KRunner which, among other things, allows one to type into a text area which causes various actions and information that match the text appear as the text is being typed. One application for this is the universal runner you can launch with Šablóna:Keypress. |
KService | 3 | kservice.git | KService provides a plugin framework for handling desktop services. Services can be applications or libraries. They can be bound to MIME types or handled by application specific code. |
KSyntaxHighlighting | 1 | syntax-highlighting.git | This is a stand-alone implementation of the Kate syntax highlighting engine. It's meant as a building block for text editors as well as for simple highlighted text rendering (e.g. as HTML), supporting both integration with a custom editor as well as a ready-to-use QSyntaxHighlighter sub-class. |
KTextEditor | 3 | ktexteditor.git | KTextEditor provides a powerful text editor component that you can embed in your application, either as a KPart or using the KF5::TextEditor library (if you need more control). The text editor component contains many useful features, from syntax highlighting and automatic indentation to advanced scripting support, making it suitable for everything from a simple embedded text-file editor to an advanced IDE. |
KTextWidgets | 3 | ktextwidgets.git | KTextWidgets provides widgets for displaying and editing text. It supports rich text as well as plain text. |
KUnitConversion | 2 | kunitconversion.git | KUnitConversion provides functions to convert values in different physical units. It supports converting different prefixes (e.g. kilo, mega, giga) as well as converting between different unit systems (e.g. liters, gallons). The following areas are supported:
|
KWalletFramework | 3 | kwallet.git | Safe desktop-wide storage for passwords. This framework contains two main components:
|
KWayland | 1 | kwayland.git | KWayland is the KDE library for implementing Wayland support in KDE applications, it fulfills needs beyond what QtWayland provides. All the KDE applications in a plasma-wayland-session use this library and LXQt Májbe as well. KWayland has been part of KDE Frameworks since 5.22 (Máj 2016); it was formerly distributed as part of KDE Plasma 5. |
KWidgetsAddons | 1 | kwidgetsaddons.git | Addon with various classes on top of QtWidgets. If you are porting applications from KDE Platform 4 "kdeui" library, you will find many of its classes here. Provided are action classes that can be added to toolbars or menus, a wide range of widgets for selecting characters, fonts, colors, actions, dates and times, or MIME types, as well as platform-aware dialogs for configuration pages, message boxes, and password requests. Further widgets and classes can be found in other KDE frameworks. |
KWindowSystem | 1 | kwindowsystem.git | Allows to interact with the windowing system. It provides a NETRootInfo for accessing the global state (all that’s set on the root window) and NETWinInfo for all information about a specific window. The classes have a window manager and client perspective. This is the foundation which powers KWin and various parts of the graphical shell such as the taskmanager.[9] On top of those X11-specific classes we have a convenient API KWindowInfo and KWindowSystem which provides a windowing system independent API for our applications. |
KXMLGUI | 3 | kxmlgui.git | KXMLGUI provides a framework for managing menu and toolbar actions in an abstract way. The actions are configured through a XML description and hooks in the application code. The framework supports merging of multiple description for example for integrating actions from plugins. KXMLGui makes use of the Kiosk authorization functionality of KConfig (see the KAuthorized namespace in that framework). Notably, QAction instances added to a KActionCollection are disabled if KAuthorized::authorizeAction() reports that they are not authorized. The items on the standard help menu (KHelpMenu) can likewise be disabled based on Kiosk settings, and toolbar editing can be restricted. See KActionCollection, KHelpMenu and KToolBar documentation for more information. |
Plasma-framework | 3 | plasma-framework.git | Foundational libraries, runtime components and tools of the KDE Plasma workspaces based upon KF5 and Qt5. The plasma framework provides the following:
|
Prison | 1 | prison.git | Prison is a Qt-based barcode abstraction layer/library and provides uniform access to generation of barcodes with data. |
Solid | 1 | solid.git | Solid provides a way of querying and interacting with hardware independently of the underlying operating system. It provides the following features for application developers:
|
Sonnet | 1 | sonnet.git | Sonnet is a plugin-based spell checking library for Qt-based applications. It supports several different plugins, including HSpell, Enchant, ASpell and HUNSPELL. It also supports automated language detection, based on a combination of different algorithms. The simplest way to use Sonnet in your application is to use the SpellCheckDecorator class on your QTextEdit. |
Syndication | 2 | syndication.git | Syndication is an RSS/Atom parser library. |
ThreadWeaver | 1 | threadweaver.git | ThreadWeaver is a Job queue. It executes jobs in threads it internally manages. |
Softvérové balíky
[upraviť | upraviť zdroj]Distribúcia v systéme Linux používa určitý systém správy balíkov na zabalenie softvéru, ktorý distribuujú. Debian napríklad distribuuje KGlobalAccel pod názvom balíka libkf5globalaccel,[10] zatiaľ čo Fedora ho distribuuje pod názvom kf5-kglobalaccel.[11]
História vydaní
[upraviť | upraviť zdroj]Verzia 5.0 predchádzala ukážka technológie, dve verzie alfa a tri verzie beta.[12][13][14][15]
Frameworks 5 vydania | ||
---|---|---|
Verzia | Dátum | Poznámky |
Šablóna:Version | 7 Júl 2014[16] | Prvé vydanie, vyžaduje Qt 5.2. |
Šablóna:Version | 7 August 2014[17] | |
Šablóna:Version | 12 September 2014[18] | |
Šablóna:Version | 7 Október 2014[19] | |
Šablóna:Version | 6 November 2014[20] | |
Šablóna:Version | 11 December 2014[21] | |
Šablóna:Version | 8 Január 2015[22] | Nové frameworky: KPackage and NetworkManagerQt |
Šablóna:Version | 14 Február 2015[23] | |
Šablóna:Version | 13 Marec 2015[24] | New frameworks: KPeople and KXmlRpcClient |
Šablóna:Version | 10 Apríl 2015[25] | New framework: ModemManagerQt |
Šablóna:Version | 8 Máj 2015[26] | |
Šablóna:Version | 12 Jún 2015[27] | New framework: BlueZ-Qt (cf. BlueZ) |
Šablóna:Version | 10 Júl 2015[28] | |
Šablóna:Version | 12 August 2015[29] | New frameworks: Baloo (replaces NEPOMUK) and KFileMetaData, now requires Qt 5.3. |
Šablóna:Version | 11 September 2015[30] | |
Šablóna:Version | 10 Október 2015[31] | |
Šablóna:Version | 13 November 2015[32] | |
Šablóna:Version | 12 December 2015[33] | |
Šablóna:Version | 9 Január 2016[34] | |
Šablóna:Version | 13 Február 2016[35] | |
Šablóna:Version | 13 Marec 2016[36] | |
Šablóna:Version | 9 Apríl 2016[37] | New framework: KActivities-stats, now requires Qt 5.4. |
Šablóna:Version | 15 Máj 2016[38] | New framework: KWayland |
Šablóna:Version | 13 Jún 2016[39] | |
Šablóna:Version | 9 Júl 2016[40] | |
Šablóna:Version | 13 August 2016[41] | Now requires Qt 5.5 or above. |
Šablóna:Version | 10 September 2016[42] | |
Šablóna:Version | 8 Október 2016[43] | |
Šablóna:Version | 15 November 2016[44] | New framework: KSyntaxHighlighting[45] |
Šablóna:Version | 12 December 2016[46] | New framework: Prison |
Šablóna:Version | 14 Január 2017[47] | Add KNewStuff support for KPackage |
Šablóna:Version | 11 Február 2017[48] | Many modules now have Python bindings, now requires Qt 5.6 or above |
Šablóna:Version | 11 Marec 2017[49] | |
Šablóna:Version | 8 Apríl 2017[50] | |
Šablóna:Version | 13 Máj 2017[51] | |
Šablóna:Version | 1 Jún 2017[52] | |
Šablóna:Version | 8 Júl 2017[53] | |
Šablóna:Version | 13 August 2017[54] | New framework: Kirigami, now requires Qt 5.7 or above |
Šablóna:Version | 9 September 2017[55] | |
Šablóna:Version | 14 Október 2017[56] | |
Šablóna:Version | 11 November 2017[57] | |
Šablóna:Version | 10 December 2017[58] | |
Šablóna:Version | 13 Január 2018[59] | |
Šablóna:Version | 12 Február 2018[60] | New frameworks: KHolidays and Purpose |
Šablóna:Version | 10 Marec 2018[61] | |
Šablóna:Version | 14 Apríl 2018[62] | requires Qt 5.8 or above |
Šablóna:Version | 12 Máj 2018[63] | |
Šablóna:Version | 9 Jún 2018[64] | |
Šablóna:Version | 15 Júl 2018[65] | |
Šablóna:Version | 11 August 2018[66] | |
Šablóna:Version | 8 September 2018[67] | New framework: Syndication |
Šablóna:Version | 15 Október 2018[68] | |
Šablóna:Version | 10 November 2018[69] | |
Šablóna:Version | 9 December 2018[70] | requires Qt 5.9 or above |
Šablóna:Version | 12 Január 2019[71] | |
Šablóna:Version | 9 Február 2019[72] | requires Qt 5.10 or above |
Šablóna:Version | 9 Marec 2019[73] | |
Šablóna:Version | 13 Apríl 2019[74] | |
Šablóna:Version | 13 Máj 2019[75] | |
Šablóna:Version | 8 Jún 2019[76] | |
Šablóna:Version | 13 Júl 2019[77] | requires Qt 5.11 or above |
Šablóna:Version | 10 August 2019[78] | |
Šablóna:Version | 14 September 2019[79] | |
Šablóna:Version | 12 Október 2019[80] | Added KCalendarCore and KContacts |
Šablóna:Version | 9 November 2019[81] | |
Šablóna:Version |
História
[upraviť | upraviť zdroj]Zdrojový kód KDE Frameworks existuje už od KDElibs 1. Prvé vydanie ako KDE Frameworks bolo s verziou 5, aby sa zohľadnila skutočnosť, že základňou kódu bola platforma KDE verzie 4 (jediná hlavná verzia platformy KDE).
Prechod z platformy KDE na rámce KDE sa začal v auguste 2013, pričom sa riadili najlepší technickí prispievatelia KDE.[1]
Po úvodnom vydaní KDE Frameworks 5.0 sa vývojári zamerali na pridávanie nových funkcií do komponentov v KDE Frameworks 5,[82] príkladom je lepšia integrácia Firefoxu do KDE.[83]
Hlavným zlepšením rámcov 5 je jeho modularizácia. V starších verziách KDE boli knižnice zoskupené ako jeden veľký balík. V rámci Frameworks boli knižnice rozdelené do jednotlivých menších balíkov. To uľahčuje využitie knižníc iným softvérom založeným na Qt, pretože závislosti je možné udržať na minime.[1]
KDE 4 bol založený na verzii 4 Qt widget toolkit, Frameworks 5 je založený na verzii 5. Očakáva sa že Frameworks 6 bude pužívať Qt 6.
Prijatie
[upraviť | upraviť zdroj]Okrem softvérovej kompilácie KDE existujú aj ďalšie osvojovatelia, ako sú napríklad pracovné prostredia LXQt, MoonLightDE alebo Havaj.
Verzia 3.0 Krita, editora grafických rastrov balíka Calligra Suite, ktorý bol vydaný 31. mája 2016, závisí od KDE Frameworks 5 a Qt 5.2.
V prípade Kirigami sa zvyšuje používanie aj v aplikáciách ako Amarok, Avogadro, Trojitá alebo Subsurface.
References
[upraviť | upraviť zdroj]- ↑ a b c Howard Chan. KDE Release Structure Evolves [online]. KDE, 2013-09-04, [cit. 2014-02-27]. Dostupné online.
- ↑ Release schedule for KDE Frameworks 5 [online]. . Dostupné online.
- ↑ Git workflow for Frameworks [online]. . Dostupné online.
- ↑ KDE Frameworks5 API documentation [online]. . Dostupné online. Archivované 2014-08-22 z originálu.
- ↑ Coinstallability with KDE Platform 4 [online]. . Dostupné online.
- ↑ metainfo.yaml of KConfig [online]. . Dostupné online.
- ↑ Jos Poortvliet. Qt 5.2 - Foundation for KDE Frameworks 5 [online]. Dot.kde.org, 2013-12-17, [cit. 2014-03-10]. Dostupné online.
- ↑ Howard Chan. Frameworks 5 [online]. Dot.kde.org, 2013-09-25, [cit. 2014-03-10]. Dostupné online.
- ↑ http://blog.martin-graesslin.com/blog/2014/02/kwindowsystem-in-frameworks-5/
- ↑ KGlobalAccel in Debian [online]. . Dostupné online.
- ↑ KGlobalAccel in Fedora [online]. . Dostupné online.
- ↑ Frameworks 5 Technology Preview [online]. KDE, 2014-01-07. Dostupné online.
- ↑ KDE Ships First Alpha of Frameworks 5 [online]. KDE, 2014-02-14. Dostupné online.
- ↑ KDE Ships Second Alpha of Frameworks 5 [online]. KDE, 2014-03-03. Dostupné online.
- ↑ Chyba citácie Neplatná značka
<ref>
; nebol zadaný text pre referencie s názvombeta3rel
- ↑ First release of KDE Frameworks 5 [online]. KDE, 2014-07-07, [cit. 2017-12-31]. Dostupné online.
- ↑ Second release of KDE Frameworks 5 [online]. KDE, 2014-08-07, [cit. 2017-12-31]. Dostupné online.
- ↑ Release of KDE Frameworks 5.2.0 [online]. KDE, 12 September 2014, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.3.0 [online]. KDE, 7 Október 2014, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.4.0 [online]. KDE, 6 November 2014, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.5.0 [online]. KDE, 11 December 2014, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.6.0 [online]. KDE, 8 Január 2015, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.7.0 [online]. KDE, 14 Február 2015, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.8.0 [online]. KDE, 13 Marec 2015, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.9.0 [online]. KDE, 10 Apríl 2015, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.10.0 [online]. KDE, 8 Máj 2015, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.11.0 [online]. KDE, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.12.0 [online]. KDE, [cit. Chyba: Neplatný čas]. Dostupné online.
- ↑ Release of KDE Frameworks 5.13.0 [online]. KDE, 2015-08-12, [cit. 2015-08-12]. Dostupné online.
- ↑ Release of KDE Frameworks 5.14.0 [online]. KDE, 2015-09-12, [cit. 2015-09-12]. Dostupné online.
- ↑ Release of KDE Frameworks 5.15.0 [online]. KDE, 2015-10-10. Dostupné online.
- ↑ Release of KDE Frameworks 5.16.0 [online]. KDE, 2015-11-13. Dostupné online.
- ↑ Release of KDE Frameworks 5.17.0 [online]. KDE, 2015-12-12. Dostupné online.
- ↑ Release of KDE Frameworks 5.18.0 [online]. KDE, 2016-01-09. Dostupné online.
- ↑ Release of KDE Frameworks 5.19.0 [online]. KDE, 2016-02-13. Dostupné online.
- ↑ Release of KDE Frameworks 5.20.0 [online]. KDE, 2016-03-13, [cit. 2017-12-31]. Dostupné online.
- ↑ Release of KDE Frameworks 5.21.0 [online]. KDE, 2016-04-09, [cit. 2016-04-09]. Dostupné online.
- ↑ Release of KDE Frameworks 5.22.0 [online]. KDE, 2016-05-15, [cit. 2016-05-15]. Dostupné online.
- ↑ Release of KDE Frameworks 5.23.0 [online]. KDE, 2016-06-13, [cit. 2016-06-14]. Dostupné online.
- ↑ Release of KDE Frameworks 5.24.0 [online]. KDE, 2016-07-09, [cit. 2016-07-10]. Dostupné online.
- ↑ Release of KDE Frameworks 5.25.0 [online]. KDE, 2016-08-13, [cit. 2016-08-21]. Dostupné online.
- ↑ Release of KDE Frameworks 5.26.0 [online]. KDE, 2016-09-10, [cit. 2016-10-08]. Dostupné online.
- ↑ Release of KDE Frameworks 5.27.0 [online]. KDE, 2016-10-08, [cit. 2016-10-08]. Dostupné online.
- ↑ Release of KDE Frameworks 5.28.0 [online]. KDE, 2016-11-15, [cit. 2016-11-15]. Dostupné online.
- ↑ KSyntaxHighlighing: A new Syntax Highlighting Framework [online]. KDE, 2016-11-15, [cit. 2016-11-21]. Dostupné online.
- ↑ Release of KDE Frameworks 5.29.0 [online]. KDE, 2016-12-12, [cit. 2016-12-13]. Dostupné online.
- ↑ Release of KDE Frameworks 5.30.0 [online]. KDE, 2017-01-14, [cit. 2017-01-27]. Dostupné online.
- ↑ Release of KDE Frameworks 5.31.0 [online]. KDE, 2017-02-11, [cit. 2017-02-19]. Dostupné online.
- ↑ Release of KDE Frameworks 5.32.0 [online]. KDE, 2017-03-11, [cit. 2017-03-11]. Dostupné online.
- ↑ Release of KDE Frameworks 5.33.0 [online]. KDE, 2017-04-08, [cit. 2017-04-08]. Dostupné online.
- ↑ Release of KDE Frameworks 5.34.0 [online]. KDE, 2017-05-13, [cit. 2017-05-13]. Dostupné online.
- ↑ Release of KDE Frameworks 5.35.0 [online]. KDE, 2017-06-10, [cit. 2017-06-10]. Dostupné online.
- ↑ Release of KDE Frameworks 5.36.0 [online]. KDE, 2017-07-08, [cit. 2017-07-08]. Dostupné online.
- ↑ Release of KDE Frameworks 5.37.0 [online]. KDE, 2017-08-13, [cit. 2017-09-09]. Dostupné online.
- ↑ Release of KDE Frameworks 5.38.0 [online]. KDE, 2017-09-09, [cit. 2017-09-09]. Dostupné online.
- ↑ Release of KDE Frameworks 5.39.0 [online]. KDE, 2017-10-14, [cit. 2017-12-31]. Dostupné online.
- ↑ Release of KDE Frameworks 5.40.0 [online]. KDE, 2017-11-11, [cit. 2017-12-31]. Dostupné online.
- ↑ Release of KDE Frameworks 5.41.0 [online]. KDE, 2017-12-10, [cit. 2017-12-31]. Dostupné online.
- ↑ Release of KDE Frameworks 5.42.0 [online]. KDE, 2018-01-13, [cit. 2018-01-15]. Dostupné online.
- ↑ Release of KDE Frameworks 5.43.0 [online]. KDE, 2018-02-12, [cit. 2018-02-12]. Dostupné online.
- ↑ Release of KDE Frameworks 5.44.0 [online]. KDE, 2018-03-10, [cit. 2018-04-14]. Dostupné online.
- ↑ Release of KDE Frameworks 5.45.0 [online]. KDE, 2018-04-14, [cit. 2018-04-14]. Dostupné online.
- ↑ Release of KDE Frameworks 5.46.0 [online]. KDE, 2018-05-12, [cit. 2018-05-12]. Dostupné online.
- ↑ Release of KDE Frameworks 5.47.0 [online]. KDE, 2018-06-09, [cit. 2018-06-09]. Dostupné online.
- ↑ Release of KDE Frameworks 5.48.0 [online]. KDE, 2018-07-15, [cit. 2018-08-15]. Dostupné online.
- ↑ Release of KDE Frameworks 5.49.0 [online]. KDE, 2018-08-11, [cit. 2018-08-15]. Dostupné online.
- ↑ Release of KDE Frameworks 5.50.0 [online]. KDE, 2018-09-08, [cit. 2018-09-08]. Dostupné online.
- ↑ Release of KDE Frameworks 5.51.0 [online]. KDE, 2018-10-15, [cit. 2019-01-29]. Dostupné online.
- ↑ Release of KDE Frameworks 5.52.0 [online]. KDE, 2018-11-10, [cit. 2019-01-29]. Dostupné online.
- ↑ Release of KDE Frameworks 5.53.0 [online]. KDE, 2018-12-09, [cit. 2019-01-29]. Dostupné online.
- ↑ Release of KDE Frameworks 5.54.0 [online]. KDE, 2019-01-12, [cit. 2019-01-29]. Dostupné online.
- ↑ Release of KDE Frameworks 5.55.0 [online]. KDE, 2019-02-09, [cit. 2019-02-09]. Dostupné online.
- ↑ Release of KDE Frameworks 5.56.0 [online]. KDE, 2019-03-09. Dostupné online.
- ↑ Release of KDE Frameworks 5.57.0 [online]. KDE, 2019-04-13, [cit. 2019-04-18]. Dostupné online.
- ↑ Release of KDE Frameworks 5.58.0 [online]. KDE, 2019-05-13, [cit. 2019-09-04]. Dostupné online.
- ↑ Release of KDE Frameworks 5.59.0 [online]. KDE, 2019-06-08, [cit. 2019-09-04]. Dostupné online.
- ↑ Release of KDE Frameworks 5.60.0 [online]. KDE, 2019-07-13, [cit. 2019-09-04]. Dostupné online.
- ↑ Release of KDE Frameworks 5.61.0 [online]. KDE, 2019-08-10, [cit. 2019-09-04]. Dostupné online.
- ↑ Release of KDE Frameworks 5.62.0 [online]. KDE, 2019-09-14, [cit. 2019-10-12]. Dostupné online.
- ↑ Release of KDE Frameworks 5.63.0 [online]. KDE, 2019-10-12, [cit. 2019-10-12]. Dostupné online.
- ↑ Schedules/Frameworks [online]. KDE, 2019-10-12, [cit. 2019-10-14]. Dostupné online.
- ↑ KF5 Update Meeting Minutes 2014-w28 [online]. 2014-07-08. Dostupné online.
- ↑ Firefox + KDE integration: Getting FF to use Dolphin reliably [online]. 2014-07-03. Dostupné online.
Odkazy
[upraviť | upraviť zdroj]