1b4d21c83SStephan Aßmus /* 2b4d21c83SStephan Aßmus * Copyright 2006 Haiku, Inc. All Rights Reserved. 3b4d21c83SStephan Aßmus * Distributed under the terms of the MIT License. 4593808d9SJohn Scipione * 5593808d9SJohn Scipione * Authors: 6*b98de092SJohn Scipione * Stephan Aßmus, superstippi@gmx.de 7b4d21c83SStephan Aßmus */ 8b4d21c83SStephan Aßmus #ifndef INPUT_TEXT_VIEW_H 9b4d21c83SStephan Aßmus #define INPUT_TEXT_VIEW_H 10b4d21c83SStephan Aßmus 119f5d4ecdSJohn Scipione 12b4d21c83SStephan Aßmus #include <Invoker.h> 13b4d21c83SStephan Aßmus #include <TextView.h> 14b4d21c83SStephan Aßmus 159f5d4ecdSJohn Scipione 16accec9a7SAlexandre Deckner class InputTextView : public BTextView, public BInvoker { 17b4d21c83SStephan Aßmus public: 18b4d21c83SStephan Aßmus InputTextView(BRect frame, 19b4d21c83SStephan Aßmus const char* name, 20b4d21c83SStephan Aßmus BRect textRect, 21b4d21c83SStephan Aßmus uint32 resizingMode, 22b4d21c83SStephan Aßmus uint32 flags); 23b4d21c83SStephan Aßmus virtual ~InputTextView(); 24b4d21c83SStephan Aßmus 25b4d21c83SStephan Aßmus // BTextView interface 26b4d21c83SStephan Aßmus virtual void MouseDown(BPoint where); 27b4d21c83SStephan Aßmus virtual void MouseUp(BPoint where); 28b4d21c83SStephan Aßmus 29b4d21c83SStephan Aßmus virtual void KeyDown(const char* bytes, int32 numBytes); 30b4d21c83SStephan Aßmus virtual void MakeFocus(bool focus); 31b4d21c83SStephan Aßmus 32b4d21c83SStephan Aßmus // BInvoker interface 33b4d21c83SStephan Aßmus virtual status_t Invoke(BMessage* message = NULL); 34b4d21c83SStephan Aßmus 35b4d21c83SStephan Aßmus // InputTextView 36b4d21c83SStephan Aßmus virtual void RevertChanges() = 0; 37b4d21c83SStephan Aßmus virtual void ApplyChanges() = 0; 38b4d21c83SStephan Aßmus 39b4d21c83SStephan Aßmus protected: 40b4d21c83SStephan Aßmus bool fWasFocus; 41b4d21c83SStephan Aßmus }; 42b4d21c83SStephan Aßmus 43b4d21c83SStephan Aßmus #endif // INPUT_TEXT_VIEW_H 44