Pana::CrashHandlerWidget::CrashHandlerWidget() { QBoxLayout *layout = new QHBoxLayout( this, 18, 12 ); { QBoxLayout *lay = new QVBoxLayout( layout ); QLabel *label = new QLabel( this ); label->setPixmap( locate( "data", "drkonqi/pics/konqi.png" ) ); label->setFrameStyle( QFrame::Plain | QFrame::Box ); lay->add( label ); lay->addItem( new QSpacerItem( 3, 3, QSizePolicy::Minimum, QSizePolicy::Expanding ) ); } layout = new QVBoxLayout( layout, 6 ); layout->add( new QLabel( /*i18n*/( "<p>" "Pana has crashed! We are terribly sorry about this :(" "<p>" "However you now have an opportunity to help us fix this crash so that it doesn't " "happen again! Click <b>Send Email</b> and Pana will prepare an email that you " "can send to us that contains information about the crash, and we'll try to fix it " "as soon as possible." "<p>" "Thanks for choosing Pana.<br>" ), this ) ); layout = new QHBoxLayout( layout, 6 ); layout->addItem( new QSpacerItem( 6, 6, QSizePolicy::Expanding ) ); layout->add( new KPushButton( KGuiItem( i18n("Send Email"), "mail_send" ), this, "email" ) ); layout->add( new KPushButton( KStdGuiItem::close(), this, "close" ) ); static_cast<QPushButton*>(child("email"))->setDefault( true ); connect( child( "email" ), SIGNAL(clicked()), SLOT(accept()) ); connect( child( "close" ), SIGNAL(clicked()), SLOT(reject()) ); setCaption( i18n("Crash Handler") ); setFixedSize( sizeHint() ); }
KMdiDockContainer::KMdiDockContainer( QWidget *parent, QWidget *win, int position, int flags ) : QWidget( parent ), KDockContainer() { m_tabSwitching = false; m_block = false; m_inserted = -1; m_mainWin = win; oldtab = -1; mTabCnt = 0; m_position = position; m_previousTab = -1; m_separatorPos = 18000; m_movingState = NotMoving; m_startEvent = 0; kdDebug( 760 ) << k_funcinfo << endl; QBoxLayout *l; m_horizontal = ( ( position == KDockWidget::DockTop ) || ( position == KDockWidget::DockBottom ) ); if ( m_horizontal ) l = new QVBoxLayout( this ); //vertical layout for top and bottom docks else l = new QHBoxLayout( this ); //horizontal layout for left and right docks l->setAutoAdd( false ); m_tb = new KMultiTabBar( m_horizontal ? KMultiTabBar::Horizontal : KMultiTabBar::Vertical, this ); m_tb->setStyle( KMultiTabBar::KMultiTabBarStyle( flags ) ); m_tb->showActiveTabTexts( true ); KMultiTabBar::KMultiTabBarPosition kmtbPos; switch( position ) { case KDockWidget::DockLeft: kmtbPos = KMultiTabBar::Left; break; case KDockWidget::DockRight: kmtbPos = KMultiTabBar::Right; break; case KDockWidget::DockTop: kmtbPos = KMultiTabBar::Top; break; case KDockWidget::DockBottom: kmtbPos = KMultiTabBar::Bottom; break; default: kmtbPos = KMultiTabBar::Right; break; } m_tb->setPosition( kmtbPos ); m_ws = new QWidgetStack( this ); m_ws->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) ); //layout the tabbar if ( position == KDockWidget::DockLeft || position == KDockWidget::DockTop ) { //add the tabbar then the widget stack l->add( m_tb ); l->add( m_ws ); } else { //add the widget stack then the tabbar l->add( m_ws ); l->add( m_tb ); } l->activate(); m_ws->hide(); }