protected override void UpdateCaptionDisplay(View cell)
        {
            if (cell == null)
            {
                return;
            }

            TextView _caption;
            TextView _subCaption;
            View     _rawCheckboxView;

            DroidResources.DecodeBooleanElementLayout(Context, cell, out _caption, out _subCaption, out _rawCheckboxView);
            _caption.Text = Caption;

            if (_subCaption != null)
            {
                _subCaption.Text = SubCaption;
            }
        }
        protected override void UpdateCaptionDisplay(View cell)
        {
            if (cell == null)
            {
                return;
            }

            ImageView achivementImage;
            TextView  caption;
            TextView  description;
            TextView  percentageComplete;

            DroidResources.DecodeAchievementsElementLayout(Context, cell, out caption, out description,
                                                           out percentageComplete, out achivementImage);

            if (caption != null)
            {
                caption.Text = Caption;
            }
        }
Esempio n. 3
0
        public override View GetView(Context context, View convertView, ViewGroup parent)
        {
            View view = DroidResources.LoadAchievementsElementLayout(context, convertView, parent, LayoutId, out _caption, out _description, out _percentageComplete, out _achivementImage);

            if (view != null)
            {
                _caption.Text            = Caption;
                _description.Text        = Description;
                _percentageComplete.Text = PercentageComplete.ToString();
                if (AchievementImage != null)
                {
                    _achivementImage.SetImageBitmap(AchievementImage);
                }
            }
            else
            {
                Android.Util.Log.Error("AchievementElement", "GetView failed to load template view");
            }
            return(view);
        }
        protected virtual void UpdatePercentageCompleteDisplay(View cell)
        {
            if (cell == null)
            {
                return;
            }

            ImageView achivementImage;
            TextView  caption;
            TextView  description;
            TextView  percentageComplete;

            DroidResources.DecodeAchievementsElementLayout(Context, cell, out caption, out description,
                                                           out percentageComplete, out achivementImage);

            if (percentageComplete != null)
            {
                percentageComplete.Text = PercentageComplete.ToString(CultureInfo.InvariantCulture);
            }
        }
        protected override void UpdateDetailDisplay(View cell)
        {
            if (cell == null)
            {
                return;
            }

            TextView _caption;
            TextView _subCaption;
            View     _rawCheckboxView;

            DroidResources.DecodeBooleanElementLayout(Context, cell, out _caption, out _subCaption, out _rawCheckboxView);

            var _checkbox = (CheckBox)_rawCheckboxView;

            _checkbox.SetOnCheckedChangeListener(null);
            _checkbox.Checked = Value;
            _checkbox.SetOnCheckedChangeListener(this);
            _checkbox.Clickable = !ReadOnly;
        }
Esempio n. 6
0
        protected override View GetViewImpl(Context context, View convertView, ViewGroup parent)
        {
            View view = DroidResources.LoadFloatElementLayout(context, convertView, parent, LayoutName);

            if (view != null)
            {
                TextView  label;
                SeekBar   slider;
                ImageView left;
                ImageView right;
                DroidResources.DecodeFloatElementLayout(Context, view, out label, out slider, out left, out right);
                slider.SetOnSeekBarChangeListener(this);
            }
            else
            {
                Android.Util.Log.Error("FloatElement", "GetViewImpl failed to load template view");
            }

            return(view);
        }
Esempio n. 7
0
        public override void Selected()
        {
            if (CurrentAttachedCell == null)
            {
                // how did this happen?!
                return;
            }

            View     _rawToggleButton;
            TextView _caption;
            TextView _subCaption;

            DroidResources.DecodeBooleanElementLayout(Context, CurrentAttachedCell, out _caption, out _subCaption, out _rawToggleButton);
            var _toggleButton = _rawToggleButton as ToggleButton;

            if (_toggleButton != null)
            {
                _toggleButton.Toggle();
            }
        }
