Warning, /maui/mauikit-accounts/Mainpage.dox is written in an unsupported language. File is not indexed.
0001 /*
0002 * This file is part of MauiKit
0003 * SPDX-FileCopyrightText: 2023 Camilo Higuita <milo.h@aol.com>
0004 *
0005 * SPDX-License-Identifier: LGPL-2.0-or-later
0006 */
0007
0008
0009 /** @mainpage mauikit-accounts
0010
0011 @section overview Introduction
0012 MauiKit Accounts is a set of <a href="https://doc.qt.io/qt-6/qtquick-index.html">QtQuick</a> components and classes meant for making easy the handling and browsing of the file system. The visual controls are designed to integrate well with the rest of MauiKit controls and the Maui HIG.
0013
0014 You can think of this - and other - MauiKit Frameworks as KDE's KParts, where each module accomplishes a specific function and when plug together you can quickly assemble a more powerful app. Components like this one are usually used and shared among multiple Maui Applications.
0015
0016 @image html vvave_accounts.png "Vvave app using the Accounts controls"
0017
0018 @section component Components
0019 MauiKit Accounts has a set of visual controls and helper classes. Some of the visual controls are a graphical representation of the classes or wrappers that consume the API models.
0020
0021 The MauiAccounts is exposed as a singleton instance, and can be accessed globaly from QML using the `Accounts` property.
0022
0023 @subsection views Visual Controls
0024
0025 - @link AccountsMenuItem AccountsMenuItem @endlink
0026 - @link AccountsDialog AccountsDialog @endlink
0027 - @link CredentialsDialog CredentialsDialog @endlink
0028
0029 @subsection classes Classes
0030 The helper classes contain models andcontrollers for interfacing with the file system.
0031
0032 - MauiAccounts
0033
0034 @section example Minimal Example
0035
0036 @code
0037 import QtQuick
0038 import QtQuick.Controls
0039 import QtQuick.Layouts
0040 import org.mauikit.controls as Maui
0041 import org.mauikit.accounts as MA
0042
0043 Maui.ApplicationWindow
0044 {
0045 id: root
0046
0047 Maui.Page
0048 {
0049 anchors.fill: parent
0050
0051 Maui.Controls.showCSD: true
0052
0053 headBar.leftContent: Maui.ToolButtonMenu
0054 {
0055 icon.name: "application-menu"
0056 MA.AccountsMenuItem {}
0057
0058 MenuSeparator {}
0059
0060 MenuItem
0061 {
0062 text: "About"
0063 onTriggered: root.about()
0064 }
0065 }
0066 }
0067 }
0068 @endcode
0069
0070 @subsection tutorial Tutorial
0071 To use this framework components, you can import the module using QML as `import org.mauikit.filebrowsing`, or include the headers and link to the target library for C++.
0072
0073 Examples for every control can be found in the examples directory.
0074
0075 If you have any questions about MauiKit File Browsing, feel free to drop by the Maui Project group on Telegram as `[at]mauiproject`.
0076
0077 A complete guide on how to set up and create an application using the MauiKit File Browsing controls can be found here [quickstart](@ref quickstart).
0078
0079 @image html filebrowser.png "FileBrowser component"
0080
0081 @section deployment Deployment
0082
0083 @subsection building Building
0084 For building MauiKit File Browsing from source, you will need to be familiar with some basic shell commands, with a console aka terminal emulator and your distribution package manager.
0085
0086 Before building it, make sure you have all the dependencies already installed with its development files.
0087
0088 `git cmake make kf6-ki18n kf6-kcoreaddons qt6-svg qt6-base mauiman4 mauikit4 kf6-kio...`
0089
0090 Then you can clone the project to your machine.
0091
0092 `git clone https://invent.kde.org/maui/mauikit-filebrowsing.git`
0093
0094 Now that you have the sources, go into the `mauikit-filebrowsing` folder and start the building process.
0095
0096 `cd mauikit-filebrowsing`
0097
0098 Let's build the project into a separate directory
0099
0100 `mkdir build`
0101
0102 Then.
0103
0104 `cd build`
0105
0106 An lets build it.
0107 In this example the installation prefix path is set to the `/usr` directory; you can modify it if you want to, but bare in mind that you will also need to let know Qt where else it can find the installed QML plugins.
0108
0109 `cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_WITH_QT6=ON`
0110
0111 If everything goes right, the next step is to install it on the system for it to be ready to be used.
0112
0113 @subsection installation Installation
0114
0115 Once the project has been built from source - as explained in the previous section, you can install it.
0116
0117 `sudo make install`
0118
0119 This step will install the QML plugin to the right location.
0120
0121 If you don't want to build it from source, you can also look for it in your distribution packages.
0122
0123 For example, to install it on Arch based distributions:
0124
0125 `sudo pacman install mauikit-filebrowsing4`
0126
0127 Debian based distros:
0128
0129 `sudo apt install mauikit-filebrowsing4`
0130
0131
0132 For Android, you will need to build it from source and install it at your Qt for Android root directory.
0133
0134 The easiest way is to build it using Qt Creator. Go to the project settings page, and enable the CMake build step for installation. That will install MauiKit into the right location. Remember you need to set the Kit to be Android.
0135 You can read more about setting up Qt from Android on their website.
0136
0137 @subsection usage Usage
0138 The simplest and recommended way to use MauiKit is to just use the packages provided by your Linux distribution, or build it as a module and deploy it together with the main application.
0139
0140 Once MauiKit has been installed you can start using it in your QML files. Checkout the ApplicationWindow for a quick example.
0141
0142 @subsection examples Examples
0143
0144 @subsection android Android
0145
0146 @section notes Notes
0147
0148 @subsection contributing Contributing
0149
0150 If you find any syntax errors, missing documentation, or not working code snippets or examples, please consider reporting the issue at
0151 <a href="https://invent.kde.org/maui/mauikit-accounts/-/issues">MauiKit File Browsing</a> issues page, with the **documentation** tag.
0152
0153 If you want to contribute with the documentation efforts, you can contact the Maui Project at Telegram [at]mauiproject.
0154
0155 @authors
0156 Camilo Higuita \<milo.h@aol.com.com\><br>
0157
0158 @maintainers
0159 Camilo Higuita \<milo.h@aol.com.com\><br>
0160
0161 @licenses
0162 @lgpl
0163 */
0164
0165 // DOXYGEN_SET_RECURSIVE = YES
0166 // DOXYGEN_SET_EXCLUDE_PATTERNS += *_p.h */private/* */examples/* */doc/* */styles/*
0167 // DOXYGEN_SET_PROJECT_NAME = MauiKit
0168 // vim:ts=4:sw=4:expandtab:filetype=doxygen