Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __vtkKWFrameWithLabel_h
00021 #define __vtkKWFrameWithLabel_h
00022
00023 #include "vtkKWCompositeWidget.h"
00024
00025 class vtkKWFrame;
00026 class vtkKWIcon;
00027 class vtkKWLabel;
00028 class vtkKWLabelWithLabel;
00029
00030 class KWWidgets_EXPORT vtkKWFrameWithLabel : public vtkKWCompositeWidget
00031 {
00032 public:
00033 static vtkKWFrameWithLabel* New();
00034 vtkTypeRevisionMacro(vtkKWFrameWithLabel,vtkKWCompositeWidget);
00035 void PrintSelf(ostream& os, vtkIndent indent);
00036
00037
00038
00039 void SetLabelText(const char *);
00040
00041
00042
00043 vtkGetObjectMacro(Frame, vtkKWFrame);
00044
00045
00046
00047 vtkGetObjectMacro(LabelFrame, vtkKWFrame);
00048
00049
00050
00051 virtual vtkKWLabel *GetLabel();
00052
00053
00054
00055 virtual void CollapseFrame();
00056 virtual void ExpandFrame();
00057 virtual int IsFrameCollapsed();
00058
00059
00060
00061
00062 vtkSetMacro(AllowFrameToCollapse, int);
00063 vtkBooleanMacro(AllowFrameToCollapse, int);
00064 vtkGetMacro(AllowFrameToCollapse, int);
00065
00066
00067
00068
00069
00070
00071
00072
00073 static int GetDefaultAllowFrameToCollapse();
00074 static void SetDefaultAllowFrameToCollapse(int);
00075 static void DefaultAllowFrameToCollapseOn()
00076 { vtkKWFrameWithLabel::SetDefaultAllowFrameToCollapse(1); };
00077 static void DefaultAllowFrameToCollapseOff()
00078 { vtkKWFrameWithLabel::SetDefaultAllowFrameToCollapse(0); };
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089 enum
00090 {
00091 LabelCaseUserSpecified = 0,
00092 LabelCaseUppercaseFirst,
00093 LabelCaseLowercaseFirst
00094 };
00095
00096 static void SetDefaultLabelCase(int v);
00097 static int GetDefaultLabelCase();
00098 static void SetDefaultLabelCaseToUserSpecified()
00099 { vtkKWFrameWithLabel::SetDefaultLabelCase(
00100 vtkKWFrameWithLabel::LabelCaseUserSpecified);};
00101 static void SetDefaultLabelCaseToUppercaseFirst()
00102 {vtkKWFrameWithLabel::SetDefaultLabelCase(
00103 vtkKWFrameWithLabel::LabelCaseUppercaseFirst);};
00104 static void SetDefaultLabelCaseToLowercaseFirst()
00105 {vtkKWFrameWithLabel::SetDefaultLabelCase(
00106 vtkKWFrameWithLabel::LabelCaseLowercaseFirst);};
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116 enum
00117 {
00118 LabelFontWeightNormal = 0,
00119 LabelFontWeightBold
00120 };
00121
00122 static void SetDefaultLabelFontWeight(int v);
00123 static int GetDefaultLabelFontWeight();
00124 static void SetDefaultLabelFontWeightToNormal()
00125 { vtkKWFrameWithLabel::SetDefaultLabelFontWeight(
00126 vtkKWFrameWithLabel::LabelFontWeightNormal);};
00127 static void SetDefaultLabelFontWeightToBold()
00128 {vtkKWFrameWithLabel::SetDefaultLabelFontWeight(
00129 vtkKWFrameWithLabel::LabelFontWeightBold);};
00130
00131
00132
00133
00134 virtual void SetLimitedEditionModeIconVisibility(int);
00135 vtkBooleanMacro(LimitedEditionModeIconVisibility, int);
00136 vtkGetMacro(LimitedEditionModeIconVisibility, int);
00137
00138
00139
00140
00141
00142
00143
00144
00145
00146
00147
00148
00149
00150
00151
00152
00153 vtkSetMacro(ChangePackingOnCollapse, int);
00154 vtkBooleanMacro(ChangePackingOnCollapse, int);
00155 vtkGetMacro(ChangePackingOnCollapse, int);
00156
00157
00158
00159
00160
00161
00162
00163
00164 virtual void UpdateEnableState();
00165
00166
00167
00168
00169
00170 virtual vtkKWDragAndDropTargetSet* GetDragAndDropTargetSet();
00171
00172
00173
00174
00175
00176 virtual void SetWidth(int);
00177 virtual int GetWidth();
00178 virtual void SetHeight(int);
00179 virtual int GetHeight();
00180
00181
00182
00183 vtkGetObjectMacro(CollapsibleFrame, vtkKWFrame);
00184
00185
00186
00187 virtual void AdjustMarginCallback();
00188 virtual void CollapseButtonCallback();
00189 virtual void LabelDoubleClickCallback();
00190
00191 protected:
00192 vtkKWFrameWithLabel();
00193 ~vtkKWFrameWithLabel();
00194
00195
00196
00197 virtual void CreateWidget();
00198
00199 vtkKWFrame *Frame;
00200 vtkKWFrame *LabelFrame;
00201 vtkKWLabelWithLabel *Label;
00202 vtkKWFrame *ExternalMarginFrame;
00203 vtkKWFrame *InternalMarginFrame;
00204 vtkKWFrame *CollapsibleFrame;
00205 vtkKWLabel *Icon;
00206 vtkKWIcon *IconData;
00207
00208 int AllowFrameToCollapse;
00209 int ChangePackingOnCollapse;
00210 int LimitedEditionModeIconVisibility;
00211
00212 static int DefaultAllowFrameToCollapse;
00213 static int DefaultLabelFontWeight;
00214 static int DefaultLabelCase;
00215
00216 virtual vtkKWLabel *GetLabelIcon();
00217
00218 private:
00219 vtkKWFrameWithLabel(const vtkKWFrameWithLabel&);
00220 void operator=(const vtkKWFrameWithLabel&);
00221 };
00222
00223 #endif
00224