Esempio n. 8
0
        protected override void UpdateDetailDisplay(View cell)
        {
            if (cell == null)
            {
                return;
            }

            TextView  label;
            SeekBar   slider;
            ImageView left;
            ImageView right;

            DroidResources.DecodeFloatElementLayout(Context, cell, out label, out slider, out left, out right);
            if (left != null)
            {
                if (Left != null)
                {
                    left.SetImageBitmap(Left);
                }
                else
                {
                    left.Visibility = ViewStates.Gone;
                }
            }
            if (right != null)
            {
                if (Right != null)
                {
                    right.SetImageBitmap(Right);
                }
                else
                {
                    right.Visibility = ViewStates.Gone;
                }
            }
            if (slider != null)
            {
                slider.Max      = (int)((_maxValue - _minValue) * precision);
                slider.Progress = (int)((Value - _minValue) * precision);
            }
        }
        protected override void UpdateDetailDisplay(View cell)
        {
            if (cell == null)
            {
                return;
            }

            TextView label;
            TextView value;

            DroidResources.DecodeStringElementLayout(Context, CurrentAttachedCell, out label, out value);

            if (value != null)
            {
                value.Text = Format(Value);
                if (FontSize > 0)
                {
                    value.TextSize = FontSize;
                }
            }
        }
Esempio n. 10
0
        protected override void UpdateDetailDisplay(View cell)
        {
            if (cell == null)
            {
                return;
            }

            View     _rawToggleButton;
            TextView _caption;
            TextView _subCaption;

            DroidResources.DecodeBooleanElementLayout(Context, cell, out _caption, out _subCaption, out _rawToggleButton);
            var _toggleButton = _rawToggleButton as ToggleButton;

            if (_toggleButton != null)
            {
                _toggleButton.SetOnCheckedChangeListener(null);
                _toggleButton.Checked = Value;
                _toggleButton.SetOnCheckedChangeListener(this);

                if (TextOff != null)
                {
                    _toggleButton.TextOff = TextOff;
                    if (!Value)
                    {
                        _toggleButton.Text = TextOff;
                    }
                }

                if (TextOn != null)
                {
                    _toggleButton.TextOn = TextOn;
                    if (Value)
                    {
                        _toggleButton.Text = TextOn;
                    }
                }
            }
        }
Esempio n. 11
0
        protected override void OnViewModelSet()
        {
            base.OnViewModelSet();

            DroidResources.Initialize(typeof(Resource.Layout));
            SetContentView(Resource.Layout.View_CreateAccount);
            ViewGroup registerContainer = (ViewGroup)FindViewById <LinearLayout>(Resource.Id.registerContainer);

            SetDialog(registerContainer, 0);
            TextView lblTermsAndConditions = (TextView)FindViewById <TextView>(Resource.Id.lblTermsAndConditions);

            var ResourceAcklowledge     = GetString(Resource.String.TermsAndConditionsAcknowledgment);
            var ResourceAcklowledgeBold = GetString(Resource.String.TermsAndConditionsLabel);
            var textWithBold            = Html.FromHtml(ResourceAcklowledge.Replace(ResourceAcklowledgeBold, "<b>" + ResourceAcklowledgeBold + "</b>"));

            lblTermsAndConditions.SetText(textWithBold, TextView.BufferType.Spannable);

            var colorTheme    = DrawHelper.GetTextColorForBackground(Resources.GetColor(Resource.Color.login_color));
            var checkedIcon   = Resources.GetDrawable(Resource.Drawable.@checked_custom);
            var uncheckedIcon = Resources.GetDrawable(Resource.Drawable.@unchecked_custom);

            var list = new StateListDrawable();

            list.AddState(new int[] { Android.Resource.Attribute.StateChecked }, checkedIcon);
            list.AddState(new int[] { -Android.Resource.Attribute.StateChecked }, uncheckedIcon);
            list.AddState(new int[] { Android.Resource.Attribute.StatePressed }, checkedIcon);
            list.SetColorFilter(colorTheme, PorterDuff.Mode.Multiply);

            var checkBox = (CheckBox)FindViewById <CheckBox>(Resource.Id.cbTermsAndConditions);

            checkBox.SetButtonDrawable(list);
            checkBox.Invalidate();

            DrawHelper.SupportLoginTextColor(lblTermsAndConditions);
            DrawHelper.SupportLoginTextColor(FindViewById <Button>(Resource.Id.btnCancel));
            DrawHelper.SupportLoginTextColor(FindViewById <Button>(Resource.Id.btnCreate));
            DrawHelper.SupportLoginTextColor(FindViewById <TextView>(Resource.Id.lblTitle));
        }
