Author Topic: Workplace Shell Samples in Github  (Read 769 times)

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5909
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Workplace Shell Samples in Github
« on: August 24, 2026, 04:50:32 pm »
Hello

This weekend I started my next experiment with AI, this time I used the free "OpenCode" (Free for the moment). I always wanted to organize and try to compile Workplace Shell samples and try to compile those with open source tools (as much as possible).

I started this old sample:
-- https://github.com/OS2World/DEV-SAMPLES-C-WPS-MBFolder
It was made with .CSC files instead of IDL and compiled with IBM tools. Now I was able to updated it and compile it with OpenWatcom, but still of the dependency of sc.exe of course.

This updated version 1.1, was migrated to IDL, reorganized the files structure, improved documentation in the readme/source code, and compiled with OpenWatcom. Version 1.0 was preserved on the releases too.
The sample compiled, the Class was registered to an ArcaOS VM I have, and it showed on the desktop.

Any feedback is also welcome, I think the sample is now better for education purposes.

Regards

« Last Edit: August 24, 2026, 05:12:37 pm by Martin Iturbide »
Martin Iturbide
OS2World NewsMaster
... just share the dream.

JPM

  • Full Member
  • ***
  • Posts: 104
  • Karma: +14/-0
Re: Workplace Shell Samples in Github
« Reply #1 on: August 25, 2026, 07:51:00 am »
Great work, Martin!
One idea for a future version: a classic toolbar with Back, Forward and Up one folder buttons.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5909
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Workplace Shell Samples in Github
« Reply #2 on: August 25, 2026, 02:30:56 pm »
Hello JPM

I made this PM sample, but it is not integrated to the WPS.
- https://github.com/OS2World/DEV-SAMPLES-C-PM-Navigator

Maybe merging this sample to the WPS in the future can produce something more useful.

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5909
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Workplace Shell Samples in Github
« Reply #3 on: August 27, 2026, 07:15:11 pm »
Hello

Here with the WPS samples, I'm not sure if I'm going in the right direction compiling samples with the AI.

Here I have Car (C) samples - https://github.com/OS2World/DEV-SAMPLES-C-WPS-Car

It compiled with OpenWatcom and works. But I don't know why it grabbed som.lib and pmwp.lib for it.

Quote
#   4. Parent WPS classes (WPObject/WPFileSystem/WPDataFile) come from
#      pmwp.dll by ORDINAL: src\pmwp.def + IMPLIB -> release\pmwp.lib.
#   4a. SOM kernel: implib built from som.dll -> release\som.lib (single-
#       module import library; avoids somtk.lib's transitive dependency
#       on somc/some/somtc which fail to load on some systems).
I don't understand this AI decision, or if it is missing some knowledge of the SOM toolkit.

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

JPM

  • Full Member
  • ***
  • Posts: 104
  • Karma: +14/-0
Re: Workplace Shell Samples in Github
« Reply #4 on: August 27, 2026, 09:20:32 pm »
Hello JPM

I made this PM sample, but it is not integrated to the WPS.
- https://github.com/OS2World/DEV-SAMPLES-C-PM-Navigator

Maybe merging this sample to the WPS in the future can produce something more useful.

Regards

Cool!!

Rich Walsh

  • Sr. Member
  • ****
  • Posts: 444
  • Karma: +33/-1
  • ONU! (OS/2 is NOT Unix!)
Re: Workplace Shell Samples in Github
« Reply #5 on: August 27, 2026, 10:21:09 pm »
I don't know why it grabbed som.lib and pmwp.lib for it. [...]
I don't understand this AI decision, or if it is missing some knowledge of the SOM toolkit.

Why don't you ask Claude?

While you're at it, why not ask Claude what exactly a '.lib' is. And what it does. And how it relates to a dll. And why it needs these two. And...

Dave Yeo

  • Hero Member
  • *****
  • Posts: 6073
  • Karma: +169/-2
Re: Workplace Shell Samples in Github
« Reply #6 on: August 28, 2026, 06:58:59 am »
Hi Martin,
Could have used WIPFC to build the help instead of copying it and wlib instead of implib to build the import libs I think. The def files look bare to me but they seem to work. Could have added a DESCRIPTION with bldlevel info to them, or passed the description to wlink, eg from the screensaver PrettyClock,
Code: [Select]
option description '@#DRY:1.80#@##1## 9 Dec 2023 21:32:58      ARCAOS-444::::::v2.5@@Pretty Clock - ScreenSaver module'
Otherwise interesting, especially the comments in the Makefile.wat.


