AminetAminet
Search:
85290 packages online
About
Recent
Browse
Search
Upload
Setup
Services

util/wb/WBMenuEditorV1.0.lha

Mirror:Random
Showing: i386-aros icongeneric icon
No screenshot available
Short:WBMenuEditor
Author:C.R.A.N.E (TecniMan)
Uploader:AmigaCrane gmail com (TecniMan)
Type:util/wb
Version:1.0
Architecture:m68k-amigaos >= 3.2.0
Date:2026-05-03
Requires:AmigaOS 3.2.x, MenuTools
Distribution:Aminet
Download:util/wb/WBMenuEditorV1.0.lha - View contents
Readme:util/wb/WBMenuEditorV1.0.readme
Downloads:3

WBMenuEditor
============

Visual MenuTools editor for AmigaOS 3.2.x.

WBMenuEditor provides a simple graphical interface for editing the ARexx
MenuTools script normally located at:

    SYS:WBStartup/MenuTools

MenuTools is used by AmigaOS 3.2.x to add custom entries to the Workbench
Tools menu and to create additional user-defined menus and submenus.
WBMenuEditor makes this easier by avoiding manual editing of ARexx MENU ADD
lines.


About this project
------------------

WBMenuEditor is my first program.

It was developed in JavaScript using NodeAmiga. The original code was
generated with help from GPT as JavaScript for NodeAmiga. After that, several
parts had to be adjusted manually, tested on a real AmigaOS/Workbench
environment, corrected, and refined through trial and error until the program
worked as expected.

This project was created mainly to solve a practical problem: AmigaOS 3.2.x
includes MenuTools, but editing its ARexx script by hand is not very friendly.
WBMenuEditor tries to make that process simpler and safer.


Distributed versions
--------------------

WBMenuEditor is distributed as compiled Amiga executables, not as a JavaScript
script that requires NodeAmiga at runtime.

Two executable builds are provided:

    WBMenuEditor_000
        Version intended for standard 68000-based Amiga systems.

    WBMenuEditor_020
        Version intended for 68020 or higher systems.

Because these are compiled executables, the user does not need to install
NodeAmiga or the NodeAmiga libs drawer in order to run WBMenuEditor.


Tested system
-------------

This version has been tested on:

    Amiga 1200
    68030 accelerator
    AmigaOS 3.2.3

So far, I have not found any problems in that setup.


Features
--------

- Visual editor for MenuTools MENU ADD entries.
- Supports the default Workbench Tools menu.
- Supports user-created menus.
- Supports submenus.
- Supports program entries, separators, and WBLoad entries.
- Generates valid ARexx MenuTools syntax automatically.
- Automatically creates internal MENU ADD names from the visible menu title.
- Creates a backup before saving.
- Does not modify Startup-Sequence.
- Does not modify MenuTools.info.
- Allows selecting programs through the ASL file requester.
- Shows the currently selected item in the list.
- Uses confirmation dialogs before destructive actions when supported by the
  compiled NodeAmiga runtime.


Requirements
------------

- AmigaOS 3.2.x
- MenuTools installed in SYS:WBStartup/
- One of the supplied WBMenuEditor executables:

    WBMenuEditor_000
    WBMenuEditor_020

NodeAmiga is not required by the end user when using the compiled executable
versions.


Recommended installation
------------------------

The program does not need installation. Just copy it wherever you want and run
it.

Personally, I like to keep it in:

    Workbench:Prefs/

You can also create a drawer for the application, for example:

    MakeDir SYS:Utilities/WBMenuEditor

Then copy the executable you want to use into that drawer:

    Copy WBMenuEditor_000 SYS:Utilities/WBMenuEditor/

or:

    Copy WBMenuEditor_020 SYS:Utilities/WBMenuEditor/

Then run it from Workbench or Shell.

If launched without arguments, WBMenuEditor expects the MenuTools script to be
located at:

    SYS:WBStartup/MenuTools



Basic usage
-----------

The left side of the window shows the current menu structure.

Typical rows are displayed as:

    Default menu (Tools)
      Prg   Help
      Sep   ----------------

    Menu: My Tools
      Prg   Shell

      Submenu: Editors
        Sub   TextEdit

The right side of the window contains the editable fields for the selected
entry.

The file is not modified immediately while editing. Changes are kept in memory
until Save is pressed.


Buttons
-------

Add Item
    Adds a new program entry to the selected menu or submenu.

Add Menu
    Creates a new custom menu.

Add Sub
    Creates a submenu inside the selected custom menu.

Add Sep
    Adds a separator line to the selected menu or submenu.

Up / Down
    Moves the selected item, menu, or submenu within its valid group.

Delete
    Deletes the selected item, menu, or submenu. Deleting a menu or submenu
    also removes its contained entries.

Save
    Writes the updated MenuTools script to disk after creating a backup.

