/****************************************************************************
** Form interface generated from reading ui file 'mainwindow.ui'
**
** Created by: The TQt user interface compiler (TQt 3.5.0)
**
** WARNING! All changes made in this file will be lost!
****************************************************************************/

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <ntqvariant.h>
#include <ntqmainwindow.h>
#include <ntqptrlist.h>
#include <ntqguardedptr.h>
#include <ntqmap.h>
#include <ntqstringlist.h>
#include "finddialog.h"
#include "helpwindow.h"

class TQVBoxLayout;
class TQHBoxLayout;
class TQGridLayout;
class TQSpacerItem;
class TQAction;
class TQActionGroup;
class TQToolBar;
class TQPopupMenu;
class SettingsDialog;
class HelpDialog;
class TabbedBrowser;
class TQTimerEvent;

class MainWindow : public TQMainWindow
{
    TQ_OBJECT

public:
    MainWindow( TQWidget* parent = 0, const char* name = 0, WFlags fl = WType_TopLevel );
    ~MainWindow();

    TQMenuBar *menubar;
    TQPopupMenu *fileMenu;
    TQPopupMenu *editMenu;
    TQPopupMenu *PopupMenu;
    TQPopupMenu *goMenu;
    TQPopupMenu *bookmarkMenu;
    TQPopupMenu *helpMenu;
    TQToolBar *Toolbar;
    TQToolBar *goActionToolbar;
    TQAction* actionFilePrint;
    TQAction* actionFileExit;
    TQAction* actionEditCopy;
    TQAction* actionEditFind;
    TQAction* actionEditFindAgain;
    TQAction* actionEditFindAgainPrev;
    TQAction* actionGoHome;
    TQAction* actionGoPrevious;
    TQAction* actionGoNext;
    TQAction* helpAbout_TQt_AssistantAction;
    TQAction* actionAboutApplication;
    TQAction* actionZoomIn;
    TQAction* actionZoomOut;
    TQAction* actionSettings;
    TQAction* actionNewWindow;
    TQAction* actionClose;
    TQAction* actionAddBookmark;
    TQAction* actionHelpWhatsThis;
    TQAction* actionOpenPage;
    TQAction* actionNextPage;
    TQAction* actionPrevPage;
    TQAction* actionClosePage;
    TQAction* actionHelpAssistant;

    virtual bool close( bool alsoDelete );
    TabbedBrowser * browsers();
    virtual HelpDialog* helpDialog();
    virtual void timerEvent(TQTimerEvent *);

public slots:
    virtual void init();
    virtual void setup();
    virtual void destroy();
    virtual void about();
    virtual void aboutApplication();
    virtual void find();
    virtual void findAgain();
    virtual void findAgainPrev();
    virtual void goHome();
    virtual void print();
    virtual void updateBookmarkMenu();
    virtual void setupBookmarkMenu();
    virtual void showBookmark( int id );
    virtual void showLinkFromClient( const TQString & link );
    virtual void showLink( const TQString & link );
    virtual void showLinks( const TQStringList & links );
    virtual void showTQtHelp();
    virtual void showSettingsDialog();
    virtual void showWebBrowserSettings();
    virtual void showSettingsDialog( int page );
    virtual void hide();
    virtual MainWindow * newWindow();
    virtual void saveSettings();
    virtual void saveToolbarSettings();
    virtual void showSearchLink( const TQString & link, const TQStringList & terms );
    virtual void showGoActionLink();
    virtual void showAssistantHelp();
    virtual void updateProfileSettings();
    virtual void backwardAvailable(bool);
    virtual void forwardAvailable(bool);
    virtual void browserTabChanged();

protected:
    TQPtrList<TQAction> *goActions;
    int setupCompleted:1;
    TabbedBrowser *tabs;
    SettingsDialog * settingsDia;
    TQMap<int, TQString> bookmarks;
    HelpDialog *helpDock;
    TQDockWindow *dw;
    TQGuardedPtr<FindDialog> findDialog;
    static TQPtrList<MainWindow> *windows;
    TQMap<TQAction*,TQString> *goActionDocFiles;
    TQStringList pendingLinks;
    TQPtrList<HelpWindow> pendingBrowsers;


protected slots:
    virtual void languageChange();

private:
    virtual void setupGoActions();
    virtual bool insertActionSeparator();

};

#endif // MAINWINDOW_H
