src/hbcore/inputfw/hbinputstate.h
changeset 1 f7ac710697a9
parent 0 16d8024aca5e
child 6 c3690ec91ef8
equal deleted inserted replaced
0:16d8024aca5e 1:f7ac710697a9
    46 */
    46 */
    47 class HbInputState
    47 class HbInputState
    48 {
    48 {
    49 public:
    49 public:
    50     HbInputState()
    50     HbInputState()
    51         : iModeType(HbInputModeNone),
    51         : mModeType(HbInputModeNone),
    52           iTextCase(HbTextCaseNone),
    52           mTextCase(HbTextCaseNone),
    53           iKeyboardType(HbKeyboardNone),
    53           mKeyboardType(HbKeyboardNone),
    54           iLanguage(HbInputLanguage())
    54           mLanguage(HbInputLanguage())
    55     {}
    55     {}
    56 
    56 
    57     HbInputState(HbInputModeType aModeType, HbTextCase aTextCase, HbKeyboardType aKeyboardType, const HbInputLanguage &aLanguage = HbInputLanguage())
    57     HbInputState(HbInputModeType modeType, HbTextCase textCase, HbKeyboardType keyboardType, const HbInputLanguage &language = HbInputLanguage())
    58         : iModeType(aModeType),
    58         : mModeType(modeType),
    59           iTextCase(aTextCase),
    59           mTextCase(textCase),
    60           iKeyboardType(aKeyboardType),
    60           mKeyboardType(keyboardType),
    61           iLanguage(aLanguage)
    61           mLanguage(language)
    62     {}
    62     {}
    63 
    63 
    64     void operator=(const HbInputState& aState) {
    64     void operator=(const HbInputState& other) {
    65         iModeType = aState.iModeType;
    65         mModeType = other.mModeType;
    66         iTextCase = aState.iTextCase; 
    66         mTextCase = other.mTextCase;
    67         iKeyboardType = aState.iKeyboardType;
    67         mKeyboardType = other.mKeyboardType;
    68         iLanguage = aState.iLanguage;
    68         mLanguage = other.mLanguage;
    69     }
    69     }
    70 
    70 
    71     bool operator==(const HbInputState& aState) {
    71     bool operator==(const HbInputState& other) {
    72         if (iModeType == aState.iModeType
    72         if (mModeType == other.mModeType
    73             && iTextCase == aState.iTextCase
    73             && mTextCase == other.mTextCase
    74             && iKeyboardType == aState.iKeyboardType
    74             && mKeyboardType == other.mKeyboardType
    75             && iLanguage == aState.iLanguage) {
    75             && mLanguage == other.mLanguage) {
    76                 return true;
    76                 return true;
    77         }
    77         }
    78         return false;
    78         return false;
    79     }
    79     }
    80 
    80 
    81     /*!
    81     /*!
    82     This is same as compare operator except for the language value. If either one of the
    82     This is same as compare operator except for the language value. If either one of the
    83     states being compared has undefined language value, it will match to any language.
    83     states being compared has undefined language value, it will match to any language.
    84     If both language values are defined, then they are compared directly.
    84     If both language values are defined, then they are compared directly.
    85     */
    85     */
    86     bool isMatch(const HbInputState& aState) {
    86     bool isMatch(const HbInputState& other) {
    87         if (iModeType == aState.iModeType
    87         if (mModeType == other.mModeType
    88             && iTextCase == aState.iTextCase
    88             && mTextCase == other.mTextCase
    89             && iKeyboardType == aState.iKeyboardType
    89             && mKeyboardType == other.mKeyboardType
    90             && (iLanguage == aState.iLanguage ||
    90             && (mLanguage == other.mLanguage ||
    91                 iLanguage.undefined() ||           // Undefined matches to anything.
    91                 mLanguage.undefined() ||           // Undefined matches to anything.
    92         aState.iLanguage.undefined())) {
    92         other.mLanguage.undefined())) {
    93                 return true;
    93                 return true;
    94         }
    94         }
    95     return false;
    95         return false;
    96     }
    96     }
    97 
    97 
    98     bool operator!=(const HbInputState& aState) {
    98     bool operator!=(const HbInputState& other) {
    99         if (iModeType != aState.iModeType
    99         if (mModeType != other.mModeType
   100             || iTextCase != aState.iTextCase
   100             || mTextCase != other.mTextCase
   101             || iKeyboardType != aState.iKeyboardType
   101             || mKeyboardType != other.mKeyboardType
   102             || iLanguage != aState.iLanguage) {
   102             || mLanguage != other.mLanguage) {
   103                 return true;
   103                 return true;
   104         }
   104         }
   105         return false;
   105         return false;
   106     }
   106     }
   107 
   107 
   108     /*!
   108     /*!
   109     Returns input mode.
   109     Returns input mode.
   110     */
   110     */
   111     HbInputModeType inputMode() const { return iModeType; }
   111     HbInputModeType inputMode() const { return mModeType; }
   112 
   112 
   113     /*!
   113     /*!
   114     Sets input mode.
   114     Sets input mode.
   115     */
   115     */
   116     void setInputMode(HbInputModeType newMode) { iModeType = newMode; }
   116     void setInputMode(HbInputModeType newMode) { mModeType = newMode; }
   117 
   117 
   118     /*!
   118     /*!
   119     Returns text case.
   119     Returns text case.
   120     */
   120     */
   121     HbTextCase textCase() const { return iTextCase; }
   121     HbTextCase textCase() const { return mTextCase; }
   122 
   122 
   123     /*!
   123     /*!
   124     Sets text case.
   124     Sets text case.
   125     */
   125     */
   126     void setTextCase(HbTextCase newCase) { iTextCase = newCase; }
   126     void setTextCase(HbTextCase newCase) { mTextCase = newCase; }
   127 
   127 
   128     /*!
   128     /*!
   129     Returns keyboard type.
   129     Returns keyboard type.
   130     */
   130     */
   131     HbKeyboardType keyboard() const { return iKeyboardType; }
   131     HbKeyboardType keyboard() const { return mKeyboardType; }
   132 
   132 
   133     /*!
   133     /*!
   134     Sets keyboard type.
   134     Sets keyboard type.
   135     */
   135     */
   136     void setKeyboard(HbKeyboardType newKeyboard) { iKeyboardType = newKeyboard; } 
   136     void setKeyboard(HbKeyboardType newKeyboard) { mKeyboardType = newKeyboard; }
   137 
   137 
   138     /*!
   138     /*!
   139     Returns language.
   139     Returns language.
   140     */
   140     */
   141     HbInputLanguage language() const { return HbInputLanguage(iLanguage); }
   141     HbInputLanguage language() const { return HbInputLanguage(mLanguage); }
   142 
   142 
   143     /*!
   143     /*!
   144     Sets language. 
   144     Sets language. 
   145     */
   145     */
   146     void setLanguage(const HbInputLanguage &newLanguage) { iLanguage = newLanguage; }
   146     void setLanguage(const HbInputLanguage &newLanguage) { mLanguage = newLanguage; }
   147 
   147 
   148 private:
   148 private:
   149     HbInputModeType iModeType;
   149     HbInputModeType mModeType;
   150     HbTextCase iTextCase;
   150     HbTextCase mTextCase;
   151     HbKeyboardType iKeyboardType;
   151     HbKeyboardType mKeyboardType;
   152     HbInputLanguage iLanguage;
   152     HbInputLanguage mLanguage;
   153 };
   153 };
   154 
   154 
   155 #endif // HB_INPUT_STATE_H
   155 #endif // HB_INPUT_STATE_H
   156 
   156 
   157 // End of file
   157 // End of file