2008-01-08 01:33:37 +0000
Super flexible dropdown (or dropup) menu for pano-to-pano navigation in an FPP presentation. Contributed by Patrick Cheatham. Easy to use and powerful! Now at Version 3.0.
You won't need to hand-code a Flash ComboBox again! This will allow you to define the panorama names and links from within your FPP XML document, making adding a dropdown a truly dynamic experience.
The panorama names you define show up as the label for the menu, and the links are used to load new panoramas into your presentation. As an added bonus, it will also load panoramas from a hotspot click in your FPP presentation!
demo:
Setting all parameters
Setting only panorama links
price: $20

Once purchased, Patrick will email you the Plugin and example files -- usually within 24-48 hours. Please contact Patrick with any questions. Read on for the full explanation!
This plugin works like other FPP plugins -- you put it on a layer inside the element, then you give it some information in its own "cl_dropdown_menu" element.
You can define:
* Width of the menu
* Height of the menu (when closed)
* Row count; how many rows to show (when menu is open), before adding a scrollbar
* X and Y (left/top) position for menu
---- negative values (ex: -50) are figured from right and/or bottom edges of presentation
---- positive values (ex: 32) are figured from left and/or top edges of presentation
* MinX and MinY values for the menu
---- tell the menu not to go past a minimum top/left coordinate (when using negative X/Y)
* Font for the menu
---- if font not installed on user's end, then it is whatever Flash defaults to (_sans, I think)
* Font size for the menu
* Font color for the menu
---- in Hexadecimal format "000000" (no "0x" needed)
* Label that appears for each panorama on the menu
---- can include spaces or special characters
* Name/Link to the respective panorama's file(s)
---- ie, "panoName"
* Type of transition between panoramas
---- can be any of the standard FPP transition types
* Time for transition between panoramas
---- time/transition are for ALL panoramas
---- in the same format as for other FPP functions (ex: 1000 = 1 second)
* XML file loading (or not) for the panoramas
---- root: XML file is at at ROOT of tour
---- pano: XML is on same level as panorama file(s)XML
---- none: No XML
---- YourName: XML file is at some other place. Include path only. By default, the XML will always have same filename as pano, unless you choose "none"; also note that this is tour-wide: that is, whatever you define for XMLPath will happen for all of the panoramas. Include trailing slash "/" at end of path.
---- This XML setting can be over-ridden by adding a standard &xml_file= parameter to the end of name/link. Cool!
* Leash
---- the standard FPP leash settings (lock, free, follow)
---- This Leash setting can be over-ridden by adding a standard &leash= parameter to the end of name/link.
*Pan and Tilt Limits (in conjunction with the FPP Limits plugin)... No more extra XML files just to set Limits!
* Your panoramas
* Your own Hotspot: You can add the attribute "cl_loadViaDropDownMenu" to your hotspots. Simply make its value "next", "previous" or one of your panoNames, and off you go! Note that it does not handle extra parameters added to the panoName (such as "&pan="). If you use next or previous, it will cycle through your panoramas, and load the next one in the sequence -- wrapping around to the first and last panoramas!
* Now you can also use a hotspot to open and close the DropdownMenu... Nice!
demo:
Setting all parameters
Setting only panorama links
Notes on the menuMinX and menuMinY parameters:
If you're right- or bottom-aligning the dropdown menu by using negative values for menuX and menuY, the menu moves with the window as it's resized.
If the window is resized smaller, pushing the menu left, it's possible the menu will overlap other hotspots in your presentation. You can use menuMinX and menuMinY to tell the menu not to go past a minimum top/left coordinate.
As with the other parameters, menuMinX and menuMinY are optional. You can use one, both or neither. These only work if your menu is right- or bottom-aligned with the window.
See example code below (in the comments section) for different ways of informing the DropDown menu Plugin!
Defaults settings, for any parameter that you omit:
* Transition Time: 1000
* Transition Type: stripes
* Leash: Free
* XML Path: none
* Menu X: 20 (pixels from top left)
* Menu Y: 20 (pixels from top left)
* Menu MinX: 0
* Menu MinY: 0
* Rows: 10
* Menu Width: 150 pixels
* Menu Height: 22 pixels
* Menu Font: Arial
* Menu Font Size: 12
* Menu Font Color: 000000 (black)
* useLimits: no
* THERE ARE NO DEFAULT LABELS/LINKS. If you don't add your own panoramas, it won't work. 
demo:
Setting all parameters
Setting only panorama links
price: $20

Once purchased, Patrick will email you the Plugin and example files -- usually within 24-48 hours! Please contact Patrick with any questions.
Cheers!
And the example code is...
XML example (provided in download) of all parameters:
<parameters>
layer_80 = files/cl_dropdown_menu.swf
layer_80 = files/Limits.swf
layer_80 = files/hotspots.swf
</parameters>
<cl_dropdown_menu>
transitionTime = 500
tranSitIonType = stripes
xMlPath = pano
menux = 50
menuy = 20
menuwidth = 400
menuheight = 22
menufont = Geneva
menuFontsize = 12
menufontcoLor = FF0000
useLimits=yes
My first Panorama=path/to/My/panoRama&panHome=120&pan_min=20&pan_max=180
& 'another' panorama=path/to/My/other/panoRama&xml_file=&pan_min=20&pan_max=270&tilt_min=-60&tilt_max=40
My QTVR=path/to/my/qtvr&<strong>panoType=mov</strong>&pan=20&tilt=20&zoom=.60&xml_file=path/to/My/file.xml
</cl_dropdown_menu>
<hotspots>
<global>
<pano></pano>
<!--// USE DROPDOWN PLUGIN TO LOAD A PANORAMA USING A HOTSPOT //-->
<spot
id="loadAnotherPano"
url="files/my/cool/image.png"
cl_loadViaDropDownMenu="path/to/My/other/panoRama"
/>
<!--// USE DROPDOWN PLUGIN TO LOAD previous PANORAMA USING A HOTSPOT //-->
<spot
id="loadAnotherPano"
url="files/my/leftArrow/image.png"
cl_loadViaDropDownMenu="previous"
/>
<!--// USE DROPDOWN PLUGIN TO LOAD next PANORAMA USING A HOTSPOT //-->
<spot
id="loadAnotherPano"
url="files/my/rightArrow/image.png"
cl_loadViaDropDownMenu="next"
/>
<!--// USE HOTSPOT TO OPEN DROPDOWN MENU //-->
<spot
id="openMenu"
url="files/my/openArrow/image.png"
onClick="external.cl_dropdown_menu.open=true;"
/>
<!--// USE HOTSPOT TO CLOSE DROPDOWN MENU //-->
<spot
id="closeMenu"
url="files/my/closeArrow/image.png"
onClick="external.cl_dropdown_menu.open=false;"
/>
</global>
</hotspots>
</panorama>