MCPcopy Create free account
hub / github.com/TankOs/SFGUI / SetVerticalAdjustment

Method SetVerticalAdjustment

src/SFGUI/Viewport.cpp:174–198  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

172}
173
174void Viewport::SetVerticalAdjustment( Adjustment::Ptr vertical_adjustment ) {
175 if( m_vertical_adjustment ) {
176 m_vertical_adjustment->GetSignal( Adjustment::OnChange ).Disconnect( m_vertical_adjustment_signal_serial );
177 }
178
179 m_vertical_adjustment = vertical_adjustment;
180
181 auto weak_this = std::weak_ptr<Widget>( shared_from_this() );
182
183 m_vertical_adjustment_signal_serial = m_vertical_adjustment->GetSignal( Adjustment::OnChange ).Connect( [weak_this] {
184 auto shared_this = weak_this.lock();
185
186 if( !shared_this ) {
187 return;
188 }
189
190 auto viewport = std::dynamic_pointer_cast<Viewport>( shared_this );
191
192 if( !viewport ) {
193 return;
194 }
195
196 viewport->UpdateView();
197 } );
198}
199
200void Viewport::HandleRequisitionChange() {
201 // A child just requested it's size. Because we are a viewport

Callers 1

CreateMethod · 0.45

Calls 3

DisconnectMethod · 0.80
ConnectMethod · 0.80
UpdateViewMethod · 0.80

Tested by

no test coverage detected