Esempio n. 12
0
        protected override View GetViewImpl(Context context, View convertView, ViewGroup parent)
        {
#warning convertView is junk here?
            View view;
            if (_layoutId > 0)
            {
                view = DroidResources.LoadLayout(context, parent, _layoutId);
            }
            else
            {
                view = DroidResources.LoadLayout(context, parent, LayoutName);
            }

            if (view == null)
            {
                Log.Error("Android.Dialog", "ViewElement: Failed to load resource: " + LayoutName);
            }
            else if (Populate != null)
            {
                Populate(view);
            }
            return(view);
        }
Esempio n. 13
0
        protected override View GetViewImpl(Context context, View convertView, ViewGroup parent)
        {
            var view = DroidResources.LoadStringEntryLayout(context, convertView, parent, LayoutName);

            if (view != null)
            {
                view.FocusableInTouchMode = false;
                view.Focusable            = false;
                view.Clickable            = false;

                TextView label;
                EditText _entry;
                DroidResources.DecodeStringEntryLayout(context, view, out label, out _entry);

                _entry.FocusableInTouchMode = true;
                _entry.Focusable            = true;
                _entry.Clickable            = true;

                var helper = EntryElementHelper.EnsureTagged(_entry);
                helper.Owner = this;
            }

            return(view);
        }
        public override void Selected()
        {
            if (ReadOnly)
            {
                return;
            }

            if (CurrentAttachedCell == null)
            {
                // how on earth did this happen!
                return;
            }

            TextView _caption;
            TextView _subCaption;
            View     _rawCheckboxView;

            DroidResources.DecodeBooleanElementLayout(Context, CurrentAttachedCell, out _caption, out _subCaption,
                                                      out _rawCheckboxView);

            var _checkbox = (CheckBox)_rawCheckboxView;

            _checkbox.Toggle();
        }
        protected virtual void UpdateDescriptionDisplay(View cell)
        {
            if (cell == null)
            {
                return;
            }

            ImageView achivementImage;
            TextView  caption;
            TextView  description;
            TextView  percentageComplete;

            DroidResources.DecodeAchievementsElementLayout(Context, cell, out caption, out description,
                                                           out percentageComplete, out achivementImage);

            // TODO - this is slow for things which don't need complete rebinding...
            caption.Text            = Caption;
            description.Text        = Description;
            percentageComplete.Text = PercentageComplete.ToString(CultureInfo.InvariantCulture);
            if (AchievementImage != null)
            {
                achivementImage.SetImageBitmap(AchievementImage);
            }
        }
Esempio n. 16
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            DroidResources.Initialise(typeof(Resource.Layout));
            var parser = new DroidElementBuilder();

            var setter = new ExampleActionPropertySetter();

            setter.Actions["ShowDialogActivity"]         = (sender, args) => StartNew();
            setter.Actions["ShowDialogListViewActivity"] = (sender, args) => ClickList();
            setter.Actions["ElementTest"]          = (sender, args) => ClickElementTest();
            parser.CustomPropertySetters["Action"] = setter;
            var description = Newtonsoft.Json.JsonConvert.DeserializeObject <ElementDescription>(JsonText);

            Root = parser.Build(description) as RootElement;

            /*
             * Root = new RootElement("Test Root Elem")
             * {
             *  new Section
             *  {
             *      new StringElement("Label", "Only Element in a Blank Section"),
             *  },
             *  new Section("Test Header", "Test Footer")
             *  {
             *      new ButtonElement("DialogActivity", (o, e) => StartNew()),
             *      new StringElement("DialogListView Activity")
             *      {
             *          Click = (o, e) => ClickList(),
             *          LayoutName = "dialog_labelfieldright"
             *      },
             *      new BooleanElement("Push my button", true),
             *      new BooleanElement("Push this too", false),
             *      new StringElement("Text label", "Click for EntryElement Test")
             *      {
             *          Click = (o, e) => ClickElementTest(),
             *      },
             *  },
             *  new Section("Part II")
             *  {
             *      new StringElement("This is the String Element", "The Value"),
             *      new CheckboxElement("Check this out", true),
             *      new EntryElement("Username", string.Empty){ Hint = "Enter Login", },
             *      new EntryElement("Password", string.Empty) {
             *          Hint = "Enter Password",
             *          Password = true,
             *      },
             *  },
             *  new Section("Group", new ViewElement(Android.Resource.Layout.SimpleListItem1)
             *      { Populate = view => { view.FindViewById<TextView>(Android.Resource.Id.Text1).Text = "Custom footer view"; }, })
             *  {
             *      new RootElement("Radio Group", new Android.Dialog.RadioGroup("dessert", 1))
             *      {
             *          new Section
             *          {
             *              new RadioElement("Ice Cream Sandwich", "dessert"),
             *              new RadioElement("Honeycomb", "dessert"),
             *              new RadioElement("Gingerbread", "dessert"),
             *          },
             *      },
             *  }
             * };
             */

            ValueChanged += root_ValueChanged;
        }
