openFrameworks icon indicating copy to clipboard operation
openFrameworks copied to clipboard

QTCreator 🕷️Bugs / 🙏Wishlist

Open bakercp opened this issue 7 years ago • 5 comments
trafficstars

Here is a collection of QTCreator Bugs to start tracking.

Wizards / Templates

New Project Wizard

  • [ ] 🙏 Support Addons that are not "core" addons in the Wizard.
  • [ ] 🙏 Skip "Project Management" screen OR set "Add to version control to 'none'" by default.
  • [ ] 🙏 Jump to the Configuration Screen automatically (like the Import Wizard). Otherwise, it is difficult to find. Should open "Projects" mode.

Import Wizard

  • [ ] 🙏 Skip "Project Management" screen OR set "Add to version control to 'none'" by default.

Platform-Specific

macOS

  • [ ] 🕷️ Create .app bundles that are more similar to those created by Xcode (https://github.com/openframeworks/openFrameworks/issues/5825).
  • [ ] 🕷️ On retina screens the apps occasionally open to super-tiny resolution mode (https://github.com/openframeworks/openFrameworks/issues/5167).
  • [ ] 🕷️ADDON_FRAMEWORKS in addon_config.make file is not added correctly (e.g. ofTheo/ofxKinectV2 doesn't add the OpenCL framework).

General

  • [x] 🙏 Reload addons from addons.make file, rather than editing the *.qbs file.
  • [ ] 🙏 Add qbs and build files to project .gitignore template.
  • [ ] 🕷️ Unpredictable behavior when addons in addons.make with mis-spelled addon names. For example, when ofxCV is used instead of ofxCv, files are duplicated sometimes and not included other times. Project generator is case sensitive and won't find addons that are mis-spelled on macOS.

bakercp avatar Feb 14 '18 23:02 bakercp

I'm marking reload addons from addons.make as done since that's already working. You just need to comment out the whole addons section in the qbs file and it'll parse the addons from addons.make.

That kind of dependency won't automatically reload the project though so you'll need to manually select parse qbs from the build menu in order to reload the addons which is not very convenient but there's no way around it right now since this is a limitation in how qbs works

arturoc avatar Feb 15 '18 08:02 arturoc

Why add qbs to .gitignore? Maybe this task is not what I think it is? I find it useful to track the qbs file with git. Mine looks like this:

        files: [
            "~/wtl/config.json",
            "../wtl/*",
            "../wtl/gui/*",
            "../wtl/gui/win/*",
            "../wtl/hsluv/*",
            "src/main.cpp",
            "src/ofApp.*",
            "src/ShareHandlerDesktop.*",
            "bin/data/shaders/*",
            "bin/data/texts/*",
            "../../todo.md",
        ]

So I can easily access the todo.md file, edit the shaders, texts, and by using * I don't need to add each new class I create to the project, only if it's in a new folder. If the file is not on git, collaborators will have to update this file on their own, or?

hamoid avatar Feb 15 '18 10:02 hamoid

Hi @hamoid -- obviously there's nothing fundamentally wrong with tracking qbs files with git -- my proposal is just that we to treat them like we treat all other project files and make inclusion very intentional.

For many examples / projects the quickest thing to go out of date and cause support nightmares is the project files. Many of us have stopped including them in addon examples for instance because they end up being a support nightmare. By adding them to the project template .gitignore, we help encourage the use of up-to-date importers and the Project Generator. Of course, just like xcode / VS, project files, there is nothing to prevent you from git add -f *.qbs on your project and keeping everything up to date for your collaborators. I'm just suggesting parity with other project file types by default.

bakercp avatar Feb 15 '18 15:02 bakercp

@arturoc Also, I realize a few of these things are probably just QTCreator limitations and things that require the user to configure in their settings -- but that's why they are on the wishlist! I started using QTCreator in my courses this semester, primarily on macOS, and it has been great overall. This is just a collection of the feedback I'm generating from my student experiences.

bakercp avatar Feb 15 '18 15:02 bakercp

Hi, I'm willing to address some changes here.

But first, what's the current state of QtCreator support ? Why has the QtCreator setup guide been quietly hidden from the OF download page/site ?
@bakercp Have you continued to use QtCreator with students ?

I have some points to add : Common:

  • [ ] Different sandboxing behaviour: In QtCreator, addons compile with access to project includes while makefiles don't. From an addon: #include "someUserProjectFile.h" fails while it succeeds in Qt.
  • [ ] Provide some of-related documentation for the quite undocumented QBS 1 language ? (to pimp your .qbs). Eg: Commented lines as "config hints", like in the makefile project/addon template.

MacOS:

  • [ ] Framework search paths need to be set manually : cpp.frameworkPaths: [of_root+'/addons/ofxSyphon/libs/Syphon/lib/osx/'], it doesn't work via of.cFlags: ['-F'+of_root+'/addons/ofxSyphon/libs/Syphon/lib/osx/']. Even addon_config.mk has no support for framework search paths, but there it can be passed to the compiler flags.
  • [ ] Qt creator needs to set : cpp.minimumMacosVersion: '10.15' & cpp.cxxLanguageVersion: 'c++17', or grab it from the config.make.
  • [ ] .m and .mm sources are not parsed. (I have a fix) #3136
  • The ADDON_FRAMEWORKS issue : I have a fix for it.

Daandelange avatar Sep 25 '24 16:09 Daandelange