This is not D. It should be giving you a compiler error. How
are you compiling? Or did you type 'using' in the post by
mistake? Anyway, what you want is:
import style;
I indeed made a typo while typing the post (and also on various
occasions while writing the program, but compiler errors fixed
that). That's what you get for using C# at work.
In style.d:
module style;
(...)
public static class Style
{
'static class' has no meaning in module scope, only for inner
classes. It's not the cause of your problem though.
Thanks for the heads up :) I figured it was about time to dust my
D-skills.
The error is likley because of a symbol conflict. Assuming that
Text is from the module dsfml.text.graphics, it has an enum
type named Style. There's an unfortunate issue in D that allows
both of the following to compile:
auto e1 = Text.Style.Regular;
_text.Style.Regular;
The latter should not be allowed, IMO, but it is what it is. So
in your case, accessing your Style class in the scope of
with(_text) is causing the compiler to find _text.Style. The
solution is to use the FQN (Fully Qualified Name) on your Style
inside the with, i.e. style.Style, or to drop the with
altogether.
Dropping the with worked like a charm, thanks a lot for the fast
reply!