File indexing completed on 2024-05-12 16:39:41

0001 /* This file is part of the KDE project
0002    Copyright (C) 2007 Jarosław Staniek <staniek@kde.org>
0003 
0004    This program is free software; you can redistribute it and/or
0005    modify it under the terms of the GNU Library General Public
0006    License as published by the Free Software Foundation; either
0007    version 2 of the License, or (at your option) any later version.
0008 
0009    This program is distributed in the hope that it will be useful,
0010    but WITHOUT ANY WARRANTY; without even the implied warranty of
0011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0012    Library General Public License for more details.
0013 
0014    You should have received a copy of the GNU Library General Public License
0015    along with this program; see the file COPYING.  If not, write to
0016    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0017  * Boston, MA 02110-1301, USA.
0018 */
0019 
0020 #ifndef KEXISTANDARDACTION_H
0021 #define KEXISTANDARDACTION_H
0022 
0023 #include "kexicore_export.h"
0024 #include <QObject>
0025 
0026 class QAction;
0027 
0028 //! @short Convenience methods to access all standard Kexi actions
0029 /*! These actions should be used instead of hardcoding actions.
0030 
0031  Note that calling any of these methods automatically adds the action
0032  to the action collection if the 'parent' parameter is of type KActionCollection.
0033 */
0034 namespace KexiStandardAction
0035 {
0036 /**
0037 * The standard menubar and toolbar actions.
0038 */
0039 enum StandardAction {
0040     ActionNone,
0041 
0042     // Data
0043     SortAscending, SortDescending
0044 };
0045 
0046 //! Creates an action corresponding to the KexiStandardAction::StandardAction enum.
0047 KEXICORE_EXPORT QAction * create(
0048     StandardAction id, const QObject *recvr, const char *slot, QObject *parent);
0049 
0050 //! @return the internal name of a given standard action
0051 KEXICORE_EXPORT const char* name(StandardAction id);
0052 
0053 //! Sorts data in ascending order
0054 KEXICORE_EXPORT QAction *sortAscending(const QObject *recvr, const char *slot, QObject *parent);
0055 
0056 //! Sorts data in descending order
0057 KEXICORE_EXPORT QAction *sortDescending(const QObject *recvr, const char *slot, QObject *parent);
0058 }
0059 
0060 #endif