- Merged changes
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/962a81ca Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/962a81ca Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/962a81ca Branch: refs/heads/feature-autobuild/example-maven-dirs Commit: 962a81ca6c493ce190d8f67e570367ce153e9124 Parents: ecb1450 666b761 Author: Christofer Dutz <christofer.d...@codecentric.de> Authored: Sat Nov 5 16:14:26 2016 +0100 Committer: Christofer Dutz <christofer.d...@codecentric.de> Committed: Sat Nov 5 16:14:26 2016 +0100 ---------------------------------------------------------------------- examples/build_example.xml | 1 + .../src/main/flex/MyInitialView.mxml | 2 +- .../src/main/flex/models/ProductsModel.as | 15 +- .../main/flex/products/ProductItemRenderer.as | 2 +- .../FlexJSStore/src/main/flex/FlexJSStore.mxml | 2 +- .../FlexJSStore/src/main/flex/HomeView.mxml | 8 +- .../FlexJSStore/src/main/flex/SupportView.mxml | 6 +- .../src/main/flex/productsView/Grip.mxml | 4 +- .../productsView/ProductCatalogThumbnail.mxml | 2 +- .../main/flex/productsView/ProductDetails.mxml | 2 +- .../main/flex/productsView/ProductListItem.mxml | 2 +- .../src/main/flex/FlexJSStore.mxml | 2 +- .../src/main/flex/HomeView.mxml | 10 +- .../src/main/flex/SupportView.mxml | 6 +- .../src/main/flex/productsView/Grip.mxml | 4 +- .../productsView/ProductCatalogThumbnail.mxml | 2 +- .../main/flex/productsView/ProductDetails.mxml | 2 +- .../main/flex/productsView/ProductListItem.mxml | 2 +- .../flex/samples/flexstore/ProductThumbEvent.as | 18 +- .../src/main/flex/MyInitialView.mxml | 2 +- .../src/main/flex/MyInitialView.mxml | 2 +- examples/flexjs/TeamPage/build.xml | 61 + examples/flexjs/TeamPage/pom.xml | 115 ++ .../TeamPage/src/MemberDataJSONItemConverter.as | 55 + .../flexjs/TeamPage/src/MemberItemRenderer.mxml | 87 + examples/flexjs/TeamPage/src/MyInitialView.mxml | 76 + .../TeamPage/src/NoSelectionController.as | 38 + examples/flexjs/TeamPage/src/TeamPage.mxml | 52 + .../flexjs/TeamPage/src/models/MemberList.as | 82 + examples/flexjs/TeamPage/src/models/Person.as | 128 ++ examples/flexjs/TeamPage/src/team.json | 504 ++++++ examples/flexjs/pom.xml | 2 +- frameworks/build.xml | 5 + frameworks/js/FlexJS/build.xml | 6 + frameworks/js/FlexJS/projects/BasicJS/build.xml | 142 ++ .../src/main/config/compile-js-config.xml | 96 ++ .../src/main/config/compile-js-config.xml | 1 + .../src/main/config/compile-js-config.xml | 1 + frameworks/projects/Basic/build.xml | 116 ++ frameworks/projects/Basic/pom.xml | 128 ++ .../Basic/src/main/config/compile-as-config.xml | 90 ++ .../Basic/src/main/flex/BasicClasses.as | 214 +++ .../flex/org/apache/flex/core/Application.as | 647 ++++++++ .../org/apache/flex/core/ApplicationBase.as | 110 ++ .../flex/org/apache/flex/core/ContainerBase.as | 443 +++++ .../flex/core/ContainerBaseStrandChildren.as | 99 ++ .../org/apache/flex/core/FilledRectangle.as | 125 ++ .../org/apache/flex/core/HTMLElementWrapper.as | 265 +++ .../apache/flex/core/IScrollingLayoutParent.as | 68 + .../main/flex/org/apache/flex/core/ImageBase.as | 84 + .../main/flex/org/apache/flex/core/ListBase.as | 135 ++ .../apache/flex/core/ListBaseStrandChildren.as | 98 ++ .../org/apache/flex/core/SimpleApplication.as | 104 ++ .../main/flex/org/apache/flex/core/UIBase.as | 1519 ++++++++++++++++++ .../flex/org/apache/flex/core/UIButtonBase.as | 877 ++++++++++ .../src/main/flex/org/apache/flex/core/View.as | 34 + .../main/flex/org/apache/flex/core/ViewBase.as | 111 ++ .../org/apache/flex/events/ItemAddedEvent.as | 88 + .../org/apache/flex/events/ItemClickedEvent.as | 115 ++ .../org/apache/flex/events/ItemRemovedEvent.as | 88 + .../org/apache/flex/events/ItemRendererEvent.as | 90 ++ .../src/main/flex/org/apache/flex/html/Alert.as | 287 ++++ .../main/flex/org/apache/flex/html/Button.as | 85 + .../main/flex/org/apache/flex/html/ButtonBar.as | 76 + .../flex/org/apache/flex/html/ButtonBase.as | 101 ++ .../main/flex/org/apache/flex/html/CheckBox.as | 187 +++ .../flex/org/apache/flex/html/CloseButton.as | 66 + .../main/flex/org/apache/flex/html/ComboBox.as | 277 ++++ .../main/flex/org/apache/flex/html/Container.as | 108 ++ .../flex/org/apache/flex/html/ControlBar.as | 99 ++ .../main/flex/org/apache/flex/html/DataGrid.as | 166 ++ .../org/apache/flex/html/DataGridButtonBar.as | 51 + .../flex/html/DataGridButtonBarTextButton.as | 55 + .../flex/org/apache/flex/html/DateChooser.as | 74 + .../main/flex/org/apache/flex/html/DateField.as | 95 ++ .../flex/org/apache/flex/html/DropDownList.as | 235 +++ .../src/main/flex/org/apache/flex/html/Form.as | 99 ++ .../flex/org/apache/flex/html/HContainer.as | 61 + .../src/main/flex/org/apache/flex/html/HRule.as | 63 + .../src/main/flex/org/apache/flex/html/Image.as | 93 ++ .../org/apache/flex/html/ImageAndTextButton.as | 128 ++ .../flex/org/apache/flex/html/ImageButton.as | 89 + .../src/main/flex/org/apache/flex/html/Label.as | 194 +++ .../src/main/flex/org/apache/flex/html/List.as | 311 ++++ .../flex/org/apache/flex/html/MXMLBeadView.as | 317 ++++ .../flex/org/apache/flex/html/MultilineLabel.as | 76 + .../flex/org/apache/flex/html/NumericStepper.as | 202 +++ .../src/main/flex/org/apache/flex/html/Panel.as | 121 ++ .../org/apache/flex/html/PanelWithControlBar.as | 121 ++ .../flex/org/apache/flex/html/RadioButton.as | 350 ++++ .../flex/org/apache/flex/html/RangeStepper.as | 69 + .../flex/org/apache/flex/html/SimpleAlert.as | 140 ++ .../flex/org/apache/flex/html/SimpleList.as | 79 + .../main/flex/org/apache/flex/html/Slider.as | 233 +++ .../main/flex/org/apache/flex/html/Spacer.as | 64 + .../main/flex/org/apache/flex/html/Spinner.as | 166 ++ .../main/flex/org/apache/flex/html/TextArea.as | 126 ++ .../flex/org/apache/flex/html/TextButton.as | 139 ++ .../main/flex/org/apache/flex/html/TextInput.as | 187 +++ .../main/flex/org/apache/flex/html/TitleBar.as | 146 ++ .../org/apache/flex/html/ToggleTextButton.as | 170 ++ .../main/flex/org/apache/flex/html/ToolTip.as | 60 + .../src/main/flex/org/apache/flex/html/Tree.as | 73 + .../flex/org/apache/flex/html/VContainer.as | 62 + .../src/main/flex/org/apache/flex/html/VRule.as | 68 + .../flex/org/apache/flex/html/WebBrowser.as | 145 ++ .../accessories/NumericOnlyTextInputBead.as | 199 +++ .../flex/html/accessories/PasswordInputBead.as | 102 ++ .../flex/html/accessories/TextPromptBead.as | 148 ++ .../apache/flex/html/accessories/ToolTipBead.as | 141 ++ .../flex/html/beads/AlertMeasurementBead.as | 88 + .../org/apache/flex/html/beads/AlertView.as | 226 +++ .../flex/html/beads/BackgroundImageBead.as | 112 ++ .../org/apache/flex/html/beads/ButtonBarView.as | 69 + .../org/apache/flex/html/beads/CSSButtonView.as | 167 ++ .../html/beads/CSSImageAndTextButtonView.as | 367 +++++ .../apache/flex/html/beads/CSSTextButtonView.as | 350 ++++ .../flex/html/beads/CSSTextToggleButtonView.as | 105 ++ .../org/apache/flex/html/beads/CheckBoxView.as | 296 ++++ .../apache/flex/html/beads/CloseButtonView.as | 101 ++ .../org/apache/flex/html/beads/ComboBoxView.as | 248 +++ .../org/apache/flex/html/beads/ContainerView.as | 554 +++++++ .../html/beads/ControlBarMeasurementBead.as | 116 ++ .../flex/html/beads/DataGridColumnView.as | 101 ++ .../apache/flex/html/beads/DataGridLinesBead.as | 199 +++ .../org/apache/flex/html/beads/DataGridView.as | 266 +++ .../DataItemRendererFactoryForArrayData.as | 176 ++ .../DataItemRendererFactoryForArrayList.as | 194 +++ .../DataItemRendererFactoryForColumnData.as | 142 ++ ...ataItemRendererFactoryForHierarchicalData.as | 113 ++ .../html/beads/DataProviderChangeNotifier.as | 194 +++ .../apache/flex/html/beads/DateChooserView.as | 328 ++++ .../org/apache/flex/html/beads/DateFieldView.as | 192 +++ .../flex/html/beads/DecrementButtonView.as | 94 ++ .../flex/html/beads/DownArrowButtonView.as | 111 ++ .../apache/flex/html/beads/DropDownListView.as | 301 ++++ .../org/apache/flex/html/beads/HRuleView.as | 87 + .../flex/html/beads/HScrollBarThumbView.as | 120 ++ .../flex/html/beads/HScrollBarTrackView.as | 118 ++ .../apache/flex/html/beads/HScrollBarView.as | 99 ++ .../apache/flex/html/beads/IBackgroundBead.as | 35 + .../org/apache/flex/html/beads/IBorderBead.as | 35 + .../org/apache/flex/html/beads/IComboBoxView.as | 78 + .../org/apache/flex/html/beads/IDataGridView.as | 36 + .../apache/flex/html/beads/IDropDownListView.as | 57 + .../apache/flex/html/beads/IGraphicsDrawing.as | 36 + .../org/apache/flex/html/beads/IListView.as | 48 + .../apache/flex/html/beads/IScrollBarView.as | 80 + .../org/apache/flex/html/beads/ISliderView.as | 60 + .../org/apache/flex/html/beads/ISpinnerView.as | 69 + .../apache/flex/html/beads/ITextFieldView.as | 44 + .../apache/flex/html/beads/ITextItemRenderer.as | 45 + .../flex/html/beads/ImageAndTextButtonView.as | 276 ++++ .../apache/flex/html/beads/ImageButtonView.as | 158 ++ .../org/apache/flex/html/beads/ImageView.as | 46 + .../flex/html/beads/IncrementButtonView.as | 94 ++ .../flex/html/beads/LeftArrowButtonView.as | 112 ++ .../flex/org/apache/flex/html/beads/ListView.as | 211 +++ .../flex/html/beads/MultilineTextFieldView.as | 56 + .../flex/html/beads/NumericStepperView.as | 186 +++ .../org/apache/flex/html/beads/PanelView.as | 168 ++ .../flex/html/beads/PanelWithControlBarView.as | 207 +++ .../apache/flex/html/beads/RadioButtonView.as | 281 ++++ .../apache/flex/html/beads/RangeStepperView.as | 157 ++ .../flex/html/beads/RightArrowButtonView.as | 112 ++ .../org/apache/flex/html/beads/ScrollBarView.as | 216 +++ .../apache/flex/html/beads/SimpleAlertView.as | 150 ++ .../flex/html/beads/SingleLineBorderBead.as | 91 ++ .../apache/flex/html/beads/SliderThumbView.as | 156 ++ .../apache/flex/html/beads/SliderTrackView.as | 153 ++ .../org/apache/flex/html/beads/SliderView.as | 179 +++ .../flex/html/beads/SolidBackgroundBead.as | 195 +++ .../org/apache/flex/html/beads/SpinnerView.as | 180 +++ .../org/apache/flex/html/beads/TextAreaView.as | 263 +++ .../html/beads/TextButtonMeasurementBead.as | 86 + .../apache/flex/html/beads/TextButtonView.as | 217 +++ .../html/beads/TextFieldLabelMeasurementBead.as | 92 ++ .../org/apache/flex/html/beads/TextFieldView.as | 54 + .../apache/flex/html/beads/TextFieldViewBase.as | 404 +++++ .../org/apache/flex/html/beads/TextInputView.as | 135 ++ .../flex/html/beads/TextInputWithBorderView.as | 100 ++ .../TextItemRendererFactoryForArrayData.as | 159 ++ ...extItemRendererFactoryForStringVectorData.as | 143 ++ .../flex/html/beads/TitleBarMeasurementBead.as | 108 ++ .../apache/flex/html/beads/TitleBarView.mxml | 58 + .../apache/flex/html/beads/UpArrowButtonView.as | 112 ++ .../org/apache/flex/html/beads/VRuleView.as | 87 + .../flex/html/beads/VScrollBarThumbView.as | 119 ++ .../flex/html/beads/VScrollBarTrackView.as | 118 ++ .../apache/flex/html/beads/VScrollBarView.as | 99 ++ .../apache/flex/html/beads/WebBrowserView.as | 198 +++ .../html/beads/controllers/AlertController.as | 88 + .../controllers/ButtonAutoRepeatController.as | 147 ++ .../beads/controllers/ComboBoxController.as | 104 ++ .../controllers/DateChooserMouseController.as | 127 ++ .../controllers/DateFieldMouseController.as | 96 ++ .../beads/controllers/DropDownListController.as | 117 ++ .../EditableTextKeyboardController.as | 86 + .../controllers/HScrollBarMouseController.as | 101 ++ .../controllers/ItemRendererMouseController.as | 209 +++ .../ListSingleSelectionMouseController.as | 153 ++ .../controllers/RangeStepperMouseController.as | 94 ++ .../controllers/ScrollBarMouseControllerBase.as | 184 +++ .../beads/controllers/SliderMouseController.as | 286 ++++ .../beads/controllers/SpinnerMouseController.as | 124 ++ .../TreeSingleSelectionMouseController.as | 82 + .../controllers/VScrollBarMouseController.as | 101 ++ .../flex/html/beads/layouts/BasicLayout.as | 445 +++++ .../flex/html/beads/layouts/ButtonBarLayout.as | 143 ++ .../flex/html/beads/layouts/DataGridLayout.as | 208 +++ .../beads/layouts/DataGridPercentageLayout.as | 224 +++ .../FlexibleFirstChildHorizontalLayout.as | 244 +++ .../flex/html/beads/layouts/HScrollBarLayout.as | 121 ++ .../flex/html/beads/layouts/HorizontalLayout.as | 326 ++++ .../flex/html/beads/layouts/IDataGridLayout.as | 52 + .../html/beads/layouts/LayoutChangeNotifier.as | 103 ++ .../layouts/OneFlexibleChildHorizontalLayout.as | 332 ++++ .../layouts/OneFlexibleChildVerticalLayout.as | 459 ++++++ .../flex/html/beads/layouts/TileLayout.as | 248 +++ .../flex/html/beads/layouts/VScrollBarLayout.as | 122 ++ .../html/beads/layouts/VerticalColumnLayout.as | 199 +++ .../flex/html/beads/layouts/VerticalLayout.as | 362 +++++ .../apache/flex/html/beads/models/AlertModel.as | 288 ++++ .../beads/models/ArrayListSelectionModel.as | 244 +++ .../html/beads/models/ArraySelectionModel.as | 243 +++ .../flex/html/beads/models/ComboBoxModel.as | 100 ++ .../flex/html/beads/models/DataGridModel.as | 71 + .../beads/models/DataGridPresentationModel.as | 88 + .../flex/html/beads/models/DateChooserModel.as | 189 +++ .../flex/html/beads/models/ImageAndTextModel.as | 77 + .../apache/flex/html/beads/models/ImageModel.as | 89 + .../html/beads/models/ListPresentationModel.as | 107 ++ .../apache/flex/html/beads/models/PanelModel.as | 158 ++ .../apache/flex/html/beads/models/RangeModel.as | 222 +++ .../html/beads/models/RangeModelExtended.as | 101 ++ .../flex/html/beads/models/ScrollBarModel.as | 98 ++ .../html/beads/models/SingleLineBorderModel.as | 85 + .../html/beads/models/StringSelectionModel.as | 221 +++ .../apache/flex/html/beads/models/TextModel.as | 125 ++ .../flex/html/beads/models/TitleBarModel.as | 136 ++ .../flex/html/beads/models/ToggleButtonModel.as | 145 ++ .../html/beads/models/ValueToggleButtonModel.as | 123 ++ .../flex/html/beads/models/ViewportModel.as | 72 + .../flex/html/beads/models/WebBrowserModel.as | 100 ++ .../apache/flex/html/supportClasses/Border.as | 49 + .../ButtonBarButtonItemRenderer.as | 145 ++ .../flex/html/supportClasses/CheckBoxIcon.as | 92 ++ .../html/supportClasses/ContainerContentArea.as | 81 + .../DataGridButtonBarButtonItemRenderer.as | 81 + .../flex/html/supportClasses/DataGridColumn.as | 127 ++ .../html/supportClasses/DataGridColumnList.as | 61 + .../flex/html/supportClasses/DataGroup.as | 122 ++ .../html/supportClasses/DataItemRenderer.as | 179 +++ .../html/supportClasses/DateChooserButton.as | 67 + .../html/supportClasses/DateHeaderButton.as | 48 + .../html/supportClasses/DropDownListList.as | 63 + .../html/supportClasses/GraphicsItemRenderer.as | 316 ++++ .../flex/html/supportClasses/HScrollBar.as | 49 + .../flex/html/supportClasses/RadioButtonIcon.as | 111 ++ .../flex/html/supportClasses/ScrollBar.as | 50 + .../html/supportClasses/ScrollingViewport.as | 354 ++++ .../flex/html/supportClasses/SpinnerButton.as | 31 + .../html/supportClasses/StringItemRenderer.as | 180 +++ .../supportClasses/TextFieldItemRenderer.as | 576 +++++++ .../html/supportClasses/TreeItemRenderer.as | 64 + .../flex/html/supportClasses/TreeListData.as | 76 + .../html/supportClasses/UIItemRendererBase.as | 303 ++++ .../flex/html/supportClasses/VScrollBar.as | 49 + .../apache/flex/html/supportClasses/Viewport.as | 151 ++ .../flex/org/apache/flex/svg/BinaryImage.as | 87 + .../src/main/flex/org/apache/flex/svg/Circle.as | 118 ++ .../flex/org/apache/flex/svg/CompoundGraphic.as | 585 +++++++ .../main/flex/org/apache/flex/svg/DOMWrapper.as | 56 + .../main/flex/org/apache/flex/svg/Ellipse.as | 152 ++ .../org/apache/flex/svg/GraphicContainer.as | 204 +++ .../flex/org/apache/flex/svg/GraphicShape.as | 225 +++ .../src/main/flex/org/apache/flex/svg/Image.as | 133 ++ .../src/main/flex/org/apache/flex/svg/Path.as | 133 ++ .../src/main/flex/org/apache/flex/svg/Rect.as | 156 ++ .../src/main/flex/org/apache/flex/svg/Text.as | 150 ++ .../main/flex/org/apache/flex/svg/TextButton.as | 30 + .../flex/org/apache/flex/svg/beads/ImageView.as | 87 + .../src/main/resources/basic-as-manifest.xml | 37 + .../Basic/src/main/resources/basic-manifest.xml | 129 ++ .../Basic/src/main/resources/defaults.css | 672 ++++++++ .../Basic/src/main/resources/svg-manifest.xml | 24 + .../test/flex/FlexUnitFlexJSApplication.mxml | 46 + .../projects/Basic/src/test/flex/build.xml | 167 ++ .../flex/flexUnitTests/DataGridColumnTester.as | 27 + .../flexUnitTests/DataGridColumnTesterTest.as | 55 + .../org/apache/flex/charts/core/IAxisGroup.as | 3 +- .../flex/charts/optimized/SVGChartDataGroup.as | 5 +- .../charts/supportClasses/ChartAxisGroup.as | 8 +- frameworks/projects/Core/.flexLibProperties | 28 +- frameworks/projects/Core/build.xml | 2 +- .../projects/Core/src/main/flex/CoreClasses.as | 46 +- .../flex/org/apache/flex/core/Application.as | 637 -------- .../org/apache/flex/core/ApplicationBase.as | 110 -- .../org/apache/flex/core/ApplicationFactory.as | 132 ++ .../apache/flex/core/BrowserResizeListener.as | 34 +- .../org/apache/flex/core/BrowserScroller.as | 4 +- .../main/flex/org/apache/flex/core/CSSShape.as | 11 +- .../main/flex/org/apache/flex/core/CSSSprite.as | 12 +- .../flex/org/apache/flex/core/CSSTextField.as | 10 +- .../flex/org/apache/flex/core/CallLaterBead.as | 5 +- .../flex/org/apache/flex/core/ContainerBase.as | 443 ----- .../flex/core/ContainerBaseStrandChildren.as | 99 -- .../flex/org/apache/flex/core/ElementWrapper.as | 352 ++++ .../org/apache/flex/core/FilledRectangle.as | 125 -- .../org/apache/flex/core/HTMLElementWrapper.as | 265 --- .../flex/org/apache/flex/core/IBinaryImage.as | 47 + .../org/apache/flex/core/IBinaryImageLoader.as | 34 + .../org/apache/flex/core/IBinaryImageModel.as | 48 + .../main/flex/org/apache/flex/core/IChild.as | 22 +- .../flex/org/apache/flex/core/IContentView.as | 5 +- .../flex/org/apache/flex/core/IFlexJSElement.as | 15 +- .../main/flex/org/apache/flex/core/IImage.as | 50 + .../flex/org/apache/flex/core/IImageModel.as | 5 +- .../flex/org/apache/flex/core/IImageView.as | 53 + .../apache/flex/core/IInitialViewApplication.as | 68 + .../flex/org/apache/flex/core/IItemRenderer.as | 2 +- .../flex/org/apache/flex/core/ILayoutParent.as | 34 + .../main/flex/org/apache/flex/core/IParent.as | 10 +- .../org/apache/flex/core/IRenderedObject.as | 44 + .../org/apache/flex/core/ISWFApplication.as | 44 + .../org/apache/flex/core/ITransformModel.as | 2 +- .../main/flex/org/apache/flex/core/IUIBase.as | 46 +- .../flex/org/apache/flex/core/ImageViewBase.as | 255 +++ .../main/flex/org/apache/flex/core/ListBase.as | 126 -- .../apache/flex/core/ListBaseStrandChildren.as | 100 -- .../org/apache/flex/core/SimpleApplication.as | 102 -- .../org/apache/flex/core/SimpleCSSValuesImpl.as | 3 +- .../org/apache/flex/core/SimpleStatesImpl.as | 13 +- .../apache/flex/core/StyleableCSSTextField.as | 2 +- .../org/apache/flex/core/TransformBeadBase.as | 100 ++ .../main/flex/org/apache/flex/core/UIBase.as | 1483 ----------------- .../flex/org/apache/flex/core/UIButtonBase.as | 862 ---------- .../apache/flex/core/UIHTMLElementWrapper.as | 263 +++ .../src/main/flex/org/apache/flex/core/View.as | 34 - .../main/flex/org/apache/flex/core/ViewBase.as | 97 -- .../org/apache/flex/core/WrappedHTMLElement.as | 2 +- .../org/apache/flex/core/WrappedMovieClip.as | 60 + .../flex/org/apache/flex/core/WrappedShape.as | 60 + .../org/apache/flex/core/WrappedSimpleButton.as | 65 + .../flex/org/apache/flex/core/WrappedSprite.as | 61 + .../org/apache/flex/core/WrappedTextField.as | 60 + .../flex/org/apache/flex/events/BrowserEvent.as | 9 + .../org/apache/flex/events/ElementEvents.as | 20 + .../main/flex/org/apache/flex/events/Event.as | 71 +- .../flex/org/apache/flex/events/IFlexJSEvent.as | 48 + .../flex/org/apache/flex/events/MouseEvent.as | 67 +- .../flex/events/utils/MouseEventConverter.as | 7 +- .../main/flex/org/apache/flex/geom/Rectangle.as | 459 +++--- .../flex/org/apache/flex/utils/BinaryData.as | 6 +- .../org/apache/flex/utils/CSSBorderUtils.as | 2 +- .../main/flex/org/apache/flex/utils/CSSUtils.as | 14 +- .../flex/org/apache/flex/utils/DisplayUtils.as | 163 ++ .../apache/flex/utils/MXMLDataInterpreter.as | 11 +- .../flex/org/apache/flex/utils/PointUtils.as | 22 +- .../main/flex/org/apache/flex/utils/UIUtils.as | 5 +- .../main/flex/org/apache/flex/utils/URLUtils.as | 59 + .../flex/utils/ViewSourceContextMenuOption.as | 3 +- .../Core/src/main/resources/basic-manifest.xml | 2 - .../test/flex/FlexUnitFlexJSApplication.mxml | 3 +- .../org/apache/flex/createjs/Application.as | 24 +- .../org/apache/flex/createjs/core/UIBase.as | 43 +- .../org/apache/flex/createjs/graphics/Circle.as | 1 + .../src/main/config/compile-as-config.xml | 1 + .../flex/org/apache/flex/events/DragEvent.as | 32 +- .../beads/controllers/DragMouseController.as | 6 +- .../beads/controllers/DropMouseController.as | 5 + .../flex/core/StatesWithTransitionsImpl.as | 9 +- .../org/apache/flex/effects/PlatformWiper.as | 7 +- .../beads/CSSContentAndTextToggleButtonView.as | 28 +- .../flex/flat/beads/CSSScrollBarButtonView.as | 10 +- .../apache/flex/flat/beads/CSSScrollBarView.as | 42 +- .../apache/flex/flat/beads/DropDownListView.as | 33 +- frameworks/projects/GoogleMaps/pom.xml | 13 + .../src/main/config/compile-as-config.xml | 1 + .../flex/maps/google/beads/GoogleMapView.as | 2 +- .../projects/Graphics/.actionScriptProperties | 42 +- frameworks/projects/Graphics/.flexLibProperties | 29 +- .../src/main/config/compile-as-config.xml | 9 + .../Graphics/src/main/flex/GraphicsClasses.as | 22 +- .../org/apache/flex/graphics/GradientEntry.as | 21 +- .../main/flex/org/apache/flex/graphics/IFill.as | 5 +- .../org/apache/flex/graphics/IGraphicShape.as | 7 - .../flex/org/apache/flex/graphics/IStroke.as | 6 +- .../org/apache/flex/graphics/PathBuilder.as | 19 +- .../flex/org/apache/flex/graphics/SolidColor.as | 11 +- .../apache/flex/graphics/SolidColorStroke.as | 8 +- .../src/main/flex/org/apache/flex/svg/Circle.as | 118 -- .../main/flex/org/apache/flex/svg/ClipBead.as | 182 +++ .../flex/org/apache/flex/svg/CompoundGraphic.as | 585 ------- .../main/flex/org/apache/flex/svg/DOMWrapper.as | 56 - .../main/flex/org/apache/flex/svg/Ellipse.as | 152 -- .../org/apache/flex/svg/GraphicContainer.as | 208 --- .../flex/org/apache/flex/svg/GraphicShape.as | 225 --- .../flex/org/apache/flex/svg/LinearGradient.as | 17 +- .../src/main/flex/org/apache/flex/svg/Path.as | 133 -- .../src/main/flex/org/apache/flex/svg/Rect.as | 156 -- .../src/main/flex/org/apache/flex/svg/Text.as | 150 -- .../flex/org/apache/flex/svg/TransformBead.as | 81 +- .../Graphics/src/main/resources/defaults.css | 37 + .../src/main/resources/svg-manifest.xml | 10 +- .../projects/HTML/.actionScriptProperties | 19 - .../projects/HTML/src/main/flex/HTMLClasses.as | 24 +- .../flex/org/apache/flex/core/Application.as | 560 +++++++ .../org/apache/flex/core/ApplicationBase.as | 109 ++ .../flex/org/apache/flex/core/ContainerBase.as | 453 ++++++ .../flex/core/ContainerBaseStrandChildren.as | 99 ++ .../org/apache/flex/core/FilledRectangle.as | 125 ++ .../main/flex/org/apache/flex/core/ImageBase.as | 84 + .../main/flex/org/apache/flex/core/ListBase.as | 134 ++ .../apache/flex/core/ListBaseStrandChildren.as | 100 ++ .../org/apache/flex/core/SimpleApplication.as | 104 ++ .../main/flex/org/apache/flex/core/UIBase.as | 1400 ++++++++++++++++ .../flex/org/apache/flex/core/UIButtonBase.as | 792 +++++++++ .../src/main/flex/org/apache/flex/core/View.as | 34 + .../main/flex/org/apache/flex/core/ViewBase.as | 105 ++ .../org/apache/flex/events/ItemAddedEvent.as | 3 +- .../org/apache/flex/events/ItemClickedEvent.as | 3 +- .../org/apache/flex/events/ItemRemovedEvent.as | 3 +- .../org/apache/flex/events/ItemRendererEvent.as | 3 +- .../src/main/flex/org/apache/flex/html/A.as | 138 ++ .../flex/org/apache/flex/html/BinaryImage.as | 88 + .../main/flex/org/apache/flex/html/Container.as | 9 +- .../src/main/flex/org/apache/flex/html/Div.as | 112 ++ .../src/main/flex/org/apache/flex/html/H1.as | 112 ++ .../src/main/flex/org/apache/flex/html/H2.as | 112 ++ .../src/main/flex/org/apache/flex/html/H3.as | 112 ++ .../src/main/flex/org/apache/flex/html/H4.as | 112 ++ .../src/main/flex/org/apache/flex/html/H5.as | 112 ++ .../src/main/flex/org/apache/flex/html/H6.as | 112 ++ .../src/main/flex/org/apache/flex/html/Image.as | 52 +- .../flex/org/apache/flex/html/RadioButton.as | 4 +- .../src/main/flex/org/apache/flex/html/Span.as | 112 ++ .../flex/org/apache/flex/html/TextButton.as | 2 +- .../accessories/NumericOnlyTextInputBead.as | 5 +- .../flex/html/accessories/TextPromptBead.as | 4 +- .../flex/html/beads/BackgroundImageBead.as | 4 +- .../apache/flex/html/beads/BinaryImageLoader.as | 121 ++ .../org/apache/flex/html/beads/CSSButtonView.as | 27 +- .../html/beads/CSSImageAndTextButtonView.as | 39 +- .../apache/flex/html/beads/CSSTextButtonView.as | 40 +- .../org/apache/flex/html/beads/CheckBoxView.as | 23 +- .../apache/flex/html/beads/CloseButtonView.as | 10 +- .../org/apache/flex/html/beads/ComboBoxView.as | 124 +- .../org/apache/flex/html/beads/ContainerView.as | 11 +- .../DataItemRendererFactoryForArrayData.as | 3 +- .../DataItemRendererFactoryForArrayList.as | 2 +- .../DataItemRendererFactoryForColumnData.as | 2 +- .../org/apache/flex/html/beads/DisableBead.as | 130 ++ .../flex/html/beads/DownArrowButtonView.as | 28 +- .../apache/flex/html/beads/DropDownListView.as | 35 +- .../org/apache/flex/html/beads/HRuleView.as | 8 +- .../flex/html/beads/HScrollBarThumbView.as | 20 +- .../flex/html/beads/HScrollBarTrackView.as | 25 +- .../apache/flex/html/beads/HScrollBarView.as | 31 +- .../apache/flex/html/beads/IScrollBarView.as | 10 +- .../org/apache/flex/html/beads/ISliderView.as | 6 +- .../org/apache/flex/html/beads/ISpinnerView.as | 6 +- .../flex/html/beads/ImageAndTextButtonView.as | 12 +- .../apache/flex/html/beads/ImageButtonView.as | 27 +- .../org/apache/flex/html/beads/ImageView.as | 181 +-- .../flex/html/beads/LeftArrowButtonView.as | 22 +- .../apache/flex/html/beads/RadioButtonView.as | 25 +- .../flex/html/beads/RightArrowButtonView.as | 22 +- .../org/apache/flex/html/beads/ScrollBarView.as | 16 +- .../flex/html/beads/SingleLineBorderBead.as | 2 +- .../apache/flex/html/beads/SliderThumbView.as | 15 +- .../apache/flex/html/beads/SliderTrackView.as | 13 +- .../org/apache/flex/html/beads/SliderView.as | 36 +- .../flex/html/beads/SolidBackgroundBead.as | 18 +- .../org/apache/flex/html/beads/SpinnerView.as | 30 +- .../org/apache/flex/html/beads/TextAreaView.as | 23 +- .../apache/flex/html/beads/TextButtonView.as | 18 +- .../apache/flex/html/beads/TextFieldViewBase.as | 2 +- .../apache/flex/html/beads/UpArrowButtonView.as | 22 +- .../org/apache/flex/html/beads/VRuleView.as | 8 +- .../flex/html/beads/VScrollBarThumbView.as | 30 +- .../flex/html/beads/VScrollBarTrackView.as | 25 +- .../apache/flex/html/beads/VScrollBarView.as | 24 +- .../apache/flex/html/beads/WebBrowserView.as | 2 +- .../html/beads/controllers/AlertController.as | 4 +- .../beads/controllers/ComboBoxController.as | 15 +- .../beads/controllers/DropDownListController.as | 21 +- .../controllers/HScrollBarMouseController.as | 14 +- .../controllers/VScrollBarMouseController.as | 14 +- .../flex/html/beads/layouts/BasicLayout.as | 17 +- .../FlexibleFirstChildHorizontalLayout.as | 5 +- .../flex/html/beads/layouts/HScrollBarLayout.as | 26 +- .../flex/html/beads/layouts/HorizontalLayout.as | 10 +- .../layouts/OneFlexibleChildHorizontalLayout.as | 6 +- .../layouts/OneFlexibleChildVerticalLayout.as | 5 +- .../flex/html/beads/layouts/TileLayout.as | 9 +- .../flex/html/beads/layouts/VScrollBarLayout.as | 16 +- .../html/beads/layouts/VerticalColumnLayout.as | 5 +- .../flex/html/beads/layouts/VerticalLayout.as | 5 +- .../flex/html/beads/models/BinaryImageModel.as | 86 + .../apache/flex/html/beads/models/ImageModel.as | 17 +- .../html/supportClasses/ContainerContentArea.as | 7 +- .../flex/html/supportClasses/DataGroup.as | 5 +- .../html/supportClasses/DataItemRenderer.as | 2 +- .../html/supportClasses/MXMLItemRenderer.as | 72 + .../html/supportClasses/ScrollingViewport.as | 15 +- .../html/supportClasses/StringItemRenderer.as | 2 +- .../supportClasses/TextFieldItemRenderer.as | 15 +- .../html/supportClasses/UIItemRendererBase.as | 7 +- .../flex/org/apache/flex/svg/BinaryImage.as | 87 + .../src/main/flex/org/apache/flex/svg/Circle.as | 119 ++ .../flex/org/apache/flex/svg/CompoundGraphic.as | 584 +++++++ .../main/flex/org/apache/flex/svg/DOMWrapper.as | 56 + .../main/flex/org/apache/flex/svg/Ellipse.as | 171 ++ .../org/apache/flex/svg/GraphicContainer.as | 209 +++ .../flex/org/apache/flex/svg/GraphicShape.as | 233 +++ .../src/main/flex/org/apache/flex/svg/Image.as | 133 ++ .../src/main/flex/org/apache/flex/svg/Path.as | 133 ++ .../src/main/flex/org/apache/flex/svg/Rect.as | 156 ++ .../src/main/flex/org/apache/flex/svg/Text.as | 150 ++ .../flex/org/apache/flex/svg/beads/ImageView.as | 87 + .../src/main/resources/basic-as-manifest.xml | 2 +- .../HTML/src/main/resources/basic-manifest.xml | 15 + .../HTML/src/main/resources/defaults.css | 9 + .../HTML/src/main/resources/svg-manifest.xml | 8 + .../test/flex/FlexUnitFlexJSApplication.mxml | 3 +- .../projects/HTML/src/test/flex/build.xml | 2 + .../flex/org/apache/flex/html5/TransformBead.as | 44 + .../HTML5/src/main/resources/html5-manifest.xml | 51 +- .../org/apache/flex/mobile/IViewManagerView.as | 4 +- .../flex/org/apache/flex/mobile/ManagerBase.as | 11 +- .../apache/flex/mobile/StackedViewManager.as | 3 +- .../apache/flex/mobile/beads/DeviceSizeBead.as | 16 +- .../flex/mobile/beads/MobileWebBrowserView.as | 20 +- .../flex/mobile/models/ViewManagerModel.as | 5 +- .../flex/org/apache/flex/net/BinaryUploader.as | 8 +- .../flex/org/apache/flex/net/HTTPService.as | 8 +- .../flex/org/apache/flex/net/HTTPServiceBase.as | 4 +- .../main/flex/org/apache/flex/net/URLRequest.as | 4 +- .../org/apache/flex/net/URLRequestHeader.as | 62 + .../main/flex/org/apache/flex/net/URLStream.as | 44 +- frameworks/projects/XML/src/main/flex/XML.as | 293 ++-- .../projects/XML/src/main/flex/XMLList.as | 310 +++- .../src/products/ProductItemRenderer.as | 2 +- .../src/products/ProductItemRenderer.as | 2 +- 545 files changed, 53833 insertions(+), 7929 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml ---------------------------------------------------------------------- diff --cc examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml index 7472d95,0000000..96a8721 mode 100644,000000..100644 --- a/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml +++ b/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml @@@ -1,75 -1,0 +1,75 @@@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +--> +<js:View xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:js="library://ns.apache.org/flexjs/basic" + xmlns:local="*" > + <fx:Script> + <![CDATA[ + + import org.apache.cordova.camera.Camera; + + private var cam:org.apache.cordova.camera.Camera = new org.apache.cordova.camera.Camera(); + + public function set ready(value:Boolean):void + { + status.text = "ready"; + } + + public function snapPicture() : void + { + trace("snapping"); + cam.getPicture(success,failure,{quality:100, destinationType:org.apache.cordova.camera.Camera.DestinationType.FILE_URI}); + } + + private function success(data:Object):void + { + output.text = "Success: "+String(data); - image.source = String(data); ++ image.url = String(data); + } + + private function failure(message:Object):void + { + output.text = "Failed: "+String(message); + } + + private function onFromPhotoLibrary() : void + { + cam.getPicture(success,failure,{ quality: 50, + destinationType: org.apache.cordova.camera.Camera.DestinationType.FILE_URI, + sourceType: org.apache.cordova.camera.Camera.PictureSourceType.PHOTOLIBRARY }); + } + + ]]> + </fx:Script> + + <fx:Style> + + </fx:Style> + + <js:Label id="status" x="20" y="140" width="400" text="loading..."/> + + <js:TextButton text="From Photo Library" x="20" y="20" click="onFromPhotoLibrary()" /> + <js:TextButton text="Snap Picture" x="20" y="55" click="snapPicture()" /> + + <js:Label id="output" x="20" y="110" width="400"/> + + <js:Image id="image" x="20" y="200" width="200" height="200" /> + +</js:View> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as ---------------------------------------------------------------------- diff --cc examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as index 8eab2fe,0000000..2526c04 mode 100644,000000..100644 --- a/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as +++ b/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as @@@ -1,55 -1,0 +1,60 @@@ +//////////////////////////////////////////////////////////////////////////////// +// +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +//////////////////////////////////////////////////////////////////////////////// +package models +{ + import org.apache.flex.events.EventDispatcher; + import org.apache.flex.collections.ArrayList; - ++ + import products.Product; - ++ + public class ProductsModel extends EventDispatcher + { + public function ProductsModel() + { + _productList = new ArrayList(); + _productList.source = source; + } + + private var source:Array = [ + new Product("ps100","Widgets",44,200,"assets/smallbluerect.jpg"), + new Product("tx200","Thingys",5,285,"assets/smallgreenrect.jpg"), + new Product("rz300","Sprockets",80,105,"assets/smallyellowrect.jpg"), + new Product("dh440","Doohickies",10,340,"assets/smallredrect.jpg"), + new Product("ps220","Weejets",35,190,"assets/smallorangerect.jpg") + ]; - ++ + private var _productList:ArrayList; - ++ ++ override public function toString():String ++ { ++ return "ProductsModel"; ++ } ++ + public function get productList():ArrayList + { + return _productList; + } + + private var _labelFields:Array = [ "id", "title", "sales", "detail" ]; + public function get labelFields():Array + { + return _labelFields; + } + } - } ++} http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as ---------------------------------------------------------------------- diff --cc examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as index 4edc5b7,0000000..0a954b0 mode 100644,000000..100644 --- a/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as +++ b/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as @@@ -1,66 -1,0 +1,66 @@@ +//////////////////////////////////////////////////////////////////////////////// +// +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +//////////////////////////////////////////////////////////////////////////////// +package products +{ + import org.apache.flex.html.Image; + import org.apache.flex.html.supportClasses.DataItemRenderer; + + public class ProductItemRenderer extends DataItemRenderer + { + public function ProductItemRenderer() + { + super(); + } + + private var image:Image; + + override public function addedToParent():void + { + super.addedToParent(); + + // add an image and two labels + image = new Image(); + addElement(image); + } + + override public function get data():Object + { + return super.data; + } + + override public function set data(value:Object):void + { + super.data = value; + - image.source = value.image; ++ image.url = value.image; + } + + override public function adjustSize():void + { + var cy:Number = this.height/2; + + image.x = 4; + image.y = cy - 16; + image.width = 32; + image.height = 32; + + updateRenderer(); + } + } +} http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml ---------------------------------------------------------------------- diff --cc examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml index 8f4ade3,0000000..cf29d5b mode 100755,000000..100755 --- a/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml +++ b/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml @@@ -1,268 -1,0 +1,268 @@@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +--> +<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:js="library://ns.apache.org/flexjs/basic" + xmlns="*" + initialize="startService()" + pageTitle="FlexStore"> + + <fx:Script> + <![CDATA[ + import org.apache.flex.core.ValuesManager; + + /* + private var currentTheme:String = "beige"; + + private function toggleTheme():void + { + if (currentTheme == "beige") + { + currentTheme = "blue"; + } + else + { + currentTheme = "beige"; + } + + loadStyle(); + } + */ + + private function startService():void + { + productService.send(); + } + + private function loadStyle():void + { + /* load css not implemented yet + var eventDispatcher:IEventDispatcher = + styleManager.loadStyleDeclarations(currentTheme + ".swf"); + eventDispatcher.addEventListener(StyleEvent.COMPLETE, completeHandler); + */ + } + + private function completeHandler(event:Event):void + { - image.source = ValuesManager.valuesImpl.getValue(acb, "storeLogo"); ++ image.url = ValuesManager.valuesImpl.getValue(acb, "storeLogo"); + /* + super.initialized = true; + */ + callLater.callLater(prebake); + } + + /* + override public function set initialized(value:Boolean):void + { + // Hold off until the Runtime CSS SWF is done loading. + } + */ + + private var stateChain:Array; + + private function headHome():void + { + homeButton.selected = true; + if (initialView.currentState == "ProductsState") + { + productsButton.selected = false; + stateChain = ["ProductsWipeUp", "HomeWipeDown", "HomeState"]; + initialView.currentState = "ProductsWipeUp"; + } + else if (initialView.currentState == "SupportState") + { + supportButton.selected = false; + stateChain = ["SupportWipeUp", "HomeWipeDown", "HomeState"]; + initialView.currentState = "SupportWipeUp"; + } + } + + private function headToProducts():void + { + productsButton.selected = true; + if (initialView.currentState == "SupportState") + { + supportButton.selected = false; + stateChain = ["SupportWipeUp", "ProductsWipeDown", "ProductsState"]; + initialView.currentState = "SupportWipeUp"; + } + if (initialView.currentState == "HomeState") + { + homeButton.selected = false; + stateChain = ["HomeWipeUp", "ProductsWipeDown", "ProductsState"]; + initialView.currentState = "HomeWipeUp"; + } + } + + private function headToSupport():void + { + supportButton.selected = true; + if (initialView.currentState == "ProductsState") + { + productsButton.selected = false; + stateChain = ["ProductsWipeUp", "SupportWipeDown", "SupportState"]; + initialView.currentState = "ProductsWipeUp"; + } + if (initialView.currentState == "HomeState") + { + homeButton.selected = false; + stateChain = ["HomeWipeUp", "SupportWipeDown", "SupportState"]; + initialView.currentState = "HomeWipeUp"; + } + } + + private function prebake():void + { + callLater.callLater(prebake2); + } + + private function prebake2():void + { + trace("prebake2"); + stateChain = ["ProductsPreBake", "HomeState"]; + initialView.currentState = "ProductsPreBake"; + } + + private function chainStatesIfNeeded():void + { + if (stateChain != null) + { + if (initialView.currentState == stateChain[0]) + { + callLater.callLater(nextState); + } + } + } + + private function nextState():void + { + stateChain.shift(); + if (stateChain.length) + initialView.currentState = stateChain[0]; + else + stateChain = null; + } + ]]> + </fx:Script> + + <fx:Style source="main.css"/> + <fx:Style source="beige.css"/> + + <fx:Declarations> + <js:HTTPService id="productService" url="data/catalog.json"> + <js:LazyCollection id="catalog" complete="if (pView) pView.catalog = catalog"> + <js:inputParser> + <js:JSONInputParser /> + </js:inputParser> + <js:itemConverter> + <ProductJSONItemConverter /> + </js:itemConverter> + </js:LazyCollection> + </js:HTTPService> + </fx:Declarations> + <js:valuesImpl> + <js:SimpleCSSValuesImpl /> + </js:valuesImpl> + <js:beads> + <js:ViewSourceContextMenuOption /> + <js:CallLaterBead id="callLater" /> + <js:ApplicationDataBinding /> + </js:beads> + <js:initialView> + <js:View width="990" height="585" + initComplete="completeHandler(null)" + stateChangeComplete="chainStatesIfNeeded()"> + <js:states> + <js:State name="HomeState" stateGroups="['Home']" /> + <js:State name="HomeWipeUp" stateGroups="['Home']" /> + <js:State name="HomeWipeDown" stateGroups="['Home']" /> + <js:State name="ProductsPreBake" stateGroups="['Home', 'Products']" /> + <js:State name="ProductsState" stateGroups="['Products']" /> + <js:State name="ProductsWipeUp" stateGroups="['Products']" /> + <js:State name="ProductsWipeDown" stateGroups="['Products']" /> + <js:State name="SupportState" stateGroups="['Support']" /> + <js:State name="SupportWipeUp" stateGroups="['Support']" /> + <js:State name="SupportWipeDown" stateGroups="['Support']" /> + </js:states> + + <js:transitions> + <js:Transition fromState="HomeState" toState="HomeWipeUp"> + <js:Wipe direction="up" target="homeView" /> + </js:Transition> + <js:Transition fromState="HomeWipeDown" toState="HomeState"> + <js:Wipe direction="down" target="homeView" /> + </js:Transition> + <js:Transition fromState="ProductsState" toState="ProductsWipeUp"> + <js:Wipe direction="up" target="pView" /> + </js:Transition> + <js:Transition fromState="ProductsWipeDown" toState="ProductsState"> + <js:Wipe direction="down" target="pView" /> + </js:Transition> + <js:Transition fromState="SupportState" toState="SupportWipeUp"> + <js:Wipe direction="up" target="supportView" /> + </js:Transition> + <js:Transition fromState="SupportWipeDown" toState="SupportState"> + <js:Wipe direction="down" target="supportView" /> + </js:Transition> + </js:transitions> + <js:beads> + <js:VerticalLayout /> + </js:beads> + <js:ControlBar id="acb" width="100%" className="storeControlBar" > + <js:beads> + <js:HorizontalLayout /> + </js:beads> + <js:Image id="image" /> + <!-- click="toggleTheme()" --> + <!-- toolTip="Change Theme"/ --> + <js:ToggleTextButton id="homeButton" + text="Home" + height="100%" + selected="true" + className="storeButtonBar" + click="headHome()" /> + <js:ToggleTextButton id="productsButton" + text="Products" + height="100%" + className="storeButtonBar" + click="headToProducts()"/> + <js:ToggleTextButton id="supportButton" + text="Support" + height="100%" + className="storeButtonBar" + click="headToSupport()"/> + </js:ControlBar> + <js:Container width="990" id="viewholder"> + <js:style> + <js:SimpleCSSStyles paddingLeft="0" paddingRight="0"/> + </js:style> + + <HomeView id="homeView" width="100%" height="550" includeIn="Home" + /> + <ProductsView id="pView" includeIn="Products" visible.ProductsPreBake="false" + width="100%" height="550" initComplete="if (catalog.length) pView.catalog = catalog" + /> + <SupportView id="supportView" includeIn="Support" + width="100%" height="550" + /> + </js:Container> + </js:View> + </js:initialView> +</js:Application> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml ---------------------------------------------------------------------- diff --cc examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml index 6e237d2,0000000..9021084 mode 100755,000000..100755 --- a/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml +++ b/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml @@@ -1,194 -1,0 +1,194 @@@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +--> +<!-- +This component is primarily static and is only meant to show what other +pages of the store could look like. + +Note that this page was put together in the Design view so you'll see more +hard coded locations and sizes. + +Also note when working with a Canvas that using the constraint styles +(e.g., left, top, right, bottom) can provide better layout predictability than +using x and y, especially when percentage widths and heights are used. + +Width and height are hard-coded in the root tag to help the Design view. +--> +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:js="library://ns.apache.org/flexjs/basic" + xmlns="*" width="990" height="550" + initComplete="updateMapImage()"> + <fx:Script> + <![CDATA[ + import org.apache.flex.core.ValuesManager; + import org.apache.flex.html.SimpleAlert; + + public function updateMapImage():void + { - mapImage.source = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap'); ++ mapImage.url = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap'); + } + ]]> + </fx:Script> + <js:beads> + <js:ContainerDataBinding /> + </js:beads> + <js:HContainer width="100%" height="100%" y="0" x="0" className="colorPanel"> + <js:VContainer width="230" height="100%"> + <js:Container width="100%" height="100%"> + + <js:Container height="60" className="homeSection"> + <js:style> + <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="10" right="10"/> + </js:style> + <js:Label style="left:10;top:10" text="Search Developers" height="22" className="sectionHeader" /> + <js:TextButton style="left:168;top:30" text="Go" width="27" height="20" className="glass" click="SimpleAlert.show('This feature is not implemented in this sample', 'Go')"/> + <js:TextInput style="left:10;top:30" height="20" width="150"/> + </js:Container> + + <js:Container height="280" className="homeSection"> + <js:style> + <js:SimpleCSSStyles backgroundColor="#ffffff" left="10" top="78" right="10" /> + </js:style> + <js:VContainer width="100%" height="100%"> + <js:style> + <js:SimpleCSSStyles left="10" top="10" /> + </js:style> + <js:Label text="Flex Experts That Can Help You" className="sectionHeader"/> + <js:HRule height="5" width="187" style="marginLeft:0"/> + <js:Label text="General" className="homeProgramHeader"/> + <js:Label text="BlazeDS Experts" style="fontSize:9"/> + <js:Spacer height="8" width="100%"/> + <js:Label text="Server-side" className="homeProgramHeader"/> + <js:Label text="Java, PHP Developers" style="fontSize:9"/> + <js:Spacer height="8" width="100%"/> + <js:Label text="Mobile" className="homeProgramHeader"/> + <js:Label text="Android, IOS and more" style="fontSize:9"/> + <js:Spacer height="8" width="100%"/> + <js:Label text="Students" className="homeProgramHeader"/> + <js:Label text="Free Assistance" style="fontSize:9"/> + <js:Spacer height="8" width="100%"/> + </js:VContainer> + </js:Container> + + <js:Container height="174" className="homeSection"> + <js:style> + <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="366" right="10" /> + </js:style> + <js:VContainer width="100%" height="100%"> + <js:style> + <js:SimpleCSSStyles left="10" top="10" /> + </js:style> + <js:Label text="Manage My Account" className="sectionHeader"/> + + <js:Label text="Phone Number"/> + + <js:HContainer width="100%" height="25" > + <js:style> + <js:SimpleCSSStyles verticalAlign="middle" /> + </js:style> + <js:TextInput height="20" width="40"/> + <js:HRule width="8" height="2"/> + <js:TextInput height="20" width="40"/> + <js:HRule width="8" height="2"/> + <js:TextInput height="20" width="40"/> + </js:HContainer> + + <js:Label text="Password"/> + <js:TextInput height="20"/> + <js:Spacer height="8" width="100%"/> + + <js:CheckBox text="Remember my phone number" selected="true"/> + <js:Spacer height="8" width="100%"/> + + <js:TextButton text="Login" className="glass" height="20" width="55" click="SimpleAlert.show('This feature is not implemented in this sample', 'Login')"/> + + </js:VContainer> + </js:Container> + + </js:Container> + + </js:VContainer> + + <js:VContainer width="750" height="100%"> + <js:Container width="100%" height="100%"> + + <!-- can't use binding to set the mapImage source because the style isn't available early enough --> + <js:Container id="mapCanvas" height="35%" className="homeMap"> + <js:style> + <js:SimpleCSSStyles left="0" right="10" top="10" /> + </js:style> + <js:Image id="mapImage" width="487" height="100%" alpha="1.0" style="left:10;top:10"/> + <js:Label y="110" text="US Developers . Flex . FlexJS" width="95%" height="40" style="margin:auto;fontWeight:'bold';fontSize:22;color:#ffffff;fontFamily:'Arial';textAlign:'center'"/> + <js:Label text="Learn More >>" width="95" style="fontSize:12;fontFamily:'Arial';bottom:10;right:10"/> + <js:Label text="$60/hr" style="color:#ffffff;fontWeight:'bold';fontFamily:'Arial';fontSize:20;right:10:top:10"/> + <js:Label text="Rates as low as" x="551" y="16" style="fontSize:12"/> + </js:Container> + + <js:Container height="330" > + <js:style> + <js:SimpleCSSStyles backgroundColor="#ffffff" borderStyle="solid" bottom="10" right="10" left="0" /> <!-- cornerRadius="4" --> + </js:style> + + <js:Label style="left:10;top:10" text="Featured Developers" width="173" height="25" className="sectionHeader"/> + + <js:HContainer style="left:10;top:43" width="100%" height="100%"> + <js:VContainer width="33%" height="100%"> + <js:Container width="100%"> - <js:Image id="image1" source="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/> ++ <js:Image id="image1" url="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/> + </js:Container> + + <js:Container width="100%"> + <js:Label text="Annette Kotter" id="feat_prod_1" style="margin:auto;fontWeight:'bold';fontSize:12"/> + </js:Container> + + </js:VContainer> + + <js:VContainer width="33%" height="100%"> + <js:Container width="100%"> - <js:Image id="image2" style="margin:auto;verticalCenter:0" source="assets/bcrater.jpg"/> ++ <js:Image id="image2" style="margin:auto;verticalCenter:0" url="assets/bcrater.jpg"/> + </js:Container> + + <js:Container width="100%"> + <js:Label text="Ben Crater" id="feat_prod_2" style="margin:auto;fontWeight:'bold';fontSize:12"/> + </js:Container> + + </js:VContainer> + + <js:VContainer width="33%" height="100%"> + <js:Container width="100%"> - <js:Image id="image3" style="margin:auto;verticalCenter:0" source="assets/jproctor.jpg"/> ++ <js:Image id="image3" style="margin:auto;verticalCenter:0" url="assets/jproctor.jpg"/> + </js:Container> + + <js:Container width="100%"> + <js:Label text="Jane Proctor" id="feat_prod_3" style="margin:auto;fontWeight:'bold';fontSize:12"/> + </js:Container> + + </js:VContainer> + + </js:HContainer> + + </js:Container> + + </js:Container> + + </js:VContainer> + + </js:HContainer> + +</js:Container> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml ---------------------------------------------------------------------- diff --cc examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml index 3d30a9d,0000000..72bbb55 mode 100755,000000..100755 --- a/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml +++ b/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml @@@ -1,149 -1,0 +1,149 @@@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +--> +<!-- +This component is primarily static and is only meant to show what other +pages of the store could look like. + +Note that this page was put together in the Design view so you'll see more +hard coded locations and sizes. + +We did not have sizing issues here as much so you'll see more hardcoded +"y" values rather than "top." + +The width and height are hard-coded in the root tag to help the Design view. +--> +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:js="library://ns.apache.org/flexjs/basic" + xmlns="*" alpha="1.0" + width="990" height="550"> + + <fx:Script> + <![CDATA[ + import org.apache.flex.html.SimpleAlert; + ]]> + </fx:Script> + + <fx:Declarations> + <fx:Array id="locations"> + <fx:Object image="assets/support_mapmarker_a.png" name="601 Townsend St" /> + <fx:Object image="assets/support_mapmarker_b.png" name="Location B" /> + <fx:Object image="assets/support_mapmarker_c.png" name="Location C" /> + </fx:Array> + + </fx:Declarations> + + <js:HContainer x="0" y="0" width="100%" height="100%" className="colorPanel"> + + <js:VContainer width="32%" height="100%"> + <js:Container width="100%" height="420"> + + <js:Label y="10" text="Check Location" className="sectionHeader" x="20"/> + + <js:Container height="150" y="64" style="margin:auto"> + <js:beads> + <js:VerticalColumnLayout numColumns="2" /> + </js:beads> + <js:Label text="Address:"/> + <js:TextInput id="address"/> + + <js:Label text="City:" style="marginTop:20"/> + <js:TextInput id="city" style="marginTop:20"/> + + <js:Label text="State:" style="marginTop:20"/> + <js:DropDownList id="state" style="marginTop:20"> + <js:dataProvider> + <fx:Array> + <fx:String>California</fx:String> + <fx:String>Nevada</fx:String> + <fx:String>Oregon</fx:String> + <fx:String>Washington</fx:String> + </fx:Array> + </js:dataProvider> + </js:DropDownList> + + <js:Label text="ZIP Code:" style="marginTop:20"/> + <js:TextInput id="zip" style="marginTop:20"/> + + </js:Container> + + <js:Label y="38" text="Option1: Enter Address" style="margin:auto" className="instructions"/> + + <js:TextButton y="297" text="Locate" click="SimpleAlert.show('This feature is not implemented in this sample', 'Locate')" + style="margin:auto"/> + + <js:HContainer y="327" height="20" > + <js:style> + <js:SimpleCSSStyles margin="auto" verticalAlign="middle" /> + </js:style> + <js:HRule width="60" /> + <js:Label text="OR"/> + <js:HRule width="60" /> + </js:HContainer> + + <js:Label y="355" text="Option 2: Drag this marker into the map" style="margin:auto" className="instructions"/> + - <js:Image y="380" style="margin:auto" source="assets/support_mapmarker_plus.png"/> ++ <js:Image y="380" style="margin:auto" url="assets/support_mapmarker_plus.png"/> + + <js:HRule y="415" style="margin:auto" width="200" alpha="0.6"/> + + </js:Container> + + <js:Container width="100%" height="130"> + <js:VContainer width="80%" height="90%" > + <js:style> + <js:SimpleCSSStyles margin="auto" top="0"/> + </js:style> + <js:Label text="Location" className="instructions"/> + <js:List width="100%" dataProvider="{locations}"> + <js:itemRenderer> + <fx:Component> + <js:DataItemRenderer className="listItem" width="100%"> + <fx:Script> + <![CDATA[ + import samples.flexstore.Product; + [Bindable("__NoChangeEvent__")] + private function get product():Product + { + return data as Product; + } + ]]> + </fx:Script> - <js:Image width="21" height="25" source="{product.image}" /> ++ <js:Image width="21" height="25" url="{product.image}" /> + <js:Label width="100%" text="{product.name}" /> + </js:DataItemRenderer> + </fx:Component> + </js:itemRenderer> + </js:List> + </js:VContainer> + </js:Container> + + </js:VContainer> + + <js:Container width="68%" height="100%"> - <js:Image source="assets/427px-Bayarea_map.png"> ++ <js:Image url="assets/427px-Bayarea_map.png"> + <js:style> + <js:SimpleCSSStyles left="12" top="12"/> + </js:style> + </js:Image> + </js:Container> + + </js:HContainer> + +</js:Container> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml ---------------------------------------------------------------------- diff --cc examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml index abd3ce5,0000000..d161d89 mode 100755,000000..100755 --- a/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml +++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml @@@ -1,48 -1,0 +1,48 @@@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +--> +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:js="library://ns.apache.org/flexjs/basic" + width="17" height="100%" > + <js:style> + <js:SimpleCSSStyles paddingTop="10" /> + </js:style> + + <fx:Script> + <![CDATA[ + [Bindable] + public var gripTip:String; + + [Bindable] + public var gripIcon:String; + ]]> + </fx:Script> + <js:beads> + <js:ContainerDataBinding /> + <js:OneFlexibleChildVerticalLayout flexibleChild="grip" /> + </js:beads> + - <js:Image id="icon" source="{gripIcon}" /> - <js:Image id="grip" source="assets/grip.png" > ++ <js:Image id="icon" url="{gripIcon}" /> ++ <js:Image id="grip" url="assets/grip.png" > + <js:beads> + <js:ToolTipBead toolTip="{gripTip}" /> + </js:beads> + </js:Image> + +</js:Container> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml ---------------------------------------------------------------------- diff --cc examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml index 1abc428,0000000..0946f8a mode 100755,000000..100755 --- a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml +++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml @@@ -1,220 -1,0 +1,220 @@@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +--> +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:js="library://ns.apache.org/flexjs/basic" + width="{COL_WIDTH_4}" height="{COL_HEIGHT_4}" height.compare="502" + width.x4cols="{COL_WIDTH_4}" height.x4cols="{COL_HEIGHT_4}" + width.x3cols="{COL_WIDTH_3}" height.x3cols="{COL_HEIGHT_3}" + width.x2cols="{COL_WIDTH_2}" height.x2cols="{COL_HEIGHT_2}" + rollOver="rollOverHandler(event)" + rollOut="rollOutHandler(event)" + mouseDown="mouseDownHandler(event)" + mouseMove="mouseMoveHandler(event)" + mouseUp="mouseUpHandler(event)" + click="clickHandler(event)" + currentState="x4cols" + > + <!-- automationName="{product.name}" --> + <js:beads> + <js:ContainerDataBinding /> + <js:LayoutChangeNotifier watchedProperty="{borderStyles.borderColor}" initialValue="#FFFFFF" /> + </js:beads> + <js:style> + <js:BindableCSSStyles id="borderStyles" borderStyle="solid" borderWidth="1" + borderColor="#FFFFFF" backgroundColor="#FFFFFF"/> + </js:style> + <fx:Metadata> + [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")] + [Event(name="compare", type="samples.flexstore.ProductThumbEvent")] + [Event(name="details", type="samples.flexstore.ProductThumbEvent")] + </fx:Metadata> + + <fx:Script> + <![CDATA[ + + import org.apache.flex.events.*; + import org.apache.flex.utils.PointUtils; + + import samples.flexstore.Product; + import samples.flexstore.ProductThumbEvent; + + public static const COL_WIDTH_4:int = 162; + public static const COL_HEIGHT_4:int = 122; + public static const COL_WIDTH_3:int = 217; + public static const COL_HEIGHT_3:int = 165; + public static const COL_WIDTH_2:int = 327; + public static const COL_HEIGHT_2:int = 250; + public static const COMPARE_WIDTH:int = 162; + public static const HORIZONTAL_GAP:int = 2; + public static const VERTICAL_GAP:int = 3; + + [Bindable] + public var product:Product; + + private function rollOverHandler(event:MouseEvent):void + { + borderStyles.borderColor = "#CCCCCC"; + //style["dropShadowEnabled"] = true; + buttons.visible = true; + } + + private function rollOutHandler(event:MouseEvent):void + { + borderStyles.borderColor = "#FFFFFF"; + //style["dropShadowEnabled"] = false; + buttons.visible = false; + } + + private var dragStartPoint:Point; + + public function mouseDownHandler(event:MouseEvent):void + { + if (event.target != purchase && + event.target != compare && + event.target != details) + { + dragStartPoint = new Point(event.clientX, event.clientY); + } + } + + public function mouseMoveHandler(event:MouseEvent):void + { + if (dragStartPoint != null) + { + var dragEvent:DragEvent = new DragEvent(DragEvent.DRAG_START, true); + dragEvent.clientX = dragStartPoint.x; + dragEvent.clientY = dragStartPoint.y; + dragEvent.buttonDown = true; + dispatchEvent(dragEvent); + + rollOutHandler(event); + + dragStartPoint = null; + } + } + + public function mouseUpHandler(event:MouseEvent):void + { + if (dragStartPoint != null) + { + dragStartPoint = null; + } + } + + public function clickHandler(event:org.apache.flex.events.MouseEvent):void + { + if (event.target != purchase && + event.target != compare && + event.target != details) + { + dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product)); + } + } + + ]]> + </fx:Script> + <fx:Declarations> + <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/> + </fx:Declarations> + + <js:VContainer id="vb" width="100%" height="100%"> + <js:style> + <js:SimpleCSSStyles paddingLeft="6" paddingTop="4" paddingRight="8" paddingBottom="4" /> + <!-- gap="0"> --> + </js:style> + + + <js:Label text="{product.name}" style="fontWeight:bold"/> + + <js:HContainer width="100%" > + <js:style> + <js:SimpleCSSStyles paddingTop="0" /> <!-- gap="4 -->" + </js:style> + + <js:Image id="img" height="45" width="45" + width.x3cols="60" height.x3cols="60" + width.x2cols="60" height.x2cols="60" - source="{product.image}" /> ++ url="{product.image}" /> + + <js:VContainer id="descr" height="100%" > + <js:style> + <js:SimpleCSSStyles paddingTop="0" right="0" /> <!-- gap="0" --> + </js:style> + <js:Label text="{product.featureString}" width="60" height="48" /> + <js:Label text="{cf.format(product.price)}" style="fontWeight:bold"/> + <js:Spacer height="4"/> + <js:Label text="{product.highlight1}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/> + <js:Label text="{product.highlight2}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/> + </js:VContainer> + + </js:HContainer> + + <js:Spacer height="8"/> + + <js:Label id="compYears" text="Years: {product.experience}" includeIn="compare"/> + <js:Label id="compBlaze" text="BlazeDS: {product.blazeds}" includeIn="compare"/> + <js:Label id="compMobile" text="Mobile: {product.mobile}" includeIn="compare"/> + <js:Label id="compVideo" text="Video: {product.video}" includeIn="compare"/> + <js:Label id="compHigh1" text="Highlight: {product.highlight1}" includeIn="compare"/> + <js:Label id="compHigh2" text="Highlight: {product.highlight2}" includeIn="compare"/> + <js:Label text="Description:" includeIn="compare"/> + <js:MultilineLabel id="compDesc" text="{product.description}" width="100%" includeIn="compare"/> + </js:VContainer> + + + <js:VContainer id="buttons" visible="false" width="30"> + <js:style> + <js:SimpleCSSStyles paddingRight="8" right="8" top="12" /> <!-- gap="4" --> + </js:style> + <js:ImageButton id="purchase" source="assets/button_cart_empty.png" className="hoverButton" + click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" + width="30"> + <js:beads> + <js:ToolTipBead toolTip="Add to cart"/> + </js:beads> + </js:ImageButton> + <js:ImageButton id="compare" source="assets/button_compare.png" className="hoverButton" + click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" + width="30"> + <js:beads> + <js:ToolTipBead toolTip="Add to compare list"/> + </js:beads> + </js:ImageButton> + <js:ImageButton id="details" source="assets/button_details.png" className="hoverButton" + click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product))" + width="30"> + <js:beads> + <js:ToolTipBead toolTip="Show details"/> + </js:beads> + </js:ImageButton> + </js:VContainer> + + <js:states> + + <js:State name="compare" /> + + <js:State name="x4cols" /> + + <js:State name="x3cols" /> + + <js:State name="x2cols"/> + </js:states> + +</js:Container> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml ---------------------------------------------------------------------- diff --cc examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml index 309cb41,0000000..781d120 mode 100755,000000..100755 --- a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml +++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml @@@ -1,145 -1,0 +1,145 @@@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +--> +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:js="library://ns.apache.org/flexjs/basic" + xmlns:productsView="productsView.*" + > + <js:beads> + <js:ContainerDataBinding /> + </js:beads> + + <fx:Metadata> + [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")] + [Event(name="compare", type="samples.flexstore.ProductThumbEvent")] + [Event(name="browse", type="samples.flexstore.ProductThumbEvent")] + </fx:Metadata> + + <fx:Script> + <![CDATA[ + + import samples.flexstore.Product; + import samples.flexstore.ProductThumbEvent; + + private var _product:Product; + + [Bindable] + public function get product():Product + { + return _product; + } + + public function set product(p:Product):void + { + _product = p; + tn.selectedIndex = 0; + } + + ]]> + </fx:Script> + + <fx:Declarations> + <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/> + </fx:Declarations> + + <js:states> + <js:State name="Features" /> + <js:State name="Support" /> + </js:states> + + <js:transitions> + <js:Transition> + <js:Fade /> + </js:Transition> + </js:transitions> + + <js:ButtonBar id="tn" width="100%" change="currentState = tn.selectedItem as String"> + <js:dataProvider> + <fx:Array> + <fx:String>Features</fx:String> + <fx:String>Support</fx:String> + </fx:Array> + </js:dataProvider> + </js:ButtonBar> + <js:Container > + <js:style> + <js:SimpleCSSStyles left="4" right="8" top="34" bottom="4" /> + </js:style> + + + <js:VContainer includeIn="Features" > + <js:style> + <!--<js:SimpleCSSStyles gap="8"--> + <js:SimpleCSSStyles + left="8" top="8" right="8" bottom="8"/> + </js:style> + <js:Container style="left:0px;right:0px"> + - <js:Image id="img" width="101" height="101" source="{product.image}"/> ++ <js:Image id="img" width="101" height="101" url="{product.image}"/> + + <js:VContainer id="descr" > + <js:style> + <js:SimpleCSSStyles top="0" left="105" right="0" bottom="20" /> + <!--<js:SimpleCSSStyles paddingTop="0" gap="4" />--> + </js:style> + + <js:Label text="{product.name}" style="fontSize:11;fontWeight:'bold'"/> + + <js:Label text="{product.featureString}" width="80" height="48" /> + + <js:Label text="{product.highlight1}" style="color:#EE8D0C"/> + + <js:Label text="{product.highlight2}" style="color:#EE8D0C"/> + + <js:Label text="{cf.format(product.price)}" style="fontWeight:'bold'"/> + + </js:VContainer> + </js:Container> + + <js:Label id="descriptionText" style="left:0px;right:0px;bottom:0px" text="{product.description}"/> + + </js:VContainer> + + <productsView:ProductSupport width="100%" height="100%" includeIn="Support" /> + + </js:Container> + + <js:VContainer> + <js:style> + <js:SimpleCSSStyles marginTop="4" right="16" top="36" /> + </js:style> + <js:Spacer width="100%"/> + <js:ImageButton id="purchase" source="assets/button_cart_empty.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" width="30"> + <js:beads> + <js:ToolTipBead toolTip="Add to cart"/> + </js:beads> + </js:ImageButton> + <js:ImageButton id="compare" source="assets/button_compare.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" width="30"> + <js:beads> + <js:ToolTipBead toolTip="Add to compare list"/> + </js:beads> + </js:ImageButton> + <js:ImageButton id="tiles" source="assets/button_tiles.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.BROWSE, product));" width="30"> + <js:beads> + <js:ToolTipBead toolTip="Back to thumbnail view"/> + </js:beads> + </js:ImageButton> + </js:VContainer> + +</js:Container>