Paladin C++ IDE feedback

As usual one has to look at BeOS history for that. BeOS was not meant to ship with bundled developer tools, so the tools would come in a separate package and extract to a separate directory, making it easier to update or downgrade them.

This does not make much sense with the packaging system now, but the directory has found other uses, for example develop/lib being used by the linker and lib/ being used by the runtime_loader, which avoids us the need for a tool like Linux’s ldconfig.

OK thanks. So for a ‘data’ versus ‘develop’ folder, as they are templates for a runtime application, which are copied, and not anything compiled or linked directly, should it be in /system/data?

I looked at the makefile engine package, and all of it is in develop/. The engine itself, its documentation, as well as the template makefile to use when creating new projects. So it went for a “fully in develop” approach.

gcc is also stored there (develop/tools/bin) but has a symlink in /system/bin for convenience.

However, tools like “make” are stored in /system/bin, so the whole thing is a bit inconsistent.

If you really can’t decide, have Paladin check both and I guess everyone will be happy?

4 Likes

Agreed. Just added this change. It now looks in both those folders.

1 Like

I was using the documentation included when Paladin was installed at:

/boot/system/apps/Paladin/Documentation

Hmmm yeah didn’t spot that there. I’ll update that and rejig the Documentation before the next release too.

or choose both, make data for built-in templates, and develop an empty directory for external templates

Where to find the actual version number? Which Version is the newest? Thanks adam…

Newest is always on the develop branch on GitHub. Version that last passed a build on HaikuDepot is 2.0.3 which is quite old. Last ‘master’ release from GitHub was 2.5. Next version will be 2.6 once I resolve the build issue.

1 Like

I downloaded this one and compiled it… but because it is not a Hpkg… I will get the English Version only… If I am not wrong? Because it won’t be translated! Is’nt it?! So I cannot test the German Version…

No I think the lack of translations is due to the build script giving ‘bad data’ for the non english translations, even though the files are valid. Still trying to figure that one out.

The crashing issue though was down to you just running Paladin with a German locale. You should now be able to go to ‘create new project’ without it crashing.

I downloaded and tried to compile what I found at: https://github.com/HaikuArchives/Paladin

but the build script fails saying it can’t find pcre.h, I did a search and can find the documentation but not the file to include.

Yeah I’ve fixed this in develop, which I’m desperately trying to fix the build of so people can use that one with all these problems fixed.

Do pkgman install devel:libpcre then re-run the build for now. Repo home is now https://github.com/adamfowleruk/Paladin - develop branch is the latest and greatest.

2 Likes

Thank you, I will try it tohight when I get home.

1 Like

Hi all. A new version of Paladin is available on the Haiku Depot. There’s a 15 minute preview video available too of all the new features and fixes:-

Enjoy!

As ever, please send all feedback to the GitHub issues tracker: https://github.com/adamfowleruk/Paladin/issues

9 Likes

Good day,

I know Paladin is a C++ IDE, so this might not be the proper place, but I would like it to be also Python IDE. I’m closer to 60 than to 20, so learning C++ would be a bit hard (also due to lack of time).

Also, I would like to have a streamlined process to build the software. I’m thinking of GnomeBuilder + Glade, to rapidly build apps. Once the app is tested, GnomeBuilder just exports it as a Flatpak. While this approach does not match Haiku’s philosophy, it would be nice that the IDE could launch the “Package builder” app.

Beware, my knowledge on programming is very limited, and even more limited regarding programming on Haiku, so I might have said something wrong.

Regards,
RR

1 Like

Short answer: Yes, I think I and a whole lot of other people agree.

Long answer… strap in… :smiley:

Interestingly enough, all that you ask for has been logged as feature requests.

Already Paladin will allow you to create a project for Python. Add .py source files and ensure they have a #! line at the start, and use the main file name as your Project ‘Target’. Then ‘Run as logged’ in the latest Paladin to see its output.

A native ‘Python project’ with relevant settings would be a logical next step. For this I need to abstract out the language specific elements from the Paladin UI code (not a trivial task).

The ‘language server’ future feature may also help with editing functionality, but that’s partly Paladin and partly Koder/Pe that needs to be modified.

On the GUI side, there is a task to take a GUI Builder tool and integrate that with Paladin. There’s no easy solution here, although plenty of attempts have been made.

Having python language bindings enabling interaction with Haiku GUI elements would perhaps make it easiest for Python developers to get involved?

I believe a GUI builder with built in support for the layout API and all the Interface Kit elements and that can serialise its element graph and configuration in to a C+±runtime-independent flat file would be a good approach. (Indeed LayoutBuilder::Group may make this pretty easy to do…)

This way, whether you were in C++, Python, or using something like yab, you could construct an entire BWindow with a single call, and then just bind in the handling of actions (BMessages) in to that Window.

As ever, I’m happy to listen to other approaches and ideas.

wow… yes and yes…

i saw some GUI editing tool that saved actual GUI elements in BMessages so they could be used by any code that has haiku bindings

IMG_20191231_170335
Python bindings are already there, though lacking some stuff.
I’ve been trying to use them, with a small degree of success due to my limitations. But at least for simple app can be used. I still need to dig in deeper to Port a simple gtk python app I made. That would be an awesome leap forward for me.

It’s clear that having a graphical GUI designer would speed up a lot the development, though for now I use what is available.

Regards,
RR

2 Likes