Crise

We're porting to Linux: and paying!

53 posts in this topic

Qt 4.6 uses native styles for drawing controls on each operating system such as Mac OS X or Windows.

Yeah but the difference to wxwidgets is this:

Qt doesn't have true native ports like wxWidgets does. What we mean by this is that even though Qt draws them quite realistically, Qt draws its own widgets on each platform. It's worth mentioning though that Qt comes with special styles for Mac OS X and MS Windows XP and Vista that use native APIs (Appeareance Manager on Mac OS X, UxTheme on Windows XP) for drawing standard widget primitives (e.g. scrollbars or buttons) exactly like any native application. Event handling, the resulting visual feedback and widget layout are always implemented by Qt.

That comes straight from wxwidgets wiki so it might be that the info is bit dated but I believe still valid.

Share this post


Link to post
Share on other sites

Yeah but the difference to wxwidgets is this:

...

That comes straight from wxwidgets wiki so it might be that the info is bit dated but I believe still valid.

I do not understand the reason for which you need precisely native controls on each platform... I use Qt for writing my programs that runs on Linux, Windows and Mac OS X and never had a situation where I needed a native controls on each platform.

Share this post


Link to post
Share on other sites

I do not understand the reason for which you need precisely native controls on each platform... I use Qt for writing my programs that runs on Linux, Windows and Mac OS X and never had a situation where I needed a native controls on each platform.

Here is one of the reasons: for example I want to make some Qt-based software look exactly like any other app on my GNOME distro. In order to install it I must first install lots of Qt libraries to make it just work and look like an alien on my system/ What should I do? I should find where to download one small package qgtkstyle which is not in official repo and I should waste my time to find it somewhere in the internet. So in order not to waste lots of time I'll find some app which is providing the same functions drawing all the controls natively without harmonious system of crutches and props and without dancing with the tambourine around my computer

You must have been lucky making it all work as I've seen a Qt project (not very difficult, written on Windows, using only Qt and standard C functions) which gave about 70 errors during compiling on Linux with the same version of Qt/

Share this post


Link to post
Share on other sites

Here is one of the reasons: for example I want to make some Qt-based software look exactly like any other app on my GNOME distro. In order to install it I must first install lots of Qt libraries to make it just work and look like an alien on my system/ What should I do? I should find where to download one small package qgtkstyle which is not in official repo and I should waste my time to find it somewhere in the internet. So in order not to waste lots of time I'll find some app which is providing the same functions drawing all the controls natively without harmonious system of crutches and props and without dancing with the tambourine around my computer

You must have been lucky making it all work as I've seen a Qt project (not very difficult, written on Windows, using only Qt and standard C functions) which gave about 70 errors during compiling on Linux with the same version of Qt/

First, you need qtcurve-gtk/-qt for uniform look GTK and Qt programs, second, in KDE-based distros all GTK-based programs (wxWidgets uses GTK) looks ugly without "dancing with the tambourine" (installing qtcurve), therefore your example with GNOME is wrong. In any case, I want to offer assistance with porting ApexDC++ on Linux.

Share this post


Link to post
Share on other sites

...therefore your example with GNOME is wrong. In any case, I want to offer assistance with porting ApexDC++ on Linux.

I'm liking the productiveness of this topic, let's not forget we are all wanting the same thing. We are discussing a stage that yes is extremely important, but first we must get the core compiling before we think about UI.

Now if any of you can offer that assistance, we can negotiate your role and final pay.

Share this post


Link to post
Share on other sites

License specified in source code has a higher priority than the license specified in file LICENSE. So EiskaltDC++ has no problems with licenses. Details

OK. I asked Free Software Foundation about this. I described all places (and attached all files) where something about license is said. And I got following response, so we both are partially right :(

The situation is unclear, since, as you noted, the authors say it both ways. So I think you should write the DC++ authors and ask if their intent was to release under GPLv2-only, or GPLv2-or-later.

So only Jacek Sieka can decide. However, I think he had never had feeling about any "GPLv2 or later" and he only copied the license text from GNU/GPL site. My words could be confirmed by the fact that his manually written sentence is without any "or later" and also the fact that he refused to change DC++ license to GPLv3. On the other side, if you say that source code license has higher priority then you wouldn't be able to compile DC++ with OpenSSL or WTL (because this is not allowed in source code). You can select only one license and not the one what suits you. And since Jacek Sieka told me that license is "GPLv2 with the notable exception that you may compile and link it with OpenSSL and WTL.", you can't apply "or later" to that.

Share this post


Link to post
Share on other sites

In an attempt to move this on to something a bit more relevent and away from the school yard politics.

* is there a public cvs/svn/git repositry for apex i havn't been able to find it if there is. if there is which modules/projects (sorry dont know the correct teminolagy) represnt the core.

- if not would it be possible to make a tar file which only contains the stuff that you consider core?

* correct me if im wrong but im gussing one of the first steps is to move away from vcproject files and move to make/gmake/(s)cons for both windows and linux

* has any effort been made to get the windows source building in minGW

- if not this should probably be the first step should it not?

* any modifications to the windows still needs to compile in windows and linux with no further mdifications?

- any one got recomendations on this eg #ifdef statments?

Ok so I am not a programmer, i can hack code and script. I genreally use vi which should give you an impretion of the size of things im use to working on. dont waste your breath on flaming me. if i have made a statment that is incorrect then correct me and move on. im big enough and stupid enough to listen to corrections.

Other than that lets get thes questions answered because at this stage i think they are more important than what gui should be used.

Share this post


Link to post
Share on other sites

Please refer to our new jobs page regarding the Linux port.

  • Get current StrongDC core to compile under mingw (to resolve compiler related issues)
  • Fix any win32 specific parts in StrongDC core to compile under linux, to list a few
    1. Certain ulitity and other functions
    2. Possibly DHT and Webserver related code

[*]Rewrite UI with wxwidgets (at least code::blocks has wxwidgets related tools that can be used, might help)

Any questions/feedback can be discussed below please.

Hello,

Sounds like a good initiative. I have worked with the DC server team of the Campus Party Valencia and it is really necessary to have a client as complete as the ApexDC++ for Linux and Mac.

Today, I think it's important to have a cross-platform version instead of several separate projects.

I have experience with wxWidgets, especially in cross-platform applications.

Still you offer this work?

Share this post


Link to post
Share on other sites

Hi albireo,

Yes we are still hiring. How much wxwidgets experience have you got? :)

