widget-examples: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
KevinLawver (talk | contribs)  (→WSRP)  | 
				KevinLawver (talk | contribs)   | 
				||
| Line 6: | Line 6: | ||
=== Dashboard Example (plist) ===  | === Dashboard Example (plist) ===  | ||
<pre  | <pre><?xml version="1.0" encoding="UTF-8"?>  | ||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  | <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  | ||
<plist version="1.0">  | <plist version="1.0">  | ||
| Line 29: | Line 29: | ||
         <string>fight.html</string>  |          <string>fight.html</string>  | ||
</dict>  | </dict>  | ||
</plist>  | </plist></pre>  | ||
== AOL's Channel Content Modules - [http://sports.aol.com|AOL Sports example] ==  | == AOL's Channel Content Modules - [http://sports.aol.com|AOL Sports example] ==  | ||
Revision as of 16:30, 27 September 2005
Apple's Dashboard
- Uses an XML Manifest file to specify data about the "widget" (width, height, thumbnail image, title and version).
 - No requirements for markup around widgets.
 
Dashboard Example (plist)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>AllowNetworkAccess</key>
        <true/>
        <key>CFBundleDisplayName</key>
        <string>AIM Fighter</string>
        <key>CFBundleIdentifier</key>
        <string>com.aimfight.widget</string>
        <key>CFBundleName</key>
        <string>AOL Fighter</string>
        <key>CFBundleShortVersionString</key>
        <string>2.0</string>
        <key>CFBundleVersion</key>
        <string>2.0</string>
        <key>CloseBoxInsetX</key>
        <integer>5</integer>
        <key>CloseBoxInsetY</key>
        <integer>5</integer>
        <key>MainHTML</key>
        <string>fight.html</string>
</dict>
</plist>
AOL's Channel Content Modules - Sports example
- Each module (widget) has a markup envelope and some required elements that make it a module and allow for consistent styles across products.
 
Example
<div class="module themedList">
    <div class="header"><h3>Kevin's List Of Fruit</h3></div>
    <div class="body">
        <ul>
            <li>Apples</li>
            <li>Oranges</li>
        </ul>
    </div>
</div>
Konfabulator
- (need someone else to fill this in, have never built one or taken them apart)
 
WSRP
- Spec
 - SOAP envelopes to transport modules, but there is no specific formatting required for the actual content of the "portlet" (module or widget).
 
Module Response Example
<urn:getMarkupResponse xmlns:urn="urn:oasis:names:tc:wsrp:v1:types">
  <urn:markupContext> 
    <urn:mimeType>text/html; charset=UTF-8</urn:mimeType>
    <urn:markupString><![CDATA[ 
      <form method="post" 
        action="wsrp_rewrite?wsrp-urlType=blockingAction/wsrp_rewrite"
        id="wsrp_rewrite_stockForm">
        <table border="0" width="100%">
          <tr>
            <td>Enter Stock Symbol</td>
            <td><input name="symbol"></td>
          </tr> 
          <tr>
            <td><input type="submit" value="Submit"></td>
          </tr> 
        </table>
      </form> 
    ]]></urn:markupString>
    <urn:locale>en-US</urn:locale>
    <urn:requiresUrlRewriting>true</urn:requiresUrlRewriting>
    <urn:preferredTitle>Portfolio Manager</urn:preferredTitle>
  </urn:markupContext> 
  <urn:sessionContext> 
    <urn:sessionID>sessionID_1</urn:sessionID> 
    <urn:expires>300</urn:expires> 
  </urn:sessionContext> 
</urn:getMarkupResponse>