Commit Graph

15 Commits

Author SHA1 Message Date
Jonathan Daugherty
29ac664adc Use conditional imports to silence redundancy warnings on GHCs with base >= 4.8.0.0 2016-05-27 11:47:16 -07:00
Jonathan Daugherty
3081e7367d Replace "Name" type with custom name type variable everywhere
This experimental change makes it possible to:
* Avoid runtime errors due to name typos
* Achieve compile-time guarantees about name matching and usage
* Force widget functions to be name-agnostic by being polymorphic
  in their name type
* Clean up focus handling by making it possible to pattern-match
  on cursor location names

The change also made many types more heavyweight and in some cases
this is unpleasant when we don't want to have to care about names.
But in those cases we can just use 'n' or '()' depending on how
concrete we need to be.  I'm not yet sure how this is going to play
out in practice.
2016-03-04 14:42:49 -08:00
Jonathan Daugherty
35aa2ad8a4 Monster patch: move most data types to Brick.Types, remove IsString
instance for Widget

- This makes the module layout more predictable since Brick.Widgets.Core
  now (mostly) only contains widgets and widget transformations
- Utility functions closely related to types are now in Brick.Types
- Brick.Types.Internal contains types used internal by the renderer,
  some are re-exported by Brick.Types
2015-08-19 19:40:06 -07:00
Jonathan Daugherty
a2bf4e241a Border demo: update intersection field names 2015-07-17 18:37:11 -07:00
Jonathan Daugherty
69472322c2 HelloWorldDemo: use explicit imports (and improve others) 2015-07-10 13:15:30 -07:00
Jonathan Daugherty
2c26557149 BorderDemo: use explicit imports 2015-07-10 12:57:19 -07:00
Jonathan Daugherty
52bf9ec288 Clean up attribute management combinators, use attribute names instead of attributes 2015-06-28 22:08:54 -07:00
Jonathan Daugherty
9ec2d7eb7b Border: add function to build border style from a character 2015-06-28 21:28:55 -07:00
Jonathan Daugherty
4f55085a1a Make simpleMain interface as simple as possible 2015-06-28 12:48:39 -07:00
Jonathan Daugherty
6cbe25962a Add custom style to border demo 2015-06-28 12:31:44 -07:00
Jonathan Daugherty
141586a086 Minor border demo improvements 2015-06-28 12:25:21 -07:00
Jonathan Daugherty
b643cd9249 Minor border demo improvement 2015-06-28 12:21:58 -07:00
Jonathan Daugherty
6bee7578d9 Minor border demo improvements 2015-06-28 12:21:44 -07:00
Jonathan Daugherty
4f3039b093 Update border demo to show all border features 2015-06-28 12:20:40 -07:00
Jonathan Daugherty
ffbf2d89c6 Add demonstration program for borders 2015-06-28 12:15:55 -07:00