Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

GUI/Widgets/vtkKWTextPropertyEditor.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Module:    $RCSfile: vtkKWTextPropertyEditor.h,v $
00004 
00005   Copyright (c) Kitware, Inc.
00006   All rights reserved.
00007   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00008 
00009      This software is distributed WITHOUT ANY WARRANTY; without even
00010      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00011      PURPOSE.  See the above copyright notice for more information.
00012 
00013 =========================================================================*/
00021 #ifndef __vtkKWTextPropertyEditor_h
00022 #define __vtkKWTextPropertyEditor_h
00023 
00024 #include "vtkKWCompositeWidget.h"
00025 
00026 class vtkActor2D;
00027 class vtkKWApplication;
00028 class vtkKWChangeColorButton;
00029 class vtkKWLabel;
00030 class vtkKWCheckButtonSetWithLabel;
00031 class vtkKWMenuButtonWithLabel;
00032 class vtkKWPushButtonSetWithLabel;
00033 class vtkKWPushButton;
00034 class vtkKWScaleWithEntry;
00035 class vtkTextProperty;
00036 
00037 class KWWIDGETS_EXPORT vtkKWTextPropertyEditor : public vtkKWCompositeWidget
00038 {
00039 public:
00040   static vtkKWTextPropertyEditor* New();
00041   vtkTypeRevisionMacro(vtkKWTextPropertyEditor,vtkKWCompositeWidget);
00042   void PrintSelf(ostream& os, vtkIndent indent);
00043 
00045   virtual void Create(vtkKWApplication *app);
00046 
00049   virtual void Update();
00050 
00052 
00053   virtual void SetTextProperty(vtkTextProperty*);
00054   vtkGetObjectMacro(TextProperty, vtkTextProperty);
00056 
00058 
00062   virtual void SetActor2D(vtkActor2D*);
00063   vtkGetObjectMacro(Actor2D, vtkActor2D);
00065 
00067 
00070   virtual void SetLongFormat(int);
00071   vtkBooleanMacro(LongFormat, int);
00072   vtkGetMacro(LongFormat, int);
00074 
00076 
00078   virtual void SetLabelOnTop(int);
00079   vtkBooleanMacro(LabelOnTop, int);
00080   vtkGetMacro(LabelOnTop, int);
00082 
00084 
00085   virtual void SetLabelVisibility(int);
00086   vtkBooleanMacro(LabelVisibility, int);
00087   vtkGetMacro(LabelVisibility, int);
00088   vtkGetObjectMacro(Label, vtkKWLabel);
00090 
00092 
00093   virtual void SetColorVisibility(int);
00094   vtkBooleanMacro(ColorVisibility, int);
00095   vtkGetMacro(ColorVisibility, int);
00097 
00099 
00100   virtual void SetFontFamilyVisibility(int);
00101   vtkBooleanMacro(FontFamilyVisibility, int);
00102   vtkGetMacro(FontFamilyVisibility, int);
00104 
00106 
00107   virtual void SetStylesVisibility(int);
00108   vtkBooleanMacro(StylesVisibility, int);
00109   vtkGetMacro(StylesVisibility, int);
00111 
00113 
00114   virtual void SetOpacityVisibility(int);
00115   vtkBooleanMacro(OpacityVisibility, int);
00116   vtkGetMacro(OpacityVisibility, int);
00118 
00120 
00122   virtual void SetChangedCommand(
00123     vtkObject *object, const char *method);
00125 
00127 
00129   virtual void SetColorChangedCommand(
00130     vtkObject *object, const char *method);
00132 
00134 
00136   virtual void SetCopyVisibility(int);
00137   vtkBooleanMacro(CopyVisibility, int);
00138   vtkGetMacro(CopyVisibility, int);
00139   virtual vtkKWPushButton* GetCopyButton();
00141 
00143   virtual void CopyValuesFrom(vtkKWTextPropertyEditor*);
00144 
00145   // GUI components callbacks
00146   virtual void ChangeColorButtonCallback(double, double, double);
00147   virtual void SetColor(double, double, double);
00148   virtual void SetColor(double *v) { this->SetColor(v[0], v[1], v[2]); };
00149   virtual double* GetColor();
00150   virtual void FontFamilyCallback();
00151   virtual void SetFontFamily(int);
00152   virtual void BoldCallback();
00153   virtual void SetBold(int);
00154   virtual void ItalicCallback();
00155   virtual void SetItalic(int);
00156   virtual void ShadowCallback();
00157   virtual void SetShadow(int);
00158   virtual void OpacityCallback();
00159   virtual void OpacityEndCallback();
00160   virtual void SetOpacity(float);
00161   virtual float GetOpacity();
00162 
00164 
00165   virtual void SaveInTclScript(ofstream *file, const char *tcl_name = 0,
00166                                int tabify = 1);
00168 
00175   virtual void UpdateEnableState();
00176 
00177 protected:
00178   vtkKWTextPropertyEditor();
00179   ~vtkKWTextPropertyEditor();
00180 
00181   virtual void Pack();
00182 
00183   void UpdateInterface();
00184   void UpdateLabel();
00185   void UpdateColorButton();
00186   void UpdateFontFamilyOptionMenu();
00187   void UpdateStylesCheckButtonSet();
00188   void UpdateBoldCheckButton();
00189   void UpdateItalicCheckButton();
00190   void UpdateShadowCheckButton();
00191   void UpdateOpacityScale();
00192   void UpdatePushButtonSet();
00193 
00194   vtkTextProperty *TextProperty;
00195   vtkActor2D *Actor2D;
00196 
00197   int LongFormat;
00198 
00199   int LabelVisibility;
00200   int LabelOnTop;
00201   vtkKWLabel *Label;
00202 
00203   int ColorVisibility;
00204   vtkKWChangeColorButton *ChangeColorButton;
00205 
00206   int FontFamilyVisibility;
00207   vtkKWMenuButtonWithLabel *FontFamilyOptionMenu;
00208 
00209   int StylesVisibility;
00210   vtkKWCheckButtonSetWithLabel *StylesCheckButtonSet;
00211   
00212   int OpacityVisibility;
00213   vtkKWScaleWithEntry *OpacityScale;
00214 
00215   char *ChangedCommand;
00216   char *ColorChangedCommand;
00217 
00218   int CopyVisibility;
00219   vtkKWPushButtonSetWithLabel *PushButtonSet;
00220 
00221 private:
00222   vtkKWTextPropertyEditor(const vtkKWTextPropertyEditor&); // Not implemented
00223   void operator=(const vtkKWTextPropertyEditor&); // Not implemented
00224 };
00225 
00226 #endif
00227 

Generated on Tue May 30 12:31:44 2006 for ParaView by doxygen 1.3.5