2009-08-27 16:35:43 +04:00
|
|
|
/*
|
|
|
|
* Copyright 2009, Haiku, Inc. All rights reserved.
|
|
|
|
* Distributed under the terms of the MIT License.
|
|
|
|
*/
|
2002-07-09 16:24:59 +04:00
|
|
|
#ifndef _INPUTSERVERMETHOD_H
|
|
|
|
#define _INPUTSERVERMETHOD_H
|
|
|
|
|
2009-08-27 16:35:43 +04:00
|
|
|
|
2002-07-09 16:24:59 +04:00
|
|
|
#include <InputServerFilter.h>
|
|
|
|
|
|
|
|
|
|
|
|
class _BMethodAddOn_;
|
2004-11-18 01:43:06 +03:00
|
|
|
class AddOnManager;
|
2007-10-16 00:13:55 +04:00
|
|
|
class BMenu;
|
2004-11-18 01:43:06 +03:00
|
|
|
class InputServer;
|
2002-07-09 16:24:59 +04:00
|
|
|
|
2009-08-27 16:35:43 +04:00
|
|
|
|
2002-07-09 16:24:59 +04:00
|
|
|
class BInputServerMethod : public BInputServerFilter {
|
|
|
|
public:
|
2009-08-27 16:35:43 +04:00
|
|
|
BInputServerMethod(const char* name,
|
|
|
|
const uchar* icon);
|
|
|
|
virtual ~BInputServerMethod();
|
2002-07-09 16:24:59 +04:00
|
|
|
|
2009-08-27 16:35:43 +04:00
|
|
|
virtual status_t MethodActivated(bool active);
|
2002-07-09 16:24:59 +04:00
|
|
|
|
2009-08-27 16:35:43 +04:00
|
|
|
status_t EnqueueMessage(BMessage* message);
|
2002-07-09 16:24:59 +04:00
|
|
|
|
2009-08-27 16:35:43 +04:00
|
|
|
status_t SetName(const char* name);
|
|
|
|
status_t SetIcon(const uchar* icon);
|
|
|
|
status_t SetMenu(const BMenu* menu,
|
|
|
|
const BMessenger target);
|
2002-07-09 16:24:59 +04:00
|
|
|
|
2004-10-28 18:13:12 +04:00
|
|
|
private:
|
2009-08-27 16:35:43 +04:00
|
|
|
// FBC padding
|
|
|
|
virtual void _ReservedInputServerMethod1();
|
|
|
|
virtual void _ReservedInputServerMethod2();
|
|
|
|
virtual void _ReservedInputServerMethod3();
|
|
|
|
virtual void _ReservedInputServerMethod4();
|
|
|
|
|
|
|
|
uint32 _reserved[4];
|
2002-07-09 16:24:59 +04:00
|
|
|
|
2009-08-27 16:35:43 +04:00
|
|
|
private:
|
|
|
|
friend class AddOnManager;
|
|
|
|
friend class InputServer;
|
|
|
|
|
|
|
|
private:
|
|
|
|
_BMethodAddOn_* fOwner;
|
|
|
|
};
|
2002-07-09 16:24:59 +04:00
|
|
|
|
2009-08-27 16:35:43 +04:00
|
|
|
#endif // _INPUTSERVERMETHOD_H
|