9 Replies Latest reply on Oct 7, 2009 9:54 PM by Sameer Bhatt

    Seen Beta 2. Now here are five feature requests

    mewk Level 3

      1. Bring back scroller::horizontalScrollPolicy and scroller::verticalScrollPolicy.

       

      I don't know why you would remove this property from the scroller class. Arcane padding rules, browser resizes, and so on -- all reasons that scroll bars might mysteriously and unwantedly surround your data control. The scrollPolicies have been a godsend against these annoyances. Whatever performance gains may be had by removing these properties cannot be offset by the utility to the developer.

       

      2. Create a 'generate service call' button in the data service's panel.

       

      I spend 90% of my time in source mode and it would be nice if this button was easily accessible from here. Most of the work for this feature has already been done and the service call generator exists for some components in design mode. Often, however, I find I need the generated code but not the component and it's ridiculous to have to temporarily create a component just to get what I need.

       

      3. Have a 'Skins' window.

       

      Let's say I want to skin a Button. How am I supposed to know what states are involved? Where do I begin? Often what I do is head over to ..\Adobe\Adobe Flash Builder Beta 2\sdks\4.0.0\frameworks\projects\spark\src\spark\skins\spark find the default skin and copy then paste. That's a lot of folders to navigate through and I shouldn't have to leave FB at all for this. I think it makes sense to have easy access to all the .mxml default skins.

       

      4. We need more spark components.

       

      I like spark; I like skinning spark components; sometimes mixing spark and halo results in unexpected behavior (background alphas and colors not matching, etc); and finally, the spark theme has interfered with some of the halo components' functionality (fillcolors, trakcolors, etc) -- these are a few of the reasons I would like to see the spark equivalent of ALL the halo components. A couple people on this board recently asked about skinning the scrollbars on DataGrid, I would start (er, continue) with making <s:DataGrid>.

       

      5. Update FB's start page.

       

      The page has a link to the Forum and reads, 'Interact with the Beta Community,' but there is no link to the forum in which I'm now posting. Don't tell me I'm in the wrong place! ;-p

       

      Well, hope I don't sound like a demanding ###. I'm actually quite thrilled with Beta 2, and, in particular, I think the the data services feature is awesome and seems to be working flawlessly now. Way to go. Woot Woot,

       

      - e

        • 1. Re: Seen Beta 2. Now here are five feature requests
          Peter deHaan Level 4

          mewk,

           

          Great list, thanks.

          Would you mind filing a bug/enhancement request for each of these issues separately (some are SDK issues, some are Builder issues, etc).

           

          As for #1, I believe that the Scroller's verticalScrollPolicy/horizontalScrollPolicy properties are now styles: http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/spark/components/S croller.html#style:verticalScrollPolicy

           

          Peter

          1 person found this helpful
          • 2. Re: Seen Beta 2. Now here are five feature requests
            Tanya Dimalsky (adobe) Level 1

            hi mewk,

            for your request number 3,  try the following, select the button you would like to skin in DesignView, right click and select 'Create new copy of skin' option.  (you could also use the PI skin field for this)

             

            Thanks!

            -Tanya

            '

            1 person found this helpful
            • 3. Re: Seen Beta 2. Now here are five feature requests
              David_F57 Level 5

              Not sure about the scroll properties missing this is a skin for a spark list that functions quite happily in beta 2 still uses the vertical and horizontal scroll policy

               

              <?xml version="1.0" encoding="utf-8"?>

               

              <s:SparkSkin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"

                    minWidth="40" minHeight="66"

                    alpha.disabled="0.5" blendMode="normal">

               

                  <fx:Metadata>

                  <![CDATA[

                  /**

                   * @copy spark.skins.spark.ApplicationSkin#hostComponent

                   */

                      [HostComponent("spark.components.List")]

                  ]]>

                  </fx:Metadata>

               

                  <fx:Script>

                      /* Define the skin elements that should not be colorized.

                         For list, the skin itself is colorized but the individual parts are not. */

                      static private const exclusions:Array = ["scroller", "background"];

               

                  /**

                   * @copy spark.skins.SparkSkin#colorizeExclusions

                   */    

                      override public function get colorizeExclusions():Array {return exclusions;}

               

                      /* Define the content fill items that should be colored by the "contentBackgroundColor" style. */

                      static private const contentFill:Array = ["bgFill"];

                      <!--- @inheritDoc -->

                      override public function get contentItems():Array {return contentFill};

                  </fx:Script>

               

                  <s:states>

                      <s:State name="normal" />

                      <s:State name="disabled" />

                  </s:states>

               

                  <!-- border -->

                  <s:Rect left="0" right="0" top="0" bottom="0">

                      <s:stroke>

                          <s:SolidColorStroke color="0x686868" weight="1"/>

                      </s:stroke>

                  </s:Rect>

               

                  <!-- fill -->

                  <!--- Defines the background appearance of the list-based component. -->

                  <s:Rect id="background" left="1" right="1" top="1" bottom="1" >

                      <s:fill>

                      <!--- Defines the color of the background. The default color is 0xFFFFFF. -->

                          <s:SolidColor id="bgFill" color="0xFFFFFF" />

                      </s:fill>

                  </s:Rect>

               

                  <!--- The Scroller component to add scroll bars to the list. -->

                  <s:Scroller left="0" top="0" right="0" bottom="0" id="scroller" minViewportInset="1" focusEnabled="false"

                  horizontalScrollPolicy="off" verticalScrollPolicy="off">

                      <!--- The container for the data items. -->

                      <s:DataGroup id="dataGroup" itemRenderer="spark.skins.spark.DefaultItemRenderer">

                          <s:layout>

                              <s:VerticalLayout gap="0" horizontalAlign="contentJustify" />

                          </s:layout>

                      </s:DataGroup>

                  </s:Scroller>

              </s:SparkSkin>

              • 4. Re: Seen Beta 2. Now here are five feature requests
                Peter deHaan Level 4

                Correct.

                 

                At some point the horizontalScrollPolicy and verticalScrollPolicy properties were changed to styles (which makes it a LOT easier to globally set if you always want scrollbars throughout your application).

                 

                So, if you are setting the scroll properties via MXML everything should still work fine since the syntax for setting properties and styles are the same.

                If you were setting these via ActionScript before, you'd have to change from myScroller.verticalScrollPolicy = 'on'; to something like myScroller.setStyle('verticalScrollPolicy', 'on');

                 

                Peter

                • 5. Re: Seen Beta 2. Now here are five feature requests
                  Sameer Bhatt Adobe Employee

                  Hi Mewk,

                  For your request # 2, there are two approaches.

                   

                  Approach 1- supported now

                  In the code view you can place the cursor inside the Button (or any other supported component) and select Bind to Data from the Data Menu.

                   

                  Approach 2 -
                  Are you looking for something like this?

                  Right click on an operation in the Data/Services view and select "Generate Service Call".

                  In the MXML file, the operation call will be generated -

                  <fx:Script>
                          <![CDATA[


                   


                              protected function getBooks():void
                              {
                                  getBookResult.token = bookService.getBooks();
                              }


                   


                          ]]>
                      </fx:Script>
                      <fx:Declarations>
                          <s:CallResponder id="getBooksResult"/>


                        <services:BookService id="bookService" fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)" showBusyCursor="true"/>
                      </fx:Declarations>


                  Approach 2 is not currently supported now. So, if you meant support for something similar to approach 2, please give your feedback on what you would like to see here and about the generated code.

                  • 6. Re: Seen Beta 2. Now here are five feature requests
                    mewk Level 3

                    Hey guys and gals,

                     

                    Thanks for all the great responses! I figured, as I was posting, that my feature requests might have been a little rushed considering I hadn't fully explored Beta 2 yet.

                     

                    @Tanya, I see the new copy skins feature and I'm totally loving it!! I did run across one little snag, probably a bug -- when I right click on <s:SkinnableDataContainer> the component is deselected making it impossible to get the skin. I tried this on about a dozen other components and only <s:SDC> failed (it just happened that this was the first one I tried).

                     

                     

                    @Peter and David, well it's good to see that the scrollPolicies haven't entirely disappeared from FB (thank God!). However, I'm not in total support of moving these features from properties to styles. FB doesn't support (I think!) code hinting for styles and code hinting = developer's best friend.

                     

                     

                    @Sameer, feature #2 is exactly what I had in mind. What I would like to see is a button (probably sandwiched between 'test operation' and 'bind to data') in the data/services panel. You click said button and FB prompts you for "Service:" and "Operation:" In our example you would select bookService and getBooks(), respectively. At this point FB would generate the code exactly as you have written it.

                     

                    My point here is, why tie the generated code to a single component? Suppose we wanted getBooksByAuthor("Zelazny"), getBooksByYear(1999), getBooksByTitle("Nine Princes of Amber") -- I imagine whoever designs this would not opt to have three separate components!

                     

                    Alternatively, think about changing to <s:state name="state3>, which requires data from the server and suppose we can arrive at state3 from many other states (say state1, state4, state5). It would make more sense to make a service call on the enterState event than it would on three different components in state1, state2, and state5.

                     

                     

                    @Peter again, I know should go fill out the bug/enhancement forms. Will try to do later today when I have more free time.

                     

                     

                    Thanks again,

                     

                    - e

                    • 7. Re: Seen Beta 2. Now here are five feature requests
                      Peter deHaan Level 4

                      mewk,

                       

                      @Peter and David, well it's good to see that the scrollPolicies haven't entirely disappeared from FB (thank God!). However, I'm not in total support of moving these features from properties to styles. FB doesn't support (I think!) code hinting for styles and code hinting = developer's best friend.

                       

                      Builder should definitely code hint styles. If you aren't seeing code hints in beta 2, definitely file a bug for that ASAP (and include your OS and config) and somebody on the Builder team can investigate. Personally I prefer the scroll policies as styles as I can then globally toggle List scroll policies by using an <fx:Style/> block.

                       

                       

                       

                      @Peter again, I know should go fill out the bug/enhancement forms. Will try to do later today when I have more free time.

                       

                      Thanks!

                       

                      Regards,

                      Peter

                      • 8. Re: Seen Beta 2. Now here are five feature requests
                        80sRelic

                        That is very helpful mewk, thanks so much.

                        • 9. Re: Seen Beta 2. Now here are five feature requests
                          Sameer Bhatt Adobe Employee

                          Hi Mewk,

                           

                          I've logged an enhancement request for feature # 2 - http://bugs.adobe.com/jira/browse/FB-23366

                          Please vote for it and add your comments.

                           

                          Thanks,

                          Sameer