/// <include file='doc\WmlTextViewAdapter.uex' path='docs/doc[@for="WmlTextViewAdapter.Render"]/*' /> public override void Render(WmlMobileTextWriter writer) { writer.EnterLayout(Style); int beginElement = Control.FirstVisibleElementIndex; int beginOffset = Control.FirstVisibleElementOffset; int endElement = Control.LastVisibleElementIndex; int endOffset = Control.LastVisibleElementOffset; for (int i = beginElement; i <= endElement; i++) { int begin = (i == beginElement) ? beginOffset : 0; int end; if (i == endElement) { if (endOffset <= begin) { break; } end = endOffset; } else { end = -1; } RenderElement(writer, i, begin, end); } writer.RenderText(String.Empty, true); writer.ExitLayout(Style); }
public override void Render(WmlMobileTextWriter writer) { writer.EnterLayout(Style); int beginElement = Control.FirstVisibleElementIndex; int beginOffset = Control.FirstVisibleElementOffset; int endElement = Control.LastVisibleElementIndex; int endOffset = Control.LastVisibleElementOffset; for (int i = beginElement; i <= endElement; i++) { int begin = (i == beginElement) ? beginOffset : 0; int end; if (i == endElement) { if (endOffset <= begin) { break; } end = endOffset; } else { end = -1; } RenderElement(writer, i, begin, end); } writer.RenderText("", true); writer.ExitLayout(Style); }
public override void Render(WmlMobileTextWriter writer) { String source = Control.ImageUrl; String target = Control.NavigateUrl; String text = Control.AlternateText; bool breakAfterContents = Control.BreakAfter; String softkeyLabel = Control.SoftkeyLabel; bool implicitSoftkeyLabel = false; if (softkeyLabel.Length == 0) { implicitSoftkeyLabel = true; softkeyLabel = text; } writer.EnterLayout(Style); if (target != String.Empty) { RenderBeginLink(writer, target, softkeyLabel, implicitSoftkeyLabel, true); breakAfterContents = false; } if (source == String.Empty) { // Just write the alternate as text writer.RenderText(text, breakAfterContents); } else { String localSource; if (source.StartsWith(Constants.SymbolProtocol)) { // src is required according to WML localSource = source.Substring(Constants.SymbolProtocol.Length); source = String.Empty; } else { localSource = null; // AUI 3652 source = Control.ResolveUrl(source); writer.AddResource(source); } writer.RenderImage(source, localSource, text, breakAfterContents); } if (target != String.Empty) { RenderEndLink(writer, target, Control.BreakAfter); } writer.ExitLayout(Style); }
/// <include file='doc\WmlImageAdapter.uex' path='docs/doc[@for="WmlImageAdapter.Render"]/*' /> public override void Render(WmlMobileTextWriter writer) { String source = Control.ImageUrl; String target = Control.NavigateUrl; String text = Control.AlternateText; bool breakAfterContents = Control.BreakAfter; String softkeyLabel = Control.SoftkeyLabel; bool implicitSoftkeyLabel = false; if (softkeyLabel.Length == 0) { implicitSoftkeyLabel = true; softkeyLabel = text; } writer.EnterLayout(Style); if (!String.IsNullOrEmpty(target)) { RenderBeginLink(writer, target, softkeyLabel, implicitSoftkeyLabel, true); breakAfterContents = false; } if (String.IsNullOrEmpty(source)) { // Just write the alternate as text writer.RenderText(text, breakAfterContents); } else { String localSource; if (source.StartsWith(Constants.SymbolProtocol, StringComparison.Ordinal)) { // src is required according to WML localSource = source.Substring(Constants.SymbolProtocol.Length); source = String.Empty; } else { localSource = null; // AUI 3652 source = Control.ResolveUrl(source); writer.AddResource(source); } writer.RenderImage(source, localSource, text, breakAfterContents); } if (!String.IsNullOrEmpty(target)) { RenderEndLink(writer, target, Control.BreakAfter); } writer.ExitLayout(Style); }
public override void Render(WmlMobileTextWriter writer) { MobileListItemCollection items = Control.Items; int count = items.Count; if (count == 0) { return; } writer.EnterLayout(Style); bool crossPagePost = Control.Form.Action != String.Empty; if (crossPagePost) { if (_ivalue != null) { String formVariable = ClientPrefix + Control.ClientID; writer.AddFormVariable(formVariable, _ivalue, false); // does not render _ivalue if null or form variables written. writer.RenderBeginSelect(Control.ClientID, formVariable, _ivalue, Control.Title, Control.IsMultiSelect); } else // _ivalue == null { writer.RenderBeginSelect(Control.ClientID, null, null, Control.Title, Control.IsMultiSelect); } } else // !crossPagePost { if (_ivalue != null) { writer.AddFormVariable(Control.ClientID, _ivalue, false); } // does not render _ivalue if null or form variables written. writer.RenderBeginSelect(null, Control.ClientID, _ivalue, Control.Title, Control.IsMultiSelect); } foreach (MobileListItem item in items) { if (crossPagePost) { writer.RenderSelectOption(item.Text, item.Value); } else { writer.RenderSelectOption(item.Text); } } writer.RenderEndSelect(Control.BreakAfter); writer.ExitLayout(Style); }
public override void Render(WmlMobileTextWriter writer) { if (Control.Content != null) { writer.BeginCustomMarkup(); Control.Content.RenderControl(writer); writer.EndCustomMarkup(); } else { writer.EnterLayout(Style); RenderChildren(writer); writer.ExitLayout(Style, Control.BreakAfter); } }
/// <include file='doc\WmlPanelAdapter.uex' path='docs/doc[@for="WmlPanelAdapter.Render"]/*' /> public override void Render(WmlMobileTextWriter writer) { if (Control.Content != null) { writer.BeginCustomMarkup(); Control.Content.RenderControl(writer); writer.EndCustomMarkup(); } else { writer.EnterLayout(Style); RenderChildren(writer); writer.ExitLayout(Style, Control.BreakAfter); } }
public override void Render(WmlMobileTextWriter writer) { String value = Control.Text; bool requiresRandomID = RequiresRandomID(); writer.EnterLayout(Style); if (Control.Password) { value = String.Empty; } if (!PageAdapter.RequiresValueAttributeInInputTag()) { writer.AddFormVariable(Control.ClientID, value, requiresRandomID); } else { // This is to make sure an id is determined in the first // pass, and this is done in AddFormVariable as well. writer.MapClientIDToShortName(Control.ClientID, requiresRandomID); } String format = ((IAttributeAccessor)Control).GetAttribute("wmlFormat"); if (format == null || format == String.Empty) { if (Control.Numeric) { format = "*N"; } else { format = null; } } writer.RenderTextBox(Control.ClientID, value, format, Control.Title, Control.Password, Control.Size, Control.MaxLength, requiresRandomID, Control.BreakAfter); writer.ExitLayout(Style); }
/// <include file='doc\WmlTextBoxAdapter.uex' path='docs/doc[@for="WmlTextBoxAdapter.Render"]/*' /> public override void Render(WmlMobileTextWriter writer) { String value = Control.Text; bool requiresRandomID = RequiresRandomID(); writer.EnterLayout(Style); if (Control.Password) { value = String.Empty; } if (!PageAdapter.RequiresValueAttributeInInputTag()) { writer.AddFormVariable(Control.ClientID, value, requiresRandomID); } else { // This is to make sure an id is determined in the first // pass, and this is done in AddFormVariable as well. writer.MapClientIDToShortName(Control.ClientID, requiresRandomID); } String format = ((IAttributeAccessor)Control).GetAttribute("wmlFormat"); if (String.IsNullOrEmpty(format)) { if (Control.Numeric) { format = "*N"; } else { format = null; } } writer.RenderTextBox(Control.ClientID, value, format, Control.Title, Control.Password, Control.Size, Control.MaxLength, requiresRandomID, Control.BreakAfter); writer.ExitLayout(Style); }
/// <include file='doc\WmlSelectionListAdapter.uex' path='docs/doc[@for="WmlSelectionListAdapter.Render"]/*' /> public override void Render(WmlMobileTextWriter writer) { MobileListItemCollection items = Control.Items; int count = items.Count; if (count == 0) { return; } writer.EnterLayout(Style); bool crossPagePost = !String.IsNullOrEmpty(Control.Form.Action); if (crossPagePost) { if (_ivalue != null) { String formVariable = ClientPrefix + Control.ClientID; writer.AddFormVariable (formVariable, _ivalue, false); // does not render _ivalue if null or form variables written. writer.RenderBeginSelect(Control.ClientID, formVariable, _ivalue, Control.Title, Control.IsMultiSelect); } else // _ivalue == null { writer.RenderBeginSelect(Control.ClientID, null, null, Control.Title, Control.IsMultiSelect); } } else // !crossPagePost { if (_ivalue != null) { writer.AddFormVariable (Control.ClientID, _ivalue, false); } // does not render _ivalue if null or form variables written. writer.RenderBeginSelect(null, Control.ClientID, _ivalue, Control.Title, Control.IsMultiSelect); } foreach (MobileListItem item in items) { if (crossPagePost) { writer.RenderSelectOption(item.Text, item.Value); } else { writer.RenderSelectOption(item.Text); } } writer.RenderEndSelect(Control.BreakAfter); writer.ExitLayout(Style); }
/// <include file='doc\WmlObjectListAdapter.uex' path='docs/doc[@for="WmlObjectListAdapter.RenderItemsList"]/*' /> protected virtual void RenderItemsList(WmlMobileTextWriter writer) { bool rendersAcceptsInline = Device.RendersWmlDoAcceptsInline; bool rendersSelectsAsMenuCards = Device.RendersWmlSelectsAsMenuCards; bool rendersBreaksAfterAnchor = Device.RendersBreaksAfterWmlAnchor; int pageStart = Control.FirstVisibleItemIndex; int pageSize = Control.VisibleItemCount; ObjectListItemCollection items = Control.Items; if (pageSize == 0 || items.Count == 0) { return; } bool hasDefaultCommand = HasDefaultCommand(); bool onlyHasDefaultCommand = OnlyHasDefaultCommand(); bool requiresSecondScreen = HasItemDetails() || (!onlyHasDefaultCommand && HasCommands()); bool itemRequiresHyperlink = requiresSecondScreen || hasDefaultCommand; writer.EnterLayout(Style); int[] tableFieldIndices = null; if (ShouldRenderAsTable() && (tableFieldIndices = Control.TableFieldIndices).Length != 0) { writer.BeginCustomMarkup(); int fieldCount = tableFieldIndices.Length; writer.Write("<table columns=\""); writer.Write(fieldCount.ToString(CultureInfo.InvariantCulture)); writer.WriteLine("\">"); if (ShouldRenderTableHeaders()) { writer.Write("<tr>"); foreach (int fieldIndex in tableFieldIndices) { writer.Write("<td>"); writer.RenderText(Control.AllFields[fieldIndex].Title); writer.Write("</td>"); } writer.WriteLine("</tr>"); } for (int i = 0; i < pageSize; i++) { ObjectListItem item = items[pageStart + i]; writer.Write("<tr>"); for (int field = 0; field < fieldCount; field++) { writer.Write("<td>"); if (field == 0 && itemRequiresHyperlink) { RenderPostBackEvent(writer, requiresSecondScreen ? String.Format(CultureInfo.InvariantCulture, _showMoreFormatAnchor, item.Index) : item.Index.ToString(CultureInfo.InvariantCulture), GetDefaultLabel(GoLabel), false, item[tableFieldIndices[0]], false, WmlPostFieldType.Raw); } else { writer.RenderText(item[tableFieldIndices[field]]); } writer.Write("</td>"); } writer.WriteLine("</tr>"); } writer.WriteLine("</table>"); writer.EndCustomMarkup(); } else { int labelFieldIndex = Control.LabelFieldIndex; ObjectListField labelField = Control.AllFields[labelFieldIndex]; writer.EnterFormat(Style); for (int i = 0; i < pageSize; i++) { ObjectListItem item = items[pageStart + i]; if (itemRequiresHyperlink) { RenderPostBackEvent(writer, requiresSecondScreen ? String.Format(CultureInfo.InvariantCulture, _showMoreFormatAnchor, item.Index) : item.Index.ToString(CultureInfo.InvariantCulture), GetDefaultLabel(GoLabel), false, item[labelFieldIndex], true, WmlPostFieldType.Raw); } else { writer.RenderText(item[labelFieldIndex], true); } } writer.ExitFormat(Style); } writer.ExitLayout(Style); }
public override void Render(WmlMobileTextWriter writer) { String formsAuthCookieName = FormsAuthentication.FormsCookieName; if (!Device.SupportsRedirectWithCookie) { if (formsAuthCookieName != String.Empty) { HttpContext.Current.Response.Cookies.Remove(formsAuthCookieName); } } writer.BeginForm(Control); if (Page.Adapter.PersistCookielessData && Device.CanRenderOneventAndPrevElementsTogether && formsAuthCookieName != null && formsAuthCookieName != String.Empty && Control == Page.ActiveForm) { IDictionary dictionary = PageAdapter.CookielessDataDictionary; if (dictionary != null) { String value = (String)dictionary[formsAuthCookieName]; if ((value != null) && (value != String.Empty)) { writer.AddFormVariable("__facn", value, false); } } } MobileControl secondaryUIControl = SecondaryUIControl as MobileControl; writer.EnterLayout(Style); if (secondaryUIControl != null && secondaryUIControl.Form == Control) { SetControlPageRecursive(secondaryUIControl, -1); secondaryUIControl.RenderControl(writer); } else { if (Control.HasControls()) { Panel header = Control.Header; Panel footer = Control.Footer; if (header != null) { writer.BeginCustomMarkup(); header.RenderControl(writer); writer.EndCustomMarkup(); } foreach (Control control in Control.Controls) { if (control != header && control != footer) { control.RenderControl(writer); } } RenderPager(writer); if (footer != null) { writer.BeginCustomMarkup(); footer.RenderControl(writer); writer.EndCustomMarkup(); } } else { RenderPager(writer); } } writer.ExitLayout(Style); writer.EndForm(); }
public override void Render(WmlMobileTextWriter writer) { Style st = new Style(); st.Wrapping = (Wrapping) Style[Style.WrappingKey, true]; st.Alignment = (Alignment) Style[Style.AlignmentKey, true]; writer.EnterLayout(st); if (_menu.Visible) { _menu.RenderControl(writer); } else { ((Control) Control.ActivePane).RenderControl(writer); } writer.ExitLayout(st); }