File indexing completed on 2024-12-08 12:55:13

0001 /***************************************************************************
0002     smb4kprofilesmenu  -  The menu for the profiles
0003                              -------------------
0004     begin                : Do Aug 10 2014
0005     copyright            : (C) 2014-2019 by Alexander Reinholdt
0006     email                : alexander.reinholdt@kdemail.net
0007  ***************************************************************************/
0008 
0009 /***************************************************************************
0010  *   This program is free software; you can redistribute it and/or modify  *
0011  *   it under the terms of the GNU General Public License as published by  *
0012  *   the Free Software Foundation; either version 2 of the License, or     *
0013  *   (at your option) any later version.                                   *
0014  *                                                                         *
0015  *   This program is distributed in the hope that it will be useful, but   *
0016  *   WITHOUT ANY WARRANTY; without even the implied warranty of            *
0017  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
0018  *   General Public License for more details.                              *
0019  *                                                                         *
0020  *   You should have received a copy of the GNU General Public License     *
0021  *   along with this program; if not, write to the                         *
0022  *   Free Software Foundation, Inc., 51 Franklin Street, Suite 500, Boston,*
0023  *   MA 02110-1335, USA                                                    *
0024  ***************************************************************************/
0025 
0026 #ifndef SMB4KPROFILESMENU_H
0027 #define SMB4KPROFILESMENU_H
0028 
0029 // Qt include
0030 #include <QString>
0031 #include <QStringList>
0032 
0033 // KDE includes
0034 #include <KWidgetsAddons/KSelectAction>
0035 
0036 
0037 class Smb4KProfilesMenu : public KSelectAction
0038 {
0039   Q_OBJECT
0040   
0041   public:
0042     /**
0043      * Constructor
0044      */
0045     explicit Smb4KProfilesMenu(QObject* parent = 0);
0046     
0047     /**
0048      * Destructor
0049      */
0050     virtual ~Smb4KProfilesMenu();
0051     
0052     /**
0053      * Force the menu to be set up again. This should be called if 
0054      * the settings changed and the handling of bookmarks might be
0055      * affected.
0056      */
0057     void refreshMenu();
0058     
0059   protected Q_SLOTS:
0060     void slotActiveProfileChanged(const QString &newProfile);
0061     void slotProfilesListChanged(const QStringList &profiles);
0062     void slotProfileUsageChanged(bool use);
0063     void slotActionTriggered(const QString &name);
0064 };
0065 
0066 #endif