throw new HttpException (String.Format ("Theme '{0}' cannot be found in the application or global theme directories.", theme));
string [] skin_files = Directory.GetFiles (physicalPath, "*.skin");
- PageThemeParser ptp = new PageThemeParser (physicalPath, context);
+ PageThemeParser ptp = new PageThemeParser (virtualPath, context);
string[] css_files = Directory.GetFiles (physicalPath, "*.css");
string[] css_urls = new string[css_files.Length];
- for (int i = 0; i < css_files.Length; i++)
+ for (int i = 0; i < css_files.Length; i++) {
+ ptp.AddDependency (css_files [i]);
css_urls [i] = virtualPath + Path.GetFileName (css_files [i]);
+ }
ptp.LinkedStyleSheets = css_urls;
+ AspComponentFoundry shared_foundry = new AspComponentFoundry ();
ptp.RootBuilder = new RootBuilder ();
+ string skin_file_url;
for (int i = 0; i < skin_files.Length; i ++) {
- string skin_file_url = UrlUtils.Combine (physicalPath, Path.GetFileName (skin_files [i]));
+ skin_file_url = VirtualPathUtility.Combine (virtualPath, Path.GetFileName (skin_files [i]));
PageThemeFileParser ptfp = new PageThemeFileParser (skin_file_url,
- skin_files[i],
- context);
+ skin_files[i],
+ context);
+ ptp.AddDependency (skin_files [i]);
AspGenerator gen = new AspGenerator (ptfp);
+ ptfp.RootBuilder.Foundry = shared_foundry;
gen.Parse ();
if (ptfp.RootBuilder.Children != null)