get-renderers

master
Steve Ayerhart 2021-08-09 17:17:00 -04:00
parent 0e6ec218a6
commit 260d2fb9da
No known key found for this signature in database
GPG Key ID: 5C815FDF3A00B8BA
2 changed files with 15 additions and 3 deletions

View File

@ -1,8 +1,11 @@
USING: kernel destructors alien.c-types alien.data strings sequences ; USING: kernel destructors alien.c-types alien.data strings sequences ;
USING: bemenu.ffi ; USING: bemenu.ffi bemenu.ffi.private ;
USING: vocabs.parser ;
IN: bemenu IN: bemenu
"bemenu.ffi" use-vocab
TUPLE: bemenu-renderer TUPLE: bemenu-renderer
ptr name priority ; ptr name priority ;
@ -13,7 +16,7 @@ TUPLE: bemenu-renderer
"hi" "hi"
] with-destructors ; ] with-destructors ;
: bm-get-renderers ( -- renderers ) : bemenu-get-renderers ( -- renderers )
0 uint32_t <ref> [ bm_get_renderers ] keep uint32_t deref void* <c-direct-array> 0 uint32_t <ref> [ bm_get_renderers ] keep uint32_t deref void* <c-direct-array>
[ [
dup dup

View File

@ -7,7 +7,6 @@ IN: bemenu.ffi
LIBRARY: bemenu LIBRARY: bemenu
C-TYPE: bm_renderer C-TYPE: bm_renderer
C-TYPE: bm_menu C-TYPE: bm_menu
C-TYPE: bm_item C-TYPE: bm_item
@ -20,12 +19,15 @@ C-TYPE: bm_item
! @return true on success, false on failure. ! @return true on success, false on failure.
FUNCTION-ALIAS: bemenu-init bool bm_init ( ) FUNCTION-ALIAS: bemenu-init bool bm_init ( )
<PRIVATE
! Get list of available renderers. ! Get list of available renderers.
! !
! @param out_nmemb Reference to uint32_t where total count of returned renderers will be stored. ! @param out_nmemb Reference to uint32_t where total count of returned renderers will be stored.
! @return Pointer to array of bm_renderer instances. ! @return Pointer to array of bm_renderer instances.
FUNCTION: bm_renderer** bm_get_renderers ( uint32_t *out_nmemb ) FUNCTION: bm_renderer** bm_get_renderers ( uint32_t *out_nmemb )
PRIVATE>
! Get version of the library in 'major.minor.patch' format. ! Get version of the library in 'major.minor.patch' format.
! !
! @see @link http://semver.org/ Semantic Versioning @endlink ! @see @link http://semver.org/ Semantic Versioning @endlink
@ -33,12 +35,15 @@ FUNCTION: bm_renderer** bm_get_renderers ( uint32_t *out_nmemb )
! @return Null terminated C "string" to version string. ! @return Null terminated C "string" to version string.
FUNCTION-ALIAS: bemenu-version c-string bm_version ( ) FUNCTION-ALIAS: bemenu-version c-string bm_version ( )
<PRIVATE
ENUM: bm_priorty ENUM: bm_priorty
! renderer runs in terminal ! renderer runs in terminal
BM_PRIO_TERMINAL BM_PRIO_TERMINAL
! renderer runs in GUI ! renderer runs in GUI
BM_PRIO_GUI ; BM_PRIO_GUI ;
! Get name of the renderer. ! Get name of the renderer.
! !
! @param renderer bm_renderer instance. ! @param renderer bm_renderer instance.
@ -51,6 +56,10 @@ FUNCTION: c-string bm_renderer_get_name ( bm_renderer* renderer )
! @return bm_priorty enum value. ! @return bm_priorty enum value.
FUNCTION: bm_priorty bm_renderer_get_priorty ( bm_renderer* renderer ) FUNCTION: bm_priorty bm_renderer_get_priorty ( bm_renderer* renderer )
PRIVATE>
ALIAS: bm-priorty bm_priorty
ENUM: bm_filter_mode ENUM: bm_filter_mode
BM_FILTER_MODE_DMENU BM_FILTER_MODE_DMENU
BM_FILTER_MODE_DMENU_CASE_INSENSITIVE BM_FILTER_MODE_DMENU_CASE_INSENSITIVE