1//////////////////////////////////////////////////////////////////////////////// 2// 3// File: GIFView.h 4// 5// Date: December 1999 6// 7// Author: Daniel Switkin 8// 9// Copyright 2003 (c) by Daniel Switkin. This file is made publically available 10// under the BSD license, with the stipulations that this complete header must 11// remain at the top of the file indefinitely, and credit must be given to the 12// original author in any about box using this software. 13// 14//////////////////////////////////////////////////////////////////////////////// 15 16// Additional authors: Stephan Aßmus, <superstippi@gmx.de> 17// Philippe Saint-Pierre, <stpere@gmail.com> 18// John Scipione, <jscipione@gmail.com> 19 20#ifndef GIF_VIEW_H 21#define GIF_VIEW_H 22 23 24#include <GroupView.h> 25#include "TranslatorSettings.h" 26 27 28#define GV_WEB_SAFE 'gvws' 29#define GV_BEOS_SYSTEM 'gvbe' 30#define GV_GREYSCALE 'gvgr' 31#define GV_OPTIMAL 'gvop' 32#define GV_INTERLACED 'gvin' 33#define GV_USE_DITHERING 'gvud' 34#define GV_USE_TRANSPARENT 'gvut' 35#define GV_USE_TRANSPARENT_AUTO 'gvua' 36#define GV_USE_TRANSPARENT_COLOR 'gvuc' 37#define GV_TRANSPARENT_RED 'gvtr' 38#define GV_TRANSPARENT_GREEN 'gvtg' 39#define GV_TRANSPARENT_BLUE 'gvtb' 40#define GV_SET_COLOR_COUNT 'gvcc' 41 42 43const BRect kRectView(110, 110, 339, 339); 44 45 46class BBox; 47class BCheckBox; 48class BPopUpMenu; 49class BMenuField; 50class BMenuItem; 51class BRadioButton; 52class BStringView; 53class BTextControl; 54 55 56 57class GIFView : public BGroupView { 58public: 59 GIFView(TranslatorSettings* settings); 60 virtual ~GIFView(); 61 62 virtual void AllAttached(); 63 virtual void MessageReceived(BMessage* message); 64 65private: 66 void RestorePrefs(); 67 int CheckInput(BTextControl* control); 68 69 TranslatorSettings* fSettings; 70 71 BStringView* fTitle; 72 BStringView* fVersion; 73 BStringView* fCopyright; 74 75 BMenuField* fPaletteMF; 76 BPopUpMenu* fPaletteM; 77 BMenuItem* fWebSafeMI; 78 BMenuItem* fBeOSSystemMI; 79 BMenuItem* fGreyScaleMI; 80 BMenuItem* fOptimalMI; 81 82 BMenuField* fColorCountMF; 83 BPopUpMenu* fColorCountM; 84 BMenuItem* fColorCountMI[8]; 85 BMenuItem* fColorCount256MI; 86 87 BCheckBox* fInterlacedCB; 88 BCheckBox* fUseTransparentCB; 89 BCheckBox* fUseDitheringCB; 90 91 BRadioButton* fUseTransparentAutoRB; 92 BRadioButton* fUseTransparentColorRB; 93 94 BBox* fDitheringBox; 95 BBox* fInterlacedBox; 96 BBox* fTransparentBox; 97 98 BTextControl* fRedTextControl; 99 BTextControl* fGreenTextControl; 100 BTextControl* fBlueTextControl; 101}; 102 103 104#endif // GIF_VIEW_H 105