|
|
|
/*! @file
|
|
|
|
|
|
|
|
@id $Id$
|
|
|
|
*/
|
|
|
|
// 1 2 3 4 5 6 7 8
|
|
|
|
// 45678901234567890123456789012345678901234567890123456789012345678901234567890
|
|
|
|
|
|
|
|
#ifndef __SWISSWEBWIDGET_HXX__
|
|
|
|
#define __SWISSWEBWIDGET_HXX__
|
|
|
|
|
|
|
|
#include <qbrowserlib/ui_swisswebwidget.h>
|
|
|
|
|
|
|
|
#include <QtGui/QMainWindow>
|
|
|
|
#include <QtGui/QToolBar>
|
|
|
|
#include <QtGui/QStatusBar>
|
|
|
|
|
|
|
|
#include <QtDebug>
|
|
|
|
|
|
|
|
//! @addtogroup qbrowserlib
|
|
|
|
//! @{
|
|
|
|
|
|
|
|
namespace qbrowserlib {
|
|
|
|
|
|
|
|
//! Window Widget for complete page witghin a webbrowser.
|
|
|
|
/*! Contains a toolbar, a status bar and @refs
|
|
|
|
SwissWebView. Instanciate this and you have a complete
|
|
|
|
browser. To be used inside a QTabBar, as main window or as
|
|
|
|
docking widget. */
|
|
|
|
class SwissWebWidget: public QWidget, private Ui::SwissWebWidget {
|
|
|
|
|
|
|
|
Q_OBJECT;
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
SwissWebWidget(QWidget* p=0): QWidget(p) {
|
|
|
|
setupUi(this);
|
|
|
|
/*! Within a QMainWindow, the widget automatically reparents
|
|
|
|
the top buttons to the toolbar and the bottom status
|
|
|
|
line to the window's status bar. */
|
|
|
|
moveToMain(qobject_cast<QMainWindow*>(p?p->parentWidget():p));
|
|
|
|
connects();
|
|
|
|
}
|
|
|
|
|
|
|
|
//! Moves status widgets to status bar, tool widgets to toolbar
|
|
|
|
/*! You can use this method to reparent the tools and the status
|
|
|
|
part of the widget into the toolbar and statusbar of your
|
|
|
|
main window.
|
|
|
|
|
|
|
|
@note If used as central widget of a QMainWindow, status and
|
|
|
|
tools are automatically reparented in the constructor. */
|
|
|
|
void moveToMain(QMainWindow* w) {
|
|
|
|
if (!w) return;
|
|
|
|
QToolBar* t(w->addToolBar(trUtf8("Browser Tools",
|
|
|
|
"name of the browser's toolbar")));
|
|
|
|
while (_tools->count())
|
|
|
|
t->addWidget(_tools->itemAt(0)->widget());
|
|
|
|
delete _tools; _tools=0;
|
|
|
|
_statusbar->removeWidget(_status); delete _status; _status=0;
|
|
|
|
while (_statusbar->count())
|
|
|
|
w->statusBar()->addWidget(_statusbar->itemAt(0)->widget());
|
|
|
|
delete _statusbar; _statusbar=0;
|
|
|
|
}
|
|
|
|
|
|
|
|
public Q_SLOTS:
|
|
|
|
|
|
|
|
void load() {
|
|
|
|
_webview->load(_url->text());
|
|
|
|
}
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
|
|
|
void connects() {
|
|
|
|
connect(_url, SIGNAL(returnPressed()), SLOT(load()));
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
//! @}
|
|
|
|
|
|
|
|
#endif
|