/* ============================================================  *  * This file is a part of the rekonq project  * * Copyright (C) 2007-2008 Trolltech ASA. All rights reserved * Copyright (C) 2008 by Andrea Diamantini  * *  * 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 2, 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.  *  * ============================================================ */ #ifndef MAINWINDOW_H #define MAINWINDOW_H // Local Includes #include "findbar.h" #include "searchbar.h" #include "mainview.h" // KDE Includes #include #include #include #include #include #include #include class QWebFrame; class WebView; /** The MainWindow of the Browser Application. Handles the tab widget and all the actions */ class MainWindow : public KXmlGuiWindow { Q_OBJECT public: MainWindow(); ~MainWindow(); static KUrl guessUrlFromString(const QString &url); MainView *tabWidget() const; WebView *currentTab() const; private: void setupActions(); void setupCustomMenu(); public slots: void loadPage(const QString &url); void slotHome(); void slotFind(const QString &); void slotFindNext(); void slotFindPrevious(); private slots: void slotLoadProgress(int); void slotUpdateStatusbar(const QString &string); void slotUpdateWindowTitle(const QString &title = QString()); void loadUrl(const KUrl &url); void slotPreferences(); void slotFileNew(); void slotFileOpen(); void slotFilePrintPreview(); void slotFilePrint(); void slotPrivateBrowsing(); void slotFileSaveAs(); void slotViewTextBigger(); void slotViewTextNormal(); void slotViewTextSmaller(); void slotViewPageSource(); void slotViewFullScreen(bool enable); void slotViewFindBar(); void slotToggleInspector(bool enable); void slotDownloadManager(); void slotOpenLocation(); void slotAboutToShowBackMenu(); // history related void slotOpenActionUrl(QAction *action); void slotOpenPrevious(); void slotOpenNext(); void slotShowWindow(); void slotSwapFocus(); void printRequested(QWebFrame *frame); void geometryChangeRequested(const QRect &geometry); private: SearchBar *m_searchBar; FindBar *m_findBar; KMenu *m_historyBackMenu; KMenu *m_windowMenu; QAction *m_stopReload; QString m_lastSearch; MainView *m_tabWidget; }; #endif // MAINWINDOW_H