altos/telelco-v3: Add logo to 'info' page
[fw/altos] / src / draw / ao_logo.c
index 1469ae21fca31ca777b7083448e23dd1565286e9..53b9a3c289400eabde5dcedd0392aadf8545d50b 100644 (file)
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-#include "ao_draw.h"
+#include <ao_draw.h>
 #include "ao_logo.h"
 
 #define ARRAYSIZE(a)   (sizeof(a) / sizeof((a)[0]))
 
 void
-ao_logo(const struct ao_bitmap *dst,
-       const struct ao_font    *font,
-       uint32_t                fill,
-       uint8_t                 rop)
+ao_logo_poly(struct ao_bitmap          *dst,
+            const struct ao_transform  *transform,
+            uint32_t                   fill,
+            uint8_t                    rop)
 {
-       ao_poly(dst, ao_logo_top, ARRAYSIZE(ao_logo_top), 0x00000000, AO_COPY);
-       ao_poly(dst, ao_logo_bottom, ARRAYSIZE(ao_logo_bottom), 0x00000000, AO_COPY);
-       ao_text(dst, font, 38, 31, "Altus", 0x00000000, AO_COPY);
-       ao_text(dst, font, 38, 57, "Metrum", 0x00000000, AO_COPY);
+       if (!transform)
+               transform = &ao_identity;
+       ao_poly(dst, ao_logo_top, ARRAYSIZE(ao_logo_top), transform, fill, rop);
+       ao_poly(dst, ao_logo_bottom, ARRAYSIZE(ao_logo_bottom), transform, fill, rop);
+}
+
+void
+ao_logo(struct ao_bitmap               *dst,
+       const struct ao_transform       *transform,
+       const struct ao_font            *font,
+       uint32_t                        fill,
+       uint8_t                         rop)
+{
+       if (!transform)
+               transform = &ao_identity;
+       int16_t name_x = ao_t_xi(ao_logo_width, 0.0f, transform);
+       int16_t name_y1 = ao_t_yi(ao_logo_width, 0.5f, transform);
+       int16_t name_y2 = ao_t_yi(ao_logo_width, 0.98f, transform);
+       ao_logo_poly(dst, transform, fill, rop);
+       ao_text(dst, font, name_x, name_y1, "Altus", fill, rop);
+       ao_text(dst, font, name_x, name_y2, "Metrum", fill, rop);
 }