Patch from Jesse Rusak which prevents the message window and contact list from steali...
[adiumx.git] / Source / AIContactController.h
blobcabb0bee5fbcabfd4e1a9bf471d4303b3a51ac1c
1 /*
2 * Adium is the legal property of its developers, whose names are listed in the copyright file included
3 * with this source distribution.
4 *
5 * This program is free software; you can redistribute it and/or modify it under the terms of the GNU
6 * General Public License as published by the Free Software Foundation; either version 2 of the License,
7 * or (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
10 * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
11 * Public License for more details.
13 * You should have received a copy of the GNU General Public License along with this program; if not,
14 * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 #import <Adium/AIObject.h>
18 #import <Adium/AIContactControllerProtocol.h>
20 @protocol AIController, AIListObjectObserver;
21 @class AISortController, AdiumAuthorization;
23 @interface AIContactController : AIObject <AIContactController, AIListObjectObserver> {
24 //Contacts and metaContacts
25 NSMutableDictionary *contactDict;
26 NSMutableDictionary *metaContactDict;
27 NSMutableDictionary *contactToMetaContactLookupDict;
29 //Contact List and Groups
30 AIListGroup *contactList;
31 NSMutableDictionary *groupDict;
32 BOOL useContactListGroups;
33 NSMenuItem *menuItem_showGroups;
34 BOOL useOfflineGroup;
35 NSMenuItem *menuItem_useOfflineGroup;
37 //Status and Attribute updates
38 NSMutableSet *contactObservers;
39 NSTimer *delayedUpdateTimer;
40 int delayedStatusChanges;
41 NSMutableSet *delayedModifiedStatusKeys;
42 int delayedAttributeChanges;
43 NSMutableSet *delayedModifiedAttributeKeys;
44 int delayedContactChanges;
45 int delayedUpdateRequests;
46 BOOL updatesAreDelayed;
48 //Sorting
49 NSMutableArray *sortControllerArray;
50 AISortController *activeSortController;
52 //Authorization
53 AdiumAuthorization *adiumAuthorization;
56 @end