protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); SetContentView(Resource.Layout.ComposeMessageMain); readOnly = base.Intent.GetBooleanExtra("readonly", false); dbm = wowZapp.LaffOutOut.Singleton.dbm; mmg = wowZapp.LaffOutOut.Singleton.mmg; Guid profPic = Guid.Empty; UserDB user = null; ImageView btns = FindViewById<ImageView>(Resource.Id.imgNewLoginHeader); TextView header = FindViewById<TextView>(Resource.Id.txtFirstScreenHeader); RelativeLayout relLayout = FindViewById<RelativeLayout>(Resource.Id.relativeLayout1); ImageHelper.setupTopPanel(btns, header, relLayout, header.Context); context = header.Context; Header.headertext = Application.Context.Resources.GetString(Resource.String.messageCreateMessageTitle); Header.fontsize = 36f; ImageHelper.fontSizeInfo(header.Context); header.SetTextSize(Android.Util.ComplexUnitType.Dip, Header.fontsize); header.Text = Header.headertext; imgProfilePic = FindViewById<ImageView>(Resource.Id.imgProfilePic); imgProfilePic.SetBackgroundResource(Resource.Drawable.emptybackground); hasMoved = regenerate = false; this.thumbImageWidth = (int)ImageHelper.convertDpToPixel(80f, context); this.thumbImageHeight = (int)ImageHelper.convertDpToPixel(100f, context); btnSend = FindViewById<Button>(Resource.Id.btnSend); btnBack = FindViewById<ImageButton>(Resource.Id.btnBack); btnBack.Tag = 0; btnHome = FindViewById<ImageButton>(Resource.Id.btnHome); btnHome.Tag = 1; btnPlay = FindViewById<ImageView>(Resource.Id.imgPlay); btnPlay.Click += new EventHandler(btnPlay_Click); txtFullname = FindViewById<TextView>(Resource.Id.txtAuthorName); txtMessage = FindViewById<TextView>(Resource.Id.txtMainMessage); LinearLayout bottom = FindViewById<LinearLayout>(Resource.Id.bottomHolder); ImageButton[] buttons = new ImageButton[2]; buttons [0] = btnBack; buttons [1] = btnHome; ImageHelper.setupButtonsPosition(buttons, bottom, context); if (ComposeMessageMainUtil.contentPackID == null) ComposeMessageMainUtil.contentPackID = new int[7]; for (int i = 0; i < 6; ++i) ComposeMessageMainUtil.contentPackID [i] = -1; txtMessage.Click += delegate { int n = 0, t = -1; for (n = 0; n < ComposeMessageMainUtil.currentPosition.Length; ++n) { if (ComposeMessageMainUtil.currentPosition [n] == 0) { t = n; break; } } if (n == ComposeMessageMainUtil.currentPosition.Length) { for (n = 0; n < ComposeMessageMainUtil.currentPosition.Length; ++n) { if (ComposeMessageMainUtil.msgSteps [n].StepType == MessageStep.StepTypes.Text) { if (ComposeMessageMainUtil.msgSteps [n].MessageText == txtMessage.Text) { t = n; break; } } } if (t == -1) RunOnUiThread(() => Toast.MakeText(context, Application.Context.GetString(Resource.String.errorNoSpaceForText), ToastLength.Short).Show()); } else { RunOnUiThread(delegate { Intent it = new Intent(this, typeof(ComposeTextMessageActivity)); it.PutExtra("text", txtMessage.Text != Application.Context.Resources.GetString(Resource.String.composeTextMessagelblMessage) ? ComposeMessageMainUtil.msgSteps [t].MessageText : string.Empty); it.PutExtra("CurrentStep", base.Intent.GetIntExtra("CurrentStep", 1)); StartActivity(it); }); } }; imgSteps = new ImageView[6]; imgSets = new bool[6]; imgSteps [0] = FindViewById<ImageView>(Resource.Id.imgStep1); imgSteps [0].Tag = 0; imgSteps [1] = FindViewById<ImageView>(Resource.Id.imgStep2); imgSteps [1].Tag = 1; imgSteps [2] = FindViewById<ImageView>(Resource.Id.imgStep3); imgSteps [2].Tag = 2; imgSteps [3] = FindViewById<ImageView>(Resource.Id.imgStep4); imgSteps [3].Tag = 3; imgSteps [4] = FindViewById<ImageView>(Resource.Id.imgStep5); imgSteps [4].Tag = 4; imgSteps [5] = FindViewById<ImageView>(Resource.Id.imgStep6); imgSteps [5].Tag = 5; for (int z = 0; z < 6; ++z) imgSets [z] = true; bool multi = false; if (ComposeMessageMainUtil.messageDB != null) { if (ComposeMessageMainUtil.messageDB.MessageRecipientDBList != null) { int n = 0; for (int j = 0; j < ComposeMessageMainUtil.currentPosition.Length; ++j) ComposeMessageMainUtil.currentPosition [j] = 0; regenerateIcons(); foreach (MessageStepDB mesg in ComposeMessageMainUtil.messageDB.MessageStepDBList) { #if DEBUG Console.WriteLine("MessageStepDB item = {0}", mesg); #endif MessageStep mSt = MessageStepDB.ConvertFromMessageStepDB(mesg); ComposeMessageMainUtil.msgSteps.Add(mSt); ComposeMessageMainUtil.currentPosition [n] = 1; } } } if (readOnly) { user = dbm.GetUserWithAccountID(ComposeMessageMainUtil.messageDB.FromAccountID.ToString()); if (ComposeMessageMainUtil.messageDB.MessageRecipientDBList.Count > 1) multi = true; if (user.Picture.Length == 0) profPic = user.AccountID; else loadProfilePicture(user, imgProfilePic); } else { user = UserDB.ConvertFromUser(AndroidData.CurrentUser); if (AndroidData.CurrentUser.Picture.Length == 0) profPic = AndroidData.CurrentUser.AccountID; else loadProfilePicture(user, imgProfilePic); } imgProfilePic.Tag = new Java.Lang.String("profilepic_" + user.AccountID); string name = user.FirstName + " " + user.LastName; if (multi == true) { if (ComposeMessageMainUtil.messageDB == null) name += " and " + (Contacts.SelectContactsUtil.selectedContacts.Count - 1).ToString() + (Contacts.SelectContactsUtil.selectedContacts.Count - 1 > 1 ? " others" : "other"); else name += " and " + (ComposeMessageMainUtil.messageDB.MessageRecipientDBList.Count - 1).ToString() + (ComposeMessageMainUtil.messageDB.MessageRecipientDBList.Count - 1 > 1 ? " others" : "other"); } float fontSize = txtFullname.TextSize; txtFullname.SetTextSize(Android.Util.ComplexUnitType.Dip, ImageHelper.getNewFontSize(fontSize, context)); txtFullname.Text = name; fontSize = txtMessage.TextSize; txtMessage.SetTextSize(Android.Util.ComplexUnitType.Dip, ImageHelper.getNewFontSize(fontSize, context)); if (readOnly == false) { for (int n = 0; n < 6; ++n) { if (imgSets [n]) { int step = new int(); step = n; imgSteps [step].Click -= (object s, EventArgs e) => { imgClickEvent(s, e, 9, step);}; imgSteps [step].Click += (object s, EventArgs e) => { imgClickEvent(s, e, 9, step);}; } imgSteps [n].SetOnLongClickListener(this); } ReloadMessageSteps(); } else { this.SetButtonImagesForMessageSteps(); header.Text = Application.Context.Resources.GetString(Resource.String.messageReadMessage); btnSend.Visibility = ViewStates.Invisible; ImageView a1 = FindViewById<ImageView>(Resource.Id.arrow1); ImageView a2 = FindViewById<ImageView>(Resource.Id.arrow2); ImageView a3 = FindViewById<ImageView>(Resource.Id.arrow3); ImageView a4 = FindViewById<ImageView>(Resource.Id.arrow4); a1.Visibility = a2.Visibility = a3.Visibility = a4.Visibility = ViewStates.Invisible; } co = 0; btnBack.Click += delegate { for (int i = 0; i < 6; ++i) ComposeMessageMainUtil.currentPosition [i] = 0; for (int i = 0; i < 7; ++i) ComposeMessageMainUtil.contentPackID [i] = -1; ComposeMessageMainUtil.message = null; ComposeMessageMainUtil.messageDB = null; ComposeMessageMainUtil.msgSteps = null; ComposeMessageMainUtil.pollSteps = null; Finish(); }; btnHome.Click += delegate { Intent i = new Intent(this, typeof(Main.HomeActivity)); i.AddFlags(ActivityFlags.ClearTop); StartActivity(i); }; btnSend.Click += delegate { SendMessage(); Finish(); }; if (profPic != Guid.Empty) { Guid finder = profPic != Guid.Empty ? profPic : AndroidData.CurrentUser.AccountID; LOLConnectClient service = new LOLConnectClient(LOLConstants.DefaultHttpBinding, LOLConstants.LOLConnectEndpoint); service.UserGetImageDataCompleted += Service_UserGetImageDataCompleted; service.UserGetImageDataAsync(AndroidData.CurrentUser.AccountID, finder, new Guid(AndroidData.ServiceAuthToken)); } }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); dbm = wowZapp.LaffOutOut.Singleton.dbm; mmg = wowZapp.LaffOutOut.Singleton.mmg; MessageItems = new Dictionary<Guid, MessageInfo>(); contentPackItems = new Dictionary<int, ContentPackItem>(); this.voiceFiles = new Dictionary<int, string>(); this.contacts = new Dictionary<Guid, ContactDB>(); this.pollSteps = new Dictionary<int, PollingStep>(); this.conversationItems = new Dictionary<string, ConversationInfo>(); this.animationStep = new Dictionary<int, AnimationInfo>(); ContentPath = wowZapp.LaffOutOut.Singleton.ContentDirectory; isMe = AndroidData.CurrentUser.FirstName + " " + AndroidData.CurrentUser.LastName; SetContentView(Resource.Layout.previewSoundFX); context = MessageReceivedUtil.context; btns = FindViewById<ImageView>(Resource.Id.imgNewUserHeader); TextView header = FindViewById<TextView>(Resource.Id.txtFirstScreenHeader); RelativeLayout relLayout = FindViewById<RelativeLayout>(Resource.Id.relativeLayout1); ImageHelper.setupTopPanel(btns, header, relLayout, header.Context); UserDB user = dbm.GetUserWithAccountID(MessageReceivedUtil.message.FromAccountGuid); if (user == null) user = UserDB.ConvertFromUser(AndroidData.CurrentUser); MessageReceivedUtil.userFrom = UserDB.ConvertFromUserDB(user); Header.headertext = user.FirstName + " " + user.LastName; Header.fontsize = 36f; ImageHelper.fontSizeInfo(header.Context); header.SetTextSize(Android.Util.ComplexUnitType.Pt, Header.fontsize); header.Text = Header.headertext; RunOnUiThread(delegate { progress = ProgressDialog.Show(context, Application.Context.Resources.GetString(Resource.String.messageViewingMessage), Application.Context.Resources.GetString(Resource.String.messageViewingPleaseWait)); }); processMessages(MessageReceivedUtil.message); PlayMessage(MessageReceivedUtil.message); markAsRead = true; Finish(); }