Cadabra
Computer algebra system for field theory problems
Loading...
Searching...
No Matches
cadabra::SmoothScroller Class Reference

#include <NotebookCanvas.hh>

Public Member Functions

 SmoothScroller (Glib::RefPtr< Gtk::Adjustment > adj)
void scroll_to (double target)
void stop ()
void set_duration (double ms)

Private Member Functions

bool on_timeout ()

Private Attributes

Glib::RefPtr< Gtk::Adjustment > adjustment_
double target_value_
double start_value_
double duration_ms_
double elapsed_ms_
sigc::connection timeout_connection_

Static Private Attributes

static constexpr double FRAME_RATE_MS = 16.67

Constructor & Destructor Documentation

◆ SmoothScroller()

cadabra::SmoothScroller::SmoothScroller ( Glib::RefPtr< Gtk::Adjustment > adj)
inline

Member Function Documentation

◆ on_timeout()

bool cadabra::SmoothScroller::on_timeout ( )
inlineprivate

◆ scroll_to()

void cadabra::SmoothScroller::scroll_to ( double target)
inline

◆ set_duration()

void cadabra::SmoothScroller::set_duration ( double ms)
inline

◆ stop()

void cadabra::SmoothScroller::stop ( )
inline

Member Data Documentation

◆ adjustment_

Glib::RefPtr<Gtk::Adjustment> cadabra::SmoothScroller::adjustment_
private

◆ duration_ms_

double cadabra::SmoothScroller::duration_ms_
private

◆ elapsed_ms_

double cadabra::SmoothScroller::elapsed_ms_
private

◆ FRAME_RATE_MS

double cadabra::SmoothScroller::FRAME_RATE_MS = 16.67
staticconstexprprivate

◆ start_value_

double cadabra::SmoothScroller::start_value_
private

◆ target_value_

double cadabra::SmoothScroller::target_value_
private

◆ timeout_connection_

sigc::connection cadabra::SmoothScroller::timeout_connection_
private

The documentation for this class was generated from the following file: