What's missing for 4.2?
Anton Lundin
glance at acc.umu.se
Tue Jun 10 16:03:11 PDT 2014
On 10 June, 2014 - Dirk Hohndel wrote:
> On Tue, Jun 10, 2014 at 11:43:37PM +0200, Anton Lundin wrote:
> > Open a dive without Location name or coordinates, ex. dives/test0.xml
> >
> > Add a location name, hit save. Try to add a coordinate via clicking in
> > the marble widget, nothing happens.
>
> Hmm, can you try this patch? It's ugly as #*$&% but should make sure that
> we get double clicks delivered even if marble "doesn't feel like it".
>
> diff --git a/qt-ui/globe.cpp b/qt-ui/globe.cpp
> index 8d234194ecb5..440d5a0dd12d 100644
> --- a/qt-ui/globe.cpp
> +++ b/qt-ui/globe.cpp
> @@ -88,17 +88,23 @@ GlobeGPS::GlobeGPS(QWidget *parent) : MarbleWidget(parent),
>
> bool GlobeGPS::eventFilter(QObject *obj, QEvent *ev)
> {
> + enum QEvent::Type type = ev->type();
> + if (type == QEvent::MouseButtonDblClick)
> + doubleClick = true;
> + else if (type == QEvent::MouseButtonPress)
> + doubleClick = false;
> +
> // This disables Zooming when a double click occours on the scene.
> - if (ev->type() == QEvent::MouseButtonDblClick && !editingDiveLocation)
> + if (type == QEvent::MouseButtonDblClick && !editingDiveLocation)
> return true;
> // This disables the Marble's Context Menu
> // we need to move this to our 'contextMenuEvent'
> // if we plan to do a different one in the future.
> - if (ev->type() == QEvent::ContextMenu) {
> + if (type == QEvent::ContextMenu) {
> contextMenuEvent(static_cast<QContextMenuEvent *>(ev));
> return true;
> }
> - if (ev->type() == QEvent::MouseButtonPress) {
> + if (type == QEvent::MouseButtonPress) {
> QMouseEvent *e = static_cast<QMouseEvent *>(ev);
> if (e->button() == Qt::RightButton)
> return true;
> @@ -116,6 +122,12 @@ void GlobeGPS::contextMenuEvent(QContextMenuEvent *ev)
>
> void GlobeGPS::mouseClicked(qreal lon, qreal lat, GeoDataCoordinates::Unit unit)
> {
> + if (doubleClick) {
> + // strangely sometimes we don't get the changeDiveGeoPosition callback
> + // and end up here instead
> + changeDiveGeoPosition(lon, lat, unit);
> + return;
> + }
> // don't mess with the selection while the user is editing a dive
> if (MainWindow::instance()->information()->isEditing() || messageWidget->isVisible())
> return;
> diff --git a/qt-ui/globe.h b/qt-ui/globe.h
> index c40eefc466ff..bb8ace47b49e 100644
> --- a/qt-ui/globe.h
> +++ b/qt-ui/globe.h
> @@ -34,6 +34,7 @@ private:
> int currentZoomLevel;
> bool needResetZoom;
> bool editingDiveLocation;
> + bool doubleClick;
>
> public
> slots:
>
Works, but i get the dive location dialog popping up too, as if i
clicked the location.
> > > > > * All gases doesn't show up from my OSTC3 downloads. I should debug this
> > > > > further, but i got the bottom gas downloaded, the 50%, but not the O2
> > > >
> > > > That's strange - I've never had the problem of a gas NOT showing up.
> > > > Usually too many gases show up. Are the gas switches there? Did you ever
> > > > switch to O2? Or is this as simple as the "unused cylinder" flag in
> > > > preferences?
> > >
> > > Haven't seen an answer to my question.
> >
> > Found the bug and send a patch.
>
> Yeah, that was a STUPID one...
> Show you that I've never done deco with fO₂ > 90%
>
Pure O2, its good for you =)
> > > > > Maybe post 4.2
> > > > > * Start logging a dive before you download the profiles. I like to write
> > > > > down pressures and notes as soon as possible, while i remembered them.
> > > > > It would be great if i could do that without adding a profile and just
> > > > > get the profiles later when i have downloaded the dives.
> > > >
> > > > This should work today. If you start with about the right start time (and
> > > > don't get me started about Qt's terrible time entry widget) it should
> > > > simply merge things. Maybe I'm missing, what you are suggesting.
> > >
> > > Ditto.
> > >
> >
> > Awesome! I didn't even realize that. Don't i get a manually added dive
> > profile that i can't delete via the ui then? Yea, i can hand-edit the
> > xml file but thats kinda...
>
> Yes, you get an extra dive computer, but I added the feature that you can
> make the other one the first dive computer from the ui (right click on the
> dive computer name in the profile)
>
> BTW: that needs to be added to the manual, I believe...
>
Maybe a delete this divecomputer option there too?
> > > As discussed, part of this was implemented.
> > > The part that's missing seems a tiny bit too user specific.
> > > Breaking this down as "volume of air" + "volume of O₂" + "volume of He" is
> > > of course possible, but I'm not sure a lot of people would have any use
> > > for that data.
> > > I could see maybe adding this as a tooltip... still not sure.
> > >
> >
> > I would actually like such a feature. We usually by 50L bottles of He
> > and O2 and mix our gases ourself and when its time to split the bill its
> > kinda good to verify that what got written into the gas fill log is
> > somewhat close to what i actually logged i used.
> >
> > I'm currently trying to produce a poc of how this could look.
>
> I'd love to see that. I'll consider it.
>
Sent a Poc in another email.
//Anton
--
Anton Lundin +46702-161604
More information about the subsurface
mailing list