Copy link to clipboard
Copied
I've been using the Navigation / NavigationParsley libraries for some time now to good effect. I was wondering if it was possible to use these libraries to allow navigation to multiple instances of the same view, where each view is dynamically added to the application by a user action. For example:-
We have an application which has a tab navigator in which users can load tabbed views. Each tab is the same view class, but with different data (like a web browser's tabbed interface). The user finds the information they'd like, and loads it into a tab. As such, each tab needs to have a different automationName configured on-the-fly after the user interaction. However the Navigation libraries seem to register destinations (the children of a container or tabs in this case) upon finding a Waypoint. Unfortunately at this stage the container does not hold any children, as the user has yet to load the tabs.
Does anyone have suggestions on how to extend the functionality of these libraries to provide this sort of feature, or if this is already in consideration?
Many thanks,
Marc
Copy link to clipboard
Copied
Anyone got any suggestions about this? Perhaps I need to rephrase my query a bit?
Copy link to clipboard
Copied
Hi,
yes, that is possible; very quick reply here: Some of our team are in the process of creating an isolated example of this.
Copy link to clipboard
Copied
Thanks for the response Alex, I look forward to seeing what your team up with as an example. Please keep me posted on this, as my efforts at attempting similar customisations lead to problems I was unable to resolve quickly.
Thanks again,
Marc
Copy link to clipboard
Copied
I'm also interested in this example. I've got a couple of scenarios waiting for this to be unlocked.
Thank you.
Copy link to clipboard
Copied
Hello,
I've done something similar to this for an application I've been working on. In my case I have an XML file that defines what modules should be loaded at runtime. Once the modules are loaded I then also wire them up to Cairngorm navigation so that they work with Waypoints and Landmarks.
I've written up an entry on my blog about this solution if you'd like to have a look.
http://blogs.adobe.com/formnation/2010/11/controlling-navigation-of-dynamically-added-modules-in-cairngorm.html
Anthony
Copy link to clipboard
Copied
Hi anthony,
Although your solution may work, I dont like the idea of dispatching such events for managing the navigation points.
Actually, I'm expecting something more programmatic like:
NavigationManager.unregisterDestination(childToBeRemovedFromNavigation);
NavigationManager.registerDestination(childToBeAddedToNavigation);
Or something like that...
Copy link to clipboard
Copied
Hi aalbericio9,
In my case this solution worked well since I only had to register all my destinations once. I agree that in the case where you need to add and remove destinations multiple times dispatching an initialize event isn't the best idea.
At least is sounds like the Cairngorm folks are looking into adding support for the use case you are interested in.
Anthony
Copy link to clipboard
Copied
Hi Anthony,
Yes, I believe they're working on it. ![]()
I think that is a good addon for the framework cause, now more than never, layouts are dynamically built and added into the application. And, in my case, I got some custom components to improve general performance that need to be tweaked to match the cg3 navigation policy.
Cheers.
Get ready! An upgraded Adobe Community experience is coming in January.
Learn more