00001 
00032 #ifndef LL_FLOATER_NEW_IM_H
00033 #define LL_FLOATER_NEW_IM_H
00034 
00035 #include "llfloater.h"
00036 
00037 class LLNameListCtrl;
00038 
00039 class LLFloaterNewIM : public LLFloater
00040 {
00041 public:
00042         LLFloaterNewIM();
00043          ~LLFloaterNewIM();
00044 
00045          BOOL postBuild();
00046 
00047          BOOL handleKeyHere(KEY key, MASK mask, BOOL called_from_parent);
00048         virtual BOOL canClose();
00049         virtual void close(bool app_quitting);
00050 
00051         static void     onStart(void* userdata);
00052         static void onClickClose(void* userdata);
00053 
00054         void clearAllTargets();
00055 
00056         
00057         
00058         void addSpecial(const LLUUID& uuid, const std::string& name, 
00059                 void* data, BOOL bold, BOOL online);
00060 
00061         
00062         
00063         void addAgent(const LLUUID& uuid, void* data, BOOL online);
00064         void addGroup(const LLUUID& uuid, void* data, BOOL bold, BOOL online);
00065 
00066         void addDefaultTargets();
00067         BOOL isUUIDAvailable(const LLUUID& uuid);
00068 
00069         S32             getScrollPos();
00070         void    setScrollPos( S32 pos );
00071 
00072 protected:
00073         LLNameListCtrl* mSelectionList;
00074 };
00075 
00076 #endif  // LL_NEWIMPANEL_H