org::kde::kirigami::PageRow

org::kde::kirigami::PageRow Class Reference

Inherits QtQuick.Templates.Control, and Control.

Properties

alias columnView
 
alias currentIndex
 
alias currentItem
 
int defaultColumnWidth
 
alias depth
 
alias firstVisibleItem
 
alias globalToolBar
 
variant initialPage
 
alias interactive
 
alias items
 
Item lastItem
 
alias lastVisibleItem
 
alias layers
 
alias separatorVisible
 
alias visibleItems
 
bool wideMode
 

Signals

void pageInserted (int position, Item page)
 
void pagePushed (Item page)
 
void pageRemoved (Item page)
 

Public Member Functions

void clear ()
 
void flickBack ()
 
void get (idx)
 
void insertPage (position, page, properties)
 
void movePage (fromPos, toPos)
 
void pop (page)
 
void push (page, properties)
 
void removePage (page)
 
void replace (page, properties)
 

Detailed Description

PageRow implements a row-based navigation model, which can be used with a set of interlinked information pages.

Items are pushed in the back of the row and the view scrolls until that row is visualized. A PageRow can show a single page or a multiple set of columns, depending on the window width: on a phone a single column should be fullscreen, while on a tablet or a desktop more than one column should be visible.

Definition at line 22 of file PageRow.qml.

Property Documentation

alias org::kde::kirigami::PageRow::columnView

columnView: Kirigami::ColumnView

The ColumnView that this PageRow owns. Generally, you shouldn't need to change the value of this.

Since
2.12

Definition at line 55 of file PageRow.qml.

alias org::kde::kirigami::PageRow::currentIndex

the index of the currently visible Item

Definition at line 41 of file PageRow.qml.

alias org::kde::kirigami::PageRow::currentItem

The currently visible Item.

Definition at line 37 of file PageRow.qml.

int org::kde::kirigami::PageRow::defaultColumnWidth

The default width for a column default is wide enough for 30 grid units.

Pages can override it with their Layout.fillWidth, implicitWidth Layout.minimumWidth etc.

Definition at line 86 of file PageRow.qml.

alias org::kde::kirigami::PageRow::depth

This property holds the number of items currently pushed onto the view.

Definition at line 28 of file PageRow.qml.

alias org::kde::kirigami::PageRow::firstVisibleItem

firstVisibleItem: Item The first at least partially visible page in the PageRow, pages before that one will be out of the viewport

Since
2.6

Definition at line 73 of file PageRow.qml.

alias org::kde::kirigami::PageRow::globalToolBar

globalToolBar: grouped property Controls the appearance of an optional global toolbar for the whole PageRow.

It's a grouped property comprised of the following properties:

  • style (Kirigami.ApplicationHeaderStyle): can have the following values:
    • Auto: depending on application formfactor, it can behave automatically like other values, such as a Breadcrumb on mobile and ToolBar on desktop
    • Breadcrumb: it will show a breadcrumb of all the page titles in the stack, for easy navigation
    • Titles: each page will only have its own tile on top
    • TabBar: the global toolbar will look like a TabBar to select the pages
    • ToolBar: each page will have the title on top together buttons and menus to represent all of the page actions: not available on Mobile systems.
    • None: no global toolbar will be shown
  • actualStyle: this will represent the actual style of the toolbar: it can be different from style in the case style is Auto
  • showNavigationButtons: OR flags combination of ApplicationHeaderStyle.ShowBackButton and ApplicationHeaderStyle.ShowForwardButton
  • toolbarActionAlignment: How to horizontally align the actions when using the ToolBar style. Note that anything but Qt.AlignRight will cause the title to be hidden (default: Qt.AlignRight)
  • minimumHeight (int): minimum height of the header, which will be resized when scrolling, only in Mobile mode (default: preferredHeight, sliding but no scaling)
  • preferredHeight (int): the height the toolbar will usually have
  • maximumHeight (int): the height the toolbar will have in mobile mode when the app is in reachable mode (default: preferredHeight * 1.5)
  • leftReservedSpace (int, readonly): how many pixels are reserved at the left of the page toolbar (for navigation buttons or drawer handle)
  • rightReservedSpace (int, readonly): how many pixels are reserved at the right of the page toolbar (drawer handle)
Since
5.48
Remarks
This property is read-only

Definition at line 133 of file PageRow.qml.

variant org::kde::kirigami::PageRow::initialPage

The initial item when this PageRow is created.

Definition at line 45 of file PageRow.qml.

alias org::kde::kirigami::PageRow::interactive

interactive: bool If true it will be possible to go back/forward by dragging the content themselves with a gesture.

Otherwise the only way to go back will be programmatically default: true

Definition at line 94 of file PageRow.qml.

alias org::kde::kirigami::PageRow::items

items: list<Item> All the items that are present in the PageRow

Since
2.6

Definition at line 61 of file PageRow.qml.

Item org::kde::kirigami::PageRow::lastItem

The last Page in the Row.

Remarks
This property is read-only

Definition at line 33 of file PageRow.qml.

alias org::kde::kirigami::PageRow::lastVisibleItem

