void IPicksInterface.Update(ProfilePick value) { var replaceVals = new Dictionary <string, object> { ["pickuuid"] = value.PickID, ["creatoruuid"] = value.Creator.ID, ["toppick"] = value.TopPick, ["parceluuid"] = value.ParcelID, ["name"] = value.Name, ["description"] = value.Description, ["snapshotuuid"] = value.SnapshotID, ["parcelname"] = value.ParcelName, ["originalname"] = value.OriginalName, ["simname"] = value.SimName, ["posglobal"] = value.GlobalPosition, ["sortorder"] = value.SortOrder, ["enabled"] = value.Enabled }; using (var conn = new MySqlConnection(m_ConnectionString)) { conn.Open(); conn.ReplaceInto("userpicks", replaceVals); } }
bool IPicksInterface.TryGetValue(UGUI user, UUID id, out ProfilePick pick) { using (var conn = new MySqlConnection(m_ConnectionString)) { conn.Open(); using (var cmd = new MySqlCommand("SELECT * FROM userpicks WHERE pickuuid = @uuid LIMIT 1", conn)) { cmd.Parameters.AddParameter("@uuid", id); using (MySqlDataReader reader = cmd.ExecuteReader()) { if (reader.Read()) { pick = new ProfilePick(); pick.Creator = reader.GetUGUI("creatoruuid"); pick.Description = reader.GetString("description"); pick.Enabled = reader.GetBoolean("enabled"); pick.Name = reader.GetString("name"); pick.OriginalName = reader.GetString("originalname"); pick.ParcelID = reader.GetParcelID("parceluuid"); pick.PickID = reader.GetUUID("pickuuid"); pick.SimName = reader.GetString("simname"); pick.SnapshotID = reader.GetUUID("snapshotuuid"); pick.SortOrder = reader.GetInt32("sortorder"); pick.TopPick = reader.GetBoolean("toppick"); pick.GlobalPosition = reader.GetVector3("posglobal"); pick.ParcelName = reader.GetString("parcelname"); return(true); } } } } pick = default(ProfilePick); return(false); }
public bool TryGetValue(UGUI user, UUID id, out ProfilePick pick) { pick = default(ProfilePick); RwLockedDictionary <UUID, ProfilePick> picks; return(m_Picks.TryGetValue(user.ID, out picks) && picks.TryGetValue(id, out pick)); }
void Avatars_PickInfoReply(object sender, PickInfoReplyEventArgs e) { if (e.PickID != requestedPick) { return; } if (InvokeRequired) { BeginInvoke(new MethodInvoker(() => Avatars_PickInfoReply(sender, e))); return; } lock (pickCache) { if (!pickCache.ContainsKey(e.PickID)) { pickCache.Add(e.PickID, e.Pick); } } currentPick = e.Pick; if (pickPicturePanel.Controls.Count > 0) { pickPicturePanel.Controls[0].Dispose(); } pickPicturePanel.Controls.Clear(); if (agentID == client.Self.AgentID || e.Pick.SnapshotID != UUID.Zero) { SLImageHandler img = new SLImageHandler(instance, e.Pick.SnapshotID, string.Empty); img.Dock = DockStyle.Fill; img.SizeMode = PictureBoxSizeMode.StretchImage; pickPicturePanel.Controls.Add(img); if (agentID == client.Self.AgentID) { img.AllowUpdateImage = true; ProfilePick p = e.Pick; img.ImageUpdated += (psender, pe) => { img.UpdateImage(pe.NewImageID); p.SnapshotID = pe.NewImageID; client.Self.PickInfoUpdate(p.PickID, p.TopPick, p.ParcelID, p.Name, p.PosGlobal, p.SnapshotID, p.Desc); }; } } pickTitle.Text = e.Pick.Name; pickDetail.Text = e.Pick.Desc; if (!parcelCache.ContainsKey(e.Pick.ParcelID)) { pickLocation.Text = string.Format("Unkown parcel, {0} ({1}, {2}, {3})", e.Pick.SimName, ((int)e.Pick.PosGlobal.X) % 256, ((int)e.Pick.PosGlobal.Y) % 256, ((int)e.Pick.PosGlobal.Z) % 256 ); client.Parcels.RequestParcelInfo(e.Pick.ParcelID); } else { Parcels_ParcelInfoReply(this, new ParcelInfoReplyEventArgs(parcelCache[e.Pick.ParcelID])); } }
public void Update(ProfilePick pick) { m_Picks[pick.Creator.ID][pick.PickID] = pick; }
public void Update(ProfilePick pick) { throw new NotSupportedException(); }
public bool TryGetValue(UGUI user, UUID id, out ProfilePick pick) { pick = default(ProfilePick); return(false); }