Skip to main content

Spark TextInput for Currency values

In my project, I wanted to have an spark TextInput to show currency values.
While formatting it should show unformatted number.
The way I did it is by creating a new CurrencyTextInput class extending spark TextInput.
Code for the component is (

package com.abcd.component

    import spark.components.TextInput;
    import spark.formatters.CurrencyFormatter;

    public class CurrencyTextInput extends TextInput
        public function CurrencyTextInput()
            formatter = new CurrencyFormatter();
            formatter.currencySymbol = "£";
            formatter.fractionalDigits = 2;
            formatter.useGrouping = true;
            formatter.useCurrencySymbol = true;
            formatter.negativeCurrencyFormat = 1;
            formatter.trailingZeros = true;

        public var formatter:CurrencyFormatter = null;

        public var formatterRegExp:RegExp = /[,£ ]/g;

        [Inspectable(category = "General", defaultValue = "")]
        override public function get text():String
            return super.text.replace(formatterRegExp, "");

        [CollapseWhiteSpace] // Compiler will strip leading and trailing whitespace from text string.
        override public function set text(value:String):void
            super.text = formatter.format(value);

            // Trigger bindings to textChanged.
            dispatchEvent(new Event("textChanged"));

         * Flush out [,] and currency symbol characters before getting focus
         * @param    event
        override protected function focusInHandler(event:FocusEvent):void
            if (this.focusEnabled)
                super.text = text.replace(formatterRegExp, "");

         * Format data before lost focus event happen
         * @param    event
        override protected function focusOutHandler(event:FocusEvent):void
            super.text = formatter.format(text);

The way to use this component is:

        currencysymbol="{resourceManager.getString(ApplicationConstants.RESOURCE_BUNDLE_NAME, 'currency.symbol')}"
       public var currencyFormatterRegExp:RegExp = new RegExp('[,' + resourceManager.getString(ApplicationConstants.RESOURCE_BUNDLE_NAME, 'currency.symbol') + ' ]', 'g');
    formatter="{currencyFormatter}" restrict="0-9"/>


Popular posts from this blog

MPlayer subtitle font problem in Windows

While playing a video with subtitles in mplayer, I was getting the following problem:
New_Face failed. Maybe the font path is wrong. Please supply the text font file (~/.mplayer/subfont.ttf).
Solution is as follows:
Right click on "My Computer".Select "Properties".Go to "Advanced" tab.Click on "Environment Variables".Delete "HOME" variable from User / System variables.

Procedure for name and date of birth change (Pune)

For change of name, the form (scribd) is available free of cost at Government Book Depot (Shaskiya Granthagar), which is located near Collector’s office, next to Saint Helena's School. The postal address is:
Government Photozinco Press Premises and Book Depot,
5, Photozinco Press Road, Pune, MH, 411001.
Wikimapia link

Charges for name or date of birth change, in the Maharashtra Government Gazette:
INR 120.00 per insertion (for two copies of the Gazette)
For backward class applicants: INR 60.00
Charges for extra copy of the Gazette: INR 15.00 per copy (two copies are enough, so you may not want to pay extra for extra copies).

Backward class applicants are required to submit a xerox of caste certificate of old name as issued by the Collector of the District concerned.

Once the form is duly submitted, it normally takes 10 to 15 days for publication of advertisement in the Maharashtra Government Gazette. The Gazette copy reaches to the address filled in the form within next 7 to 15 day…

Setting up ELK 5.x (ElasticSearch, Logstash, Kibana) cluster

We recently upgraded from ElasticSearch 2.4.3 to 5.6.2.
Below are the steps that we used to install and configure new ELK cluster.

ElasticSearchInstallationmkdir -p /work/elk/data/data-es562 mkdir -p /work/elk/data/logs-es562 mkdir -p /work/elk/data/repo-es562 cd /work/elk/ curl -O tar -zxvf elasticsearch-5.6.2.tar.gz curl -O cd /work/elk/elasticsearch-5.6.2 ./bin/elasticsearch-plugin install file:///work/elk/
Settings for Master + Ingest node in elasticsearch.ymlWe have reused master nodes as ingest nodes, because we don't have any heavy ingest pipelines, and x-pack monitoring requires at-least one ingest node to be present in the cluster. ESDev562 "master_01" node.master: true # Enable the node.master role (enabled by default). false # D…