lastVisibleItem: Item The last at least partially visible page in the PageRow, pages after that one will be out of the viewport

Since
2.6

Definition at line 79 of file PageRow.qml.

alias org::kde::kirigami::PageRow::layers

layers: QtQuick.Controls.StackView Access to the modal layers.

Sometimes an application needs a modal page that always covers all the rows. For instance the full screen image of an image viewer or a settings page.

Since
5.38

Definition at line 264 of file PageRow.qml.

alias org::kde::kirigami::PageRow::separatorVisible

separatorVisible: bool True if the separator between pages should be visible default: true

Since
5.38

Definition at line 108 of file PageRow.qml.

alias org::kde::kirigami::PageRow::visibleItems

visibleItems: list<Item> All pages which are visible in the PageRow, excluding those which are scrolled away

Since
2.6

Definition at line 67 of file PageRow.qml.

bool org::kde::kirigami::PageRow::wideMode

wideMode: bool If true, the PageRow is wide enough that willshow more than one column at once

Since
5.37
Remarks
This property is read-only

Definition at line 101 of file PageRow.qml.

Member Function Documentation

void org::kde::kirigami::PageRow::clear ( )

Clears the page stack.

Destroy (or reparent) all the pages contained.

void org::kde::kirigami::PageRow::flickBack ( )

go back to the previous index and scroll to the left to show one more column

void org::kde::kirigami::PageRow::get ( idx  )
Returns
the page at idx
Parameters
idxthe depth of the page we want
void org::kde::kirigami::PageRow::insertPage ( position  ,
page  ,
properties   
)

Inserts a new page or a list of new at an arbitrary position The page can be defined as a component, item or string.

If an item is used then the page will get re-parented. If a string is used then it is interpreted as a url that is used to load a page component. The current Page will not be changed, currentIndex will be adjusted accordingly if needed to keep the same current page.

Parameters
pageThe page can also be given as an array of pages. In this case all those pages will be pushed onto the stack. The items in the stack can be components, items or strings just like for single pages. Additionally an object can be used, which specifies a page and an optional properties property. This can be used to push multiple pages while still giving each of them properties. When an array is used the transition animation will only be to the last page.
propertiesThe properties argument is optional and allows defining a map of properties to set on the page. If page is actually an array of pages, properties should also be an array of key/value maps
Returns
The new created page (or the last one if it was an array)
Since
2.7
void org::kde::kirigami::PageRow::movePage ( fromPos  ,
toPos   
)

Move the page at position fromPos to the new position toPos If needed, currentIndex will be adjusted in order to keep the same current page.

Since
2.7
void org::kde::kirigami::PageRow::pageInserted ( int  position,
Item  page 
)
signal

Emitted when a page has been inserted anywhere.

Parameters
positionwhere the page has been inserted
pagethe new page
Since
2.7
void org::kde::kirigami::PageRow::pagePushed ( Item  page)
signal

Emitted when a page has been pushed to the bottom.

Parameters
pagethe new page
Since
2.5
void org::kde::kirigami::PageRow::pageRemoved ( Item  page)
signal

Emitted when a page has been removed from the row.

Parameters
pagethe page that has been removed: at this point it's still valid, but may be auto deleted soon.
Since
2.5
void org::kde::kirigami::PageRow::pop ( page  )

Pops a page off the stack.

Parameters
pageIf page is specified then the stack is unwound to that page, to unwind to the first page specify page as null.
Returns
The page instance that was popped off the stack.
void org::kde::kirigami::PageRow::push ( page  ,
properties   
)

Pushes a page on the stack.

The page can be defined as a component, item or string. If an item is used then the page will get re-parented. If a string is used then it is interpreted as a url that is used to load a page component. The last pushed page will become the current item.

Parameters
pageThe page can also be given as an array of pages. In this case all those pages will be pushed onto the stack. The items in the stack can be components, items or strings just like for single pages. Additionally an object can be used, which specifies a page and an optional properties property. This can be used to push multiple pages while still giving each of them properties. When an array is used the transition animation will only be to the last page.
propertiesThe properties argument is optional and allows defining a map of properties to set on the page. If page is actually an array of pages, properties should also be an array of key/value maps
Returns
The new created page (or the last one if it was an array)
void org::kde::kirigami::PageRow::removePage ( page  )

Remove the given page.

Parameters
pageThe page can be given both as integer position or by reference
Returns
The page that has just been removed
Since
2.7
void org::kde::kirigami::PageRow::replace ( page  ,
properties   
)

Replaces a page on the stack.

Parameters
pageThe page can also be given as an array of pages. In this case all those pages will be pushed onto the stack. The items in the stack can be components, items or strings just like for single pages. the current page and all pagest after it in the stack will be removed. Additionally an object can be used, which specifies a page and an optional properties property. This can be used to push multiple pages while still giving each of them properties. When an array is used the transition animation will only be to the last page.
propertiesThe properties argument is optional and allows defining a map of properties to set on the page.
See also
push() for details.

The documentation for this class was generated from the following file:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Sun Jul 5 2020 22:37:52 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.