⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 controlwidgetbase.h

📁 Trolltech公司发布的图形界面操作系统。可在qt-embedded-2.3.7平台上编译为嵌入式图形界面操作系统。
💻 H
字号:
/************************************************************************ Copyright (C) 2000-2002 Trolltech AS.  All rights reserved.**** This file is part of the Qtopia Environment.**** This file may be distributed and/or modified under the terms of the** GNU General Public License version 2 as published by the Free Software** Foundation and appearing in the file LICENSE.GPL included in the** packaging of this file.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.**** See http://www.trolltech.com/gpl/ for GPL licensing information.**** Contact info@trolltech.com if any conditions of this licensing are** not clear to you.************************************************************************/#ifndef CONTROL_WIDGET_BASE_H#define CONTROL_WIDGET_BASE_H#include <qwidget.h>#include <qpainter.h>#include <qdrawutil.h>#include <qpixmap.h>#include <qbitmap.h>#include <qimage.h>#include <qstring.h>#include <qslider.h>#include <qlineedit.h>#include <qframe.h>#include "mediaplayerstate.h"#include "action.h"enum MediaButtonType {    PlayButton,    StopButton,    PauseButton,    PreviousButton,    NextButton,    ForwardButton,    BackwardButton,    VolumeUpButton,    VolumeDownButton,    LoopButton,    PlayListButton,    FullscreenButton,    MaxButtonTypes};struct MediaButton {    bool isToggle, isHeld, isDown, hasImage;    const char *skinImage;    MediaButtonType buttonType;};/* *  Abstract base class used by AudioWidget and VideoWidget classes */class ControlWidgetBase : public QWidget {    Q_OBJECTpublic:    ControlWidgetBase( QWidget* parent, const QString& skin, const QString& audio, const char* name );    ~ControlWidgetBase();    // Format seconds as 0:00    static QString toTimeString( long );public slots:    void sliderPressed();    void sliderReleased();    void setPosition( long );    void setLength( long );    void setPaused( bool b );    void setSeekable( bool b );    void setLooping( bool b );    void setPlaying( bool b );    void setFullscreen( bool b );    void setSkin( const QString& skin );    void loadImages();    void scaleImages();signals:    void sliderMoved( long );    void moreClicked();    void lessClicked();    void moreReleased();    void lessReleased();    void forwardClicked();    void backwardClicked();    void forwardReleased();    void backwardReleased();protected:    virtual void virtualResize() = 0; // Make the class abstract    virtual void virtualPaint( QPaintEvent *event ) = 0;    virtual void virtualUpdateSlider() = 0;    virtual void paintButton( QPainter& p, int i );    QString timeAsString( long );    void mouseMoveEvent( QMouseEvent *event );    void mousePressEvent( QMouseEvent *event );    void mouseReleaseEvent( QMouseEvent *event );    void closeEvent( QCloseEvent *event );    void resizeEvent( QResizeEvent *event );    void paintEvent( QPaintEvent *event );    void resetButtons();    void updateSlider();    void setButtonData( MediaButton *mediaButtons, int count );    int resizeObjects( int w, int h, int scaleW, int scaleH, int cornerWidgetWidth = 0 );    void setToggleButton( MediaButtonType, bool );    void toggleButton( int );    void paintAllButtons( QPainter& p );    void stopPlaying();    void getButtonPix( bool down );    void getButtonMask( int i );    int skinW, skinH;    int skinScaleW, skinScaleH;    int actualScaleW, actualScaleH;    QString skinType;    QString skinFile;    QString skin;    MediaButton *buttons;    int buttonCount;    QImage  imgButtonMask;    // Unscaled    QImage tmpButtonImg[2];    bool tmpButtonImgLoaded[2];    QImage tmpButtonMask[MaxButtonTypes];    bool tmpButtonMaskLoaded[MaxButtonTypes];    // Scaled    QPixmap buttonPix[2];    bool buttonPixCreated[2];    QBitmap buttonMask[MaxButtonTypes];    bool buttonMaskCreated[MaxButtonTypes];    QImage bgImg;    bool bgImgLoaded;    QPixmap bgPix;    bool bgNeedsScaling;    bool bgPixCreated;    bool imagesLoaded;    bool imagesScaled;    bool hadFirstResize;    bool resized;    bool canPaint;    MySlider slider;    QLineEdit time;    int xoff, yoff;    bool sliderBeingMoved;};#endif // CONTROL_WIDGET_BASE_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -