Flake (software)

Last updated
Flake
Written in C++
License LGPL
Website community.kde.org/Calligra/Libs/Flake

Flake or a Vector Shape [1] is a programming library that is used in Calligra Suite and the KOffice 2 series. Flake provides the basic concept of a "shape". To the end user a shape appears as some piece of content such as an image or a text. A shape can be in any form (square, circle, etc.) and contain any kind of media since the Shape is responsible for drawing itself. All components of KOffice are being overhauled to use Flake as much as possible. [2]

Contents

Functionality

The functionality of Flake is divided up between Shapes, which display content, and Tools, which manipulate content or the user interface. Different Shapes can be created to support different kinds of content, for example the text-shape in Calligra Words would support .txt and .odt formats while the KChart shape would just support chart-related document standard such as .odc. Shapes are packaged with a set of tools to manipulate that kind of content and UI elements that expose the functionality to the user. This provides an application with all the features it needs and also allows for easy embedding of Shapes in other applications. Shapes can load other shapes when needed, for example when images are in text documents the image shape will be loaded to handle the images.

Flake is the successor to the old design of embedding based on widgets in the KOffice 1 series. The widget embedding had three notable shortcomings, that widgets were always square, couldn't be rotated and were measured in pixels. All of these are corrected by Flake. Embedded document data can now be zoomed, rotated and skewed, be of any form and are measured in units such as millimeters. Flake also improves on the original design in several areas, for example, its extensibility. For example, in Google's Summer of Code 2007 Marijn Kruisselbrink created a MusicXML-based music notation Shape and Tools. [3] Shapes can be made aware of other Shapes positions, moving an image through text will result in the text dynamically wrapping around the images. [4] Shapes can even be grouped together and made to behave like a single Shape. Flake also supports printing to PDF and has full support for anti-aliased painting for smoother text. [5]

See also

Related Research Articles

Dynamic HTML, or DHTML, is a term which was used by some browser vendors to describe the combination of HTML, style sheets and client-side scripts that enabled creation of interactive and animated documents. The application of DHTML was introduced by Microsoft with the release of Internet Explorer 4 in 1997.

Konqueror Web browser and file manager

Konqueror is a free and open-source web browser and file manager that provides web access and file-viewer functionality for file systems. It forms a core part of the KDE Software Compilation. Developed by volunteers, Konqueror can run on most Unix-like operating systems. The KDE community licenses and distributes Konqueror under GNU GPL-2.0-or-later.

Calligra Office suite made for KDE

Calligra Suite is a graphic art and office suite by KDE. It is available for desktop PCs, tablet computers, and smartphones. It contains applications for word processing, spreadsheets, presentation, databases, vector graphics, and digital painting.

In computing, an icon is a pictogram or ideogram displayed on a computer screen in order to help the user navigate a computer system. The icon itself is a quickly comprehensible symbol of a software tool, function, or a data file, accessible on the system and is more like a traffic sign than a detailed illustration of the actual entity it represents. It can serve as an electronic hyperlink or file shortcut to access the program or data. The user can activate an icon using a mouse, pointer, finger, or recently voice commands. Their placement on the screen, also in relation to other icons, may provide further information to the user about their usage. In activating an icon, the user can move directly into and out of the identified function without knowing anything further about the location or requirements of the file or code.

Drag and drop

In computer graphical user interfaces, drag and drop is a pointing device gesture in which the user selects a virtual object by "grabbing" it and dragging it to a different location or onto another virtual object. In general, it can be used to invoke many kinds of actions, or create various types of associations between two abstract objects.

Calligra Sheets Calculation and spreadsheet application for KDE desktop environment

Calligra Sheets is a free software spreadsheet application that is part of Calligra Suite, an integrated graphic art and office suite developed by KDE.

Graphical widget Element of interaction in a graphical user interface

A graphical widget in a graphical user interface is an element of interaction, such as a button or a scroll bar. Controls are software components that a computer user interacts with through direct manipulation to read or edit information about an application. User interface libraries such as Windows Presentation Foundation, GTK, and Cocoa, contain a collection of controls and the logic to render these.

Calligra Flow

Calligra Flow is free diagramming software that is a part of Calligra Suite, an integrated graphic art and office suite by KDE.

A user interface markup language is a markup language that renders and describes graphical user interfaces and controls. Many of these markup languages are dialects of XML and are dependent upon a pre-existing scripting language engine, usually a JavaScript engine, for rendering of controls and extra scriptability.

