File indexing completed on 2023-11-26 11:42:32

0001 /*
0002     The configuration page for the mount options
0003 
0004     SPDX-FileCopyrightText: 2015-2022 Alexander Reinholdt <alexander.reinholdt@kdemail.net>
0005     SPDX-License-Identifier: GPL-2.0-or-later
0006 */
0007 
0008 #ifndef SMB4KCONFIGPAGEMOUNTING_H
0009 #define SMB4KCONFIGPAGEMOUNTING_H
0010 
0011 // Qt includes
0012 #include <QTabWidget>
0013 
0014 /**
0015  * This configuration page contains the mount options
0016  *
0017  * @author Alexander Reinholdt <alexander.reinholdt@kdemail.net>
0018  * @since 2.0.0
0019  */
0020 
0021 class Smb4KConfigPageMounting : public QTabWidget
0022 {
0023     Q_OBJECT
0024 
0025 public:
0026     /**
0027      * The constructor
0028      */
0029     explicit Smb4KConfigPageMounting(QWidget *parent = nullptr);
0030 
0031     /**
0032      * The destructor
0033      */
0034     virtual ~Smb4KConfigPageMounting();
0035 
0036     /**
0037      * Check the settings for problems. Returns TRUE if none were
0038      * found and FALSE otherwise.
0039      *
0040      * @returns TRUE if all settings are okay.
0041      */
0042     bool checkSettings();
0043 
0044 protected Q_SLOTS:
0045     /**
0046      * Sets the new general user ID.
0047      *
0048      * @param action              The action that represents the new user.
0049      */
0050     void slotNewUserTriggered(QAction *action);
0051 
0052     /**
0053      * Sets the new general group ID.
0054      *
0055      * @param action              The action that represents the new group.
0056      */
0057     void slotNewGroupTriggered(QAction *action);
0058 
0059     /**
0060      * Enable / disable the options that are only necessary when the servers
0061      * do not support the CIFS Unix extensions.
0062      *
0063      * @param checked             TRUE if the button is checked
0064      */
0065     void slotCIFSUnixExtensionsSupport(bool checked);
0066 
0067     /**
0068      * This slot is activated when the additional CIFS options are to be
0069      * edited (Linux only).
0070      */
0071     void slotAdditionalCIFSOptions();
0072 
0073     /**
0074      * This slot is activated when the setting of the character set usage is changed
0075      * (BSD only).
0076      */
0077     void slotCharacterSets(bool on);
0078 
0079     /**
0080      * This slot is activated when the "Remount shares" check box is toggled
0081      */
0082     void slotRemountSharesToggled(bool on);
0083 
0084 private:
0085     /**
0086      * Set up the widget
0087      */
0088     void setupWidget();
0089 };
0090 
0091 #endif