package gueei.binding.v30.app; import gueei.binding.AttributeBinder; import gueei.binding.Binder; import gueei.binding.IObservableCollection; import gueei.binding.Binder.InflateResult; import gueei.binding.menu.MenuItemViemodel; import gueei.binding.v30.widget.PopupMenuBinderV30; import android.app.Dialog; import android.content.Context; import android.view.View; import android.widget.PopupMenu; public class BindingWidgetV30 { public static PopupMenu createAndBindPopupMenu(View view, int menuId, Object menuViewModel) { PopupMenu popup = new PopupMenu(view.getContext(), view); PopupMenuBinderV30 menuBinder = new PopupMenuBinderV30(); menuBinder.createAndBindPopupMenu(view, popup, menuId, menuViewModel); return popup; } public static PopupMenu createAndBindPopupMenu(View view, IObservableCollection<MenuItemViemodel> items) { PopupMenu popup = new PopupMenu(view.getContext(), view); PopupMenuBinderV30 menuBinder = new PopupMenuBinderV30(); menuBinder.bindPopupMenu(popup, items); return popup; } public static Dialog createAndBindDialog(Context context, int layoutId, Object contentViewModel) { return createAndBindDialog(context, 0, layoutId, contentViewModel); } public static Dialog createAndBindDialog(Context context, int theme, int layoutId, Object contentViewModel) { Dialog dialog = new Dialog(context, theme); InflateResult result = Binder.inflateView(context, layoutId, null, false); dialog.setContentView(result.rootView); for(View v: result.processedViews){ AttributeBinder.getInstance().bindView(context, v, contentViewModel); } return dialog; } }