37 DOMElement _DOMParamElement;
38 DOMElement _DOMObjectElement;
42 - (id)initWithFrame:(CGRect)aFrame
45 CPLog.warn(
"CPFlashView is deprecated and it will be removed in version 1.1.");
54 _DOMObjectElement = document.createElement(
@"object");
56 _DOMObjectElement.width =
@"100%";
57 _DOMObjectElement.height =
@"100%";
58 _DOMObjectElement.style.top =
@"0px";
59 _DOMObjectElement.style.left =
@"0px";
60 _DOMObjectElement.type =
@"application/x-shockwave-flash";
61 _DOMParamElement = document.createElement(
@"param");
62 _DOMParamElement.name =
@"movie";
64 _DOMObjectElement.appendChild(_DOMParamElement);
66 _DOMElement.appendChild(_DOMObjectElement);
69 [
self _rebuildIEObjects];
78 if (_flashMovie == aFlashMovie)
81 _flashMovie = aFlashMovie;
85 _DOMParamElement.value = [aFlashMovie
filename];
86 _DOMObjectElement.data = [aFlashMovie
filename];
89 [
self _rebuildIEObjects];
104 if (key = [enumerator nextObject])
105 varString = [varString stringByAppendingFormat:@"%@=%@", key, [aDictionary
objectForKey:key]];
107 while (key = [enumerator nextObject])
108 varString = [varString stringByAppendingFormat:@"&%@=%@", key, [aDictionary
objectForKey:key]];
113 [_params setObject:varString forKey:@"flashvars"];
119 return [_params objectForKey:@"flashvars"];
127 var elements = [_paramElements allValues],
128 count = [elements count];
130 for (var i = 0; i < count; i++)
131 _DOMObjectElement.removeChild([elements objectAtIndex:i]);
135 _params = aDictionary;
137 [_params addEntriesFromDictionary:aDictionary];
141 _paramElements = @{};
143 var enumerator = [_params keyEnumerator],
146 while (_DOMObjectElement && (key = [enumerator nextObject]) !== nil)
148 var param = document.createElement(
@"param");
150 param.value = [_params objectForKey:key];
152 _DOMObjectElement.appendChild(param);
154 [_paramElements setObject:param forKey:key];
158 [
self _rebuildIEObjects];
168 - (void)_rebuildIEObjects
170 _DOMElement.innerHTML =
@"";
171 if (![_flashMovie filename])
175 paramEnumerator = [_params keyEnumerator],
178 while ((key = [paramEnumerator nextObject]) !== nil)
179 paramString = [paramString stringByAppendingFormat:@"<param name='%@' value='%@' />", key, [_params objectForKey:key]];
181 _DOMObjectElement = document.createElement(
@"object");
182 _DOMElement.appendChild(_DOMObjectElement);
184 _DOMObjectElement.outerHTML = [
CPString stringWithFormat:@"<object id=%@ classid=%@ width=%@ height=%@>%@</object>", [
self elementID], IEFlashCLSID, CGRectGetWidth([
self bounds]), CGRectGetHeight([
self bounds]), paramString];
190 return @"CPFV_" + [
self UID];
id initWithFrame:(CGRect aFrame)
CPEnumerator keyEnumerator()
A mutable key-value pair collection.
An immutable string (collection of characters).
id objectForKey:(id aKey)
CPInternetExplorerBrowserEngine
void setParameters:(CPDictionary aDictionary)
function CPBrowserIsEngine(anEngine)
CPPlatformWindow platformWindow()
id stringWithFormat:(CPString format, [,] ...)