Mercurial > hg > orthanc-stone
comparison Framework/Widgets/LayoutWidget.cpp @ 318:3a4ca166fafa am-2
ImageAccessor refactoring + implemented Image Cache in SmartLoader
author | am@osimis.io |
---|---|
date | Mon, 08 Oct 2018 17:10:08 +0200 |
parents | 8a86695fcbc3 |
children | 8716176ff7f0 |
comparison
equal
deleted
inserted
replaced
317:b66d13708f40 | 318:3a4ca166fafa |
---|---|
55 } | 55 } |
56 } | 56 } |
57 | 57 |
58 virtual void Render(Orthanc::ImageAccessor& surface) | 58 virtual void Render(Orthanc::ImageAccessor& surface) |
59 { | 59 { |
60 Orthanc::ImageAccessor accessor = surface.GetRegion(left_, top_, width_, height_); | 60 Orthanc::ImageAccessor accessor; |
61 surface.GetRegion(accessor, left_, top_, width_, height_); | |
61 tracker_->Render(accessor); | 62 tracker_->Render(accessor); |
62 } | 63 } |
63 | 64 |
64 virtual void MouseUp() | 65 virtual void MouseUp() |
65 { | 66 { |
138 { | 139 { |
139 return true; | 140 return true; |
140 } | 141 } |
141 else | 142 else |
142 { | 143 { |
143 Orthanc::ImageAccessor accessor = target.GetRegion(left_, top_, width_, height_); | 144 Orthanc::ImageAccessor accessor; |
145 target.GetRegion(accessor, left_, top_, width_, height_); | |
144 return widget_->Render(accessor); | 146 return widget_->Render(accessor); |
145 } | 147 } |
146 } | 148 } |
147 | 149 |
148 IMouseTracker* CreateMouseTracker(MouseButton button, | 150 IMouseTracker* CreateMouseTracker(MouseButton button, |
169 int x, | 171 int x, |
170 int y) | 172 int y) |
171 { | 173 { |
172 if (Contains(x, y)) | 174 if (Contains(x, y)) |
173 { | 175 { |
174 Orthanc::ImageAccessor accessor = target.GetRegion(left_, top_, width_, height_); | 176 Orthanc::ImageAccessor accessor; |
177 target.GetRegion(accessor, left_, top_, width_, height_); | |
175 | 178 |
176 widget_->RenderMouseOver(accessor, x - left_, y - top_); | 179 widget_->RenderMouseOver(accessor, x - left_, y - top_); |
177 } | 180 } |
178 } | 181 } |
179 | 182 |