Rapid Database Application Development
"Microsoft Access for Linux"
This library, called koproperty, is a set of classes implementing generic properties framework.
Every property has it's own row displayed using EditorItem object, within Editor widget. Widget class provides editing feature for EditorItem objects if a user selects a given item.
KoProperty framework also supports adding custom property types and custom property editor types using CustomPropertyFactory. Intersection of multiple property sets can be displayed within the same Editor instance. This can be reusued, eg. within a form designer when more than one widget is selected.
C++ Namespace: KoProperty
See KoProperty API Reference for API details.^ toc
Major Data models
Major GUI Classes
This library has been renamed to libkoproperty and moved to koffice/lib/koproperty/. It's now reused by Kugar application.
Property library, was previously available within Kexi (koffice/kexi/) and later in
0. Minor TODOs
We need to better define what properies can be in the intersection when multiple widgets are selected: IIRC for now not all properties are shared.^ toc
1. "Don't know" value within intersections
One small valuable addition (to koproperty) could be: "don't know" logical state, eg. for boolean property, for sets' intersection, "dont know" could be a third state, e.g. for tuples like (false, true).
At GUI level, user can select a certain value for all objects selected or leave the "don't know" value unchanged.
Similar behaviour could be for int property type, etc., but a property editor item for the property will not display any value.
The "don't know" flag could be implemented as a boolean member within a Buffer class for each intersected property, and set to false only when all intersected properies hav ethe same value.