Difference between revisions of "Icon Font"
Line 16: | Line 16: | ||
The two below examples show how one might use both methods to create a User symbol. | The two below examples show how one might use both methods to create a User symbol. | ||
− | {{ | + | {{Hint| Notice that both of the examples make use of the <I>ctrls</I> namespace, and will not work unless the following namespace is declared in the XAML; xmlns:controls="clr-namespace:UBIK.CPL.Controls;assembly=UBIK.CPL"}} |
<br> | <br> | ||
====In-AppName Usage:==== | ====In-AppName Usage:==== |
Revision as of 08:49, 3 October 2019
UBIK-Standard.ttf is a custom set of font icons developed primarily for use on the Xamarin Client, due to concerns over the legality of using Microsoft's Segoe MDL2 Assets icon font file on non-Windows platforms (ie. Android and iOS). Apart from this legal concern, having a standardized font icon set will contribute to having a more consistent look across the various platforms and clients as UBIK-Standard.ttf becomes more widely adopted.
The latest font set can be downloaded directly from here using the UBIK-Standard.zip file. |
UBIK-Standard is an Icon Font. For Xamarin, the standard Text Font is Inter, which is included in the resources and thus available to use immediately. |
Contents
Usage
UBIK-Standard.ttf is currently only supported for the Xamarin client.
Xamarin Client
The first full version of the icon set was completed in September 2019. The tables on this page show the icons, along with a description of their intended purpose (some have multiple), and the natural language In-App Name, and Hex code suffix, both of which can be used to call the icons using XAML.
Using XAML, Glyphs can be called in two ways. One method is to use the Hex Code, and another is the In-App Name. Of these two methods, the recommended method is to use the In-App Name, as it uses a natural language attribute as opposed to a glyph code, making it more immediately apparent which icon is being requested by the code.
The two below examples show how one might use both methods to create a User symbol.
In-AppName Usage:
In the below example, Glyph="{x:Static resources:UBIKIcons.User}"
is used to call the User symbol.
Glyph="{x:Static resources:UBIKIcons.User}"
HorizontalOptions="Center"
PrimaryColor="{DynamicResource UBIKLightTextColor}"
Style="{DynamicResource HeaderSymbolStyle}"
VerticalOptions="Center" />
Hex Code Usage:
In the below example, the attribute Glyph=
and the following Hex Code is used to call the User icon. These Hex codes can be found using a Character Map program, or by searching through the icon tables below.
Icon Tables
WikiFormatting prevents the entire Hex Code from being displayed in the tables, so a space was used to break the glyph code. Please remove the space when using the Hex Codes from the table. |
Basic Icons
Icon | Casual Name / Description | In-App Name | Hex Code |
---|---|---|---|
Ubik - Scalable UBIK logo for use on the splash screen. | Ubik | &#x 26;
| |
Service - The customer profile. | Service | &#x 21;
| |
User | User | &#x 22;
| |
Password | Password | &#x 23;
| |
Log In | Login | &#x 24;
| |
Log Out | Logout | &#x 25;
| |
Navigation - Global navigation or Hamburger Button | Navigation | &#x 28;
| |
More Actions | Actions | &#x 29;
| |
Home | Home | &#x 2A;
| |
Scan | Scan | &#x 2B;
| |
POI - NOT YET CREATED | &#x 2C;
| ||
Settings | Settings | &#x 2D;
| |
Search | Search | &#x 2E;
| |
Syncmode- - Automatic uploads and downloads | Online | &#x 30;
| |
Syncmode - Automatic downloads / manual uploads | Manual | &#x 31;
| |
Syncmode - No Automatic uploads or downloads | Offline | &#x 32;
|
OBJECT PAGE / TABS
Icon | Casual Name / Description | In-App Name | Hex Code |
---|---|---|---|
Start / Objects / Children - Symbol used to signify an object hierarchy. Thus used after logging in as the Start symbol, as well as for the Children tab just under the object title in the Header. | Children, Start | &#x 4A;
| |
Properties - Used for Properties tab just under the object title in the Header. | Properties | &#x 4B;
| |
Documents - Used for Properties tab just under the object title in the Header. | Documents | &#x 4C;
| |
Document being Viewed - Used in place of the Children tab (first position) when a document is being viewed. | DocumentView | &#x 4D;
|
CHILD OBJECT STATUS BADGES
Icon | Casual Name / Description | In-App Name | Hex Code |
---|---|---|---|
Uncommitted Changes - Used to show an item has alterations which have not yet been committed to the server (for example, in offline mode). | Changes | &#x 41;
| |
Uncommitted Changes / Variant - An alternate symbol for the usage. Currently, the small size that the icon is rendered at means that this image is too detailed for use on a child item in the above description. | ChangesAlt | &#x 40;
| |
Technical Alert - Use to show that one or more children within the branch have an active Technical Alert status. | Technical | &#x 43;
| |
Organizational Status: Ongoing - Used to show that one or more of the tasks underneath this object are still in progress. | OrgOngoing | &#x 44;
| |
Organizational Status: Complete - Used to show that all the tasks underneath this object have been completed, and the ORG Status has been confirmed. | OrgComplete | &#x 45;
| |
Downloaded - Used to show that a branch download has occurred, making this object available offline. | Downloaded | &#x 48;
| |
Downloaded An alternate symbol for the usage. Currently, the small size that the icon is rendered at means that this image is too detailed for use on a child item in the above description. | DownloadedAlt | &#x 46;
| |
Locked | Locked | &#x 47;
| |
Deleted- Indicates an as-yet uncommitted Deleted status (for example, in offline mode). | Deleted | &#x 52;
|
PROPERTIES
Icon | Casual Name / Description | In-App Name | Hex Code |
---|---|---|---|
Online/Linked Document - Used to indicate strong signal, or as a base for the Ok and Bad signal icons. | OnlineDoc | &#x 66;
| |
Live Value Signal: Good | SignalGood | &#x 63;
| |
Live Value Signal: Ok | SignalOK | &#x 64;
| |
Live Value Signal: Ok | SignalBad | &#x 65;
| |
Read Only Property | PropReadOnly | &#x 60;
| |
Editable Property | PropEdit | &#x 61;
| |
Editable List | PropEditList | &#x 62;
|
ACTIONS
Icon | Casual Name / Description | In-App Name | Hex Code |
---|---|---|---|
Add - Generic icon for adding something. | Add | &#x 50;
| |
Add Photo | Photo | &#x 51;
| |
Delete- Indicates an as-yet uncommitted Deleted status (for example, in offline mode). | Delete, Deleted | &#x 52;
| |
Discard - Discard object from local database. | Discard, Cancel | &#x 53;
| |
Revert - Discard uncommitted changes. | Revert, Reset | &#x 54;
| |
Download - Action to trigger a Branch Download. | Download | &#x 55;
| |
Use Geo Location | UseLocation | &#x 56;
|
EDITORS
Icon | Casual Name / Description | In-App Name | Hex Code |
---|---|---|---|
Confirm | Confirm, Check, Ok, TaskYes | &#x 57;
| |
Revert | Revert, Reset | &#x 54;
| |
Cancel - Exit editor without saving changes. | Cancel | &#x 53;
| |
GUID: Go To | GoTo, Right | &#x 5B;
| |
GUID: Edit | Edit | &#x 5C;
| |
GUID: Delete | Delete, Deleted | &#x 52;
|
TASK ACTIONS
Icon | Casual Name / Description | In-App Name | Hex Code |
---|---|---|---|
Task Yes | Confirm, Check, Ok, TaskYes | &#x 57;
| |
Task No | Discard, Cancel | &#x 57;
| |
Task Finished | Confirm, Check, Ok, TaskYes | &#x 57;
| |
Task NA | Task NA | &#x 6A;
|
GENERIC NAVIGATION
Icon | Casual Name / Description | In-App Name | Hex Code |
---|---|---|---|
Right | Right, GoTo | &#x 5B;
| |
Left | Left | &#x 5D;
| |
Up | Up | &#x 5E;
| |
Down | Down | &#x 5F;
|
Known Issues
Xamarin Client
The development of the custom icon font on the Xamarin client was hampered significantly by unexpected icon substitutions, which appeared to be vendor/device-specific. To avoid this issue, the individual icons in the text file were mapped to the Hex codes used by the most basic alphabet and symbol characters.
A second issue was encountered where using unstable behavior was observed when using UBIK-Standard.ttf for icons when the user switched tabs, leaving UBIK running in the background. In these cases, circular icon containers became square when switching back to the app, and the icon glyphs were no longer visible. However, using the GlyphButton and GlyphLabel elements (as opposed to simply Button and Label) seems to prevent this issue.