jump to navigation

Subsurface Switches to Qt November 28, 2013

Posted by tumaix in planetkde-tomazcanabrava.

It’s been a long, long while since I don’t blog here, and most of my old blogposts were about Rocs, well.. not anyomore. I joined the Subsurface team about six months ago. It was a program written in Gtk mostly by Linus Torvalds and Dirk Hohndel, and they were opened to switch to Qt, why… why shouldn’t we jump ahead and help the transition to be smooth as it could? So Thiago Macieira and Myself jumped in to help, And it’s been a lot of learning from all sides.

It’s been quite a while – but we have been hard at work. We have migrated Subsurface from Gtk to Qt over the past 6 months. And given the magnitude of this change, we decided to go with a public beta (or two, or three, depending on how things go) before releasing Subsurface 4.

New in version 3.9.1 (compared to Subsurface 3.1):

I don’t even know where to begin. This is a complete rewrite of the UI. The basic concepts are the same, most of the basic features are the same, but trying to create a concise list of changes that summarizes the more than 1200 commits that have gone in since 3.1 seems a daunting task.

Maybe we’ll come up with something better in time for the final release of Subsurface 4.0. 🙂

Known issues:

  • integration with divelogs.de is still missing
  • we have reports of occasional crashes on Windows when trying to close the window by clicking on the little x in the window decoration instead of using Alt-F4, Ctrl-q, or File->Quit
  • Filter->Select Events is not implemented
  • Translations are extremely incomplete
  • Documentation has just been started

These last two points are important. Because if you have always wondered “oh I wish I could contribute, too bad I can’t program” – this is your chance. ANYONE can help us with Documentation, and almost anyone (ok, this
does require that you speak a language besides English) can help with translations. Please send us email at subsurface@hohndel.org if you would like to contribute.

You can find Windows and Mac binaries at the usual downloads location. Linux users are more likely to have to build from source. Get the source from git and follow the instructions in the INSTALL file (not from this website, those are still for the Gtk version).

A few words from Dirk:

Working with the Qt community has been a blast.
+Linus Torvalds still may not be a huge C++ fan – but even he submitted C++/Qt patches. Who would have thought.





1. Bartosz Brachaczek - November 28, 2013

I looked at some C++ commits by Linus to help myself believe. And I actually spotted a typo in one of them: 3677f4e. There is logical AND where there should be bitwise AND. This is still not fixed in master. (Leaving a comment here is quicker for me than properly submitting bug report/patch to you, and this is really trivial).

tumaix - November 28, 2013

Heh – Even gods made mistakes. 🙂

STiAT - November 29, 2013

What about “nobody writes perfect code in the first time but me” in the git talk 😀

2. Nicolás - November 28, 2013

It’s kind of amazing how you wrote a blog post of this length and didn’t say a single word of what subsurface *is*.

tumaix - November 29, 2013

True. I’ll do another blog post about that. 😉

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: