Mercurial > projects > mde
diff mde/content/Items.d @ 115:1b1e2297e2fc
Enums handled more generically now via either a popup list or flat list of BoolContentWidgets.
EnumContent is an IContentList with BoolContent sub-contents.
Content modules moved around (again).
ContentListWidget can now list horizontally.
Log-level setting callback.
author | Diggory Hardy <diggory.hardy@gmail.com> |
---|---|
date | Sat, 20 Dec 2008 17:57:05 +0000 |
parents | 9824bee909fd |
children | d3b2cefd46c9 |
line wrap: on
line diff
--- a/mde/content/Items.d Fri Dec 19 15:15:06 2008 +0000 +++ b/mde/content/Items.d Sat Dec 20 17:57:05 2008 +0000 @@ -18,7 +18,7 @@ *************************************************************************************************/ module mde.content.Items; -import mde.content.Content; +import mde.content.miscContent; import mde.gui.exception; import imde = mde.imde; @@ -39,7 +39,7 @@ * * E.g. get ("Options.MiscOptions.L10n") returns miscOpts.L10n, * Items.get ("Options.MiscOptions") returns a ContentList of all misc options. */ - AContent get (char[] item) { + Content get (char[] item) { assert (currentL10n is miscOpts.L10n(), "must call loadTranslation (code error)"); char[] h = head (item); @@ -75,7 +75,7 @@ // Create Option classes' ContentLists if necessary: if (Options.allContentList is null) { - AContent[] list; + Content[] list; list.length = Options.optionsClasses.length; size_t i; foreach (n,opts; Options.optionsClasses) { @@ -99,12 +99,11 @@ foreach (s, v; opts.content) { trle = trl.getStruct (s); v.name (trle.name, trle.desc); - EnumContent ec = cast(EnumContent) v; - if (ec) { - char[] tp = s ~ "."; - foreach (i,sym; ec.enumSymbols) { - trle = trl.getStruct (tp~sym); - ec.nameEnum (i, trle.name, trle.desc); + ContentList cl = cast(ContentList) v; + if (cl) { + foreach (i,c; cl.list) { + trle = trl.getStruct (c.symbol); + c.name (trle.name, trle.desc); } } }