Aros/Developer/Docs/Libraries/Commodities

Introduction
With AmigaOS (TM) 2.0, Commodities were introduced to extend the feature of the Amiga Workbench (Desktop).

The commodities library sets up an handler before intuition's one. When the commodities handler receives a CxMessage

CxObjects operates on a CxMessage so that it can filter certain CxMessages, translate CxMessages, signal a task when a CxObject receives a CxMessage, send a message when a CxObject receives a CxMessage, or call a custom function when a CxObject receives a CxMessage.

The controller program is called the Exchange which is great for programs like hot keys, pop ups, screen blankers, and mouse blankers that need to monitor all user input.

Commodities Exchange should never be used as an alternate method of receiving user input for an application.

Take a look here

Every Zune application is per default also a Commodity. MUI also does this for you. Look at MUIA_Application_UseCommodities enabled part (lines 625-660) in muimaster/classes/application.c: it really only seems to set (or avoid if FALSE) the initialization by Zune of your tool as a commodity and the keyboard shortcuts work.

Filters
In creating filters, you should create a broker, attach a filter to it, then a sender. The filter takes in only the events that interest you, and the sender notifies the broker.

cx_lib/CxCustom cx_lib/CxFilter cx_lib/CxTranslate
FKey commodity does use a filter

tooltype «RAWMOUSE LBUTTON RBUTTON MOUSE_RIGHTPRESS» RUN App QUIET DONOTBUT CURRENT TOBACK

"RAWMOUSE MBUTTON MOUSE_MIDDLEPRESS"

Blanker
easiest way to get a new blanker is likely to make a copy of the blanker which comes with AROS and then do your own graphics rendering