File indexing completed on 2024-04-14 05:43:08

0001 // vim: set ts=4 sts=4 sw=4 et:
0002 /* This file is part of the KDE project
0003    Copyright (C) 2003 Alexander Kellett <lypanov@kde.org>
0004 
0005    This program is free software; you can redistribute it and/or
0006    modify it under the terms of the GNU General Public
0007    License version 2 or at your option version 3 as published by
0008    the Free Software Foundation.
0009 
0010    This program is distributed in the hope that it will be useful,
0011    but WITHOUT ANY WARRANTY; without even the implied warranty of
0012    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0013     General Public License for more details.
0014 
0015    You should have received a copy of the GNU General Public License
0016    along with this program; see the file COPYING.  If not, write to
0017    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0018    Boston, MA 02110-1301, USA.
0019 */
0020 
0021 #ifndef __actionsimpl_h
0022 #define __actionsimpl_h
0023 
0024 #include <QObject>
0025 class FavIconsItrHolder;
0026 class TestLinkItrHolder;
0027 class CommandHistory;
0028 class KBookmarkModel;
0029 
0030 class ActionsImpl : public QObject
0031 {
0032     Q_OBJECT
0033 
0034 public:
0035     ActionsImpl(QObject *parent, KBookmarkModel *model);
0036     ~ActionsImpl() override;
0037     bool save();
0038 
0039     TestLinkItrHolder *testLinkHolder()
0040     {
0041         return m_testLinkHolder;
0042     }
0043     FavIconsItrHolder *favIconHolder()
0044     {
0045         return m_favIconHolder;
0046     }
0047 
0048 public Q_SLOTS:
0049     void slotLoad();
0050     void slotSaveAs();
0051     void slotCut();
0052     void slotCopy();
0053     void slotPaste();
0054     void slotRename();
0055     void slotChangeURL();
0056     void slotChangeComment();
0057     void slotChangeIcon();
0058     void slotDelete();
0059     void slotNewFolder();
0060     void slotNewBookmark();
0061     void slotInsertSeparator();
0062     void slotSort();
0063     void slotSetAsToolbar();
0064     void slotOpenLink();
0065     void slotTestSelection();
0066     void slotTestAll();
0067     void slotCancelAllTests();
0068     void slotUpdateFavIcon();
0069     void slotRecursiveSort();
0070     void slotUpdateAllFavIcons();
0071     void slotCancelFavIconUpdates();
0072     void slotExpandAll();
0073     void slotCollapseAll();
0074     void slotImport();
0075     void slotExportOpera();
0076     void slotExportHTML();
0077     void slotExportIE();
0078     void slotExportNS();
0079     void slotExportMoz();
0080 
0081 private:
0082     CommandHistory *commandHistory();
0083     KBookmarkModel *m_model;
0084     TestLinkItrHolder *m_testLinkHolder;
0085     FavIconsItrHolder *m_favIconHolder;
0086 };
0087 
0088 #endif