/* * Copyright 2008 Ben Boeckel * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program. If not, see . */ #ifndef SIGMODR_SIGMODRUI #define SIGMODR_SIGMODRUI // KDE includes #include #include // Qt includes #include // Form include #include "ui_sigmodr.h" // Forward declarations class KUrl; class QDragEnterEvent; class QDropEvent; namespace Sigmod { class Object; class Sigmod; } namespace Sigmodr { class SigmodrUI : public KXmlGuiWindow, private Ui::formSigmodr { Q_OBJECT public: SigmodrUI(QWidget* parent = 0); ~SigmodrUI(); protected: void dragEnterEvent(QDragEnterEvent* event); void dropEvent(QDropEvent* event); protected slots: void update(); void closeEvent(QCloseEvent* event); void resizeEvent(QResizeEvent* event); void setChangedTitle(const bool changed); void setDirty(const bool dirty = true); void newSigmod(); void openSigmod(); bool openSigmod(const KUrl& url); bool openSigmod(const QString& path, const bool isRemote = false); void saveSigmod(); void saveSigmod(const Sigmod::Sigmod* sigmod); bool saveSigmod(const Sigmod::Sigmod* sigmod, const KUrl& url); void saveAsSigmod(); void saveAsSigmod(const Sigmod::Sigmod* sigmod); void downloadSigmod(); void uploadSigmod(); void uploadSigmod(const Sigmod::Sigmod* sigmod); void closeSigmod(); bool closeSigmod(const Sigmod::Sigmod* sigmod, const bool force = false); bool closeAllSigmods(const bool force = false); void copyObject(); void pasteObject(); void preferences(); void toggleMenubar(); void on_splitter_splitterMoved(); void on_treeSigmod_clicked(const QModelIndex& index); void on_treeSigmod_customContextMenuRequested(const QPoint& position); private: void setupActions(); QDomDocument m_clipboard; }; } #endif