Revision: 77839
          http://sourceforge.net/p/brlcad/code/77839
Author:   brlcad
Date:     2020-12-01 09:21:36 +0000 (Tue, 01 Dec 2020)
Log Message:
-----------
rename SIMPLE to LIST.  adjust padding to be more minimal.  document some 
examples.

Modified Paths:
--------------
    brlcad/trunk/include/bu/tbl.h
    brlcad/trunk/src/libbu/tbl.c

Modified: brlcad/trunk/include/bu/tbl.h
===================================================================
--- brlcad/trunk/include/bu/tbl.h       2020-12-01 02:10:26 UTC (rev 77838)
+++ brlcad/trunk/include/bu/tbl.h       2020-12-01 09:21:36 UTC (rev 77839)
@@ -39,49 +39,73 @@
 /** @file bu/tbl.h */
 
 /**
- * this is pulled from num.c where the guts to the table printer
- * currently resides, moved here for easy reference.
- *
+ * Example 1:
  @code
- double vals[16] = {-1.123123123123, 0, 0, 1.0/0.0, 0, 123, 0, 0, 0, -2345, 
123123.123123123123, 0, 123123123.123123123, 21, 1.0/0.0, 1};
-
-
- bu_num_print(vals, 16, 4, "my matrix\n[\n", "\t[", NULL, ", ", "]\n", 
"]\n]\n");
- 
-------------------------------------------------------------------------------
 my matrix
 [
-       [-1.1231231231229999,     0,                  0, inf]
-       [                  0,   123,                  0,   0]
-       [                  0, -2345, 123123.12312312312,   0]
-       [ 123123123.12312312,    21,                inf,   1]
+        [ -1.1231231231229999,     0,                  0, inf ]
+        [                   0,   123,                  0,   0 ]
+        [                   0, -2345, 123123.12312312312,   0 ]
+        [  123123123.12312312,    21,                inf,   1 ]
 ]
+ @endcode
+ *
+ * generated from this code:
+ *
+ @code
+ double vals[16] = {-1.123123123123, 0, 0, 1.0/0.0, 0, 123, 0, 0, 0, -2345, 
123123.123123123123, 0, 123123123.123123123, 21, 1.0/0.0, 1};
 
- bu_num_print(vals+5, 3, 3, "POINT { ", NULL, NULL, " ", NULL, " }\n");
- ---------------------------------------------------------------------
-POINT { 123 0 0 }
+ struct bu_tbl *t = bu_tbl_create();
 
- bu_num_print(vals, 16, 4, "MATRIX [", " [", NULL, ", ", "]\n", "] ]\n");
- -----------------------------------------------------------------------
-MATRIX [ [-1.1231231231229999,     0,                  0, inf]
-         [                  0,   123,                  0,   0]
-         [                  0, -2345, 123123.12312312312,   0]
-         [ 123123123.12312312,    21,                inf,   1] ]
+ bu_tbl_style(t, BU_TBL_STYLE_NONE);
+ bu_tbl_printf(t, "my matrix");
+ bu_tbl_style(t, BU_TBL_ROW_END);
+ bu_tbl_style(t, BU_TBL_ROW_ALIGN_LEFT);
+ bu_tbl_printf(t, "[");
+ bu_tbl_style(t, BU_TBL_ROW_END);
+ bu_tbl_style(t, BU_TBL_ROW_ALIGN_RIGHT);
+ bu_tbl_printf(t, "[|%.17g,|%.17g,|%.17g,|%.17g|]", vals[0], vals[1], vals[2], 
vals[3]);
+ bu_tbl_style(t, BU_TBL_ROW_END);
+ bu_tbl_style(t, BU_TBL_ROW_ALIGN_RIGHT);
+ bu_tbl_printf(t, "[|%.17g,|%.17g,|%.17g,|%.17g|]", vals[4], vals[5], vals[6], 
vals[7]);
+ bu_tbl_style(t, BU_TBL_ROW_END);
+ bu_tbl_style(t, BU_TBL_ROW_ALIGN_RIGHT);
+ bu_tbl_printf(t, "[|%.17g,|%.17g,|%.17g,|%.17g|]", vals[8], vals[9], 
vals[10], vals[11]);
+ bu_tbl_style(t, BU_TBL_ROW_END);
+ bu_tbl_style(t, BU_TBL_ROW_ALIGN_RIGHT);
+ bu_tbl_printf(t, "[|%.17g,|%.17g,|%.17g,|%.17g|]", vals[12], vals[13], 
vals[14], vals[15]);
+ bu_tbl_style(t, BU_TBL_ROW_END);
+ bu_tbl_style(t, BU_TBL_ROW_ALIGN_LEFT);
+ bu_tbl_printf(t, "]");
 
- bu_num_print(vals, 16, 4, NULL, NULL, NULL, " ", "    ", "\n");
- --------------------------------------------------------------
--1.1231231231229999 0 0 inf    0 123 0 0    0 -2345 123123.12312312312 0    
123123123.12312312 21 inf 1
-
- bu_num_print(vals, 4, 4, NULL, NULL, NULL, NULL, NULL, NULL);
- ------------------------------------------------------------
--1.1231231231229999 0 0 inf
-
- bu_num_print(vals, 16, 4, NULL, NULL, "%017.2lf", " ", "\n", "\n");
- ------------------------------------------------------------------
+ bu_tbl_destroy(t);
+ @endcode
+ *
+ * Example 2:
+ @code
 -0000000000001.12 00000000000000.00 00000000000000.00               inf
 00000000000000.00 00000000000123.00 00000000000000.00 00000000000000.00
 00000000000000.00 -0000000002345.00 00000000123123.12 00000000000000.00
 00000123123123.12 00000000000021.00               inf 00000000000001.00
+ @endcode
+ *
+ *
+ *
+ @code
+ double vals[16] = {-1.123123123123, 0, 0, 1.0/0.0, 0, 123, 0, 0, 0, -2345, 
123123.123123123123, 0, 123123123.123123123, 21, 1.0/0.0, 1};
 
+ struct bu_tbl *t = bu_tbl_create();
+
+ bu_tbl_style(t, BU_TBL_STYLE_LIST);
+ bu_tbl_printf(t, "%017.2lf|%017.2lf|%017.2lf|%017.2lf", vals[0], vals[1], 
vals[2], vals[3]);
+ bu_tbl_style(t, BU_TBL_ROW_END);
+ bu_tbl_printf(t, "%017.2lf|%017.2lf|%017.2lf|%017.2lf", vals[4], vals[5], 
vals[6], vals[7]);
+ bu_tbl_style(t, BU_TBL_ROW_END);
+ bu_tbl_printf(t, "%017.2lf|%017.2lf|%017.2lf|%017.2lf", vals[8], vals[9], 
vals[10], vals[11]);
+ bu_tbl_style(t, BU_TBL_ROW_END);
+ bu_tbl_printf(t, "%017.2lf|%017.2lf|%017.2lf|%017.2lf", vals[12], vals[13], 
vals[14], vals[15]);
+
+ bu_tbl_destroy(t);
  @endcode
  *
  */
