Last modified on 23 August 2023, at 12:50

Editors

Revision as of 12:50, 23 August 2023 by CWI (Talk | contribs) (Geo Editor & Teach In)

There are couple of available editors to modify different property value types. Clicking on a related property opens a dialog with type-specific editing options. Additionally, every property value editor contains buttons to commit, revert, or cancel the editing.


Integer value editor

With the Integer value editor it is possible to enter or edit non-decimal numbered property values.


Double value editor

The Double value editor enables the editing of property values consisting of decimal numbers.


String value editor

The String value editor enables the entering and editing of text property values, which can contain various types of characters and numbers. String properties can be configured with a length restriction. The editor doesn't allow users to confirm values exceeding the limit.

It is possible to apply the the content of a scanned marker to the property value.

WinX

String value editors in WinX contain a Scan toggle button on the right side of the textbox. Enabling it invokes a scan window including toggle buttons for QR and OCR scanning. When scanning a code, the related content gets applied to the textbox.

Xamarin

To apply the content of a marker to the String property value in Xamarin, a button with the Command EditPropertyValueCommand and CommandParameter ScanToInput="true" can be used in the UBIKPropertyArea.

<Button Command="{Binding EditPropertyValueCommand}">
        <Button.CommandParameter>
                <uc:KeyValueList>
                        <uc:KeyValueParameter Key="ID" Value="TEXT_READWRITE" />
                        <uc:KeyValueParameter Key="ScanToInput" Value="true" />
                </uc:KeyValueList>
        </Button.CommandParameter>
</Button>


Signature editor

The Signature editor provides the possibility to edit or enter a digital Signature as the value of a Property. Once clicked on such a property, a dialog with a signature field should pop up and enable the user to create a handwritten signature via mouse or touch. It can be created within 5 seconds. Once the time is expired, the stroke freezes. There are also buttons to commit the signature, cancel or revert the editing. Confirmation is only possible if a signature is entered.

Signature editor


File Reference value editor (WinX only)

The File reference value editor provides the possibility to edit or set the reference of a specific file or folder as the value of a property. There can be a filter applied to allow picking only specific file type references. Clicking on such property opens a picker and related to the assigned filter a file/folder can be selected. Via confirmation its reference gets assigned to the property.


DateTime value editor

A DateTime property can be edited or set with the DateTime value editor. Clicking on it invokes a window with a picker to select a date and time. The button "Now" selects the current date and time. Additionally, there are buttons to cancel, revert or confirm the editing. Via confirmation the selected Date and Time get assigned to the value of the property.


Geo editor & Teach-in

The Geo editor provides the possibility to enter or edit the coordinates of an object in the form of Latitude, Longitude, and Altitude Property values. It includes three input fields that display the Latitude (LAT.), Longitude (LON.), and Altitude (ALT.) property values of an object, a Teach-in button, and buttons to confirm, cancel, or reset the editing.

Teach-in

The Teach-In function (or "TeachIn", also see here) provides the possibility to write the values of the current device's locations coordinates into the Latitude, Longitude, and Altitude textboxes of the Geo Editor. By clicking the confirm button, these values get assigned to the related object's coordinate properties.

WinX

Geo Property
Geo editor map

The Geo editor can either be accessed by clicking on a Geo Property, or invoked in the Map View by enabling the Edit Geo toggle button when a POI is selected.

The input fields for Latitude (LAT.), Longitude (LON.), and Altitude (ALT.) values can either be entered manually via keyboard, with Teach-in, or by clicking on a desired location on the map. The selected POI immediately gets repositioned on the map accordingly.

By confirming the Geo editor, these values get assigned (and committed if in Map View) to the related object's coordinate properties. When clicking the Cancel or Reset button, the editor gets closed without saving the input and, if in Map View, the related POI jumps back to its initial position on the map.

Xamarin

Geo editor

The Geo editor can be accessed by clicking on a Geo Property.

The input fields for Latitude (LAT.), Longitude (LON.), and Altitude (ALT.) values either can be entered manually via keyboard, or with Teach-in.

By confirming the Geo editor, these values get assigned to the related object's coordinate properties. When clicking the Cancel button, the editor gets closed without saving the input. When clicking the Reset button, the value gets reverted to the initial one, and the editor gets closed.


Guid editor

Guid property editor dialog
Guid property editor dialog

To edit Guid properties (that do not have a selective list available), we have implemented a special system. Since a Guid property always just contains the Guid as a reference to another object, we can use a query to find the object we want to assign to this property.

When the Guid property has a FilterQuery datamember (which should contain the guid of a query), it will become editable through this query. Note that this FilterQuery guid will not actually be visible in the client. All this should be setup in the backend, the client has no control over this.

When clicking an editable Guid property, you will see a dialog with up to 3 extra buttons added (see image):

  • View Object
This button will be enabled when there is a valid guid assigned to the property. Clicking this button will immediately navigate to the referenced object.
  • Edit Property
If the property has a valid FilterQuery assigned to it, clicking this button will launch that query. If no FilterQuery is assigned, this button will be invisible. Although the button is clickable in Multi Select mode, it is currently inoperable.
  • Clear Property Value
If the property has a guid assigned, the user can press this button to reset the value back to empty.

Additionally, if a valid FilterQuery is assigned, the user will see the results of that query inline, if the query delivers 200 results or fewer. The user can select an item from this horizontally scrollable list, and press "OK" to assign the UID of the selected object to the Guid property. This is useful for cases where the user does not want to jump into the full query to be able to select an object.

If the user does choose to launch the full query page (or if the query returns over 200 objects), they can click any of the displayed items in the query's child list. When clicking one of them, it will immediately be set as the reference in the original Guid property. To cancel selecting an item (and stop editing the property), simply navigate to any other page (by pressing back, using navigation bar, etc).

IC Hint square.pngSkipping the dialog

If editing the property in a query page without having to go through the dialog is desired, one can customize the boolean variable "SkipQueryDialog" in UBIKThemes.xaml. If none can be found, simply add the following line into its "Default" ResourceDictionary.

<x:Boolean x:Key="SkipQueryDialog">True</x:Boolean>

This functionality is currently not available for editing common properties in the Multi Select mode.