27 #include "kmainwindow_p.h"
29 #include "kmainwindowiface_p.h"
30 #include "ktoolbarhandler_p.h"
39 #include <QCloseEvent>
40 #include <QDesktopWidget>
41 #include <QDockWidget>
42 #include <QtXml/QDomDocument>
43 #include <QtGui/QLayout>
44 #include <QtCore/QObject>
45 #include <QtGui/QSessionManager>
46 #include <QtGui/QStyle>
47 #include <QtCore/QTimer>
48 #include <QtGui/QWidget>
49 #include <QtCore/QList>
69 class KXmlGuiWindowPrivate :
public KMainWindowPrivate {
71 void _k_slotFactoryMakingChanges(
bool b)
76 letDirtySettings = !b;
82 KDEPrivate::ToolBarHandler *toolBarHandler;
84 QPointer<KEditToolBar> toolBarEditor;
92 d->showHelpMenu =
true;
93 d->toolBarHandler = 0;
94 d->showStatusBarAction = 0;
96 new KMainWindowInterface(
this);
103 if ( !d->toolBarHandler )
106 return d->toolBarHandler->toolBarMenuAction();
113 if ( d->toolBarHandler )
114 d->toolBarHandler->setupActions();
127 if (ev->type()==QEvent::Polish) {
129 QDBusConnection::ExportScriptableSlots |
130 QDBusConnection::ExportScriptableProperties |
131 QDBusConnection::ExportNonScriptableSlots |
132 QDBusConnection::ExportNonScriptableProperties |
133 QDBusConnection::ExportChildObjects);
141 d->showHelpMenu = showHelpMenu;
147 return d->showHelpMenu;
155 connect(d->factory, SIGNAL(makingChanges(
bool)),
156 this, SLOT(_k_slotFactoryMakingChanges(
bool)));
166 if (!d->toolBarEditor) {
168 d->toolBarEditor->setAttribute(Qt::WA_DeleteOnClose);
171 d->toolBarEditor->show();
192 if( options &
Keys ){
207 d->defaultSize = defaultSize;
216 else if (d->defaultSize.isValid()) {
217 resize(d->defaultSize);
219 else if (isHidden()) {
223 if( options &
Save ){
249 if (d->showHelpMenu) {
259 kWarning() <<
"You called setXMLFile(" <<
xmlFile() <<
") and then createGUI or setupGUI,"
260 <<
"which also calls setXMLFile and will overwrite the file you have previously set.\n"
261 <<
"You should call createGUI("<<
xmlFile()<<
") or setupGUI(<options>,"<<
xmlFile()<<
") instead.";
295 if ( d->toolBarHandler )
298 d->toolBarHandler =
new KDEPrivate::ToolBarHandler(
this );
303 if ( !d->toolBarHandler )
309 delete d->toolBarHandler;
310 d->toolBarHandler = 0;
317 return ( d->toolBarHandler );
322 if(!d->showStatusBarAction){
325 connect(d->showStatusBarAction, SIGNAL(toggled(
bool)), sb, SLOT(setVisible(
bool)));
326 d->showStatusBarAction->setChecked(sb->isHidden());
330 d->showStatusBarAction->setText(tmpStatusBar->text());
331 d->showStatusBarAction->setWhatsThis(tmpStatusBar->whatsThis());
351 KStatusBar *sb = qFindChild<KStatusBar *>(
this);
352 if (sb && d->showStatusBarAction)
353 d->showStatusBarAction->setChecked(!sb->isHidden());
361 #include "kxmlguiwindow.moc"