Open comments for this post
A lot screwed up, so I decided to fix a lot of them. These are just mostly bug fixes and only a few QoL changes.
For those who are afraid of change:
- Labels should be more legible now (same background as the overall canvas)
- Forced .hpp file generation (because the header implementation is C++, we don’t want it to mix with C only code
- A lot of stubborness during code generation ;)
Open comments for this post
Hotfix 1 of v0.7 (0.71) is here. Nothing much here, just like the old 0.7 version, except this update are just bug fixes and few QoL improvements.
If you are terrified of change, I’ll wrap up what’s changed in this hotfix:
- The handles and selection frames should no longer offset by now, it is near one-to-one on what you’ll be building at the end (including the header files :D)
- And yeah, the grid should be more visible now.
- At
TextDialog.cpp, few improvements were made. The text field will focus first rather than the OK button, so you can type your header class right away, and press Enter when you’re all set!
Open comments for this post
Quality of life fixes, nothing big, just minor fixes before getting ready to ship at the first phase!
Open comments for this post
Finally, added one feature that is extremely important or else render MotifDesigner out of its core goals! Now, header (*.h) export is available, which means you can start using it as part of your project! Zero warnings, zero errors, it’s stable now (if there are errors or warnings in .h, it’s either your fault or just file a bug report)
Open comments for this post
Added a dialog later on for you to answer the questions it prompted you, as well as regex checking (this will be fixed into a more modular approach later on). Regexes still apply!
I’ll probably finish a lot later on (including adding a new visual file, opening a visual file, etc). Right now, this could be the roadmap for future development from now:
Current Goals:
- Implement exporting visual as .h file to be used
- Creating a new visual file, opening/parsing, and saving
Future Goals:
- Fully implemented C++ editor inside of the designer
- Project system (a folder containing the visual file, C++ file and the automatically generated header file)
- Automatic X11/Xm/Xt download if you don’t have one (includes and libraries)
- In-IDE building with
g++ and having the ability to run the result binary
- Packaging to AppImage with
linuxdeploy and appimagetool
- Add Wakatime/Hackatime support /j (that will/won’t happen)
Open comments for this post
Lots of bug fixes (I forgot what I did for the past 2 hours logged T_T) but at least, most bugs were shot down and caught. Especially quick mouse kids, who just mess and drag widgets fast, now it’s “throttled” to a fixed 60fps. And also added status bar to highlight the user on what’s going on and what to do with the tool. Oh yeah, also added where you can use arrow keys to snappingly move between 10 units, just for convenience!
(Excuse me, the cursor there is highly offset, I truly apologize for that TwT)
Open comments for this post
Finally, the feature we all be waiting for! The canvas! This took me a horrendous amount of time, but it sure was worth the experience
It can now drag, scale, and do many transformations like a usual GUI builder would do! And yeah, there were a lot of hiccups (yeah, segfaults and coredump abortions) and managed to fix a lot of them if it weren’t for Claude!
Yeah, basically, it looks like a functioning editor by now! Sure it was interesting!
Open comments for this post
Now added a check for illegal names using regex! This is done so that you won’t get programmatic errors later on when coding your app in C++ (everyone doesn’t want that!) so it’s better to stay off at the normal naming convention of C
Open comments for this post
Added new properties panel! This is to ensure precise modifications were being made so that you still have lots of control with the UI building process
Open comments for this post
A lot of things were done. First off, the menubar for your stuffs later on! You’ll do it there! Second, now there’s a toolbar (still WIP)! As well as a lot of segfaults along the way, we managed to get that working for the start of this!
Open comments for this post
More work yay! Most of the time logged here is just a scrapped feature that will never make it (due to the nature of XmNotebook). Initially, I wanted to add a tab that can switch between the visual editor and the C++ code editor (WIP)! but yeah, I don’t want a flipbook like interface, so I’ll make it as two separate modules. But hey, at least we made progress!
Open comments for this post
Actually another long time to comply for shipping (a test one!) which are AppImages! I just don’t want to mess around with dependency hell when distributing an ELF binary (ugh dangerous) so AppImage was our way to go. First, it was a bit flawed, then with some help, we managed to get two variants, generic and IRIX (for those who run MaXX). Hopefully it will be done soon, as this is still a work in progress and should serve the instantaneous basis of my future MotifDesigner roadmap.
Attached is the app tested on Ubuntu MATE at Deskterm.
Open comments for this post
I know this may sound like a gimmick (given that I logged 1h on one specific window) but this was tedious to get into. The About section. It seems easy, if you think, but no! It’s actually really hard to get into without proper techniques and lots of tampering with the XPM pixmaps. Gemini couldn’t help so I reached over to Claude to help and here it is, 1h wasted on just an about section.
Open comments for this post
Did some variations with the IMC test but this time with the actual X11 Motif window showing up. The same as before except this test is now in an X11 window 🙃
Open comments for this post
Doing some tests to actually ensure that inter-module communication is done effortlessly. I don’t want to write more bloat code that results in a bloated main.cpp that just “acts” as a middleman, just let the header files be the ones that’s fully responsible for the IMC calling
Open comments for this post
First project bootstrap! Horray!