Files
flenser/dw/alignedtablecell.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

50 lines
1.4 KiB
C++

#ifndef __DW_ALIGNEDTABLECELL_HH__
#define __DW_ALIGNEDTABLECELL_HH__
#include "core.hh"
#include "alignedtextblock.hh"
namespace dw {
class AlignedTableCell: public AlignedTextblock
{
private:
int charWordIndex, charWordPos;
protected:
int getAvailWidthOfChild (Widget *child, bool forceValue);
int getAvailHeightOfChild (Widget *child, bool forceValue);
void correctRequisitionOfChild (Widget *child,
core::Requisition *requisition,
void (*splitHeightFun) (int, int*, int*),
bool allowDecreaseWidth,
bool allowDecreaseHeight);
void correctExtremesOfChild (Widget *child, core::Extremes *extremes,
bool useAdjustmentWidth);
bool getAdjustMinWidth ();
bool adjustExtraSpaceWhenCorrectingRequisitionByOOF ();
int wordWrap (int wordIndex, bool wrapAll);
int getValue ();
void setMaxValue (int maxValue, int value);
public:
AlignedTableCell(AlignedTableCell *ref, bool limitTextWidth);
~AlignedTableCell();
int applyPerWidth (int containerWidth, core::style::Length perWidth);
int applyPerHeight (int containerHeight, core::style::Length perHeight);
bool isBlockLevel ();
bool usesMaxGeneratorWidth ();
};
} // namespace dw
#endif // __DW_ALIGNEDTABLECELL_HH__