00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #include "pent_include.h"
00019 #include "SlidingWidget.h"
00020 #include "ShapeFrame.h"
00021 #include "Shape.h"
00022
00023 #include "IDataSource.h"
00024 #include "ODataSource.h"
00025
00026 DEFINE_RUNTIME_CLASSTYPE_CODE(SlidingWidget,Gump);
00027
00028 SlidingWidget::SlidingWidget()
00029 : Gump()
00030 {
00031 }
00032
00033 SlidingWidget::SlidingWidget(int x, int y, Shape* shape_, uint32 framenum_)
00034 : Gump(x, y, 5, 5, 0, FLAG_DRAGGABLE)
00035 {
00036 shape = shape_;
00037 framenum = framenum_;
00038 }
00039
00040 SlidingWidget::~SlidingWidget()
00041 {
00042 }
00043
00044 void SlidingWidget::InitGump(Gump* newparent, bool take_focus)
00045 {
00046 Gump::InitGump(newparent, take_focus);
00047
00048 ShapeFrame* sf = shape->getFrame(framenum);
00049 assert(sf);
00050
00051 dims.w = sf->width;
00052 dims.h = sf->height;
00053 }
00054
00055 uint16 SlidingWidget::TraceObjId(int mx, int my)
00056 {
00057 if (PointOnGump(mx, my))
00058 return getObjId();
00059 else
00060 return 0;
00061 }
00062
00063 void SlidingWidget::saveData(ODataSource* ods)
00064 {
00065 Gump::saveData(ods);
00066 }
00067
00068 bool SlidingWidget::loadData(IDataSource* ids, uint32 version)
00069 {
00070 if (!Gump::loadData(ids, version)) return false;
00071
00072 return true;
00073 }