Esempio n. 17
0
        protected override View GetViewImpl(Context context, ViewGroup parent)
        {
            View view = DroidResources.LoadBooleanElementLayout(context, parent, LayoutName);

            return(view);
        }
Esempio n. 18
0
 protected virtual void InitializeDialogBinding(Type resourceLayoutType)
 {
     DroidResources.Initialize(resourceLayoutType /*typeof(Resource.Layout)*/);
 }
Esempio n. 19
0
 private int GetTemplateId()
 {
     return(DroidResources.FindResourceId("listitem_" + this._templateName));
 }
 protected override View GetViewImpl(Context context, ViewGroup parent)
 {
     return(DroidResources.LoadStringElementLayout(context, parent, LayoutName));
 }
Esempio n. 21
0
        protected override void UpdateDetailDisplay(View cell)
        {
            if (cell == null)
            {
                return;
            }

            TextView label;
            EditText _entry;

            DroidResources.DecodeStringEntryLayout(Context, cell, out label, out _entry);

            if (_entry == null)
            {
                return;
            }

            if (_entry.Text != Value)
            {
                _entry.Text = Value;
            }
            if (_entry.Hint != Hint)
            {
                _entry.Hint = Hint;
            }

            var inputType = KeyboardType.InputTypesFromUIKeyboardType();

            if (Password)
            {
                inputType |= InputTypes.TextVariationPassword;
            }

            if (IsEmail)
            {
                inputType |= AndroidDialogEnumHelper.KeyboardTypeMap[UIKeyboardType.EmailAddress];
            }

            if (Numeric)
            {
                inputType |= AndroidDialogEnumHelper.KeyboardTypeMap[UIKeyboardType.DecimalPad];
            }

            if (NoAutoCorrect)
            {
                inputType |= AndroidDialogEnumHelper.KeyboardTypeMap[UIKeyboardType.NoAutoCorrect];
            }

            if (Lines > 1)
            {
                inputType |= InputTypes.TextFlagMultiLine;
                if (_entry.LineCount != Lines)
                {
                    _entry.SetLines(Lines);
                }
            }
            else if (Send != null)
            {
                if (_entry.ImeOptions != ImeAction.Go)
                {
                    _entry.ImeOptions = ImeAction.Go;
                    _entry.SetImeActionLabel("Go", ImeAction.Go);
                }
            }
            else
            {
                var imeOptions = ReturnKeyType.ImeActionFromUIReturnKeyType();
                if (_entry.ImeOptions != imeOptions)
                {
                    _entry.ImeOptions = imeOptions;
                }
            }
            if (_entry.InputType != inputType)
            {
                _entry.InputType = inputType;
            }

            //android can't seem to find the correct NextFocusDown if items are added dynamically, we'll catch the next/previous ourselves
            _entry.EditorAction += (sender, args) =>
            {
                if (args.ActionId == ImeAction.Next ||
                    (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.Honeycomb &&
                     args.ActionId == ImeAction.Previous))
                {
                    ViewGroup   group       = _entry.Parent as ViewGroup;
                    IViewParent currentLoop = _entry.Parent;
                    while (currentLoop != null)
                    {
                        currentLoop = currentLoop.Parent;
                        if (currentLoop is ViewGroup)
                        {
                            group = (ViewGroup)currentLoop;
                        }
                    }
                    var focus = FocusFinder.Instance.FindNextFocus(group, _entry, args.ActionId == ImeAction.Next ? FocusSearchDirection.Down : FocusSearchDirection.Up);
                    if (focus != null)
                    {
                        focus.RequestFocus();
                        focus.RequestFocusFromTouch();
                    }
                }
            };
        }