haiku/headers/private/interface/ToolTipManager.h
Axel Dörfler fcd5021275 * Made the tool tip manager's lock available, and guarded adding/removing the
tool tip view with this lock, too.
* BTextToolTip::SetText() can now be called in all circumstances safely.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-11 07:47:49 +00:00

47 lines
892 B
C++

/*
* Copyright 2009, Haiku, Inc. All Rights Reserved.
* Distributed under the terms of the MIT License.
*/
#ifndef _TOOL_TIP_MANAGER_H
#define _TOOL_TIP_MANAGER_H
#include <Locker.h>
#include <Messenger.h>
#include <Point.h>
class BToolTip;
class BToolTipManager {
public:
static BToolTipManager* Manager();
void ShowTip(BToolTip* tip, BPoint point);
void HideTip();
void SetShowDelay(bigtime_t time);
bigtime_t ShowDelay() const;
void SetHideDelay(bigtime_t time);
bigtime_t HideDelay() const;
static bool Lock() { return sLock.Lock(); }
static void Unlock() { sLock.Unlock(); }
private:
BToolTipManager();
virtual ~BToolTipManager();
BMessenger fWindow;
bigtime_t fShowDelay;
bigtime_t fHideDelay;
static BLocker sLock;
static BToolTipManager* sDefaultInstance;
};
#endif // _TOOL_TIP_MANAGER_H