Files
flenser/dw/ruler.hh
ADAM David Alan Martin 8549ca489f
Some checks failed
CI / ubuntu-latest-html-tests (push) Has been cancelled
CI / ubuntu-latest-no-tls (push) Has been cancelled
CI / ubuntu-latest-mbedtls2 (push) Has been cancelled
CI / ubuntu-latest-openssl-3 (push) Has been cancelled
CI / ubuntu-latest-with-old-std (push) Has been cancelled
CI / ubuntu-20-04-openssl-1-1 (push) Has been cancelled
CI / alpine-mbedtls-3_6_0 (push) Has been cancelled
CI / macOS-13-openssl-1-1 (push) Has been cancelled
CI / macOS-13-openssl-3 (push) Has been cancelled
CI / freebsd-14-openssl-3 (push) Has been cancelled
CI / windows-mbedtls (push) Has been cancelled
Poor man's RTTI is mostly gone.
I'm keeping the type-index to name mapping, for now.
2025-08-09 06:31:08 -04:00

44 lines
1.2 KiB
C++

#ifndef __RULER_HH__
#define __RULER_HH__
#include "regardingborder.hh"
namespace dw {
/**
* \brief Widget for drawing (horizontal) rules.
*
* This is really an empty widget, the HTML parser puts a border
* around it, and drawing is done in dw::core::Widget::drawWidgetBox.
*
* Ruler implements RegardingBorder; this way, it is simpler to fit
* the ruler exactly within the space between floats. Currently, the
* drawn area of the ruler is too large (but most of the superfluous
* part is hidden by the floats); this problem will soon solved here
* in the "dillo_grows" repository.
*/
class Ruler: public RegardingBorder
{
protected:
void sizeRequestSimpl (core::Requisition *requisition);
void getExtremesSimpl (core::Extremes *extremes);
void containerSizeChangedForChildren ();
bool usesAvailWidth ();
void draw (core::View *view, core::Rectangle *area,
core::DrawingContext *context);
core::Widget *getWidgetAtPoint (int x, int y,
core::GettingWidgetAtPointContext *context);
public:
Ruler ();
~Ruler ();
bool isBlockLevel ();
core::Iterator *iterator (core::Content::Type mask, bool atEnd);
};
} // namespace dw
#endif // __RULER_HH__