24 lines
522 B
C++
24 lines
522 B
C++
/* ImSpan.hpp */
|
|
|
|
#pragma once
|
|
|
|
#include "imgui.h"
|
|
|
|
/* similar to ImVec2, but firmly located in xo territory
|
|
*/
|
|
struct ImSpan {
|
|
ImSpan() : lo_{0.0}, hi_{0.0} {}
|
|
ImSpan(float lo, float hi) : lo_{lo}, hi_{hi} {}
|
|
|
|
float lo() const { return lo_; }
|
|
float hi() const { return hi_; }
|
|
|
|
ImSpan normalize() const { return (lo_ <= hi_) ? ImSpan(lo_, hi_) : ImSpan{hi_, lo_}; }
|
|
ImVec2 to_imvec2() const { return ImVec2(lo_, hi_); }
|
|
|
|
private:
|
|
float lo_ = 0.0;
|
|
float hi_ = 0.0;
|
|
};
|
|
|
|
/* end ImSpan.hpp */
|