/* Copyright 2020, Dirk Krause. All rights reserved. SPDX-License-Identifier: BSD-3-Clause */ #ifndef DK4ALIGN_H_INCLUDED /** Protection against multiple inclusions. */ #define DK4ALIGN_H_INCLUDED 1 /** @file dk4align.h Definitions for horizontal and vertical alignment. */ /** How to align a text horizontally. */ typedef enum { /** Text origin is at left side of text. */ DK4_TEXT_ALIGN_H_LEFT = 0, /** Text origin is at center of text. */ DK4_TEXT_ALIGN_H_CENTERED , /** Text origin is at right side of text. */ DK4_TEXT_ALIGN_H_RIGHT , } dk4_text_align_h_t; /** How to align a text vertically. */ typedef enum { /** Text origin is at top of text. */ DK4_TEXT_ALIGN_V_TOP = 0, /** Text origin is at center of text. */ DK4_TEXT_ALIGN_V_CENTERED , /** Text origin is at bottom of text. */ DK4_TEXT_ALIGN_V_BOTTOM , /** Text origin is at text base line. */ DK4_TEXT_ALIGN_V_BASELINE } dk4_text_align_v_t; /** How to align an image horizontally within the available room. */ typedef enum { /** Place image on the left. */ DK4_IMAGE_ALIGN_H_LEFT = DK4_TEXT_ALIGN_H_LEFT , /** Place image centered. */ DK4_IMAGE_ALIGN_H_CENTERED = DK4_TEXT_ALIGN_H_CENTERED , /** Place image on the right. */ DK4_IMAGE_ALIGN_H_RIGHT = DK4_TEXT_ALIGN_H_RIGHT , /** Stretch image to use room completely. */ DK4_IMAGE_ALIGN_H_STRETCH = (DK4_IMAGE_ALIGN_H_RIGHT + 1) } dk4_image_align_h_t; /** How to align an image vertically in the available room. */ typedef enum { /** Place image on top. */ DK4_IMAGE_ALIGN_V_TOP = DK4_TEXT_ALIGN_V_TOP , /** Place image centered. */ DK4_IMAGE_ALIGN_V_CENTERED = DK4_TEXT_ALIGN_V_CENTERED , /** Place image on bottom. */ DK4_IMAGE_ALIGN_V_BOTTOM = DK4_TEXT_ALIGN_V_BOTTOM , /** Stretch image to fill room. */ DK4_IMAGE_ALIGN_V_STRETCH = DK4_TEXT_ALIGN_V_BASELINE } dk4_image_align_v_t; /* vim: set ai sw=4 ts=4 : */ #endif