Ich bin ein Freund von inneren Typen, beispielsweise TMeineKlasse.TMeinEnum = (eins, zwei, drei). Sieht man ja in der
VCL auch häufiger.
Nun scheitere ich daran, in ein Interface eine Typdeklaration zu pflanzen. Typdeklarationen mag er nicht:
Delphi-Quellcode:
ISomeInterface = interface
type TSomeEnum = (eins, zwei, drei); // Geht nicht
end;
Mir ist die Klasse
Vcl.OleCtrls.TOleEnum
vor die Füße gefallen, aber weder habe ich die jemals gesehen noch wüsste ich spontan damit etwas anzufangen. Bleibt mir etwas anderes übrig, als das Enum aus der Klasse herauszuziehen?
Delphi-Quellcode:
TSomeEnum = (eins, zwei, fünnef);
ISomeInterface = interface
function getEnum(): TSomeEnum;
end;