00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
#ifndef SLIDER_H
00029
#define SLIDER_H
00030
#include <vdk/vdkobj.h>
00031
#include <vdk/vdkprops.h>
00036 class VDKSlider:
public VDKObject
00037 {
00038 GtkObject* adj;
00039
static void ValueChanged(GtkWidget *wid, gpointer gp);
00040
public:
00041
00045 VDKReadWriteValueProp<VDKSlider,float>
Value;
00049 VDKReadWriteValueProp<VDKSlider, int>
Digits;
00057 VDKReadWriteValueProp<VDKSlider, VDKUpdateType>
UpdatePolicy;
00061 VDKReadWriteValueProp<VDKSlider, float>
LowerBound;
00065 VDKReadWriteValueProp<VDKSlider, float>
UpperBound;
00069 VDKReadWriteValueProp<VDKSlider, float>
Step;
00081
VDKSlider(
VDKForm* owner,
00082
float defValue,
00083
float lower,
00084
float upper,
00085
float step_increment,
00086
int mode = h_box,
00087
int w = 100,
00088
int h = 30);
00092
virtual ~VDKSlider();
00093
00094
float GetValue() {
return Value; }
00095
00096 VDKUpdateType GetUpdatePolicy() {
return UpdatePolicy; }
00097
00098
void SetDigits(
int digits)
00099 {
00100 gtk_scale_set_digits(GTK_SCALE(widget), digits);
00101
Digits(digits);
00102 }
00103
00104
void SetUpdatePolicy(VDKUpdateType policy)
00105 { gtk_range_set_update_policy(GTK_RANGE(widget), (GtkUpdateType) policy); }
00106
00107
void SetValue(
float f);
00108
00109
float GetStep(
void);
00110
void SetStep(
float f);
00111
00112
00113
00114
float GetLowerBound(
void);
00115
void SetLowerBound(
float f);
00116
00117
float GetUpperBound(
void);
00118
void SetUpperBound(
float f);
00119
00120
#ifdef USE_SIGCPLUSPLUS
00121
00126 VDKSignal1<void, float>
OnSliderValueChanged;
00127
#endif
00128
};
00129
#endif