Hi Paul,

Thanks a lot.

It works fine.

Envoyé depuis iCloud

Le 15 jul 2013 à 06:43, Paul Yu <p...@mac.com> a écrit :

Raymond

This should be it.

.java


    private NSDictionary _tabSelection;


    public NSDictionary tabSelection() {
        return_tabSelection;
    }

    public void setTabSelection(NSDictionary tabSelection) {
        _tabSelection = tabSelection;
        String tabLabelString = (String) _tabSelection.valueForKey("tabLabel");

// THIS IS MY DYNAMIC LIST
        NSArray<EvaluationDomain> temp = EOQualifier.filteredArrayWithQualifier(evaluationDomains(), EvaluationDomain.TAB_LABEL.likeInsensitive(tabLabelString));
        if ( ! temp.isEmpty()) {
            _accessController.setEvaluationDomain((EvaluationDomain) temp.objectAtIndex(0));
        } else {
            _accessController.setEvaluationDomain(null);
        }

        

    }

    

    public Object selectedTabsWOComponent() {
        return _tabSelection.valueForKey("wocomponent");
    }

    private NSArray<NSDictionary> _tabs;

    

    public NSArray<NSDictionary> tabs() {
    if (_tabs == null) {
        // CREATE THE LIST OF NSDictionaries to load into the array
        NSMutableArray<NSDictionary> tabs = new NSMutableArray<NSDictionary>();

       

        NSMutableDictionary<Object, String> observationsTab = new NSMutableDictionary<Object, String>("Observations", "tabLabel");
        observationsTab.takeValueForKey(ObservationSubTab.class.getName(), "wocomponent");

        NSMutableDictionary<Object, String> recommendationsTab = new NSMutableDictionary<Object, String>("Recommendations", "tabLabel");
            recommendationsTab.takeValueForKey(EvaluationRecommendations.class.getName(), "wocomponent");
            NSMutableDictionary<Object, String> teacherResponseTab = new NSMutableDictionary<Object, String>("Teacher Response", "tabLabel");
            teacherResponseTab.takeValueForKey(EvaluationTeacherResponse.class.getName(), "wocomponent");
            NSMutableDictionary<Object, String> artifactsTab = new NSMutableDictionary<Object, String>("Artifacts", "tabLabel");
            artifactsTab.takeValueForKey(EvaluationArtifacts.class.getName(), "wocomponent");

       

            //  This is the list of Tabs
            //  Start with Observation
            //  Then the Domains associated with this Evaluation
            //  Then the Administrators recommendations and then the Teachers Response
            //  Finally the Artifacts

            

       tabs.add(observationsTab);
        for (EvaluationDomain evaluationDomain : evaluation().evaluationDomainsSortedByDisplaySequenceKey() ) {
           String tabLabel = evaluationDomain.tabLabel();
            NSMutableDictionary<Object, String> tab = new NSMutableDictionary<Object, String>();
            tab.takeValueForKey(tabLabel, "tabLabel");
            tab.takeValueForKey(EvaluationDetailDomain.class.getName(), "wocomponent");

           

           tabs.add(tab.immutableClone());
       }
       tabs.add(recommendationsTab);
            tabs.add(teacherResponseTab);
       tabs.add(artifactsTab);
        _tabs = tabs.immutableClone();
    }

   

    return _tabs;
}

On Jul 15, 2013, at 9:36 AM, Raymond NANEON <rnan...@me.com> wrote:

Hi Paul,

Your example is great but very confused with all variables. Can I have a clean .java example.

Sorry for the mess.
Envoyé depuis iCloud

Le 15 jul 2013 à 06:19, Paul Yu <p...@mac.com> a écrit :

Raymond

observationsTab is myTab1.  Sorry.  Cut and paste and clean, not too good.

private NSDictionary _tabSelection;

public NSDictionary tabSelection() {
        return_tabSelection;
    }

    public void setTabSelection(NSDictionary tabSelection) {
        _tabSelection = tabSelection;
        String tabLabelString = (String) _tabSelection.valueForKey("tabLabel");

    }
    
    public Object selectedTabsWOComponent() {
        return _tabSelection.valueForKey("wocomponent");
    }

On Jul 15, 2013, at 9:09 AM, Raymond NANEON <rnan...@me.com> wrote:

Hi Paul,

Thanks for your help.

Can I have detail of .java ? tabSelection nature?  observationsTab ?? where do you use this component?
Envoyé depuis iCloud

Le 15 jul 2013 à 05:07, Paul Yu <p...@mac.com> a écrit :

Raymond

I had better success using CCTabPanel for dynamically creating tabs.

.html

<wo:CCAjaxTabPanelid="tabs"selectedTab="$tabSelection"tabs="$tabs"tabNameKey="tabLabel"useFormSubmit="$true">
<!--  <wo:str value = "$selectedTabsWOComponent" />-->

<wo:AjaxUpdateContainerid="ccTabContentContainer">
    <wo:switchWOComponentName="$selectedTabsWOComponent"accessController="$accessController"evaluation="$evaluation"/>
</wo:AjaxUpdateContainer>

</wo:CCAjaxTabPanel>


.java

    private NSArray<NSDictionary> _tabs;
    
    public NSArray<NSDictionary> tabs() {
    if (_tabs == null) {
        // the evaluation has a method for getting the districtDomains
        NSMutableArray<NSDictionary> tabs = new NSMutableArray<NSDictionary>();
       
        NSMutableDictionary<Object, String> myTab1 = new NSMutableDictionary<Object, String>("My Tab Title", "tabLabel");
        observationsTab.takeValueForKey(ObservationSubTab.class.getName(), "wocomponent");

// More tabs here

        tabs.add(myTab1);

        _tabs = tabs.immutableClone();
    }
   
    return _tabs;
}

Paul
On Jul 15, 2013, at 4:18 AM, Raymond NANEON <rnan...@me.com> wrote:

Hi List,

I don't understand why item is null when I want to dynamically create tabs in AjaxTabbedPanel using WORepetion.
What's wrong in my codes?
Envoyé depuis iCloud

Le 12 jul 2013 à 07:08, Raymond NANEON <rnan...@me.com> a écrit :

Hi List,

I want to create many of AjaxTabbedPanelTab from WORepetition in AjaxTabbedPanel.

html :

<webobject name = "Tabs">
                            <webobject name = "repeatTabbedPanelTab">
                              <webobject name = "DynamiqueTab"><webobject name = "template" /></webobject>
                            </webobject>
                          </webobject>

wod :

Tabs : AjaxTabbedPanel {
    id = tabsId;
}

repeatTabbedPanelTab : WORepetition {
    list = competences;
    item = competenceItem;
    identifier = dynaTabId;
}

DynamiqueTab : AjaxTabbedPanelTab {
    name = libelle;
    isSelected = false;
    id = dynaTabId;
}

template : TemplateCompTierBase {
    competence = competenceItem;
    domaine = competenceItem.domaine;
    editingContext = competenceItem.editingContext;
    updateContainerID = TRCompoementId;
}


In this case (WORepetition in AjaxTabbedPanel) in  the repetition item is always NULL.

So when I put the AjaxTabbedPanel in the WORepetition, it works fine but I have many of AjaxTabbedPanel instead of many tabs.

Thanks for your help
Envoyé depuis iCloud
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/rnaneon%40me.com

This email sent to rnan...@me.com
 
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/pyu%40mac.com

This email sent to p...@mac.com
 



 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to