using QStringList instead og QVector< QString > - although QList is not

the better choice
This commit is contained in:
Uwe Rathmann 2018-05-01 11:52:29 +02:00
parent 456bf48dec
commit c7ae7baae2
6 changed files with 15 additions and 17 deletions

View File

@ -100,9 +100,9 @@ QskTextPredictor* QskInputEngine::predictor() const
return m_data->predictor; return m_data->predictor;
} }
QVector< QString > QskInputEngine::prediction() const QStringList QskInputEngine::prediction() const
{ {
QVector< QString > candidates; QStringList candidates;
if ( const auto predictor = m_data->predictor ) if ( const auto predictor = m_data->predictor )
{ {

View File

@ -12,6 +12,7 @@
class QskTextPredictor; class QskTextPredictor;
class QQuickItem; class QQuickItem;
class QStringList;
class QSK_EXPORT QskInputEngine : public QObject class QSK_EXPORT QskInputEngine : public QObject
{ {
@ -39,7 +40,7 @@ public:
Qt::InputMethodHints, int spaceLeft = -1 ); Qt::InputMethodHints, int spaceLeft = -1 );
QString predictiveText( int ) const; QString predictiveText( int ) const;
QVector< QString > prediction() const; QStringList prediction() const;
void reset(); void reset();

View File

@ -219,7 +219,7 @@ void QskInputPanel::setEngine( QskInputEngine* engine )
if ( engine ) if ( engine )
{ {
connect( engine, &QskInputEngine::predictionChanged, connect( engine, &QskInputEngine::predictionChanged,
this, &QskInputPanel::updatePredictionBar ); this, &QskInputPanel::updatePrediction );
} }
m_data->predictionBar->setVisible( m_data->predictionBar->setVisible(
@ -265,7 +265,7 @@ QQuickItem* QskInputPanel::attachedInputItem() const
return m_data->inputItem; return m_data->inputItem;
} }
void QskInputPanel::updatePredictionBar() void QskInputPanel::updatePrediction()
{ {
m_data->predictionBar->setPrediction( m_data->predictionBar->setPrediction(
m_data->engine->prediction() ); m_data->engine->prediction() );
@ -328,15 +328,13 @@ void QskInputPanel::setInputProxy( bool on )
void QskInputPanel::commitPredictiveText( int index ) void QskInputPanel::commitPredictiveText( int index )
{ {
m_data->predictionBar->setPrediction( QVector< QString >() ); m_data->predictionBar->setPrediction( QStringList() );
if ( m_data->engine ) if ( m_data->engine )
{ {
const QString text = m_data->engine->predictiveText( index ); const QString text = m_data->engine->predictiveText( index );
m_data->engine->reset(); m_data->engine->reset();
m_data->predictionBar->setPrediction( QVector< QString >() );
qskSendText( m_data->receiverItem(), text, true ); qskSendText( m_data->receiverItem(), text, true );
} }
} }

View File

@ -14,8 +14,6 @@ class QskInputEngine;
class QString; class QString;
class QLocale; class QLocale;
template class QVector< QString >;
class QSK_EXPORT QskInputPanel : public QskBox class QSK_EXPORT QskInputPanel : public QskBox
{ {
Q_OBJECT Q_OBJECT
@ -66,8 +64,9 @@ protected:
virtual void processKey( int key, virtual void processKey( int key,
Qt::InputMethodHints, int spaceLeft ); Qt::InputMethodHints, int spaceLeft );
virtual void updatePrediction();
private: private:
void updatePredictionBar();
void commitKey( int key ); void commitKey( int key );
void commitPredictiveText( int ); void commitPredictiveText( int );

View File

@ -9,7 +9,7 @@
#include "QskTextOptions.h" #include "QskTextOptions.h"
#include <QFontMetricsF> #include <QFontMetricsF>
#include <QVector> #include <QStringList>
QSK_SUBCONTROL( QskInputPredictionBar, Panel ) QSK_SUBCONTROL( QskInputPredictionBar, Panel )
QSK_SUBCONTROL( QskInputPredictionBar, ButtonPanel ) QSK_SUBCONTROL( QskInputPredictionBar, ButtonPanel )
@ -60,7 +60,7 @@ class QskInputPredictionBar::PrivateData
{ {
public: public:
QskLinearBox* layoutBox; QskLinearBox* layoutBox;
QVector< QString > candidates; QStringList candidates;
int scrollOffset = 0; int scrollOffset = 0;
const int buttonCount = 12; const int buttonCount = 12;
@ -105,7 +105,7 @@ QskAspect::Subcontrol QskInputPredictionBar::effectiveSubcontrol(
return subControl; return subControl;
} }
void QskInputPredictionBar::setPrediction( const QVector< QString >& candidates ) void QskInputPredictionBar::setPrediction( const QStringList& candidates )
{ {
if( m_data->candidates != candidates ) if( m_data->candidates != candidates )
{ {
@ -114,7 +114,7 @@ void QskInputPredictionBar::setPrediction( const QVector< QString >& candidates
} }
} }
QVector< QString > QskInputPredictionBar::candidates() const QStringList QskInputPredictionBar::candidates() const
{ {
return m_data->candidates; return m_data->candidates;
} }

View File

@ -23,13 +23,13 @@ public:
virtual QskAspect::Subcontrol effectiveSubcontrol( virtual QskAspect::Subcontrol effectiveSubcontrol(
QskAspect::Subcontrol subControl ) const override; QskAspect::Subcontrol subControl ) const override;
QVector< QString > candidates() const; QStringList candidates() const;
Q_SIGNALS: Q_SIGNALS:
void predictiveTextSelected( int ); void predictiveTextSelected( int );
public Q_SLOTS: public Q_SLOTS:
void setPrediction( const QVector< QString >& ); void setPrediction( const QStringList& );
private: private:
void buttonClicked(); void buttonClicked();