@@ -116,11 +140,21 @@
 bu_tbl_clear(struct bu_tbl *);
 
 
+/**
+ * Table styles:
+ *
+ *  NONE 1  ------ ---  +-------+---+  ╭────────┬───╮  ╔════════╦═══╗
+ *  2    3   LIST   1   | BASIC | 1 |  │ SINGLE │ 1 │  ║ DOUBLE ║ 1 ║
+ *  4    5  ------ ---  +-------+---+  ├────────┼───┤  ╠════════╬═══╣
+ *           2      3   | 2     | 3 |  │ 2      │ 3 │  ║ 2      ║ 3 ║
+ *           4      5   | 4     | 5 |  │ 4      │ 5 │  ║ 4      ║ 5 ║
+ *                      +-------+---+  ╰────────┴───╯  ╚════════╩═══╝
+ */
 enum bu_tbl_style {
     /* table border style */
     BU_TBL_STYLE_NONE,
+    BU_TBL_STYLE_LIST,
     BU_TBL_STYLE_BASIC,
-    BU_TBL_STYLE_SIMPLE,
     BU_TBL_STYLE_SINGLE,
     BU_TBL_STYLE_DOUBLE,
 
@@ -156,17 +190,17 @@
 
 
 /**
- * set cell position of the current table insertion point.
+ * get cell position for the current table insertion point.
  */
 BU_EXPORT extern struct bu_tbl *
-bu_tbl_go_to(struct bu_tbl *, size_t row, size_t col);
+bu_tbl_is_at(struct bu_tbl *, size_t *row, size_t *col);
 
 
 /**
- * get cell position for the current table insertion point.
+ * set cell position of the current table insertion point.
  */
 BU_EXPORT extern struct bu_tbl *
-bu_tbl_is_at(struct bu_tbl *, size_t *row, size_t *col);
+bu_tbl_go_to(struct bu_tbl *, size_t row, size_t col);
 
 
 /**

Modified: brlcad/trunk/src/libbu/tbl.c
===================================================================
--- brlcad/trunk/src/libbu/tbl.c        2020-12-01 02:10:26 UTC (rev 77838)
+++ brlcad/trunk/src/libbu/tbl.c        2020-12-01 09:21:36 UTC (rev 77839)
@@ -85,13 +85,17 @@
     switch (style) {
        case BU_TBL_STYLE_NONE:
            ft_set_border_style(tbl->t, FT_EMPTY_STYLE);
+           ft_set_cell_prop(tbl->t, FT_ANY_ROW, FT_ANY_COLUMN, 
FT_CPROP_LEFT_PADDING, 0);
+           ft_set_cell_prop(tbl->t, FT_ANY_ROW, FT_ANY_COLUMN, 
FT_CPROP_RIGHT_PADDING, 1);
            break;
+       case BU_TBL_STYLE_LIST:
+           ft_set_border_style(tbl->t, FT_SIMPLE_STYLE);
+           ft_set_cell_prop(tbl->t, FT_ANY_ROW, FT_ANY_COLUMN, 
FT_CPROP_LEFT_PADDING, 0);
+           ft_set_cell_prop(tbl->t, FT_ANY_ROW, FT_ANY_COLUMN, 
FT_CPROP_RIGHT_PADDING, 0);
+           break;
        case BU_TBL_STYLE_BASIC:
            ft_set_border_style(tbl->t, FT_BASIC_STYLE);
            break;
-       case BU_TBL_STYLE_SIMPLE:
-           ft_set_border_style(tbl->t, FT_SIMPLE_STYLE);
-           break;
        case BU_TBL_STYLE_SINGLE:
            ft_set_border_style(tbl->t, FT_SOLID_ROUND_STYLE);
            break;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to