156aa406aSAxel Dörfler /* 256aa406aSAxel Dörfler ** Copyright 2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved. 356aa406aSAxel Dörfler ** Distributed under the terms of the OpenBeOS License. 456aa406aSAxel Dörfler */ 556aa406aSAxel Dörfler #ifndef PROBE_VIEW_H 656aa406aSAxel Dörfler #define PROBE_VIEW_H 756aa406aSAxel Dörfler 856aa406aSAxel Dörfler 9bc005359SAxel Dörfler #include "DataEditor.h" 10bc005359SAxel Dörfler 1156aa406aSAxel Dörfler #include <View.h> 12416271b7SAxel Dörfler #include <String.h> 1356aa406aSAxel Dörfler #include <Path.h> 1456aa406aSAxel Dörfler 15416271b7SAxel Dörfler 16416271b7SAxel Dörfler class BScrollView; 17cf547998SAxel Dörfler class BMenuItem; 1856aa406aSAxel Dörfler 1956aa406aSAxel Dörfler class HeaderView; 2090828ad1SAxel Dörfler class DataView; 21*8db24919SAxel Dörfler class EditorLooper; 2256aa406aSAxel Dörfler 2356aa406aSAxel Dörfler 2456aa406aSAxel Dörfler class ProbeView : public BView { 2556aa406aSAxel Dörfler public: 267fff3ed0SAxel Dörfler ProbeView(BRect rect, entry_ref *ref, const char *attribute = NULL, 277fff3ed0SAxel Dörfler const BMessage *settings = NULL); 2856aa406aSAxel Dörfler virtual ~ProbeView(); 2956aa406aSAxel Dörfler 30bc005359SAxel Dörfler virtual void DetachedFromWindow(); 3156aa406aSAxel Dörfler virtual void AttachedToWindow(); 325475e6e5SAxel Dörfler virtual void AllAttached(); 33d556aa00SAxel Dörfler virtual void WindowActivated(bool active); 3456aa406aSAxel Dörfler virtual void MessageReceived(BMessage *message); 3556aa406aSAxel Dörfler 366781cbdcSAxel Dörfler void AddSaveMenuItems(BMenu *menu, int32 index); 376781cbdcSAxel Dörfler void AddPrintMenuItems(BMenu *menu, int32 index); 38416271b7SAxel Dörfler 3990828ad1SAxel Dörfler void UpdateSizeLimits(); 400adaff85SAxel Dörfler bool QuitRequested(); 4190828ad1SAxel Dörfler 42d426c2b9SAxel Dörfler DataEditor &Editor() { return fEditor; } 43d426c2b9SAxel Dörfler 4456aa406aSAxel Dörfler private: 45595bb309SAxel Dörfler void UpdateAttributesMenu(BMenu *menu); 4635f497aaSAxel Dörfler void UpdateSelectionMenuItems(int64 start, int64 end); 47fe8682eaSAxel Dörfler void UpdateBookmarkMenuItems(); 48fe8682eaSAxel Dörfler void AddBookmark(off_t position); 49cf547998SAxel Dörfler void CheckClipboard(); 5012464085SAxel Dörfler status_t PageSetup(); 5112464085SAxel Dörfler void Print(); 520adaff85SAxel Dörfler status_t Save(); 53cf547998SAxel Dörfler 54bc005359SAxel Dörfler DataEditor fEditor; 55*8db24919SAxel Dörfler EditorLooper *fEditorLooper; 5656aa406aSAxel Dörfler HeaderView *fHeaderView; 5790828ad1SAxel Dörfler DataView *fDataView; 58416271b7SAxel Dörfler BScrollView *fScrollView; 59cf547998SAxel Dörfler BMenuItem *fPasteMenuItem; 60d426c2b9SAxel Dörfler BMenuItem *fUndoMenuItem, *fRedoMenuItem; 6135f497aaSAxel Dörfler BMenuItem *fNativeMenuItem, *fSwappedMenuItem; 62c4473afbSAxel Dörfler BMenuItem *fSaveMenuItem; 6312464085SAxel Dörfler BMessage *fPrintSettings; 64fe8682eaSAxel Dörfler BMenu *fBookmarkMenu; 65*8db24919SAxel Dörfler 66*8db24919SAxel Dörfler BMenuItem *fFindAgainMenuItem; 67*8db24919SAxel Dörfler const uint8 *fLastSearch; 68*8db24919SAxel Dörfler size_t fLastSearchSize; 6956aa406aSAxel Dörfler }; 7056aa406aSAxel Dörfler 71bc005359SAxel Dörfler #endif /* PROBE_VIEW_H */ 72