1 /* 2 * Copyright 2002-2007, Haiku, Inc. All Rights Reserved. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * Mattias Sundblad 7 * Andrew Bachmann 8 * Axel Dörfler, axeld@pinc-software.de 9 */ 10 #ifndef STYLED_EDIT_VIEW_H 11 #define STYLED_EDIT_VIEW_H 12 13 14 #include <String.h> 15 #include <TextView.h> 16 17 18 class BFile; 19 class BHandler; 20 class BMessenger; 21 22 23 class StyledEditView : public BTextView { 24 public: 25 StyledEditView(BRect viewframe, BRect textframe, 26 BHandler *handler); 27 virtual ~StyledEditView(); 28 29 virtual void Select(int32 start, int32 finish); 30 virtual void DeleteText(int32 start, int32 finish); 31 virtual void FrameResized(float width, float height); 32 virtual void InsertText(const char *text, int32 length, int32 offset, 33 const text_run_array *runs = NULL); 34 35 void Reset(); 36 status_t GetStyledText(BPositionIO * stream); 37 status_t WriteStyledEditFile(BFile * file); 38 39 void SetEncoding(uint32 encoding); 40 uint32 GetEncoding() const; 41 42 private: 43 BMessenger *fMessenger; 44 bool fSuppressChanges; 45 BString fEncoding; 46 }; 47 48 #endif // STYLED_EDIT_VIEW_H 49 50