Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page is for application designers. It explains the basic principles for how to add components from the palette as well as features to help you.

Overview

If you are new to PhixFlow and designing screens for an application, start with the Building Applications training course.

This page is a reminder of the drag-and-drop principles that you use when designing screens.

  • Dragging components
    • Drag -sibling
    • Shift Drag child inside
    • Preferred parent link → Drag puts it directly inside PP (child) AND  as a sibling of any other content. eg. Tile container has many tiles.
  • Parent child and preferred parent - link out
  • Reordering on screen and in repository 

Dragging into a Screen

To add a component to a screen, you can drag in:

  • components or layouts from
    • the palette
    • the repository → Templates (anywhere else.
  • streams (tables) or their attributes, to add data-bound components such as grids, charts or form-fields.

...

component or layout

...

repository Layouts or Layout Templates

...

repository → Tables

table properties top left icon=

...

stream (table)

...

todo - link to process for this select and drag onto fiew

Select a component (grid, graph, chart or form) and view options

data-backed component

...

anywhere on a screen

  • directly onto a screen
  • directly onto a screen element
  • onto an area
  • onto a form (area)

...

A card view todo - this appears to no longer happen

Prompts for a data component.

...

todo - link to process for this

data-backed component

...

the header of a data view component

...

A button in the banner to run the action

todo - I may not have an approprite action but I cannot drag this onto a grid header

...

the header of a data view component

...

todo - Attempting to drag a pinned component: at the moment this is copying BUT I cannot seem to unpin.

When you drag an unpinned component to a different place on the screen, it will be automatically assigned to the parent you drop it into (for example, an area), and it will be dropped in the position that you drop it. So if you drop it in the middle of a set of fields inside an area, the fields underneath will be shuffled down to make space for it.

Panel
bgColor#e6f0ff
titleBGColor#99c2ff
titleAbout the default component palette

When you drag items from the repository onto a screen, PhixFlow creates a component using the default template for that item. So it is important to make sure that you have set the right default component palette. This is set in System Configuration. Remember that this default will apply to all users of this PhixFlow instance.

To drop an item onto a form that would normally be created unpinned (see table above) as pinned - hold the Ctrl key down while dragging.

Pinning and Unpinning

You can fix the position of a component on an area by pinning it. When you drag a component or layout in from the palette it is automatically pinned. (See the table above for all pinned/unpinned) todo.

Note

For components and layouts added from the Theme 2 palette, the properties have been set to allow responsive flow of the components, which override pinning.

Unpinned

When you drag in an unpinned component, PhixFlow automatically puts it in in the next space available. By default, this is underneath the previous component. However, you can control the flow using CSS properties. Components in forms are represented as DIV objects. 

You can drag unpinned components around in their parent component, and PhixFlow puts them wherever you drop them.

You can also manually control the order of unpinned components by editing the Order field in the details of the component. This is found in the Positional Settings section of the details. The video above gives an example of using both of these methods - dragging, and manual update.

Pinned

Pinned components can be placed anywhere on an area and you can drag pinned components to any position on a screen.

You can pin the edges of the component to its parent component using the Positional Settings in the component's details. To do this, set the offsets between the top, right, bottom and left edges of the component to those of the parent. The offsets are in number of pixels between the edge of the component and the edge of the parent. 

Tip

If you set the right or bottom offsets in Positional Settings, this overrides any width or height set for the component.

Switching Between Unpinned and Pinned

Pinned components can be dragged over unpinned components, so be careful when mixing pinned and unpinned components on a form. Think of these as being laid out in two separate, overlapping layers on the screen.

To change an unpinned component to pinned, press Ctrl and drag it.

To unpin a pinned component, right-click on it and select Unpin Selected Objects. You can select several components at once, and unpin them all using this option. The components will move into the next available space in their respective parent components.

Preventing Accidental Dragging

Pinning relates to a components parent-child relationship. It does not 

Fix a component in position on the screen.
To Fix a component, use the position properties. Avoid if you want responsive design

To prevent accidental dragging.

To prevent accidental dragging of components and layouts on the screen, go to the components properties → Positional Settings section, and tick Prevent Dragging.

...

To find the container of a component in a screen, you can:

  • right-click on the component and select Find in Explorer .
    PhixFlow opens the Layouts with the component selected. You can then see how the selected component fits into the parent-child hierarchy.
  • click on the space next to the component to open its properties.
    This option is less reliable as a screen becomes more complex.
Note

Remember to check whether or not the component/layout is pinned. A pinned component always keeps the same parent, even if it is moved away from it on the screen.

Moving Components and Layouts

You can move components and layouts around on the screen, but we recommend you use the repository Layouts list as it is easier to drag layouts and be clear about the parent and sibling relationships you want.

To move a component or layout to a new parent, press Shift and drag it to the new parent. Commonly this is used to move components inside an area to a new area.

To confirm that the component has moved to the new parent, remember the techniques to find the parent of a component: Find a component's parent

Auto Sizing

When you are designing a screen, you can use the Layout area → Style Settings→ Auto-size property to make components adjust automatically when the application's window is resized by the user. 

Note

If you manually resize a component as you are designing a screen, it will automatically switch off the Auto Size property.

...

Build Up a basic form

Note that there are no fancy flow stuff for this.

What data do you need to show - 

  1. Create screen 
  2. Open palette
  3. Add Basic Components > Form, and name
  4. Click on the screen to open the properties for your area. In shared styles you will see that this has some default shared styles applied.
  5. Palette Labelled fields > Add labelled fields you need. Click to see properties
    • The Labelled fields palette has composite items - see the Basic Settings checkbox.
    • there are two parts, a static text label and the data field. Making them composite means
    • They move as if they are one thing
    • The name you give to the items is used as the text for the label.
  6. Attributes list - open stream > attributes section or expand for list in repository
  7. Drag from attribute onto form

Dividing screens

There are 2 ways to divide a screen.

Use Context Menu Options

...

Insert excerpt
_Banners
_Banners
namescreen
nopaneltrue

Overview

To divide a screen into multiple sections:

Anchor
palette
palette

Divide a Screen Using a Palette Layout

Some palettes have layouts that have 2 areas contained by a split-view area. For example:

  • Serene Grey - Basic Components → Area Split Image Added

These can be used to divide your screen into separate areas while also providing a splitter which allows designers and users to resize the areas.

Setup

  1. In the screen canvas toolbar, click
    Insert excerpt
    _palette
    _palette
    nopaneltrue
    .
  2. Expand a palette to find a layout that has 2 areas.
  3. Drag the layout from the palette onto an existing area.
  4. PhixFlow creates a layout with the following structure, this example is horizontal but vertical options are also available. 
  5. Image AddedIf you have existing content on your screen this can be dragged into the appropriate area using the repository or layout section. Remember you will need to hold the shift key to drop content inside these areas.

Divide a Screen Using the "Add Area" Options
Anchor
element
element

  1. Right-click a screen.
  2. Click Screen Options.
  3. Use one of the Add Area... options to add a new

...

  1. area for the screen, separated

...

  1. by a dividing line.
    PhixFlow creates a new

...

  1. element in the form of a pane for this part of the screen.

...

  1. This new element is similar to a black screen and will require a suitable container, such as an area, form or card container in order for you to display content.

...

Tip

If you right-click on an existing area, in the context menu click Dashboard Options to see the Add Area options.

Use a Palette Layout

Some palettes have layouts that have 2 areas contained by a split-view area. For example:

  • Basic Components → Split View Image Removed
  • Theme 2 - App Builder Base Components → Area Split  Image Removed

...

Area

Split View (special type of area)

Area 1

Area 2

Connecting Layouts to Data

To connect a form area to data in a stream (table) 

From the repository, drag the stream name onto an area or layout

From the stream (table) properties, drag the icon at the top of the properties onto an area or layout.

Todo - check and link

PhixFlow will prompt you to select the type of stream or card view that you want to create; see Stream Views Pop-Up Menu.

...

The following videos will introduce the basic concepts of how you can drag fields into a screen: Videos in widget connector had links to:

...

  1.  
    It may be easier to add one of the complete screens to the new element and remove the items you do not require.

Resizing

To resize a pane, drag its dividing line. This automatically resizes adjacent panes.

To prevent resizing, right-click to display the popup menu and select:

  • Insert excerpt
    _area_lock_width
    _area_lock_width
    nopaneltrue
  • Insert excerpt
    _area_lock_height
    _area_lock_height
    nopaneltrue

Removing a Pane

First, delete any layouts or components in it.

  1. Right-click on the empty pane to display the popup menu.
  2. Select 
    Insert excerpt
    _delete_item
    _delete_item
    nopaneltrue
     Pane
    Anchor
    add-area
    add-area

Learn More