[Oberon] FPGA - OberonV4 Dialogs

Jörg joerg.straube at iaeth.ch
Tue Nov 27 12:22:23 CET 2018


Yes.
Jörg

-----Original Message-----
From: Oberon <oberon-bounces at lists.inf.ethz.ch> On Behalf Of Tomas Kral
Sent: Tuesday, November 27, 2018 11:12 AM
To: oberon at lists.inf.ethz.ch
Subject: Re: [Oberon] FPGA - OberonV4 Dialogs

On Thu, 15 Nov 2018 10:52:40 +0100
Jörg <joerg.straube at iaeth.ch> wrote:

> Either you store the type info you got by the module Type.Mod or - 
> cleaner - you call an instantiation routine of the module where you 
> imported the POINTER from and let that module do its job.

My understanding is that Dialogs.Load() scans `*.Dlg' (meta?) file for module names, reading further some static and dynamic data.

PROCEDURE LoadP (p: Panel; VAR r: Files.Rider);
	(** reads the panel from rider r *)
BEGIN
	...
	WHILE V{elements-count} > 0 DO
		P{Get Module Name} 
		P{Load Name}
		P{Init Module with Dlg data} 
	END ;
DONE.

For loading part, it does some magic with `Types'
Types.NewObj (o, Types.This (Modules.ThisMod (module), name)); ASSERT (o # NIL);

Could be it recoded to something like this?
Modules.Load(name, dlgItem);
Modules.ThisCommand(dlgItem, "Init()");

Many thanks and apologies for asking too much.

--
Tomas Kral <thomas.kral at email.cz>
--
Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems https://lists.inf.ethz.ch/mailman/listinfo/oberon



More information about the Oberon mailing list