Share this post


Link to post
Share on other sites

We can debate this about wxWidgets and Qt but in the end I don't think wxWigets has anything better to offer that Qt doesn't. Important softwareed hardy bekleidung projects already use Qt for cross-platform one of them being Google Earth. And I don't think Google Earh is slow. Yes , Qt does indeed do its own drawing but there are various backends it can use to do that including one using OpenGL and improvements are always considered to make it faster.

Anyway my experience is with Qt and that's what I want to learn. I've already used it in my project, found it to be appropriate for my needs and it's what I'd use for ApexDC. I also like the way Qt looks and the fact that its appearance can be easily changed.

Actually the webserver code has some win32 dependant bits, see WebServerSocket::accept and the use of ServerSocket::incoming (also it has some unused members like a HWND that is never used anywhere that are win32 specific).

Share this post


Link to post
Share on other sites

It looks native not only on Windows but also on GNOME, Windows Mobile, MacOS (not sure about this, but as it has wxMac port I think it should have native look).

Also it has an interesting widget wxAuiNotebook that can help Apex to leave its "classic" look. For example my attempt to write code for Zion style tabs in wxWidgets resulted in success (took about half an hour to understand how it works and to write the needed code):

post-20023-127636232596_thumb.png

Is that GTK? It looks really nice, unless this can be achieved with QT I think this is a good enough reason to use WxWidgets for apex...

Share this post


Link to post
Share on other sites

Now is the time to step forward if you want to help us out with the wxwidgets work.

We have put a team together to work on it. All you need to do is PM me and you can assign yourselves some tasks. :)

Share this post


Link to post
Share on other sites

The wxwidgets wiki is outdated and is not valid anymore.

>> http://wiki.wxwidgets.org/WxWidgets_Compared_To_Other_Toolkits#Qt

They are comparing wxWidgets with Qt version 4.5

Since version 4.6 Qt uses native drawing apis.

Read more here:

>> http://en.wikipedia.org/wiki/Qt_(framework)#Use_of_native_UI-rendering_APIs

Qt used to emulate the native look of its intended platforms, which occasionally led to slight discrepancies where that emulation was imperfect. Recent versions of Qt use the native APIs of the different platforms to draw the Qt controls, and so do not suffer from such issues

Read even more here:

>> http://qt.nokia.com/products

Qt uses the native graphics APIs of each platform it supports, taking full advantage of system resources and ensuring that applications have native look and feel.

Cheers,

Boo Boo

Yeah but the difference to wxwidgets is this:

...

That comes straight from wxwidgets wiki so it might be that the info is bit dated but I believe still valid.

Share this post


Link to post
Share on other sites

I just want to announce that StrongDC++ is now being able to run under Linux - tested on Ubuntu 10.10

http://strongdc.sourceforge.net/forum/download/file.php?id=159

Share this post


Link to post
Share on other sites

Wahoo.. it looks like this boat is finally moving...

Going completely non-tech.. how's the progress coming.. Apex is way ahead of the curve in DC Clients so it would be great to see this innovation coming to Linux too!

Share this post


Link to post
Share on other sites

Wahoo.. it looks like this boat is finally moving...

Going completely non-tech.. how's the progress coming.. Apex is way ahead of the curve in DC Clients so it would be great to see this innovation coming to Linux too!

Your username sounds familar, do I know you from somewhere private? If so, PM.

With regards to cross platform, yes progress is progress can't say much more than that ;)

Andrade likes this

Share this post


Link to post
Share on other sites

Woow.. good news!

Is there a possibility to try it?

We are already trying it. ^_^

Share this post


Link to post
Share on other sites

The latest version of Apex DC++ (1.5.4) for Windows is running successfully (without any issue) on both Mac and Linux through CrossOver.

Love to see the native apps though.

Share this post


Link to post
Share on other sites

Is there any update on even a beta for this?

 

Yes, I plan to create an announcement regarding this soon. We just need to get 1.5.6 out to fix a few issues and then we can concentrate on this. If you want to make sure you aren't forgotten about you can PM me with your interest and what distribution you use.

 

Thanks for your patience.

Share this post


Link to post
Share on other sites

The latest version of Apex DC++ (1.5.4) for Windows is running successfully (without any issue) on both Mac and Linux through CrossOver.

Love to see the native apps though.

Apex DC++ 1.5.7 runs stable in wine, haven't tried the 1.5.8 yet.

Share this post


Link to post
Share on other sites

Apex DC++ 1.5.10 dont  runs in crossover any news on a linux klient

Apex DC++ 1.5.8 runs stable in crossover

Share this post


Link to post
Share on other sites