You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by "Ben Keen (JIRA)" <ji...@apache.org> on 2014/11/11 19:42:33 UTC

[jira] [Resolved] (COUCHDB-2401) Create generic Tray component

     [ https://issues.apache.org/jira/browse/COUCHDB-2401?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ben Keen resolved COUCHDB-2401.
-------------------------------
    Resolution: Fixed

> Create generic Tray component
> -----------------------------
>
>                 Key: COUCHDB-2401
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-2401
>             Project: CouchDB
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: Fauxton
>            Reporter: Ben Keen
>            Assignee: Ben Keen
>
> Now we've moved most content to trays, the code can really be cleaned up. Create a generic Tray component that contains all boilerplate code, like hide/show/toggle, etc.
> Right now we're explicitly telling other components to do things, like in the Query Options / API Bar that tell eachother to close if they're about to be opened: 
> FauxtonAPI.Events.trigger("APIbar:closeTray");
> Now that the Add New Database is going to be a tray as well, I'd like to improve this. Namely, all of them would publish the same events:
> FauxtonAPI.Events.trigger("Tray:open"); // this would actually be a constant, like C.EVENT.TRAY.OPEN
> FauxtonAPI.Events.trigger("Tray:close"); // C.EVENT.TRAY.CLOSE
> They would then use that to subscribe to ANY tray's open event, and know to close itself if another's being opened. The benefits are that a component doesn't need to know about other components (loose coupling yay). And going forth it would mean less code.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)