private void ShowModalPreviewDialog(int itemId) { isPreview = true; ProgressBar pb = null; ImageButton ib = null; ModalPreviewDialog = new Dialog(this, Resource.Style.lightbox_dialog); if (packType == LOLCodeLibrary.GenericEnumsContentPackType.Emoticon) { ModalPreviewDialog.SetContentView(Resource.Layout.ModalPreviewGIFDialog); if (wowZapp.LaffOutOut.Singleton.resizeFonts) { layouts [0] = ((LinearLayout)ModalPreviewDialog.FindViewById(Resource.Id.linearLayout1)); layouts [1] = ((LinearLayout)ModalPreviewDialog.FindViewById(Resource.Id.linearLayout2)); layouts [3] = ((LinearLayout)ModalPreviewDialog.FindViewById(Resource.Id.linearLayout3)); layouts [2] = ((LinearLayout)ModalPreviewDialog.FindViewById(Resource.Id.linearLayout4)); previewWebImage = ((WebView)ModalPreviewDialog.FindViewById(Resource.Id.webPreview)); } ((WebView)ModalPreviewDialog.FindViewById(Resource.Id.webPreview)).VerticalScrollBarEnabled = false; ((WebView)ModalPreviewDialog.FindViewById(Resource.Id.webPreview)).HorizontalScrollBarEnabled = false; ((WebView)ModalPreviewDialog.FindViewById(Resource.Id.webPreview)).LoadDataWithBaseURL(null, "<body style=\"margin:0;padding:0;background:#8e8f8f;\"><div style=\"margin:10px;\">Loading...</div></body>", "text/html", "UTF-8", null); LOLConnectClient connect = new LOLConnectClient(LOLConstants.DefaultHttpBinding, LOLConstants.LOLConnectEndpoint); connect.ContentPackItemGetDataCompleted += new EventHandler<ContentPackItemGetDataCompletedEventArgs>(connect_ContentPackItemGetDataCompleted); connect.ContentPackItemGetDataAsync(result [itemId].ContentPackItemID, ContentPackItem.ItemSize.Small, AndroidData.CurrentUser.AccountID, new Guid(AndroidData.ServiceAuthToken)); } else { ModalPreviewDialog.SetContentView(Resource.Layout.ModalPreviewDialog); pb = ((ProgressBar)ModalPreviewDialog.FindViewById(Resource.Id.timerBar)); ib = ((ImageButton)ModalPreviewDialog.FindViewById(Resource.Id.playButton)); if (packType != LOLCodeLibrary.GenericEnumsContentPackType.Comicon && packType != LOLCodeLibrary.GenericEnumsContentPackType.SoundFX) pb.Visibility = ib.Visibility = ViewStates.Invisible; else ib.Click += delegate { playAudio(pb, packType); }; if (wowZapp.LaffOutOut.Singleton.resizeFonts) { layouts [0] = ((LinearLayout)ModalPreviewDialog.FindViewById(Resource.Id.linearLayout1)); layouts [1] = ((LinearLayout)ModalPreviewDialog.FindViewById(Resource.Id.linearLayout2)); layouts [3] = ((LinearLayout)ModalPreviewDialog.FindViewById(Resource.Id.linearLayout3)); layouts [2] = ((LinearLayout)ModalPreviewDialog.FindViewById(Resource.Id.linearLayout4)); previewImage = ((ImageView)ModalPreviewDialog.FindViewById(Resource.Id.imgItemPic)); } using (MemoryStream stream = new MemoryStream (result [itemId].ContentPackItemIcon)) { using (Android.Graphics.Drawables.Drawable draw = Android.Graphics.Drawables.Drawable.CreateFromStream (stream, "Profile")) { ((ImageView)ModalPreviewDialog.FindViewById(Resource.Id.imgItemPic)).SetImageDrawable(draw); } } } ((TextView)ModalPreviewDialog.FindViewById(Resource.Id.txtItemTitle)).Text = result [itemId].ContentItemTitle; ((Button)ModalPreviewDialog.FindViewById(Resource.Id.btnAdd)).Click += delegate { if (!isAnimation) { MessageStep msgStep = new MessageStep(); switch (packType) { case LOLCodeLibrary.GenericEnumsContentPackType.Comicon: msgStep.StepType = MessageStep.StepTypes.Comicon; break; case LOLCodeLibrary.GenericEnumsContentPackType.Comix: msgStep.StepType = MessageStep.StepTypes.Comix; break; case LOLCodeLibrary.GenericEnumsContentPackType.Emoticon: msgStep.StepType = MessageStep.StepTypes.Emoticon; break; case LOLCodeLibrary.GenericEnumsContentPackType.SoundFX: msgStep.StepType = MessageStep.StepTypes.SoundFX; break; } ComposeMessageMainUtil.contentPackID [currentStep] = msgStep.ContentPackItemID = ContentPackItemsUtil.contentPackItemID = result [itemId].ContentPackItemID; if (currentStep > ComposeMessageMainUtil.msgSteps.Count) { msgStep.StepNumber = ComposeMessageMainUtil.msgSteps.Count + 1; ComposeMessageMainUtil.msgSteps.Add(msgStep); } else { msgStep.StepNumber = currentStep; ComposeMessageMainUtil.msgSteps [currentStep - 1] = msgStep; } ContentPackItemsUtil.content = result [itemId].ContentPackItemIcon; if (currentStep == 1) { DismissModalPreviewDialog(); isSet = true; sendBack(); } else { DismissModalPreviewDialog(); isSet = true; isPreview = false; sendBack(); } } else { DismissModalPreviewDialog(); isSet = true; sendBack(); } }; ((Button)ModalPreviewDialog.FindViewById(Resource.Id.btnCancel)).Click += delegate { DismissModalPreviewDialog(); }; ModalPreviewDialog.Show(); if (packType == LOLCodeLibrary.GenericEnumsContentPackType.Comicon || packType == LOLCodeLibrary.GenericEnumsContentPackType.SoundFX) { LOLConnectClient connect = new LOLConnectClient(LOLConstants.DefaultHttpBinding, LOLConstants.LOLConnectEndpoint); connect.ContentPackItemGetDataCompleted += new EventHandler<ContentPackItemGetDataCompletedEventArgs>(connect_ContentPackItemGetDataCompleted); connect.ContentPackItemGetDataAsync(result [itemId].ContentPackItemID, ContentPackItem.ItemSize.Small, AndroidData.CurrentUser.AccountID, new Guid(AndroidData.ServiceAuthToken)); } }