Monday, November 08, 2010 at 12:03 AM.


on compileIfDirty (pta=nil) {
	if pta == nil {
		pta = html.getPageTableAddress ()};
	local (adrWizard = pta^.wizard);
	with adrWizard^ { //compile the xml text if it's been modified
		local (flCompile = true);
		if defined (structure) {
			if timeModified (@outline) <= timeModified (@structure) {
				flCompile = false}};
		if flCompile {
			xml.compile (string (adrWizard^.outline), @adrWizard^.structure);
			local (adrCallbacks = @adrWizard^.callbacks);
			if defined (adrCallbacks^) {
				local (adrCallback = @adrCallbacks^.afterCompile);
				if defined (adrCallback^) {
					adrCallback^ ()}}}}}

This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.