Reload
    Reloads the file from disk. If there are unsaved changes, confirmation is
    requested.

Quit
    Closes the editor. If there are unsaved changes, confirmation is requested.

...
    Opens a file requester to select a command or program.


Entry types
-----------

Command
    Runs the selected command or program through AmigaDOS/Shell using address
    command.

    Example generated output:

        MENU ADD NAME Shell TITLE '"Shell"' CMD "'address command ''SYS:System/Shell'''"

WBLoad
    Runs the selected program through C:WBLoad, similar to launching it from
    Workbench.

    Example generated output:

        MENU ADD NAME MultiView TITLE '"MultiView"' CMD "'address command ''C:WBLoad SYS:Utilities/MultiView'''"

    The selected path does not need to include the .info extension. WBLoad
    works with the base file path.

Sep
    Creates a separator line.

    Example generated output:

        MENU ADD NAME MenuSeparator TITLE '"~"' CMD ""


Menus and submenus
------------------

MenuTools creates custom menus and submenus using backslash paths in the TITLE
field.

For example, an item inside a custom menu:

    TITLE '"\\My Tools\\Shell"'

An item inside a submenu:

    TITLE '"\\My Tools\\Editors\\TextEdit"'

WBMenuEditor handles this automatically. The user only needs to edit the Menu
and Sub fields in the interface.


Important notes
---------------

WBMenuEditor only edits MenuTools-compatible MENU ADD entries.

It does not edit the built-in Workbench menus such as:

- Workbench
- Window
- Icons

It also does not patch Workbench, does not install commodities, and does not
alter Startup-Sequence.

Empty custom menus cannot be represented in the final MenuTools ARexx file
unless they contain at least one entry, because MenuTools creates menus through
MENU ADD lines.


Backup
------

Before saving, WBMenuEditor creates a backup next to the edited file:

    SYS:WBStartup/MenuTools.bak

To restore manually:

    Copy SYS:WBStartup/MenuTools.bak SYS:WBStartup/MenuTools


Applying changes
----------------

After saving, MenuTools or Workbench must be restarted for changes to become
active.

The simplest method is usually to reboot or restart Workbench.


Included source
---------------

The program directory also includes the JavaScript source file.

This is included in case someone wants to study it, improve it, modify it, or
adapt it to their own needs.

The final user does not need this source file to run the compiled executable.


Development notes
-----------------

WBMenuEditor was developed in JavaScript using NodeAmiga and then compiled
into standalone Amiga executables.

Development involved a mix of GPT-assisted code generation, manual changes,
real testing, and many small corrections based on how MenuTools and the
AmigaOS GUI behaved in practice.

The final distributed executables are intended to be used directly by Amiga
users without requiring NodeAmiga to be installed.


Files
-----

Typical distribution contents:

    WBMenuEditor_000
    WBMenuEditor_020
    WBMenuEditor.js
    README.txt

The executable files are the compiled versions.

The JavaScript source is included for reference, learning, modification or
future improvement.


Credits
-------

WBMenuEditor by TecniMan.

Developed with NodeAmiga.

NodeAmiga by Juen/R3D + Appendix + Nah-Kolor.

First program by TecniMan, created with GPT assistance, manual changes and
trial-and-error testing on a real Amiga setup.


Dedication
----------

This program is dedicated to the whole Amiga community.

It is also dedicated to my family, especially to my life partner Daphne, who
always joins me in my crazy ideas, hobbies, Amiga parties and all those little
retro adventures that make this world so special.

And of course, to PolloHacker and MomoChan.


Final note
----------

READ ME OR GURU!


Contents of util/wb/WBMenuEditorV1.0.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[Amiga]                   1959    4593  42.7% -lh5- 6d92 May  2 12:30 WBMenuEditor/READ_ME_OR_GURU!
[Amiga]                   2066    2306  89.6% -lh5- 03e1 May  2 12:34 WBMenuEditor/READ_ME_OR_GURU!.info
[Amiga]                   9064   39129  23.2% -lh5- 1774 May  2 11:34 WBMenuEditor/src/WBMenuEditor.js
[Amiga]                 190502  393987  48.4% -lh5- 5b3a May  2 12:24 WBMenuEditor/wbmenu_000
[Amiga]                   1185    1522  77.9% -lh5- e527 May  2 13:54 WBMenuEditor/wbmenu_000.info
[Amiga]                 189681  390279  48.6% -lh5- 2b23 May  2 12:25 WBMenuEditor/wbmenu_020
[Amiga]                   1188    1522  78.1% -lh5- 6a54 May  2 13:54 WBMenuEditor/wbmenu_020.info
[Amiga]                   1623    2580  62.9% -lh5- 4c61 May  2 12:32 WBMenuEditor.info
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total         8 files  397268  835918  47.5%            May  3 01:04
Page generated in 0.03 seconds
Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>