From a20944f5f9b5d810976b0546dc673e294bad0573 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Thu, 19 Feb 2009 18:22:11 -0600 Subject: [PATCH] Add color-table demo --- extra/color-table/authors.txt | 1 + extra/color-table/color-table-tests.factor | 4 ++ extra/color-table/color-table.factor | 43 ++++++++++++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 extra/color-table/authors.txt create mode 100644 extra/color-table/color-table-tests.factor create mode 100644 extra/color-table/color-table.factor diff --git a/extra/color-table/authors.txt b/extra/color-table/authors.txt new file mode 100644 index 0000000000..d4f5d6b3ae --- /dev/null +++ b/extra/color-table/authors.txt @@ -0,0 +1 @@ +Slava Pestov \ No newline at end of file diff --git a/extra/color-table/color-table-tests.factor b/extra/color-table/color-table-tests.factor new file mode 100644 index 0000000000..69f754dce8 --- /dev/null +++ b/extra/color-table/color-table-tests.factor @@ -0,0 +1,4 @@ +! Copyright (C) 2009 Slava Pestov. +! See http://factorcode.org/license.txt for BSD license. +USING: tools.test color-table ; +IN: color-table.tests diff --git a/extra/color-table/color-table.factor b/extra/color-table/color-table.factor new file mode 100644 index 0000000000..13a516eaf1 --- /dev/null +++ b/extra/color-table/color-table.factor @@ -0,0 +1,43 @@ +! Copyright (C) 2009 Slava Pestov. +! See http://factorcode.org/license.txt for BSD license. +USING: kernel accessors combinators.smart sorting.human +models colors.constants present +ui ui.gadgets.tables ui.gadgets.scrollers ; +IN: color-table + +! ui.gadgets.tables demo +SINGLETON: color-renderer + +M: color-renderer filled-column + drop 0 ; + +M: color-renderer column-titles + drop { "Name" "Red" "Green" "Blue" } ; + +M: color-renderer row-columns + drop [ + dup named-color + [ red>> present ] + [ green>> present ] + [ blue>> present ] tri + ] output>array ; + +M: color-renderer row-color + drop named-color ; + +M: color-renderer row-value + drop named-color ; + +: ( -- table ) + named-colors human-sort + color-renderer + + 5 >>gap + COLOR: dark-gray >>column-line-color + 10 >>min-rows + 10 >>max-rows ; + +: color-table-demo ( -- ) + [ "Colors" open-window ] with-ui ; + +MAIN: color-table-demo \ No newline at end of file