PxPlus User Forum

Twitter Twitter Twitter

Author Topic: How to override internal NOMADS panels  (Read 1394 times)

PxPlus

  • Administrator
  • Diamond Member
  • *****
  • Posts: 1091
    • View Profile
How to override internal NOMADS panels
« on: May 31, 2018, 11:27:44 AM »
From time to time you may want to override the panel layouts used by Nomads or any other standard ProvideX/PxPlus panels. For example you might want to suppress certain menu options or add other options to a panel.

While you could directly modify the standard application, this often leads to problems when the software gets updated or other patches get applied.

There is a simple technique that can be used to override *ANY* Nomads panel request and allow you to substitute one of your own making.

Both NOMADS and iNomads check for the presence of the global variable

  %NOMADS_PROCESS$

This variable can be set with the name of a program (and optional label) of sub-routine to be called whenever a Nomads panel is about to be PROCESSed. The routine is passed two parameters: the panel name and the library name and can change these as desired.

This functionality allows you to redirect any NOMADS panel call to any library of your own choosing.

Obviously you need to make sure that your replacement panel will handle any/all ARG_nn$ consistent with the original panel.