mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-30 22:20:21 +00:00
Random fixes and improvements
Whitespace fixes, constructor fixes, new slot (still unused) Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
fdec250723
commit
eb2c78e953
2 changed files with 25 additions and 18 deletions
|
@ -410,12 +410,10 @@ bool DiveLocationModel::setData(const QModelIndex& index, const QVariant& value,
|
|||
return true;
|
||||
}
|
||||
|
||||
DiveLocationLineEdit::DiveLocationLineEdit(QWidget *parent)
|
||||
DiveLocationLineEdit::DiveLocationLineEdit(QWidget *parent) : QLineEdit(parent),
|
||||
proxy(new DiveLocationFilterProxyModel()), model(new DiveLocationModel()), view(new DiveLocationListView())
|
||||
{
|
||||
location_line_edit = this;
|
||||
proxy = new DiveLocationFilterProxyModel();
|
||||
model = new DiveLocationModel();
|
||||
view = new DiveLocationListView();
|
||||
|
||||
proxy->setSourceModel(model);
|
||||
proxy->setFilterKeyColumn(DiveLocationModel::NAME);
|
||||
|
@ -429,19 +427,24 @@ DiveLocationLineEdit::DiveLocationLineEdit(QWidget *parent)
|
|||
view->setSelectionMode(QAbstractItemView::SingleSelection);
|
||||
view->setParent(0, Qt::Popup);
|
||||
view->installEventFilter(this);
|
||||
view->setFocusProxy(location_line_edit);
|
||||
view->setFocusPolicy(Qt::NoFocus);
|
||||
view->setFocusProxy(this);
|
||||
|
||||
connect(this, &QLineEdit::textEdited, this, &DiveLocationLineEdit::setTemporaryDiveSiteName);
|
||||
connect(this, &QLineEdit::editingFinished, this, &DiveLocationLineEdit::setDiveSiteName);
|
||||
connect(view, &QAbstractItemView::activated, this, &DiveLocationLineEdit::itemActivated);
|
||||
}
|
||||
|
||||
void DiveLocationLineEdit::setDiveSiteName()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
bool DiveLocationLineEdit::eventFilter(QObject *o, QEvent *e)
|
||||
{
|
||||
if(e->type() == QEvent::KeyPress) {
|
||||
QKeyEvent *keyEv = (QKeyEvent*) e;
|
||||
|
||||
qDebug() << view->focusProxy()->objectName();
|
||||
|
||||
if (keyEv->key() == Qt::Key_Escape) {
|
||||
view->hide();
|
||||
return true;
|
||||
|
@ -451,15 +454,12 @@ bool DiveLocationLineEdit::eventFilter(QObject *o, QEvent *e)
|
|||
view->hide();
|
||||
return false;
|
||||
}
|
||||
|
||||
event(e);
|
||||
}
|
||||
|
||||
if(e->type() == QEvent::MouseButtonPress ) {
|
||||
if (!view->underMouse()) {
|
||||
view->hide();
|
||||
return true;
|
||||
}
|
||||
} else if(e->type() == QEvent::MouseButtonPress ) {
|
||||
if (!view->underMouse()) {
|
||||
view->hide();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
|
@ -507,7 +507,6 @@ void DiveLocationLineEdit::setTemporaryDiveSiteName(const QString& s)
|
|||
|
||||
void DiveLocationLineEdit::keyPressEvent(QKeyEvent *ev)
|
||||
{
|
||||
qDebug() << "Pressing key" << ev->key();
|
||||
QLineEdit::keyPressEvent(ev);
|
||||
if(ev->key() != Qt::Key_Left &&
|
||||
ev->key() != Qt::Key_Right &&
|
||||
|
@ -554,8 +553,8 @@ void DiveLocationLineEdit::showPopup()
|
|||
view->setGeometry(pos.x(), pos.y(), w, h);
|
||||
|
||||
if (!view->isVisible()) {
|
||||
view->show();
|
||||
view->setFocus();
|
||||
proxy->invalidate();
|
||||
view->show();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -90,11 +90,17 @@ public:
|
|||
class DiveLocationLineEdit : public QLineEdit {
|
||||
Q_OBJECT
|
||||
public:
|
||||
enum DiveSiteType { NO_DIVE_SITE, NEW_DIVE_SITE, EXISTING_DIVE_SITE };
|
||||
DiveLocationLineEdit(QWidget *parent =0 );
|
||||
void refreshDiveSiteCache();
|
||||
void setTemporaryDiveSiteName(const QString& s);
|
||||
bool eventFilter(QObject*, QEvent*);
|
||||
void itemActivated(const QModelIndex& index);
|
||||
void setDiveSiteName();
|
||||
|
||||
DiveSiteType currDiveSiteType() const;
|
||||
uint32_t currDiveSiteUuid() const;
|
||||
|
||||
protected:
|
||||
void keyPressEvent(QKeyEvent *ev);
|
||||
void showPopup();
|
||||
|
@ -102,6 +108,8 @@ private:
|
|||
DiveLocationFilterProxyModel *proxy;
|
||||
DiveLocationModel *model;
|
||||
DiveLocationListView *view;
|
||||
DiveSiteType currType;
|
||||
uint32_t currUuid;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue