chxavplaylistnavicontrol.h

来自「symbian 下的helix player源代码」· C头文件 代码 · 共 74 行

H
74
字号

/*============================================================================*
 *
 * (c) 1995-2002 RealNetworks, Inc. Patents pending. All rights reserved.
 *
 *============================================================================*/


#if !defined(CHXAVPLAYLISTNAVICONTROL_INCLUDED__)
#define CHXAVPLAYLISTNAVICONTROL_INCLUDED__

#include "chxavrefptr.h"
#include "chxavtextcontrol.h"
#include "chxavplayer.h"
#include "comptr.h"

// class CHXAvPlaylistNaviControl
class CHXAvPlaylistNaviControl
: public CCoeControl
, public IHXSymPlayerStateObserver
{
public:
// ctor and dtor
    CHXAvPlaylistNaviControl();
    virtual ~CHXAvPlaylistNaviControl();

    static CHXAvPlaylistNaviControl*  NewL(CHXAvPlayer* pPlayer, const CCoeControl& parent);
    void ConstructL(CHXAvPlayer* pPlayer, const CCoeControl& parent);

    void SetRefreshCommandL(const CHXAvCommand& cmd);

    // IHXSymPlayerStateObserver
    void OnAdvancePlaylist();

    void UpdatePlaylistTextL();

protected:
    virtual void Draw(const TRect& rect) const;
    virtual TInt CountComponentControls() const;
    virtual CCoeControl* ComponentControl(TInt aIndex) const;

    
    void ShowPlaylistText(bool bShow);
    void OnHidePlaylistTextTimer();

private:
// disallow assignment and copy
    CHXAvPlaylistNaviControl(const CHXAvPlaylistNaviControl& rhs);
    CHXAvPlaylistNaviControl& operator=(const CHXAvPlaylistNaviControl& rhs);

public:
// methods

private:
// implementation


private:
// data
    CHXAvCommandPtr	        m_spRefreshCmd;
    refptr<CHXAvTextControl>    m_spPlaylistText;
    TRect                       m_rcParent;
    comptr<CHXAvPlayer>         m_spPlayer;
};

inline
void CHXAvPlaylistNaviControl::SetRefreshCommandL(const CHXAvCommand& cmd)
{
    m_spRefreshCmd = cmd.CloneL();
}

#endif // CHXAVPLAYLISTNAVICONTROL_INCLUDED__

⌨️ 快捷键说明

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