-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add ability to filter Table of Contents by facets #39
Comments
At one point in our mockup discussions, we discussed separating this layer selection/filter functionality from the standard Esri Table of contents - making layer selection into a separate widget that would be loosely coupled with the Esri TOC. EJScreen was our model for this discussion: |
The design implication seems to be that the table of contents will actually be separated out into two different widgets - an enhanced version of the locallayer widget that contains no layers at startup, and as layers are added to it at runtime allows for interactions with those layers - legend, transparency, etc. - and a second widget that contains all of the layer selection/filter/search functionality (and possibly metadata links?) that pushes selected layers to the first widget. The second widget we'd be building pretty much from scratch. |
Agree with Torrin, the second widget (selection/filter/search) should be able to read a json file which is very similar to the config.json in the original Local layer. And the config.json file in the original Local layer could be taken out. That is, local layer dose not need config.json to add layers, but rather, it communicates with selection/filter/search widget (the second one mentioned earlier) to add or remove layers to/from map. The communication could be a data structure defined by the programmer and triggered by the filter widget. |
And if I have the right picture in my mind, I agree with both Torrin and Baohong. I think if we can clarify where the changing of symbology will be (do we lean on EJScreen for this too?), we can start down this path. |
Since I need to make local layer widget to communicate with filter widget, I made a practice of communicating with two sample widgets which could be found in arcgis-web-appbuilder-1.2\client\stemapp\widgets\samplewidgets\WidgetCommunication. You could ignore this comment if you already known how to use this sample. Explanation of communicating is explained in https://developers.arcgis.com/web-appbuilder/guide/communication-between-widgets.htm Here is how I practice this two widgets: I will work on LocalLayer widget to perform as sample WidgetB to receive data string. Filter widget could perform as sample WidgetA to publish data string. After finishing LocalLayer, I will work on Layerlist widget to add the dropdown menu items to add the metadata links. |
Getting Annie's confirmation of flow. |
Below is a series of emails from Ali and me about the document sent to discuss flow. From: Mackey, Alexandra Hi all, We finally had a chance to chat about your second question related to the selection of different geographies. We decided that, in the layer selection list, communities should be grouped together behind the scenes for each layer. (See image below) So, if you selected MWI and PAZ, then you could select the ‘Percent Forest’ layer once and it would be added to the map for both cities. We like this version because it limits the length of the layer selection list, even after we have 50+ communities. We also talked about how the layers would then be added to the map. I’m sure we’ll need to discuss this in much more detail, but we’ve got a few ideas. I’m not sure how much you want to know at this point, but I can absolutely be more detailed about this if/when needed.
A couple other thoughts we had during this discussion:
a) Classify/break based on just the community of interest b) Classify/Break based on communities loaded in the map – or some specified subset – this would allow for comparison between similar cities without interference from dissimilar cities: classify percent forest for well-forested PME/PitPA//POR without skewing from lightly-forested PAZ/FCA/PNJ c)Classify/break based on ALL communities whether loaded or not If you missed it last week, my answers to the other questions are below. I’m not sure if we’re meeting tomorrow or not, but we can chat about all this then or sometime soon. Thanks, I had an IM conversation with Ali about adding the various geographies for communities. This was prompted by discussion/questions about the flow diagram. Since our list could become quite long if, say, 5 communities were added individually, Ali wondered about “grouping” the individual community layers by “layer name” and having the option to add the whole group rather than selecting individual communities for each layer. If we do this, would we save real estate if the layer groups could be shown as collapsed? For example – adding PAZ, PME, TFL and GBWI layers – filtering for the word “Proximity” we might end up with 8 layers for each community (Park Proximity Buffer, Proximity to road greater than 300m, Proximity to roads less than 300m, % pop within 500m proximity of a park, etc…) Could we group like this in the filter list: Any thoughts????! Not possible with the selection process and current layer list? Great idea but a TON of effort? From: Mackey, Alexandra Hi all, I just wanted to send a response to Barb’s email this week to let know you we haven’t lost track of it. The first and third questions are pretty simple and I’ve included responses in green below that are accurate to the best of my knowledge at this point. The second question about geography selection is pretty big in that it dictates how we eventually add the communities to the map. That’s definitely something Annie will need to weigh in on but she’s not here this week. We will get together early next week to discuss. Sorry we don’t have better answers yet! Thanks, From: Rosenbaum, Barbara Hi Annie and Rosie – We have a few question to open for discussion about the flow for the EnviroAtlas JavaScript application in relation to “filtering and searching” for layers. The attached PowerPoint slides show the flow we are using to create the Search/Filter portion of EnviroAtlas. I have placed numbers on slide 1 which are associated with the questions below.
I think, in my mind at least, we were planning on limiting the search to the fields you listed. One thing we need to know is how specific the search is: kids vs. kid; child vs. children; Word vs. word; etc.
Working on it… hopefully will have some answers before the next call.
Initially, our plan was to only have subcategories display for one BC at a time. If two were selected, the subcategory menu would disappear. As far as I know, that still holds. Other questions or comments – Slide 3 is carried forward from the earlier examples and is included for reference, slide 4 contains a very draft-y example of a modified layout which includes the layer list and the search/filter sections. Some action buttons are missing from this example. If you would like to discuss this on the call today (if we are having it…) that would be great. Also, we can ”discuss” through the email chain if you have any answers (or more questions) before the next code call on Feb 4, 2016. Thanks, Barb (and the rest of the crew) |
One option to consider for category/subcategory tree functionality. |
Will wait to send updated spreadsheet to migrate to JSON until after client discussion today. New mockup may make the current version not worth much until after the discussion. |
Sooo.... where do we stand on creating a new JSON file? Back to square one? Can we hammer out an attribute schema with some placeholder data just to get a start on the UI? |
Not square one - I am working on it - using old list of Suppy/demand/driver On Tue, Apr 19, 2016 at 4:19 PM, Torrin Hultgren notifications@github.com
Barbara Rosenbaum Innovate!, Inc. is a Virginia-based 8(a), Hispanic- and woman-owned |
Here is an updated spreadsheet to convert to json. EnviroAtlas4JSON_DRAFT20160421_fakeSDD.xlsx Added columns for BC and made "fake/filler" text for supply/demand/driver and other "subcategories". This is a work in progress! Please ignore column "T" - it is a formula. and you may not need to import columns J through Q, also, since these are summarized in column "S". If you have questions, please let me know. |
I'm not seeing a column for metadata link - otherwise it looks good. On Thu, Apr 21, 2016 at 12:31 PM, brosenbaum notifications@github.com
Torrin Hultgren Innovate!, Inc. is a Virginia-based 8(a), Hispanic- and woman-owned |
Posted new JSON file here: On Thu, Apr 21, 2016 at 3:04 PM, Torrin Hultgren <thultgren@innovateteam.com
Torrin Hultgren Innovate!, Inc. is a Virginia-based 8(a), Hispanic- and woman-owned |
... and updates to all other fields with "correct" data.... Baohong - some of the layer names in the JSON/excel may be slightly different than the current service layer names. The blue text in the excel sheet - column C is new, the red text is the original/current layer names. |
Data categories, subcategories, and communities should all be available filters.
Two presented TOCs (search tool and filter) have been combined into one larger TOC - both functions were presented as the "look" users would like. ii. 4 basic panels: select geography, select data categories, select subcategories (sometimes hidden), and layer list. Select multiple communities,icons grayed or color depending on status. Refer to mockup pdf for proposed look and feel.
The text was updated successfully, but these errors were encountered: