diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2016-10-14 23:15:16 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2016-10-14 23:15:16 +0300 |
commit | 06c13b3498a236a518df76bdb1b9895540c1df3b (patch) | |
tree | 2a3dbde172ee789a55b18180f58f28161b8a4efb /include/mailutils | |
parent | d4a938f6d533981a77ddd55972e4c98b016d03d3 (diff) | |
download | mailutils-06c13b3498a236a518df76bdb1b9895540c1df3b.tar.gz mailutils-06c13b3498a236a518df76bdb1b9895540c1df3b.tar.bz2 |
Implement simple word-wrapping stream
* include/mailutils/stream.h (MU_IOCTL_WORDWRAPSTREAM): New ioctl.
(mu_wordwrap_stream_create): New proto.
* libmailutils/stream/Makefile.am: add wordwrap.c
* libmailutils/stream/wordwrap.c: New file.
* libmailutils/tests/Makefile.am: Add new testcases.
* libmailutils/tests/testsuite.at: Include new testcases.
* libmailutils/tests/wordwrap.c: New file.
* libmailutils/tests/wordwrap00.at: New file.
* libmailutils/tests/wordwrap01.at: New file.
* libmailutils/tests/wordwrap02.at: New file.
* libmailutils/tests/wordwrap03.at: New file.
Diffstat (limited to 'include/mailutils')
-rw-r--r-- | include/mailutils/stream.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/include/mailutils/stream.h b/include/mailutils/stream.h index d87030667..d891aa466 100644 --- a/include/mailutils/stream.h +++ b/include/mailutils/stream.h @@ -78,7 +78,8 @@ enum mu_buffer_type always returns the topmost substream. */ #define MU_IOCTL_TLSSTREAM 13 /* TLS stream */ - +#define MU_IOCTL_WORDWRAPSTREAM 14 /* Word-wrapper stream */ + /* Opcodes common for various families */ #define MU_IOCTL_OP_GET 0 #define MU_IOCTL_OP_SET 1 @@ -206,6 +207,11 @@ enum mu_buffer_type #define MU_TRANSPORT_VALID_TYPE(n) \ ((n) == MU_TRANSPORT_INPUT || (n) == MU_TRANSPORT_OUTPUT) +/* Word wrapper streams */ +#define MU_IOCTL_WORDWRAP_GET_MARGIN 0 +#define MU_IOCTL_WORDWRAP_SET_MARGIN 1 +#define MU_IOCTL_WORDWRAP_MOVE_MARGIN 2 + struct mu_nullstream_pattern { char *pattern; @@ -360,6 +366,9 @@ int mu_rdcache_stream_create (mu_stream_t *pstream, mu_stream_t transport, int flags); int mu_nullstream_create (mu_stream_t *pref, int flags); + +int mu_wordwrap_stream_create (mu_stream_t *pstream, mu_stream_t transport, + size_t left_margin, size_t right_margin); #ifdef __cplusplus } |