00001 // @(#)root/ged:$Id: TAxisEditor.h 20882 2007-11-19 11:31:26Z rdm $ 00002 // Author: Ilka Antcheva 11/05/04 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. * 00006 * All rights reserved. * 00007 * * 00008 * For the licensing terms see $ROOTSYS/LICENSE. * 00009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00010 *************************************************************************/ 00011 00012 #ifndef ROOT_TAxisEditor 00013 #define ROOT_TAxisEditor 00014 00015 ////////////////////////////////////////////////////////////////////////// 00016 // // 00017 // TAxisEditor // 00018 // // 00019 // Implements GUI for axis attributes. // 00020 // // 00021 ////////////////////////////////////////////////////////////////////////// 00022 00023 #ifndef ROOT_TGedFrame 00024 #include "TGedFrame.h" 00025 #endif 00026 00027 class TAxis; 00028 class TGLabel; 00029 class TGComboBox; 00030 class TGNumberEntry; 00031 class TGTextEntry; 00032 class TGCheckButton; 00033 class TGColorSelect; 00034 class TGFontTypeComboBox; 00035 00036 00037 class TAxisEditor : public TGedFrame { 00038 00039 protected: 00040 TAxis *fAxis; // axis object 00041 TGColorSelect *fAxisColor; // color selection widget 00042 TGCheckButton *fLogAxis; // logarithmic check box 00043 TGNumberEntry *fTickLength; // tick length number entry 00044 TGNumberEntry *fDiv1; // primary axis division number entry 00045 TGNumberEntry *fDiv2; // secondary axis division number entry 00046 TGNumberEntry *fDiv3; // tertiary axis division number entry 00047 TGCheckButton *fOptimize; // tick optimization check box 00048 TGCheckButton *fTicksBoth; // check box setting ticks on both axis sides 00049 TGCheckButton *fMoreLog; // more logarithmic labels check box 00050 Int_t fTicksFlag; // positive/negative ticks' flag 00051 TGTextEntry *fTitle; // axis title input field 00052 TGColorSelect *fTitleColor; // color selection widget 00053 TGFontTypeComboBox *fTitleFont; // title font combo box 00054 Int_t fTitlePrec; // font precision level 00055 TGNumberEntry *fTitleSize; // title size number entry 00056 TGNumberEntry *fTitleOffset; // title offset number entry 00057 TGCheckButton *fCentered; // check button for centered title 00058 TGCheckButton *fRotated; // check button for rotated title 00059 TGColorSelect *fLabelColor; // color selection widget 00060 TGFontTypeComboBox *fLabelFont; // label font combo box 00061 Int_t fLabelPrec; // font precision level 00062 TGNumberEntry *fLabelSize; // label size number entry 00063 TGNumberEntry *fLabelOffset; // label offset number entry 00064 TGCheckButton *fNoExponent; // check box for No exponent choice 00065 TGCheckButton *fDecimal; // decimal part check box 00066 00067 virtual void ConnectSignals2Slots(); 00068 00069 public: 00070 TAxisEditor(const TGWindow *p = 0, 00071 Int_t width = 140, Int_t height = 30, 00072 UInt_t options = kChildFrame, 00073 Pixel_t back = GetDefaultFrameBackground()); 00074 virtual ~TAxisEditor(); 00075 virtual void SetModel(TObject* obj); 00076 // slots related to axis attributes 00077 virtual void DoTickLength(); 00078 virtual void DoAxisColor(Pixel_t color); 00079 virtual void DoTicks(); 00080 virtual void DoDivisions(); 00081 virtual void DoLogAxis(); 00082 virtual void DoMoreLog(); 00083 // slots related to axis title attributes 00084 virtual void DoTitleColor(Pixel_t color); 00085 virtual void DoTitle(const char *text); 00086 virtual void DoTitleSize(); 00087 virtual void DoTitleFont(Int_t font); 00088 virtual void DoTitleOffset(); 00089 virtual void DoTitleCentered(); 00090 virtual void DoTitleRotated(); 00091 // slots related to axis labels attributes 00092 virtual void DoLabelColor(Pixel_t color); 00093 virtual void DoLabelSize(); 00094 virtual void DoLabelFont(Int_t font); 00095 virtual void DoLabelOffset(); 00096 virtual void DoNoExponent(); 00097 virtual void DoDecimal(Bool_t on); 00098 00099 ClassDef(TAxisEditor,0) // axis editor 00100 }; 00101 00102 #endif