Hi Kenny,

that is indeed interesting stuff, and I would love to see more of this
high-level-GUI-maintenance best-practices discussed ... here is how I do it
in qcl/qxtransformer:

      <qcl:access>
        <qcl:permission name="allowRemoveReference" granted="true">
          <qcl:dependency permission="reference.remove"/>
          <qcl:updater event="changeSelectedIds" />
          <qcl:condition><![CDATA[
            return this.getSelectedIds().length > 0 
          ]]></qcl:condition>
        </qcl:permission>
      </qcl:access>

<!-- snip -->

          <!-- remove button -->
          
          <qx:menuBarButton 
            height="16" width="16" 
            enabled="false"
            icon="bibliograph/icon/button-minus.png" >
            <qxt:listener type="click" delegate="_removeReference" />
            <qcl:observe 
              propertyChain="enabled" permission="allowRemoveReference" />  
            <qcl:observe 
              propertyChain="visibility"
              permission="reference.remove"
              converter="qcl.bool2visibility" /> 
          </qx:menuBarButton>

So I work with explicitly named permissions and their dependencies instead
of slots and events. Like your cell stuff, the good thing is nothing breaks
when something goes wrong - it simply doesn't work as expected, which is
better than having to handle exceptions. But I sure that there are other and
maybe better to handle complex dependencies in a GUI that I don't know of.

Cheers,
C. 
-- 
View this message in context: 
http://qooxdoo.678.n2.nabble.com/elaborate-GUI-tp5225888p5234182.html
Sent from the qooxdoo mailing list archive at Nabble.com.

------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
qooxdoo-devel mailing list
qooxdoo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to