status-desktop/ui/StatusQ
Pascal Precht 74a88a70b3 feat(StatusBaseInput): introduce `component` property
This property enables users to load any component into the input field.
This is useful for rendering a "clearable" icon button, simple icons or
even more complex buttons.

Usage:

```qml
StatusBaseInput {
    ...
    component: StatusIcon {
        name: "cancel"
        color: Theme.palette.dangerColor1
        width: 16
    }
}
```

The `clearable` property of `StatusBaseInput` also renders and icon button
on the right hand side. With this new feature, `clearable` is just a short-hand
for:

```qml
StatusBaseInput {
    ...
    component: StatusFlatRoundButton {
        visible: edit.text.length != 0 &&
                statusBaseInput.clearable &&
                !statusBaseInput.multiline &&
                edit.activeFocus
        type: StatusFlatRoundButton.Type.Secondary
        width: 24
        height: 24
        icon.name: "clear"
        icon.width: 16
        icon.height: 16
        icon.color: Theme.palette.baseColor1
        onClicked: {
            edit.clear()
        }
    }
}
```

Closes #380
2022-09-21 18:20:03 +02:00
..
sandbox feat(StatusBaseInput): introduce `component` property 2022-09-21 18:20:03 +02:00
src feat(StatusBaseInput): introduce `component` property 2022-09-21 18:20:03 +02:00
.gitignore fix: Add missing .qml to resources, add qmlcache to gitignore 2022-09-21 18:20:02 +02:00
CHANGELOG.md chore: release v0.8.0 2022-09-21 18:20:03 +02:00
README.md feat(StatusChatListAndCategories): add drag and drop support for cate… (#349) 2022-09-21 18:20:03 +02:00
statusq.qrc feat(StatusExpandableItem): Refactored the StatusExpandableSettingsItem to support different types 2022-09-21 18:20:03 +02:00

README.md

StatusQ

An emerging reusable QML UI component library for Status applications.

Usage

StatusQ introduces a module namespace that semantically groups components so they can be easily imported. These modules are:

Provided components can be viewed and tested in the sandbox application that comes with this repository. Other than that, modules and components can be used as expected.

Example:

import Status.Core 0.1
import Status.Controls 0.1

StatusInput {
  ...
}

Viewing and testing components

To make viewing and testing components easy, we've added a sandbox application to this repository in which StatusQ components are being build. This is the first place where components see the light of the world and can be run in a proper application environment.

Using Qt Creator

The easiest way to run the sandbox application is to simply open the provided sandbox.pro file using Qt Creator.

Using command line interface

To run the sandbox from within a command line interface, run the following commands:

$ git clone https://github.com/status-im/StatusQ
$ cd StatusQ/sandbox
$ ./scripts/build

Once that is done, the sandbox can be started with the generated executable:

$ ./bin/sandbox

More Documentation available on the wiki