Skip to end of banner
Go to start of banner

Column Picker

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 14 Next »

See also: Data Tables

Lead:  Liav Nadler ONGOING 

Description

A column picker is a component allowing the user to select and reorder columns in a data table

Usage & Behaviour

General guidelines

  • The column picker appears inside a dialog box named Set Columns
  • It is triggered by clicking the Columns option in the column contextual menu
  • The dialog box contains two lists:
    • Selected Columns (on the right): a list of the currently displayed columns of the table
    • Available Columns (on the left): a list of all other columns available for that table
  • Between the two lists there is a set of buttons, allowing the user to move items between them (see below)
  • Under the selected columns list there is a set of buttons, allowing the user the reorder the selected items (see below)
  • Next to the selected columns title there is an indicator, showing the number of selected items out of the total number of items (e.g. 7/22)
  • At the top of each list there is a search bar, allowing the user to quickly locate specific items. This is optional, depending on the number of items
  • If the list is too long to be displayed in its container, a scroll bar appears

Order

  • The Selected Columns list shows the list of columns in the same order as they appear on the data table
  • The Available Columns list is sorted alphabetically

States

  • The right and left buttons are disabled until the user selected at least one item: selecting items on the right enables the left button, and vice versa
  • The up and down buttons are disabled until the user selected at least one item on the Selected Columns list:
    • Selecting the top item will enable only the down button, and vice versa
    • Selecting other items will enable both the up and down buttons
  • If the table contain columns that are mandatory, the equivalent items on the selected columns list will be shown as disabled. The user will not be able to select or move these items (see interaction below)

Interaction

  • Mouseover an item triggers hover state

Selecting Items

  • Clicking an item selects it. The user can select more than one item on the list, using the Ctrl (or Command) key for discrete selection, or the Shift key for a block selection
  • Selecting items on a list deselects all the items on the other list

Moving items between lists

  • The user can move selected items between lists using one of two methods:
    • Clicking the right or left button between the lists
    • Using drag and drop
  • After the items were moved they remain selected until the user selects other items

Reordering items

  • The user can reorder selected items on the selected columns list by clicking the up or down buttons under the list
  • After the items were ordered they remain selected until the user selects other items
  • The user can also reorder items using drag and drop

Locking the first column (optional)

  • The user can lock the first column by clicking the lock icon, shown on the first item of the selected columns list. In this case:
    • The icon changes from idle to selected state
    • The item cannot be moved or dragged: drag indicator disappears and arrow buttons are disabled
    • On the actual table the locked column is anchored to the left, and can not be moved
  • The user can unlock the column by clicking the lock icon again

Accessibility compliance

<<In general each component should be A11y complied,  please follow the 3 guidelines linked below. At the very least we should document that each component is in compliance with each of the 3>>

Focus management

<<How will the component work with keyboard only - without a mouse. Can be reference if written above

We already set a general guidelines described in /wiki/spaces/UX/pages/308969693 >>

Screen reader support 

<<Make sure the components support screen reader for content or behaviour where needed - see /wiki/spaces/UX/pages/308248620 >>

Contrast & size compliance

<<Visual designers must comply with the minimal of /wiki/spaces/UX/pages/301498483 for each component>>

Design

Zeplin linkScreen thumbnail





Code

<<a box containing the code - discuss with Femi>>

  • No labels