You are browsing as a guest. Sign up (or log in) to start making projects!

MotifDesigner

  • 16 Devlogs
  • 18 Total hours

A Visual Basic-inspired creation tool to make X11 Motif retroslop apps (Linux only, works best if you have X11 and MaXX/SGI theme)

Open comments for this post

41m logged

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 ;)

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 ;)

Replying to @zeankun

0
5
Open comments for this post

30m 31s logged

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!

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!

Replying to @zeankun

0
3
Ship #1

This is MotifDesigner, a GUI editor for Motif (basically) in which you can edit your normal GUIs. Think of it as like the WinForms/Qt Creator of Motif! The goal is to actually bring modern UX to ancient looking software, and it's actually quite fun! Behind all these are hours of debugging efforts, tens of segmentation fault crashes, tons of sacrificed memory for memory leak debugging, and lots of core dumps! I hope this project simplifies what GUI making is, or just making Motif development a bit easier while also looking ancient!

  • 16 devlogs
  • 18h
Try project → See source code →
Open comments for this post

28m logged

Quality of life fixes, nothing big, just minor fixes before getting ready to ship at the first phase!

Quality of life fixes, nothing big, just minor fixes before getting ready to ship at the first phase!

Replying to @zeankun

0
2
Open comments for this post

1h 12m 11s logged

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)

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)

Replying to @zeankun

0
2
Open comments for this post

1h 43m 6s logged

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)

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)

Replying to @zeankun

0
1
Open comments for this post

2h 14m 30s logged

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)

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)

Replying to @zeankun

0
4
Open comments for this post

3h 41m 41s logged

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!

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!

Replying to @zeankun

0
5
Open comments for this post

15m 4s logged

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

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

Replying to @zeankun

0
4
Open comments for this post

49m 54s logged

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

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

Replying to @zeankun

0
1
Open comments for this post

1h 15m 32s logged

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!

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!

Replying to @zeankun

0
1
Open comments for this post

1h 19m 30s logged

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!

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!

Replying to @zeankun

0
1
Open comments for this post

1h 44m 14s logged

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.

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.

Replying to @zeankun

0
1
Open comments for this post

1h 3m 2s logged

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.

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.

Replying to @zeankun

0
1
Open comments for this post

17m 13s logged

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 🙃

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 🙃

Replying to @zeankun

0
2
Open comments for this post

25m 56s logged

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

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

Replying to @zeankun

0
2

Followers

Loading…