actionclasses.h
来自「Amarok是一款在LINUX或其他类UNIX操作系统中运行的音频播放器软件。 」· C头文件 代码 · 共 216 行
H
216 行
// Maintainer: Max Howell <max.howell@methylblue.com>, (C) 2004// Copyright: See COPYING file that comes with this distribution//// Description: a popupmenu to control various features of Amarok// also provides Amarok's helpMenu#ifndef AMAROK_ACTIONCLASSES_H#define AMAROK_ACTIONCLASSES_H#include "engineobserver.h"#include "prettypopupmenu.h"#include "sliderwidget.h"#include <kaction.h>#include <kactionclasses.h>#include <qguardedptr.h>class KActionCollection;class KHelpMenu;namespace Amarok{ class Menu : public PrettyPopupMenu { Q_OBJECT public: static Menu *instance(); static KPopupMenu *helpMenu( QWidget *parent = 0 ); enum MenuIds { ID_CONF_DECODER, ID_SHOW_VIS_SELECTOR, ID_SHOW_COVER_MANAGER, ID_CONFIGURE_EQUALIZER, ID_RESCAN_COLLECTION }; public slots: void slotActivated( int index ); private slots: void slotAboutToShow(); private: Menu(); static KHelpMenu *s_helpMenu; }; class MenuAction : public KAction { public: MenuAction( KActionCollection* ); virtual int plug( QWidget*, int index = -1 ); }; class PlayPauseAction : public KToggleAction, public EngineObserver { public: PlayPauseAction( KActionCollection* ); virtual void engineStateChanged( Engine::State, Engine::State = Engine::Empty ); }; class AnalyzerContainer : public QWidget { public: AnalyzerContainer( QWidget *parent ); protected: virtual void resizeEvent( QResizeEvent* ); virtual void mousePressEvent( QMouseEvent* ); virtual void contextMenuEvent( QContextMenuEvent* ); private: void changeAnalyzer(); QWidget *m_child; }; class AnalyzerAction : public KAction { public: AnalyzerAction( KActionCollection* ); virtual int plug( QWidget *, int index = -1 ); }; class VolumeAction : public KAction, public EngineObserver { public: VolumeAction( KActionCollection* ); virtual int plug( QWidget *, int index = -1 ); private: void engineVolumeChanged( int value ); QGuardedPtr<Amarok::VolumeSlider> m_slider; }; class ToggleAction : public KToggleAction { public: ToggleAction( const QString &text, void ( *f ) ( bool ), KActionCollection* const ac, const char *name ); virtual void setChecked( bool b ); virtual void setEnabled( bool b ); private: void ( *m_function ) ( bool ); }; class SelectAction : public KSelectAction { public: SelectAction( const QString &text, void ( *f ) ( int ), KActionCollection* const ac, const char *name ); virtual void setCurrentItem( int n ); virtual void setEnabled( bool b ); virtual void setIcons( QStringList icons ); virtual QString currentText() const; QStringList icons() const; QString currentIcon() const; private: void ( *m_function ) ( int ); QStringList m_icons; }; class RandomAction : public SelectAction { public: RandomAction( KActionCollection *ac ); virtual void setCurrentItem( int n ); }; class FavorAction : public SelectAction { public: FavorAction( KActionCollection *ac ); }; class RepeatAction : public SelectAction { public: RepeatAction( KActionCollection *ac ); }; class BurnMenu : public KPopupMenu { Q_OBJECT public: enum MenuIds { CURRENT_PLAYLIST, SELECTED_TRACKS }; static KPopupMenu *instance(); private slots: void slotAboutToShow(); void slotActivated( int index ); private: BurnMenu(); }; class BurnMenuAction : public KAction { public: BurnMenuAction( KActionCollection* ); virtual int plug( QWidget*, int index = -1 ); }; class StopMenu : public KPopupMenu { Q_OBJECT public: enum MenuIds { NOW, AFTER_TRACK, AFTER_QUEUE }; static KPopupMenu *instance(); private slots: void slotAboutToShow(); void slotActivated( int index ); private: StopMenu(); }; class StopAction : public KAction { public: StopAction( KActionCollection* ); virtual int plug( QWidget*, int index = -1 ); };} /* namespace Amarok */#endif /* AMAROK_ACTIONCLASSES_H */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?