litesoft
@ 566
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 |
package org.litesoft.datt.client.ui.views.stories; import org.litesoft.GWT.client.*; import org.litesoft.GWT.client.view.*; import org.litesoft.GWT.client.widgets.*; import org.litesoft.GWT.client.widgets.Button; import org.litesoft.GWT.forms.client.*; import org.litesoft.GWT.forms.client.components.*; import org.litesoft.bo.views.*; import org.litesoft.core.util.*; import org.litesoft.datt.client.*; import org.litesoft.datt.client.boviews.*; import org.litesoft.datt.client.support.*; import org.litesoft.datt.client.ui.widgets.*; import org.litesoft.uispecification.*; import com.google.gwt.event.dom.client.*; import com.google.gwt.user.client.ui.*; public class MergeStoriesStepThree extends ScreenView implements ClickHandler, TwoViewObjectInfoHelperScreenView { private StoryViewDataProvider mDataProvider = StoryViewDataProvider.getInstance(); private UriFragmentIdParams mEncodedURLs = null; private Helper mFromHelper = new Helper( this, ViewDefs.STORY_MERGE_STORIES ); private Helper mIntoHelper = new Helper( this, ViewDefs.STORY_MERGE_STORIES_STEP_TWO ); private ButtonBase mMergeButton; @Override public UriFragmentIdParams createRefreshParams() { return mEncodedURLs; } public MergeStoriesStepThree( String pSection, ViewDef pViewDef, TwoStoryURLs pTwoStoryURLs ) { super( title( pSection, pViewDef ) ); if ( pTwoStoryURLs != null ) { mEncodedURLs = MergeStoriesStepThreeFactory.encodeParams( pTwoStoryURLs ); mFromHelper.initialize( pTwoStoryURLs.getStory0(), mIntoHelper ); mIntoHelper.initialize( pTwoStoryURLs.getStory1(), mFromHelper ); } addStandardTitleBar(); addLeft( BackButton.factory( "Change From" ).add( mFromHelper.createShowScreenCommand() ).create() ); addLeft( BackButton.factory( "Change Into" ).add( mIntoHelper.createShowScreenCommand() ).create() ); add( createSectionTitle( "Story to merge From" ) ); add( mFromHelper.createInfoPanel() ); add( createSectionTitle( "Story to merge Into" ) ); add( mIntoHelper.createInfoPanel() ); add( new SizeableSpacer().stretchable() ); } @Override public void aboutToShow() { super.aboutToShow(); if ( mFromHelper.requestViewObject() ) { mIntoHelper.requestViewObject(); } } @Override public Widget getBottomBar() { RightHorizontalPanel zActionPanel = new RightHorizontalPanel(); zActionPanel.add( mMergeButton = Button.named( "Merge" ).green().text().add( this ).disabled().create() ); return zActionPanel; } @Override public void formsReady() { String zNoMatch = "No match"; for ( String zName : mFromHelper.getNamedComponentNames() ) { IFormComponent z0Component = mFromHelper.getNamedComponent( zName ); IFormComponent z1Component = mIntoHelper.getNamedComponent( zName ); if ( (z0Component != null) && (z1Component != null) ) { if ( !UtilsCommon.areNonArraysEqual( z0Component.getCurrentValue(), // z1Component.getCurrentValue() ) ) { z0Component.setError( zNoMatch ); z1Component.setError( zNoMatch ); } } } mMergeButton.setEnabled( true ); } @Override public void onClick( ClickEvent event ) // Merge Button { StoryView zMergeFromStoryView = mFromHelper.getFormBinder().getObject(); StoryView zMergeIntoSiteStoryView = mIntoHelper.getFormBinder().getObject(); mDataProvider.mergeStory( zMergeFromStoryView, zMergeIntoSiteStoryView, new SimpleDataProviderCallBack() { @Override public void error( String pError ) { if ( UtilsCommon.isNotNullOrEmpty( pError ) ) { // Server Failure AlertManager.alert( this.getClass().getName(), "Merge Story", pError ); } else { // Server Success backToHome( "Story's Merged" ); } } } ); } private static class Helper extends TwoViewObjectInfoHelper<StoryView> implements StoryFindable { public Helper( MergeStoriesStepThree pScreenView, ViewDef pViewDef ) { super( pScreenView, pViewDef ); } @Override protected FormBinder<StoryView> createFormBinder( FormEngine pFE ) { return new FormBinder<StoryView>( pFE, StoryViewMetaData.getInstance() ); } @Override public Widget createInfoPanel() { return new StoryInfoPanel( getFormBinder() ); } @Override public boolean requestViewObject() { return StoryScreenViewHelper.requestRequiredStory( this, getViewObjectURL(), null ); } @Override public void foundStory( StoryView pStoryView, Integer pRequestID ) { setExistingObject( pStoryView, FormEngine.Mode.ViewRegular ); } } } |
Commits for litesoft/trunk/Java/DATT/src/org/litesoft/datt/client/ui/views/stories/MergeStoriesStepThree.java
Revision | Author | Commited | Message |
---|---|---|---|
566 Diff | markcmarkc | Mon 14 Nov, 2011 01:45:18 +0000 | |
501 Diff | markcmarkc | Sun 11 Sep, 2011 22:50:22 +0000 | Added a customer |
498 Diff | GeorgeS | Sun 11 Sep, 2011 18:32:09 +0000 | |
497 Diff | GeorgeS | Sun 11 Sep, 2011 18:30:11 +0000 | |
496 Diff | GeorgeS | Sun 11 Sep, 2011 16:58:00 +0000 | |
430 | GeorgeS | Sat 20 Aug, 2011 19:46:21 +0000 |