├── Demo ├── MarkupDemoICS │ ├── .gitignore │ ├── lint.xml │ ├── libs │ │ ├── jhighlight-1.0.jar │ │ ├── android-support-v4.jar │ │ └── android.binding.js.1.0-update.jar │ ├── res │ │ ├── raw │ │ │ ├── referencing_code │ │ │ ├── viewpager_code │ │ │ ├── launchmarkupviewmodel_code │ │ │ ├── showdemo_metadata.xml │ │ │ ├── resourcelinking_code │ │ │ ├── validation_code │ │ │ ├── main_metadata.xml │ │ │ ├── viewpager.xml │ │ │ ├── textviewcustomfont_code │ │ │ ├── launchcodeviewmodel_code │ │ │ ├── showdemo_demo.xml │ │ │ ├── dependant_spinner_item.xml │ │ │ ├── simple_spinner_item.xml │ │ │ ├── customview_code │ │ │ ├── view_code │ │ │ ├── simple_spinner_item2.xml │ │ │ ├── listnavi_item.xml │ │ │ ├── simple_spinner_dropdown_item.xml │ │ │ ├── music_item_spinner.xml │ │ │ ├── section_name.xml │ │ │ ├── codeviewmodel_code │ │ │ ├── filterarraylist_item.xml │ │ │ ├── listviewindividualitemcontrol_item.xml │ │ │ ├── spinnerwitharraysource_code │ │ │ ├── dependant_spinner_dropdown_item.xml │ │ │ ├── list_item.xml │ │ │ ├── dynamic_item_last.xml │ │ │ ├── master_template.xml │ │ │ ├── demo_group_template.xml │ │ │ ├── code_view.xml │ │ │ ├── email_item.xml │ │ │ ├── arraylist_item1.xml │ │ │ ├── arraylist_item2.xml │ │ │ ├── arraylist_item.xml │ │ │ ├── list_item2.xml │ │ │ ├── nccu_subitem.xml │ │ │ ├── music_item.xml │ │ │ ├── contextmenu.xml │ │ │ ├── bindabletablelayout_item.xml │ │ │ ├── showdemo_xml.xml │ │ │ ├── bindableframelayout_frame1.xml │ │ │ ├── bindableframelayout_frame2.xml │ │ │ ├── bindableframelayout_frame3.xml │ │ │ ├── javascript_code │ │ │ ├── simple_list_item_multiple_choice.xml │ │ │ ├── bindabletablelayout_item_blue.xml │ │ │ ├── actionmode.xml │ │ │ ├── simple_list_item_single_choice.xml │ │ │ ├── bindablelinearlayout_item.xml │ │ │ ├── dynamicloadingarraylist.xml │ │ │ ├── masterdetaillistview.xml │ │ │ ├── bindablelinearlayout_item_blue.xml │ │ │ ├── bindableframelayout_frame_on_load.xml │ │ │ ├── nestedcursor.xml │ │ │ ├── imageview.xml │ │ │ ├── listviewwithcursorsource.xml │ │ │ ├── ratingbar.xml │ │ │ ├── contextmenu_code │ │ │ ├── seekbar_code │ │ │ └── validation.xml │ │ ├── drawable │ │ │ └── ic_launcher.png │ │ ├── xml │ │ │ └── showdemo_metadata.xml │ │ ├── anim │ │ │ ├── custom_ab_rail.xml │ │ │ ├── custom_ab_grow_from_bottom.xml │ │ │ ├── custom_ab_grow_from_top.xml │ │ │ ├── custom_ab_shrink_from_top.xml │ │ │ ├── custom_ab_shrink_from_bottom.xml │ │ │ └── cycle_7.xml │ │ ├── values │ │ │ ├── constants.xml │ │ │ └── dimens.xml │ │ ├── layout │ │ │ ├── viewpager.xml │ │ │ ├── showdemo_demo.xml │ │ │ ├── dependant_spinner_item.xml │ │ │ ├── simple_spinner_item.xml │ │ │ ├── simple_spinner_item2.xml │ │ │ ├── listnavi_item.xml │ │ │ ├── music_item_spinner.xml │ │ │ ├── simple_spinner_dropdown_item.xml │ │ │ ├── section_name.xml │ │ │ ├── filterarraylist_item.xml │ │ │ ├── listviewindividualitemcontrol_item.xml │ │ │ ├── dependant_spinner_dropdown_item.xml │ │ │ ├── dynamic_item_last.xml │ │ │ ├── list_item.xml │ │ │ ├── master_template.xml │ │ │ ├── demo_group_template.xml │ │ │ ├── arraylist_item2.xml │ │ │ ├── code_view.xml │ │ │ ├── email_item.xml │ │ │ ├── arraylist_item1.xml │ │ │ ├── arraylist_item.xml │ │ │ ├── nccu_subitem.xml │ │ │ ├── list_item2.xml │ │ │ ├── contextmenu.xml │ │ │ ├── music_item.xml │ │ │ ├── bindableframelayout_frame1.xml │ │ │ ├── bindableframelayout_frame2.xml │ │ │ ├── bindableframelayout_frame3.xml │ │ │ ├── bindabletablelayout_item.xml │ │ │ ├── showdemo_xml.xml │ │ │ ├── simple_list_item_multiple_choice.xml │ │ │ ├── bindabletablelayout_item_blue.xml │ │ │ ├── actionmode.xml │ │ │ ├── simple_list_item_single_choice.xml │ │ │ ├── bindablelinearlayout_item.xml │ │ │ ├── bindablelinearlayout_item_blue.xml │ │ │ ├── dynamicloadingarraylist.xml │ │ │ ├── masterdetaillistview.xml │ │ │ ├── bindableframelayout_frame_on_load.xml │ │ │ ├── nestedcursor.xml │ │ │ ├── imageview.xml │ │ │ ├── listviewwithcursorsource.xml │ │ │ ├── ratingbar.xml │ │ │ └── validation.xml │ │ ├── xml-v14 │ │ │ └── showdemo_metadata.xml │ │ ├── layout-v14 │ │ │ └── main.xml │ │ ├── menu │ │ │ ├── actionmodeexample_menu.xml │ │ │ ├── photo_context_menu.xml │ │ │ ├── optionsmenu.xml │ │ │ └── main.xml │ │ ├── menu-land │ │ │ └── optionsmenu.xml │ │ └── layout-land-v14 │ │ │ └── main.xml │ ├── assets │ │ └── Roboto-BoldCondensedItalic.ttf │ ├── src │ │ ├── com │ │ │ └── gueei │ │ │ │ └── demos │ │ │ │ └── markupDemo │ │ │ │ ├── viewModels │ │ │ │ ├── Referencing.java │ │ │ │ ├── ResourceLinking.java │ │ │ │ ├── TextViewCustomFont.java │ │ │ │ ├── CustomView.java │ │ │ │ ├── View.java │ │ │ │ ├── SpinnerWithArraySource.java │ │ │ │ ├── SeekBar.java │ │ │ │ └── ContextMenu.java │ │ │ │ └── converters │ │ │ │ ├── NotEqual.java │ │ │ │ └── LENTH_LARGER_THAN.java │ │ └── gueei │ │ │ └── binding │ │ │ └── markupDemoICS │ │ │ ├── viewModels │ │ │ ├── ViewPager.java │ │ │ ├── LaunchMarkupViewModel.java │ │ │ ├── Validation.java │ │ │ ├── LaunchCodeViewModel.java │ │ │ ├── CodeViewModel.java │ │ │ └── Javascript.java │ │ │ ├── MarkupDemoApplication.java │ │ │ ├── Launch.java │ │ │ └── converters │ │ │ └── COMMA_TOKENIZER.java │ ├── .classpath │ └── project.properties └── PagerPlayground │ ├── .gitignore │ ├── android-binding.ant.jar │ ├── android-binding.gen.zip │ ├── res │ ├── values │ │ ├── strings.xml │ │ └── styles.xml │ ├── drawable-hdpi │ │ └── ic_launcher.png │ ├── drawable-mdpi │ │ └── ic_launcher.png │ ├── drawable-xhdpi │ │ └── ic_launcher.png │ ├── menu │ │ └── mainactivity_optionsmenu.xml │ ├── xml │ │ └── mainactivity_metadata.xml │ ├── values-v11 │ │ └── styles.xml │ ├── values-v14 │ │ └── styles.xml │ └── xml-v14 │ │ └── mainactivity_metadata.xml │ ├── libs │ └── android-support-v4.jar │ ├── src │ └── gueei │ │ └── binding │ │ └── demo │ │ └── pagerplayground │ │ └── PagerPlaygroundApplication.java │ ├── .classpath │ ├── project.properties │ └── AndroidManifest.xml ├── Test └── AndroidBindingTest │ ├── .gitignore │ ├── android-binding.ant.jar │ ├── res │ ├── drawable-hdpi │ │ └── icon.png │ ├── drawable-ldpi │ │ └── icon.png │ ├── drawable-mdpi │ │ └── icon.png │ ├── values │ │ └── strings.xml │ ├── xml │ │ └── testbuttonactivity_metadata.xml │ └── layout │ │ ├── main.xml │ │ └── testbuttonactivity_layout.xml │ ├── src │ └── gueei │ │ └── binding │ │ └── test │ │ └── AndroidBindingUnitTestApplication.java │ ├── .classpath │ ├── default.properties │ ├── project.properties │ └── AndroidManifest.xml ├── Utility └── AndroidBinding.Gen │ ├── .gitignore │ ├── android-binding.jar │ ├── android-binding.ant.jar │ ├── src │ └── gueei │ │ └── binding │ │ └── gen │ │ ├── Constants.java │ │ └── resources │ │ ├── activity.optionsmenu.template │ │ ├── activity.metadata.froyo.xml.template │ │ ├── application.template │ │ ├── activity.metadata.ics.xml.template │ │ └── activity.layout.template │ ├── .classpath │ ├── .project │ └── .settings │ └── org.eclipse.jdt.core.prefs ├── plugin ├── AndroidBinding.Plugin.ABS │ ├── .gitignore │ ├── libs │ │ └── android-support-v4.jar │ ├── src │ │ └── gueei │ │ │ └── binding │ │ │ └── plugin │ │ │ └── abs │ │ │ ├── menu │ │ │ ├── IMenuBinder.java │ │ │ ├── IMenuItemChangedCallback.java │ │ │ ├── MenuItemViemodel.java │ │ │ ├── OnMenuItemClickListenerMulticast.java │ │ │ └── viewAttributes │ │ │ │ ├── DataSource.java │ │ │ │ └── Menu.java │ │ │ └── attributes │ │ │ ├── TabNavigationOnItemSelected.java │ │ │ ├── ListNavigationOnItemSelected.java │ │ │ ├── DisplayShowHome.java │ │ │ └── DisplayHomeAsUp.java │ ├── bin │ │ ├── androidbinding.plugin.abs.jar │ │ ├── AndroidManifest.xml │ │ └── jarlist.cache │ ├── AndroidManifest.xml │ ├── .classpath │ └── project.properties ├── AndroidBinding.Validation │ ├── .gitignore │ ├── bin │ │ ├── jarlist.cache │ │ ├── androidbinding.validation.jar │ │ └── AndroidManifest.xml │ ├── AndroidManifest.xml │ ├── .classpath │ ├── src │ │ └── gueei │ │ │ └── binding │ │ │ └── labs │ │ │ └── validation │ │ │ └── IAnnoatedPropertyContainer.java │ └── project.properties └── AndroidBinding.Plugin.ABS.Sample │ ├── .gitignore │ ├── res │ ├── values │ │ ├── styles.xml │ │ └── strings.xml │ ├── values-v11 │ │ └── styles.xml │ ├── values-v14 │ │ └── styles.xml │ ├── drawable-hdpi │ │ ├── ic_launcher.png │ │ └── ic_action_search.png │ ├── drawable-mdpi │ │ ├── ic_launcher.png │ │ └── ic_action_search.png │ ├── drawable-xhdpi │ │ ├── ic_launcher.png │ │ └── ic_action_search.png │ ├── menu │ │ └── mainactivity_optionsmenu.xml │ ├── xml │ │ └── mainactivity_metadata.xml │ └── layout │ │ └── mainactivity_layout.xml │ ├── android-binding.ant.jar │ ├── libs │ └── android-support-v4.jar │ ├── .classpath │ └── src │ └── com │ └── example │ └── androidbinding │ └── plugin │ └── abs │ └── sample │ └── SampleApplication.java ├── Core ├── AndroidBindingV30 │ ├── .gitignore │ ├── libs │ │ └── android-support-v4.jar │ ├── library │ │ └── android-support-v4.jar │ ├── AndroidManifest.xml │ ├── .fatjar │ ├── default.properties │ ├── project.properties │ ├── .classpath │ └── src │ │ └── gueei │ │ └── binding │ │ └── v30 │ │ ├── viewAttributes │ │ ├── adapterView │ │ │ └── viewPager │ │ │ │ └── PagerDataSetObserver.java │ │ └── absListView │ │ │ └── Helper.java │ │ ├── actionbar │ │ ├── attributes │ │ │ ├── TabNavigationOnItemSelected.java │ │ │ ├── ListNavigationOnItemSelected.java │ │ │ ├── DisplayShowHome.java │ │ │ ├── DisplayHomeAsUp.java │ │ │ └── DisplayShowTitle.java │ │ └── listeners │ │ │ └── OnMenuVisibilityListenerMulticast.java │ │ └── listeners │ │ └── OnAttachStateChangeListenerMulticast.java └── AndroidBinding │ ├── .gitignore │ ├── bin │ ├── androidbinding.jar │ ├── classes │ │ └── gueei │ │ │ └── binding │ │ │ └── menu │ │ │ ├── IMenuBinder.class │ │ │ ├── AbsMenuBridge.class │ │ │ ├── MenuItemBridge.class │ │ │ ├── MenuGroupBridge.class │ │ │ ├── MenuItemViemodel.class │ │ │ ├── BindableOptionsMenu.class │ │ │ ├── ContextMenuBinder.class │ │ │ ├── OptionsMenuBinder.class │ │ │ ├── IMenuItemChangedCallback.class │ │ │ ├── AbsMenuBridge$OptionsItemObserver.class │ │ │ └── OnMenuItemClickListenerMulticast.class │ └── AndroidManifest.xml │ ├── src │ └── gueei │ │ └── binding │ │ ├── menu │ │ ├── IMenuBinder.java │ │ ├── IMenuItemChangedCallback.java │ │ ├── MenuItemViemodel.java │ │ ├── OnMenuItemClickListenerMulticast.java │ │ └── viewAttributes │ │ │ ├── DataSource.java │ │ │ └── Menu.java │ │ ├── BindingType.java │ │ ├── viewAttributes │ │ ├── view │ │ │ ├── KeyEventResult.java │ │ │ ├── TouchEventResult.java │ │ │ ├── OnBindViewAttribute.java │ │ │ ├── OnGainFocusViewEvent.java │ │ │ └── OnLostFocusViewEvent.java │ │ ├── templates │ │ │ ├── LayoutObservable.java │ │ │ ├── SingleTemplateLayout.java │ │ │ ├── LayoutItem.java │ │ │ └── Layout.java │ │ └── tabHost │ │ │ └── Tab.java │ │ ├── widgets │ │ └── ILayoutLoadEvent.java │ │ ├── IReferenceObservableProvider.java │ │ ├── Observer.java │ │ ├── listeners │ │ ├── MulticastListenerCollection.java │ │ ├── OnClickListenerMulticast.java │ │ ├── OnFocusChangeListenerMulticast.java │ │ ├── OnLongClickListenerMulticast.java │ │ ├── OnKeyListenerMulticast.java │ │ ├── OnTouchListenerMulticast.java │ │ ├── OnItemClickListenerMulticast.java │ │ ├── OnRatingBarChangeListenerMulticast.java │ │ └── OnChildClickListenerMulticast.java │ │ ├── cursor │ │ ├── IRowModelFactory.java │ │ ├── IdField.java │ │ ├── BlobField.java │ │ ├── LongField.java │ │ ├── FloatField.java │ │ ├── ShortField.java │ │ ├── StringField.java │ │ ├── IntegerField.java │ │ ├── RowModelFactory.java │ │ └── ICursorRowModel.java │ │ ├── labs │ │ └── EventSubscriber.java │ │ ├── CollectionObserver.java │ │ ├── Undetermined.java │ │ ├── IPropertyContainer.java │ │ ├── observables │ │ ├── FloatObservable.java │ │ ├── LongObservable.java │ │ ├── DoubleObservable.java │ │ ├── ObjectObservable.java │ │ ├── IntegerObservable.java │ │ ├── CharSequenceObservable.java │ │ ├── BooleanObservable.java │ │ ├── ArraySource.java │ │ └── StringObservable.java │ │ ├── ViewAttribute.java │ │ ├── serialization │ │ └── NoParcel.java │ │ ├── ViewTag.java │ │ ├── bindingProviders │ │ ├── AbsSpinnerViewProvider.java │ │ ├── SeekBarProvider.java │ │ ├── TabHostProvider.java │ │ ├── ImageViewProvider.java │ │ └── BindingProvider.java │ │ ├── collections │ │ ├── LazyLoadParent.java │ │ └── LazyLoadAdapter.java │ │ ├── pojo │ │ ├── PojoViewModelHelper.java │ │ └── PojoViewModel.java │ │ ├── app │ │ ├── rootView │ │ │ └── BindableRootView.java │ │ └── BindingWidget.java │ │ ├── IObservableCollection.java │ │ ├── converters │ │ ├── TRUE.java │ │ ├── FALSE.java │ │ ├── NULL.java │ │ ├── ISNULL.java │ │ ├── LOWER.java │ │ ├── UPPER.java │ │ ├── LEN.java │ │ ├── IS_NOT_NULL.java │ │ └── HTML.java │ │ ├── utility │ │ ├── IModelReflector.java │ │ ├── ICachedModelReflector.java │ │ └── TypeAsKeyHashMap.java │ │ ├── Converter.java │ │ ├── exception │ │ └── BindingException.java │ │ ├── EventAttribute.java │ │ └── BindingLog.java │ ├── AndroidManifest.xml │ ├── project.properties │ ├── default.properties │ └── .classpath ├── android-binding.gen.zip ├── android-binding-v0.6-build718.jar └── README.md /Demo/MarkupDemoICS/.gitignore: -------------------------------------------------------------------------------- 1 | /bin 2 | /gen 3 | -------------------------------------------------------------------------------- /Demo/PagerPlayground/.gitignore: -------------------------------------------------------------------------------- 1 | /gen 2 | /bin 3 | -------------------------------------------------------------------------------- /Test/AndroidBindingTest/.gitignore: -------------------------------------------------------------------------------- 1 | /bin 2 | /gen 3 | -------------------------------------------------------------------------------- /Utility/AndroidBinding.Gen/.gitignore: -------------------------------------------------------------------------------- 1 | /classes 2 | -------------------------------------------------------------------------------- /plugin/AndroidBinding.Plugin.ABS/.gitignore: -------------------------------------------------------------------------------- 1 | /gen 2 | /bin 3 | -------------------------------------------------------------------------------- /plugin/AndroidBinding.Validation/.gitignore: -------------------------------------------------------------------------------- 1 | /gen 2 | /bin 3 | -------------------------------------------------------------------------------- /Core/AndroidBindingV30/.gitignore: -------------------------------------------------------------------------------- 1 | gen 2 | /**/* 3 | 4 | bin/**/* -------------------------------------------------------------------------------- /plugin/AndroidBinding.Plugin.ABS.Sample/.gitignore: -------------------------------------------------------------------------------- 1 | /gen 2 | /bin 3 | -------------------------------------------------------------------------------- /Core/AndroidBinding/.gitignore: -------------------------------------------------------------------------------- 1 | gen 2 | /**/* 3 | 4 | bin/**/* 5 | /bin 6 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/lint.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /android-binding.gen.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/android-binding.gen.zip -------------------------------------------------------------------------------- /android-binding-v0.6-build718.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/android-binding-v0.6-build718.jar -------------------------------------------------------------------------------- /Core/AndroidBinding/bin/androidbinding.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Core/AndroidBinding/bin/androidbinding.jar -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/menu/IMenuBinder.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.menu; 2 | 3 | public interface IMenuBinder { 4 | } 5 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/libs/jhighlight-1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/MarkupDemoICS/libs/jhighlight-1.0.jar -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/referencing_code: -------------------------------------------------------------------------------- 1 | package com.gueei.demos.markupDemo.viewModels; 2 | 3 | public class Referencing { 4 | } 5 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/viewpager_code: -------------------------------------------------------------------------------- 1 | package gueei.binding.markupDemoICS.viewModels; 2 | 3 | 4 | public class ViewPager { 5 | } 6 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/libs/android-support-v4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/MarkupDemoICS/libs/android-support-v4.jar -------------------------------------------------------------------------------- /Demo/PagerPlayground/android-binding.ant.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/PagerPlayground/android-binding.ant.jar -------------------------------------------------------------------------------- /Demo/PagerPlayground/android-binding.gen.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/PagerPlayground/android-binding.gen.zip -------------------------------------------------------------------------------- /Demo/PagerPlayground/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | PagerPlayground 4 | 5 | 6 | -------------------------------------------------------------------------------- /Utility/AndroidBinding.Gen/android-binding.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Utility/AndroidBinding.Gen/android-binding.jar -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/drawable/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/MarkupDemoICS/res/drawable/ic_launcher.png -------------------------------------------------------------------------------- /Demo/PagerPlayground/libs/android-support-v4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/PagerPlayground/libs/android-support-v4.jar -------------------------------------------------------------------------------- /Test/AndroidBindingTest/android-binding.ant.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Test/AndroidBindingTest/android-binding.ant.jar -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/BindingType.java: -------------------------------------------------------------------------------- 1 | package gueei.binding; 2 | 3 | 4 | public enum BindingType { 5 | OneWay, TwoWay, NoBinding 6 | } 7 | -------------------------------------------------------------------------------- /Core/AndroidBindingV30/libs/android-support-v4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Core/AndroidBindingV30/libs/android-support-v4.jar -------------------------------------------------------------------------------- /Test/AndroidBindingTest/res/drawable-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Test/AndroidBindingTest/res/drawable-hdpi/icon.png -------------------------------------------------------------------------------- /Test/AndroidBindingTest/res/drawable-ldpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Test/AndroidBindingTest/res/drawable-ldpi/icon.png -------------------------------------------------------------------------------- /Test/AndroidBindingTest/res/drawable-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Test/AndroidBindingTest/res/drawable-mdpi/icon.png -------------------------------------------------------------------------------- /Utility/AndroidBinding.Gen/android-binding.ant.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Utility/AndroidBinding.Gen/android-binding.ant.jar -------------------------------------------------------------------------------- /Core/AndroidBindingV30/library/android-support-v4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Core/AndroidBindingV30/library/android-support-v4.jar -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/assets/Roboto-BoldCondensedItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/MarkupDemoICS/assets/Roboto-BoldCondensedItalic.ttf -------------------------------------------------------------------------------- /Demo/PagerPlayground/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/PagerPlayground/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Demo/PagerPlayground/res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/PagerPlayground/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Demo/PagerPlayground/res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gueei/AndroidBinding/HEAD/Demo/PagerPlayground/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /plugin/AndroidBinding.Plugin.ABS.Sample/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /plugin/AndroidBinding.Plugin.ABS/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /plugin/AndroidBinding.Validation/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Test/AndroidBindingTest/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Utility/AndroidBinding.Gen/src/gueei/binding/gen/resources/application.template: -------------------------------------------------------------------------------- 1 | package ${package_name}; 2 | 3 | import gueei.binding.Binder; 4 | import gueei.binding.v30.DefaultKernelV30; 5 | import android.app.Application; 6 | 7 | public class ${app_name} extends Application { 8 | @Override 9 | public void onCreate() { 10 | super.onCreate(); 11 | Binder.init(this, new DefaultKernelV30()); 12 | } 13 | } -------------------------------------------------------------------------------- /plugin/AndroidBinding.Plugin.ABS.Sample/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/observables/CharSequenceObservable.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.observables; 2 | 3 | import gueei.binding.Observable; 4 | 5 | public class CharSequenceObservable extends Observable { 6 | public CharSequenceObservable() { 7 | super(CharSequence.class); 8 | } 9 | 10 | public CharSequenceObservable(CharSequence value){ 11 | super(CharSequence.class, value); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/simple_spinner_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/simple_spinner_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/customview_code: -------------------------------------------------------------------------------- 1 | package com.gueei.demos.markupDemo.viewModels; 2 | 3 | import gueei.binding.Command; 4 | import gueei.binding.observables.StringObservable; 5 | import android.view.View; 6 | 7 | public class CustomView { 8 | public StringObservable Mask = new StringObservable("*"); 9 | public Command Clear = new Command(){ 10 | public void Invoke(View view, Object... args) { 11 | Mask.set(""); 12 | } 13 | }; 14 | } -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/src/gueei/binding/markupDemoICS/MarkupDemoApplication.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.markupDemoICS; 2 | 3 | import gueei.binding.Binder; 4 | import gueei.binding.v30.DefaultKernelV30; 5 | import android.app.Application; 6 | 7 | public class MarkupDemoApplication extends Application { 8 | 9 | @Override 10 | public void onCreate() { 11 | super.onCreate(); 12 | Binder.init(this, new DefaultKernelV30()); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /Core/AndroidBinding/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system use, 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | 10 | android.library=true 11 | # Project target. 12 | target=android-4 13 | -------------------------------------------------------------------------------- /Core/AndroidBinding/default.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system use, 7 | # "build.properties", and override values to adapt the script to your 8 | # project structure. 9 | 10 | # Project target. 11 | target=android-4 12 | android.library=true 13 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/ViewTag.java: -------------------------------------------------------------------------------- 1 | package gueei.binding; 2 | 3 | import gueei.binding.utility.TypeAsKeyHashMap; 4 | 5 | /** 6 | * Strong typed collection of object tags that need to associated with a View 7 | * Strong type to elminiate necessary type casting in accessing classes 8 | * Added since View has a problem of memory leakage 9 | * @author andy 10 | * 11 | */ 12 | public class ViewTag extends TypeAsKeyHashMap{ 13 | } 14 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/view_code: -------------------------------------------------------------------------------- 1 | package com.gueei.demos.markupDemo.viewModels; 2 | 3 | import gueei.binding.Command; 4 | import gueei.binding.observables.BooleanObservable; 5 | 6 | public class View { 7 | public Command Toggle = new Command(){ 8 | public void Invoke(android.view.View view, Object... args) { 9 | TextVisible.set(!TextVisible.get()); 10 | } 11 | }; 12 | public BooleanObservable TextVisible = new BooleanObservable(true); 13 | } 14 | -------------------------------------------------------------------------------- /Demo/PagerPlayground/src/gueei/binding/demo/pagerplayground/PagerPlaygroundApplication.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.demo.pagerplayground; 2 | 3 | import gueei.binding.Binder; 4 | import gueei.binding.v30.DefaultKernelV30; 5 | import android.app.Application; 6 | 7 | public class PagerPlaygroundApplication extends Application { 8 | @Override 9 | public void onCreate() { 10 | super.onCreate(); 11 | Binder.init(this, new DefaultKernelV30()); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Utility/AndroidBinding.Gen/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Test/AndroidBindingTest/res/layout/main.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 13 | 14 | -------------------------------------------------------------------------------- /Demo/PagerPlayground/res/values-v14/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/simple_spinner_item2.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/simple_spinner_item2.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/listnavi_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/src/com/gueei/demos/markupDemo/viewModels/CustomView.java: -------------------------------------------------------------------------------- 1 | package com.gueei.demos.markupDemo.viewModels; 2 | 3 | import gueei.binding.Command; 4 | import gueei.binding.observables.StringObservable; 5 | import android.view.View; 6 | 7 | public class CustomView { 8 | public StringObservable Mask = new StringObservable("*"); 9 | public Command Clear = new Command(){ 10 | public void Invoke(View view, Object... args) { 11 | Mask.set(""); 12 | } 13 | }; 14 | } -------------------------------------------------------------------------------- /Test/AndroidBindingTest/default.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system use, 7 | # "build.properties", and override values to adapt the script to your 8 | # project structure. 9 | 10 | # Project target. 11 | target=android-4 12 | android.library.reference.1=../AndroidBinding 13 | -------------------------------------------------------------------------------- /plugin/AndroidBinding.Plugin.ABS.Sample/src/com/example/androidbinding/plugin/abs/sample/SampleApplication.java: -------------------------------------------------------------------------------- 1 | package com.example.androidbinding.plugin.abs.sample; 2 | 3 | import gueei.binding.Binder; 4 | import gueei.binding.v30.DefaultKernelV30; 5 | import android.app.Application; 6 | 7 | public class SampleApplication extends Application { 8 | @Override 9 | public void onCreate() { 10 | super.onCreate(); 11 | Binder.init(this, new DefaultKernelV30()); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/listnavi_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Utility/AndroidBinding.Gen/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | AndroidBinding.Gen 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/simple_spinner_dropdown_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/src/com/gueei/demos/markupDemo/viewModels/View.java: -------------------------------------------------------------------------------- 1 | package com.gueei.demos.markupDemo.viewModels; 2 | 3 | import gueei.binding.Command; 4 | import gueei.binding.observables.BooleanObservable; 5 | 6 | public class View { 7 | public Command Toggle = new Command(){ 8 | public void Invoke(android.view.View view, Object... args) { 9 | TextVisible.set(!TextVisible.get()); 10 | } 11 | }; 12 | public BooleanObservable TextVisible = new BooleanObservable(true); 13 | } 14 | -------------------------------------------------------------------------------- /plugin/AndroidBinding.Validation/src/gueei/binding/labs/validation/IAnnoatedPropertyContainer.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.labs.validation; 2 | 3 | import gueei.binding.IObservable; 4 | import java.lang.annotation.Annotation; 5 | 6 | public interface IAnnoatedPropertyContainer { 7 | public String[] getAllObservableNames(); 8 | public IObservable getObservable(String observableName) throws Exception; 9 | public Annotation[] getAnnotations(String observableName) throws Exception; 10 | } 11 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/music_item_spinner.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/simple_spinner_dropdown_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/music_item_spinner.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/section_name.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Core/AndroidBindingV30/.fatjar: -------------------------------------------------------------------------------- 1 | #Fat Jar Configuration File 2 | #Thu Jul 18 19:35:07 CST 2013 3 | onejar.license.required=true 4 | manifest.classpath= 5 | manifest.removesigners=false 6 | onejar.checkbox=false 7 | jarname=C\:\\Users\\andy\\git\\AndroidBinding\\android-binding-v0.6-build718.jar 8 | manifest.mergeall=false 9 | manifest.mainclass= 10 | manifest.file= 11 | jarname.isextern=true 12 | onejar.expand= 13 | excludes=; 14 | includes= 15 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/section_name.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/src/com/gueei/demos/markupDemo/converters/NotEqual.java: -------------------------------------------------------------------------------- 1 | package com.gueei.demos.markupDemo.converters; 2 | 3 | import gueei.binding.IObservable; 4 | import gueei.binding.converters.EQUAL; 5 | 6 | public class NotEqual extends EQUAL { 7 | 8 | public NotEqual(IObservable[] dependents) { 9 | super(dependents); 10 | } 11 | 12 | @Override 13 | public Boolean calculateValue(Object... args) throws Exception { 14 | return !super.calculateValue(args); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /Core/AndroidBinding/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Core/AndroidBindingV30/default.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system use, 7 | # "build.properties", and override values to adapt the script to your 8 | # project structure. 9 | 10 | # Project target. 11 | target=android-13 12 | android.library=true 13 | android.library.reference.1=../AndroidBinding 14 | -------------------------------------------------------------------------------- /Core/AndroidBindingV30/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system use, 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | 10 | android.library=true 11 | # Project target. 12 | target=android-14 13 | android.library.reference.1=../AndroidBinding 14 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/bindingProviders/AbsSpinnerViewProvider.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.bindingProviders; 2 | 3 | import gueei.binding.ViewAttribute; 4 | import android.view.View; 5 | import android.widget.AbsSpinner; 6 | 7 | 8 | public class AbsSpinnerViewProvider extends BindingProvider { 9 | 10 | @Override 11 | public ViewAttribute createAttributeForView(View view, String attributeId) { 12 | if (!(view instanceof AbsSpinner)) return null; 13 | return null; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/collections/LazyLoadParent.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.collections; 2 | 3 | import android.content.Context; 4 | 5 | /** 6 | * Collection with this interface will not load all children 7 | * immediately, rather they are loaded when required (displaying, for example) 8 | * @author andy 9 | * 10 | */ 11 | public interface LazyLoadParent { 12 | /** 13 | * Changed to include the context. 14 | * @param context 15 | */ 16 | public void onLoadChildren(Context context); 17 | } -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/observables/BooleanObservable.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.observables; 2 | 3 | import gueei.binding.Observable; 4 | 5 | public class BooleanObservable extends Observable { 6 | public BooleanObservable() { 7 | super(Boolean.class); 8 | } 9 | 10 | public BooleanObservable(boolean value){ 11 | super(Boolean.class, value); 12 | } 13 | 14 | public boolean toggle(){ 15 | boolean value = !this.get(); 16 | this.set(value); 17 | return value; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Demo/PagerPlayground/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /plugin/AndroidBinding.Validation/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system use, 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | 10 | # Project target. 11 | target=android-4 12 | android.library=true 13 | android.library.reference.1=../../Core/AndroidBinding 14 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/listeners/OnClickListenerMulticast.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.listeners; 2 | 3 | import android.view.View; 4 | 5 | public class OnClickListenerMulticast extends ViewMulticastListener 6 | implements View.OnClickListener { 7 | 8 | @Override 9 | public void registerToView(View v) { 10 | v.setOnClickListener(this); 11 | } 12 | 13 | public void onClick(View v) { 14 | for(View.OnClickListener l : listeners){ 15 | l.onClick(v); 16 | } 17 | 18 | } 19 | } -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/codeviewmodel_code: -------------------------------------------------------------------------------- 1 | package gueei.binding.markupDemoICS.viewModels; 2 | 3 | import gueei.binding.markupDemoICS.R; 4 | import gueei.binding.observables.IntegerObservable; 5 | import gueei.binding.observables.StringObservable; 6 | 7 | public class CodeViewModel { 8 | 9 | public final IntegerObservable Resource = new IntegerObservable(R.raw.main_metadata); 10 | public final StringObservable Type = new StringObservable("xml"); 11 | 12 | public CodeViewModel() { 13 | super(); 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/menu/MenuItemViemodel.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.menu; 2 | 3 | import gueei.binding.Command; 4 | import gueei.binding.IObservable; 5 | import gueei.binding.IObservableCollection; 6 | 7 | public class MenuItemViemodel { 8 | public Command onClick; 9 | public IObservable title; 10 | public IObservable visible; 11 | public IObservable enabled; 12 | public IObservable checked; 13 | public IObservable icon; 14 | public IObservableCollection group; 15 | } 16 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/filterarraylist_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/filterarraylist_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/listviewindividualitemcontrol_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/spinnerwitharraysource_code: -------------------------------------------------------------------------------- 1 | package com.gueei.demos.markupDemo.viewModels; 2 | 3 | import gueei.binding.collections.ArrayListObservable; 4 | 5 | public class SpinnerWithArraySource { 6 | 7 | public final ArrayListObservable ContinentNames = 8 | new ArrayListObservable(String.class); 9 | 10 | public SpinnerWithArraySource() { 11 | ContinentNames.setArray( 12 | new String[]{"Asia", "Africa", "Antarctica", "Australia", "Europe", "North America", "South America"}); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/xml-v14/showdemo_metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 15 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/listviewindividualitemcontrol_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/PagerPlayground/res/xml-v14/mainactivity_metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 12 | 15 | 16 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/viewAttributes/templates/SingleTemplateLayout.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.viewAttributes.templates; 2 | 3 | public class SingleTemplateLayout extends Layout { 4 | public SingleTemplateLayout(int defaultId) { 5 | super(defaultId); 6 | } 7 | 8 | @Override 9 | public int getTemplateCount() { 10 | return 1; 11 | } 12 | 13 | @Override 14 | public int getLayoutTypeId(int pos) { 15 | return 0; 16 | } 17 | 18 | @Override 19 | public int getLayoutId(int pos) { 20 | return getDefaultLayoutId(); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/dependant_spinner_dropdown_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/dependant_spinner_dropdown_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/pojo/PojoViewModelHelper.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.pojo; 2 | 3 | public class PojoViewModelHelper { 4 | PojoViewModelWrapper mWrapper; 5 | void registerWrapper(PojoViewModelWrapper wrapper){ 6 | mWrapper = wrapper; 7 | } 8 | 9 | void unregisterWrapper(){ 10 | mWrapper = null; 11 | } 12 | 13 | PojoViewModelWrapper getWrapper(){ 14 | return mWrapper; 15 | } 16 | 17 | public void notifyPropertyChanged(String propertyName){ 18 | mWrapper.onPropertyChanged(propertyName); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/src/gueei/binding/markupDemoICS/viewModels/CodeViewModel.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.markupDemoICS.viewModels; 2 | 3 | import gueei.binding.markupDemoICS.R; 4 | import gueei.binding.observables.IntegerObservable; 5 | import gueei.binding.observables.StringObservable; 6 | 7 | public class CodeViewModel { 8 | 9 | public final IntegerObservable Resource = new IntegerObservable(R.raw.main_metadata); 10 | public final StringObservable Type = new StringObservable("xml"); 11 | 12 | public CodeViewModel() { 13 | super(); 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/cursor/BlobField.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.cursor; 2 | 3 | import android.database.Cursor; 4 | 5 | public class BlobField extends CursorField { 6 | public BlobField(int columnIndex) { 7 | super(byte[].class, columnIndex); 8 | } 9 | 10 | public BlobField(String columName) { 11 | super(byte[].class, columName); 12 | } 13 | 14 | @Override 15 | public void saveValue(Cursor cursor) { 16 | } 17 | 18 | @Override 19 | public byte[] returnValue(Cursor cursor) { 20 | return cursor.getBlob(mColumnIndex); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/cursor/LongField.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.cursor; 2 | 3 | import android.database.Cursor; 4 | 5 | public class LongField extends CursorField { 6 | 7 | public LongField(int columnIndex) { 8 | super(Long.class, columnIndex); 9 | } 10 | public LongField(String columnName) { 11 | super(Long.class, columnName); 12 | } 13 | 14 | @Override 15 | public void saveValue(Cursor cursor) { 16 | } 17 | 18 | @Override 19 | public Long returnValue(Cursor cursor) { 20 | return cursor.getLong(mColumnIndex); 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/list_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /plugin/AndroidBinding.Plugin.ABS/src/gueei/binding/plugin/abs/menu/MenuItemViemodel.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.plugin.abs.menu; 2 | 3 | import gueei.binding.Command; 4 | import gueei.binding.IObservable; 5 | import gueei.binding.IObservableCollection; 6 | 7 | public class MenuItemViemodel { 8 | public Command onClick; 9 | public IObservable title; 10 | public IObservable visible; 11 | public IObservable enabled; 12 | public IObservable checked; 13 | public IObservable icon; 14 | public IObservableCollection group; 15 | } 16 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/cursor/FloatField.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.cursor; 2 | 3 | import android.database.Cursor; 4 | 5 | public class FloatField extends CursorField { 6 | 7 | public FloatField(int columnIndex) { 8 | super(Float.class, columnIndex); 9 | } 10 | 11 | public FloatField(String columnName) { 12 | super(Float.class, columnName); 13 | } 14 | @Override 15 | public Float returnValue(Cursor cursor) { 16 | return cursor.getFloat(mColumnIndex); 17 | } 18 | 19 | @Override 20 | public void saveValue(Cursor cursor) { 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/dynamic_item_last.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/list_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/dynamic_item_last.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/master_template.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/src/com/gueei/demos/markupDemo/viewModels/SpinnerWithArraySource.java: -------------------------------------------------------------------------------- 1 | package com.gueei.demos.markupDemo.viewModels; 2 | 3 | import gueei.binding.collections.ArrayListObservable; 4 | 5 | public class SpinnerWithArraySource { 6 | 7 | public final ArrayListObservable ContinentNames = 8 | new ArrayListObservable(String.class); 9 | 10 | public SpinnerWithArraySource() { 11 | ContinentNames.setArray( 12 | new String[]{"Asia", "Africa", "Antarctica", "Australia", "Europe", "North America", "South America"}); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/master_template.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Utility/AndroidBinding.Gen/src/gueei/binding/gen/resources/activity.metadata.ics.xml.template: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 12 | 15 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/cursor/ShortField.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.cursor; 2 | 3 | import android.database.Cursor; 4 | 5 | public class ShortField extends CursorField { 6 | 7 | public ShortField(int columnIndex) { 8 | super(Short.class, columnIndex); 9 | } 10 | 11 | public ShortField(String columnName) { 12 | super(Short.class, columnName); 13 | } 14 | 15 | @Override 16 | public void saveValue(Cursor cursor) { 17 | } 18 | 19 | @Override 20 | public Short returnValue(Cursor cursor) { 21 | return cursor.getShort(mColumnIndex); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Core/AndroidBindingV30/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/demo_group_template.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout-v14/main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/demo_group_template.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/app/rootView/BindableRootView.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.app.rootView; 2 | 3 | import gueei.binding.widgets.BindableFrameLayout; 4 | import android.content.Context; 5 | 6 | /** 7 | * Default root view for the Activity 8 | * @author andy 9 | * 10 | */ 11 | public class BindableRootView extends BindableFrameLayout { 12 | 13 | public BindableRootView(Context context) { 14 | super(context); 15 | LayoutParams params = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); 16 | super.setLayoutParams(params); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/cursor/StringField.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.cursor; 2 | 3 | import android.database.Cursor; 4 | 5 | public class StringField extends CursorField { 6 | 7 | public StringField(int columnIndex) { 8 | super(String.class, columnIndex); 9 | } 10 | 11 | public StringField(String columnName) { 12 | super(String.class, columnName); 13 | } 14 | 15 | @Override 16 | public void saveValue(Cursor cursor) { 17 | } 18 | 19 | @Override 20 | public String returnValue(Cursor cursor) { 21 | return cursor.getString(mColumnIndex); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/code_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/email_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | AndroidBinding 2 | ============== 3 | 4 | MVVM for Android 5 | 6 | ## What's New 7 | 8 | * Pre Compiled version available on root directory 9 | * android-binding.gen.zip for activity/application template code generation 10 | 11 | ## Quick start 12 | 13 | * Download android-binding-version.jar and place under lib of your project 14 | * Unzip android-binding.gen.zip to root directory of your project 15 | * run the wizard.xml to generate application and activity codes 16 | 17 | ## Markup Demo 18 | 19 | * Under Demo/MarkupDemoICS folder 20 | * The best way to start learning the framework! -------------------------------------------------------------------------------- /plugin/AndroidBinding.Plugin.ABS.Sample/res/xml/mainactivity_metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 16 | 17 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/IObservableCollection.java: -------------------------------------------------------------------------------- 1 | package gueei.binding; 2 | 3 | 4 | 5 | @SuppressWarnings("rawtypes") 6 | public interface IObservableCollection extends IObservable{ 7 | void subscribe(CollectionObserver c); 8 | void unsubscribe(CollectionObserver c); 9 | void notifyCollectionChanged(CollectionChangedEventArg arg); 10 | T getItem(int position); 11 | long getItemId(int position); 12 | void onLoad(int position); 13 | Class getComponentType(); 14 | int size(); 15 | void setVisibleChildrenCount(Object setter, int total); 16 | } -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/cursor/IntegerField.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.cursor; 2 | 3 | import android.database.Cursor; 4 | 5 | public class IntegerField extends CursorField { 6 | 7 | public IntegerField(int columnIndex) { 8 | super(Integer.class, columnIndex); 9 | } 10 | 11 | public IntegerField(String columnName) { 12 | super(Integer.class, columnName); 13 | } 14 | 15 | @Override 16 | public void saveValue(Cursor cursor) { 17 | } 18 | 19 | @Override 20 | public Integer returnValue(Cursor cursor) { 21 | return cursor.getInt(mColumnIndex); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/listeners/OnFocusChangeListenerMulticast.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.listeners; 2 | 3 | import android.view.View; 4 | 5 | public class OnFocusChangeListenerMulticast extends ViewMulticastListener 6 | implements View.OnFocusChangeListener { 7 | 8 | @Override 9 | public void registerToView(View v) { 10 | v.setOnFocusChangeListener(this); 11 | } 12 | 13 | public void onFocusChange(View v, boolean hasFocus) { 14 | for(View.OnFocusChangeListener l : listeners){ 15 | l.onFocusChange(v, hasFocus); 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/observables/ArraySource.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.observables; 2 | 3 | import gueei.binding.Observable; 4 | 5 | @Deprecated 6 | public class ArraySource extends Observable { 7 | public ArraySource() { 8 | super(Object[].class); 9 | } 10 | 11 | public ArraySource(T[] value){ 12 | super(Object[].class, value); 13 | } 14 | 15 | @SuppressWarnings("unchecked") 16 | @Override 17 | public T[] get() { 18 | return (T[])super.get(); 19 | } 20 | 21 | public void setArray(T[] value){ 22 | this.set(value); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/arraylist_item2.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/code_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/email_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/arraylist_item1.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/arraylist_item2.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/arraylist_item1.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/arraylist_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/converters/TRUE.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.converters; 2 | 3 | import gueei.binding.Converter; 4 | import gueei.binding.IObservable; 5 | 6 | /** 7 | * Constant that always return true. Takes no argument 8 | * 9 | * @usage 10 | * 11 | * @return boolean 12 | */ 13 | public class TRUE extends Converter { 14 | 15 | public TRUE(IObservable[] dependents) { 16 | super(Boolean.class, dependents); 17 | } 18 | 19 | @Override 20 | public Boolean calculateValue(Object... args) throws Exception { 21 | return true; 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/utility/IModelReflector.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.utility; 2 | 3 | import gueei.binding.Command; 4 | import gueei.binding.IObservable; 5 | 6 | public interface IModelReflector { 7 | public abstract Command getCommandByName(String name, Object object) 8 | throws Exception; 9 | 10 | public abstract IObservable getObservableByName(String name, 11 | Object object) throws Exception; 12 | 13 | public abstract Object getValueByName(String name, Object object) 14 | throws Exception; 15 | 16 | public abstract Class getValueTypeByName(String name); 17 | } -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/arraylist_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/nccu_subitem.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/list_item2.xml: -------------------------------------------------------------------------------- 1 | 2 | 14 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/nccu_subitem.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/converters/FALSE.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.converters; 2 | 3 | import gueei.binding.Converter; 4 | import gueei.binding.IObservable; 5 | 6 | /** 7 | * Constant that always return false. Takes no argument 8 | * 9 | * @usage 10 | * 11 | * @return boolean 12 | */ 13 | public class FALSE extends Converter { 14 | 15 | public FALSE(IObservable[] dependents) { 16 | super(Boolean.class, dependents); 17 | } 18 | 19 | @Override 20 | public Boolean calculateValue(Object... args) throws Exception { 21 | return false; 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/list_item2.xml: -------------------------------------------------------------------------------- 1 | 2 | 14 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/menu/actionmodeexample_menu.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | 12 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/src/gueei/binding/markupDemoICS/Launch.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.markupDemoICS; 2 | 3 | import gueei.binding.markupDemoICS.viewModels.LaunchViewModel; 4 | import gueei.binding.plugin.abs.BindingABSActivity; 5 | import gueei.binding.v30.app.BindingActivityV30; 6 | import android.os.Bundle; 7 | 8 | public class Launch extends BindingABSActivity { 9 | @Override 10 | public void onCreate(Bundle savedInstanceState) { 11 | super.onCreate(savedInstanceState); 12 | LaunchViewModel vm = new LaunchViewModel(this); 13 | this.inflateAndBind(R.xml.main_metadata, vm); 14 | } 15 | } -------------------------------------------------------------------------------- /plugin/AndroidBinding.Plugin.ABS/bin/jarlist.cache: -------------------------------------------------------------------------------- 1 | # cache for current jar dependecy. DO NOT EDIT. 2 | # format is 3 | # Encoding is UTF-8 4 | 1354525842020 385685 48c94ae70fa65718b382098237806a5909bb096e C:\Users\andy\git\ActionBarSherlock\library\libs\android-support-v4.jar 5 | 1371689320328 385685 48c94ae70fa65718b382098237806a5909bb096e C:\Users\andy\git\AndroidBindingMaster\plugin\AndroidBinding.Plugin.ABS\libs\android-support-v4.jar 6 | 1371689320105 385685 48c94ae70fa65718b382098237806a5909bb096e C:\Users\andy\git\AndroidBindingMaster\Core\AndroidBindingV30\libs\android-support-v4.jar 7 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/music_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/converters/NULL.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.converters; 2 | 3 | import gueei.binding.Converter; 4 | import gueei.binding.IObservable; 5 | 6 | /** 7 | * Constant converter that always returns null 8 | * @usage 9 | * 10 | * @return null 11 | * 12 | * @author andy 13 | * 14 | */ 15 | public class NULL extends Converter { 16 | 17 | public NULL(IObservable[] dependents) { 18 | super(Object.class, dependents); 19 | } 20 | 21 | @Override 22 | public Object calculateValue(Object... args) throws Exception { 23 | return null; 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/contextmenu.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 15 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/music_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/contextmenu.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 15 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/utility/ICachedModelReflector.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.utility; 2 | 3 | import java.lang.reflect.Field; 4 | import java.util.HashMap; 5 | 6 | 7 | public interface ICachedModelReflector extends IModelReflector { 8 | 9 | public abstract HashMap getObservables(); 10 | 11 | public abstract HashMap getCommands(); 12 | 13 | public abstract HashMap getValues(); 14 | 15 | // TODO: andy i can't compile with this line 16 | /* 17 | public abstract Command getCommandByName(String name, T object) 18 | throws Exception; 19 | */ 20 | } -------------------------------------------------------------------------------- /Core/AndroidBindingV30/src/gueei/binding/v30/viewAttributes/adapterView/viewPager/PagerDataSetObserver.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.v30.viewAttributes.adapterView.viewPager; 2 | 3 | /** 4 | * Pager Adapter contains DataSetObserver, but it is marked "Internal". 5 | * This is created to route nested Pager event. 6 | * If you are creating your own PagerAdapter to use in Android Binding, it is 7 | * recommended to have this interface and call onDataSetChanged in your PagerAdapter implementation 8 | * @author andy 9 | * 10 | */ 11 | public interface PagerDataSetObserver { 12 | public void onDataSetChanged(); 13 | } 14 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/menu/photo_context_menu.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 9 | 13 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/bindabletablelayout_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 15 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/showdemo_xml.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 14 | -------------------------------------------------------------------------------- /Core/AndroidBinding/src/gueei/binding/observables/StringObservable.java: -------------------------------------------------------------------------------- 1 | package gueei.binding.observables; 2 | 3 | import gueei.binding.Observable; 4 | 5 | import java.util.Collection; 6 | 7 | 8 | public class StringObservable extends Observable { 9 | public StringObservable() { 10 | super(String.class); 11 | } 12 | 13 | public StringObservable(String value){ 14 | super(String.class, value); 15 | } 16 | 17 | @Override 18 | public void _setObject(Object newValue, 19 | Collection initiators) { 20 | if (newValue!=null) 21 | this.set(newValue.toString(), initiators); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/bindableframelayout_frame1.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/bindableframelayout_frame2.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/bindableframelayout_frame3.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/bindabletablelayout_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 15 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/showdemo_xml.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 14 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/simple_list_item_multiple_choice.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/bindableframelayout_frame1.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/bindableframelayout_frame2.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/bindableframelayout_frame3.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/javascript_code: -------------------------------------------------------------------------------- 1 | package gueei.binding.markupDemoICS.viewModels; 2 | 3 | import android.view.View; 4 | import gueei.binding.Command; 5 | import gueei.binding.observables.StringObservable; 6 | 7 | public class Javascript { 8 | public final StringObservable Script = 9 | new StringObservable(); 10 | 11 | public final StringObservable EvalScript = 12 | new StringObservable(); 13 | 14 | public final Command Execute = 15 | new Command(){ 16 | @Override 17 | public void Invoke(View view, Object... args) { 18 | EvalScript.set(Script.get()); 19 | } 20 | }; 21 | } 22 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/simple_list_item_multiple_choice.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/raw/bindabletablelayout_item_blue.xml: -------------------------------------------------------------------------------- 1 | 2 | 15 | -------------------------------------------------------------------------------- /Demo/MarkupDemoICS/res/layout/bindabletablelayout_item_blue.xml: -------------------------------------------------------------------------------- 1 | 2 | 15 | -------------------------------------------------------------------------------- /Test/AndroidBindingTest/res/layout/testbuttonactivity_layout.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 |