Ejemplo n.º 1
0
		bool gotRoom(object o, EventArgs e)
		{
			GotRoomEventArgs a = (GotRoomEventArgs)e;

			object ob = Rooms[a.RoomStub.guid];
			if (ob == null)
			{
				Room r = new Room(this, View);
				r.InitialiseFromStub(a.RoomStub, a.RoomStub.guest ? View.RoomGuestList : a.RoomStub.isPrivateChatRoom ? View.RoomPrivateList : View.RoomList, State);
				initialiseRoomEvents(r);

				Rooms[r.Guid] = r;
				RoomsListOrder[RoomsListOrder.Length] = r.Guid;
				r.SetListOrder(RoomsListOrder.Length - 1);

				SelectedRoom = r;

				updateDraggable();

				if (a.RoomStub.guest)
					updateRoomGuestListVisibility(true);
				else if (a.RoomStub.isPrivateChatRoom)
					updateRoomPrivateListVisibility(true);

				return false;
			}
			else
			{
				Room r = (Room)ob;
				if (!r.Pinned)
					r.Pinned = true;
				SelectedRoom = r;
				return true;
			}

		}
Ejemplo n.º 2
0
		bool gotNewPhotoRoom(object o, EventArgs e)
		{
			GotRoomEventArgs a = (GotRoomEventArgs)e;

			bool newRoomShouldBeSelected = removeAllUnPinnedGuestPhotoRoomsExceptSpecified(a.RoomStub.guid);
			
			object ob = Rooms[a.RoomStub.guid];
			if (ob == null)
			{
				Room r = new Room(this, View);
				r.InitialiseFromStub(a.RoomStub, a.RoomStub.isPrivateChatRoom ? View.RoomPrivateList : a.RoomStub.guest ? View.RoomGuestList : View.RoomList, State);
				initialiseRoomEvents(r);

				Rooms[r.Guid] = r;
				RoomsListOrder[RoomsListOrder.Length] = r.Guid;
				r.SetListOrder(RoomsListOrder.Length - 1);

				if (newRoomShouldBeSelected)
					setSelectedRoom(r, false);

				updateDraggable();
				updateRoomUI();

				return false;
			}
			else
			{
				Room r = (Room)ob;
				
				if (newRoomShouldBeSelected)
					setSelectedRoom(r, false);
				
				return true;
			}
		}