Author |
Topic  |
|
soil
Infrequent Poster
China
13 Posts |
Posted - 03/22/2012 : 02:22:28
|
I have two questions. First,I have make an animation via Strata live and export it to html ,and in my browser the animation works well!But in default, animation buttons are placed in the front left of may broswer.How can I placed them in other place of my broswer page? And how can I add customized animation buttons to replace the default text button?
Image Insert:
 16.5 KB
Image Insert:
 10.18 KB Sceond,as you know,after we have finished animations and export the animations via Strata live,we can view and control our animations in a broswer (ie. Microsoft internet explorer).But in the browser if we use mouse's middle button, the screen will flicker! I have tested many other Strata live's animaion, and all of them have the same problem,for example,IBM'S power_795 animation(http://ibmtvdemo.edgesuite.net/servers/power/demos/power_795/index.html). How can we deal with the problem? |
Edited by - soil on 03/22/2012 02:40:50 |
|
jesmith
A Regular
 
USA
214 Posts |
Posted - 03/22/2012 : 10:19:24
|
IBM did that by writing custom Meson code. Crack open the UI.jar file and change the .txt file in there however you like.
As for the flicker, that sounds like a Java bug that you should report to Oracle.
-Joshua |
 |
|
soil
Infrequent Poster
China
13 Posts |
Posted - 03/22/2012 : 18:43:48
|
Thanks a million! But as you know,after exported by Strata Live there are typically 6 files,ie.strata.jar,mesonApplet.jar,rasterGluon.jar,sceneGluon.jar, xxxuserdefinedXXX.html and xxxuserdefinedXXX.jar. I can't find "UI.jar". How can I get or find a file named UI.jar ? Does it need special operations in Strata Live? |
 |
|
jesmith
A Regular
 
USA
214 Posts |
Posted - 03/23/2012 : 07:47:08
|
In your case, the user interface code is in "strata.jar"
-Joshua |
 |
|
soil
Infrequent Poster
China
13 Posts |
Posted - 03/23/2012 : 14:34:48
|
OK,first thank you for your quick answer! Then I have another three questions. First,when I unzipped my strata.jar file ,I find the folder have some gif-type files and a file named "template.txt". Do you mean I can add special buttons' photo looking like the IBM Power795's Strata live animation in the folder and edit the file named "template.txt" to reach my aim?
Second,can you offer some tutorials or examples about how to change the default location of animation buttons ?And how to add beautiful buttons to replace the default text-style button?
Third, when downloaded the IBM Power795's Strata live animation from its page,I find the animation project includes those files:1)index.html,2)model.jar,3)model_ui.jar,4)mesonCombined.jar,5)externalweb.jar,and its files' structure is diffrent from my animation's file structure explored from Strata live animation .And that's why? |
Edited by - soil on 03/23/2012 14:40:01 |
 |
|
soil
Infrequent Poster
China
13 Posts |
Posted - 03/27/2012 : 02:24:51
|
NEED HELP!!! |
 |
|
soil
Infrequent Poster
China
13 Posts |
Posted - 03/27/2012 : 19:20:14
|
Disappointing!None will answer me. |
 |
|
Julie A.
Admin
47 Posts |
|
soil
Infrequent Poster
China
13 Posts |
|
soil
Infrequent Poster
China
13 Posts |
Posted - 03/28/2012 : 12:10:28
|
Following is the content of my template.txt file,can you tell me where is wrong? |
 |
