src/gui/widgets/qlinecontrol_p.h
changeset 33 3e2da88830cd
parent 30 5dc02b23752f
equal deleted inserted replaced
30:5dc02b23752f 33:3e2da88830cd
    76 {
    76 {
    77     Q_OBJECT
    77     Q_OBJECT
    78 
    78 
    79 public:
    79 public:
    80     QLineControl(const QString &txt = QString())
    80     QLineControl(const QString &txt = QString())
    81         : m_cursor(0), m_preeditCursor(0), m_cursorWidth(0), m_layoutDirection(Qt::LeftToRight),
    81         : m_cursor(0), m_preeditCursor(0), m_cursorWidth(0), m_layoutDirection(Qt::LayoutDirectionAuto),
    82         m_hideCursor(false), m_separator(0), m_readOnly(0),
    82         m_hideCursor(false), m_separator(0), m_readOnly(0),
    83         m_dragEnabled(0), m_echoMode(0), m_textDirty(0), m_selDirty(0),
    83         m_dragEnabled(0), m_echoMode(0), m_textDirty(0), m_selDirty(0),
    84         m_validInput(1), m_blinkStatus(0), m_blinkPeriod(0), m_blinkTimer(0), m_deleteAllTimer(0),
    84         m_validInput(1), m_blinkStatus(0), m_blinkPeriod(0), m_blinkTimer(0), m_deleteAllTimer(0),
    85         m_ascent(0), m_maxLength(32767), m_lastCursorPos(-1),
    85         m_ascent(0), m_maxLength(32767), m_lastCursorPos(-1),
    86         m_tripleClickTimer(0), m_maskData(0), m_modifiedState(0), m_undoState(0),
    86         m_tripleClickTimer(0), m_maskData(0), m_modifiedState(0), m_undoState(0),
   270     bool passwordEchoEditing() const { return m_passwordEchoEditing; }
   270     bool passwordEchoEditing() const { return m_passwordEchoEditing; }
   271 
   271 
   272     QChar passwordCharacter() const { return m_passwordCharacter; }
   272     QChar passwordCharacter() const { return m_passwordCharacter; }
   273     void setPasswordCharacter(const QChar &character) { m_passwordCharacter = character; updateDisplayText(); }
   273     void setPasswordCharacter(const QChar &character) { m_passwordCharacter = character; updateDisplayText(); }
   274 
   274 
   275     Qt::LayoutDirection layoutDirection() const { return m_layoutDirection; }
   275     Qt::LayoutDirection layoutDirection() const {
       
   276         if (m_layoutDirection == Qt::LayoutDirectionAuto) {
       
   277             if (m_text.isEmpty())
       
   278                 return QApplication::keyboardInputDirection();
       
   279             return m_text.isRightToLeft() ? Qt::RightToLeft : Qt::LeftToRight;
       
   280         }
       
   281         return m_layoutDirection;
       
   282     }
   276     void setLayoutDirection(Qt::LayoutDirection direction)
   283     void setLayoutDirection(Qt::LayoutDirection direction)
   277     {
   284     {
   278         if (direction != m_layoutDirection) {
   285         if (direction != m_layoutDirection) {
   279             m_layoutDirection = direction;
   286             m_layoutDirection = direction;
   280             updateDisplayText();
   287             updateDisplayText();