haiku/headers/private/app/RosterPrivate.h
Axel Dörfler 82584ab9c2 * Implemented AS_DIRECT_WINDOW_SET_FULLSCREEN so that it sets kWindowScreenFeel
when enabled, and B_NORMAL_WINDOW_FEEL when disabled. IOW when enabled, no
  other windows can interfere.
* Therefore, it's no longer necessary to have the screen_blanker window
  use kWindowScreenFeel - it will set its window to full screen as long
  as the blanker runs.
* Added a AS_APP_CRASHED notification in the app_server that will remove
  all kWindowScreenFeels from the windows of the crashed app.
* This is now used by the debugger to ensure that the debugger alert will
  be visible.
* Factored out a DesktopLink class out of the BRoster::_ActivateApp()
  method. This class is now also used in the new BRoster::_ApplicationCrashed()
  method as used in the debug_server (via BRoster::Private).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-09 21:46:40 +00:00

85 lines
2.3 KiB
C++

/*
* Copyright 2001-2006, Haiku.
* Distributed under the terms of the MIT License.
*
* Authors:
* Ingo Weinhold (bonefish@users.sf.net)
*/
#ifndef _ROSTER_PRIVATE_H
#define _ROSTER_PRIVATE_H
#include <Messenger.h>
#include <Roster.h>
class BRoster::Private {
public:
Private() : fRoster(const_cast<BRoster*>(be_roster)) {}
Private(BRoster &roster) : fRoster(&roster) {}
Private(BRoster *roster) : fRoster(roster) {}
void SetTo(BMessenger mainMessenger, BMessenger mimeMessenger);
status_t SendTo(BMessage *message, BMessage *reply, bool mime);
bool IsMessengerValid(bool mime) const;
status_t ShutDown(bool reboot, bool confirm, bool synchronous)
{ return fRoster->_ShutDown(reboot, confirm, synchronous); }
// needed by BApplication
status_t AddApplication(const char *mimeSig, const entry_ref *ref,
uint32 flags, team_id team, thread_id thread,
port_id port, bool fullReg, uint32 *token,
team_id *otherTeam) const
{ return fRoster->_AddApplication(mimeSig, ref, flags, team, thread,
port, fullReg, token, otherTeam); }
status_t SetSignature(team_id team, const char *mimeSig) const
{ return fRoster->_SetSignature(team, mimeSig); }
status_t CompleteRegistration(team_id team, thread_id thread,
port_id port) const
{ return fRoster->_CompleteRegistration(team, thread, port); }
bool IsAppPreRegistered(const entry_ref *ref, team_id team,
app_info *info) const
{ return fRoster->_IsAppPreRegistered(ref, team, info); }
status_t RemoveApp(team_id team) const
{ return fRoster->_RemoveApp(team); }
// needed by GetRecentTester
void AddToRecentApps(const char *appSig) const
{ fRoster->_AddToRecentApps(appSig); }
void ClearRecentDocuments() const
{ fRoster->_ClearRecentDocuments(); }
void ClearRecentFolders() const
{ fRoster->_ClearRecentFolders(); }
void ClearRecentApps() const
{ fRoster->_ClearRecentApps(); }
void LoadRecentLists(const char *file) const
{ fRoster->_LoadRecentLists(file); }
void SaveRecentLists(const char *file) const
{ fRoster->_SaveRecentLists(file); }
// needed by the debug server
void ApplicationCrashed(team_id team) const
{ fRoster->_ApplicationCrashed(team); }
static void InitBeRoster();
static void DeleteBeRoster();
private:
BRoster *fRoster;
};
#endif // _ROSTER_PRIVATE_H