qtinternetradio/ui/inc/irbaseview.h
changeset 5 0930554dc389
parent 3 ee64f059b8e1
child 15 065198191975
equal deleted inserted replaced
3:ee64f059b8e1 5:0930554dc389
    15 *
    15 *
    16 */
    16 */
    17 #ifndef IRBASEVIEW_H
    17 #ifndef IRBASEVIEW_H
    18 #define IRBASEVIEW_H
    18 #define IRBASEVIEW_H
    19 
    19 
       
    20 #include <QFlags>
    20 #include <hbview.h>
    21 #include <hbview.h>
    21 #include <hbmessagebox.h>
    22 #include <hbmessagebox.h>
    22 
    23 
    23 #include "irdocumentloader.h"
    24 #include "irdocumentloader.h"
    24 #include "irviewdefinitions.h"
    25 #include "irviewdefinitions.h"
    30 class IRQIsdsClient;
    31 class IRQIsdsClient;
    31 class IRQNetworkController;
    32 class IRQNetworkController;
    32 class IRQFavoritesDB;
    33 class IRQFavoritesDB;
    33 class IRQSettings;
    34 class IRQSettings;
    34 
    35 
    35 enum TViewFlag
       
    36 {
       
    37     EViewFlag_None = 0,
       
    38     EViewFlag_UnStackable = 0x01,
       
    39     EViewFlag_ClearStackWhenActivate = 0x02
       
    40 };
       
    41 
       
    42 class IRBaseView : public HbView
    36 class IRBaseView : public HbView
    43 {
    37 {
    44 public:
    38 public:
    45     TIRViewId id() const;
    39     TIRViewId id() const;
    46     //use a enum to instead in future
    40     //use a enum to instead in future
    47     virtual TIRHandleResult handleSystemEvent(int aEvent);
    41     virtual TIRHandleResult handleSystemEvent(int aEvent);
    48     virtual TIRHandleResult handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason);
    42     virtual TIRHandleResult handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason);
    49     virtual void launchAction();
    43     virtual void launchAction();
    50     virtual void updateView();
    44     virtual void updateView();
    51     
    45     
    52     void setFlag(int aFlag);
    46     enum TViewFlag
    53     int flag() const;
    47     {
       
    48         EViewFlag_UnStackable = 0x01,
       
    49         EViewFlag_ClearStackWhenActivate = 0x02,
       
    50         EViewFlag_StickyViewEnabled = 0x04,
       
    51     };
       
    52     Q_DECLARE_FLAGS(TViewFlags, TViewFlag)
       
    53     
       
    54     void setFlag(TViewFlags aFlag);
       
    55     void clearFlag(TViewFlag aFlag);
       
    56     bool testFlag(TViewFlag aFlag) const;
    54     
    57     
    55     void setUseNetworkReason(TIRUseNetworkReason aReason);
    58     void setUseNetworkReason(TIRUseNetworkReason aReason);
    56         
    59         
    57     TIRUseNetworkReason getUseNetworkReason() const;
    60     TIRUseNetworkReason getUseNetworkReason() const;
    58         
    61         
    78     IRQNetworkController *iNetworkController;
    81     IRQNetworkController *iNetworkController;
    79     IRQFavoritesDB       *iFavorites;
    82     IRQFavoritesDB       *iFavorites;
    80     IRQSettings          *iSettings;
    83     IRQSettings          *iSettings;
    81     IRDocumentLoader iLoader;
    84     IRDocumentLoader iLoader;
    82     
    85     
    83 private:
    86 private:    
       
    87     TViewFlags     iFlags;
    84     TIRViewId      iViewId;
    88     TIRViewId      iViewId;
    85     int            iFlag;
       
    86     TIRUseNetworkReason iUseNetworkReason;
    89     TIRUseNetworkReason iUseNetworkReason;
    87     bool iInitCompleted;
    90     bool iInitCompleted;
    88 };
    91 };
    89 
    92 
       
    93 Q_DECLARE_OPERATORS_FOR_FLAGS(IRBaseView::TViewFlags)
       
    94 
    90 #endif
    95 #endif