Added theme.c to keep gcc happy
[hackover2013-badge-firmware.git] / ChangeLog.txt
index a813faf..979788a 100644 (file)
@@ -1,14 +1,89 @@
-v0.9.8 - Ongoing
-================
+v1.1.0 - Ongoing
+==============================================================================
+BREAKING CHANGES
+------------------------------------------------------------------------------
+- Rewrote corner and rounded rectangle code.  Only one corner enum is now used
+  (drawCorners_t)
+- Renamed drawRectangleRounded to drawRoundedRectangleFilled
+- Removed drawProgressBar and drawButton from drawing.c, since drawing should
+  only contain drawing primitives
+- Reorganised a lot of the TFT drawing library to support external controls,
+  and dynamically switch between bitmap and anti-aliased fonts.  In the future
+  everything that isn't a basic drawing primitive will be placed in it's own
+  control.  The main benefit of this is that it's much easier to customize the
+  look and feel of your UI without having to modify drawing.c and the basic
+  drawing primitives, and to be able to switch from bitmap to anti-aliased
+  fonts depending on how much flash space you have free, etc.
+- Removed bmp_error_t drawBitmapImage(uint16_t x, uint16_t y, char *filename)
+  to keep better seperation of primitives and more complex features, and
+  reduce external dependencies in drawing.c.  Call bmpDrawImage (bmp.c)
+  directly instead.
+
+NEW FEATURES
+------------------------------------------------------------------------------
+- Added drawCorner to graphics.c
+- Added new 'controls/' folder to the GFX library, and added a number of
+  controls that will render correctly with the theme settings, as well as
+  using bitmap or anti-aliased fonts, depending on projectconfig.h
+- New controls:
+  - button
+  - hsbchart (Hue/saturation/brightness chart for color pickers)
+  - huechart (Hue selection gradient for color pickers)
+  - label
+  - labelcentered
+  - progressbar
+- Added theme.h to try to define all of the color and font settings used by
+  the controls in one location to make it easier to update or modify
+- Added aafontsCenterString to aafonts.c
+
+BUG FIXES/OPTIMISATION/ETC.
+------------------------------------------------------------------------------
+- Updated Crossworks Project to use LPC1000 Lib 1.19 (uses CMSIS 3.0)
+- Some performance improvements to core/gpio/gpio.c (thanks Tom for the
+  suggestion)
+- Fixed alpha blending when alpha = 100%
+- Change gpioSetValue to be inline (should optimise to a single operation)
+
+v1.0.0 - 23 March 2012
+===========================================================
+- Added support for LPCXpresso IDE
+- *** Moved '/drivers/chibi' to '/drivers/rf/chibi' ***
+- *** Moved '/drivers/sensors/pn532' to '/drivers/rf/pn532' ***
+- *** Renamed '/drivers/spiflash' to '/drivers/storage/spiflash' ***
+- *** Renamed '/drivers/eeprom' to '/drivers/storage/eeprom' ***
+- *** Renamed '/drivers/lcd' to '/drivers/display' ***
+- Added I2C support to the SSD1306 driver
+- Moved all color conversion and manipulation functions
+  to '/drivers/displays/tft/colors.c', and added a
+  few new functions: colorsDim(), etc.
+- Added code to render antialiased fonts, based on
+  lookup tables (fast) or alpha-blending (mixed color
+  backgrounds).  Support for AA2 (2-bit) and AA4
+  (4-bit) anti-aliased fonts included.  Alpha-blending
+  only possible on displays where pixels can be read
+  back.
+- Added drawGradient() to drawing.c
+- Removed height parameter from drawButton.  It's now
+  calculated based on the font height, and centered.
+- Added bell to CLI when backspace is pressed beyond
+  the starting position (cosmetic, but still useful)
+- Removed dependency on /core/libc files in Crossworks
+  when redirecting printf (added printf replacement
+  to sysinit.c instead)
+- Added basic AS1115 driver for segment displays
+- Added driver for HX8340-B based LCDs
+- Added flag to projectconfig.h to disable the default
+  GPIO IRQ Handler functions in code/gpio/gpio.c (in
+  case you want to make your own ISR elsewhere)
 - Added driver for Samsung VFD displays from Adafruit
-- Added average sampling option to projectconfig.h.
+- Added ADC average sampling option to projectconfig.h.
   This allows you to take several readings from the
-  ADC and return the average.  Helps reduces one-off
-  peaks and valleys in the ADC at the expense of
-  slower reads.
+  ADC and return the average.  Helps reduces peaks and
+  valleys in the ADC due to noisen but at the expense
+  of slower reads.
   See: "tools/validation/adctest" for more info
 - Added I2C driver for PN532
-- Updated and added PN532 examples at
+- Updated and added PN532 examples to
   /tools/examples/sensors/PN532
 - updated touchscreen.h to be a bit clearer during
   calibration, though it can still be much better
This page took 0.026891 seconds and 4 git commands to generate.