Cairngorm 3 Navigation library and custom Waypoints

Hi all!
How can I set my own class to process waypoints? I created the class which extends com.adobe.cairngorm.navigation.waypoint.AbstractWaypoint. And in my ViewStack I added the follwing metadata: [Waypoint(type="path.to.my.Class")]. However when I try to navigate to this ViewStack's child I receive the following error: Error: Unable to set mapped value for [Property type in class com.adobe.cairngorm.navigation.waypoint.decorator::WaypointDecorator].
What am I doing wrong? How can I use my own classes to process Waypoints and Landmarks?

I'm pretty sure that my class is correct. MXML definition of the waypoint throws the same error. It works only if I modify the if statement in the WaypointProcessor.preInit() method:
                 if (waypointHandler.waypoint is CurrentStateWaypoint)
                registration = new StateDestinationRegistration(controller.controller,
                                                                waypointHandler,
                                                                name);
              else if (waypointHandler.waypoint is MyWaypointClass) {
                        registration = new ContainerDestinationRegistration(controller.controller,
                                                                    waypointHandler);
            else
                registration = new ContainerDestinationRegistration(controller.controller,
                                                                    waypointHandler);

Similar Messages

  • Cairngorm Modules Library and Flex 3

    Are there any plans for the Cairngorm Modules Library to support Flex3 Projects. There's no Flex 3 SWC for the latest version (0.9) available.
    Patrick

    We use conditional compilation and Maven in order to generate the a Flex 3 and Flex 4 version of all libraries. The module library was trickier to setup but I think we're almost there. But you can build it yourself from trunk with using the Flex3 conditional compilation flag and with removing the classes that don't compile (that's i.e. what we want Maven to do for us).

  • Cairngorm 3 and Navigation Library

    Hi,
    I've been looking at the draft code for the Cairngorm 3 Navigation Library and wondered if anyone knows how to use the CurrentStateWaypoint?
    This seems to provide what I want but I can't see any example code, in the examples, tests or library. Is this part of the library still to be implemented completely, or is it deprecated / for removal?
    Any example on how this should be used would be appreciated.
    Thanks

    The CurrentStateWaypoint isn't implemented at this point. But maybe you could give it a try? Let me know if you make progress.
    The connection is already there. By default the Waypoint decorator choses the SelectedChildWaypoint that works for all Containers that have a selectedChild and dispatch an IndexChangedEvent.CHANGE event. To enable it for states, you would need to specify that in the Waypoint metadata. I'd like to think later if we can let the Waypoint decorator automatically detect the correct type.
        <mx:Metadata>
          [Waypoint(type="com.adobe.cairngorm.navigation.waypoint.CurrentStateWaypoint")]
        </mx:Metadata>
    Then, the CurrentStateWaypoint could be build in a similar manner than the SelectedChildWaypoint. Here's an outline:
        public class CurrentStateWaypoint extends AbstractWaypoint
            override protected function navigateToHandler(destination:String):void
                view.currentState = destination;
            override public function onInitialize():void
                var stateView:UIComponent = view;
            override public function getDefaultDestination():String
                return null;
    If you could check out the trunk version for the latest code you'll also find many other features. I didn't update the documention on the wiki yet but if you run and follow this example, you'll get a good idea of what's new and where it is heading.

  • Cairngorm navigation

    I'm new to Cairngorm, I'm already using Parsley for IoC and I'm looking to use the Cairngorm Navigation library but I'm having some difficulties getting it going.
    I've followed the HowToUse for Cairngorm Navigation fairly carefully but the components on my ViewStack aren't getting changed when I dispatch an event with the content destination.
    Do I need to initialize the Cairngorm Navigation extension in any way, as described here? I've blundered around trying a few things: if I try and include CairngormNavigationLib as a tag in my MXML, or use Metadata.registerMetadataClass I get errors because the compiler can't find org.spicefactory.parsley.registry.*. In fact, looking at the source code for Parsley, I can't find these classes/interfaces anywhere in the source, despite being discussed in the Parsley language reference. Is this obvious a Parsley problem or something with my setup?
    Thanks in advance for the help!

    I am having the same issue here. I pulled the trunk and I am still having trouble getting the ViewStack to change. If I have some time later I might be able to debug it. Is the string value sent into newNavigateToEvent() supposed to be the same as the automationName of the landmark correct?

  • Understanding the practical implications of the Cairngorm 3 Navigation Library

    Hi there again,
    Based on the discussion from yesterday:
    http://forums.adobe.com/thread/897088?tstart=0
    ... I forgot to mention that I have difficulties to find practical use cases for the Navigation Library. What does the Navigation Library solve when it will be used in the development architecture? Nothing explicit seems to be mentioned about it in your documentation:
    http://sourceforge.net/adobe/cairngorm/wiki/HowToUseCairngormNavigation/
    When speaking in theory I also have the concern that the Navigation Library is breaking the separation of concern between the Presentation Layer and the Domain Layer (when using the Domain Driven Design language):
    http://sourceforge.net/adobe/cairngorm/wiki/UnderstandingCairngorm/
    ... or the separation of concern between the View Layer and the Data Layer (when using my language):
    http://code.google.com/p/masuland/wiki/NanoarchitectureMVCb
    Practically speaking again, I usually store the application state (or the waypoints/landmarks of the application) in the Application Model ... see:
         public class AppModel
              // States
              [Publish(scope='appModel', objectId='loginBoxState')]
              public var loginBoxState:String;
              [Publish(scope='appModel', objectId='appStackState')]
              public var appStackState:String;
              [Publish(scope='appModel', objectId='settingsBoxState')]
              public var settingsBoxState:String;
    For more information please check out these two versions:
    http://code.google.com/p/masuland/wiki/LoginExample#Flex_4_(Halo)_with_MVCbCtl_PInj
    http://code.google.com/p/masuland/wiki/LoginExample#Flex_4_(Halo)_with_MVCbCtl_PInjDdd
    ... of my Login Example:
    http://code.google.com/p/masuland/wiki/LoginExample
    I hope you can help me clarify this!
    Thank you,
    masu

    I managed to reproduce this issue in the NavigationParsleyProject. After the NavigationParsleySample1 application is started the active view is content.dashboard.nested.child1. However if you try to navigate to content.tasks.timetracking view, it will redirect you to content.tasks.expenses view which is the first child in the content.tasks ViewStack. All Timetracking view's enter and exit handlers as well as interceptors will be executed though.
    After I commented out the metadata for all event handlers and both interceptors in TimeTrackingPM class, I was successfully navigated to the content.tasks.timetracking view.
    This issue occurs only once and I believe it has something to do with the deferred instantiation. I tried to debug the source of the navigation library but haven't had any success yet.

  • Deep linking integrating with Cairngorm 3 Navigation Library

    Hi there,
    I wonder if the Cairngorm 3 Navigation Library will integrate deep linking in future? Furthermore, it would be great to know how deep linking could be used in coexistence with the Cairngorm 3 Navigation Library!
    Any thoughts about it?
    Thanks,
    masu

    Hello François,
    As adviced, I have posted this feature request to your jira:
    http://bugs.adobe.com/jira/browse/CGM-94
    For the moment, only John Cunliffe from this post:
    http://forums.adobe.com/thread/872180
    ... is capable of providing a working patch.
    Please keep me posted!
    Thank you,
    masu

  • Read contents of Pages library and show in custom webpart

    Hi,
    How to read the contents of "Pages" library (Published pages  and custom created pages only and not reading OOB pages)?
    I have a publishing site, in which I need to read the "Title" and URL" of the pages which are created by users and show in a custom webpart. If a new page is published, that page data should be added to the webpart.
    Is it possible to achieve this? I know of Content Query webpart, but I need to custom create a custom webpart with custom styling. Is it possible to use the logic of content query webpart in a custom visual webpart? How to achieve this programmatically?
    Thanks

    The process in 2013 is essentially the same as it was in 2010.  The only difference is that you don't have to manually add additional fields to the datafields list in the .webpart file.  But the .XSL customization is identical.  That's why
    you won't find many articles on how to do it in 2013.  It was already covered in 2010 and hasn't changed.  Here is one example from 2013.
    http://sp2013.blogspot.com/2012/09/content-query-and-metadata-driven.html
    Paul Stork SharePoint Server MVP
    Principal Architect: Blue Chip Consulting Group
    Blog: http://dontpapanic.com/blog
    Twitter: Follow @pstork
    Please remember to mark your question as "answered" if this solves your problem.

  • Problem with the navigation library with states in modules

    Hello,
    The application I'm working on is based on a shell which contain a "contentNavigator" where several states are defined :
    <code>
    <fx:Declarations>
            <parsley:Configure />
        </fx:Declarations>
        <fx:Metadata>
            [Waypoint(mode="states",name="shell")]
        </fx:Metadata>
        <s:states>
            <s:State name="dashboardModule" />
            <s:State name="registrationModule" />
            <s:State name="marketingModule" />
        </s:states>
        <components:ModulePad id="dashboard" includeIn="dashboardModule"  url="../../dashboard/bin-debug/dashboardModule.swf" />
        <components:ModulePad id="registration" includeIn="registrationModule"  url="../../registration/bin-debug/registrationModule.swf" />
    </code>
    Each ModulePad is a custom component that manage the loading/unloading of a spark module. The navigation in each spark module is based on the same principle, for example in the registrationModule :
    <code>
        <fx:Declarations>
            <parsley:ContextBuilder config="RegistrationContext" />
            <parsley:Configure />
        </fx:Declarations>
        <fx:Metadata>
            [Waypoint(mode="states",name="shell.registrationModule")]
        </fx:Metadata>
        <s:states>
            <s:State name="registration" />
            <s:State name="tracking" />
        </s:states>
        <presentation:Registration includeIn="registration" width="1000" top="130" left="40" bottom="30"/>
        <presentation:RegistrationTracking includeIn="tracking" width="1000" top="130" left="40" bottom="30"/>
    </code>
    At the beginning the navigation is working properly : when a NavigationEvent ("shell.registrationModule.tracking") is dispatched the registrationModule is loaded and when the loading is done the state is set to "tracking".
    Then if a NavigationEvent ("shell.dashboardModule.dashboard") is dispatched the registrationModule is automatically unloaded and the dashboardModule is loaded. But then if a NavigationEvent ("shell.registrationModule.tracking") is dispatched again, the state is set to "registration" (the default one) instead of "tracking" like the first time.
    The event log show that a (com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule.tracking:exit) is triggered just after the load of the registrationModule.
    Is this a bug or am i making a mistake in the implementation of the navigation ?
    Thanks for you help.

    Here is the log of the navigation events if it can help :
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell:firstEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell:everyEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher waypointChange shell
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule:firstEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule:everyEnter
    [SWF] Users:vincentjuge:Documents:Adobe Flash Builder 4.5:ThalamusDashboard:bin-debug:DashboardModule.swf - 1 052 130 octets après la décompression
    com.adobe.cairngorm.navigation.core.NavigationDispatcher waypointChange shell.dashboardModule
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule.dashboard:firstEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule.dashboard:everyEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule.dashboard:exit
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule:exit
    com.adobe.cairngorm.navigation.core.NavigationDispatcher waypointChange shell
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule:firstEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule:everyEnter
    [SWF] Users:vincentjuge:Documents:Adobe Flash Builder 4.5:ThalamusRegistration:bin-debug:RegistrationModule.swf - 1 108 823 octets après la décompression
    com.adobe.cairngorm.navigation.core.NavigationDispatcher waypointChange shell.registrationModule
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule.tracking:firstEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule.tracking:everyEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule.tracking:exit
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule:exit
    com.adobe.cairngorm.navigation.core.NavigationDispatcher waypointChange shell
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule.dashboard:enter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule.dashboard:everyEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule:enter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule:everyEnter
    [SWF] Users:vincentjuge:Documents:Adobe Flash Builder 4.5:ThalamusDashboard:bin-debug:DashboardModule.swf - 1 052 130 octets après la décompression
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule.dashboard:exit
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.dashboardModule:exit
    com.adobe.cairngorm.navigation.core.NavigationDispatcher waypointChange shell
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule.tracking:enter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule.tracking:everyEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule:enter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule:everyEnter
    [SWF] Users:vincentjuge:Documents:Adobe Flash Builder 4.5:ThalamusRegistration:bin-debug:RegistrationModule.swf - 1 108 823 octets après la décompression
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule.tracking:exit
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule.registration:firstEnter
    com.adobe.cairngorm.navigation.core.NavigationDispatcher shell.registrationModule.registration:everyEnter
    [Décharger SWF] Users:vincentjuge:Documents:Adobe Flash Builder 4.5:ThalamusDashboard:bin-debug:DashboardModule.swf
    [Décharger SWF] Users:vincentjuge:Documents:Adobe Flash Builder 4.5:Thalamus:bin-debug:Thalamus.swf

  • Information Screen Library and Store SDK or Reading SDK within a folio

    There are conflicting materials in regards to new r30 Information Screen functionality:
    adobeDPS.dialogService.displayCustomWebview(url)
    From Adobe TV's Information Screen & Scheduled Text Notifications by Colin Fleming, it states:
    Similar to digital blow-ins, but
    - Access to Store/Library API creates new possibilities in an article
    However, this capability conflicts other articles by Adobe, in which only the Reading SDK is available from an Information Screen when loaded within a folio.
    From Adobe Digital Publishing Suite Help, Using HTML and JavaScript APIs to extend DPS, it states:
    For HTML content within a folio, such as an HTML article or a Web Content overlay, you can reference the Reading API. The Reading API includes some some features available in the Library and Store API as well as APIs for geolocation, camera, calendar, and device detection.
    Any HTML content you specify in DPS App Builder can reference the Library and Store API. HTML articles or Web Content overlays in a folio can reference the Reading API.
    From Adobe's New APIs and features in r30, including folio navigation, article metadata and calendar events:
    The API that the webview can access depends on where the webview was invoked. If invoked from within the app, the webview will have access to the Library/Store API. If invoked from within a folio, the webview will have access to the Reading API. If your transparent webview was opened from a custom tab you will need to include the library/store API. If it was opened from a folio, you will need to include the reading API.
    Because this API is accessible from the library/store and reading APIs, this API is available to both DPS Enterprise and DPS Professional customers.
    Loading an Information Screen within a folio with the Library and Store SDK fails silently, unable to bring up the web view.
    Loading an Information Screen within a folio with the Reading SDK is functional.

    This line in Colin's video is incorrect:
    "Access to Store/Library API creates new possibilities in an article"
    The information in the articles is correct. Specifically, if you launch the Information Screen from within an HTML article or a Web Content overlay, you reference the Reading APIs. If you launch the Information Screen from within an entitlement banner, a custom library, or a custom slot, you reference the Library/Store APIs.

  • How to add a navigation Panel and Zoom Slider Bar using Java API

    Hello,
    I am using Mapviewer Java bean as I have to use Oracle Mapviewer in Java Stanalone application.Please can anyone tell me how to add a Navigation panel and Zoom Slider in Java API. I found the API s for same in Java Script but not in Java.Kindly help.
    I am using Oracle Mapviewer 11g.

    This is forum sponsored by Adobe make of Acrobat and Reader. Since Chrome and FireFox web browser have chosen to use their own viewer you might get more help in their forums or customer support.

  • Strange problem with AAM, Alerts, and custom app

    Hello
    We have a custom app written by an outside vendor. There is a function of the app called merge that basically takes a template in a document library and is supposed to make a copy for editing. The function only works if the Default AAM is the internal server
    name http://server1. However the alerts email links show the same thing so they do not work from outside of the network. If the default AAM is changed to the Internet URL http://sharepoint.domain.com the merge fails with error "error is The remote server
    returned an error: (401) Unauthorized., url is http://sharepoint.domain.com/prm/Document Library/Templates/Test co.docx." And the alerts are correct. 
    Of course the vendor says it is not their issue. Anyone able to give me some ideas? Can the Alert Template be changed to come from other than the default AAM value?
    Thanks

    the error ("401 unauthorized") is likely due to a LoopbackCheck.
    You cannot change the email message, alerts always use default AAM.
    Scott Brickey
    MCTS, MCPD, MCITP
    www.sbrickey.com
    Strategic Data Systems - for all your SharePoint needs

  • How to assign file extension and custom icon to executable?

    Hi all,
    I was reading an old thread about this issue:
    http://forums.ni.com/ni/board/message?board.id=170&thread.id=116925 
    I need to try to do this.  My application uses a custom file extension (i.e. .abc).  Upon installation I would like to:
    1.  Assign My App and custom icon to the file class (extension .abc).
    This could be done by manipluting the registry (http://msdn.microsoft.com/en-us/library/bb776856(VS.85).aspx)?  This could be a problem with Vista s unless registry operations occur during installation any changes are placed in a VirtualStore, correct?
    2.  Enable the double-clicking of .abc file type to pass the data in the file to my VI (exe). 
    According to the File Handling Guidelines of Jean-Pierre Drolet (http://www.openg.org/tiki/tiki-index.php?page=File+Handling+Guidelines) the best way to do this may be using LabVIEW as an ActiveX server.
    I know that when I build an executable (or installer?) there is the option to enable LabVIEW to act as an ActiveX server.  This much I know I need to do.
    I thought I would open this discussion again as others may be interested and there doesn't appear to be a completely clear solution available.  Please do contribute where you can.
    Cheers,
    Battler.

    battler. wrote:
    My application consists of Event Structure.
    How to register for ommand line event so that when a user double-clicks on a .abc file I can handle the opening of it?
    This needs to work (the files need to open) not only when the application is closed but also when it's already open.
    Anyone have ideas? 
    The solution to that is to implement a DDE server in your application (and add DDE entries to the registry on installation). There are still DDE functions in LabVIEW vi.lib\Platform\dde.llb but they are considered depreciated and have been removed from the palette, also because Microsoft is trying to tell everyone that DDE is depreciated and sort of unsupported too. But it is still the mechanisme to pass actions from the shell to running applications.
    I hesitate to send you over to lavag.org where there have been some discussions about this years ago. If you go there you would do good to employ a friendly attitude. That board is run all by enthusiasts and idealists and they are all great folks but react not very friendly to people with an attitude.
    Rolf Kalbermatter
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Best way to move Ap library and masters to a new HD

    Hello,
    I currently have my library on a 500GB HD on my mac pro. Since free space is running out I purchased a 1TB internal drive. Now I want to move everything to this new drive (library and masters).
    By copying all the masters and the library to the new location and pointing to it in the general preference of aperture would work but copying just will take too long.
    Is there a better way to do that?

    If you are moving masters, that sounds like you have referenced master files.
    1) Backup your Aperture Library if you can; don’t delete it and your original referenced masters until the last step, if ever!
    2) Use Aperture -> File -> Relocate Masters so Aperture makes all the connections to the new location itself:
    To move masters for referenced images to a new location
    In the Browser, select the referenced images whose masters you want to move.
    Choose File > Relocate Masters.
    Choose a folder location in the dialog that appears.
    Choose None from the Subfolders pop-up menu to specify that the files be stored as separate, individual files in the selected folder. You can also specify that Aperture create a hierarchy of subfolders with specific folder names to store your files. For more information about creating folders to hold your imported image files, see Importing Masters for Referenced Images into Folders.
    Choose a naming convention from the Name Format pop-up menu to specify how you want the masters named.
    For example, choose Master Filename from the Version Name pop-up menu to have your files stored using the current master filenames from your camera or card. Choose a name format from the Version Name pop-up menu to have your masters stored using a specified name. If you choose a custom name format, enter the name you want in the Name Text field. For more information about naming files, see Automatically Naming Your Imported Images.
    Click Relocate Masters.
    3) As for the Aperture Library now updated with the new locations for the referenced masters, you can certainly simply copy your Aperture Library to the internal drive.
    4) Then drag that internal drive library icon over your Aperture program icon in the dock, and you’ll launch the program with everything taken care of on the new location and the new library.
    5) Once confident everything worked properly (maybe in a few months unless you need the disk space sooner), delete or archive your original referenced masters and original Aperture Library.

  • Text labels missing under Library and Viewer icons in V31

    I just built a multi-folio app with DPS Pro Edition. I specified V31. When I preview the resulting Developer app on my iPad, the text under the small "Library" and "Viewer" icons at the bottom of the screen is missing. The Library and Viewer icons are there, but the space below the icon where the words "Library" and "Viewer" should appear is missing.
    I didn't select "Use Customized Strings" or anything like that when I built the app in DPS App Builder. Any ideas?

    Sent the details to your email. If you can:
    Can you try to build a new app and see if the labels are missing?
    If the app is for both ipad/iphone try to rebuild for ipad only?
    Check the app builder version number?
    Thanks

  • Read navigation url OR Custom property for a term in Taxonomy using Javascript

    Hi All,
    we have followed the below steps to retrieve the managed metadata terms.
    http://sympmarc.com/2013/10/11/spservices-stories-18-retrieve-managed-metadata-using-javascript-and-spservices/
    and we have achieved and constructed the same through JavaScript.
    Below is the screen shot.
    Issue:-
    we are unable to retrieve the term navigation url. Can you please help us to retrieve navigation url OR Custom property.
    Thanks in Advance.

    Hi,
    According to your description, you want to manage term custom property in SharePoint 2010.
    As you know, there is no OOTB method to meet your requirement.
    If you want to do it without coding, you can take a look at this tool about managing term store:
    http://www.metavistech.com/product/term-store-manager
    As this is a third party tool, we are not sure whether it has risks, please use with caution.
    Best regards
    Patrick Liang
    TechNet Community Support

Maybe you are looking for