00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00026 #ifndef __vtkKWKeyBindingsManager_h
00027 #define __vtkKWKeyBindingsManager_h
00028
00029 #include "vtkKWObject.h"
00030
00031 class vtkKWKeyBindingsManagerInternals;
00032 class vtkKWEventMap;
00033
00034 class KWWidgets_EXPORT vtkKWKeyBindingsManager : public vtkKWObject
00035 {
00036
00037 public:
00038 static vtkKWKeyBindingsManager* New();
00039 vtkTypeRevisionMacro(vtkKWKeyBindingsManager,vtkKWObject);
00040 void PrintSelf(ostream& os, vtkIndent indent);
00041
00043
00060 virtual void AddKeyBinding(
00061 vtkObject *target,
00062 const char *binding,
00063 vtkObject *callback_object = NULL,
00064 const char *callback_command = NULL,
00065 const char *context = NULL,
00066 const char *description = NULL);
00067 virtual void SetKeyBinding(
00068 vtkObject *target,
00069 const char *binding,
00070 vtkObject *callback_object = NULL,
00071 const char *callback_command = NULL,
00072 const char *context = NULL,
00073 const char *description = NULL);
00074 virtual void RemoveKeyBinding(
00075 vtkObject *target,
00076 const char *binding = NULL,
00077 vtkObject *callback_object = NULL,
00078 const char *callback_command = NULL);
00080
00082
00090 virtual int GetNumberOfTargets();
00091 virtual vtkObject* GetNthTarget(int idx);
00092 virtual int GetNumberOfBindings(vtkObject *target);
00093 virtual const char* GetNthBinding(vtkObject *target, int idx);
00094 virtual int GetNumberOfCallbackObjects(
00095 vtkObject *target, const char *binding);
00096 virtual vtkObject* GetNthCallbackObject(
00097 vtkObject *target, const char *binding, int idx);
00098 virtual int GetNumberOfKeyBindings(
00099 vtkObject *target, const char *binding, vtkObject *callback_object);
00100 virtual const char* GetNthCallbackCommand(
00101 vtkObject *target, const char *binding,vtkObject *callback_object,int idx);
00102 virtual const char* GetNthContext(
00103 vtkObject *target, const char *binding,vtkObject *callback_object,int idx);
00104 virtual const char* GetNthDescription(
00105 vtkObject *target, const char *binding,vtkObject *callback_object,int idx);
00107
00110 virtual void SetKeyBindingsFromEventMap(vtkKWEventMap *map);
00111
00115 virtual const char* GetPrettyBinding(const char *binding);
00116
00120 virtual const char* GetPrettyContext(const char *context);
00121
00122
00123
00124 protected:
00125 vtkKWKeyBindingsManager();
00126 ~vtkKWKeyBindingsManager();
00127
00128
00129
00130 vtkKWKeyBindingsManagerInternals *Internals;
00131
00132
00134
00137 virtual void ProcessCallbackCommandEvents(
00138 vtkObject *caller, unsigned long event, void *calldata);
00140
00141
00142
00143 private:
00144
00145 vtkKWKeyBindingsManager(const vtkKWKeyBindingsManager&);
00146 void operator=(const vtkKWKeyBindingsManager&);
00147 };
00148
00149 #endif
00150
00151