« Last Edit: August 28, 2026, 07:01:14 am by Dave Yeo »

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5909
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Workplace Shell Samples in Github
« Reply #7 on: August 28, 2026, 06:17:38 pm »
Hi Martin,
Could have used WIPFC to build the help instead of copying it and wlib instead of implib to build the import libs I think. The def files look bare to me but they seem to work. Could have added a DESCRIPTION with bldlevel info to them, or passed the description to wlink, eg from the screensaver PrettyClock,
Code: [Select]
option description '@#DRY:1.80#@##1## 9 Dec 2023 21:32:58      ARCAOS-444::::::v2.5@@Pretty Clock - ScreenSaver module'
Otherwise interesting, especially the comments in the Makefile.wat.
Thanks Dave, those are good tips to set the PM Samples common ground for my experiment, and try to make old samples compile in ArcaOS.

1.- Convert CSC to IDL when applies
2.- Reorganize files in /h /idl /src /doc /release
3.- Use OpenWatcom for compiling.
  CC      = wcc386
  LINK    = wlink
  RC      = wrc
  WLIB    = wlib
  WIPFC   = wipfc
4.- Create Makefile.wat and .cmd files for genbind.cmd, make (mk.cmd), register and deregister.
5.- Include on the .def file the bldlevel information.
6.- Create/Update the readme.md with the information of the sample and changelog.

I updated the Car sample. https://github.com/OS2World/DEV-SAMPLES-C-WPS-Car

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 6073
  • Karma: +169/-2
Re: Workplace Shell Samples in Github
« Reply #8 on: August 29, 2026, 02:11:20 am »
The REXX scripts are broken here,
Code: [Select]
REX0013: Error 13 running H:\tmp\DEV-SAMPLES-C-WPS-Car\register.cmd, line 1:
Invalid character in program
You need a .gitattributes file containing something like,
Code: [Select]
# CRLF is crucial for OS/2 REXX files (also fine for Windows .cmd)
*.cmd eol=crlf
and maybe recommit them with the right EOL.

JPM

  • Full Member
  • ***
  • Posts: 104
  • Karma: +14/-0
Re: Workplace Shell Samples in Github
« Reply #9 on: August 31, 2026, 09:47:14 pm »
Currently playing around with hooks for Warp3 theming and Martin's PM Navigator. Here is a little preview.


David Graser

  • Hero Member
  • *****
  • Posts: 1153
  • Karma: +152/-0
Re: Workplace Shell Samples in Github
« Reply #10 on: September 01, 2026, 05:24:53 am »
Currently playing around with hooks for Warp3 theming and Martin's PM Navigator. Here is a little preview.

This could be a useful option to add in the desktop properties.  If you could add a roll up/down function along with changing a windows Z-order, that would add additional missing functions to a window along with what you are playing with.  I use XIT for the functions you are playing with.  However, XIT has a lot of overlap with functions included in ArcaOS.  One has to know what functions to deselect.

Here is another idea.  I have used this shareware program for years written by Gary Robinson called prompt112.  I like the idea of being prompted anytime I want to move a program, shadow, or folder.

Prompt! is a small WPS program (no executable
files) that will prompt you with a small
dialog box every time you drag and drop an object
in the Workplace Shell.   The dialog allows you
to choose whether you want to move, copy, migrate
a program, or create a shadow of the object
or objects you just dragged before you drop them. 
Making the selection at drop time allows you to do
it all by mouse with one hand.  No OS/2 hot key
combinations to remember to do the job.
« Last Edit: September 01, 2026, 05:44:48 am by David Graser »

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5909
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Workplace Shell Samples in Github
« Reply #11 on: September 01, 2026, 05:20:41 pm »
Currently playing around with hooks for Warp3 theming and Martin's PM Navigator. Here is a little preview.

Good job JPM, thanks evolving it in something better.

About X-It, I contacted long time ago the Author and he no longer has the source code, it is one the must used/request tools in the ArcaOS when we talk about extra icons on each window, a clone of it will be great.

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

David Graser

  • Hero Member
  • *****
  • Posts: 1153
  • Karma: +152/-0
Re: Workplace Shell Samples in Github
« Reply #12 on: September 02, 2026, 12:34:52 am »
Currently playing around with hooks for Warp3 theming and Martin's PM Navigator. Here is a little preview.

Good job JPM, thanks evolving it in something better.

About X-It, I contacted long time ago the Author and he no longer has the source code, it is one the must used/request tools in the ArcaOS when we talk about extra icons on each window, a clone of it will be great.

Regards

The Mouse, Keyboard, and Menu options are no longer needed.  The only thing needed is the the title button options.  It could even be done the way JPM has been playing around with.  Attached is XIT button properties pages.

Martin, you could not get his permission for someone to upload a key for all to use?

JPM

  • Full Member
  • ***
  • Posts: 104
  • Karma: +14/-0
Re: Workplace Shell Samples in Github
« Reply #13 on: September 04, 2026, 05:49:30 pm »
Thanks David and Martin. Those are definitely interesting ideas and we will have a look at them.
Right now I am still busy with the PM Navigator itself, especially improving the actual navigation: address bar behaviour, back/history, folder completion and getting the combo/dropdown fully functional.
After that, additional title bar functions like roll-up, Z-order and extra buttons are certainly worth exploring.