Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Path To Images
Message
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Title:
Miscellaneous
Thread ID:
01246572
Message ID:
01246577
Views:
14
>I had created a series of constants to define image locations. The images are stored in different
>locations during development, in subfolders under the Media\UI folder. In runtime, all images will
>be dumped into a single folder called 'Graphics':
>
>
>#DEFINE IMAGE_LOC_RUNTIME	ADDBS(SYS(5) + SYS(2003)) + "Graphics\"
>#DEFINE IMAGE_LOC_DEV		ADDBS(SYS(5) + SYS(2003)) + "Media\UI\"
>
>#DEFINE IMAGE_LOC_BASE   	IIF(RUNTIME, IMAGE_LOC_RUNTIME, IMAGE_LOC_DEV)
>
>#DEFINE IMAGE_LOC_EFFECTS	IIF(RUNTIME, IMAGE_LOC_BASE, IMAGE_LOC_BASE + "Effects\")
>#DEFINE IMAGE_LOC_ARROWS	IIF(RUNTIME, IMAGE_LOC_BASE, IMAGE_LOC_BASE + "Arrows\")
>
>
>Using this technique, I have been able to use a constant when assigning graphics at runtime. The
>base image location is determined by either IMAGE_LOC_RUNTIME or IMAGE_LOC_DEV.
>
>Now the requirements have changed. The base location for the images will be configurable by the
>user.
>
>So the question is, how to I implement that here without going and changing all the places I'v
>used a constant?
>
>Thanks

How exactly it is going to be configured by the user - INI file, registry, local XML or some table?

In any case, you may use
>#DEFINE IMAGE_LOC_RUNTIME	addbs(alltrim(MyConfigTable.MyField))
>#DEFINE IMAGE_LOC_DEV	addbs(alltrim(MyConfigTable.MyField))
for example. But then the configuration table should be always opened in the places you want to access this constant. You can also use an application object and still reference it in define constant.
If it's not broken, fix it until it is.


My Blog
Previous
Reply
Map
View

Click here to load this message in the networking platform