|
soil
Infrequent Poster
China
13 Posts |
Posted - 03/28/2012 : 12:12:12
|
iskeyvalid=true; bcolor="FF000000"; tcolor="FFFFFFFF"; logolayer=1;
lengthMethod=Meson.getMethod(^class="java.lang.String",^method="length",^args=[])
/* soil language=Meson.language */ Meson.gluon("com.kaon.meson.scene.SceneGluon") unitsMul={Scene.3d.inch}; unitsLabel={" "~l10n("in")} templateModelFile="model.jar"; templateUIFile="model_ui.jar";
Shadow.Shadow_3d.alpha=0.0
/* Text Formating */ /* soil */ Meson.addContextMenu(^applet="Applet.Primary",^label="Inches") Meson.addContextMenu(^applet="Applet.Primary",^label="Centimeters") Trigger.GoInch.test={Applet.Primary.menuItem=="Inches"} Trigger.GoInch.exec={unitsMul={Scene.3d.inch};unitsLabel={" "~l10n("in")}} Trigger.GoCM.test={Applet.Primary.menuItem=="Centimeters"} Trigger.GoCM.exec={unitsMul={Scene.3d.cm};unitsLabel={" "~l10n("cm")}}
Meson.addContextMenu(^applet="Applet.Primary",^label="-")
Trigger.GoEn.test={Applet.Primary.menuItem==I18N.en.lang}; Trigger.GoEn.exec={language="en"} Trigger.GoZh.test={Applet.Primary.menuItem==I18N.zh.lang}; Trigger.GoZh.exec={language="zh"}
/* soil */
l10n={@("I18N."~language~.~#arg)} I18N.extends="" /* soil */ I18N.Class.showOnMenu=true /* soil */ I18N.Class<< .lang="English" .in="inches" .cm="centimeters" .drag="Drag to Measure" .moveonHint="Click & Hold Mouse Button Over Model to Move" .moveoffHint="Click Left Button to Enter Move Mode" .zoominHint="Click Mouse Button to Zoom In" .zoomoutHint="Click Mouse Button to Zoom Out" .measureonHint="Click Mouse Button and Drag to Measure (Press i Key for Inches, c Key for Centimeters)" .measureoffHint="Click Mouse Button to Enter Measure Mode" .noteonHint="Click Mouse Button to Display Notes" .noteoffHint="Click Mouse Button to Hide Notes" .resetHint="Click Mouse Button to Reset View" .rotateonHint="Click & Hold Mouse Button Over Model to Rotate" .rotateoffHint="Click Left Button to Enter Rotate Mode" .productDemoLabel="Product Demonstrations" .style="Normal" >> /* soil */ I18N.zh<< .lang="繁體中文" .in="英寸" .cm="厘米" .drag="阻力对措施" .moveonHint="移动" .moveoffHint="移动模式" .zoominHint="缩小" .zoomoutHint="放大" .measureonHint="测量" .measureoffHint="测量模式" .noteonHint="显示 Notes" .noteoffHint="隐藏Notes" .resetHint="重设" .rotateonHint="旋转" .rotateoffHint="旋转模式" .productDemoLabel="产品演示" .style="Large" >>
I18N.en.showOnMenu?Meson.addContextMenu(^applet="Applet.Primary",^label=I18N.en.lang) I18N.zh.showOnMenu?Meson.addContextMenu(^applet="Applet.Primary",^label=I18N.zh.lang)
language=(noLanguages?"en":Meson.language) language=="en"?Trigger.GoInch.exec():Trigger.GoCM.exec() customizeUI() /* soil */ Style.Bullet<< .marginLeft=15 .contentPre="%BulletMark{\u25B6}\t" >> Style.BulletMark<< .marginLeft=0 .color="0000FF" .fontWeight=_BOLD >>
Style.BoldText<< .fontWeight=_BOLD >>
/* 3D model scene */ Scene.3d<< .width={2.7*(Display.Primary.width/3)} .height={(Display.Primary.height)-50} .centerY={(Scene.3d.height/3.2)} .x={showDetailToggle?-230:-200} .y=60 .enabled=false >>
/* 3D model and model UI pointers */ Scene.3d.dataSource="Data.Model" Data.Model.scene="Scene.3d" Data.Model.url=templateModelFile
Style.Loading<< .fontWeight=_BOLD .fontSize=18 .textAlign=_CENTER >>
Image.Loading<< .layer=20 .title="Loading-Please Wait." .text={"%Loading{"~Image.Loading.title~"}"} .x={Display.Primary.width/2}; .y={Display.Primary.height/2}; .anchor=_C >>
Trigger.3DLoad.test={Scene.3d.loaded&Data.Model.imagePercentLoaded>=25} Trigger.3DLoad.exec={ showScene; Image.Loading.layer=-1; Scene.3d.enabled=true; Anim.FadeTools.enabled=true; Image.Tools.layer=50; }
showScene={customizeModel();Scene.3d.layer=(iskeyvalid?1:-1);}
Style.InvalidKey<< .fontWeight=_BOLD .fontSize=30 .textAlign=_CENTER >>
Image.InvalidKey<< .x=50 .y=300 .anchor=_NW .layer=(iskeyvalid?-1:1) .title="Content License has Expired" .text={"%InvalidKey{"~Image.InvalidKey.title~"}"} .enabled=false >>
Trigger.3DUnpacked.test={Scene.3d.loaded&Data.Model.imagePercentLoaded>90} Trigger.3DUnpacked.exec={Timer.HSIt.start}
Trigger.LoadUI.test={Scene.3d.loaded} Trigger.LoadUI.exec={Data.ModelUI.url=templateUIFile}
/* Borders */ Image.TopBorder<< .x=0 .y=0 .layer=1 .buffer=bcolor .width={Display.Primary.width} .height=60 .enabled=false >>
Image.BottomBorder<< .x=0 .y={Display.Primary.height-60} .layer=1 .buffer=bcolor .width={Display.Primary.width} .height=60 .enabled=false >>
/* Product Title */ Style.ProductTitle<< .fontWeight=_BOLD .color=tcolor .fontSize=20 .textAlign=_CENTER >>
Image.ProductTitle<< .x=75 .y=20 .anchor=_NW .layer=1 .title="" .text={"%ProductTitle{"~Image.ProductTitle.title~"}"} .enabled=false >>
Image.Logo<< .x={Display.Primary.width-20} .y=6 .anchor=_NE .layer=logolayer .alpha=1 .dataSource=Meson.documentBase .file="logo.png" .enabled=false; >>
AppControlProductTitle.extends="" AppControlProductTitle.Class<< .new={ Image.ProductTitle.title={l10n("$")->text}; } >>
/* Navigation Tool Bar */ showNoteToggle={ShowNotesByDefault==true?true:false} showNote={showNoteToggle}
Image.Tools<< .file="toolsColor.gif@toolsMask.gif" .y={Display.Primary.height-Image.Tools.height-80} .x={showDetailToggle?(Display.Primary.width/6):(Display.Primary.width/6)+375} .anchor=_NW .states=["off","seloff","on","selon"] .alpha=1 .layer=-1 >>
panLock=false panLocked={panLock&(allPlayingScripts==[])}
Trigger.PanLock.test={panLocked&(Scene.3d.mode!=_MOVE)} Trigger.PanLock.exec={Scene.3d.mode=_MOVE} Trigger.PanUnlock.test={!panLocked} Trigger.PanUnlock.exec={Scene.3d.mode=_ROTATE}
Style.ToolLabel<< .fontSize=10 .fontWeight=_BOLD .textAlign=_CENTER .color=606060 >>
ToolLabel.extends="Area" ToolLabel.Class<< .image="Image.Tools" .cursor=_HAND .enabled={$$.available&allPlayingScripts==[]} .state="off" .available=true .y=0 .width=52 .height=52 .new={ Image.$_lbl.parent="Image.Tools"; Image.$_lbl.x={$$.x+$$.width/2}; Image.$_lbl.y={(Meson.isMac?"44":"42")}; Image.$_lbl.anchor=_C; Image.$_lbl.enabled=false; Trigger.$.test={$$.press}; Trigger.$.exec={ClickOn$()}; } >>
ToolLabel<< .Rotate.x=0 .Rotate.available={!panLocked} .Zoom.x=52 .Zoom.y=0 .Zoom.height=26 .Zoom.width=54; .Measure.x=52 .Measure.y=27 .Measure.height=26 .Measure.width=54; .Measure.available={!panLocked} .Reset.x=108 .Reset.y=0 .Reset.height=26 .Reset.width=28 .Note.x=108 .Note.y=26 .Note.width=28 .Note.height=26 .Note.state={showNoteToggle?"on":"off"} .Move.x=136 .Move.width=47 >>
keyPressed={Image.Tools.layer>=0?Display.Primary.key:""}
Button.extends="Area" Button.Class<< .image="Image.Tools" .keyDown={$$.enabled&(Scene.3d.mode~keyPressed==Button.$.modeKey)} .tool="" .state={($$.hover|$$.keyDown?"sel":"")~$$.tool->state} .new={ Ticker.$.order={Button.$.press|Button.$.keyDown?1:-1}; Ticker.$.exec={"View.3d."~Button.$.attr=@("View.3d."~Button.$.attr)+Button.$.step*Meson.frameStep}; } >>
Ticker.TTop.exec={View.3d.setDesiredPhi(View.3d.desiredPhi+Button.TTop.step*Meson.frameStep)} Ticker.TBottom.exec={View.3d.setDesiredPhi(View.3d.desiredPhi+Button.TBottom.step*Meson.frameStep)}
Trigger.AnyKey.test={keyPressed!=""}
Trigger.AnyKey.exec={Anim.FadeTools.enabled=false;Image.Tools.alpha=1} Trigger.RestoreFade.test={Display.Primary.press} Trigger.RestoreFade.exec={Anim.FadeTools.enabled=true}
Trigger.Space.test={keyPressed==" "} Trigger.Space.exec={Scene.3d.mode=(Scene.3d.mode==_ROTATE?_MOVE:_ROTATE)} Trigger.Enter.test={keyPressed==_ENTER} Trigger.Enter.exec={ClickOnReset()}
Area.ZoomIn.image="Image.Tools" Area.ZoomIn.state={Area.ZoomIn.press?"on":Area.ZoomIn.hover?"seloff":"off"} Area.ZoomIn.cursor=_HAND Trigger.ZoomIn.test={Area.ZoomIn.press|keyPressed=="+"|keyPressed=="="} Trigger.ZoomIn.exec={Scene.3d.distance=0;View.3d.setDesiredFov(View.3d.desiredFov*0.8)}
Area.ZoomOut.image="Image.Tools" Area.ZoomOut.state={Area.ZoomOut.press?"on":Area.ZoomOut.hover?"seloff":"off"} Area.ZoomOut.cursor=_HAND Trigger.ZoomOut.test={Area.ZoomOut.press|keyPressed=="-"} Trigger.ZoomOut.exec={Scene.3d.distance=0;View.3d.setDesiredFov(View.3d.desiredFov*1.2)}
Area.ZoomIn.x=52;Area.ZoomIn.y=0;Area.ZoomIn.width=26;Area.ZoomIn.height=26 Area.ZoomOut.x=80;Area.ZoomOut.y=0;Area.ZoomOut.width=26;Area.ZoomOut.height=26
Trigger.GoInch.test={keyPressed=="i"} Trigger.GoInch.exec={unitsMul={Scene.3d.inch};unitsLabel={" "~l10n("in")}} Trigger.GoCM.test={keyPressed=="c"} Trigger.GoCM.exec={unitsMul={Scene.3d.cm};unitsLabel={" "~l10n("cm")}}
Area.Move.state={Scene.3d.mode==_MOVE?(Area.Move.hover?"selon":"on"):Area.Move.hover?"seloff":"off"} Area.Rotate.state={Scene.3d.mode==_ROTATE?(Area.Rotate.hover?"selon":"on"):Area.Rotate.hover?"seloff":"off"} Area.Measure.state={Scene.3d.mode==_MEASURE?(Area.Measure.hover?"selon":"on"):Area.Measure.hover?"seloff":"off"} Area.Reset.state={Area.Reset.press?"on":Area.Reset.hover?"seloff":"off"} Area.Note.state={showNoteToggle?(Area.Note.hover?"selon":"on"):Area.Note.hover?"seloff":"off"} Area.Reset.enabled=true
Trigger.NoteClick.test={Area.Note.press} Trigger.NoteClick.exec={showNoteToggle=!showNoteToggle}
Style.Tip<< .fontSize=11 >>
Image.RotateHint<< .parent="Image.Tools" .text={"%Tip{"~l10n(Scene.3d.mode==_ROTATE?"rotateonHint":"rotateoffHint")~"}"} .anchor=_C .x={Image.Tools.width/2} .y=65 .alpha=0 .enabled=false >> Anim.RotateHintA<< .attr="Image.RotateHint.alpha" .rate={Area.Rotate.hover?0.33:2} .goal={Area.Rotate.hover?1:0} >>
Image.ZoomInHint<< .parent="Image.Tools" .text={"%Tip{"~l10n("zoominHint")~"}"} .anchor=_C .x={Image.Tools.width/2} .y=65 .alpha=0 .enabled=false >> Anim.ZoomInHintA<< .attr="Image.ZoomInHint.alpha" .rate={Area.ZoomIn.hover?0.33:2} .goal={Area.ZoomIn.hover?1:0} >>
Image.ZoomOutHint<< .parent="Image.Tools" .text={"%Tip{"~l10n("zoomoutHint")~"}"} .anchor=_C .x={Image.Tools.width/2} .y=65 .alpha=0 .enabled=false >> Anim.ZoomOutHintA<< .attr="Image.ZoomOutHint.alpha" .rate={Area.ZoomOut.hover?0.33:2} .goal={Area.ZoomOut.hover?1:0} >>
Image.MeasureHint<< .parent="Image.Tools" .text={"%Tip{"~l10n(Scene.3d.mode==_MEASURE?"measureonHint":"measureoffHint")~"}"} .anchor=_C .x={Image.Tools.width/2} .y=65 .alpha=0 .enabled=false >> Anim.MeasureHintA<< .attr="Image.MeasureHint.alpha" .rate={Area.Measure.hover?0.33:2} .goal={Area.Measure.hover?1:0} >>
Image.ResetHint<< .parent="Image.Tools" .text={"%Tip{"~l10n("resetHint")~"}"} .anchor=_C .x={Image.Tools.width/2} .y=65 .alpha=0 .enabled=false >>
Anim.ResetHintA<< .attr="Image.ResetHint.alpha" .rate={Area.Reset.hover?0.33:2} .goal={Area.Reset.hover?1:0} >>
Image.NoteHint<< .parent="Image.Tools" .text={"%Tip{"~l10n(showNoteToggle?"noteoffHint":"noteonHint")~"}"} .anchor=_C .x={Image.Tools.width/2} .y=65 .alpha=0 .enabled=false >>
Anim.NoteHintA<< .attr="Image.NoteHint.alpha" .rate={Area.Note.hover?0.33:2} .goal={Area.Note.hover?1:0} >>
Image.MoveHint<< .parent="Image.Tools" .text={"%Tip{"~l10n(Scene.3d.mode==_MOVE?"moveonHint":"moveoffHint")~"}"} .anchor=_C .x={Image.Tools.width/2} .y=65 .alpha=0 .enabled=false >>
Anim.MoveHintA<< .attr="Image.MoveHint.alpha" .rate={Area.Move.hover?0.33:2} .goal={Area.Move.hover?1:0} >>
ResetSerial=0 ClickOnReset={foreach(^elem="i";^in=allPlayingScripts;^do={#i->stop});Scene.3d.playInstantly(Scene.3d.runtime->getInitID());ResetSerial=ResetSerial+1} ClickOnMeasure={Scene.3d.mode=_MEASURE} ClickOnMove={Scene.3d.mode=_MOVE} ClickOnRotate={Scene.3d.mode=_ROTATE} ClickOnZoom={Scene.3d.distance=0}
Area.Tools.y={Image.Tools.y} Area.Tools.boxPick=true
Anim.FadeTools<< .attr="Image.Tools.alpha" .goal={Area.Tools.hover?1:0.4} .rate={Area.Tools.hover?2:0.5} .enabled=true >>
/* Measure function Image.Measure0<< .file="measure.gif" .parent="Scene.3d" .layer={Scene.3d.mode==_MEASURE&Scene.3d.distance>0?1:-1} .anchor=_C .x={Scene.3d.pressX} .y={Scene.3d.pressY} >>
Image.Measure1<< .file="measure.gif" .parent="Scene.3d" .layer={Scene.3d.mode==_MEASURE&Scene.3d.distance>0?1:-1} .anchor=_C .x={Scene.3d.dragX} .y={Scene.3d.dragY} >>
Style.Dist<< .fontSize=16 .color=aqua .dropShadow="8000" >>
Image.Distance<< .text={#d=Scene.3d.distance*unitsMul;"%Dist{"~(#d==0?l10n("drag"):Raster.formatFloat(^value=#d,^format=0.1)~unitsLabel)~"}"} .layer={Scene.3d.mode==_MEASURE?1:-1} .anchor=_S .x={(Image.Measure0.x+Image.Measure1.x)/2} .y={(Image.Measure0.y+Image.Measure1.y)/2-10} >>
/* Note hotspots */ ActionLabelLayout.extends="" ActionLabelLayout.Class<< .imageAnchor=_NW .imageX=0 .imageY=0 .textAnchor=_NW .textX=0 .textY=0 .width=0 .height=0 >>
tiMaxWidth={("ActionLabelText."~#inst~"_text")->width > ("ActionLabelImage."~#inst~"_image")->width ? ("ActionLabelText."~#inst~"_text")->width : ("ActionLabelImage."~#inst~"_image")->width} tiMaxHeight={("ActionLabelText."~#inst~"_text")->height > ("ActionLabelImage."~#inst~"_image")->height ? ("ActionLabelText."~#inst~"_text")->height : ("ActionLabelImage."~#inst~"_image")->height} tiSumWidth={("ActionLabelText."~#inst~"_text")->width + ("ActionLabelImage."~#inst~"_image")->width} tiSumHeight={("ActionLabelText."~#inst~"_text")->height + ("ActionLabelImage."~#inst~"_image")->height}
ActionLabelLayout.L<< .imageAnchor=_NW .imageX=0 .imageY=0 .textAnchor=_NW .textX=0 .textY=0 .width={tiMaxWidth(^inst=#inst)} .height={tiMaxHeight(^inst=#inst)} >>
ActionLabelLayout.Ltopcenter<< .imageAnchor=_N .imageX={("ActionLabel."~#inst)->width / 2} .imageY=0 .textAnchor=_N .textX={("ActionLabel."~#inst)->width / 2} .textY={("ActionLabelImage."~#inst~"_image")->height} .width={tiMaxWidth(^inst=#inst)} .height={tiSumHeight(^inst=#inst)} >>
ActionLabelLayout.Ltopleft<< .imageAnchor=_NW .imageX=0 .imageY=0 .textAnchor=_NW .textX=0 .textY={("ActionLabelImage."~#inst~"_image")->height} .width={tiMaxWidth(^inst=#inst)} .height={tiSumHeight(^inst=#inst)} >>
ActionLabelLayout.Ltopright<< .imageAnchor=_NE .imageX={("ActionLabel."~#inst)->width} .imageY=0 .textAnchor=_NE .textX={("ActionLabel."~#inst)->width} .textY={("ActionLabelImage."~#inst~"_image")->height} .width={tiMaxWidth(^inst=#inst)} .height={tiSumHeight(^inst=#inst)} >>
ActionLabelLayout.Lbottomcenter<< .imageAnchor=_N .imageX={("ActionLabel."~#inst)->width / 2} .imageY={("ActionLabelText."~#inst~"_text")->height} .textAnchor=_N .textX={("ActionLabel."~#inst)->width / 2} .textY=0 .width={tiMaxWidth(^inst=#inst)} .height={tiSumHeight(^inst=#inst)} >>
ActionLabelLayout.Lbottomleft<< .imageAnchor=_NW .imageX=0 .imageY={("ActionLabelText."~#inst~"_text")->height} .textAnchor=_NW .textX=0 .textY=0 .width={tiMaxWidth(^inst=#inst)} .height={tiSumHeight(^inst=#inst)} >>
ActionLabelLayout.Lbottomright<< .imageAnchor=_NE .imageX={("ActionLabel."~#inst)->width} .imageY={("ActionLabelText."~#inst~"_text")->height} .textAnchor=_NE .textX={("ActionLabel."~#inst)->width} .textY=0 .width={tiMaxWidth(^inst=#inst)} .height={tiSumHeight(^inst=#inst)} >>
ActionLabelLayout.Lleftcenter<< .imageAnchor=_W .imageX=0 .imageY={("ActionLabel."~#inst)->height / 2} .textAnchor=_W .textX={("ActionLabelImage."~#inst~"_image")->width} .textY={("ActionLabel."~#inst)->height / 2} .width={tiSumWidth(^inst=#inst)} .height={tiMaxHeight(^inst=#inst)} >>
ActionLabelLayout.Llefttop<< .imageAnchor=_NW .imageX=0 .imageY=0 .textAnchor=_NW .textX={("ActionLabelImage."~#inst~"_image")->width} .textY=0 .width={tiSumWidth(^inst=#inst)} .height={tiMaxHeight(^inst=#inst)} >>
ActionLabelLayout.Lleftbottom<< .imageAnchor=_SW .imageX=0 .imageY={("ActionLabel."~#inst)->height} .textAnchor=_SW .textX={("ActionLabelImage."~#inst~"_image")->width} .textY={("ActionLabel."~#inst)->height} .width={tiSumWidth(^inst=#inst)} .height={tiMaxHeight(^inst=#inst)} >>
ActionLabelLayout.Lrightcenter<< .imageAnchor=_W .imageX={("ActionLabelText."~#inst~"_text")->width} .imageY={("ActionLabel."~#inst)->height / 2} .textAnchor=_W .textX=0 .textY={("ActionLabel."~#inst)->height / 2} .width={tiSumWidth(^inst=#inst)} .height={tiMaxHeight(^inst=#inst)} >>
ActionLabelLayout.Lrighttop<< .imageAnchor=_NW .imageX={("ActionLabelText."~#inst~"_text")->width} .imageY=0 .textAnchor=_NW .textX=0 .textY=0 .width={tiSumWidth(^inst=#inst)} .height={tiMaxHeight(^inst=#inst)} >>
ActionLabelLayout.Lrightbottom<< .imageAnchor=_SW .imageX={("ActionLabelText."~#inst~"_text")->width} .imageY={("ActionLabel."~#inst)->height} .textAnchor=_SW .textX=0 .textY={("ActionLabel."~#inst)->height} .width={tiSumWidth(^inst=#inst)} .height={tiMaxHeight(^inst=#inst)} >>
ActionLabelText.extends="Image" ActionLabelText.Class<< .inst="" .states=["plain","hover"] .anchor={$$.parent->layout->textAnchor(^inst=$$.inst)} .x={$$.parent->layout->textX(^inst=$$.inst)} .y={$$.parent->layout->textY(^inst=$$.inst)} .layer=9 .text={$$.parent->textValue} .enabled=false .new={ Area.$.image="$$"; Area.$.state={@("Area."~$$.inst~".state")} } >> ActionLabelImage.extends="Image" ActionLabelImage.Class<< .inst="" .anchor={$$.parent->layout->imageAnchor(^inst=$$.inst)} .x={$$.parent->layout->imageX(^inst=$$.inst)} .y={$$.parent->layout->imageY(^inst=$$.inst)} .layer={$$.file == "" ? -1 : 9} .file={$$.parent->imageFile} .dataSource="Data.ModelUI"; .enabled=false >>
ActionLabel.extends="Image" ActionLabel.Class<< .anchor=_S .layout={"ActionLabelLayout.L"~l10n("$")->imagePlacement~l10n("$")->imageAlignment} .width={$$.layout->width(^inst="$")} .height={$$.layout->height(^inst="$")} .textValue={l10n("$")->text} .imageFile={l10n("$")->imageFile} .enabled=false .new={ ActionLabelText.$_text.parent="ActionLabel.$"; ActionLabelText.$_text.inst="$"; ActionLabelImage.$_image.parent="ActionLabel.$"; ActionLabelImage.$_image.inst="$"; } >>
ActionTrigger.extends="" ActionTrigger.Class<< .inst="$" .script="" .subGroup="" .trackingURL="" .onClick="" .subMembers=["$$"] .runnableInst="$" .actionType="" .jumpToTime=-1 .runnable=false .hasScripts={^h=false;foreach(^elem="j";^in=$$.subMembers;^do={#j->script!=""?#h=true});^h} .updateRunnable={($$.runnable=($$.hasScripts&allPlayingScripts==[]))?(^w="";$$.runnableInst="";foreach(^elem="j";^in=$$.subMembers;^do={Scene.3d.testPreconditions(#j->script)?(#w=true,$$.runnableInst=#j->inst)});$$.runnable=^w)} .actionPress=false .new={ Trigger.$.test={ActionTrigger.$.actionPress}; Trigger.$.exec={allPlayingScripts==[]?foreach(^elem="i";^in=$$.subMembers;^do={#i->script!=""?((#i->actionType=="still"?(Scene.3d.playStartSlow(#i->script)?Scene.3d.jumpToTime(^script=#i->script;^time=#i->jumpToTime)):Scene.3d.playStartSlow(#i->script))?TrackUserAction(#i->trackingURL))});$$.onClick()}; Ticker.$_urun.exec={ActionTrigger.$.updateRunnable()}; Ticker.$_urun.order=20; } >>
Style.Hot<< .fontSize=14 .color="000" .textAlign=_LEFT .margin=5 >>
Image.HSIndicator<< .file="hotColor.gif@hotMask.gif" .parent="Scene.3d" .anchorX=13 .anchorY=13 .enabled=false .layer=-1 >> Anim.HSIAlpha<< .attr="Image.HSIndicator.alpha" .rate=0.5 .goal={showNote?1:0} >>
HotSpot.Class.enabled=true;
HotImage.extends="" HotImage.Class<< .lineColor="ff0" .x={Scene.3d.absX+(($$.anchor=="_S"|$$.anchor=="_N")?Scene.3d.width/2:HotSpot.3d_$.x)+($$.anchorX>0?-22:22)} .y={Scene.3d.absY+(HotSpot.3d_$.y-$$.floatUpBy*(($$.anchor=="_SE"|$$.anchor=="_S"|$$.anchor=="_SW")?1:-1))} .floatUpBy=9 .anchor={"_"~(HotSpot.3d_$.y>($$.height+$$.floatUpBy)?"S":"N")~(($$.width>Display.Primary.width/2)?"":((HotSpot.3d_$.x+Scene.3d.absX+$$.width>Display.Primary.width-25)?"E":"W"))} .offLayer=-1 .layer={HotImage.$.forceShow|HotSpotButton.$.active&HotSpot.3d_$.hover?100:HotImage.$.offLayer} .showFlag={HotSpotButton.$.active&(l10n("$")->text!="")&!HotSpot.3d_$.hover} .enabled=false .buffer="cfff" .forceShow=false .textValue={"%Hot{"~l10n("$")->text~"}"} .dx={(Scene.3d.absX+HotSpot.3d_$.x)-$$.x} .dy={(Scene.3d.absY+HotSpot.3d_$.y)-$$.y-$$.height/2} .new={ Image.HSIndicator.offsets=Image.HSIndicator.offsets++[{HotImage.$.showFlag?HotSpot.3d_$.x:_N},{HotSpot.3d_$.y}]; Trigger.$_init.test={$$.layer>=0}; Trigger.$_init.exec={$$.init()}; } .init={ ActionLabel.Hot.x={$$.x}; ActionLabel.Hot.y={$$.y}; ActionLabel.Hot.anchor={$$.anchor}; ActionLabel.Hot.enabled={$$.enabled}; ActionLabel.Hot.buffer={$$.buffer}; ActionLabel.Hot.textValue={$$.textValue}; ActionLabel.Hot.layer={$$.layer}; ActionLabel.Hot.alpha=0; ActionLabel.Hot.inst="$"; ActionLabel.Hot.rebuild=true; $$.width={ActionLabel.Hot.width}; $$.height={ActionLabel.Hot.height}; $$.anchorX={ActionLabel.Hot.anchorX}; $$.anchorY={ActionLabel.Hot.anchorY}; Anim.Hot_inout.attr="ActionLabel.Hot.alpha"; Anim.Hot_inout.rate=2; Anim.Hot_inout.goal={$$.forceShow|HotSpot.3d_$.hover&Area.3d.hover&!Area.3d.press?1:0}; ImageBorder.Hot.color={$$.lineColor}; Image.Hot_pt.enabled=false; Image.Hot_pt.parent="ActionLabel.Hot"; Image.Hot_pt.layer={(!$$.forceShow|$$.anchor==_S|$$.anchor==_N|(ActionLabel.Hot.alpha<1))?-1:0}; Image.Hot_pt.anchor=_C; Image.Hot_pt.x={$$.anchorX+($$.anchor==_SE|$$.anchor==_NE?16:-16)}; Image.Hot_pt.y={$$.anchorY+($$.anchor==_SW|$$.anchor==_SE?5:-5)}; Image.Hot_pt.dataSource=Image.Tools.dataSource; Image.Hot_pt.file="arrowColor.gif@arrowMask.gif"; /* Image.Hot_pt.buffer={$$.lineColor}; */ Image.Hot_pt.width=17; Image.Hot_pt.height=34; Image.Hot_pt.scaleX=.5; /* Image.Hot_pt.scaleY=3;*/ /* Image.Hot_pt.m10={0-Image.Hot_pt.scaleX*Image.Hot_pt.sinAngle};*/ Image.Hot_pt.angle={$$.anchor==_SE?160:$$.anchor==_NE?-160:$$.anchor==_SW?70:$$.anchor==_NW?-70:0}; } >>
allArmedHS=[] Area.3d.cursor={allArmedHS==[]?"":_HAND}
HotSpotButton.extends=["HotSpotRT", "ActionTrigger"] HotSpotButton.Class<< .actionPress={HotSpot.3d_$.enabled&HotSpot.3d_$.press} .active={($$.runnable|$$.script=="")&$$.mouseOver&HotSpot.3d_$.visible&allPlayingScripts==[]} .mouseOver=true .armed={$$.runnable&$$.mouseOver&HotSpot.3d_$.hover} .force="" .new={ HotImage.$.buffer; Trigger.Block_$HS.test={Area.3d.press&!HotSpot.3d_$.press}; Trigger.Block_$HS.exec={HotSpot.3d_$.enabled=false}; Trigger.Unblock_$HS.test={!Area.3d.press}; Trigger.Unblock_$HS.exec={HotSpot.3d_$.enabled=true}; ChangeTrigger.Armed_$.test={$$.armed}; ChangeTrigger.Armed_$.exec={$$.armed?(allArmedHS=allArmedHS++["$$"]):(allArmedHS=allArmedHS--["$$"])}; } >>
AppHotSpot.extends="" AppHotSpot.Class<< .inst="$" .script="" .actionType="anim" .jumpToTime=-1 .alwaysVisible=false .location=["","",0,0,0,0] .mouseOver=true .force="" .onClick="" .newHotSpot={ HotSpotButton.$.actionType=$$.actionType; HotSpotButton.$.jumpToTime=$$.jumpToTime; HotSpotButton.$.script=$$.script; HotSpotButton.$.alwaysVisible=$$.alwaysVisible; HotSpotButton.$.location=$$.location; HotSpotButton.$.onClick={$$.onClick()}; HotSpotButton.$.mouseOver=$$.mouseOver; HotSpotButton.$.force=$$.force; HotImage.$.lineColor="00f"; HotImage.$.forceShow={HotSpotButton.$.force!="" & @("SceneState.3d."~HotSpotButton.$.force[0])==HotSpotButton.$.force[1]}; $$.mouseOver?(Image.HSIndicator.layer={allPlayingScripts==[]?1:-1}); } .new={ pendingHotSpots=pendingHotSpots ++ ["$$"]; } >> pendingHotSpots=[]
Ticker.ProcessHotSpots.order={(pendingHotSpots==[] | Image.Tools.layer<0)?-1:1} Ticker.ProcessHotSpots.exec={ #hsInst=pendingHotSpots[0]; pendingHotSpots=pendingHotSpots--[#hsInst]; #hsInst->newHotSpot(); pendingHotSpots==[]?(Scene.3d.dirty=true); }
/* Top Menu */ showDetailToggle=true; showDemoToggle=false;
TopMenuButton.extends="Image" TopMenuButton.Class<< .dataSource=Image.Tools.dataSource .file="menuColor.gif@menuMask.gif" .y=70 .x={Display.Primary.width-10} .anchor=_NE .states=["off","seloff","on","selon"] .alpha=1 .layer=1 .new={ Area.Detail.image="TopMenuButton.$"; Area.Detail.state={showDetailToggle?(Area.Detail.hover?"selon":"on"):Area.Detail.hover?"seloff":"off"}; Area.Detail.cursor=_HAND; Area.Detail.x=0; Area.Detail.y=0; Area.Detail.width=109; Area.Detail.height=32; Area.Detail.enabled={allPlayingScripts==[]}; Trigger.DetailClick.test={Area.Detail.press}; Trigger.DetailClick.exec={showDetailToggle=!showDetailToggle;showDemoToggle=!showDemoToggle}; Area.Demo.image="TopMenuButton.$"; Area.Demo.state={showDemoToggle?(Area.Demo.hover?"selon":"on"):Area.Demo.hover?"seloff":"off"}; Area.Demo.cursor=_HAND; Area.Demo.x=113; Area.Demo.y=0; Area.Demo.width=156; Area.Demo.height=32; Area.Demo.enabled={allPlayingScripts==[]}; Trigger.DemoClick.test={Area.Demo.press}; Trigger.DemoClick.exec={showDetailToggle=!showDetailToggle;showDemoToggle=!showDemoToggle;}; } >>
Style.TopMenuLabel<< .fontSize=14 .color="000" .textAlign=_LEFT .fontWeight=_BOLD .margin=5 >>
TopMenuLabelOnly.extends="Image" TopMenuLabelOnly.Class<< .y=75 .x={Display.Primary.width-20} .text={"%TopMenuLabel{"~l10n("productDemoLabel")~"}"} .anchor=_NE .layer=1 >>
/* Details */ currentDetail="" detailButtonCounter=0
Image.DetailButtons<< .y=110 .x={Display.Primary.width-10} .width=500 .height=500 .layer={showDetailToggle?3:-1} >>
Style.DetailTextFormatSmall<< .color=black .fontSize=13 >> Style.DetailTextFormatLarge<< .color=black .fontSize=16 >>
Image.detailsize.layer=1; Image.detailsize.wrapWidth=330 Image.detailsize.text=""; Image.detailsize.x=-400; Image.detailsize.y=100;
DetailText.extends="Image" DetailText.Class<< .wrapWidth=330 .tabStops=[15,30,45,60] .anchor=_NE .label="" .text={Image.detailsize.text={"%DetailTextFormatLarge{"~$$.label~"}"};Image.detailsize.height>Display.Primary.height-170?"%DetailTextFormatSmall{"~$$.label~"}":"%DetailTextFormatLarge{"~$$.label~"}"} >>
DetailContent.extends="Image" DetailContent.Class<< .create=false .y=110 .x={Display.Primary.width-230} .layer={showDetailToggle?3:-1} .label="" .new={ DetailText.$_text.parent="$$"; DetailText.$_text.label={$$.label}; } >>
DetailContent.detailwindow.create=true;
AppControlSection.extends="" AppControlSection.Class<< .create=true .section="" .new={ DetailButton.$.detailText={l10n("$")->text}; DetailButton.$.label={l10n("$")->section}; } >>
Style.DetailButtonSmall<< _off.color=black _on.color=yellow _off.fontWeight=_BOLD _on.fontWeight=_BOLD _off.fontSize=10 _on.fontSize=10 >> Style.DetailButtonLarge<< _off.color=black _on.color=yellow _off.fontWeight=_BOLD _on.fontWeight=_BOLD _off.fontSize=12 _on.fontSize=12 >>
DetailButton.extends="Image" DetailButton.Class<< .anchor=_NE .dataSource=Image.Tools.dataSource; .file="buttonColor.gif@buttonMask.gif" .parent="Image.DetailButtons" .label="" .detailText="" .width=192 .height=23 .x=0 .y=0 .states=["off","on"] .new={ currentDetail==""?(currentDetail="$";DetailContent.detailwindow.label={$$.detailText}); DetailButton.$.y=(detailButtonCounter*26); detailButtonCounter=detailButtonCounter+1; Area.$.image="DetailButton.$"; Area.$.state={Area.$.hover?"on":"off"}; Area.$.cursor=_HAND; Area.$.boxPick=true; Image.$_lbl.parent="DetailButton.$"; Image.$_lbl.layer=2; Image.$_lbl.x=96; Image.$_lbl.y=11; Image.$_lbl.anchor=_C; Image.$_lbl.enabled=false; Image.$_lbl.states=["off","on"]; Image.$_lbl.text={Meson.callMethod(^method=lengthMethod,^args=[$$.label])>24?"%DetailButtonSmall_#{"~$$.label~"}":"%DetailButtonLarge_#{"~$$.label~"}"}; Area.$_lbl.image="Image.$_lbl"; Area.$_lbl.state={currentDetail=="$"?"on":"off"}; Trigger.$_press.test={Area.$.press}; Trigger.$_press.exec={ @{"Area."~currentDetail~"_lbl.state"}="off"; currentDetail="$"; @{"Area."~currentDetail~"_lbl.state"}="on"; DetailContent.detailwindow.label=DetailButton.$.detailText; }; } >>
autoplayButtons=[] autoplayButtonCounter=0
/* Demos */ demoButtonCounter=0
ActionTrigger.extends="" ActionTrigger.Class<< .inst="$" .script="" .subGroup="" .trackingURL="" .onClick="" .subMembers=["$$"] .runnableInst="$" .actionType="" .jumpToTime=-1 .runnable=false .hasScripts={^h=false;foreach(^elem="j";^in=$$.subMembers;^do={#j->script!=""?#h=true});^h} .updateRunnable={($$.runnable=($$.hasScripts&allPlayingScripts==[]))?(^w="";$$.runnableInst="";foreach(^elem="j";^in=$$.subMembers;^do={Scene.3d.testPreconditions(#j->script)?(#w=true,$$.runnableInst=#j->inst)});$$.runnable=^w)} .actionPress=false .new={ Trigger.$.test={ActionTrigger.$.actionPress}; Trigger.$.exec={allPlayingScripts==[]?foreach(^elem="i";^in=$$.subMembers;^do={#i->script!=""?((#i->actionType=="still"?(Scene.3d.playStartSlow(#i->script)?Scene.3d.jumpToTime(^script=#i->script;^time=#i->jumpToTime)):Scene.3d.playStartSlow(#i->script)))});$$.onClick()}; Ticker.$_urun.exec={ActionTrigger.$.updateRunnable()}; Ticker.$_urun.order=20; } .playScripts={allPlayingScripts==[]?foreach(^elem="i";^in=$$.subMembers;^do={#i->script!=""?((#i->actionType=="still"?(Scene.3d.playStartSlow(#i->script)?Scene.3d.jumpToTime(^script=#i->script;^time=#i->jumpToTime)):Scene.3d.playStartSlow(#i->script)))});$$.onClick()} >>
Image.DemoButtons<< .y=110 .x={Display.Primary.width-10} .width=500 .height=500 .layer={showDemoToggle?4:-1} >>
AppControl.extends="" AppControl.Class<< .inst="$" .subGroup="" .onClick="" .xOffset=0 .script="" .actionType="anim" .jumpToTime=-1 .newDemo={ processedDemos[processedDemosCounter]="$$"; processedDemosCounter=processedDemoCounter+1; DemoButton.$.actionType=$$.actionType; DemoButton.$.jumpToTime=$$.jumpToTime; DemoButton.$.script=$$.script; DemoButton.$.subGroup=$$.subGroup; DemoButton.$.onClick={$$.onClick()}; DemoButton.$.label={l10n("$")->text}; autoplayButtons[autoplayButtonCounter]="ActionTrigger.$"; autoplayButtonCounter=autoplayButtonCounter+1; } .addAction={ DemoButton.$.subMembers=DemoButton.$.subMembers++[#arg]; autoplayButtons[autoplayButtonCounter]="ActionTrigger.$"; autoplayButtonCounter=autoplayButtonCounter+1; } .new={ pendingDemos[pendingDemosCounter]="$$"; pendingDemosCounter=pendingDemosCounter+1; } >>
Style.DemoButtonSmall<< .color=black .fontWeight=_BOLD .fontSize=10 >>
Style.DemoButtonLarge<< .color=black .fontWeight=_BOLD .fontSize=12 >>
DemoButton.extends=["ActionTrigger", "Image"] DemoButton.Class<< .anchor=_NE .dataSource=Image.Tools.dataSource; .file="buttonColor.gif@buttonMask.gif" .parent="Image.DemoButtons" .label="" .width=192 .height=23 .x=0 .y=0 .states=["off","on"] .enabled={Scene.3d.enabled&allPlayingScripts==[]&$$.runnable} .alpha={(!$$.hasScripts|$$.enabled)?1:0.5} .actionPress={Area.$.press} .tip={l10n($$.runnableInst)->tipText} .place=-1 .textValue={"%Script_#{"~l10n("$")->text~"}"} .new={ $$.place=demoButtonCounter; DemoButton.$.y=(demoButtonCounter*26); demoButtonCounter=demoButtonCounter+1; Area.$.image="DemoButton.$"; Area.$.state={Area.$.hover?"on":"off"}; Area.$.cursor=_HAND; Area.$.boxPick=true; Image.$_lbl.parent="DemoButton.$"; Image.$_lbl.layer=2; Image.$_lbl.x=96; Image.$_lbl.y=11; Image.$_lbl.anchor=_C; Image.$_lbl.enabled=false; Image.$_lbl.text={Meson.callMethod(^method=lengthMethod,^args=[$$.tip~" "~$$.label])>24?"%DemoButtonSmall{"~$$.tip~" "~$$.label~"}":"%DemoButtonLarge{"~$$.tip~" "~$$.label~"}"};
/*Image.$_lbl.text={"%DemoButton{"~$$.tip~" "~$$.label~"}"}; */ } >>
pendingDemos=[] pendingDemosCounter=0 processedDemos=[] processedDemosCounter=0 processPendingDemos={ foreach(^elem="c"; ^in=pendingDemos; ^do={ #c->subGroup=="" ? #c->newDemo() : (#mainC=@("sub_"~#c->subGroup))=="" ? (("sub_"~(#c->subGroup))=#c; #c->newDemo()) : #mainC->addAction(#c); }); }
/* Sidecars */ Style.Sidecar<< .fontSize=14 .color=black .textAlign=_LEFT .lineSpacing=2 .marginTop=4 .marginLeft=4 .marginRight=4 .marginBottom=4 >> Style.SidecarTitle<< .fontWeight=_BOLD .fontSize=10 .color=black .textAlign=_C .marginTop=2 .marginLeft=4 .marginRight=4 >>
ImageBorder.extends="" ImageBorder.Class<< .thickness=1 .color=black .shadowColor={$$.color} .highlightColor={$$.color} .borderFor="Image.$" .new={ Image.$_bt.parent={ImageBorder.$.borderFor}; Image.$_bt.buffer={ImageBorder.$.highlightColor}; Image.$_bt.x=-1; Image.$_bt.y=-1; Image.$_bt.width={ImageBorder.$.borderFor->width+2}; Image.$_bt.height=1; Image.$_bb.parent={ImageBorder.$.borderFor}; Image.$_bb.buffer={ImageBorder.$.shadowColor}; Image.$_bb.x=-1; Image.$_bb.y={ImageBorder.$.borderFor->height}; Image.$_bb.width={ImageBorder.$.borderFor->width+2}; Image.$_bb.height=1; Image.$_bl.parent={ImageBorder.$.borderFor}; Image.$_bl.buffer={ImageBorder.$.highlightColor}; Image.$_bl.x=-1; Image.$_bl.y=-1; Image.$_bl.width=1; Image.$_bl.height={ImageBorder.$.borderFor->height+2}; Image.$_br.parent={ImageBorder.$.borderFor}; Image.$_br.buffer={ImageBorder.$.shadowColor}; Image.$_br.x={ImageBorder.$.borderFor->width}; Image.$_br.y=-1; Image.$_br.width=1; Image.$_br.height={ImageBorder.$.borderFor->height+2}; } >>
AppControlSidecar.extends="ActionLabel" AppControlSidecar.Class<< .anchor=_NE .x={Display.Primary.width-215} .y=140 .script="" .buffer="ccf5f5f5" .textValue={"%Sidecar{"~l10n("$")->text~"}"} .pleaseShow=false .scriptRT={@("Scene.3d.script_"~$$.script)} .alpha=0 .new={ Anim.$_inout.attr="$$.alpha"; Anim.$_inout.rate=0.7; Anim.$_inout.goal={$$.pleaseShow?1:0}; ImageBorder.$.shadowColor="bb7"; ImageBorder.$.highlightColor="ffe"; Image.$_topBar.parent="$$"; Image.$_topBar.buffer="44999999"; Image.$_topBar.width={$$.width}; Image.$_topBar.height=20; Image.$_topBar.text={"%SidecarTitle{"~l10n("$")->titleText~"}"}; Image.$_topBar.y=0; Image.$_topBar.layer=10; Image.$_topBar.anchor=_SW; ImageBorder.$_topBar.shadowColor="bb7"; ImageBorder.$_topBar.highlightColor="ffe"; Image.$_close.parent="$$"; Image.$_close.anchor=_SE; Image.$_close.x={$$.width}; Image.$_close.y=0; Image.$_close.layer=11; Image.$_close.dataSource=Image.Tools.dataSource; Image.$_close.file="close.gif"; Image.$_close.states=["off","on"]; Image.$_close.cursor=_HAND; Image.$_close.absEnabled=true; Area.$_close.image="Image.$_close"; Area.$_close.boxPick=true; Area.$_close.state={Area.$_close.hover?"on":"off"}; Trigger.$_show.test={$$.scriptRT!=""&$$.scriptRT->playing}; Trigger.$_show.exec={$$.pleaseShow=true;$$.layer=98}; Trigger.$_restore.test={$$.pleaseShow&showDemoToggle}; Trigger.$_restore.exec={$$.layer=98}; Trigger.$_temphide.test={$$.pleaseShow&showDetailToggle}; Trigger.$_temphide.exec={$$.layer=-1}; Trigger.$_hide.test={Area.$_close.press|(allPlayingScripts!=[]&(!$$.scriptRT->playing))}; Trigger.$_hide.exec={$$.pleaseShow=false;$$.layer=97;Area.$_close.press?($$.alpha=0)}; ChangeTrigger.$_on_reset.test={ResetSerial}; ChangeTrigger.$_on_reset.exec={Trigger.$_hide.exec();$$.alpha=0} } >>
uiDone={ processPendingDemos(); detailButtonCounter==0?(showDetailToggle=false;showDemoToggle=true;TopMenuLabelOnly.TMLabel.create=true;):(showDetailToggle=true;showDemoToggle=false;TopMenuButton.TMButton.create=true;) }
/* AUTOPLAY code */ Autoplay.extends="Image" Autoplay.Class<< .startTime=AutoplayStartTime .delayTime={AutoplayDelayTime!=""?AutoplayDelayTime:10} .active=false .counter=0 .scriptState=0 .x={Display.Primary.width-70} .y={Display.Primary.height-20} .anchor=_SE .layer=1 .alpha=1 .pleaseShow=true; .text={$$.active?"Demonstration autolay running: Move mouse to stop":""} .playDemo={$$.active?$$.scriptState=0;autoplayButtons[$$.counter]->playScripts();$$.counter=$$.counter+1} .new={ Timer.$_activate.exec={Timer.$_activate.stop();$$.scriptState!=1?($$.active=true;ClickOnReset();$$.counter=0;showDetailToggle=false;showDemoToggle=true;$$.playDemo())}; Timer.$_activate.delay=$$.startTime; Timer.$_activate.start(); Timer.$_next.exec={Timer.$_next.stop();($$.counter==autoplayButtonCounter?(ClickOnReset();$$.counter=0));$$.playDemo()}; Timer.$_next.delay=$$.delayTime; ChangeTrigger.$_start.test={Display.Primary.mouseX}; ChangeTrigger.$_start.exec={($$.active==false?Timer.$$_activate.stop():(ClickOnReset();showDetailToggle=true;showDemoToggle=false;$$.counter=0;$$.active=false;Timer.$_next.stop()));Timer.$_activate.start()}; Trigger.$_nextDemo.test={$$.active&$$.scriptState==2}; Trigger.$_nextDemo.exec={Timer.$_next.start()}; ChangeTrigger.$_scriptState.test={allPlayingScripts==[]}; ChangeTrigger.$_scriptState.exec={allPlayingScripts==[]?($$.scriptState==1?($$.scriptState=2)):($$.scriptState=1)}; Anim.$_msgFlash.attr="$$.alpha"; Anim.$_msgFlash.rate=0.7; Anim.$_msgFlash.goal={$$.pleaseShow?1:0}; Timer.$_msgFlashTrigger.exec={$$.pleaseShow=!$$.pleaseShow}; Timer.$_msgFlashTrigger.delay=2; Timer.$_msgFlashTrigger.repeat=true; Timer.$_msgFlashTrigger.start(); } >>
AutoplayStartTime!=""?AutoplayStartTime>0?Autoplay.demos.create=true;
|
 |
|
soil
Infrequent Poster
China
13 Posts |
Posted - 03/28/2012 : 13:08:47
|
The link(http://support.strata.com/index.php?sid=2637485&lang=en&action=artikel&cat=20&id=313&artlang=en) said that we can change default language by add a line in the html file,but when I do that ,the diaplaying language is also English! That's why? Following is the content of my html file: <html> <head> <SCRIPT LANGUAGE="JavaScript"> var title=location.href; title=title.substring(0,title.lastIndexOf("/index.html")); title=title.substring(title.lastIndexOf("/")+1); title=title.replace(/_/g," "); document.write('<title> '+title+' </title>'); //--> </script> </head> <body scroll="auto" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" bgcolor="#FFFFFF">
<center> <script> document.write("<applet code=com.kaon.meson.MesonApplet "); document.write("archive='mesonCombined.jar' width=100% height=100% "); document.write("alt='Please Enable Java' codebase='.' MAYSCRIPT>"); document.write("<PARAM name='java_arguments' value='-Xmx256m'>"); document.write("<PARAM name='brand' value='strata'>"); document.write("<PARAM name='Meson.language' value='zh'>"); document.write("<PARAM name='meson' value='Meson.setCurrentDataSource(Meson.documentBase=Meson.codeBase);Meson.gluon(\"com.kaon.meson.raster.RasterGluon\");Meson.gluon(\"com.kaon.meson.scene.SceneGluon\");Data.Program.url=\"externalweb.jar\";'>"); document.write("Java is currently not available on your browser. Please enable Java (www.java.com) to view the model."); document.write("</applet>"); </script> </center> </body> </html>
|
 |
|
soil
Infrequent Poster
China
13 Posts |
Posted - 04/11/2012 : 13:38:42
|
Now I have realized the displaying of Chinese language on my broswer. I found it has none relationship with template.txt ,and just add the key words "_zh" in the ui.txt!And I hope the above information may help the man who whant to diaplay special language in his strata live animaion. |
Edited by - soil on 04/11/2012 13:42:28 |
 |
|
|
Topic  |
|