[
  {
    "path": "README.md",
    "content": "# ScrollerCalendar\nScrollerCalendar provides straightforward wayt to see calendar for Android 4.0+.\n![image](https://github.com/guanchao/ScrollerCalendar/raw/master/images/sample1.gif)\n\n![image](https://github.com/guanchao/ScrollerCalendar/raw/master/images/sample2.gif)\n## Usage\nDeclare a ScrollerCalendar inside your layout XML file:\n```Java\n<wgc.shuwoom.scrollercalendar.ScrollerCalendar\n        xmlns:calendar=\"http://schemas.android.com/apk/res-auto\"\n        android:id=\"@+id/pickerView\"\n        android:overScrollMode=\"never\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        android:background=\"#FFFFFF\"\n        calendar:showYearLunarLabel=\"true\"/>\n```\nNext, you have to implement `ScrollerCalendarController` in your Activity. Your will have to set `onMonthOfYearSelected` which is called every time user selects a new date.\n```Java\n@Override\n\tpublic void onMonthOfYearSelected(int year, int month) \n\t{\n\t\tLog.e(\"Month Selected\",  year + \"-\" + month);\n\t}\n```\n### Customization\nScrollerCalendar is fully customizable:\n> * calendar:dividerColor [color #FFDDDDDD]===> The color of the line under the year header label.\n> * calendar:yearHeaderTextColor [color #FF000000]===> The color of year header label.\n> * calendar:yearHeaderTextHeight [dimension 40dp]===> The height of the year header label.\n> * calendar:yearHeaderTextSize [dimension 34sp]===> The size of year header text.\n> * calendar:yearHeaderLunarTextColor [color #FFCCCCCC]===> The color of the lunar label besides of the year header label.\n> * calendar:yearHeaderLunarTextSize [dimension 12sp]===> The size of the lunar label besides of the year header label.\n> * calendar:yearHeaderDashColor [color #FFFF0000]===> The color of the dash line on the left of the lunar label.\n> * calendar:monthLabelTextColor [color #FFFF0000]===> The color of the month label.\n> * calendar:monthLabelTextSize [dimension 16sp]===> The size of the month label.\n> * calendar:monthLabelTextHeight [dimension 35dp]===> The height of the month label.\n> * calendar:dayLabelTextColor [color #FF000000]===> The color of the day label.\n> * calendar:dayLabelTextTodayColor [color #FFFFFFFF]===> The color of the current day label.\n> * calendar:dayLabelTextSize [dimension 10sp]===> The size of the day label.\n> * calendar:dayLabelCircleBgColor [color #FFFF0000]===> The background color of the current day label.\n> * calendar:dayLabelCircleRadius [dimension 8dp]===> The radius of the circle.\n> * calendar:monthDayRowHeight [dimension 145dp]===> The height of every detailed month.\n> * calendar:showYearLunarLabel [boolean true]===> Whether to show lunar label.\n\n### Acknowledgements\nThanks to RobinChutaux for his [CalendarListview](https://github.com/traex/CalendarListview)\n\n### MIT License\nThe MIT License (MIT)\n\n    Copyright (c) 2015 guanchao wen\n\n    Permission is hereby granted, free of charge, to any person obtaining a copy\n    of this software and associated documentation files (the \"Software\"), to deal\n    in the Software without restriction, including without limitation the rights\n    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n    copies of the Software, and to permit persons to whom the Software is\n    furnished to do so, subject to the following conditions:\n\n    The above copyright notice and this permission notice shall be included in\n    all copies or substantial portions of the Software.\n\n    THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n    THE SOFTWARE."
  },
  {
    "path": "library/.classpath",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<classpath>\n\t<classpathentry kind=\"con\" path=\"com.android.ide.eclipse.adt.ANDROID_FRAMEWORK\"/>\n\t<classpathentry exported=\"true\" kind=\"con\" path=\"com.android.ide.eclipse.adt.LIBRARIES\"/>\n\t<classpathentry exported=\"true\" kind=\"con\" path=\"com.android.ide.eclipse.adt.DEPENDENCIES\"/>\n\t<classpathentry kind=\"lib\" path=\"libs/android-support-v7-recyclerview.jar\"/>\n\t<classpathentry kind=\"src\" path=\"src\"/>\n\t<classpathentry kind=\"src\" path=\"gen\"/>\n\t<classpathentry kind=\"output\" path=\"bin/classes\"/>\n</classpath>\n"
  },
  {
    "path": "library/.project",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>ScrollerCalendar</name>\n\t<comment></comment>\n\t<projects>\n\t</projects>\n\t<buildSpec>\n\t\t<buildCommand>\n\t\t\t<name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t\t<buildCommand>\n\t\t\t<name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t\t<buildCommand>\n\t\t\t<name>org.eclipse.jdt.core.javabuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t\t<buildCommand>\n\t\t\t<name>com.android.ide.eclipse.adt.ApkBuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t</buildSpec>\n\t<natures>\n\t\t<nature>com.android.ide.eclipse.adt.AndroidNature</nature>\n\t\t<nature>org.eclipse.jdt.core.javanature</nature>\n\t</natures>\n</projectDescription>\n"
  },
  {
    "path": "library/.settings/org.eclipse.core.resources.prefs",
    "content": "eclipse.preferences.version=1\nencoding/<project>=UTF-8\n"
  },
  {
    "path": "library/AndroidManifest.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    package=\"wgc.shuwoom.scrollercalendar\"\n    android:versionCode=\"1\"\n    android:versionName=\"1.0\" >\n\n    <uses-sdk\n        android:minSdkVersion=\"14\"\n        android:targetSdkVersion=\"21\" />\n\n    <application\n        android:allowBackup=\"true\"\n        android:icon=\"@drawable/ic_launcher\"\n        android:label=\"@string/app_name\"\n        android:theme=\"@style/AppTheme\" >\n        <activity\n            android:name=\".demo.MainActivity\"\n            android:label=\"@string/app_name\" >\n            <intent-filter>\n                <action android:name=\"android.intent.action.MAIN\" />\n\n                <category android:name=\"android.intent.category.LAUNCHER\" />\n            </intent-filter>\n        </activity>\n    </application>\n\n</manifest>\n"
  },
  {
    "path": "library/bin/AndroidManifest.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    package=\"wgc.shuwoom.scrollercalendar\"\n    android:versionCode=\"1\"\n    android:versionName=\"1.0\" >\n\n    <uses-sdk\n        android:minSdkVersion=\"14\"\n        android:targetSdkVersion=\"21\" />\n\n    <application\n        android:allowBackup=\"true\"\n        android:icon=\"@drawable/ic_launcher\"\n        android:label=\"@string/app_name\"\n        android:theme=\"@style/AppTheme\" >\n        <activity\n            android:name=\".demo.MainActivity\"\n            android:label=\"@string/app_name\" >\n            <intent-filter>\n                <action android:name=\"android.intent.action.MAIN\" />\n\n                <category android:name=\"android.intent.category.LAUNCHER\" />\n            </intent-filter>\n        </activity>\n    </application>\n\n</manifest>\n"
  },
  {
    "path": "library/bin/jarlist.cache",
    "content": "# cache for current jar dependency. DO NOT EDIT.\n# format is <lastModified> <length> <SHA-1> <path>\n# Encoding is UTF-8\n"
  },
  {
    "path": "library/gen/wgc/shuwoom/scrollercalendar/BuildConfig.java",
    "content": "/** Automatically generated file. DO NOT MODIFY */\npackage wgc.shuwoom.scrollercalendar;\n\npublic final class BuildConfig {\n    public final static boolean DEBUG = true;\n}"
  },
  {
    "path": "library/gen/wgc/shuwoom/scrollercalendar/R.java",
    "content": "/* AUTO-GENERATED FILE.  DO NOT MODIFY.\n *\n * This class was automatically generated by the\n * aapt tool from the resource data it found.  It\n * should not be modified by hand.\n */\n\npackage wgc.shuwoom.scrollercalendar;\n\npublic final class R {\n    public static final class attr {\n        /** <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int dayLabelCircleBgColor=0x7f01000e;\n        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int dayLabelCircleRadius=0x7f01000f;\n        /** <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int dayLabelTextColor=0x7f01000b;\n        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int dayLabelTextSize=0x7f01000d;\n        /** <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int dayLabelTextTodayColor=0x7f01000c;\n        /** <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int dividerColor=0x7f010000;\n        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int monthDayRowHeight=0x7f010010;\n        /** <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int monthLabelTextColor=0x7f010008;\n        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int monthLabelTextHeight=0x7f01000a;\n        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int monthLabelTextSize=0x7f010009;\n        /** <p>Must be a boolean value, either \"<code>true</code>\" or \"<code>false</code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int showYearLunarLabel=0x7f010011;\n        /** <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int yearHeaderDashColor=0x7f010007;\n        /** <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int yearHeaderLunarTextColor=0x7f010004;\n        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int yearHeaderLunarTextHeight=0x7f010005;\n        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int yearHeaderLunarTextSize=0x7f010006;\n        /** <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int yearHeaderTextColor=0x7f010001;\n        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int yearHeaderTextHeight=0x7f010002;\n        /** <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n         */\n        public static final int yearHeaderTextSize=0x7f010003;\n    }\n    public static final class color {\n        public static final int day_label_circle_bg_color=0x7f040007;\n        public static final int day_label_text_color=0x7f040005;\n        public static final int day_label_text_today_color=0x7f040006;\n        public static final int divider_color=0x7f040001;\n        public static final int month_labe_text_color=0x7f040004;\n        public static final int year_header_dash_color=0x7f040003;\n        public static final int year_header_lunar_text_color=0x7f040002;\n        public static final int year_header_text_color=0x7f040000;\n    }\n    public static final class dimen {\n        /**  Default screen margins, per the Android Design guidelines. \n\n         Example customization of dimensions originally defined in res/values/dimens.xml\n         (such as screen margins) for screens with more than 820dp of available width. This\n         would include 7\" and 10\" devices in landscape (~960dp and ~1280dp respectively).\n    \n         */\n        public static final int activity_horizontal_margin=0x7f050000;\n        public static final int activity_vertical_margin=0x7f050001;\n        public static final int day_label_circle_radius=0x7f050008;\n        public static final int day_label_text_size=0x7f050007;\n        public static final int month_day_row_height=0x7f050009;\n        public static final int month_label_text_height=0x7f050006;\n        public static final int month_label_text_size=0x7f050005;\n        public static final int padding_between_day_and_day=0x7f05000a;\n        public static final int year_header_lunar_text_size=0x7f050004;\n        public static final int year_header_text_height=0x7f050002;\n        public static final int year_header_text_size=0x7f050003;\n    }\n    public static final class drawable {\n        public static final int ic_launcher=0x7f020000;\n    }\n    public static final class id {\n        public static final int action_settings=0x7f090001;\n        public static final int pickerView=0x7f090000;\n    }\n    public static final class layout {\n        public static final int activity_main=0x7f030000;\n    }\n    public static final class menu {\n        public static final int main=0x7f080000;\n    }\n    public static final class string {\n        public static final int action_settings=0x7f060002;\n        public static final int app_name=0x7f060000;\n        public static final int hello_world=0x7f060001;\n    }\n    public static final class style {\n        /** \n        Base application theme, dependent on API level. This theme is replaced\n        by AppBaseTheme from res/values-vXX/styles.xml on newer devices.\n    \n\n            Theme customizations available in newer API levels can go in\n            res/values-vXX/styles.xml, while customizations related to\n            backward-compatibility can go here.\n        \n\n        Base application theme for API 11+. This theme completely replaces\n        AppBaseTheme from res/values/styles.xml on API 11+ devices.\n    \n API 11 theme customizations can go here. \n\n        Base application theme for API 14+. This theme completely replaces\n        AppBaseTheme from BOTH res/values/styles.xml and\n        res/values-v11/styles.xml on API 14+ devices.\n    \n API 14 theme customizations can go here. \n         */\n        public static final int AppBaseTheme=0x7f070000;\n        /**  Application theme. \n All customizations that are NOT specific to a particular API-level can go here. \n         */\n        public static final int AppTheme=0x7f070001;\n    }\n    public static final class styleable {\n        /** Attributes that can be used with a ScrollerCalendar.\n           <p>Includes the following attributes:</p>\n           <table>\n           <colgroup align=\"left\" />\n           <colgroup align=\"left\" />\n           <tr><th>Attribute</th><th>Description</th></tr>\n           <tr><td><code>{@link #ScrollerCalendar_dayLabelCircleBgColor wgc.shuwoom.scrollercalendar:dayLabelCircleBgColor}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_dayLabelCircleRadius wgc.shuwoom.scrollercalendar:dayLabelCircleRadius}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_dayLabelTextColor wgc.shuwoom.scrollercalendar:dayLabelTextColor}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_dayLabelTextSize wgc.shuwoom.scrollercalendar:dayLabelTextSize}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_dayLabelTextTodayColor wgc.shuwoom.scrollercalendar:dayLabelTextTodayColor}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_dividerColor wgc.shuwoom.scrollercalendar:dividerColor}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_monthDayRowHeight wgc.shuwoom.scrollercalendar:monthDayRowHeight}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_monthLabelTextColor wgc.shuwoom.scrollercalendar:monthLabelTextColor}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_monthLabelTextHeight wgc.shuwoom.scrollercalendar:monthLabelTextHeight}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_monthLabelTextSize wgc.shuwoom.scrollercalendar:monthLabelTextSize}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_showYearLunarLabel wgc.shuwoom.scrollercalendar:showYearLunarLabel}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_yearHeaderDashColor wgc.shuwoom.scrollercalendar:yearHeaderDashColor}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_yearHeaderLunarTextColor wgc.shuwoom.scrollercalendar:yearHeaderLunarTextColor}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_yearHeaderLunarTextHeight wgc.shuwoom.scrollercalendar:yearHeaderLunarTextHeight}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_yearHeaderLunarTextSize wgc.shuwoom.scrollercalendar:yearHeaderLunarTextSize}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_yearHeaderTextColor wgc.shuwoom.scrollercalendar:yearHeaderTextColor}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_yearHeaderTextHeight wgc.shuwoom.scrollercalendar:yearHeaderTextHeight}</code></td><td></td></tr>\n           <tr><td><code>{@link #ScrollerCalendar_yearHeaderTextSize wgc.shuwoom.scrollercalendar:yearHeaderTextSize}</code></td><td></td></tr>\n           </table>\n           @see #ScrollerCalendar_dayLabelCircleBgColor\n           @see #ScrollerCalendar_dayLabelCircleRadius\n           @see #ScrollerCalendar_dayLabelTextColor\n           @see #ScrollerCalendar_dayLabelTextSize\n           @see #ScrollerCalendar_dayLabelTextTodayColor\n           @see #ScrollerCalendar_dividerColor\n           @see #ScrollerCalendar_monthDayRowHeight\n           @see #ScrollerCalendar_monthLabelTextColor\n           @see #ScrollerCalendar_monthLabelTextHeight\n           @see #ScrollerCalendar_monthLabelTextSize\n           @see #ScrollerCalendar_showYearLunarLabel\n           @see #ScrollerCalendar_yearHeaderDashColor\n           @see #ScrollerCalendar_yearHeaderLunarTextColor\n           @see #ScrollerCalendar_yearHeaderLunarTextHeight\n           @see #ScrollerCalendar_yearHeaderLunarTextSize\n           @see #ScrollerCalendar_yearHeaderTextColor\n           @see #ScrollerCalendar_yearHeaderTextHeight\n           @see #ScrollerCalendar_yearHeaderTextSize\n         */\n        public static final int[] ScrollerCalendar = {\n            0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003,\n            0x7f010004, 0x7f010005, 0x7f010006, 0x7f010007,\n            0x7f010008, 0x7f010009, 0x7f01000a, 0x7f01000b,\n            0x7f01000c, 0x7f01000d, 0x7f01000e, 0x7f01000f,\n            0x7f010010, 0x7f010011\n        };\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#dayLabelCircleBgColor}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:dayLabelCircleBgColor\n        */\n        public static final int ScrollerCalendar_dayLabelCircleBgColor = 14;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#dayLabelCircleRadius}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:dayLabelCircleRadius\n        */\n        public static final int ScrollerCalendar_dayLabelCircleRadius = 15;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#dayLabelTextColor}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:dayLabelTextColor\n        */\n        public static final int ScrollerCalendar_dayLabelTextColor = 11;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#dayLabelTextSize}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:dayLabelTextSize\n        */\n        public static final int ScrollerCalendar_dayLabelTextSize = 13;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#dayLabelTextTodayColor}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:dayLabelTextTodayColor\n        */\n        public static final int ScrollerCalendar_dayLabelTextTodayColor = 12;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#dividerColor}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:dividerColor\n        */\n        public static final int ScrollerCalendar_dividerColor = 0;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#monthDayRowHeight}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:monthDayRowHeight\n        */\n        public static final int ScrollerCalendar_monthDayRowHeight = 16;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#monthLabelTextColor}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:monthLabelTextColor\n        */\n        public static final int ScrollerCalendar_monthLabelTextColor = 8;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#monthLabelTextHeight}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:monthLabelTextHeight\n        */\n        public static final int ScrollerCalendar_monthLabelTextHeight = 10;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#monthLabelTextSize}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:monthLabelTextSize\n        */\n        public static final int ScrollerCalendar_monthLabelTextSize = 9;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#showYearLunarLabel}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a boolean value, either \"<code>true</code>\" or \"<code>false</code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:showYearLunarLabel\n        */\n        public static final int ScrollerCalendar_showYearLunarLabel = 17;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#yearHeaderDashColor}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:yearHeaderDashColor\n        */\n        public static final int ScrollerCalendar_yearHeaderDashColor = 7;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#yearHeaderLunarTextColor}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:yearHeaderLunarTextColor\n        */\n        public static final int ScrollerCalendar_yearHeaderLunarTextColor = 4;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#yearHeaderLunarTextHeight}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:yearHeaderLunarTextHeight\n        */\n        public static final int ScrollerCalendar_yearHeaderLunarTextHeight = 5;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#yearHeaderLunarTextSize}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:yearHeaderLunarTextSize\n        */\n        public static final int ScrollerCalendar_yearHeaderLunarTextSize = 6;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#yearHeaderTextColor}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a color value, in the form of \"<code>#<i>rgb</i></code>\", \"<code>#<i>argb</i></code>\",\n\"<code>#<i>rrggbb</i></code>\", or \"<code>#<i>aarrggbb</i></code>\".\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:yearHeaderTextColor\n        */\n        public static final int ScrollerCalendar_yearHeaderTextColor = 1;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#yearHeaderTextHeight}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:yearHeaderTextHeight\n        */\n        public static final int ScrollerCalendar_yearHeaderTextHeight = 2;\n        /**\n          <p>This symbol is the offset where the {@link wgc.shuwoom.scrollercalendar.R.attr#yearHeaderTextSize}\n          attribute's value can be found in the {@link #ScrollerCalendar} array.\n\n\n          <p>Must be a dimension value, which is a floating point number appended with a unit such as \"<code>14.5sp</code>\".\nAvailable units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),\nin (inches), mm (millimeters).\n<p>This may also be a reference to a resource (in the form\n\"<code>@[<i>package</i>:]<i>type</i>:<i>name</i></code>\") or\ntheme attribute (in the form\n\"<code>?[<i>package</i>:][<i>type</i>:]<i>name</i></code>\")\ncontaining a value of this type.\n          @attr name wgc.shuwoom.scrollercalendar:yearHeaderTextSize\n        */\n        public static final int ScrollerCalendar_yearHeaderTextSize = 3;\n    };\n}\n"
  },
  {
    "path": "library/proguard-project.txt",
    "content": "# To enable ProGuard in your project, edit project.properties\n# to define the proguard.config property as described in that file.\n#\n# Add project specific ProGuard rules here.\n# By default, the flags in this file are appended to flags specified\n# in ${sdk.dir}/tools/proguard/proguard-android.txt\n# You can edit the include path and order by changing the ProGuard\n# include property in project.properties.\n#\n# For more details, see\n#   http://developer.android.com/guide/developing/tools/proguard.html\n\n# Add any project specific keep options here:\n\n# If your project uses WebView with JS, uncomment the following\n# and specify the fully qualified class name to the JavaScript interface\n# class:\n#-keepclassmembers class fqcn.of.javascript.interface.for.webview {\n#   public *;\n#}\n"
  },
  {
    "path": "library/project.properties",
    "content": "# This file is automatically generated by Android Tools.\n# Do not modify this file -- YOUR CHANGES WILL BE ERASED!\n#\n# This file must be checked in Version Control Systems.\n#\n# To customize properties used by the Ant build system edit\n# \"ant.properties\", and override values to adapt the script to your\n# project structure.\n#\n# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):\n#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt\n\n# Project target.\ntarget=android-21\n"
  },
  {
    "path": "library/res/layout/activity_main.xml",
    "content": "<RelativeLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\"wgc.shuwoom.scrollercalendar.demo.MainActivity\" >\n\n     <wgc.shuwoom.scrollercalendar.ScrollerCalendar\n        xmlns:calendar=\"http://schemas.android.com/apk/res-auto\"\n        android:id=\"@+id/pickerView\"\n        android:overScrollMode=\"never\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        android:background=\"#FFFFFF\"\n        calendar:showYearLunarLabel=\"true\"/>\n\n</RelativeLayout>\n"
  },
  {
    "path": "library/res/menu/main.xml",
    "content": "<menu xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    tools:context=\"wgc.shuwoom.scrollercalendar.MainActivity\" >\n\n    <item\n        android:id=\"@+id/action_settings\"\n        android:orderInCategory=\"100\"\n        android:showAsAction=\"never\"\n        android:title=\"@string/action_settings\"/>\n\n</menu>\n"
  },
  {
    "path": "library/res/values/attrs.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n\n    <declare-styleable name=\"ScrollerCalendar\">\n        <attr name=\"dividerColor\" format=\"color\"/>\n        \n        <attr name=\"yearHeaderTextColor\" format=\"color\" />\n        <attr name=\"yearHeaderTextHeight\" format=\"dimension\"/>\n        <attr name=\"yearHeaderTextSize\" format=\"dimension\"/>\n\n        <attr name=\"yearHeaderLunarTextColor\" format=\"color\"/>\n        <attr name=\"yearHeaderLunarTextHeight\" format=\"dimension\"/>\n        <attr name=\"yearHeaderLunarTextSize\" format=\"dimension\"/>\n        \n        <attr name=\"yearHeaderDashColor\" format=\"color\"/>\n        \n        <attr name=\"monthLabelTextColor\" format=\"color\"/>\n        <attr name=\"monthLabelTextSize\" format=\"dimension\"/>\n        <attr name=\"monthLabelTextHeight\" format=\"dimension\"/>\n        \n        <attr name=\"dayLabelTextColor\" format=\"color\"/>\n        <attr name=\"dayLabelTextTodayColor\" format=\"color\"/>\n        <attr name=\"dayLabelTextSize\" format=\"dimension\"/>\n        \n        <attr name=\"dayLabelCircleBgColor\" format=\"color\"/>\n        \n        <attr name=\"dayLabelCircleRadius\" format=\"dimension\"/>\n        \n        <attr name=\"monthDayRowHeight\" format=\"dimension\"/>\n        \n        <attr name=\"showYearLunarLabel\" format=\"boolean\"/>\n        \n    </declare-styleable>\n\n</resources>"
  },
  {
    "path": "library/res/values/colors.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n\n\t\n\t<color name=\"year_header_text_color\">#FF000000</color>\n\t<color name=\"divider_color\">#FFDDDDDD</color>\n\t<color name=\"year_header_lunar_text_color\">#FFCCCCCC</color>\n\t<color name=\"year_header_dash_color\">#FFFF0000</color>\n\t<color name=\"month_labe_text_color\">#FFFF0000</color>\n\t\n\t<color name=\"day_label_text_color\">#FF000000</color>\n\t<color name=\"day_label_text_today_color\">#FFFFFFFF</color>\n\t\n\t<color name=\"day_label_circle_bg_color\">#FFFF0000</color>\n</resources>"
  },
  {
    "path": "library/res/values/dimens.xml",
    "content": "<resources>\n\n    <!-- Default screen margins, per the Android Design guidelines. -->\n    <dimen name=\"activity_horizontal_margin\">16dp</dimen>\n    <dimen name=\"activity_vertical_margin\">16dp</dimen>\n        \n\t<dimen name=\"year_header_text_height\">40dp</dimen>\n\t<dimen name=\"year_header_text_size\">34sp</dimen>\n    <dimen name=\"year_header_lunar_text_size\">12sp</dimen>\n    <dimen name=\"month_label_text_size\">16sp</dimen>\n    <dimen name=\"month_label_text_height\">35dp</dimen>\n    <dimen name=\"day_label_text_size\">10sp</dimen>\n    <dimen name=\"day_label_circle_radius\">8dp</dimen>\n    <dimen name=\"month_day_row_height\">145dp</dimen>\n    <dimen name=\"padding_between_day_and_day\">20dp</dimen>\n\n</resources>\n"
  },
  {
    "path": "library/res/values/strings.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n\n    <string name=\"app_name\">ScrollerCalendar</string>\n    <string name=\"hello_world\">Hello world!</string>\n    <string name=\"action_settings\">Settings</string>\n\n</resources>\n"
  },
  {
    "path": "library/res/values/styles.xml",
    "content": "<resources>\n\n    <!--\n        Base application theme, dependent on API level. This theme is replaced\n        by AppBaseTheme from res/values-vXX/styles.xml on newer devices.\n    -->\n    <style name=\"AppBaseTheme\" parent=\"android:Theme.Light\">\n        <!--\n            Theme customizations available in newer API levels can go in\n            res/values-vXX/styles.xml, while customizations related to\n            backward-compatibility can go here.\n        -->\n    </style>\n\n    <!-- Application theme. -->\n    <style name=\"AppTheme\" parent=\"AppBaseTheme\">\n        <!-- All customizations that are NOT specific to a particular API-level can go here. -->\n    </style>\n\n</resources>\n"
  },
  {
    "path": "library/res/values-v11/styles.xml",
    "content": "<resources>\n\n    <!--\n        Base application theme for API 11+. This theme completely replaces\n        AppBaseTheme from res/values/styles.xml on API 11+ devices.\n    -->\n    <style name=\"AppBaseTheme\" parent=\"android:Theme.Holo.Light\">\n        <!-- API 11 theme customizations can go here. -->\n    </style>\n\n</resources>\n"
  },
  {
    "path": "library/res/values-v14/styles.xml",
    "content": "<resources>\n\n    <!--\n        Base application theme for API 14+. This theme completely replaces\n        AppBaseTheme from BOTH res/values/styles.xml and\n        res/values-v11/styles.xml on API 14+ devices.\n    -->\n    <style name=\"AppBaseTheme\" parent=\"android:Theme.Holo.Light.DarkActionBar\">\n        <!-- API 14 theme customizations can go here. -->\n    </style>\n\n</resources>\n"
  },
  {
    "path": "library/res/values-w820dp/dimens.xml",
    "content": "<resources>\n\n    <!--\n         Example customization of dimensions originally defined in res/values/dimens.xml\n         (such as screen margins) for screens with more than 820dp of available width. This\n         would include 7\" and 10\" devices in landscape (~960dp and ~1280dp respectively).\n    -->\n    <dimen name=\"activity_horizontal_margin\">64dp</dimen>\n\n</resources>\n"
  },
  {
    "path": "library/src/wgc/shuwoom/scrollercalendar/CalendarUtils.java",
    "content": "package wgc.shuwoom.scrollercalendar;\n\nimport java.util.Calendar;\n\n\npublic class CalendarUtils\n{\n\tpublic static int getDaysInMonth(int month, int year) {\n        switch (month) {\n            case Calendar.JANUARY:\n            case Calendar.MARCH:\n            case Calendar.MAY:\n            case Calendar.JULY:\n            case Calendar.AUGUST:\n            case Calendar.OCTOBER:\n            case Calendar.DECEMBER:\n                return 31;\n            case Calendar.APRIL:\n            case Calendar.JUNE:\n            case Calendar.SEPTEMBER:\n            case Calendar.NOVEMBER:\n                return 30;\n            case Calendar.FEBRUARY:\n                return (( (year % 4 == 0) && (year % 100 != 0))  || (year % 400 == 0)) ? 29 : 28;\n            default:\n                throw new IllegalArgumentException(\"Invalid Month\");\n        }\n\t}\n}\n"
  },
  {
    "path": "library/src/wgc/shuwoom/scrollercalendar/CommonUtils.java",
    "content": "package wgc.shuwoom.scrollercalendar;\n\nimport android.content.Context;\n\npublic class CommonUtils {\n    /**\n     * Transform px value into dip or dp\n     * \n     * @param pxValue\n     * @param scale\n     * @return dip or dp value\n     */ \n    public static int px2dp(Context context, float pxValue) { \n        final float scale = context.getResources().getDisplayMetrics().density; \n        return (int) (pxValue / scale + 0.5f); \n    } \n   \n    /**\n     * Transform dip or dp value into px\n     * \n     * @param dipValue\n     * @param scale\n     * @return px value\n     */ \n    public static int dp2px(Context context, float dipValue) { \n        final float scale = context.getResources().getDisplayMetrics().density; \n        return (int) (dipValue * scale + 0.5f); \n    } \n   \n    /**\n     * Transform px value into sp value \n     * \n     * @param pxValue\n     * @param fontScale\n     * @return sp value\n     */ \n    public static int px2sp(Context context, float pxValue) { \n        final float fontScale = context.getResources().getDisplayMetrics().scaledDensity; \n        return (int) (pxValue / fontScale + 0.5f); \n    } \n   \n    /**\n     * Transform sp value into px value\n     * \n     * @param spValue\n     * @param fontScale\n     * @return px value\n     */ \n    public static int sp2px(Context context, float spValue) { \n        final float fontScale = context.getResources().getDisplayMetrics().scaledDensity; \n        return (int) (spValue * fontScale + 0.5f); \n    } \n}"
  },
  {
    "path": "library/src/wgc/shuwoom/scrollercalendar/LunarYear.java",
    "content": "package wgc.shuwoom.scrollercalendar;\n\n\npublic class LunarYear {\n    private int year;\n    public LunarYear(){\n    \t\n    }\n    \n    public LunarYear(int year){\n    \tthis.year = year;\n    }\n\n\n    final public String animalsYear() {\n        final String[] Animals = new String[]{\"鼠\", \"牛\", \"虎\", \"兔\", \"龙\", \"蛇\", \"马\", \"羊\", \"猴\", \"鸡\", \"狗\", \"猪\"};\n        return Animals[(year - 4) % 12];\n    }\n\n    \n    final private static String cyclicalm(int num) {\n        final String[] Gan = new String[]{\"甲\", \"乙\", \"丙\", \"丁\", \"戊\", \"己\", \"庚\", \"辛\", \"壬\", \"癸\"};\n        final String[] Zhi = new String[]{\"子\", \"丑\", \"寅\", \"卯\", \"辰\", \"巳\", \"午\", \"未\", \"申\", \"酉\", \"戌\", \"亥\"};\n        return (Gan[num % 10] + Zhi[num % 12]);\n    }\n\n    final public String cyclical() {\n        int num = year - 1900 + 36;\n        return (cyclicalm(num));\n    }\n    \n}"
  },
  {
    "path": "library/src/wgc/shuwoom/scrollercalendar/ScrollerCalendar.java",
    "content": "package wgc.shuwoom.scrollercalendar;\n\nimport android.annotation.SuppressLint;\nimport android.content.Context;\nimport android.content.res.TypedArray;\nimport android.support.v7.widget.LinearLayoutManager;\nimport android.support.v7.widget.RecyclerView;\nimport android.util.AttributeSet;\n\nimport wgc.shuwoom.scrollercalendar.R;\nimport wgc.shuwoom.scrollercalendar.YearAdapter.CalendarMonth;\n\npublic class ScrollerCalendar extends RecyclerView\n{\n\tprivate YearAdapter yearAdapter;\n    private TypedArray typedArray;\n    private OnScrollListener onScrollListener;\n    private ScrollerCalendarController scrollerCalendarController;\n\n    public ScrollerCalendar(Context context)\n    {\n        this(context, null);\n    }\n\n    public ScrollerCalendar(Context context, AttributeSet attrs)\n    {\n        this(context, attrs, 0);\n    }\n\n    @SuppressLint(\"Recycle\")\n\tpublic ScrollerCalendar(Context context, AttributeSet attrs, int defStyle)\n    {\n        super(context, attrs, defStyle);\n        if (!isInEditMode())\n        {\n            typedArray = context.obtainStyledAttributes(attrs, R.styleable.ScrollerCalendar);\n            setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));\n            init(context);\n        }\n    }\n    \n\tpublic void init(Context paramContext) {\n        setLayoutManager(new LinearLayoutManager(paramContext));\n\t\tsetUpListView();\n\n        onScrollListener = new RecyclerView.OnScrollListener()\n        {\n            @Override\n            public void onScrolled(RecyclerView recyclerView, int dx, int dy)\n            {\n            \t\n                super.onScrolled(recyclerView, dx, dy);\n                final YearView child = (YearView) recyclerView.getChildAt(0);\n                if (child == null) {\n                    return;\n                }\n            }\n        };\n       \n\t}\n\t\n    public void setController(ScrollerCalendarController scrollerCalendarController)\n    {\n        this.scrollerCalendarController = scrollerCalendarController;\n        setUpAdapter();\n        setAdapter(yearAdapter);\n    }\n\n    public CalendarMonth getSelectedMonths()\n    {\n        return yearAdapter.getSelectedMonths();\n    }\n\n    public ScrollerCalendarController getController()\n    {\n        return scrollerCalendarController;\n    }\n\n    public TypedArray getTypedArray()\n    {\n        return typedArray;\n    }\n    \n\tprivate void setUpAdapter() {\n\t\tif (yearAdapter == null) {\n\t\t\tyearAdapter = new YearAdapter(getContext(), scrollerCalendarController, typedArray);\n        }\n\t\tscrollToPosition(yearAdapter.getYearRange() / 2);\n\t\tyearAdapter.notifyDataSetChanged();\n\t}\n\n\tprivate void setUpListView() {\n\t\tsetVerticalScrollBarEnabled(false);\n\t\tsetOnScrollListener(onScrollListener);\n\t\tsetFadingEdgeLength(0);\n\t}\n}"
  },
  {
    "path": "library/src/wgc/shuwoom/scrollercalendar/ScrollerCalendarController.java",
    "content": "package wgc.shuwoom.scrollercalendar;\n\npublic interface ScrollerCalendarController {\n\n\tpublic abstract void onMonthOfYearSelected(int year, int month);\n\n}"
  },
  {
    "path": "library/src/wgc/shuwoom/scrollercalendar/YearAdapter.java",
    "content": "package wgc.shuwoom.scrollercalendar;\n\nimport android.content.Context;\nimport android.content.res.TypedArray;\nimport android.support.v7.widget.RecyclerView;\nimport android.view.MotionEvent;\nimport android.view.View;\nimport android.view.ViewGroup;\nimport android.view.ViewGroup.LayoutParams;\nimport android.widget.AbsListView;\n\nimport java.io.Serializable;\nimport java.util.Calendar;\nimport java.util.Date;\nimport java.util.HashMap;\n\n\n \n\n\npublic class YearAdapter extends RecyclerView.Adapter<YearAdapter.ViewHolder> implements YearView.OnMonthClickListener {\n    protected static final int MONTHS_IN_YEAR = 12;\n    private final TypedArray typedArray;\n\tprivate final Context context;\n\tprivate final ScrollerCalendarController scrollerCalendarController;\n    private final Calendar calendar;\n    private CalendarMonth selectedMonth;\n\n    private YearView currentYearView;\n    private final int yearRange;\n\n\tpublic YearAdapter(Context context, ScrollerCalendarController datePickerController, TypedArray typedArray) {\n\t\tyearRange = 200;\n\t\tthis.typedArray = typedArray;\n        this.context = context;\n        calendar = Calendar.getInstance();\n        selectedMonth = new CalendarMonth();\n\t\tscrollerCalendarController = datePickerController;\n\t}\n\t\n    @Override\n    public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i)\n    {\n        final YearView yearView = new YearView(context, typedArray);\n        return new ViewHolder(yearView, this);\n    }\n\n    @Override\n    public void onBindViewHolder(ViewHolder viewHolder, int position)\n    {\n        final YearView yearView = viewHolder.yearView;\n        final HashMap<String, Integer> drawingParams = new HashMap<String, Integer>();\n        int currentYear;\n        currentYear = 2015 + (position - yearRange / 2);\n        yearView.reuse();\n        drawingParams.put(YearView.VIEW_PARAMS_YEAR_CURRENT, currentYear);\n        drawingParams.put(YearView.VIEW_PARAMS_WEEK_START, calendar.getFirstDayOfWeek());\n        yearView.setYearParams(drawingParams);\n        yearView.invalidate();\n        \n        currentYearView = yearView;\n    }\n\n    public long getItemId(int position) {\n\t\treturn position;\n\t}\n    \n    public YearView getYearView(){\n    \treturn currentYearView;\n    }\n\n    @Override\n    public int getItemCount()\n    {\n        return yearRange;\n    }\n\n\tpublic void onMonthClick(YearView yearView, CalendarMonth calendarMonth) {\n\t\tif (calendarMonth != null) {\n\t\t\tonMonthTapped(calendarMonth);\n        }\n\t}\n\n\tprotected void onMonthTapped(CalendarMonth calendarMonth) {\n\t\tscrollerCalendarController.onMonthOfYearSelected(calendarMonth.year, calendarMonth.month);\n\t\tsetSelectedMonth(calendarMonth);\n\t\tnotifyDataSetChanged();\n\t}\n\n\tpublic void setSelectedMonth(CalendarMonth calendarMonth) {\n\t\tselectedMonth = calendarMonth;\n\t\tnotifyDataSetChanged();\n\t}\n\t\n\tpublic CalendarMonth getSelectedMonths() {\n\t\treturn selectedMonth;\n\t}\n\t\n\tpublic int getYearRange(){\n\t\treturn yearRange;\n\t}\n    \n    public static class ViewHolder extends RecyclerView.ViewHolder\n    {\n        final YearView yearView;\n\n        public ViewHolder(View itemView, YearView.OnMonthClickListener onMonthClickListener)\n        {\n            super(itemView);\n            yearView = (YearView) itemView;\n            yearView.setLayoutParams(new AbsListView.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));\n            yearView.setClickable(true);\n            yearView.setOnMonthClickListener(onMonthClickListener);\n        }\n    }\n\n\n\n\n\tpublic static class CalendarMonth implements Serializable\n    {\n        private static final long serialVersionUID = -5456695978688356202L;\n        private Calendar calendar;\n\n\t\tint month;\n\t\tint year;\n\t\t\n\n\t\tpublic CalendarMonth() {\n\t\t\tsetTime(System.currentTimeMillis());\n\t\t}\n\n\t\tpublic CalendarMonth(int year, int month) {\n\t\t\tsetDay(year, month);\n\t\t}\n\t\t\n\t\tpublic CalendarMonth(int year, int month,MotionEvent event) {\n\t\t\tsetDay(year, month);\n\t\t}\n\n\t\tpublic CalendarMonth(long timeInMillis) {\n\t\t\tsetTime(timeInMillis);\n\t\t}\n\n\t\tpublic CalendarMonth(Calendar calendar) {\n\t\t\tyear = calendar.get(Calendar.YEAR);\n\t\t\tmonth = calendar.get(Calendar.MONTH);\n\t\t}\n\t\t\n\t\tprivate void setTime(long timeInMillis) {\n\t\t\tif (calendar == null) {\n\t\t\t\tcalendar = Calendar.getInstance();\n            }\n\t\t\tcalendar.setTimeInMillis(timeInMillis);\n\t\t\tmonth = this.calendar.get(Calendar.MONTH);\n\t\t\tyear = this.calendar.get(Calendar.YEAR);\n\t\t}\n\n\t\tpublic void set(CalendarMonth calendarDay) {\n\t\t    year = calendarDay.year;\n\t\t\tmonth = calendarDay.month;\n\t\t}\n\n\t\tpublic void setDay(int year, int month) {\n\t\t\tthis.year = year;\n\t\t\tthis.month = month;\n\t\t}\n\n        public Date getDate()\n        {\n            if (calendar == null) {\n                calendar = Calendar.getInstance();\n            }\n            calendar.set(year, month);\n            return calendar.getTime();\n        }\n\n\n        @Override\n        public String toString()\n        {\n            final StringBuilder stringBuilder = new StringBuilder();\n            stringBuilder.append(\"{ year: \");\n            stringBuilder.append(year);\n            stringBuilder.append(\", month: \");\n            stringBuilder.append(month);\n            stringBuilder.append(\" }\");\n\n            return stringBuilder.toString();\n        }\n    }\n\n   \n\n}"
  },
  {
    "path": "library/src/wgc/shuwoom/scrollercalendar/YearView.java",
    "content": "/***********************************************************************************\n * The MIT License (MIT)\n\n * Copyright (c) 2014 Robin Chutaux\n\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n ***********************************************************************************/\npackage wgc.shuwoom.scrollercalendar;\n\nimport java.security.InvalidParameterException;\nimport java.util.Calendar;\nimport java.util.HashMap;\n\nimport android.annotation.SuppressLint;\nimport android.app.Activity;\nimport android.content.Context;\nimport android.content.res.Resources;\nimport android.content.res.TypedArray;\nimport android.graphics.Canvas;\nimport android.graphics.Paint;\nimport android.graphics.Paint.Align;\nimport android.graphics.Paint.Style;\nimport android.graphics.Rect;\nimport android.text.format.Time;\nimport android.view.MotionEvent;\nimport android.view.View;\nimport android.view.Window;\nimport android.view.WindowManager;\n\nimport wgc.shuwoom.scrollercalendar.R;\nimport wgc.shuwoom.scrollercalendar.CommonUtils;\nimport wgc.shuwoom.scrollercalendar.LunarYear;\n\n\npublic class YearView extends View {\n\tpublic static final String VIEW_PARAMS_YEAR_CURRENT = \"current\";\n\tpublic static final String VIEW_PARAMS_WEEK_START = \"week_start\";\n\n\tprotected static int DAY_LABEL_CIRCLE_RADIUS;\n\tprotected static int MONTH_HEADER_HEIGHT;\n\tprotected static int YEAR_HEADER_TEXT_HEIGHT;\n\t\n\t\n\tprotected static int YEAR_HEADER_TEXT_SIZE;\n\tprotected static int YEAR_HEADER_LUNAR_TEXT_SIZE;\n\tprotected static int MONTH_LABEL_TEXT_SIZE;\n\tprotected static int DAY_LABEL_TEXT_SIZE;\n\n\tprotected int padding = 0;\n\tprotected int lineSpacingBetweenYearAndMonth = 0;\n\tprotected int lineSpacingBetweenDayAndDay = 0;\n\n\tprotected Paint yearHeaderTextPaint;\n\tprotected Paint dividerPaint;\n\tprotected Paint yearHeaderLunarTextPaint;\n\tprotected Paint yearHeaderDashPaint;\n\tprotected Paint monthLabelTextPaint;\n\tprotected Paint dayLabelTextPaint;\n\tprotected Paint dayLabelCircleBgPaint;\n\t\n\tprotected int yearHeaderTextColor;\n\tprotected int dividerColor;\n\tprotected int yearHeaderLunarTextColor;\n\tprotected int yearHeaderDashColor;\n\tprotected int monthTextColor;\n\tprotected int dayLabelTextColor;\n\tprotected int dayLabelTextTodayColor;\n\tprotected int dayLabelCircleBgColor;\n\n\tprotected int today = -1;\n\tprotected int weekStart = 1;\n\tprotected int numDays = 7;\n\tprotected int numCells = 0;\n\tprivate int dayOfWeekStart = 0;\n\tprotected int month;\n\tprotected int year;\n\n\tprotected int rowMonthHeight;\n\tprotected int mWidth;\n\t\n\tprotected final Time currentTime;\n\n\tprivate int width;\n\n\tprivate Context mContext;\n\tprivate final Calendar calendar;\n\tprivate boolean showYearLunarLabel;\n\t\n\tprivate OnMonthClickListener mOnMonthClickListener;\n\t\n\n\tpublic YearView(Context context, TypedArray typedArray) {\n\t\tsuper(context);\n\t\tmContext = context;\n\t\tResources resources = context.getResources();\n\t\tcalendar = Calendar.getInstance();\n\t\tcurrentTime = new Time(Time.getCurrentTimezone());\n\t\tcurrentTime.setToNow();\n\t\t\n\t\tdividerColor = typedArray.getColor(\n\t\t\t\tR.styleable.ScrollerCalendar_dividerColor, \n\t\t\t\tresources.getColor(R.color.divider_color));\n\t\tyearHeaderTextColor = typedArray.getColor(\n\t\t\t\tR.styleable.ScrollerCalendar_yearHeaderTextColor,\n\t\t\t\tresources.getColor(R.color.year_header_text_color));\n\t\tyearHeaderLunarTextColor = typedArray.getColor(\n\t\t\t\tR.styleable.ScrollerCalendar_yearHeaderLunarTextColor,\n\t\t\t\tresources.getColor(R.color.year_header_lunar_text_color));\n\t\tyearHeaderDashColor = typedArray.getColor(\n\t\t\t\tR.styleable.ScrollerCalendar_yearHeaderDashColor,\n\t\t\t\tresources.getColor(R.color.year_header_dash_color));\n\t\tmonthTextColor = typedArray.getColor(\n\t\t\t\tR.styleable.ScrollerCalendar_monthLabelTextColor,\n\t\t\t\tresources.getColor(R.color.month_labe_text_color));\n\t\tdayLabelTextColor = typedArray.getColor(\n\t\t\t\tR.styleable.ScrollerCalendar_dayLabelTextColor,\n\t\t\t\tresources.getColor(R.color.day_label_text_color));\n\t\tdayLabelTextTodayColor = typedArray.getColor(\n\t\t\t\tR.styleable.ScrollerCalendar_dayLabelTextTodayColor,\n\t\t\t\tresources.getColor(R.color.day_label_text_today_color));\n\t\tdayLabelCircleBgColor = typedArray.getColor(\n\t\t\t\tR.styleable.ScrollerCalendar_dayLabelCircleBgColor,\n\t\t\t\tresources.getColor(R.color.day_label_circle_bg_color));\n\n\t\tYEAR_HEADER_TEXT_SIZE = typedArray.getDimensionPixelSize(\n\t\t\t\tR.styleable.ScrollerCalendar_yearHeaderTextSize,\n\t\t\t\tresources.getDimensionPixelSize(R.dimen.year_header_text_size));\n\t\tYEAR_HEADER_LUNAR_TEXT_SIZE = typedArray.getDimensionPixelSize(\n\t\t\t\tR.styleable.ScrollerCalendar_yearHeaderLunarTextSize,\n\t\t\t\tresources.getDimensionPixelSize(R.dimen.year_header_lunar_text_size));\n\t\tDAY_LABEL_TEXT_SIZE = typedArray.getDimensionPixelSize(\n\t\t\t\tR.styleable.ScrollerCalendar_dayLabelTextSize,\n\t\t\t\tresources.getDimensionPixelSize(R.dimen.day_label_text_size));\n\t\tMONTH_LABEL_TEXT_SIZE = typedArray.getDimensionPixelSize(\n\t\t\t\tR.styleable.ScrollerCalendar_monthLabelTextSize,\n\t\t\t\tresources.getDimensionPixelSize(R.dimen.month_label_text_size));\n\n\t\tYEAR_HEADER_TEXT_HEIGHT = typedArray.getDimensionPixelSize(\n\t\t\t\tR.styleable.ScrollerCalendar_yearHeaderTextHeight, \n\t\t\t\tresources.getDimensionPixelOffset(R.dimen.year_header_text_height));\n\t\tMONTH_HEADER_HEIGHT = typedArray.getDimensionPixelOffset(\n\t\t\t\tR.styleable.ScrollerCalendar_monthLabelTextHeight,\n\t\t\t\tresources.getDimensionPixelSize(R.dimen.month_label_text_height));\n\t\tDAY_LABEL_CIRCLE_RADIUS = typedArray.getDimensionPixelSize(\n\t\t\t\tR.styleable.ScrollerCalendar_dayLabelCircleRadius,\n\t\t\t\tresources.getDimensionPixelSize(R.dimen.day_label_circle_radius));\n\t\t\n\t\trowMonthHeight = typedArray.getDimensionPixelSize(\n\t\t\t\tR.styleable.ScrollerCalendar_monthDayRowHeight,\n\t\t\t\tresources.getDimensionPixelSize(R.dimen.month_day_row_height));\n\t\tlineSpacingBetweenDayAndDay = \n\t\t\t\tresources.getDimensionPixelSize(R.dimen.padding_between_day_and_day);\n\t\tshowYearLunarLabel = typedArray.getBoolean(\n\t\t\t\tR.styleable.ScrollerCalendar_showYearLunarLabel,false);\n\t\tpadding = CommonUtils.dp2px(mContext, 5);\n\t\tlineSpacingBetweenYearAndMonth = CommonUtils.dp2px(mContext, 10);\n\t\tinitView();\n\n\t}\n\n\tpublic int getMonth() {\n\t\treturn month;\n\t}\n\n\tpublic int calculateNumRows() {\n\t\tint offset = findDayOffset();\n\t\tint dividend = (offset + numCells) / numDays;\n\t\tint remainder = (offset + numCells) % numDays;\n\t\treturn (dividend + (remainder > 0 ? 1 : 0));\n\t}\n\n\tprivate void drawYearHeaderLabels(Canvas canvas) {\n\t\tint y = (4 * YEAR_HEADER_TEXT_HEIGHT) / 5;\n\t\tLunarYear lunar = new LunarYear(year);\n\n\t\tcanvas.drawText(year + \"年\", 2 * padding, y, yearHeaderTextPaint);\n\n\t\tif(showYearLunarLabel){\n\t\t\tyearHeaderDashPaint.setStrokeWidth((float) 4.0);\n\t\t\tcanvas.drawLine(width - 5 * YEAR_HEADER_LUNAR_TEXT_SIZE - 2\n\t\t\t\t\t* padding, (3 * y) / 8, width - 5\n\t\t\t\t\t* YEAR_HEADER_LUNAR_TEXT_SIZE, (3 * y) / 8, yearHeaderDashPaint);\n\t\t\tcanvas.drawText(lunar.cyclical() + lunar.animalsYear() + \"年\", width - 2\n\t\t\t\t\t* padding, y / 2, yearHeaderLunarTextPaint);\n\t\t\t\n\t\t\tyearHeaderDashPaint.setStrokeWidth((float) 2.0);\n\t\t\tcanvas.drawLine(width - 5 * YEAR_HEADER_LUNAR_TEXT_SIZE - 2\n\t\t\t\t\t* padding, (7 * y) / 8, width - 5\n\t\t\t\t\t* YEAR_HEADER_LUNAR_TEXT_SIZE, (7 * y) / 8, yearHeaderDashPaint);\n\t\t\tcanvas.drawText(\"农历初一\", width - 2 * padding, y,\n\t\t\t\t\tyearHeaderLunarTextPaint);\n\t\t}\n\t\t\n\t\tcanvas.drawLine(2 * padding, YEAR_HEADER_TEXT_HEIGHT, width,\n\t\t\t\tYEAR_HEADER_TEXT_HEIGHT, dividerPaint);\n\t}\n\n\tprivate void drawMonthTitle(Canvas canvas) {\n\t\tint paddingDay = (mWidth - 2 * padding) / (2 * numDays);\n\n\t\tint x = padding;\n\t\tint y = 0;\n\n\t\tfor (int i = 1; i <= 12; i++) {\n\n\t\t\tswitch (i) {\n\t\t\tcase 1:\n\t\t\tcase 2:\n\t\t\tcase 3:\n\t\t\t\tx = paddingDay + (width / 3) * (i - 1);\n\t\t\t\ty = (MONTH_HEADER_HEIGHT) / 2 + YEAR_HEADER_TEXT_HEIGHT\n\t\t\t\t\t\t+ lineSpacingBetweenYearAndMonth;\n\t\t\t\tbreak;\n\t\t\tcase 4:\n\t\t\tcase 5:\n\t\t\tcase 6:\n\t\t\t\tx = paddingDay + (width / 3) * (i - 4);\n\t\t\t\ty = (MONTH_HEADER_HEIGHT) / 2 + YEAR_HEADER_TEXT_HEIGHT\n\t\t\t\t\t\t+ lineSpacingBetweenYearAndMonth + rowMonthHeight * 1;\n\t\t\t\tbreak;\n\t\t\tcase 7:\n\t\t\tcase 8:\n\t\t\tcase 9:\n\t\t\t\tx = paddingDay + (width / 3) * (i - 7);\n\t\t\t\ty = (MONTH_HEADER_HEIGHT) / 2 + YEAR_HEADER_TEXT_HEIGHT\n\t\t\t\t\t\t+ lineSpacingBetweenYearAndMonth + rowMonthHeight * 2;\n\t\t\t\tbreak;\n\t\t\tcase 10:\n\t\t\tcase 11:\n\t\t\tcase 12:\n\t\t\t\tx = paddingDay + (width / 3) * (i - 10);\n\t\t\t\ty = (MONTH_HEADER_HEIGHT) / 2 + YEAR_HEADER_TEXT_HEIGHT\n\t\t\t\t\t\t+ lineSpacingBetweenYearAndMonth + rowMonthHeight * 3;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tcanvas.drawText(i + \"月\", x, y, monthLabelTextPaint);\n\t\t}\n\t}\n\n\tprivate void drawAllMonthNums(Canvas canvas) {\n\t\tint y = MONTH_HEADER_HEIGHT + YEAR_HEADER_TEXT_HEIGHT + lineSpacingBetweenYearAndMonth;\n\t\tint paddingDay = (mWidth / 3 - 2 * padding) / (2 * numDays);\n\t\tint day = 1;\n\n\t\tfor (int i = 0; i < 12; i++) {\n\n\t\t\tswitch (i) {\n\t\t\tcase 0:\n\t\t\tcase 1:\n\t\t\tcase 2:\n\t\t\t\ty = MONTH_HEADER_HEIGHT + YEAR_HEADER_TEXT_HEIGHT\n\t\t\t\t\t\t+ lineSpacingBetweenYearAndMonth;\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\tcase 4:\n\t\t\tcase 5:\n\t\t\t\ty = MONTH_HEADER_HEIGHT + YEAR_HEADER_TEXT_HEIGHT\n\t\t\t\t\t\t+ lineSpacingBetweenYearAndMonth + rowMonthHeight * 1;\n\t\t\t\tbreak;\n\t\t\tcase 6:\n\t\t\tcase 7:\n\t\t\tcase 8:\n\t\t\t\ty = MONTH_HEADER_HEIGHT + YEAR_HEADER_TEXT_HEIGHT\n\t\t\t\t\t\t+ lineSpacingBetweenYearAndMonth + rowMonthHeight * 2;\n\t\t\t\tbreak;\n\t\t\tcase 9:\n\t\t\tcase 10:\n\t\t\tcase 11:\n\t\t\t\ty = MONTH_HEADER_HEIGHT + YEAR_HEADER_TEXT_HEIGHT\n\t\t\t\t\t\t+ lineSpacingBetweenYearAndMonth + rowMonthHeight * 3;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tsetYearParams(year, i);\n\t\t\tint dayOffset = findDayOffset();\n\t\t\tday = 1;\n\n\t\t\twhile (day <= numCells) {\n\t\t\t\tint column = 0;\n\t\t\t\tswitch (i) {\n\t\t\t\tcase 0:\n\t\t\t\tcase 3:\n\t\t\t\tcase 6:\n\t\t\t\tcase 9:\n\t\t\t\t\tcolumn = 0;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 1:\n\t\t\t\tcase 4:\n\t\t\t\tcase 7:\n\t\t\t\tcase 10:\n\t\t\t\t\tcolumn = 1;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 2:\n\t\t\t\tcase 5:\n\t\t\t\tcase 8:\n\t\t\t\tcase 11:\n\t\t\t\t\tcolumn = 2;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tint x = paddingDay * (1 + dayOffset * 2) + (column * width) / 3\n\t\t\t\t\t\t+ paddingDay;\n\n\t\t\t\tcanvas.drawText(String.format(\"%d\", day), x, y, dayLabelTextPaint);\n\n\t\t\t\tif ( today == day) {\n\t\t\t\t\tcanvas.drawCircle(x+CommonUtils.dp2px(mContext, 1), y - CommonUtils.dp2px(mContext, 4),\n\t\t\t\t\t\t\tDAY_LABEL_CIRCLE_RADIUS, dayLabelCircleBgPaint);\n\n\t\t\t\t\tdayLabelTextPaint.setColor(dayLabelTextTodayColor);\n\t\t\t\t\tcanvas.drawText(String.format(\"%d\", day), x, y,\n\t\t\t\t\t\t\tdayLabelTextPaint);\n\t\t\t\t\tdayLabelTextPaint.setColor(dayLabelTextColor);\n\t\t\t\t}\n\n\t\t\t\tdayOffset++;\n\n\t\t\t\tif (dayOffset == numDays) {\n\t\t\t\t\tdayOffset = 0;\n\t\t\t\t\ty += lineSpacingBetweenDayAndDay;\n\t\t\t\t}\n\t\t\t\tday++;\n\t\t\t}// end of while\n\n\t\t}// end of for\n\t}\n\t\n\tprivate int findDayOffset() {\n\t\treturn (dayOfWeekStart < weekStart ? (dayOfWeekStart + numDays)\n\t\t\t\t: dayOfWeekStart) - weekStart;\n\t}\n\n\tprivate void onDayClick(YearAdapter.CalendarMonth calendarMonth) {\n\t\tif (mOnMonthClickListener != null) {\n\t\t\tmOnMonthClickListener.onMonthClick(this, calendarMonth);\n\t\t}\n\t}\n\n\tprivate boolean isToday(int monthDay, Time time) {\n\t\treturn (year == time.year) && (month == time.month)\n\t\t\t\t&& (monthDay == time.monthDay);\n\t}\n\n\t\n\n\t\n\n\tpublic YearAdapter.CalendarMonth getMonthFromLocation(\n\t\t\tMotionEvent event) {\n\t\tfloat x = event.getX();\n\t\tfloat y = event.getY();\n\t\tint month = 0;\n\t\tint columnWidth = width / 3;\n\t\t \n\t\tif (y < YEAR_HEADER_TEXT_HEIGHT) {\n\t\t\treturn null;\n\t\t}\n\n\t\tif ((y <= YEAR_HEADER_TEXT_HEIGHT + rowMonthHeight)) {\n\t\t\tif (x <= columnWidth) {\n\t\t\t\tmonth = 0;\n\t\t\t}\n\t\t\tif ((x < 2 * columnWidth) && (x > columnWidth)) {\n\t\t\t\tmonth = 1;\n\t\t\t}\n\t\t\tif ((x <= 3 * columnWidth) && (x >= 2 * columnWidth)) {\n\t\t\t\tmonth = 2;\n\t\t\t}\n\t\t}\n\t\tif ((y <= YEAR_HEADER_TEXT_HEIGHT + 2 * rowMonthHeight)\n\t\t\t\t&& (y > YEAR_HEADER_TEXT_HEIGHT + rowMonthHeight)) {\n\t\t\tif (x <= columnWidth) {\n\t\t\t\tmonth = 3;\n\t\t\t}\n\t\t\tif ((x < 2 * columnWidth) && (x > columnWidth)) {\n\t\t\t\tmonth = 4;\n\t\t\t}\n\t\t\tif ((x <= 3 * columnWidth) && (x >= 2 * columnWidth)) {\n\t\t\t\tmonth = 5;\n\t\t\t}\n\t\t}\n\n\t\tif ((y <= YEAR_HEADER_TEXT_HEIGHT + 3 * rowMonthHeight)\n\t\t\t\t&& (y > YEAR_HEADER_TEXT_HEIGHT + 2 * rowMonthHeight)) {\n\t\t\tif (x <= columnWidth) {\n\t\t\t\tmonth = 6;\n\t\t\t}\n\t\t\tif ((x < 2 * columnWidth) && (x > columnWidth)) {\n\t\t\t\tmonth = 7;\n\t\t\t}\n\t\t\tif ((x <= 3 * columnWidth) && (x >= 2 * columnWidth)) {\n\t\t\t\tmonth = 8;\n\t\t\t}\n\t\t}\n\n\t\tif ((y <= YEAR_HEADER_TEXT_HEIGHT + 4 * rowMonthHeight)\n\t\t\t\t&& (y >= YEAR_HEADER_TEXT_HEIGHT + 3 * rowMonthHeight)) {\n\t\t\tif (x <= columnWidth) {\n\t\t\t\tmonth = 9;\n\t\t\t}\n\t\t\tif ((x < 2 * columnWidth) && (x > columnWidth)) {\n\t\t\t\tmonth = 10;\n\t\t\t}\n\t\t\tif ((x <= 3 * columnWidth) && (x >= 2 * columnWidth)) {\n\t\t\t\tmonth = 11;\n\t\t\t}\n\t\t}\n\n\t\treturn new YearAdapter.CalendarMonth(year, month, event);\n\t}\n\n\tprotected void initView() {\n\t\tmonthLabelTextPaint = new Paint();\n\t\tmonthLabelTextPaint.setFakeBoldText(true);\n\t\tmonthLabelTextPaint.setAntiAlias(true);\n\t\tmonthLabelTextPaint.setTextSize(MONTH_LABEL_TEXT_SIZE);\n\t\tmonthLabelTextPaint.setColor(monthTextColor);\n\t\tmonthLabelTextPaint.setTextAlign(Align.CENTER);\n\t\tmonthLabelTextPaint.setStyle(Style.FILL);\n\n\t\tdayLabelCircleBgPaint = new Paint();\n\t\tdayLabelCircleBgPaint.setFakeBoldText(true);\n\t\tdayLabelCircleBgPaint.setAntiAlias(true);\n\t\tdayLabelCircleBgPaint.setColor(dayLabelCircleBgColor);\n\t\tdayLabelCircleBgPaint.setTextAlign(Align.CENTER);\n\t\tdayLabelCircleBgPaint.setStyle(Style.FILL);\n\n\t\tyearHeaderTextPaint = new Paint();\n\t\tyearHeaderTextPaint.setAntiAlias(true);\n\t\tyearHeaderTextPaint.setTextAlign(Align.LEFT);\n\t\tyearHeaderTextPaint.setTextSize(YEAR_HEADER_TEXT_SIZE);\n\t\tyearHeaderTextPaint.setColor(yearHeaderTextColor);\n\t\tyearHeaderTextPaint.setStyle(Style.FILL);\n\t\tyearHeaderTextPaint.setFakeBoldText(false);\n\n\t\tyearHeaderLunarTextPaint = new Paint();\n\t\tyearHeaderLunarTextPaint.setAntiAlias(true);\n\t\tyearHeaderLunarTextPaint.setTextAlign(Align.RIGHT);\n\t\tyearHeaderLunarTextPaint.setTextSize(YEAR_HEADER_LUNAR_TEXT_SIZE);\n\t\tyearHeaderLunarTextPaint.setColor(yearHeaderLunarTextColor);\n\t\tyearHeaderLunarTextPaint.setStyle(Style.FILL);\n\t\tyearHeaderLunarTextPaint.setFakeBoldText(false);\n\n\t\tdayLabelTextPaint = new Paint();\n\t\tdayLabelTextPaint.setAntiAlias(true);\n\t\tdayLabelTextPaint.setTextSize(DAY_LABEL_TEXT_SIZE);\n\t\tdayLabelTextPaint.setColor(dayLabelTextColor);\n\t\tdayLabelTextPaint.setStyle(Style.FILL);\n\t\tdayLabelTextPaint.setTextAlign(Align.CENTER);\n\t\tdayLabelTextPaint.setFakeBoldText(false);\n\n\t\tdayLabelCircleBgPaint = new Paint();\n\t\tdayLabelCircleBgPaint.setAntiAlias(true);\n\t\tdayLabelCircleBgPaint.setTextSize(DAY_LABEL_TEXT_SIZE);\n\t\tdayLabelCircleBgPaint.setColor(dayLabelCircleBgColor);\n\t\tdayLabelCircleBgPaint.setStyle(Style.FILL);\n\t\tdayLabelCircleBgPaint.setTextAlign(Align.CENTER);\n\t\tdayLabelCircleBgPaint.setFakeBoldText(false);\n\n\t\tdividerPaint = new Paint();\n\t\tdividerPaint.setAntiAlias(true);\n\t\tdividerPaint.setColor(dividerColor);\n\t\tdividerPaint.setStyle(Style.FILL);\n\t\tdividerPaint.setTextAlign(Align.CENTER);\n\t\tdividerPaint.setFakeBoldText(false);\n\t\t\n\t\tyearHeaderDashPaint = new Paint();\n\t\tyearHeaderDashPaint.setAntiAlias(true);\n\t\tyearHeaderDashPaint.setColor(yearHeaderDashColor);\n\t}\n\n\tprotected void onDraw(Canvas canvas) {\n\n\t\tdrawYearHeaderLabels(canvas);\n\t\tdrawMonthTitle(canvas);\n\t\tdrawAllMonthNums(canvas);\n\n\t}\n\n\tprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {\n\n\t\tsetMeasuredDimension(width, rowMonthHeight* 4 + YEAR_HEADER_TEXT_HEIGHT\n\t\t\t\t+lineSpacingBetweenYearAndMonth);\n\t}\n\n\tprotected void onSizeChanged(int w, int h, int oldw, int oldh) {\n\t\tmWidth = w;\n\t}\n\n\t@SuppressLint(\"ClickableViewAccessibility\")\n\tpublic boolean onTouchEvent(MotionEvent event) {\n\t\tif (event.getAction() == MotionEvent.ACTION_UP) {\n\t\t\tYearAdapter.CalendarMonth calendarDay = getMonthFromLocation(event);\n\t\t\tif (calendarDay != null) {\n\t\t\t\tonDayClick(calendarDay);\n\t\t\t}\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tpublic void reuse() {\n\t\trequestLayout();\n\t}\n\n\tpublic void setYearParams(int year, int month) {\n\t\tthis.month = month;\n\t\tthis.year = year;\n\n\t\ttoday = -1;\n\n\t\tcalendar.set(Calendar.MONTH, month);\n\t\tcalendar.set(Calendar.YEAR, year);\n\t\tcalendar.set(Calendar.DAY_OF_MONTH, 1);\n\t\tdayOfWeekStart = calendar.get(Calendar.DAY_OF_WEEK);\n\n\t\tweekStart = calendar.getFirstDayOfWeek();\n\t\tnumCells = CalendarUtils.getDaysInMonth(month, year);\n\n\t\tfor (int i = 0; i < numCells; i++) {\n\t\t\tfinal int day = i + 1;\n\t\t\tif (isToday(day, currentTime)) {\n\t\t\t\ttoday = day;\n\t\t\t}\n\t\t}\n\t}\n\n\n\n\t@SuppressWarnings(\"deprecation\")\n\tpublic void setYearParams(HashMap<String, Integer> params) {\n\t\tif (!params.containsKey(VIEW_PARAMS_YEAR_CURRENT)) {\n\t\t\tthrow new InvalidParameterException(\n\t\t\t\t\t\"You must specify current_year for this view\");\n\t\t}\n\t\tsetTag(params);\n\n\t\tyear = params.get(VIEW_PARAMS_YEAR_CURRENT);\n\n\t\ttoday = -1;\n\n\t\tcalendar.set(Calendar.YEAR, year);\n\t\tcalendar.set(Calendar.DAY_OF_MONTH, 1);\n\t\tdayOfWeekStart = calendar.get(Calendar.DAY_OF_WEEK);\n\n\t\tif (params.containsKey(VIEW_PARAMS_WEEK_START)) {\n\t\t\tweekStart = params.get(VIEW_PARAMS_WEEK_START);\n\t\t} else {\n\t\t\tweekStart = calendar.getFirstDayOfWeek();\n\t\t}\n\n\t\tnumCells = CalendarUtils.getDaysInMonth(month, year);\n\n\t\tfor (int i = 0; i < numCells; i++) {\n\t\t\tfinal int day = i + 1;\n\t\t\tif (isToday(day, currentTime)) {\n\t\t\t\ttoday = day;\n\t\t\t}\n\n\t\t}\n\n\t\tWindowManager wm = (WindowManager) getContext().getSystemService(\n\t\t\t\tContext.WINDOW_SERVICE);\n\t\twidth = wm.getDefaultDisplay().getWidth();\n\n\t}\n\n\tpublic void setOnMonthClickListener(\n\t\t\tOnMonthClickListener onMonthClickListener) {\n\t\tmOnMonthClickListener = onMonthClickListener;\n\t}\n\n\tpublic static abstract interface OnMonthClickListener {\n\t\tpublic abstract void onMonthClick(YearView simpleMonthView,\n\t\t\t\tYearAdapter.CalendarMonth calendarDay);\n\t}\n}"
  },
  {
    "path": "library/src/wgc/shuwoom/scrollercalendar/demo/MainActivity.java",
    "content": "package wgc.shuwoom.scrollercalendar.demo;\n\n\nimport wgc.shuwoom.scrollercalendar.ScrollerCalendar;\nimport wgc.shuwoom.scrollercalendar.R;\nimport android.app.Activity;\nimport android.os.Bundle;\nimport android.widget.Toast;\n\npublic class MainActivity extends Activity  implements\nwgc.shuwoom.scrollercalendar.ScrollerCalendarController{\n\t\n\tprivate ScrollerCalendar monthPickerView;\n\n\t@Override\n\tprotected void onCreate(Bundle savedInstanceState) {\n\t\tsuper.onCreate(savedInstanceState);\n\t\tsetContentView(R.layout.activity_main);\n\t\t\n\t\tmonthPickerView = (ScrollerCalendar) findViewById(R.id.pickerView);\n\t\tmonthPickerView.setController(this);\n\t\t\n\t}\n\n\t@Override\n\tpublic void onMonthOfYearSelected(int year, int month) {\n\t\tToast.makeText(getApplicationContext(), year+\"-\"+month, Toast.LENGTH_SHORT).show();\n\t\t\n\t}\n\n\n\n}\n"
  }
]