This tutorial shows examples on how to create docking widgets that dock to your main application.
Start a new project using kdevelop
1. First start the Kdevelop.
2. Select New Project from the project menu
3. Select Simple KDE application located under C++ -> KDE
tutKDockWidget::tutKDockWidget()
: KDockMainWindow( 0, "tutKDockWidget" )
{ // set the shell's ui resource file setXMLFile("tutkdockwidgetui.rc");
//define the main dock - Note: this window does not dock/undock KDockWidget* mainDock; mainDock = createDockWidget( "Falk's MainDockWidget", 0, 0L, "main_dock_widget");
//This can be any widget control QLabel* cw = new QLabel("label1",mainDock,"label1"); mainDock->setWidget( cw);
//This informs how docking will take place //KDockWidget::DockCorner = dock to all sides //KDockWidget::DockFullSite = dock to all sides + center //KDockWidget::DockFullDocking = KDockWidget::DockFullSite mainDock->setDockSite(KDockWidget::DockFullSite);
//Prevent main docking for beable able to dock mainDock->setEnableDocking(KDockWidget::DockNone);
setView( mainDock);
//this tells the kDockMainWindow what control to use as its master dock control setMainDockWidget( mainDock);
//Here is really where the window that docks/undocked is defined KDockWidget* dockLeft; dockLeft = createDockWidget( "Intially left one", 0, 0L, i18n("The left dockwidget"));
//Again this can be any control QLabel* aw = new QLabel("label2",dockLeft,"label2"); dockLeft->setWidget( aw);
//Dock the control to the left side with 20 width dockLeft->manualDock( mainDock,KDockWidget::DockLeft,20); }
tutKDockWidget::~tutKDockWidget() { }