ControlInset is a templatised class that is used as the base class for many 
of the inset controllers. Currently, both the definition and declaration of 
the class are in ControlInset.h. Changing anything in this file results in 
recompilations of:

in directory controllers:
ControlBibitem.C ControlBibtex.C ControlCitation.C ControlCommand.C 
ControlError.C ControlERT.C ControlExternal.C ControlFloat.C 
ControlGraphics.C ControlInclude.C ControlIndex.C ControlMinipage.C 
ControlRef.C ControlToc.C ControlUrl.C

in directory xforms
Dialogs.C FormBibitem.C FormBibtex.C FormCitation.C FormError.C FormERT.C 
FormExternal.C FormFloat.C FormGraphics.C FormInclude.C FormIndex.C 
FormMinipage.C FormRef.C FormToc.C FormUrl.C

A total of 30 files!

If, however, I split the file into a definition in ControlInset.h and a 
declaration of the class in ControlInset.C, then #include "ControlInset.C" in 
just 8 .C files of classes derived from ControlInset<xyz>:

ControlCommand.C ControlERT.C ControlError.C ControlExternal.C ControlFloat.C 
ControlGraphics.C ControlInclude.C ControlMinipage.C

then changing code in ControlInset.C results in the recompilation of these 8 
files only.

It works like a dream here and I can see no issues associated with this. Do 
those more knowledgable than I have any problems with it? If not, I'd like to 
submit the change.

Angus

Reply via email to