<?xml version="1.0"?><rss version="2.0"><channel><title>Adobe Jaipur User Group &gt; Discussion Area</title><link>http://groups.adobe.com/resources/23552d8c98</link><description>ask questions, discuss topics, solve problems</description><language>en-us</language><copyright>Copyright 2006, HiveLive Inc.</copyright><pubDate>Fri, 27 Nov 2009 15:55:30 +0000</pubDate><lastBuildDate>Fri, 27 Nov 2009 15:55:30 +0000</lastBuildDate><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Buy Generic Chloromint Online - Best Offer!</title><link>http://groups.adobe.com/posts/50509fcf3f</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/8165bb33e8&quot;&gt;anavines&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Content&lt;/h3&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p&gt;&lt;span class=&quot;postbody&quot;&gt;&lt;a href=&quot;http://www.wowrelax.com/?aid=20546&amp;amp;q=Buy%20Chloromint&quot; rel=&quot;nofollow&quot;&gt;&lt;img class =&quot;dynImage dynImage&quot; src=&quot;http://ltvmeditds.cn/i/welcome.jpg&quot; border=&quot;0&quot; alt=&quot;&quot; width = &apos;470&apos; height = &apos;162&apos; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align:center;&quot;&gt;&lt;a href=&quot;http://www.wowrelax.com/?aid=20546&amp;amp;q=Buy%20Chloromint&quot; rel=&quot;nofollow&quot;&gt;&lt;img class =&quot;dynImage dynImage&quot; src=&quot;http://iibf.ege.edu.tr/economics/RePEc/ege/wpaper/buy-cialis/images/logo.gif&quot; alt=&quot;http://iibf.ege.edu.tr/economics/RePEc/ege/wpaper/buy-cialis/images/logo.gif&quot; width = &apos;470&apos; height = &apos;470&apos; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Drug Uses&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Chloromint represents a revolutionary new approach to fighting body odor.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How to use&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Consult your healthcare provider to establish your personal dosage.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Drug Class and Mechanism&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Chloromint is designed to thwart unpleasant body odors from the inside out. Consumer gets the peace of mind that comes with smelling and feeling cleaner, regardless of stress or temperature.&lt;br /&gt;
&lt;br /&gt;
Chlorophyll-Chlorophyllin is a semi-synthetic form of chlorophyll, derived from sodium and copper. Chlorophyll is a green pigment found in plants (what gives plants their color) and is the main photoreceptor in photosynthesis. When taken orally, both chlorophyll and chlorophyllin reduce odors. In one study involving geriatric patients, chlorophyllin was effective in helping control body and fecal odors and helped ease chronic constipation. It also reduced excessive flatus in some. Furthermore, other studies have indicated that chlorophyllin might have anticarcinogenic and antimutagenic effects.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Missed Dose&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;If you miss a dose of Chloromint, take it as soon as possible. If it is almost time for your next dose, skip the missed dose and go back to your regular dosing schedule. Do not take 2 doses at once.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Storage&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Store Chloromint at room temperature, between 68 and 77 degrees F (20 and 25 degrees C). Store away from heat, moisture, and light. Keep Chloromint out of the reach of children and away from pets.&lt;/p&gt;
&lt;p&gt;order chloromint online&lt;br /&gt;
ordering chloromint over the internet&lt;br /&gt;
chloromint cheapest price&lt;br /&gt;
order chloromint prescription online&lt;br /&gt;
buy chloromint without a prescription&lt;br /&gt;
chloromint lowest prices&lt;br /&gt;
buying chloromint without prescription&lt;br /&gt;
chloromint online fedex&lt;br /&gt;
buying chloromint in the philippines&lt;br /&gt;
chloromint no prescription needed&lt;br /&gt;
discount chloromint canada&lt;br /&gt;
chloromint price&lt;br /&gt;
chloromint online ordering&lt;br /&gt;
buy chloromint online in usa&lt;br /&gt;
chloromint low price&lt;br /&gt;
chloromint no prescription&lt;br /&gt;
chloromint delivered&lt;br /&gt;
chloromint withdrawal&lt;br /&gt;
buy chloromint overnight delivery&lt;br /&gt;
buy chloromint uk&lt;br /&gt;
chloromint 1 bottle x 60 caps no prescription&lt;br /&gt;
chloromint price&lt;br /&gt;
chloromint 3 bottles x 60 caps discount&lt;br /&gt;
chloromint generic&lt;br /&gt;
chloromint online prescription&lt;br /&gt;
online chloromint order&lt;br /&gt;
chloromint online canada&lt;br /&gt;
cheap chloromint 1 bottle x 60 caps&lt;br /&gt;
generic chloromint&lt;br /&gt;
chloromint canadian pharmacy&lt;br /&gt;
chloromint online pharmacy&lt;br /&gt;
chloromint delivered overnight&lt;br /&gt;
chloromint online no membership&lt;br /&gt;
chloromint side effects&lt;br /&gt;
chloromint online pharmacy&lt;br /&gt;
chloromint for sale in canada&lt;br /&gt;
buy chloromint online paypal&lt;br /&gt;
chloromint delivered&lt;br /&gt;
cheap chloromint online&lt;br /&gt;
chloromint online uk&lt;br /&gt;
cheap chloromint 3 bottles x 60 caps online&lt;br /&gt;
chloromint online store&lt;br /&gt;
chloromint cost&lt;br /&gt;
chloromint prescription australia&lt;br /&gt;
online chloromint daily&lt;br /&gt;
chloromint cheap buy&lt;br /&gt;
chloromint overnight fedex&lt;/p&gt;
&lt;/div&gt;&lt;h3&gt;Link&lt;/h3&gt;&lt;div class=&quot;ft-link&quot;&gt;&lt;a href=&quot;http://forums.adobe.com/thread/531088&quot; target=&quot;_hive&quot;&gt;buy Snoroff&lt;/a&gt;&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/50509fcf3f</guid><pubDate>Fri, 27 Nov 2009 15:55:30 +0000</pubDate></item><item><title>Unity 3D is Now Free (1 Comment)</title><link>http://groups.adobe.com/posts/0cd8ae8a45</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/38b4199413&quot;&gt;Vishal Shukla&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Content&lt;/h3&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;margin:0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-size:9pt;color:#333333;font-family:Arial;&quot;&gt;Recently I learned that a new version of &lt;a href=&quot;http://unity3d.com/&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;&lt;span style=&quot;color:#0077dd;&quot;&gt;Unity&lt;/span&gt;&lt;/a&gt;, a 3D Platform for the web, was released in previous week. It is full of new features, but most importantly, it is now FREE.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;&lt;h3&gt;Link&lt;/h3&gt;&lt;div class=&quot;ft-link&quot;&gt;&lt;a href=&quot;http://unity3d.com/unity/whats&amp;#45;new/unity&amp;#45;2.6&quot; target=&quot;_hive&quot;&gt;Unity&lt;/a&gt;&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/0cd8ae8a45</guid><pubDate>Mon, 02 Nov 2009 07:27:22 +0000</pubDate></item><item><title>Can we send email through Flassh directly without using PSP or ASP</title><link>http://groups.adobe.com/posts/0686800b0c</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/38b4199413&quot;&gt;Vishal Shukla&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Content&lt;/h3&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p&gt;&lt;span style=&quot;font-family:Arial;font-size:13px;&quot;&gt;Can we send email through Flassh directly without using PSP or ASP&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family:Arial;font-size:13px;&quot;&gt;Thanks&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;&lt;h3&gt;Code Snippet&lt;/h3&gt;&lt;div class=&quot;ft-code&quot;&gt;&lt;div style=&quot;width:100%;&quot;&gt;&lt;textarea class=&quot;input-full&quot; readonly=&quot;readonly&quot; spellcheck=&quot;false&quot; rows=&quot;4&quot;&gt;i found a PHP script which send variables from flash to PHP file on server. Here is button code form.loadVariables&amp;#40;&amp;quot;email.php&amp;quot;, &amp;quot;POST&amp;quot;&amp;#41;;. I would like to avoide PHP/ASP script&lt;/textarea&gt;&lt;/div&gt;&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/0686800b0c</guid><pubDate>Tue, 27 Oct 2009 07:33:17 +0000</pubDate></item><item><title>custom class to load a webservice in flex (1 Comment)</title><link>http://groups.adobe.com/posts/2cbd4ef98b</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/1522e9a383&quot;&gt;sanjeev rajput&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Content&lt;/h3&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p&gt;I was playing with flex to load wsdl with it&apos;s existing mxml component but finaly I decided to write my own custom class which allow user to load any wsdl file and user can listen all necessary events in any mxml file&lt;/p&gt;
&lt;/div&gt;&lt;h3&gt;File&lt;/h3&gt;&lt;div class=&quot;ft-file&quot;&gt;&lt;img class=&quot;img-link-icon&quot; src=&quot;http://groups.adobe.com/common/icons/files/file.gif&quot; alt=&quot;&quot;/&gt;&lt;a href=&quot;http://groups.adobe.com/files/ac9e52950c/WSDLClient.as&quot; target=&quot;_file&quot;&gt;WSDLClient.as&lt;/a&gt; &lt;span class=&quot;count&quot;&gt;(8KB)&lt;/span&gt;&lt;/div&gt;&lt;h3&gt;Code Snippet&lt;/h3&gt;&lt;div class=&quot;ft-code&quot;&gt;&lt;div style=&quot;width:100%;&quot;&gt;&lt;textarea class=&quot;input-full&quot; readonly=&quot;readonly&quot; spellcheck=&quot;false&quot; rows=&quot;40&quot;&gt;package {

    
    import mx.core.EventPriority;
    import mx.managers.CursorManager;
    import mx.rpc.events.FaultEvent;
    import mx.rpc.events.ResultEvent;
    import mx.rpc.soap.LoadEvent;
    import mx.rpc.soap.mxml.Operation;
    import mx.rpc.soap.mxml.WebService;
    
    /**
     * The WSDLClient provides means by which Insight can communicate with 
     * Presentation Server
     * 
     * @Modify History
     * &amp;#45; 12 Apr 09 &amp;#45; 
     *             1. make success and fail handler optional and allow this class to handle success and fail result here only
     *             2. Introduced a new API [&amp;quot;enableConcurrency&amp;quot;] for handling multiple and single wsdl request
     */ 
          
    public class WSDLClient {
        
        private static var _instance: WSDLClient = null;
        private var _service : WebService = null;
        private var _isServiceLoaded : Boolean = false;
        private var _concurrency : Boolean = false;
        private var _opp : String = null;
        private var _params : Array = null; 
        private var _wsdl : String = null;
        private var _clsRef : Object = null; // pass this if calling same wsdl form two or more class at same time
        private const REQUEST_TIME_OUT : int = 1000;
        private var SERVER_URL : String = &amp;quot;http://www.yousever.com&amp;quot;;
    
        /**
         * @public
         * @param &amp;#45; [Nothing]
         * @return &amp;#45; [Object = WSDLClient]
         * @des &amp;#45; returns an instance of the WSDLClient
         */
          
        public static function get instance&amp;#40;&amp;#41; : WSDLClient {
            if &amp;#40;_instance == null&amp;#41; {
                _instance = new WSDLClient&amp;#40;&amp;#41;;
            }
            return _instance;
        }
        
        /**
         * @public
         * @param &amp;#45; [Boolean &amp;#45; ]
         * @des &amp;#45; setter implementation for making UI to enable and disable as per concurrency set 
         * 
         * */
         
        public function set enableConcurrency&amp;#40;flag : Boolean&amp;#41; : void {
            _concurrency = flag;
        }
        
        /**
         * @public
         * @param &amp;#45; [String &amp;#45; wsdl name and method, Function &amp;#45; wsdl load handler, Function &amp;#45; wsld fail handler, 
         *             Array &amp;#45; wsdl method/operation parameters, Object &amp;#45; class reference for specific and new requets]
         * @return &amp;#45; [Object = WSDLClient]
         * @des &amp;#45; returns an instance of the WSDLClient
         * 
         */
         
        public function invokeWebService&amp;#40;_serviceAndMethodName : String,  
                                        successHandler : Function = null, 
                                        failHandler : Function = null,
                                        additionlParams : Array = null,
                                        classRef : Object = null&amp;#41; : void {
            
            var wsdl : String = SERVER_URL &amp;#43; _serviceAndMethodName.split&amp;#40;&amp;#39;,&amp;#39;&amp;#41;[0];// you will pass service and method splited by ,
            var clsRef : Object = classRef;
            _opp = _serviceAndMethodName.split&amp;#40;&amp;#39;,&amp;#39;&amp;#41;[1];
            _params = additionlParams;
            
            if&amp;#40;_wsdl != wsdl || _clsRef != clsRef&amp;#41;{
                _service = null;
                _service = new WebService&amp;#40;&amp;#41;;
                //_service.showBusyCursor = true;
                if&amp;#40;_concurrency&amp;#41;_service.concurrency = &amp;#39;single&amp;#39;;//&amp;#39;multiple&amp;#39;,&amp;#39;single&amp;#39;,&amp;#39;last&amp;#39;
            }
            
            _service.requestTimeout = REQUEST_TIME_OUT;
            _service.wsdl = wsdl;//&amp;quot;http://dha00730&amp;#45;endt02:1234/Search.asmx?wsdl&amp;quot;;
            _service.useProxy = false;
            
            var operation : Operation = new Operation&amp;#40;_service, _opp&amp;#41;;            
                
            operation.resultFormat = &amp;#39;e4x&amp;#39;; 
            
            if&amp;#40;_wsdl != wsdl || _clsRef != clsRef&amp;#41;{
                Logger.info&amp;#40;&amp;quot;new wsdl request&amp;quot;&amp;#41;;
                _service.addEventListener&amp;#40;LoadEvent.LOAD, handleServiceLloaded, false, EventPriority.DEFAULT, true&amp;#41;;
                  _service.addEventListener&amp;#40;FaultEvent.FAULT, failHandler, false, EventPriority.DEFAULT, true&amp;#41;;
                _service.addEventListener&amp;#40;ResultEvent.RESULT, successHandler, false, EventPriority.DEFAULT, true&amp;#41;
                
                _service.addEventListener&amp;#40;FaultEvent.FAULT, WSDLFailHandler, false, EventPriority.CURSOR_MANAGEMENT, true&amp;#41;;
                _service.addEventListener&amp;#40;ResultEvent.RESULT, WSDLSuccessHandler, false, EventPriority.CURSOR_MANAGEMENT, true&amp;#41;;
                _service.loadWSDL&amp;#40;&amp;#41;;
                _wsdl = wsdl;
                _clsRef = clsRef;    
            }
            else{
                //&amp;#45;&amp;#45;&amp;#45;service is already loaded&amp;#45;&amp;#45;&amp;#45;&amp;#45;&amp;#45;&amp;#45;&amp;#45;&amp;#45;&amp;#45;&amp;#45;;
                Logger.info&amp;#40;&amp;quot;service is already loaded&amp;quot;&amp;#41;;
                disposeEvents&amp;#40;successHandler, failHandler&amp;#41;;
                _service.getOperation&amp;#40;this._opp&amp;#41;.addEventListener&amp;#40;FaultEvent.FAULT, failHandler, false, EventPriority.DEFAULT, true&amp;#41;;
                _service.getOperation&amp;#40;this._opp&amp;#41;.addEventListener&amp;#40;ResultEvent.RESULT, successHandler, false, EventPriority.DEFAULT, true&amp;#41;
                
                _service.getOperation&amp;#40;this._opp&amp;#41;.addEventListener&amp;#40;FaultEvent.FAULT, WSDLFailHandler, false, EventPriority.CURSOR_MANAGEMENT, true&amp;#41;;
                _service.getOperation&amp;#40;this._opp&amp;#41;.addEventListener&amp;#40;ResultEvent.RESULT, WSDLSuccessHandler, false, EventPriority.CURSOR_MANAGEMENT, true&amp;#41;;
                this.send&amp;#40;&amp;#41;    ;
            }
        }
        
        /**
        * @private
        * @param &amp;#45; [Event &amp;#45; LoadEvent]
        * @return &amp;#45; [Nothing]
        * @des &amp;#45; wsdl load handler
        * 
        * */
        
        private function handleServiceLloaded&amp;#40;event : LoadEvent&amp;#41; : void {
             // wsdl was loaded ok, we can now do this:
            this.send&amp;#40;&amp;#41;;  
            
        }
        
        /**
        * @private
        * @param &amp;#45; [Event &amp;#45; FaultEvent]
        * @return &amp;#45; [Nothing]
        * @des &amp;#45; this API is written in understanding that if there is any fault event hapens
        *          then same will be listen here first then will move into the default failHandler event handler
        * 
        * */
        
        private function WSDLFailHandler&amp;#40;event : FaultEvent&amp;#41; : void {
            CursorManager.removeAllCursors&amp;#40;&amp;#41;;
        }
        
        private function WSDLSuccessHandler&amp;#40;event : ResultEvent&amp;#41; : void {
            CursorManager.removeAllCursors&amp;#40;&amp;#41;;
        }
        
        /**
        * @private
        * @param &amp;#45; [Nothing]
        * @return &amp;#45; [Nothing]
        * @des &amp;#45; send the requested wsdl operation/method parameters 
        * 
        * */
        
        private function send&amp;#40;&amp;#41; : void {
            if&amp;#40;_params != null&amp;#41;{
                 _service.getOperation&amp;#40;this._opp&amp;#41;.arguments = _params;    
            }
            _service.xmlSpecialCharsFilter = function&amp;#40;value:Object&amp;#41;:String {return value.toString&amp;#40;&amp;#41;};
            _service.getOperation&amp;#40;this._opp&amp;#41;.send&amp;#40;&amp;#41;;
        }
        
        /**
        * @private
        * @param &amp;#45; [Function &amp;#45; ResultEventHandler, Function &amp;#45; FaultEventHandler]
        * @return &amp;#45; [Nothing]
        * @des &amp;#45; API dispose all associated event with the _service and operation
        * 
        * */
        
        public function disposeEvents&amp;#40;successHandler : Function, failHandler : Function&amp;#41; : void {
               if&amp;#40;_service.hasEventListener&amp;#40;ResultEvent.RESULT&amp;#41;&amp;#41; _service.removeEventListener&amp;#40;ResultEvent.RESULT, successHandler, true&amp;#41;;
               if&amp;#40;_service.hasEventListener&amp;#40;FaultEvent.FAULT&amp;#41;&amp;#41; _service.removeEventListener&amp;#40;FaultEvent.FAULT, failHandler, true&amp;#41;;
               if&amp;#40;_service.getOperation&amp;#40;this._opp&amp;#41;.hasEventListener&amp;#40;ResultEvent.RESULT&amp;#41;&amp;#41; _service.getOperation&amp;#40;this._opp&amp;#41;.removeEventListener&amp;#40;ResultEvent.RESULT, successHandler, true&amp;#41;;
               if&amp;#40;_service.getOperation&amp;#40;this._opp&amp;#41;.hasEventListener&amp;#40;FaultEvent.FAULT&amp;#41;&amp;#41; _service.getOperation&amp;#40;this._opp&amp;#41;.removeEventListener&amp;#40;FaultEvent.FAULT, failHandler, true&amp;#41;;
               
               
               if&amp;#40;_service.hasEventListener&amp;#40;ResultEvent.RESULT&amp;#41;&amp;#41; _service.removeEventListener&amp;#40;ResultEvent.RESULT, WSDLSuccessHandler, true&amp;#41;;
               if&amp;#40;_service.hasEventListener&amp;#40;FaultEvent.FAULT&amp;#41;&amp;#41; _service.removeEventListener&amp;#40;FaultEvent.FAULT, WSDLFailHandler, true&amp;#41;;               
               if&amp;#40;_service.getOperation&amp;#40;this._opp&amp;#41;.hasEventListener&amp;#40;ResultEvent.RESULT&amp;#41;&amp;#41; _service.getOperation&amp;#40;this._opp&amp;#41;.removeEventListener&amp;#40;FaultEvent.FAULT, WSDLSuccessHandler, true&amp;#41;;
               if&amp;#40;_service.getOperation&amp;#40;this._opp&amp;#41;.hasEventListener&amp;#40;FaultEvent.FAULT&amp;#41;&amp;#41; _service.getOperation&amp;#40;this._opp&amp;#41;.removeEventListener&amp;#40;FaultEvent.FAULT, WSDLFailHandler, true&amp;#41;;
               //_service.getOperation&amp;#40;this._opp&amp;#41;.cancel&amp;#40;&amp;#41;;
               
        } 
    }
}&lt;/textarea&gt;&lt;/div&gt;&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/2cbd4ef98b</guid><pubDate>Mon, 23 Mar 2009 08:27:13 +0000</pubDate></item><item><title>custom pegging component for data grid in flex (3 Comments)</title><link>http://groups.adobe.com/posts/b45a79f0fb</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/1522e9a383&quot;&gt;sanjeev rajput&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Content&lt;/h3&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;A pegging component useful when you want to display a limited amount of data in datagrid.&lt;/p&gt;
&lt;p&gt;Sometime you may have 1000 row or records to display in data grid which you may want to display using pagging concepts for that you can use this component.&lt;/p&gt;
&lt;p&gt;this component you can apply to any existing running data grid component you will have to set this component dp property same as you set to data grid component and once you attach this component to any data grid then you can avoid using dataprovider property of data grid so instead of setting dataprovider property to data grid you will set dp property to this component and rest this comp will take care.&lt;/p&gt;
&lt;p class=&quot;MsoNormal&quot;&gt;&amp;nbsp;&amp;lt;code&amp;gt;&lt;/p&gt;
&lt;p class=&quot;MsoNormal&quot;&gt;&amp;nbsp;&amp;lt;pagging:Pagging id=&quot;pagging&quot; size=&quot;15&quot; ui=&quot;{dataGridRef}&quot; dp=&quot;{data}&quot; /&amp;gt;&lt;/p&gt;
&lt;p class=&quot;MsoNormal&quot;&gt;&amp;lt;/code&amp;gt;&lt;/p&gt;
&lt;p class=&quot;MsoNormal&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;&lt;h3&gt;File&lt;/h3&gt;&lt;div class=&quot;ft-file&quot;&gt;&lt;img class=&quot;img-link-icon&quot; src=&quot;http://groups.adobe.com/common/icons/files/file.gif&quot; alt=&quot;&quot;/&gt;&lt;a href=&quot;http://groups.adobe.com/files/14ea8ea51a/Pagging.as&quot; target=&quot;_file&quot;&gt;Pagging.as&lt;/a&gt; &lt;span class=&quot;count&quot;&gt;(6KB)&lt;/span&gt;&lt;/div&gt;&lt;h3&gt;Code Snippet&lt;/h3&gt;&lt;div class=&quot;ft-code&quot;&gt;&lt;div style=&quot;width:100%;&quot;&gt;&lt;textarea class=&quot;input-full&quot; readonly=&quot;readonly&quot; spellcheck=&quot;false&quot; rows=&quot;40&quot;&gt;package {
    
    import flash.events.MouseEvent;
    import flash.system.System;
    
    import mx.collections.ArrayCollection;
    import mx.containers.HBox;
    import mx.controls.Alert;
    import mx.controls.DataGrid;
    import mx.controls.Image;
    import mx.controls.Label;
    import mx.controls.TextInput;
    import mx.core.EventPriority;
    
    /**
     * 
     * A util class provides a pagging view for a data grid dataprovider/arraycollection object
     * tightly couplled with data grid object/ArrayCollection
     * &amp;lt;code&amp;gt; &amp;lt;IplantPagging id=&amp;quot;pagging&amp;quot; size=&amp;quot;15&amp;quot; ui=&amp;quot;{dg}&amp;quot; dp=&amp;quot;{dg.dataProvider}&amp;quot;/&amp;gt;&amp;lt;/code&amp;gt;
     *  
     * */
     
    public class Pagging extends HBox {
        
        private var _dg : DataGrid = null;
        private var _data : ArrayCollection = null;
        private var _pgCollection : Array = null;
        private var btn_Nxt : Image = null;
        private var btn_Bck : Image = null;
        private var btn_Export : Image = null;
        private var btn_goToPage : Image = null;
        private var txt_pageNum : TextInput = null;
        private var _pgCounter : int = 0;
        private var _pgLength : int = 0;
        private var lbl_pg : Label = null;
        private var _pgSize: uint = 20;
        private var dg_4_exportData : DataGrid = null;
        
        public function Pagging&amp;#40;&amp;#41; {
            initUI&amp;#40;&amp;#41;;
        }
        
        /**
         * @private
         * @param &amp;#45; [Nothing]
         * @return &amp;#45; [Nothing]
         * @des &amp;#45; init all base ui items [button&amp;#45;next, back, export and current pagging view label] 
         * 
         * */
         
        private function initUI&amp;#40;&amp;#41; : void {
            this.setStyle&amp;#40;&amp;quot;verticalAlign&amp;quot;,&amp;quot;middle&amp;quot;&amp;#41;;
            txt_pageNum = new TextInput&amp;#40;&amp;#41;;
            txt_pageNum.restrict = &amp;quot;0&amp;#45;9&amp;quot;;
            txt_pageNum.maxChars = 3;
            txt_pageNum.width = 40;
            txt_pageNum.setStyle&amp;#40;&amp;quot;fontSize&amp;quot;, 10&amp;#41;;
            
            btn_goToPage = new Image&amp;#40;&amp;#41;;
            btn_goToPage.source = &amp;quot;assets/img/go&amp;#45;jump.png&amp;quot;;
            btn_goToPage.toolTip = &amp;quot;Go to page&amp;quot;;
            
            btn_Nxt = new Image&amp;#40;&amp;#41;;
            btn_Nxt.source = &amp;quot;assets/img/forward.png&amp;quot;;
            btn_Nxt.toolTip = &amp;quot;Next &amp;quot; &amp;#43; _pgSize &amp;#43; &amp;quot; records&amp;quot;;
            
            btn_Bck = new Image&amp;#40;&amp;#41;;
            btn_Bck.source = &amp;quot;assets/img/backward.png&amp;quot;;
            btn_Bck.toolTip = &amp;quot;Previous &amp;quot; &amp;#43; _pgSize &amp;#43; &amp;quot; records&amp;quot;;
            
            
            lbl_pg = new Label&amp;#40;&amp;#41;;
            
            this.addChild&amp;#40;btn_Bck&amp;#41;;
            this.addChild&amp;#40;lbl_pg&amp;#41;;
            this.addChild&amp;#40;btn_Nxt&amp;#41;;
            
            this.addChild&amp;#40;txt_pageNum&amp;#41;;
            this.addChild&amp;#40;btn_goToPage&amp;#41;;
            
            initPgEventListeners&amp;#40;btn_goToPage&amp;#41;;
            initPgEventListeners&amp;#40;btn_Bck&amp;#41;;
            initPgEventListeners&amp;#40;btn_Nxt&amp;#41;;
            
            btn_Bck.visible = false;
        }
        
        /**
         * 
         * API updates user view page index 
         * */
         
        private function updateLbl&amp;#40;&amp;#41; : void {
            lbl_pg.text = _pgCounter &amp;#43; &amp;#39; of &amp;#39; &amp;#43; &amp;#40;_pgLength&amp;#45;1&amp;#41;;
        }
        
        /**
         * init all event listeners 
         * 
         * */
         
        private function initPgEventListeners&amp;#40;pgBtn : Image&amp;#41; : void {
            pgBtn.addEventListener&amp;#40;MouseEvent.CLICK, mouseClickEventHandler, false, EventPriority.DEFAULT, true&amp;#41;;
        }
        
        /**
         * @private
         * @des &amp;#45; mouse click event handler 
         * 
         * */
         
        private function mouseClickEventHandler&amp;#40;event : MouseEvent&amp;#41; : void {
            if&amp;#40;event.currentTarget == btn_Nxt&amp;#41;{
                paggingNxt&amp;#40;&amp;#41;;
            }
            if&amp;#40;event.currentTarget == btn_Bck&amp;#41;{
                paggingBck&amp;#40;&amp;#41;;
            }
            if&amp;#40;event.currentTarget == btn_goToPage&amp;#41;{
                goToPage&amp;#40;int&amp;#40;txt_pageNum.text&amp;#41;&amp;#41;;
            }
            updateLbl&amp;#40;&amp;#41;;
        }
        
        /**
         * @public
         * @param &amp;#45; [DataGrid &amp;#45; reference of data grid on which you want to apply pagging]
         * @return &amp;#45; [Nothing]
         * @des &amp;#45; setter implementation for data grid reference 
         * 
         * */
         
        public function set ui&amp;#40;ui : DataGrid&amp;#41; : void {
            _dg = ui;
            initPagging&amp;#40;&amp;#41;;
        }
        
        /**
         * @public
         * @param &amp;#45; [int &amp;#45; how many records you want to display in a page at a time]
         * @return &amp;#45; [Nothing]
         * @des &amp;#45; setter implementation for number of records to be displayed in a page
         * 
         * */
         
        public function set size&amp;#40;size : uint&amp;#41; : void {
            _pgSize = size;
        }
        
        /**
         * @public
         * @param &amp;#45; [Object &amp;#45; you will set same dp as you want to use for datagrid and avoid to set datagrid dataprovider]
         * @return &amp;#45; [Nothing]
         * @des &amp;#45; setter implementation for data 
         * 
         * */
         
        public function set dp&amp;#40;dp : Object&amp;#41; : void {
            _data = dp as ArrayCollection;
            initPagging&amp;#40;&amp;#41;;
        }
        
        /**
         * @public
         * @param &amp;#45; [Nothing]
         * @return &amp;#45; [Nothing]
         * @des &amp;#45; B L for pagging group 
         * 
         * */
        
        private function initPagging&amp;#40;&amp;#41; : void {
            if&amp;#40;_data == null&amp;#41;{
                this.visible = false;
                return;
            }
            this.visible = true; 
            _pgCollection = new Array&amp;#40;&amp;#41;;
            btn_Bck.visible = false;
            btn_Nxt.visible = true;
            _pgCounter = 0;
            _pgLength = Math.ceil&amp;#40;_data.length/_pgSize&amp;#41;;
            if&amp;#40;_pgLength == 0&amp;#41; this.visible = false;
            if&amp;#40;_data.length &amp;gt; _pgSize&amp;#41;{
                var index : int = 0;
                for&amp;#40;var j:int = 1; j&amp;lt;=_pgLength; j&amp;#43;&amp;#43;&amp;#41;{
                    var collection : ArrayCollection = new ArrayCollection&amp;#40;&amp;#41;;
                    var len : int = j*_pgSize;
                    if&amp;#40;len &amp;gt;= _data.length&amp;#41; len = _data.length
                    for&amp;#40;var i:int=index; i&amp;lt;len; i&amp;#43;&amp;#43;&amp;#41;{
                        collection.addItem&amp;#40;_data.getItemAt&amp;#40;i&amp;#41;&amp;#41;;
                    }
                    index = i;
                    _pgCollection.push&amp;#40;collection&amp;#41;;    
                }
                
                _dg.dataProvider = _pgCollection[_pgCounter];
            }else{
                _dg.dataProvider = _data;
            }
            updateLbl&amp;#40;&amp;#41;;
        }
        
        /**
         * @private
         * @param &amp;#45; [int &amp;#45; page index]
         * @return &amp;#45; [Nothing] 
         * 
         * */
         
        private function goToPage&amp;#40;index : int&amp;#41; : void {
            _pgCounter = index;
            btn_Nxt.visible = true;
            btn_Bck.visible = true;
            if&amp;#40;_pgCounter &amp;gt;= _pgLength&amp;#45;1&amp;#41;{
                _pgCounter = _pgLength&amp;#45;1;
                txt_pageNum.text = _pgCounter.toString&amp;#40;&amp;#41;;
                btn_Nxt.visible = false;
            }
            if&amp;#40;_pgCounter == 0&amp;#41;{
                _pgCounter = 0;
                btn_Bck.visible = false;
            }
            _dg.dataProvider = _pgCollection[_pgCounter];
        }
        
        /**
         * 
         * @des &amp;#45; next button B L 
         * */
         
        private function paggingNxt&amp;#40;&amp;#41; : void {
            _pgCounter &amp;#43;&amp;#43;;
            if&amp;#40;_pgCounter == _pgLength&amp;#45;1&amp;#41;{
                btn_Nxt.visible = false;
                //return;
            } 
            _dg.dataProvider = _pgCollection[_pgCounter];
            btn_Bck.visible = true;
        }
        
        /**
         * 
         * @des &amp;#45; previous button B L 
         * */
         
        private function paggingBck&amp;#40;&amp;#41; : void {
            _pgCounter&amp;#45;&amp;#45;;
            if&amp;#40;_pgCounter == 0&amp;#41;{
                btn_Bck.visible = false;
            } 
            _dg.dataProvider = _pgCollection[_pgCounter];
            btn_Nxt.visible = true;
        }

    }
}&lt;/textarea&gt;&lt;/div&gt;&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/b45a79f0fb</guid><pubDate>Tue, 14 Apr 2009 12:59:59 +0000</pubDate></item><item><title>Hi Jaipur user group members!! wants to join live max09 webcast?</title><link>http://groups.adobe.com/posts/ca3b8d1908</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/38b4199413&quot;&gt;Vishal Shukla&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p&gt;&lt;span style=&quot;font-family:Arial;font-size:13px;&quot;&gt;Hi Jaipur user group members!! wants to join live max09 webcast, contact me.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/ca3b8d1908</guid><pubDate>Mon, 05 Oct 2009 18:40:54 +0000</pubDate></item><item><title>Facebook App Case Study: Additional elements and gotchas</title><link>http://groups.adobe.com/posts/50e39dfb6a</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/38b4199413&quot;&gt;Vishal Shukla&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Content&lt;/h3&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p&gt;Welcome back to the series and the concluding article of the exciting facebook series. So far we worked hard to implement features like the front end, administration, loading of YouTube videos etc. In the last article the application came finally to life. We implemented a database that contains 14 levels for the game.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.insideria.com/2009/08/facebook-app-case-study-additi.html&quot; rel=&quot;nofollow&quot;&gt;http://www.insideria.com/2009/08/facebook-app-case-study-additi.html&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;&lt;h3&gt;Link&lt;/h3&gt;&lt;div class=&quot;ft-link&quot;&gt;&lt;a href=&quot;http://www.insideria.com/2009/08/facebook&amp;#45;app&amp;#45;case&amp;#45;study&amp;#45;additi.html&quot; target=&quot;_hive&quot;&gt;Facebook App Case Study&lt;/a&gt;&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/50e39dfb6a</guid><pubDate>Wed, 19 Aug 2009 06:51:33 +0000</pubDate></item><item><title>Flash &amp; Flex Developer Magazine</title><link>http://groups.adobe.com/posts/84f5a7a142</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/38b4199413&quot;&gt;Vishal Shukla&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Content&lt;/h3&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p&gt;&lt;a title=&quot;blocked::http://www.ffdmag.com/prt/view/back-issues/issue/1015.html&quot; href=&quot;http://www.ffdmag.com/prt/view/back-issues/issue/1015.html&quot; rel=&quot;nofollow&quot;&gt;&lt;span style=&quot;font-size:x-small;color:#800080;font-family:Georgia;&quot;&gt;http://www.ffdmag.com/prt/view/back-issues/issue/1015.html&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;&lt;h3&gt;Link&lt;/h3&gt;&lt;div class=&quot;ft-link&quot;&gt;&lt;a href=&quot;http://www.ffdmag.com/prt/view/back&amp;#45;issues/issue/1015.html&quot; target=&quot;_hive&quot;&gt;Flash &amp;amp; Flex Developer Magazine&lt;/a&gt;&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/84f5a7a142</guid><pubDate>Tue, 18 Aug 2009 05:57:37 +0000</pubDate></item><item><title>New Open Source component for Adobe Flex (1 Comment)</title><link>http://groups.adobe.com/posts/a55c3a35e5</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/d50dab5a72&quot;&gt;Mindset Designs&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Content&lt;/h3&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p&gt;Hi everyone! We have developed a component for data visualization by using SVG graphics. The component is Open Source and is available to everyone.&lt;/p&gt;
&lt;p&gt;The name of the component is Mindset Geometrics and can be found following this link:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.mindset-geometrics.com.ar&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;http://www.mindset-geometrics.com.ar&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Here are some live examples:&lt;/p&gt;
&lt;table border=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&quot;http://mindset-geometrics.com.ar/images/flash/MainCow.swf&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;&lt;img src=&quot;http://www.mindset-designs.com.ar/demos/geometrics/cowsample.jpg&quot; alt=&quot;&quot; width=&quot;173&quot; height=&quot;178&quot;  class =&quot;dynImage maxSize_173x178&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;http://mindset-geometrics.com.ar/images/flash/MainCoyote.swf&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;&lt;img src=&quot;http://www.mindset-designs.com.ar/demos/geometrics/coyoteSample.jpg&quot; alt=&quot;&quot; width=&quot;176&quot; height=&quot;179&quot;  class =&quot;dynImage maxSize_176x179&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;http://mindset-geometrics.com.ar/images/flash/MainHomer.swf&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;&lt;img src=&quot;http://www.mindset-designs.com.ar/demos/geometrics/homersample.jpg&quot; alt=&quot;&quot; width=&quot;170&quot; height=&quot;173&quot;  class =&quot;dynImage maxSize_170x173&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;We would love to hear your comments, feature requests and suggestions to improve the components.&lt;/p&gt;
&lt;p&gt;Cheers!&lt;/p&gt;
&lt;/div&gt;&lt;h3&gt;Image&lt;/h3&gt;&lt;div class=&quot;ft-image&quot;&gt;&lt;img src=&quot;http://groups.adobe.com/files/d3deee7760/logo-geometrics.jpg&quot; alt=&quot;&quot; width=&quot;324&quot; height=&quot;82&quot;  class =&quot;dynImage maxSize_324x82&quot; /&gt;&lt;/div&gt;&lt;h3&gt;Link&lt;/h3&gt;&lt;div class=&quot;ft-link&quot;&gt;&lt;a href=&quot;http://www.mindset&amp;#45;geometrics.com.ar&quot; target=&quot;_hive&quot;&gt;http://www.mindset&amp;#45;geometrics.com.ar&lt;/a&gt;&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/a55c3a35e5</guid><pubDate>Tue, 11 Aug 2009 19:42:37 +0000</pubDate></item><item><title>Free Open Source Flash PageFlip Engine - MegaZine http://megazine.mightypirates.de/ (1 Comment)</title><link>http://groups.adobe.com/posts/1cb47ee6c7</link><description>&lt;p&gt;&lt;em&gt;Thread by &lt;a href=&quot;http://groups.adobe.com/people/38b4199413&quot;&gt;Vishal Shukla&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;Content&lt;/h3&gt;&lt;div class=&quot;ugc-html&quot;&gt;&lt;p&gt;&lt;em&gt;MegaZine 3 is a powerful pageflip/flashbook engine, written completely in AS3. It boasts many features, ranging from dynamic page loading to a fully integrated zoom and gallery mode.&lt;/em&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;you can download source code.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://megazine.mightypirates.de/&quot; rel=&quot;nofollow&quot;&gt;http://megazine.mightypirates.de/&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;&lt;h3&gt;Image&lt;/h3&gt;&lt;div class=&quot;ft-image&quot;&gt;&lt;img src=&quot;http://groups.adobe.com/files/29763ee9e3/features_thumbnails.png&quot; alt=&quot;&quot; width=&quot;200&quot; height=&quot;200&quot;  class =&quot;dynImage maxSize_200x200&quot; /&gt;&lt;/div&gt;&lt;h3&gt;Link&lt;/h3&gt;&lt;div class=&quot;ft-link&quot;&gt;&lt;a href=&quot;http://megazine.mightypirates.de/?c=home&amp;amp;l=en&quot; target=&quot;_hive&quot;&gt;Free Open Source Flash PageFlip Engine&lt;/a&gt;&lt;/div&gt;</description><guid isPermaLink="true">http://groups.adobe.com/posts/1cb47ee6c7</guid><pubDate>Fri, 10 Jul 2009 06:02:19 +0000</pubDate></item></channel></rss>