void cbSplashScreen::DoPaint(wxDC &dc) { static const wxString release(wxT("svn")); static const wxString revision( wxT("3.0.47") ); #ifdef __WXMSW__ //dc.SetClippingRegion(r); #endif dc.DrawBitmap(m_label, 0, 0, false); wxFont largeFont(16, wxSWISS, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD); wxFont smallFont(9, wxSWISS, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD); wxCoord a, b, c, d; dc.GetTextExtent(release, &a, &b, 0, 0, &largeFont); dc.GetTextExtent(revision, &c, &d, 0, 0, &smallFont); a >>= 1; c >>=1; // int y = 180 - ((b + d + 8)>>1); dc.SetFont(largeFont); //dc.DrawText(release, 92 - a, y); dc.SetFont(smallFont); //dc.DrawText(revision, 92 - c, y + b); }
// method is called each time our chart needs to be repainted void LineChart::paintEvent(QPaintEvent *) { // Repaint is only done if values has changed if (m_needs_repaint) { if (m_image != NULL) delete m_image; m_image = new QImage(size(), QImage::Format_ARGB32); QPainter image_painter(m_image); // create new empty (white) painter image_painter.begin(m_image); image_painter.fillRect(m_image->rect(), Qt::white); QFont smallFont("Helvetica", 8); image_painter.setFont(smallFont); // standard font settings // draw lines if data is available if (m_has_data) { drawChart(image_painter); drawLines(image_painter); } m_needs_repaint = false; // nearly all work done... ;-) } QPainter this_painter(this); this_painter.drawImage(QPoint(0, 0), *m_image); if (m_mouse_pressed) { QPen coord_pen(Qt::yellow, 1); // yellow, 1 pixel wide this_painter.setPen(coord_pen); this_painter.drawRect(m_mouse_x_min, m_mouse_y_min, (m_mouse_x_act - m_mouse_x_min), (m_mouse_y_act - m_mouse_y_min)); } }
QT_BEGIN_NAMESPACE QHash<QPlatformTheme::Font, QFont *> qt_qnx_createRoleFonts(QPlatformFontDatabase *fontDatabase) { // See http://docs.blackberry.com/en/developers/deliverables/41577/typography.jsp // which recommends using // - small font size of 6 points // - normal font size of 8 points // - 11 points for titles (not covered by the theme system). QFont baseFont = fontDatabase->defaultFont(); baseFont.setPointSize(8); QHash<QPlatformTheme::Font, QFont *> fonts; fonts.insert(QPlatformTheme::SystemFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::PushButtonFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::ListViewFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::ListBoxFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::TitleBarFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::MenuFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::ComboMenuItemFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::HeaderViewFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::TipLabelFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::LabelFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::ToolButtonFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::MenuItemFont, new QFont(baseFont)); fonts.insert(QPlatformTheme::ComboLineEditFont, new QFont(baseFont)); QFont smallFont(baseFont); smallFont.setPointSize(6); fonts.insert(QPlatformTheme::SmallFont, new QFont(smallFont)); fonts.insert(QPlatformTheme::MiniFont, new QFont(smallFont)); return fonts; }
//----------------------------------------------------------------------------- //! //----------------------------------------------------------------------------- void tApErrorStateWidget::ShowUncommissioned() { QFont smallFont( font() ); smallFont.setPixelSize( style()->pixelMetric( NPM( tNOSStyle::NPM_FontSizeSmall ) ) ); m_pErrorIcon = new QLabel(); m_pErrorIcon->setPixmap(ErrorPixmap()); m_pErrorLabel1 = new QLabel( tr( "Autopilot has not been commissioned" ) ); m_pErrorLabel1->setFont(smallFont); m_pErrorLabel1->setWordWrap(true); QHBoxLayout* hLayout = new QHBoxLayout; hLayout->setContentsMargins( 0, 0, 0, 0 ); hLayout->setSpacing( 15 ); hLayout->addWidget( m_pErrorIcon, Qt::AlignLeft ); hLayout->addWidget( m_pErrorLabel1, Qt::AlignCenter /*Qt::AlignTop | Qt::AlignLeft*/ ); QFrame* pHSep = new QFrame(); pHSep->setFrameStyle( QFrame::HLine | QFrame::Plain ); pHSep->setLineWidth( 1 ); QLabel* pBoatLbl = new QLabel( tr( "Boat type" ) ); QLabel* pRudderCalLbl = new QLabel( tr( "Rudder calibration" ) ); QLabel* pRudderTestLbl = new QLabel( tr( "Rudder test" ) ); m_pBoatCheck = new tCheckBox(); m_pBoatCheck->setFocusPolicy( Qt::NoFocus ); m_pRudderCalCheck = new tCheckBox(); m_pRudderCalCheck->setFocusPolicy( Qt::NoFocus ); m_pRudderTestCheck = new tCheckBox(); m_pRudderTestCheck->setFocusPolicy( Qt::NoFocus ); CreateCloseButton(); QGridLayout* pLayout = new QGridLayout( this ); pLayout->setContentsMargins( 5, 5, 5, 5 ); pLayout->setSpacing( 5 ); int row = 0; pLayout->addLayout( hLayout, row++, 0, 1, 3 ); pLayout->addWidget( pHSep, row++, 0, 1, 3 ); pLayout->addWidget( pBoatLbl, row, 0, 1, 2 ); pLayout->addWidget( m_pBoatCheck, row++, 2, 1, 1, Qt::AlignRight ); pLayout->addWidget( pRudderCalLbl, row, 0, 1, 2 ); pLayout->addWidget( m_pRudderCalCheck, row++, 2, 1, 1, Qt::AlignRight ); pLayout->addWidget( pRudderTestLbl, row, 0, 1, 2 ); pLayout->addWidget( m_pRudderTestCheck, row++, 2, 1, 1, Qt::AlignRight ); pLayout->addWidget( m_pCloseBtn, row, 0, 1, 3 ); setLayout( pLayout ); m_pCloseBtn->setFocus(); UpdateCommissionedStatus(); // init values m_pUpdateTimer = new QTimer(this); Connect( m_pUpdateTimer, SIGNAL( timeout() ), this, SLOT( UpdateCommissionedStatus() ) ); m_pUpdateTimer->start( 3000 ); }
//----------------------------------------------------------------------------- //! //----------------------------------------------------------------------------- void tApErrorStateWidget::resizeEvent( QResizeEvent* pEvent ) { Q_UNUSED( pEvent ); QFont smallFont( font() ); QFontMetrics fm(smallFont); int w = contentsRect().width(); if ( fm.width( m_pErrorLabel1->text() ) > w ) { smallFont.setPixelSize( (smallFont.pixelSize() * 3 / 4) ); QFontMetrics fm( smallFont ); m_pErrorLabel1->setFont( smallFont ); m_pErrorLabel1->setText( fm.elidedText( m_pErrorLabel1->text(), Qt::ElideRight, w ) ); } }
KAstTopLevel::KAstTopLevel( QWidget *parent, const char *name ) : Q3MainWindow( parent, name, 0 ) { QWidget *border = new QWidget( this ); border->setBackgroundColor( Qt::black ); setCentralWidget( border ); Q3VBoxLayout *borderLayout = new Q3VBoxLayout( border ); borderLayout->addStretch( 1 ); QWidget *mainWin = new QWidget( border ); mainWin->setFixedSize(640, 480); borderLayout->addWidget( mainWin, 0, Qt::AlignHCenter ); borderLayout->addStretch( 1 ); view = new KAsteroidsView( mainWin ); view->setFocusPolicy( Qt::StrongFocus ); connect( view, SIGNAL( shipKilled() ), SLOT( slotShipKilled() ) ); connect( view, SIGNAL( rockHit(int) ), SLOT( slotRockHit(int) ) ); connect( view, SIGNAL( rocksRemoved() ), SLOT( slotRocksRemoved() ) ); connect( view, SIGNAL( updateVitals() ), SLOT( slotUpdateVitals() ) ); Q3VBoxLayout *vb = new Q3VBoxLayout( mainWin ); Q3HBoxLayout *hb = new Q3HBoxLayout; Q3HBoxLayout *hbd = new Q3HBoxLayout; vb->addLayout( hb ); QFont labelFont( "helvetica", 24 ); QColorGroup grp( Qt::darkGreen, Qt::black, QColor( 128, 128, 128 ), QColor( 64, 64, 64 ), Qt::black, Qt::darkGreen, Qt::black ); QPalette pal( grp, grp, grp ); mainWin->setPalette( pal ); hb->addSpacing( 10 ); QLabel *label; label = new QLabel( tr("Score"), mainWin ); label->setFont( labelFont ); label->setPalette( pal ); label->setFixedWidth( label->sizeHint().width() ); hb->addWidget( label ); scoreLCD = new QLCDNumber( 6, mainWin ); scoreLCD->setFrameStyle( Q3Frame::NoFrame ); scoreLCD->setSegmentStyle( QLCDNumber::Flat ); scoreLCD->setFixedWidth( 150 ); scoreLCD->setPalette( pal ); hb->addWidget( scoreLCD ); hb->addStretch( 10 ); label = new QLabel( tr("Level"), mainWin ); label->setFont( labelFont ); label->setPalette( pal ); label->setFixedWidth( label->sizeHint().width() ); hb->addWidget( label ); levelLCD = new QLCDNumber( 2, mainWin ); levelLCD->setFrameStyle( Q3Frame::NoFrame ); levelLCD->setSegmentStyle( QLCDNumber::Flat ); levelLCD->setFixedWidth( 70 ); levelLCD->setPalette( pal ); hb->addWidget( levelLCD ); hb->addStretch( 10 ); label = new QLabel( tr("Ships"), mainWin ); label->setFont( labelFont ); label->setFixedWidth( label->sizeHint().width() ); label->setPalette( pal ); hb->addWidget( label ); shipsLCD = new QLCDNumber( 1, mainWin ); shipsLCD->setFrameStyle( Q3Frame::NoFrame ); shipsLCD->setSegmentStyle( QLCDNumber::Flat ); shipsLCD->setFixedWidth( 40 ); shipsLCD->setPalette( pal ); hb->addWidget( shipsLCD ); hb->addStrut( 30 ); vb->addWidget( view, 10 ); // -- bottom layout: vb->addLayout( hbd ); QFont smallFont( "helvetica", 14 ); hbd->addSpacing( 10 ); QString sprites_prefix = ":/trolltech/examples/graphicsview/portedasteroids/sprites/"; /* label = new QLabel( tr( "T" ), mainWin ); label->setFont( smallFont ); label->setFixedWidth( label->sizeHint().width() ); label->setPalette( pal ); hbd->addWidget( label ); teleportsLCD = new QLCDNumber( 1, mainWin ); teleportsLCD->setFrameStyle( QFrame::NoFrame ); teleportsLCD->setSegmentStyle( QLCDNumber::Flat ); teleportsLCD->setPalette( pal ); teleportsLCD->setFixedHeight( 20 ); hbd->addWidget( teleportsLCD ); hbd->addSpacing( 10 ); */ QPixmap pm( sprites_prefix + "powerups/brake.png" ); label = new QLabel( mainWin ); label->setPixmap( pm ); label->setFixedWidth( label->sizeHint().width() ); label->setPalette( pal ); hbd->addWidget( label ); brakesLCD = new QLCDNumber( 1, mainWin ); brakesLCD->setFrameStyle( Q3Frame::NoFrame ); brakesLCD->setSegmentStyle( QLCDNumber::Flat ); brakesLCD->setPalette( pal ); brakesLCD->setFixedHeight( 20 ); hbd->addWidget( brakesLCD ); hbd->addSpacing( 10 ); pm.load( sprites_prefix + "powerups/shield.png" ); label = new QLabel( mainWin ); label->setPixmap( pm ); label->setFixedWidth( label->sizeHint().width() ); label->setPalette( pal ); hbd->addWidget( label ); shieldLCD = new QLCDNumber( 1, mainWin ); shieldLCD->setFrameStyle( Q3Frame::NoFrame ); shieldLCD->setSegmentStyle( QLCDNumber::Flat ); shieldLCD->setPalette( pal ); shieldLCD->setFixedHeight( 20 ); hbd->addWidget( shieldLCD ); hbd->addSpacing( 10 ); pm.load( sprites_prefix + "powerups/shoot.png" ); label = new QLabel( mainWin ); label->setPixmap( pm ); label->setFixedWidth( label->sizeHint().width() ); label->setPalette( pal ); hbd->addWidget( label ); shootLCD = new QLCDNumber( 1, mainWin ); shootLCD->setFrameStyle( Q3Frame::NoFrame ); shootLCD->setSegmentStyle( QLCDNumber::Flat ); shootLCD->setPalette( pal ); shootLCD->setFixedHeight( 20 ); hbd->addWidget( shootLCD ); hbd->addStretch( 1 ); label = new QLabel( tr( "Fuel" ), mainWin ); label->setFont( smallFont ); label->setFixedWidth( label->sizeHint().width() + 10 ); label->setPalette( pal ); hbd->addWidget( label ); powerMeter = new KALedMeter( mainWin ); powerMeter->setFrameStyle( Q3Frame::Box | Q3Frame::Plain ); powerMeter->setRange( MAX_POWER_LEVEL ); powerMeter->addColorRange( 10, Qt::darkRed ); powerMeter->addColorRange( 20, QColor(160, 96, 0) ); powerMeter->addColorRange( 70, Qt::darkGreen ); powerMeter->setCount( 40 ); powerMeter->setPalette( pal ); powerMeter->setFixedSize( 200, 12 ); hbd->addWidget( powerMeter ); shipsRemain = 3; showHiscores = FALSE; actions.insert( Qt::Key_Up, Thrust ); actions.insert( Qt::Key_Left, RotateLeft ); actions.insert( Qt::Key_Right, RotateRight ); actions.insert( Qt::Key_Space, Shoot ); actions.insert( Qt::Key_Z, Teleport ); actions.insert( Qt::Key_X, Brake ); actions.insert( Qt::Key_S, Shield ); actions.insert( Qt::Key_P, Pause ); actions.insert( Qt::Key_L, Launch ); actions.insert( Qt::Key_N, NewGame ); view->showText( tr( "Press N to start playing" ), Qt::yellow ); }