|
|
|
/*! @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);
|
|
|
|
QMainWindow* w(qobject_cast<QMainWindow*>(p));
|
|
|
|
qDebug()<<"Parent "<<p<<(w?"is":"is not")<<" a QMainWindow";
|
|
|
|
if (w) {
|
|
|
|
/*! Within a QMainWindow, the widget automatically reparents
|
|
|
|
the top buttons to the toolbar and the bottom status
|
|
|
|
line to the window's status bar. */
|
|
|
|
qDebug()<<"Rearranging";
|
|
|
|
QToolBar* t(w->addToolBar(trUtf8("Browser Tools",
|
|
|
|
"name of the browser's toolbar")));
|
|
|
|
_tools->setParent(t);
|
|
|
|
_statusbar->removeWidget(_status);
|
|
|
|
for (int i(_statusbar->count()); i>0;) {
|
|
|
|
qDebug()<<"Rearranging item "<<(i-1)<<_statusbar->itemAt(--i);
|
|
|
|
w->statusBar()->addWidget(_statusbar->itemAt(--i)->widget());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
protected:
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
//! @}
|
|
|
|
|
|
|
|
#endif
|