AppFilter QML Type

Provides filter capabilities for the AppInfoList component. More...

Import Statement: import ArcGIS.AppFramework 1.0
Inherits:

AppFrameworkObject

Properties

Signals

Methods

Detailed Description

The AppFilter component provides filter capabilities for the AppInfoList component. This is primarily used in ArcGIS AppStudio and AppStudio Player to provide filtering when listing apps, based on properties such as access info, search text, etc. The contents of this component can only be populated indirectly, through the filter function in AppInfoList. It cannot populate itself.

Property Documentation

access : QStringList

Filters the app list based on the value denoting how the app has been shared. This can be one of four values: "public", "private", "shared" or "org". This information is provided in the app's iteminfo.json file.

appinfolist.filter.access = "org"

hidden : bool

Filters the app list based on if the app is hidden in the ArcGIS Online org or Portal account.


local : bool

Filter the app list based on the apps available locally on the device.

    if(online) {
    model1.append({text: qsTr("All")});
    model1.append({text: qsTr("Local")});
    model1.append({text: qsTr("Online")});
    appInfoList.filter.local = false;
    appInfoList.filter.onlineOnly = false;
    appInfoList.refresh();
} else {
    model1.append({text: qsTr("Local")});
    appInfoList.filter.onlineOnly = false;
    appInfoList.filter.local = true;
    appInfoList.refresh();
}

matchFunction : var


onlineOnly : bool

Filter the app list based on the apps only available online.

appInfoList.filter.onlineOnly = true;

owner : string

Filters the app list based on the provided username of app owner. This information is provided in the app's iteminfo.json file.

appInfoList.filter.owner = "JohnD_appstudio";

owners : QStringList

Filters the app list based on one or multiple app owners' info.

    ComboBox{
    anchors.fill: parent
    clip: true
    style: comboBoxStyle
    model: ListModel{
        ListElement { text: qsTr("All Apps")}
        ListElement { text: qsTr("My Apps")}
            }
    onActivated: {
        if(index == 0) {
            appInfoList.filter.owners = [];
                    }
        if(index == 1) {
            if(appPlayer.portal && appPlayer.portal.username) {
                appInfoList.filter.owners = [appPlayer.portal.user.username];
                            }
                    }
            }
}

published : bool

Filter the app list based on apps which have been published online.

appInfoList.filter.published = true

tags : QStringList

Filter the app list based on app's tags provided in the app's iteminfo.json file.


text : string

Filter the app list based on the title, description, and owner name provided in the iteminfo.json of the app.

appInfoList.filter.text = "Quick Report"

types : int

Originally, filtered based on the type of app. This property is no longer in use.


updateAvailable : bool

Filter the app list based on apps that have an update available for the app's local files. You must be logged in to ArcGIS Online to access this filter.

appInfoList.filter.updateAvailable = true

updatedLocally : bool

Filter the app list based on apps which have been updated locally on the device. You must be logged in to ArcGIS Online to access this filter.

appInfoList.filter.updatedLocally = true

Signal Documentation

filterChanged()

Signal emitted when the filter being applied has changed.

Note: The corresponding handler is onFilterChanged.


Method Documentation

clear()

Clears all properties from the filter.


Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.

You can no longer sign into this site. Go to your ArcGIS portal or the ArcGIS Location Platform dashboard to perform management tasks.

Your ArcGIS portal

Create, manage, and access API keys and OAuth 2.0 developer credentials, hosted layers, and data services.

Your ArcGIS Location Platform dashboard

Manage billing, monitor service usage, and access additional resources.

Learn more about these changes in the What's new in Esri Developers June 2024 blog post.

Close