Kexi

Kexi is a visual database applications creator tool by KDE, designed to fill the gap between spreadsheets and database solutions requiring more sophisticated development. Kexi can be used for designing and implementing databases, data inserting and processing, and performing queries. It is developed within the Calligra project but is released separately.

KDE Software Compilation 4 Software

KDE Software Compilation 4 was the only series of the so-called KDE Software Compilation, first released in January 2008 and the last release being 4.14.3 released in November 2014. It was the follow-up to K Desktop Environment 3. Following KDE SC 4, the compilation was broken up into basic framework libraries, desktop environment and applications, which are termed KDE Frameworks 5, KDE Plasma 5 and KDE Applications, respectively.

KDE Plasma 4 Graphical environments provided by KDE

KDE Plasma 4 was the fourth generation of the KDE workspace environments. It consisted of three workspaces, each targeting a certain platform: Plasma Desktop for traditional desktop PCs and notebooks, Plasma Netbook for netbooks, and Plasma Active for tablet PCs and similar devices.

A web widget is a web page or web application that is embedded as an element of a host web page but which is substantially independent of the host page, having limited or no interaction with the host. A web widget commonly provides users of the host page access to resources from another web site, content that the host page may be prevented from accessing itself by the browser's same-origin policy or the content provider's CORS policy. That content includes advertising, sponsored external links (Taboola), user comments (Disqus), social media buttons, news, and weather (AccuWeather). Some web widgets though serve as user-selectable customizations of the host page itself.

Kross is a scripting framework for KDE Frameworks. Originally Kross was designed for use in KOffice but eventually became the official scripting framework in KDE Software Compilation 4. Kross is designed to provide full scripting power for users of KDE applications, with a language of their own choice; and make it easy for developers targeting the KDE platform to enable their application with support for multiple scripting languages.

NimbleX

NimbleX is a small Slackware-based Linux distribution optimized to run from a CD, USB drive or a network environment. NimbleX has been praised for how fast it boots, as well as for its small disk footprint, which is considered surprising for a distribution using KDE as desktop environment. NimbleX was also remarked for its web site that allows users to generate custom bootable images using just a web browser. It was also covered in mainstream Romanian press as the first Linux distribution put together by a Romanian.

Lively Kernel Open-source web programming environment

The Lively Kernel is an open-source web programming environment. It supports desktop-style applications with rich graphics and direct manipulation abilities, but without the installation or upgrade troubles of conventional desktop applications. Development began at Sun Microsystems Laboratories in Menlo Park, California, and later moved to the Hasso Plattner Institute in Potsdam-Babelsberg near Berlin.

KOffice Former office suite for the KDE Desktop Environment

KOffice is an unmaintained free and open source office and graphics suite developed by KDE for Unix-like and Windows systems. KOffice contains a word processor (KWord), a spreadsheet (KSpread), a presentation program (KPresenter), and a number of other components that varied over the course of its development.

KWord

KWord is a deprecated word processor and a desktop publishing application, part of the KOffice suite. It has been obsoleted by Calligra Words of the Calligra Suite.

KDE Frameworks Collection of libraries and software frameworks for the Qt framework

KDE Frameworks is a collection of libraries and software frameworks readily available to any Qt-based software stacks or applications on multiple operating systems. Featuring frequently needed functionality solutions like hardware integration, file format support, additional graphical control elements, plotting functions, and spell checking, the collection serves as technological foundation for KDE Plasma 5 and KDE Gear distributed under the GNU Lesser General Public License (LGPL).

KDE Applications Set of applications and supporting libraries

The KDE Gear is a set of applications and supporting libraries that are developed by the KDE community, primarily used on Linux-based operating systems but mostly multiplatform, and released on a common release schedule.

References

  1. http://www.calligra.org/changelogs/calligra-2-4-beta-3-changelog/ [ dead link ]
  2. The KOffice Project – Release Goals for KOffice 2.0
  3. "Pencils Down for KOffice Summer of Code Students!". Archived from the original on 2009-04-11. Retrieved 2009-08-27.
  4. "The Road to KDE 4: New KOffice Technologies". Archived from the original on 2010-04-26. Retrieved 2009-08-27.
  5. KDE Community Wiki: Calligra/Libs/Flake