Autor Thema: Parameterübergabe bei Dojo?  (Gelesen 3762 mal)

Offline Flachmann

  • Senior Mitglied
  • ****
  • Beiträge: 284
  • Geschlecht: Männlich
  • Mal wieder: Flachmann ist Schuld!
Parameterübergabe bei Dojo?
« am: 12.01.15 - 23:18:38 »
Hallo!

Ich versuche eine Dojox FisheyeLite (http://dojotoolkit.org/reference-guide/1.10/dojox/widget/FisheyeLite.html) mit XPages zum Laufen zu bekommen. Die passt als Funktion für meine Anwendung einfach super.  ;D  Funktioniert auch soweit, allerdings können, warum auch immer, keine Eigenschaften übergeben werden, zumindest ist es das, was mir Probleme bereitet:

Code
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" xmlns:xc="http://www.ibm.com/xsp/custom"
	dojoParseOnLoad="true">

	<xp:this.resources>
		<xp:dojoModule name="dojox.widget.FisheyeLite"></xp:dojoModule>
	</xp:this.resources>

	<xp:br></xp:br>
	<xp:br></xp:br>

	<xp:div dojoType="dojox.widget.FisheyeLite">
		<xp:this.dojoAttributes>
			<xp:dojoAttribute name="data-dojo-props" value="properties: {height:80}">
			</xp:dojoAttribute>
		</xp:this.dojoAttributes>

		<xp:label value="ZOOM"></xp:label>
	</xp:div>
</xp:view>

Lasse ich den Wert für data-dojo-props weg, also einfach nur "", funktioniert die Box. Da mit den Properties aber das Funktionsverhalten angepasst werden soll, frage ich mich, wie ich das eingeben kann.

Ich habe an einer anderen Stelle statt data-dojo-props properties als Parameter gefunden, aber das tut es leider auch nicht:
Code
<xp:dojoAttribute name="properties" value="height:80">
</xp:dojoAttribute>

Hat jemand eine Idee ober vielleicht schon Erfolg?
« Letzte Änderung: 12.01.15 - 23:20:31 von Flachmann »
Gruß,
  __________
  _/_
  /lachmann

Offline Flachmann

  • Senior Mitglied
  • ****
  • Beiträge: 284
  • Geschlecht: Männlich
  • Mal wieder: Flachmann ist Schuld!
Re: Parameterübergabe bei Dojo?
« Antwort #1 am: 15.01.15 - 13:06:19 »
Hat noch keine Erfahrungen damit gemacht und kann mir einen Tipp geben?  ???
Gruß,
  __________
  _/_
  /lachmann

Offline Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Re: Parameterübergabe bei Dojo?
« Antwort #2 am: 16.01.15 - 10:32:07 »
Funktioniert bei mir, d.h. der DIV Container wird bei mir um den Faktor 80 vergrößert.
Mach den DIV mal farbig, dann siehst Du den Effekt.

EDIT:
Code
<xp:label value="ZOOM">
    <xp:this.attrs>
        <xp:attr value="properties: {height:80}" name="data-dojo-props" />
    </xp:this.attrs>
</xp:label>
« Letzte Änderung: 16.01.15 - 10:45:55 von Sven Hasselbach »

Offline Flachmann

  • Senior Mitglied
  • ****
  • Beiträge: 284
  • Geschlecht: Männlich
  • Mal wieder: Flachmann ist Schuld!
Re: Parameterübergabe bei Dojo?
« Antwort #3 am: 16.01.15 - 12:38:35 »
Du hast jetzt die Dojo-Attribute unter das Label gehängt? Dort scheinen sie ohne jegliche Funktion zu sein.

Ändere mal die 80 in 03, oder so. Das ändert leider nichts, weil hier nur der Default des Fisheye genommen wird, so als ob keine Größeneinstellung angegeben ist.

Du kannst das auch so angeben, weil das Property nicht zieht:
Code
	<xp:div dojoType="dojox.widget.FisheyeLite">
		<xp:label value="ZOOM">
			<xp:this.attrs>
				<xp:attr value="height:80" name="XX" />
			</xp:this.attrs>
		</xp:label>
	</xp:div>
« Letzte Änderung: 16.01.15 - 12:40:30 von Flachmann »
Gruß,
  __________
  _/_
  /lachmann

Offline Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Re: Parameterübergabe bei Dojo?
« Antwort #4 am: 16.01.15 - 12:57:57 »
Stimmt, habe ich wohl nicht aufgepasst.
Probier mal passende Eigenschaften zu verwenden. Du willst einen Text vergrößern:

Code
	<xp:div
		dojoType="dojox.widget.FisheyeLite"
		style="background-color:rgb(128,0,255)">
			<xp:this.attrs>
				<xp:attr
					value="properties: {fontSize:16.50,letterSpacing:22.00}"
					name="data-dojo-props">
				</xp:attr>
			</xp:this.attrs>
		<xp:label value="ZOOM"  />
	</xp:div>
	

Offline Flachmann

  • Senior Mitglied
  • ****
  • Beiträge: 284
  • Geschlecht: Männlich
  • Mal wieder: Flachmann ist Schuld!
Re: Parameterübergabe bei Dojo?
« Antwort #5 am: 16.01.15 - 15:37:50 »
Kein Problem, Sven.

Es ist bei mir vollkommen egal was ich in "properties: {}" eintrage: das Ergebnis ist immer dasselbe. Ich denke, dass "data-dojo-props" einfach kein gültiger Parameter ist.

Verwende ich aber statt "data-dojo-props" "properties" und habe einen Wert, dann funktioniert das Fisheye gar nicht mehr.  ???  Wenn ich dann "properties" falsch schreibe, z.B. "propXerties", dann funtioniert es wieder, aber mit den Default-Werten. Ich habe irgendwie das Gefühl, dass die Parameter nicht genommen werden.

Gruß,
  __________
  _/_
  /lachmann

Offline Flachmann

  • Senior Mitglied
  • ****
  • Beiträge: 284
  • Geschlecht: Männlich
  • Mal wieder: Flachmann ist Schuld!
Re: Parameterübergabe bei Dojo?
« Antwort #6 am: 16.01.15 - 15:49:32 »
Könnte aber auch sein, dass das irgendwie mit Server-Einstellungen oder meinem lokalen Browser zusammenhängt. Ich spiele mal etwas in dieser Richtung herum...
Gruß,
  __________
  _/_
  /lachmann

Offline Sven Hasselbach

  • Senior Mitglied
  • ****
  • Beiträge: 316
  • Geschlecht: Männlich
    • blog@hasselba.ch
Re: Parameterübergabe bei Dojo?
« Antwort #7 am: 16.01.15 - 16:38:28 »
Wie sieht denn der generierte HTML Quelltext aus?

Offline Flachmann

  • Senior Mitglied
  • ****
  • Beiträge: 284
  • Geschlecht: Männlich
  • Mal wieder: Flachmann ist Schuld!
Re: Parameterübergabe bei Dojo?
« Antwort #8 am: 28.01.15 - 21:54:19 »
Sorry für die verspätete Antwort. Es klappt dank Deiner Hilfe nun einwandfrei. Vielen Dank!
Ich habe aus dem Teil noch eine Custom Control gemacht.  :D

Testseite:
Code
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" xmlns:xc="http://www.ibm.com/xsp/custom"
	dojoParseOnLoad="true">

	<xc:stdFisheye fisheyeProps="properties: {fontSize:1.50,letterSpacing:22.00}">
		<xp:this.facets>
			<xp:label value="ZOOM" xp:key="facetFish"></xp:label>
		</xp:this.facets>
	</xc:stdFisheye>
</xp:view>

Custom Control:
Code
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" dojoParseOnLoad="true">

	<xp:this.resources>
		<xp:dojoModule name="dojox.widget.FisheyeLite"></xp:dojoModule>
	</xp:this.resources>

	<xp:div dojoType="dojox.widget.FisheyeLite">
		<xp:this.dojoAttributes>
			<xp:dojoAttribute name="data-dojo-props"
				value="#{javascript:compositeData.fisheyeProps}">
			</xp:dojoAttribute>
		</xp:this.dojoAttributes>

		<xp:callback facetName="facetFish"></xp:callback>
	</xp:div>
</xp:view>

Und hier noch der generierte HTML-Code-Auszug:
Code
<body class="lotusui lotusSpritesOn tundra">
<form id="view:_id1" method="post" action="/Templates/XPTemplate.nsf/Test.xsp" class="lotusForm" enctype="multipart/form-data">
<br>
<br>
<div dojoType="dojox.widget.FisheyeLite" data-dojo-props="properties: {fontSize:1.50,letterSpacing:22.00}" id="view:_id1:_id4:_id5"><span class="xspTextLabel">ZOOM</span></div>
Gruß,
  __________
  _/_
  /lachmann

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz