Hello Graeme,

you wrote on Fri, 14 Feb 2020 17:45:34 +0000:

> > *_mfm.pas ARE necessary.  
...
> I remember I asked Martin if they were required, and his answer was
> technically no, because they are auto generated or something. So I once

As I see it, they're (kind of) auto generated if you create or modify a
form. If there is one for a form that's been modified "externally" or
where the _mfm.pas has become older than the form file itself, it won't
be automatically updated - there's no make-like mechanism to regenerate
them, you'll have to explicitely "touch form file" from the menu.
But on the other hand, the _mfm.pas files are "consumables", they are
generated as needed, and can be regenerated as often as one likes, e.g.
deleted after a build and regenereated to execute a new one.

> deleted all *_mfm.pas files from my local MSEide+MSEgui repo, and
> everything was broken.
> *shrug*

Well, wasn't that the reason Martin produced the "form2pas" program, i.e.
to regenerate any _mfm.pas files missing? There was some discussion about
that, a long time ago...
BTW, there's a "bmp2pas" program also, to create "compatible" files
from .bmp pictures, and even a general "data2pas" program for arbitrary
data. hey (seem to) provide a generalized means to load such data as a
kind of "ressource".

> So yeah, no idea what Martin meant. And no idea why they are needed.

As I see it, these file are just intermediates during the compile process
for msegui programs, needed because the tpc compiler cannot by itself
produce them, and somehow never handled fully automatically by the ide.

...
> Either way, I always thought 2 files per form/window/dialog was bad for

They're somewhat comparable to the precompiled headers of C/C++, though
lacking the automatisms of these compilers, a crutch for the fpc compiler,
so to speak.

...
> *really bad*! Especially since you can't resolve conflicts in the
> *_mfm.pas files. :-(

They're not meant for anything useful except for compiling the program,
I think. They're not meant for analysis, they're not meant for inspection.

> If there ever was a long term goal for MSEide going forward, I would
> putting.... find the meaning of those files and removing them as a big
> goal going forward.

You might attempt to implement an automatic (re)generator for them, maybe
checking whether the ones lying around are still current and regenerate
obsolete ones, or just remove all of them (perhaps built in a temporary
directory anyway) after every project (re)build and always regenerating
them anew for each build.

That's my view of these beasts, as far as I found out during my work with
mseide-msegui. Currently, I'm busy with quite different things and cannot
spend much time on such problems, althoughe ther might ba some possibility
that I could soon find some use for it on ARM systems (Raspberry Pi, of
course).

-- 
-- 
(Weitergabe von Adressdaten, Telefonnummern u.ä. ohne Zustimmung
nicht gestattet, ebenso Zusendung von Werbung oder ähnlichem)
-----------------------------------------------------------
Mit freundlichen Grüßen, S. Schicktanz
-----------------------------------------------------------




_______________________________________________
mseide-msegui-talk mailing list
mseide-msegui-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk

Reply via email to