The croatoan Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The croatoan Reference Manual

This is the croatoan Reference Manual, version 0.0.1, generated automatically by Declt version 3.0 "Montgomery Scott" on Mon Dec 02 10:04:32 2019 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Introduction

croatoan is a set of bindings to the ncurses terminal library for
Common Lisp.

It is inspired by, but not derived from, cl-ncurses and cl-charms.

Its main goal is to provide a higher-level, lispy/CLOSy interface,
whereas the existing bindings clone the cryptic C API.

As of now, the library is in an early, but hopefully usable stage. 
Ncurses is old and huge and it will take a while to cover completely.

The API is not yet stable.

It is developed and tested on Ubuntu 16.04 x86_64 and SBCL 1.5.7.

The only supported ncurses version is 6.x --with-abi-version=6.
Version 5.9 mostly works, but I will focus new efforts on 6.x.

Since many popular distributions ship ncurses --with-abi-version=5,
for full compatibility (wide characters, 256 colors and extended
mouse support), you will have to manually build ncurses 6.x.

The documentation is currently provided by the commented examples.

You are welcome to contribute and any form of help would be greatly
appreciated.

--

Since ncurses is not thread-safe, all IO has to occur in the main
thread of the REPL running in a terminal.

This makes it difficult to interact with ncurses from the Emacs SLIME
REPL which runs in its own thread.

A workaround is to pass all ncurses IO to the main thread via a
thread-safe queue. Basic support for this has been implemented.

A tutorial on interacting with ncurses from swank/slime is available
in docs/slime.md


Next: , Previous: , Up: Top   [Contents][Index]

2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 croatoan

Author

Anton Vidovic <anton.vidovic@gmx.de>

License

MIT

Description

Common Lisp bindings for the ncurses terminal library.

Version

0.0.1

Dependencies
Source

croatoan.asd (file)

Components

Next: , Previous: , Up: Top   [Contents][Index]

3 Modules

Modules are listed depth-first from the system components tree.


Next: , Previous: , Up: Modules   [Contents][Index]

3.1 croatoan/ncurses

Parent

croatoan (system)

Location

ncurses/

Components

Previous: , Up: Modules   [Contents][Index]

3.2 croatoan/source

Dependency

ncurses (module)

Parent

croatoan (system)

Location

source/

Components

Next: , Previous: , Up: Top   [Contents][Index]

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

4.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.1 croatoan.asd

Location

croatoan.asd

Systems

croatoan (system)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.2 croatoan/ncurses/package.lisp

Parent

ncurses (module)

Location

ncurses/package.lisp

Packages

de.anvi.ncurses


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.3 croatoan/ncurses/ncurses.lisp

Parent

ncurses (module)

Location

ncurses/ncurses.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.4 croatoan/ncurses/addch.lisp

Parent

ncurses (module)

Location

ncurses/addch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.5 croatoan/ncurses/add_wch.lisp

Parent

ncurses (module)

Location

ncurses/add_wch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.6 croatoan/ncurses/addstr.lisp

Parent

ncurses (module)

Location

ncurses/addstr.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.7 croatoan/ncurses/attr.lisp

Parent

ncurses (module)

Location

ncurses/attr.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.8 croatoan/ncurses/beep.lisp

Parent

ncurses (module)

Location

ncurses/beep.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.9 croatoan/ncurses/bkgd.lisp

Parent

ncurses (module)

Location

ncurses/bkgd.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.10 croatoan/ncurses/bkgrnd.lisp

Parent

ncurses (module)

Location

ncurses/bkgrnd.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.11 croatoan/ncurses/border.lisp

Parent

ncurses (module)

Location

ncurses/border.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.12 croatoan/ncurses/border_set.lisp

Parent

ncurses (module)

Location

ncurses/border_set.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.13 croatoan/ncurses/clear.lisp

Parent

ncurses (module)

Location

ncurses/clear.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.14 croatoan/ncurses/color.lisp

Parent

ncurses (module)

Location

ncurses/color.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.15 croatoan/ncurses/default_colors.lisp

Parent

ncurses (module)

Location

ncurses/default_colors.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.16 croatoan/ncurses/define_key.lisp

Parent

ncurses (module)

Location

ncurses/define_key.lisp

Exported Definitions

%define-key (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.17 croatoan/ncurses/delch.lisp

Parent

ncurses (module)

Location

ncurses/delch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.18 croatoan/ncurses/deleteln.lisp

Parent

ncurses (module)

Location

ncurses/deleteln.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.19 croatoan/ncurses/extend.lisp

Parent

ncurses (module)

Location

ncurses/extend.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.20 croatoan/ncurses/getch.lisp

Parent

ncurses (module)

Location

ncurses/getch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.21 croatoan/ncurses/get_wch.lisp

Parent

ncurses (module)

Location

ncurses/get_wch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.22 croatoan/ncurses/getcchar.lisp

Parent

ncurses (module)

Location

ncurses/getcchar.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.23 croatoan/ncurses/getstr.lisp

Parent

ncurses (module)

Location

ncurses/getstr.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.24 croatoan/ncurses/getyx.lisp

Parent

ncurses (module)

Location

ncurses/getyx.lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.25 croatoan/ncurses/inch.lisp

Parent

ncurses (module)

Location

ncurses/inch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.26 croatoan/ncurses/in_wch.lisp

Parent

ncurses (module)

Location

ncurses/in_wch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.27 croatoan/ncurses/insch.lisp

Parent

ncurses (module)

Location

ncurses/insch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.28 croatoan/ncurses/ins_wch.lisp

Parent

ncurses (module)

Location

ncurses/ins_wch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.29 croatoan/ncurses/instr.lisp

Parent

ncurses (module)

Location

ncurses/instr.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.30 croatoan/ncurses/inwstr.lisp

Parent

ncurses (module)

Location

ncurses/inwstr.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.31 croatoan/ncurses/inchstr.lisp

Parent

ncurses (module)

Location

ncurses/inchstr.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.32 croatoan/ncurses/insstr.lisp

Parent

ncurses (module)

Location

ncurses/insstr.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.33 croatoan/ncurses/initscr.lisp

Parent

ncurses (module)

Location

ncurses/initscr.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.34 croatoan/ncurses/inopts.lisp

Parent

ncurses (module)

Location

ncurses/inopts.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.35 croatoan/ncurses/kernel.lisp

Parent

ncurses (module)

Location

ncurses/kernel.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.36 croatoan/ncurses/keybound.lisp

Parent

ncurses (module)

Location

ncurses/keybound.lisp

Exported Definitions

%keybound (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.37 croatoan/ncurses/key_defined.lisp

Parent

ncurses (module)

Location

ncurses/key_defined.lisp

Exported Definitions

%key-defined (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.38 croatoan/ncurses/legacy.lisp

Parent

ncurses (module)

Location

ncurses/legacy.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.39 croatoan/ncurses/legacy_coding.lisp

Parent

ncurses (module)

Location

ncurses/legacy_coding.lisp

Exported Definitions

%use-legacy-coding (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.40 croatoan/ncurses/mouse.lisp

Parent

ncurses (module)

Location

ncurses/mouse.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.41 croatoan/ncurses/move.lisp

Parent

ncurses (module)

Location

ncurses/move.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.42 croatoan/ncurses/opaque.lisp

Parent

ncurses (module)

Location

ncurses/opaque.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.43 croatoan/ncurses/outopts.lisp

Parent

ncurses (module)

Location

ncurses/outopts.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.44 croatoan/ncurses/pad.lisp

Parent

ncurses (module)

Location

ncurses/pad.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.45 croatoan/ncurses/refresh.lisp

Parent

ncurses (module)

Location

ncurses/refresh.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.46 croatoan/ncurses/resizeterm.lisp

Parent

ncurses (module)

Location

ncurses/resizeterm.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.47 croatoan/ncurses/scroll.lisp

Parent

ncurses (module)

Location

ncurses/scroll.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.48 croatoan/ncurses/slk.lisp

Parent

ncurses (module)

Location

ncurses/slk.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.49 croatoan/ncurses/termattrs.lisp

Parent

ncurses (module)

Location

ncurses/termattrs.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.50 croatoan/ncurses/touch.lisp

Parent

ncurses (module)

Location

ncurses/touch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.51 croatoan/ncurses/util.lisp

Parent

ncurses (module)

Location

ncurses/util.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.52 croatoan/ncurses/variables.lisp

Parent

ncurses (module)

Location

ncurses/variables.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.53 croatoan/ncurses/window.lisp

Parent

ncurses (module)

Location

ncurses/window.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.54 croatoan/ncurses/wresize.lisp

Parent

ncurses (module)

Location

ncurses/wresize.lisp

Exported Definitions

%wresize (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.55 croatoan/source/package.lisp

Parent

source (module)

Location

source/package.lisp

Packages

de.anvi.croatoan


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.56 croatoan/source/classes.lisp

Parent

source (module)

Location

source/classes.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.57 croatoan/source/queue.lisp

Parent

source (module)

Location

source/queue.lisp

Exported Definitions
Internal Definitions

*job-queue* (special variable)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.58 croatoan/source/croatoan.lisp

Parent

source (module)

Location

source/croatoan.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.59 croatoan/source/gray_streams.lisp

Parent

source (module)

Location

source/gray_streams.lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.60 croatoan/source/utf8.lisp

Parent

source (module)

Location

source/utf8.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.61 croatoan/source/addch.lisp

Parent

source (module)

Location

source/addch.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.62 croatoan/source/add_wch.lisp

Parent

source (module)

Location

source/add_wch.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.63 croatoan/source/addstr.lisp

Parent

source (module)

Location

source/addstr.lisp

Exported Definitions

add-string (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.64 croatoan/source/attr.lisp

Parent

source (module)

Location

source/attr.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.65 croatoan/source/beep.lisp

Parent

source (module)

Location

source/beep.lisp

Exported Definitions

alert (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.66 croatoan/source/bkgd.lisp

Parent

source (module)

Location

source/bkgd.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.67 croatoan/source/bkgrnd.lisp

Parent

source (module)

Location

source/bkgrnd.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.68 croatoan/source/border.lisp

Parent

source (module)

Location

source/border.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.69 croatoan/source/border_set.lisp

Parent

source (module)

Location

source/border_set.lisp

Exported Definitions

draw-wide-border (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.70 croatoan/source/clear.lisp

Parent

source (module)

Location

source/clear.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.71 croatoan/source/color.lisp

Parent

source (module)

Location

source/color.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.72 croatoan/source/delch.lisp

Parent

source (module)

Location

source/delch.lisp

Exported Definitions

delete-char (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.73 croatoan/source/deleteln.lisp

Parent

source (module)

Location

source/deleteln.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.74 croatoan/source/getch.lisp

Parent

source (module)

Location

source/getch.lisp

Exported Definitions
Internal Definitions

*key-alist* (special variable)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.75 croatoan/source/get_wch.lisp

Parent

source (module)

Location

source/get_wch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.76 croatoan/source/getstr.lisp

Parent

source (module)

Location

source/getstr.lisp

Exported Definitions

get-string (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.77 croatoan/source/initscr.lisp

Parent

source (module)

Location

source/initscr.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.78 croatoan/source/inopts.lisp

Parent

source (module)

Location

source/inopts.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.79 croatoan/source/inch.lisp

Parent

source (module)

Location

source/inch.lisp

Exported Definitions

extract-char (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.80 croatoan/source/in_wch.lisp

Parent

source (module)

Location

source/in_wch.lisp

Exported Definitions

extract-wide-char (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.81 croatoan/source/inwstr.lisp

Parent

source (module)

Location

source/inwstr.lisp

Exported Definitions

extract-wide-string (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.82 croatoan/source/inchstr.lisp

Parent

source (module)

Location

source/inchstr.lisp

Exported Definitions

extract-complex-string (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.83 croatoan/source/insch.lisp

Parent

source (module)

Location

source/insch.lisp

Exported Definitions

insert-char (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.84 croatoan/source/ins_wch.lisp

Parent

source (module)

Location

source/ins_wch.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.85 croatoan/source/insstr.lisp

Parent

source (module)

Location

source/insstr.lisp

Exported Definitions

insert-string (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.86 croatoan/source/instr.lisp

Parent

source (module)

Location

source/instr.lisp

Exported Definitions

extract-string (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.87 croatoan/source/kernel.lisp

Parent

source (module)

Location

source/kernel.lisp

Internal Definitions

set-cursor-visibility (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.88 croatoan/source/mouse.lisp

Parent

source (module)

Location

source/mouse.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.89 croatoan/source/move.lisp

Parent

source (module)

Location

source/move.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.90 croatoan/source/panel.lisp

Parent

source (module)

Location

source/panel.lisp

Exported Definitions
Internal Definitions

rotate (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.91 croatoan/source/refresh.lisp

Parent

source (module)

Location

source/refresh.lisp

Exported Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.92 croatoan/source/touch.lisp

Parent

source (module)

Location

source/touch.lisp

Exported Definitions

touch (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.93 croatoan/source/wresize.lisp

Parent

source (module)

Location

source/wresize.lisp

Exported Definitions

resize (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.94 croatoan/source/form.lisp

Parent

source (module)

Location

source/form.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.95 croatoan/source/menu.lisp

Parent

source (module)

Location

source/menu.lisp

Exported Definitions
Internal Definitions

Previous: , Up: Lisp files   [Contents][Index]

4.1.96 croatoan/source/shape.lisp

Parent

source (module)

Location

source/shape.lisp

Exported Definitions

Next: , Previous: , Up: Top   [Contents][Index]

5 Packages

Packages are listed by definition order.


Next: , Previous: , Up: Packages   [Contents][Index]

5.1 de.anvi.ncurses

Low-level CFFI bindings to the Ncurses C API. Not meant to be used directly.

Source

package.lisp (file)

Use List
Used By List

de.anvi.croatoan

Exported Definitions
Internal Definitions

Previous: , Up: Packages   [Contents][Index]

5.2 de.anvi.croatoan

High-level Lisp interface to the basic CFFI Ncurses API.

Source

package.lisp (file)

Nicknames
Use List
Exported Definitions
Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

6.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.1 Constants

Constant: %color-black
Package

de.anvi.ncurses

Source

color.lisp (file)

Constant: %color-blue
Package

de.anvi.ncurses

Source

color.lisp (file)

Constant: %color-cyan
Package

de.anvi.ncurses

Source

color.lisp (file)

Constant: %color-green
Package

de.anvi.ncurses

Source

color.lisp (file)

Constant: %color-magenta
Package

de.anvi.ncurses

Source

color.lisp (file)

Constant: %color-red
Package

de.anvi.ncurses

Source

color.lisp (file)

Constant: %color-white
Package

de.anvi.ncurses

Source

color.lisp (file)

Constant: %color-yellow
Package

de.anvi.ncurses

Source

color.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.2 Special variables

Special Variable: *ansi-color-list*
Package

de.anvi.croatoan

Source

attr.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.3 Symbol macros

Symbol Macro: %color-pairs
Package

de.anvi.ncurses

Source

variables.lisp (file)

Expansion

(de.anvi.ncurses::%var-accessor-%color-pairs)

Symbol Macro: %colors
Package

de.anvi.ncurses

Source

variables.lisp (file)

Expansion

(de.anvi.ncurses::%var-accessor-%colors)

Symbol Macro: %cols
Package

de.anvi.ncurses

Source

variables.lisp (file)

Expansion

(de.anvi.ncurses::%var-accessor-%cols)

Symbol Macro: %escdelay
Package

de.anvi.ncurses

Source

variables.lisp (file)

Expansion

(de.anvi.ncurses::%var-accessor-%escdelay)

Symbol Macro: %lines
Package

de.anvi.ncurses

Source

variables.lisp (file)

Expansion

(de.anvi.ncurses::%var-accessor-%lines)

Symbol Macro: %tabsize
Package

de.anvi.ncurses

Source

variables.lisp (file)

Expansion

(de.anvi.ncurses::%var-accessor-%tabsize)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.4 Macros

Macro: event-case (WINDOW EVENT &optional MOUSE-Y MOUSE-X) &body BODY

Window event loop, events are handled by an implicit case form.

For now, it is limited to events generated in a single window. So events from multiple windows have to be handled separately.

In order for event handling to work, input-buffering has to be nil. Several control character events can only be handled when process-control-chars is also nil.

If input-blocking is nil, we can handle the (nil) event, i.e. what happens between key presses.

If input-blocking is t, the (nil) event is never returned.

The main window event loop name is hard coded to event-case to be used with return-from.

Instead of ((nil) nil), which eats 100% CPU, use input-blocking t.

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Macro: save-excursion WINDOW &body BODY

After executing body, return the cursor in window to its initial position.

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Macro: submit &body BODY

Submit BODY from a producer thread to a job queue to be processed by the main thread.

The main thread should be the only one interfacing ncurses directly,
and should be running in a terminal.

SUBMIT uses a thread-safe FIFO queue to queue up jobs which should be
evaluated inside the terminal thread.

For this to work PROCESS has to be called from inside the terminal
thread to pop requests from the FIFO queue and evaluate them.

When a condition is signaled while the body of SUBMIT is evaluated, it
is handled by PROCESS and put inside a JOB-ERROR which also contains
the failed form.

The condition is then signaled again from within a restart which
allows skipping the failed form and continue evaluating requests.

In practice, this allows for calls to ncurses forms from SLIME to be
performed without IO glitches that tend to occur when ncurses code is
called from the SLIME repl thread directly.

Package

de.anvi.croatoan

Source

queue.lisp (file)

Macro: with-screen (SCREEN &key BIND-DEBUGGER-HOOK INPUT-BUFFERING PROCESS-CONTROL-CHARS ENABLE-NEWLINE-TRANSLATION INPUT-BLOCKING INPUT-ECHOING ENABLE-FUNCTION-KEYS ENABLE-SCROLLING INSERT-MODE ENABLE-COLORS USE-TERMINAL-COLORS CURSOR-VISIBLE STACKED FGCOLOR BGCOLOR COLOR-PAIR BACKGROUND) &body BODY

Create a screen, evaluate the forms in the body, then cleanly close the screen.

Pass any arguments besides BIND-DEBUGGER-HOOK-P to the initialisation of the screen object. The screen is cleared immediately after initialisation.

This macro will bind *DEBUGGER-HOOK* so that END-SCREEN gets called before the condition is printed. This will interfere with SWANK as it also binds *DEBUGGER-HOOK*. To prevent WITH-SCREEN from binding *DEBUGGER-HOOK*, set BIND-DEBUGGER-HOOK-P to NIL.

This macro is the main entry point for writing ncurses programs with the croatoan library. Do not run more than one screen at the same time.

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Macro: with-window (WIN &rest OPTIONS) &body BODY

Create a window, evaluate the forms in the body, then cleanly close the window.

Pass any arguments to the initialisation of the window object.

Example:

(with-window (win :input-echoing t
body)

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Macro: with-windows BINDINGS &body BODY

Create one or more windows, evaluate the forms in the body, then cleanly close the windows.

Pass any arguments to the initialisation of the window objects.

Example:

(with-windows ((win1 :input-echoing t)
(win2 :input-echoing t))
body)

Package

de.anvi.croatoan

Source

croatoan.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.5 Functions

Function: %add-wch WCH
Package

de.anvi.ncurses

Source

add_wch.lisp (file)

Function: %addch CH
Package

de.anvi.ncurses

Source

addch.lisp (file)

Function: %addnstr STR N
Package

de.anvi.ncurses

Source

addstr.lisp (file)

Function: %addstr STR
Package

de.anvi.ncurses

Source

addstr.lisp (file)

Function: %assume-default-colors FG BG
Package

de.anvi.ncurses

Source

default_colors.lisp (file)

Function: %attr-get ATTRS PAIR OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %attr-off ATTRS OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %attr-on ATTRS OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %attr-set ATTRS PAIR OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %attroff ATTRS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %attron ATTRS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %attrset ATTRS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %baudrate ()
Package

de.anvi.ncurses

Source

termattrs.lisp (file)

Function: %beep ()
Package

de.anvi.ncurses

Source

beep.lisp (file)

Function: %bkgd CH
Package

de.anvi.ncurses

Source

bkgd.lisp (file)

Function: %bkgdset CH
Package

de.anvi.ncurses

Source

bkgd.lisp (file)

Function: %bkgrnd WCH
Package

de.anvi.ncurses

Source

bkgrnd.lisp (file)

Function: %bkgrndset WCH
Package

de.anvi.ncurses

Source

bkgrnd.lisp (file)

Function: %border LS RS TS BS TL TR BL BR
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %border-set LS RS TS BS TL TR BL BR
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %box WIN VERCH HORCH
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %box-set WIN VERCH HORCH
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %can-change-color ()
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %cbreak ()
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %chgat N ATTR COLOR OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %clear ()
Package

de.anvi.ncurses

Source

clear.lisp (file)

Function: %clearok WIN BF
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %clrtobot ()
Package

de.anvi.ncurses

Source

clear.lisp (file)

Function: %clrtoeol ()
Package

de.anvi.ncurses

Source

clear.lisp (file)

Function: %color-content COLOR R G B
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %color-extended-content COLOR R G B
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %color-pair N
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %color-set COLOR-PAIR-NUMBER OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %curs-set VISIBILITY
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %curses-version ()
Package

de.anvi.ncurses

Source

extend.lisp (file)

Function: %def-prog-mode ()
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %def-shell-mode ()
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %define-key DEFINITION KEYCODE
Package

de.anvi.ncurses

Source

define_key.lisp (file)

Function: %delay-output MS
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %delch ()
Package

de.anvi.ncurses

Source

delch.lisp (file)

Function: %deleteln ()
Package

de.anvi.ncurses

Source

deleteln.lisp (file)

Function: %delscreen SP
Package

de.anvi.ncurses

Source

initscr.lisp (file)

Function: %delwin WIN
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %derwin ORIG NLINES NCOLS BEGIN_Y BEGIN_X
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %doupdate ()
Package

de.anvi.ncurses

Source

refresh.lisp (file)

Function: %dupwin WIN
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %echo ()
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %echo-wchar WCH
Package

de.anvi.ncurses

Source

add_wch.lisp (file)

Function: %echochar CH
Package

de.anvi.ncurses

Source

addch.lisp (file)

Function: %endwin ()
Package

de.anvi.ncurses

Source

initscr.lisp (file)

Function: %erase ()
Package

de.anvi.ncurses

Source

clear.lisp (file)

Function: %erasechar ()
Package

de.anvi.ncurses

Source

termattrs.lisp (file)

Function: %filter ()
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %flash ()
Package

de.anvi.ncurses

Source

beep.lisp (file)

Function: %flushinp ()
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %get-wch WCH
Package

de.anvi.ncurses

Source

get_wch.lisp (file)

Function: %getbegx WIN
Package

de.anvi.ncurses

Source

legacy.lisp (file)

Function: %getbegy WIN
Package

de.anvi.ncurses

Source

legacy.lisp (file)

Function: %getbkgd WIN
Package

de.anvi.ncurses

Source

bkgd.lisp (file)

Function: %getbkgrnd WCH
Package

de.anvi.ncurses

Source

bkgrnd.lisp (file)

Function: %getcchar WCVAL WCH ATTRS COLOR_PAIR OPTS
Package

de.anvi.ncurses

Source

getcchar.lisp (file)

Function: %getch ()
Package

de.anvi.ncurses

Source

getch.lisp (file)

Function: %getcurx WIN
Package

de.anvi.ncurses

Source

legacy.lisp (file)

Function: %getcury WIN
Package

de.anvi.ncurses

Source

legacy.lisp (file)

Function: %getmaxx WIN
Package

de.anvi.ncurses

Source

legacy.lisp (file)

Function: %getmaxy WIN
Package

de.anvi.ncurses

Source

legacy.lisp (file)

Function: %getmouse EVENT
Package

de.anvi.ncurses

Source

mouse.lisp (file)

Function: %getnstr STR N
Package

de.anvi.ncurses

Source

getstr.lisp (file)

Function: %getparx WIN
Package

de.anvi.ncurses

Source

legacy.lisp (file)

Function: %getpary WIN
Package

de.anvi.ncurses

Source

legacy.lisp (file)

Function: %getstr STR
Package

de.anvi.ncurses

Source

getstr.lisp (file)

Function: %getsyx Y X
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %getwin FILEP
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %halfdelay TENTHS
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %has-colors ()
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %has-ic ()
Package

de.anvi.ncurses

Source

termattrs.lisp (file)

Function: %has-il ()
Package

de.anvi.ncurses

Source

termattrs.lisp (file)

Function: %has-key CH
Package

de.anvi.ncurses

Source

getch.lisp (file)

Function: %hline CH N
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %hline-set WCH N
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %idcok WIN BF
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %idlok WIN BF
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %immedok WIN BF
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %in-wch WCVAL
Package

de.anvi.ncurses

Source

in_wch.lisp (file)

Function: %inch ()
Package

de.anvi.ncurses

Source

inch.lisp (file)

Function: %inchnstr CHSTR N
Package

de.anvi.ncurses

Source

inchstr.lisp (file)

Function: %inchstr CHSTR
Package

de.anvi.ncurses

Source

inchstr.lisp (file)

Function: %init-color COLOR R G B
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %init-extended-color COLOR R G B
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %init-extended-pair PAIR F B
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %init-pair PAIR F B
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %initscr ()
Package

de.anvi.ncurses

Source

initscr.lisp (file)

Function: %innstr STR N
Package

de.anvi.ncurses

Source

instr.lisp (file)

Function: %innwstr STR N
Package

de.anvi.ncurses

Source

inwstr.lisp (file)

Function: %ins-wch WCH
Package

de.anvi.ncurses

Source

ins_wch.lisp (file)

Function: %insch CH
Package

de.anvi.ncurses

Source

insch.lisp (file)

Function: %insdelln N
Package

de.anvi.ncurses

Source

deleteln.lisp (file)

Function: %insertln ()
Package

de.anvi.ncurses

Source

deleteln.lisp (file)

Function: %insnstr STR N
Package

de.anvi.ncurses

Source

insstr.lisp (file)

Function: %insstr STR
Package

de.anvi.ncurses

Source

insstr.lisp (file)

Function: %instr STR
Package

de.anvi.ncurses

Source

instr.lisp (file)

Function: %intrflush WIN BF
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %inwstr STR
Package

de.anvi.ncurses

Source

inwstr.lisp (file)

Function: %is-cleared WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-idcok WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-idlok WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-immedok WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-keypad WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-leaveok WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-linetouched WIN LINE
Package

de.anvi.ncurses

Source

touch.lisp (file)

Function: %is-nodelay WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-notimeout WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-pad WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-scrollok WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-subwin WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-syncok WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %is-term-resized LINES COLUMNS
Package

de.anvi.ncurses

Source

resizeterm.lisp (file)

Function: %is-wintouched WIN
Package

de.anvi.ncurses

Source

touch.lisp (file)

Function: %isendwin ()
Package

de.anvi.ncurses

Source

initscr.lisp (file)

Function: %key-defined DEFINITION
Package

de.anvi.ncurses

Source

key_defined.lisp (file)

Function: %keybound KEYCODE COUNT
Package

de.anvi.ncurses

Source

keybound.lisp (file)

Function: %keyname C
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %keypad WIN BF
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %killchar ()
Package

de.anvi.ncurses

Source

termattrs.lisp (file)

Function: %leaveok WIN BF
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %longname ()
Package

de.anvi.ncurses

Source

termattrs.lisp (file)

Function: %meta WIN BF
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %mousemask NEWMASK OLDMASK
Package

de.anvi.ncurses

Source

mouse.lisp (file)

Function: %move Y X
Package

de.anvi.ncurses

Source

move.lisp (file)

Function: %mvadd-wch Y X WCH
Package

de.anvi.ncurses

Source

add_wch.lisp (file)

Function: %mvaddch Y X CH
Package

de.anvi.ncurses

Source

addch.lisp (file)

Function: %mvaddnstr Y X STR N
Package

de.anvi.ncurses

Source

addstr.lisp (file)

Function: %mvaddstr Y X STR
Package

de.anvi.ncurses

Source

addstr.lisp (file)

Function: %mvchgat Y X N ATTR COLOR OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %mvdelch Y X
Package

de.anvi.ncurses

Source

delch.lisp (file)

Function: %mvderwin WIN PAR_Y PAR_X
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %mvget-wch Y X WCH
Package

de.anvi.ncurses

Source

get_wch.lisp (file)

Function: %mvgetch Y X
Package

de.anvi.ncurses

Source

getch.lisp (file)

Function: %mvgetnstr Y X STR N
Package

de.anvi.ncurses

Source

getstr.lisp (file)

Function: %mvgetstr Y X STR
Package

de.anvi.ncurses

Source

getstr.lisp (file)

Function: %mvhline Y X CH N
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %mvhline-set Y X WCH N
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %mvin-wch Y X WCVAL
Package

de.anvi.ncurses

Source

in_wch.lisp (file)

Function: %mvinch Y X
Package

de.anvi.ncurses

Source

inch.lisp (file)

Function: %mvinchnstr Y X CHSTR N
Package

de.anvi.ncurses

Source

inchstr.lisp (file)

Function: %mvinchstr Y X CHSTR
Package

de.anvi.ncurses

Source

inchstr.lisp (file)

Function: %mvinnstr Y X STR N
Package

de.anvi.ncurses

Source

instr.lisp (file)

Function: %mvinnwstr Y X STR N
Package

de.anvi.ncurses

Source

inwstr.lisp (file)

Function: %mvins-wch Y X WCH
Package

de.anvi.ncurses

Source

ins_wch.lisp (file)

Function: %mvinsch Y X CH
Package

de.anvi.ncurses

Source

insch.lisp (file)

Function: %mvinsnstr Y X STR N
Package

de.anvi.ncurses

Source

insstr.lisp (file)

Function: %mvinsstr Y X STR
Package

de.anvi.ncurses

Source

insstr.lisp (file)

Function: %mvinstr Y X STR
Package

de.anvi.ncurses

Source

instr.lisp (file)

Function: %mvinwstr Y X STR
Package

de.anvi.ncurses

Source

inwstr.lisp (file)

Function: %mvvline Y X CH N
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %mvvline-set Y X WCH N
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %mvwadd-wch WIN Y X WCH
Package

de.anvi.ncurses

Source

add_wch.lisp (file)

Function: %mvwaddch WIN Y X CH
Package

de.anvi.ncurses

Source

addch.lisp (file)

Function: %mvwaddnstr WIN Y X STR N
Package

de.anvi.ncurses

Source

addstr.lisp (file)

Function: %mvwaddstr WIN Y X STR
Package

de.anvi.ncurses

Source

addstr.lisp (file)

Function: %mvwchgat WIN Y X N ATTR COLOR OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %mvwdelch WIN Y X
Package

de.anvi.ncurses

Source

delch.lisp (file)

Function: %mvwget-wch WIN Y X WCH
Package

de.anvi.ncurses

Source

get_wch.lisp (file)

Function: %mvwgetch WIN Y X
Package

de.anvi.ncurses

Source

getch.lisp (file)

Function: %mvwgetnstr WIN Y X STR N
Package

de.anvi.ncurses

Source

getstr.lisp (file)

Function: %mvwgetstr WIN Y X STR
Package

de.anvi.ncurses

Source

getstr.lisp (file)

Function: %mvwhline WIN Y X CH N
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %mvwhline-set WIN Y X WCH N
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %mvwin WIN Y X
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %mvwin-wch WIN Y X WCVAL
Package

de.anvi.ncurses

Source

in_wch.lisp (file)

Function: %mvwinch WIN Y X
Package

de.anvi.ncurses

Source

inch.lisp (file)

Function: %mvwinchnstr WIN Y X CHSTR N
Package

de.anvi.ncurses

Source

inchstr.lisp (file)

Function: %mvwinchstr WIN Y X CHSTR
Package

de.anvi.ncurses

Source

inchstr.lisp (file)

Function: %mvwinnstr WIN Y X STR N
Package

de.anvi.ncurses

Source

instr.lisp (file)

Function: %mvwinnwstr WIN Y X STR N
Package

de.anvi.ncurses

Source

inwstr.lisp (file)

Function: %mvwins-wch WIN Y X WCH
Package

de.anvi.ncurses

Source

ins_wch.lisp (file)

Function: %mvwinsch WIN Y X CH
Package

de.anvi.ncurses

Source

insch.lisp (file)

Function: %mvwinsnstr WIN Y X STR N
Package

de.anvi.ncurses

Source

insstr.lisp (file)

Function: %mvwinsstr WIN Y X STR
Package

de.anvi.ncurses

Source

insstr.lisp (file)

Function: %mvwinstr WIN Y X STR
Package

de.anvi.ncurses

Source

instr.lisp (file)

Function: %mvwinwstr WIN Y X STR
Package

de.anvi.ncurses

Source

inwstr.lisp (file)

Function: %mvwvline WIN Y X CH N
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %mvwvline-set WIN Y X WCH N
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %napms MS
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %newpad NLINES NCOLS
Package

de.anvi.ncurses

Source

pad.lisp (file)

Function: %newterm TYPE OUTFD INFD
Package

de.anvi.ncurses

Source

initscr.lisp (file)

Function: %newwin NLINES NCOLS BEGIN_Y BEGIN_X
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %nl ()
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %nocbreak ()
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %nodelay WIN BF
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %noecho ()
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %nofilter ()
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %nonl ()
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %noqiflush ()
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %noraw ()
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %notimeout WIN BF
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %pair-content PAIR F B
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %pair-extended-content PAIR F B
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %pair-number ATTRS
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %pecho-wchar PAD WCH
Package

de.anvi.ncurses

Source

pad.lisp (file)

Function: %pechochar PAD CH
Package

de.anvi.ncurses

Source

pad.lisp (file)

Function: %pnoutrefresh PAD PMINROW PMINCOL SMINROW SMINCOL SMAXROW SMAXCOL
Package

de.anvi.ncurses

Source

pad.lisp (file)

Function: %prefresh PAD PMINROW PMINCOL SMINROW SMINCOL SMAXROW SMAXCOL
Package

de.anvi.ncurses

Source

pad.lisp (file)

Function: %putwin WIN FILEP
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %qiflush ()
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %raw ()
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %redrawwin WIN
Package

de.anvi.ncurses

Source

refresh.lisp (file)

Function: %refresh ()
Package

de.anvi.ncurses

Source

refresh.lisp (file)

Function: %reset-prog-mode ()
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %reset-shell-mode ()
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %resetty ()
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %resize-term LINES COLUMNS
Package

de.anvi.ncurses

Source

resizeterm.lisp (file)

Function: %resizeterm LINES COLUMNS
Package

de.anvi.ncurses

Source

resizeterm.lisp (file)

Function: %ripoffline LINE INIT
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %savetty ()
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %scrl N
Package

de.anvi.ncurses

Source

scroll.lisp (file)

Function: %scroll WIN
Package

de.anvi.ncurses

Source

scroll.lisp (file)

Function: %scrollok WIN BF
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %set-term NEW
Package

de.anvi.ncurses

Source

initscr.lisp (file)

Function: %setcchar WCVAL WCH ATTRS COLOR_PAIR OPTS
Package

de.anvi.ncurses

Source

getcchar.lisp (file)

Function: %setscrreg TOP BOT
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %setsyx Y X
Package

de.anvi.ncurses

Source

kernel.lisp (file)

Function: %slk-attr ()
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-attr-off ATTRS OPTS
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-attr-on ATTRS OPTS
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-attr-set ATTRS COLOR-PAIR OPTS
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-attroff ATTRS
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-attron ATTRS
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-attrset ATTRS
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-clear ()
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-color COLOR-PAIR
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-init FMT
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-label LABNUM
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-noutrefresh ()
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-refresh ()
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-restore ()
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-set LABNUM LABEL FMT
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %slk-touch ()
Package

de.anvi.ncurses

Source

slk.lisp (file)

Function: %standend ()
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %standout ()
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %start-color ()
Package

de.anvi.ncurses

Source

color.lisp (file)

Function: %subpad ORIG NLINES NCOLS BEGIN_Y BEGIN_X
Package

de.anvi.ncurses

Source

pad.lisp (file)

Function: %subwin ORIG NLINES NCOLS BEGIN_Y BEGIN_X
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %syncok WIN BF
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %term-attrs ()
Package

de.anvi.ncurses

Source

termattrs.lisp (file)

Function: %termattrs ()
Package

de.anvi.ncurses

Source

termattrs.lisp (file)

Function: %termname ()
Package

de.anvi.ncurses

Source

termattrs.lisp (file)

Function: %timeout DELAY
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %touchline WIN START COUNT
Package

de.anvi.ncurses

Source

touch.lisp (file)

Function: %touchwin WIN
Package

de.anvi.ncurses

Source

touch.lisp (file)

Function: %typeahead FD
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %unctrl C
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %unget-wch WCH
Package

de.anvi.ncurses

Source

get_wch.lisp (file)

Function: %ungetch CH
Package

de.anvi.ncurses

Source

getch.lisp (file)

Function: %untouchwin WIN
Package

de.anvi.ncurses

Source

touch.lisp (file)

Function: %use-default-colors ()
Package

de.anvi.ncurses

Source

default_colors.lisp (file)

Function: %use-env F
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %use-extended-names ENABLE
Package

de.anvi.ncurses

Source

extend.lisp (file)

Function: %use-legacy-coding LEVEL
Package

de.anvi.ncurses

Source

legacy_coding.lisp (file)

Function: %vline CH N
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %vline-set WCH N
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %wadd-wch WIN WCH
Package

de.anvi.ncurses

Source

add_wch.lisp (file)

Function: %waddch WIN CH
Package

de.anvi.ncurses

Source

addch.lisp (file)

Function: %waddnstr WIN STR N
Package

de.anvi.ncurses

Source

addstr.lisp (file)

Function: %waddstr WIN STR
Package

de.anvi.ncurses

Source

addstr.lisp (file)

Function: %wattr-get WIN ATTRS PAIR OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wattr-off WIN ATTRS OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wattr-on WIN ATTRS OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wattr-set WIN ATTRS PAIR OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wattroff WIN ATTRS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wattron WIN ATTRS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wattrset WIN ATTRS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wbkgd WIN CH
Package

de.anvi.ncurses

Source

bkgd.lisp (file)

Function: %wbkgdset WIN CH
Package

de.anvi.ncurses

Source

bkgd.lisp (file)

Function: %wbkgrnd WIN WCH
Package

de.anvi.ncurses

Source

bkgrnd.lisp (file)

Function: %wbkgrndset WIN WCH
Package

de.anvi.ncurses

Source

bkgrnd.lisp (file)

Function: %wborder WIN LS RS TS BS TL TR BL BR
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %wborder-set WIN LS RS TS BS TL TR BL BR
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %wchgat WIN N ATTR COLOR OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wclear WIN
Package

de.anvi.ncurses

Source

clear.lisp (file)

Function: %wclrtobot WIN
Package

de.anvi.ncurses

Source

clear.lisp (file)

Function: %wclrtoeol WIN
Package

de.anvi.ncurses

Source

clear.lisp (file)

Function: %wcolor-set WIN COLOR-PAIR-NUMBER OPTS
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wcursyncup WIN
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %wdelch WIN
Package

de.anvi.ncurses

Source

delch.lisp (file)

Function: %wdeleteln WIN
Package

de.anvi.ncurses

Source

deleteln.lisp (file)

Function: %wecho-wchar WIN WCH
Package

de.anvi.ncurses

Source

add_wch.lisp (file)

Function: %wechochar WIN CH
Package

de.anvi.ncurses

Source

addch.lisp (file)

Function: %werase WIN
Package

de.anvi.ncurses

Source

clear.lisp (file)

Function: %wget-wch WIN WCH
Package

de.anvi.ncurses

Source

get_wch.lisp (file)

Function: %wgetbkgrnd WIN WCH
Package

de.anvi.ncurses

Source

bkgrnd.lisp (file)

Function: %wgetch WIN
Package

de.anvi.ncurses

Source

getch.lisp (file)

Function: %wgetnstr WIN STR N
Package

de.anvi.ncurses

Source

getstr.lisp (file)

Function: %wgetparent WIN
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %wgetscrreg WIN TOP BOTTOM
Package

de.anvi.ncurses

Source

opaque.lisp (file)

Function: %wgetstr WIN STR
Package

de.anvi.ncurses

Source

getstr.lisp (file)

Function: %whline WIN CH N
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %whline-set WIN WCH N
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: %win-wch WIN WCVAL
Package

de.anvi.ncurses

Source

in_wch.lisp (file)

Function: %winch WIN
Package

de.anvi.ncurses

Source

inch.lisp (file)

Function: %winchnstr WIN CHSTR N
Package

de.anvi.ncurses

Source

inchstr.lisp (file)

Function: %winchstr WIN CHSTR
Package

de.anvi.ncurses

Source

inchstr.lisp (file)

Function: %winnstr WIN STR N
Package

de.anvi.ncurses

Source

instr.lisp (file)

Function: %winnwstr WIN STR N
Package

de.anvi.ncurses

Source

inwstr.lisp (file)

Function: %wins-wch WIN WCH
Package

de.anvi.ncurses

Source

ins_wch.lisp (file)

Function: %winsch WIN CH
Package

de.anvi.ncurses

Source

insch.lisp (file)

Function: %winsdelln WIN N
Package

de.anvi.ncurses

Source

deleteln.lisp (file)

Function: %winsertln WIN
Package

de.anvi.ncurses

Source

deleteln.lisp (file)

Function: %winsnstr WIN STR N
Package

de.anvi.ncurses

Source

insstr.lisp (file)

Function: %winsstr WIN STR
Package

de.anvi.ncurses

Source

insstr.lisp (file)

Function: %winstr WIN STR
Package

de.anvi.ncurses

Source

instr.lisp (file)

Function: %winwstr WIN STR
Package

de.anvi.ncurses

Source

inwstr.lisp (file)

Function: %wmove WIN Y X
Package

de.anvi.ncurses

Source

move.lisp (file)

Function: %wnoutrefresh WIN
Package

de.anvi.ncurses

Source

refresh.lisp (file)

Function: %wredrawln WIN BEG-LINE NUM-LINES
Package

de.anvi.ncurses

Source

refresh.lisp (file)

Function: %wrefresh WIN
Package

de.anvi.ncurses

Source

refresh.lisp (file)

Function: %wresize WIN LINES COLUMNS
Package

de.anvi.ncurses

Source

wresize.lisp (file)

Function: %wscrl WIN N
Package

de.anvi.ncurses

Source

scroll.lisp (file)

Function: %wsetscrreg WIN TOP BOT
Package

de.anvi.ncurses

Source

outopts.lisp (file)

Function: %wstandend WIN
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wstandout WIN
Package

de.anvi.ncurses

Source

attr.lisp (file)

Function: %wsyncdown WIN
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %wsyncup WIN
Package

de.anvi.ncurses

Source

window.lisp (file)

Function: %wtimeout WIN DELAY
Package

de.anvi.ncurses

Source

inopts.lisp (file)

Function: %wtouchln WIN Y N CHANGED
Package

de.anvi.ncurses

Source

touch.lisp (file)

Function: %wvline WIN CH N
Package

de.anvi.ncurses

Source

border.lisp (file)

Function: %wvline-set WIN WCH N
Package

de.anvi.ncurses

Source

border_set.lisp (file)

Function: accept OBJECT EVENT &rest ARGS

Associate this function with an event (key binding or button) to exit the event loop of a form or form element.

The first return value is t, emphasizing that the user has accepted the form.

If called by a button, the name of the button is returned as a second value.

This allows to specify why the form was accepted.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: accept-selection MENU EVENT

Return the value of the currently selected item or all checked items.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: acs CHAR-NAME

Take a symbol, return the integer representing the acs char.

Package

de.anvi.croatoan

Source

addch.lisp (file)

Function: add WINDOW OBJECT &rest KEYS &key &allow-other-keys

Add the text object to the window, then advance the cursor.

Currently supported text objects are characters (simple and complex), characters given by integer codes or keywords, and strings (simple and complex).

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the object.

The position can also be passed in form of a two-element list.

If n is given for a char, write n chars. If n is -1, add as many chars as will fit on the line.

If n is given for a string, add at most n chars from the string. If n is -1, add as many chars from the string as will fit on the line.

Package

de.anvi.croatoan

Source

addch.lisp (file)

Function: add-attributes WIN ATTRIBUTES

Takes a list of keywords and turns the appropriate attributes on.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: add-char WINDOW CHAR &key ATTRIBUTES FGCOLOR BGCOLOR COLOR-PAIR STYLE Y X POSITION N

Add the narrow (single-byte) char to the window, then advance the cursor.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

If n is given for a char, write n chars. If n is -1, add as many chars as will fit on the line.

Example: (add-char scr #a :attributes ’(:bold) :color-pair ’(:red :yellow))

Package

de.anvi.croatoan

Source

addch.lisp (file)

Function: add-string WINDOW STRING &key ATTRIBUTES FGCOLOR BGCOLOR COLOR-PAIR STYLE Y X POSITION N

Add the unrendered string to the window.

If n is given, add at most n chars from the string. If n is -1, as many chars will be added that will fit on the line.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the object.

The position can also be passed in form of a two-element list.

Package

de.anvi.croatoan

Source

addstr.lisp (file)

Function: add-wide-char WINDOW CHAR &key ATTRIBUTES FGCOLOR BGCOLOR COLOR-PAIR STYLE Y X POSITION N

Add the wide (multi-byte) char to the window, then advance the cursor.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

If n is given for a char, write n chars. If n is -1, add as many chars as will fit on the line.

If char is a complex-char, its own style overrides any style parameters.

If a style is passed, it overrides attributes and color-pair.

Package

de.anvi.croatoan

Source

add_wch.lisp (file)

Function: add-wide-char-utf-8 WINDOW CHAR &key ATTRIBUTES COLOR-PAIR Y X POSITION N

Add the wide (multi-byte) char to the window, then advance the cursor.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

If n is given, write n chars. If n is -1, as many chars will be added as will fit on the line.

Package

de.anvi.croatoan

Source

add_wch.lisp (file)

Function: alert &optional TYPE
Package

de.anvi.croatoan

Source

beep.lisp (file)

Function: angle-line Y0 X0 THETA LENGTH &key CHAR

Draw a line of the given length in the bearing theta from the origin.

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: bind OBJECT EVENT HANDLER

Bind the handler function to the event in the bindings alist of the object.

The handlers will be called by the run-event-loop when keyboard or mouse events occur.

The handler functions have two mandatory arguments, window and event.

For every event-loop, at least an event to exit the event loop should be assigned, by associating it with the predefined function exit-event-loop.

If a handler for the event :default is defined, it will handle all events for which no specific event handler has been defined.

If input-blocking of the window is set to nil, a handler for the nil event
can be defined, which will be called at a specified frame-rate between keypresses. Here the main application state can be updated.

Alternatively, to achieve the same effect, input-blocking can be set to a specific delay in miliseconds.

Example use: (bind scr #q (lambda (win event) (throw ’event-loop :quit)))

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Function: box WINDOW &optional HLINE-CHAR VLINE-CHAR

Draw a border around the window.

If any parameter is nil or zero, the default ACS char will be used.

Package

de.anvi.croatoan

Source

border.lisp (file)

Function: cancel OBJECT EVENT &rest ARGS

Associate this function with an event (key binding or button) to exit the form event loop of a form or form element.

The first return value is nil, emphasizing that the user has canceled the form.

The second value is a list of the object, the event that called the exit and the args passed.

This allows to specify why the form was canceled.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: change-attributes WIN N ATTRIBUTES &key COLOR-PAIR Y X POSITION

Change the attributes of n chars starting at the current cursor position.

If n is -1, as many chars will be added as will fit on the line.

If the destination coordinates y and x are given, the attributes are changed from the given point without moving the cursor position.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: circle Y0 X0 RADIUS &key FILLED CHAR

Return a circle with a given radius, optionally filled.

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: default-color-pair SCREEN
Package

de.anvi.croatoan

Source

attr.lisp (file)

Writer

(setf default-color-pair) (function)

Function: (setf default-color-pair) COLOR-PAIR SCREEN

Set the colors which will comprise the default color pair 0.

The default color pair is used when no other colors are specified.

The ncurses default color pair is white on black.

If the terminal can set its own colors, they are named :terminal.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Reader

default-color-pair (function)

Function: delete-char WINDOW &key Y X

Delete the character under the cursor.

All characters to the right of the cursor on the same line are moved to the left one position and the last character on the line is filled with a blank. The cursor position does not change after moving
to (y,x), if specified.

Package

de.anvi.croatoan

Source

delch.lisp (file)

Function: delete-line WINDOW &key N

Delete n lines starting with the one under the cursor.

The remaining lines are moved up. The bottom n lines are cleared.

The current cursor position does not change.

Package

de.anvi.croatoan

Source

deleteln.lisp (file)

Function: dequeue QUEUE

Pop of the first element of queue and return it, returns NIL when queue is empty

Package

de.anvi.croatoan

Source

queue.lisp (file)

Function: draw-border WINDOW &key LEFT RIGHT TOP BOTTOM TOP-LEFT TOP-RIGHT BOTTOM-LEFT BOTTOM-RIGHT

Draw a border around the window using single-byte line-drawing characters.

If no border chars are given, the default ncurses ACS chars will be used.

Package

de.anvi.croatoan

Source

border.lisp (file)

Function: draw-menu WINDOW MENU

Draw the menu to the window.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: draw-shape WINDOW SHAPE &optional SQUARIFY

Draw a shape in the given window.

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: draw-wide-border WINDOW &key LEFT RIGHT TOP BOTTOM TOP-LEFT TOP-RIGHT BOTTOM-LEFT BOTTOM-RIGHT

Draw a border around the window using (wide) unicode line-drawing characters.

If no border chars are given, the default ncurses WACS chars will be used.

Package

de.anvi.croatoan

Source

border_set.lisp (file)

Function: echo WINDOW CHAR &rest KEYS &key &allow-other-keys

Add one character to the window, then advance the cursor.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

If n is given for a char, write n chars. If n is -1, add as many chars as will fit on the line.

If char is a complex-char, its own style overrides any style parameters.

If a style is passed, it overrides attributes and color-pair.

Package

de.anvi.croatoan

Source

addch.lisp (file)

Function: echo-char WINDOW CHAR &key ATTRIBUTES FGCOLOR BGCOLOR COLOR-PAIR STYLE Y X POSITION

Add one narrow (single-byte) character to the window, then refresh the window.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then echo the character.

The position can also be passed in form of a two-element list.

The only difference to add-char and a subsequent refresh is a
performance gain if we know that we only need to output a single character.

Package

de.anvi.croatoan

Source

addch.lisp (file)

Function: echo-wide-char WINDOW CHAR &key ATTRIBUTES FGCOLOR BGCOLOR COLOR-PAIR STYLE Y X POSITION

Add one wide (multi-byte) character to the window, then refresh the window.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

The only difference to add-wide-char and a subsequent refresh is a performance gain if we know that we only need to output a single character.

Package

de.anvi.croatoan

Source

add_wch.lisp (file)

Function: edit OBJECT &rest ARGS
Package

de.anvi.croatoan

Source

form.lisp (file)

Function: empty-stack ()

Remove all windows from the stack.

Package

de.anvi.croatoan

Source

panel.lisp (file)

Function: end-screen ()

Clean shutdown of the curses display.

Package

de.anvi.croatoan

Source

initscr.lisp (file)

Function: enqueue ITEM QUEUE

Push a new item onto the tail of the queue, return the new item.

Package

de.anvi.croatoan

Source

queue.lisp (file)

Function: exit-event-loop &optional WIN EVENT ARGS

Associate this function with an event to exit the event loop.

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Function: exit-menu-event-loop MENU EVENT

Associate this function with an event to exit the menu event loop.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: extract-char WINDOW &key Y X POSITION

Extract and return the single-byte complex char from the window.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

Package

de.anvi.croatoan

Source

inch.lisp (file)

Function: extract-complex-string WINDOW &key Y X POSITION N

Extract and return a complex string from the window.

Start at the current cursor position and end at the right margin of window.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

If n is given, read at most n chars.

Package

de.anvi.croatoan

Source

inchstr.lisp (file)

Function: extract-string WINDOW &key Y X POSITION N

Extract and return a string from window.

Any attributes are stripped from the characters before the string is returned.

Start at the current cursor position and end at the right margin of window.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

If n is given, read at most n chars.

Package

de.anvi.croatoan

Source

instr.lisp (file)

Function: extract-wide-char WINDOW &key Y X POSITION

Extract and return a single wide (complex) character from the window.

This includes wide characters (code > 255), and requires the ncursesw library.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

Package

de.anvi.croatoan

Source

in_wch.lisp (file)

Function: extract-wide-string WINDOW &key Y X POSITION N

Extract and return a string from window.

Any attributes are stripped from the characters before the string is returned.

Start at the current cursor position and end at the right margin of window.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the character.

The position can also be passed in form of a two-element list.

If n is given, read at most n chars.

Package

de.anvi.croatoan

Source

inwstr.lisp (file)

Function: fill-shape SHAPE

Take a shape that only shows the borders and ’color it out’.

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: find-element FORM ELEMENT-NAME &key TEST KEY

Return from the given form the element given by its name.

The name should be a keyword, symbol or integer, the default test is eql.

If the name is a string, equal should be used as the test.

Instead of the name, another key can be provided to identify the element.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: find-keymap KEYMAP-NAME
Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Function: function-key NUMBER
Package

de.anvi.croatoan

Source

getch.lisp (file)

Function: function-key-p NUMBER
Package

de.anvi.croatoan

Source

getch.lisp (file)

Function: get-char WINDOW &key Y X

Read in a C char (single byte) from the keyboard and return it.

If the destination coordinates y (row) and x (column) are given, move the cursor to the destination first and then read a single byte.

The window from which the char is read is automatically refreshed.

Package

de.anvi.croatoan

Source

getch.lisp (file)

Function: get-event WINDOW
Package

de.anvi.croatoan

Source

getch.lisp (file)

Function: get-mouse-event ()
Package

de.anvi.croatoan

Source

mouse.lisp (file)

Function: get-string WINDOW N &key Y X

Read a string from the keyboard and return it.

Reading is performed until a newline or carriage return is received. The terminating character is not included in the returned string.

If n is given, read at most n chars, to prevent a possible input buffer overflow.

If the destination coordinates y and x are given, move the cursor there first.

Package

de.anvi.croatoan

Source

getstr.lisp (file)

Function: get-wide-char WINDOW &key Y X

Read in a wide C wchar_t (multi-byte) from the keyboard and return it.

If the destination coordinates y (row) and x (column) are given, move the cursor to the destination first and then read a multi-byte char.

The window from which the char is read is automatically refreshed.

Package

de.anvi.croatoan

Source

get_wch.lisp (file)

Function: get-wide-event WINDOW

Return a single user input event.

An event can be a lisp character or a keyword representing a function or mouse key.

If input-blocking is nil for the window, return nil if no key was typed.

Package

de.anvi.croatoan

Source

get_wch.lisp (file)

Function: insert WINDOW OBJECT &rest KEYS &key &allow-other-keys

Insert char or string into window before the char currently under the cursor.

Currently supported text objects are characters (simple and complex), characters given by integer codes or keywords, and strings
(simple and complex).

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then insert the object.

The position can also be passed in form of a two-element list.

If n is given for a char, insert n chars.

If n is given for a string, add at most n chars from the string.

Package

de.anvi.croatoan

Source

ins_wch.lisp (file)

Function: insert-char WINDOW CHAR &key ATTRIBUTES FGCOLOR BGCOLOR COLOR-PAIR STYLE Y X POSITION N

Insert char into window before the character currently under the cursor.

Chars right of the cursor are moved one position to the right.
The rightmost character on the line may be lost. The position of the cursor is not changed.

char can be a simple character or a complex-char with attributes and colors.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the object.

The position can also be passed in form of a two-element list.

If n is given, insert n chars.

Package

de.anvi.croatoan

Source

insch.lisp (file)

Function: insert-line WINDOW &key N

Insert n lines above the current line.

The current line and the lines below are moved down. The n bottom lines are lost.

The current cursor position does not change.

Package

de.anvi.croatoan

Source

deleteln.lisp (file)

Function: insert-nth N ELEMENT LIST

Insert element into list at nth place, increasing the length of the list.

Example: (insert-nth 3 ’x ’(a b c d e)) => (A B C X D E)

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: insert-string WINDOW STRING &key ATTRIBUTES FGCOLOR BGCOLOR COLOR-PAIR STYLE Y X POSITION N

Insert string before the current position in window.

Chars right of the cursor are moved to the right. The rightmost chars on the line may be lost. The cursor position is not changed.

If n is given, insert at most n chars from the string.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the object.

The position can also be passed in form of a two-element list.

Package

de.anvi.croatoan

Source

insstr.lisp (file)

Function: insert-wide-char WINDOW CHAR &key ATTRIBUTES FGCOLOR BGCOLOR COLOR-PAIR STYLE Y X POSITION N

Insert char into window before the character currently under the cursor.

Chars right of the cursor are moved one position to the right.
The rightmost character on the line may be lost. The position of the cursor is not changed.

char can be a simple character or a complex-char with attributes and colors.

If the position coordinates y (row) and x (column) are given, move the cursor to the position first and then add the object.

The position can also be passed in form of a two-element list.

If n is given, insert n chars.

Package

de.anvi.croatoan

Source

ins_wch.lisp (file)

Function: key-pressed-p WINDOW
Package

de.anvi.croatoan

Source

getch.lisp (file)

Function: key-supported-p KEY-CHAR
Package

de.anvi.croatoan

Source

getch.lisp (file)

Function: line Y0 X0 Y1 X1 &key CHAR

Return a straight line between two points

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: lower WIN

Lower window one position in the stack.

Package

de.anvi.croatoan

Source

panel.lisp (file)

Function: lower-to-bottom WIN

Lower window to the bottom of the window stack.

Package

de.anvi.croatoan

Source

panel.lisp (file)

Function: mark-for-redraw WINDOW &key FIRST-LINE NO-OF-LINES

Mark a whole window or a number of lines to be completely redrawn on the next refresh.

Package

de.anvi.croatoan

Source

refresh.lisp (file)

Function: mark-for-refresh WIN &optional PAD-MIN-Y PAD-MIN-X SCREEN-MIN-Y SCREEN-MIN-X SCREEN-MAX-Y SCREEN-MAX-X

Mark a window for a later batch-refresh.

Copy a window to the virtual screen, but do not display it on the visible physical screen. Call batch-refresh to display all marked refreshes.

Package

de.anvi.croatoan

Source

refresh.lisp (file)

Function: merge-shapes &rest SHAPES

Create a new shape object by merging the coordinates of a given list of shapes.

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: move WINDOW Y X &key RELATIVE

Move cursor to the position given by row y and column x.

If relative is t, move the cursor by y rows and x columns.

Package

de.anvi.croatoan

Source

move.lisp (file)

Function: move-direction WINDOW DIRECTION &optional N

Move cursor in the given direction by n cells.

Package

de.anvi.croatoan

Source

move.lisp (file)

Function: move-window WINDOW Y X &key RELATIVE

Move top left corner of the window to row y and column x.

If relative is t, move the window by y rows and x columns.

Package

de.anvi.croatoan

Source

move.lisp (file)

Function: new-line WINDOW &optional COUNT

Insert count newline characters into window.

Package

de.anvi.croatoan

Source

addch.lisp (file)

Function: polygon CORNERS &key FILLED CHAR

Return a polygon along a list of corners, optionally filled

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: process ()

Process the contents of the job queue in the current thread, then exit.

Process should be called from the main thread, which should be the only thread interfacing ncurses directly, and should be running in a terminal.

Package

de.anvi.croatoan

Source

queue.lisp (file)

Function: quadrilateral Y0 X0 Y1 X1 Y2 X2 Y3 X3 &key FILLED CHAR

Return a quadrilateral (utility wrapper around ‘polygon’).

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: raise WIN

Raise window one position in the stack.

Package

de.anvi.croatoan

Source

panel.lisp (file)

Function: raise-to-top WIN

Raise window to the top of the window stack.

Package

de.anvi.croatoan

Source

panel.lisp (file)

Function: rectangle Y0 X0 HEIGHT WIDTH &key FILLED CHAR

Return a rectangle (utility wrapper around ‘polygon’).

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: refresh WIN &optional PAD-MIN-Y PAD-MIN-X SCREEN-MIN-Y SCREEN-MIN-X SCREEN-MAX-Y SCREEN-MAX-X

Redisplay the window after changes have been made to it.

Copies a window to the virtual screen, then updates the visible physical screen by the contents of the virtual screen.

Only updates the changed parts of the window. In order to redraw the whole window, it has to be explicitely touched or marked for redraw.

Package

de.anvi.croatoan

Source

refresh.lisp (file)

Function: refresh-marked ()

Refresh windows marked for refresh.

Package

de.anvi.croatoan

Source

refresh.lisp (file)

Function: refresh-stack ()

Touch and refresh visible windows in the window stack.

Package

de.anvi.croatoan

Source

panel.lisp (file)

Function: remove-attributes WIN ATTRIBUTES

Takes a list of keywords and turns the appropriate attributes off.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: remove-nth N LIST

Remove element at nth place from the list, decreasing the length of the list.

Example: (remove-nth 3 ’(a b c d e)) => (A B C E)

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: replace-nth N ELEMENT LIST

Replaces element of list at nth place, not increasing the length of the list.

Example: (replace-nth 3 ’x ’(a b c d e)) => (A B C X E)

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: reset-field FIELD EVENT &rest ARGS

Clear the field and reset its internal buffers and pointers.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: reset-form OBJECT EVENT &rest ARGS
Package

de.anvi.croatoan

Source

form.lisp (file)

Function: resize WINDOW HEIGHT WIDTH
Package

de.anvi.croatoan

Source

wresize.lisp (file)

Function: return-from-menu MENU RETURN-VALUE

Set menu window to invisible, refresh the window stack, return the value from select.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: run-event-loop OBJECT &rest ARGS

Read events from the window, then call predefined event handler functions on the events.

The handlers can be added by the bind function, or by directly setting a predefined keymap to the window’s bindings slot.

Args is one or more additional argument passed to the handlers.

Provide a non-local exit point so we can exit the loop from an event handler.

One of the events must provide a way to exit the event loop by throwing ’event-loop.

The function exit-event-loop is pre-defined to perform this non-local exit.

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Function: select MENU

Display the menu, let the user select an item, return the selected item.

If the item is a menu object, recursively display the sub menu.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: set-mouse-event KEYWORD-LIST

Take a list of mouse events, activate tracking of those events.

Returns an integer bitmask. An empty list turns off mouse tracking.

Package

de.anvi.croatoan

Source

mouse.lisp (file)

Function: shape-extent SHAPE

Return min-y, min-x, max-y, and max-x of a shape’s coordinates as multiple values.

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: toggle-item-checkbox MENU EVENT

Toggle the checked state of the current item, used in checkbox menus.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: touch WINDOW

Make the next call to refresh rewrite whe whole window by marking the whole window as changed.

Makes it possible to raise unchanged overlapping windows by refreshing.

Package

de.anvi.croatoan

Source

touch.lisp (file)

Function: triangle Y0 X0 Y1 X1 Y2 X2 &key FILLED CHAR

Return a triangle (utility wrapper around ‘polygon’).

Package

de.anvi.croatoan

Source

shape.lisp (file)

Function: unbind OBJECT EVENT

Remove the event and the handler function from object’s bindings alist.

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Function: unget-char CHTYPE
Package

de.anvi.croatoan

Source

getch.lisp (file)

Function: update-menu MENU EVENT

Take a menu and an event, update in-place the current item of the menu.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: update-redraw-menu MENU EVENT

Update the menu after an event, the redraw the menu.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: use-terminal-colors-p SCREEN
Function: (setf use-terminal-colors-p) FLAG SCREEN
Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: wacs CHAR-NAME

Take a keyword symbol, return the wide unicode integer representing the ACS char.

Package

de.anvi.croatoan

Source

add_wch.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.6 Generic functions

Generic Function: attributes OBJECT
Generic Function: (setf attributes) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: attributes (WINDOW window)
Method: (setf attributes) ATTRIBUTES (WIN window)
Source

classes.lisp (file)

Method: attributes (COMPLEX-CHAR complex-char)
Method: (setf attributes) NEW-VALUE (COMPLEX-CHAR complex-char)

List of keywords denoting attributes.

Source

classes.lisp (file)

Generic Function: background WINDOW
Generic Function: (setf background) CHAR WINDOW &optional APPLY
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: background (WIN window)
Method: (setf background) CHAR (WINDOW window) &optional APPLY
Generic Function: bgcolor OBJECT
Generic Function: (setf bgcolor) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: bgcolor (WIN window)
Method: (setf bgcolor) BGCOLOR (WIN window)
Source

classes.lisp (file)

Method: bgcolor (COMPLEX-CHAR complex-char)
Method: (setf bgcolor) NEW-VALUE (COMPLEX-CHAR complex-char)

A keyword denoting the background color of the complex character.

Source

classes.lisp (file)

Generic Function: bindings OBJECT
Generic Function: (setf bindings) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: bindings (FORM form)
Method: (setf bindings) NEW-VALUE (FORM form)

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Source

classes.lisp (file)

Method: bindings (FIELD field)
Method: (setf bindings) NEW-VALUE (FIELD field)

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Source

classes.lisp (file)

Method: bindings (CHECKBOX checkbox)
Method: (setf bindings) NEW-VALUE (CHECKBOX checkbox)

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Source

classes.lisp (file)

Method: bindings (BUTTON button)
Method: (setf bindings) NEW-VALUE (BUTTON button)

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Source

classes.lisp (file)

Method: bindings (ELEMENT element)
Method: (setf bindings) NEW-VALUE (ELEMENT element)

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Source

classes.lisp (file)

Method: bindings (MENU menu)
Method: (setf bindings) NEW-VALUE (MENU menu)

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Source

classes.lisp (file)

Method: bindings (WINDOW window)
Method: (setf bindings) NEW-VALUE (WINDOW window)

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Source

classes.lisp (file)

Method: bindings (KEYMAP keymap)
Method: (setf bindings) NEW-VALUE (KEYMAP keymap)

Alist of events and handler functions.

Source

classes.lisp (file)

Generic Function: buffer OBJECT
Generic Function: (setf buffer) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: buffer (FIELD field)
Method: (setf buffer) NEW-VALUE (FIELD field)

List containing the characters in the field.

Source

classes.lisp (file)

Generic Function: callback OBJECT
Generic Function: (setf callback) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: callback (BUTTON button)
Method: (setf callback) NEW-VALUE (BUTTON button)

Callback function called when the button is activated.

Source

classes.lisp (file)

Generic Function: checkedp OBJECT
Generic Function: (setf checkedp) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: checkedp (CHECKBOX checkbox)
Method: (setf checkedp) NEW-VALUE (CHECKBOX checkbox)

t if the checkbox has been checked, nil if it hasn’t.

Source

classes.lisp (file)

Method: checkedp (MENU-ITEM menu-item)
Method: (setf checkedp) NEW-VALUE (MENU-ITEM menu-item)

t if the item has been checked, nil if it hasn’t.

Source

classes.lisp (file)

Generic Function: clear OBJECT &key REDRAW TARGET
Package

de.anvi.croatoan

Source

clear.lisp (file)

Methods
Method: clear (FIELD field) &key

Clear the field by overwriting it with the background char.

The default background char is #space.

Source

form.lisp (file)

Method: clear (WINDOW window) &key REDRAW TARGET

Clear the window by overwriting it with blanks.

If the keyword redraw is t, first copy blanks to every position in the window, then set the clear-redraw-flag to have the window redrawn from scratch on the next refresh.

If target is :end-of-line, clear the window from the cursor to the end of the current line.

If target is :bottom, clear the window from the cursor to the end of the current line and all lines below.

Generic Function: closed-p S

Check whether the screen has been closed without a subsequent call to refresh to reactivate it.

Package

de.anvi.croatoan

Source

initscr.lisp (file)

Methods
Method: closed-p (S screen)
Generic Function: color-pair WIN
Generic Function: (setf color-pair) COLOR-PAIR WIN
Package

de.anvi.croatoan

Methods
Method: color-pair (XCH complex-char)
Method: (setf color-pair) COLOR-PAIR (XCH complex-char)
Source

classes.lisp (file)

Method: color-pair (WIN window)
Method: (setf color-pair) COLOR-PAIR (WIN window)
Source

classes.lisp (file)

Generic Function: complex-char-array OBJECT
Generic Function: (setf complex-char-array) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: complex-char-array (COMPLEX-STRING complex-string)
Method: (setf complex-char-array) NEW-VALUE (COMPLEX-STRING complex-string)

Lisp primitive string type.

Source

classes.lisp (file)

Generic Function: convert-char CHAR RESULT-TYPE

Take a char and convert it to a char of result-type.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Methods
Method: convert-char (CHAR integer) RESULT-TYPE
Method: convert-char (CHAR character) RESULT-TYPE
Method: convert-char (CHAR complex-char) RESULT-TYPE
Generic Function: coordinates OBJECT
Generic Function: (setf coordinates) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: coordinates (SHAPE shape)
Method: (setf coordinates) NEW-VALUE (SHAPE shape)

A list of coordinates relative to the origin that form this shape.

Source

shape.lisp (file)

Generic Function: current-item OBJECT
Generic Function: (setf current-item) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: current-item (MENU menu)
Method: (setf current-item) NEW-VALUE (MENU menu)

Pointer to the currently selected item object. The first item is initialized as the current item.

Source

classes.lisp (file)

Generic Function: current-item-mark OBJECT
Package

de.anvi.croatoan

Methods
Method: current-item-mark (MENU menu)

A string prefixed to the current item in the menu.

Source

classes.lisp (file)

Generic Function: current-item-number OBJECT
Generic Function: (setf current-item-number) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: current-item-number (MENU menu)
Method: (setf current-item-number) NEW-VALUE (MENU menu)

Number of the currently selected item.

Source

classes.lisp (file)

Generic Function: cursor-position WINDOW
Generic Function: (setf cursor-position) COORDINATES WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: cursor-position (WINDOW window)
Method: (setf cursor-position) COORDINATES (W window)
Generic Function: cursor-position-x WINDOW
Generic Function: (setf cursor-position-x) X WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: cursor-position-x (WIN window)
Method: (setf cursor-position-x) X (WIN window)
Generic Function: cursor-position-y WINDOW
Generic Function: (setf cursor-position-y) Y WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: cursor-position-y (WIN window)
Method: (setf cursor-position-y) Y (WIN window)
Generic Function: cursor-visible-p WINDOW
Generic Function: (setf cursor-visible-p) STATUS SCREEN
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: cursor-visible-p (SCREEN screen)
Method: (setf cursor-visible-p) STATUS (SCREEN screen)
Generic Function: cyclic-selection-p OBJECT
Generic Function: (setf cyclic-selection-p) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: cyclic-selection-p (MENU menu)
Method: (setf cyclic-selection-p) NEW-VALUE (MENU menu)

Wrap around when the end of a non-scrolled menu is reached.

Source

classes.lisp (file)

Generic Function: draw-border-p OBJECT
Package

de.anvi.croatoan

Methods
Method: draw-border-p (WINDOW window)

Draw (t) or don’t draw (nil, default) an initial border around a window. Not redrawn automatically.

Source

classes.lisp (file)

Generic Function: elements OBJECT
Generic Function: (setf elements) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: elements (FORM form)
Method: (setf elements) NEW-VALUE (FORM form)

List of elements. The first element will be initialized as the current element.

Source

classes.lisp (file)

Generic Function: fgcolor OBJECT
Generic Function: (setf fgcolor) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: fgcolor (WIN window)
Method: (setf fgcolor) FGCOLOR (WIN window)
Source

classes.lisp (file)

Method: fgcolor (COMPLEX-CHAR complex-char)
Method: (setf fgcolor) NEW-VALUE (COMPLEX-CHAR complex-char)

A keyword denoting the foreground color of the complex character.

Source

classes.lisp (file)

Generic Function: frame-rate OBJECT
Generic Function: (setf frame-rate) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: frame-rate (WINDOW window)
Method: (setf frame-rate) NEW-VALUE (WINDOW window)

Set the frame rate in fps (frames per second). When input-blocking is nil, sleep for 1/frame-rate seconds between event loop cycles. Has the same effect as setting input-blocking duration, and should thus not be used simultaneously.

Source

classes.lisp (file)

Generic Function: function-keys-enabled-p WINDOW
Generic Function: (setf function-keys-enabled-p) STATUS WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: function-keys-enabled-p (WINDOW window)
Method: (setf function-keys-enabled-p) STATUS (WINDOW window)
Generic Function: height WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: height (WINDOW window)
Generic Function: input-blocking WINDOW
Generic Function: (setf input-blocking) STATUS WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: input-blocking (WINDOW window)
Method: (setf input-blocking) STATUS (WINDOW window)
Generic Function: input-buffering-p SCREEN
Generic Function: (setf input-buffering-p) STATUS SCREEN
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: input-buffering-p (SCREEN screen)
Method: (setf input-buffering-p) STATUS (SCREEN screen)
Generic Function: input-echoing-p SCREEN
Generic Function: (setf input-echoing-p) STATUS SCREEN
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: input-echoing-p (SCREEN screen)
Method: (setf input-echoing-p) STATUS (SCREEN screen)
Generic Function: insert-mode-p OBJECT
Generic Function: (setf insert-mode-p) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: insert-mode-p (WINDOW window)
Method: (setf insert-mode-p) NEW-VALUE (WINDOW window)

Printing a new char will insert (t) it before the character under the cursor instead of overwriting it (nil, default).

Source

classes.lisp (file)

Generic Function: items OBJECT
Generic Function: (setf items) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: items (MENU menu)
Method: (setf items) NEW-VALUE (MENU menu)

List of menu items. Item types can be strings, symbols, other menus or callback functions.

Source

classes.lisp (file)

Generic Function: keymap OBJECT
Generic Function: (setf keymap) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: keymap (FORM form)
Method: (setf keymap) NEW-VALUE (FORM form)

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Source

classes.lisp (file)

Method: keymap (FIELD field)
Method: (setf keymap) NEW-VALUE (FIELD field)

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Source

classes.lisp (file)

Method: keymap (CHECKBOX checkbox)
Method: (setf keymap) NEW-VALUE (CHECKBOX checkbox)

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Source

classes.lisp (file)

Method: keymap (BUTTON button)
Method: (setf keymap) NEW-VALUE (BUTTON button)

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Source

classes.lisp (file)

Method: keymap (ELEMENT element)
Method: (setf keymap) NEW-VALUE (ELEMENT element)

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Source

classes.lisp (file)

Method: keymap (MENU menu)
Method: (setf keymap) NEW-VALUE (MENU menu)

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Source

classes.lisp (file)

Method: keymap (WINDOW window)
Method: (setf keymap) NEW-VALUE (WINDOW window)

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Source

classes.lisp (file)

Generic Function: location WINDOW
Generic Function: (setf location) COORDINATES WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: location (WIN sub-window)
Method: location (WINDOW window)
Method: (setf location) COORDINATES (W window)
Method: location (ELEMENT element)
Method: (setf location) NEW-VALUE (ELEMENT element)

A two-element list (y=row x=column) containing the coordinate of the top left corner of the element.

Generic Function: location-x WINDOW
Generic Function: (setf location-x) X WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: location-x (WIN sub-window)
Method: location-x (WIN window)
Method: (setf location-x) X (WIN window)
Generic Function: location-y WINDOW
Generic Function: (setf location-y) Y WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: location-y (WIN sub-window)
Method: location-y (WIN window)
Method: (setf location-y) Y (WIN window)
Generic Function: max-buffer-length OBJECT
Generic Function: (setf max-buffer-length) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: max-buffer-length (FIELD field)
Method: (setf max-buffer-length) NEW-VALUE (FIELD field)

Max length of the field buffer. If nil, it will be initialized to field width. Horizontal scrolling is then disabled.

Source

classes.lisp (file)

Generic Function: max-item-length OBJECT
Generic Function: (setf max-item-length) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: max-item-length (MENU menu)
Method: (setf max-item-length) NEW-VALUE (MENU menu)

Max number of characters displayed for a single item.

Source

classes.lisp (file)

Generic Function: menu-location OBJECT
Generic Function: (setf menu-location) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: menu-location (MENU menu)
Method: (setf menu-location) NEW-VALUE (MENU menu)

Relative location of the menu within its associated window.

Source

classes.lisp (file)

Generic Function: menu-type OBJECT
Generic Function: (setf menu-type) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: menu-type (MENU menu)
Method: (setf menu-type) NEW-VALUE (MENU menu)

Types of menus: :selection (default, can contain strings, symbols, menus) or :checklist.

Source

classes.lisp (file)

Generic Function: message-height OBJECT
Package

de.anvi.croatoan

Methods
Method: message-height (DIALOG-WINDOW dialog-window)

Max number of lines reserved for the optional message text.

Source

classes.lisp (file)

Generic Function: message-pad OBJECT
Package

de.anvi.croatoan

Methods
Method: message-pad (DIALOG-WINDOW dialog-window)

Passive content window, for example for menu descriptions.

Source

classes.lisp (file)

Generic Function: message-pad-coordinates OBJECT
Package

de.anvi.croatoan

Methods
Method: message-pad-coordinates (DIALOG-WINDOW dialog-window)

List of four coordinates where to refresh/display the message pad: min-y min-x max-y max-x.

Source

classes.lisp (file)

Generic Function: message-text OBJECT
Generic Function: (setf message-text) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: message-text (DIALOG-WINDOW dialog-window)
Method: (setf message-text) NEW-VALUE (DIALOG-WINDOW dialog-window)

Optional message text to describe the choices in the menu below.

Source

classes.lisp (file)

Generic Function: name OBJECT
Package

de.anvi.croatoan

Methods
Method: name (FORM form)

Name of the form.

Source

classes.lisp (file)

Method: name (ELEMENT element)

Optional unique name by which the element can be identified and accessed.

Source

classes.lisp (file)

Method: name (MENU menu)

Name of the menu. (For example for setting the menu-window title, if title is t.)

Source

classes.lisp (file)

Method: name (MENU-ITEM menu-item)

Short name of a menu item displayed in the menu.

Source

classes.lisp (file)

Generic Function: newline-translation-enabled-p SCREEN
Generic Function: (setf newline-translation-enabled-p) STATUS SCREEN
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: newline-translation-enabled-p (SCREEN screen)
Method: (setf newline-translation-enabled-p) STATUS (SCREEN screen)
Generic Function: origin-x OBJECT
Generic Function: (setf origin-x) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: origin-x (SHAPE shape)
Method: (setf origin-x) NEW-VALUE (SHAPE shape)

The x coordinate of this shape’s point of origin.

Source

shape.lisp (file)

Generic Function: origin-y OBJECT
Generic Function: (setf origin-y) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: origin-y (SHAPE shape)
Method: (setf origin-y) NEW-VALUE (SHAPE shape)

The y coordinate of this shape’s point of origin.

Source

shape.lisp (file)

Generic Function: plot-char OBJECT
Generic Function: (setf plot-char) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: plot-char (SHAPE shape)
Method: (setf plot-char) NEW-VALUE (SHAPE shape)

The character to use for plotting.

Source

shape.lisp (file)

Generic Function: process-control-chars-p SCREEN
Generic Function: (setf process-control-chars-p) STATUS SCREEN
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: process-control-chars-p (SCREEN screen)
Method: (setf process-control-chars-p) STATUS (SCREEN screen)
Generic Function: scrolling-enabled-p WINDOW
Generic Function: (setf scrolling-enabled-p) STATUS WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: scrolling-enabled-p (WINDOW window)
Method: (setf scrolling-enabled-p) STATUS (WINDOW window)
Generic Function: scrolling-region WINDOW
Generic Function: (setf scrolling-region) LIST WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: scrolling-region (WINDOW window)
Method: (setf scrolling-region) LIST (WINDOW window)
Generic Function: simple-char OBJECT
Generic Function: (setf simple-char) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: simple-char (COMPLEX-CHAR complex-char)
Method: (setf simple-char) NEW-VALUE (COMPLEX-CHAR complex-char)

Lisp primitive character type, like #a.

Source

classes.lisp (file)

Generic Function: (setf source-location) COORDINATES SUB-WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Methods
Method: (setf source-location) COORDINATES (W sub-window)
Generic Function: stackedp WIN
Generic Function: (setf stackedp) STACKEDP WIN
Package

de.anvi.croatoan

Methods
Method: stackedp (WIN window)
Method: (setf stackedp) STACKEDP (WIN window)
Source

classes.lisp (file)

Generic Function: style ELEMENT
Generic Function: (setf style) STYLE ELEMENT
Package

de.anvi.croatoan

Methods
Method: style (FORM form)
Method: (setf style) NEW-VALUE (FORM form)

A plist of default styles for each form element type.

Source

classes.lisp (file)

Method: style (ELEMENT element)

If the element’s style slot is empty, check whether a default style has been defined in the parent form.

Source

classes.lisp (file)

Method: (setf style) STYLE (ELEMENT element)
Source

classes.lisp (file)

Generic Function: sub-window OBJECT
Package

de.anvi.croatoan

Methods
Method: sub-window (DECORATED-WINDOW decorated-window)

Active content window, for example for menu items.

Source

classes.lisp (file)

Generic Function: title OBJECT
Generic Function: (setf title) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: title (ELEMENT element)
Method: (setf title) NEW-VALUE (ELEMENT element)

Title of the element to be displayed at an location depending on the element type.

Source

classes.lisp (file)

Method: title (DECORATED-WINDOW decorated-window)
Method: (setf title) NEW-VALUE (DECORATED-WINDOW decorated-window)

If t, a title of the window will be displayed over the top border.

Source

classes.lisp (file)

Generic Function: value OBJECT
Generic Function: (setf value) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: value (FIELD field)

If the field buffer is empty, return nil, otherwise return the buffer as a string.

Source

classes.lisp (file)

Method: (setf value) NEW-VALUE (FIELD field)
Source

classes.lisp (file)

Method: value (ELEMENT element)
Method: (setf value) NEW-VALUE (ELEMENT element)

Value of the element, mostly the result of the form editing.

Source

classes.lisp (file)

Method: value (MENU-ITEM menu-item)

Object associated with and returned upon selection of the item.

Source

classes.lisp (file)

Generic Function: visiblep OBJECT
Generic Function: (setf visiblep) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: visiblep (WINDOW window)
Method: (setf visiblep) NEW-VALUE (WINDOW window)

If visible is nil, do not refresh the stacked window when refreshing the window stack.

Source

classes.lisp (file)

Generic Function: width WINDOW
Package

de.anvi.croatoan

Source

classes.lisp (file)

Writer

(setf width) (generic function)

Methods
Method: width (WINDOW window)
Method: width (FIELD field)

The width of the field. The default buffer length is equal the width.

Method: width (LABEL label)

The width of the label.

Generic Function: (setf width) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Reader

width (generic function)

Methods
Method: (setf width) NEW-VALUE (FIELD field)

The width of the field. The default buffer length is equal the width.

Source

classes.lisp (file)

Method: (setf width) NEW-VALUE (LABEL label)

The width of the label.

Source

classes.lisp (file)

Generic Function: window OBJECT
Generic Function: (setf window) NEW-VALUE OBJECT
Package

de.anvi.croatoan

Methods
Method: window (FORM form)
Method: (setf window) NEW-VALUE (FORM form)

Window created separately and then associated with the form.

Source

classes.lisp (file)

Method: window (ELEMENT element)

Return the window associated with an element, which can optionally be part of a form.

If there is no window asociated with the element, return the window associated with the parent form.

Source

classes.lisp (file)

Method: (setf window) WINDOW (ELEMENT element)
Source

classes.lisp (file)

Method: window (MENU menu)
Method: (setf window) NEW-VALUE (MENU menu)

Window created separately and then associated with the menu.

Source

classes.lisp (file)

Generic Function: winptr OBJECT
Package

de.anvi.croatoan

Methods
Method: winptr (WINDOW window)

Pointer to a C/ncurses WINDOW structure after the window is created.

Source

classes.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.7 Conditions

Condition: job-error ()
Package

de.anvi.croatoan

Source

queue.lisp (file)

Direct superclasses

error (condition)

Direct methods

print-object (method)

Direct slots
Slot: form

The form that failed to execute

Initargs

:form

Initform

(quote (error "form required"))

Slot: error

The error that was signaled when form was executed

Initargs

:error

Initform

(quote (error "error required"))


Previous: , Up: Exported definitions   [Contents][Index]

6.1.8 Classes

Class: button ()

An element that can call a function by pressing enter (or in future, with a mouse click).

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

element (class)

Direct methods
Direct slots
Slot: callback

Callback function called when the button is activated.

Type

(or null symbol function)

Initargs

:callback

Readers

callback (generic function)

Writers

(setf callback) (generic function)

Slot: style

A plist of two complex-chars (or nil): :foreground and :selected-foreground.

Type

(or null cons)

Initargs

:style

Slot: bindings

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Type

(or null cons)

Initargs

:bindings

Readers

bindings (generic function)

Writers

(setf bindings) (generic function)

Slot: keymap

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Type

(or null symbol keyword de.anvi.croatoan:keymap)

Initargs

:keymap

Initform

(quote de.anvi.croatoan:button-map)

Readers

keymap (generic function)

Writers

(setf keymap) (generic function)

Class: checkbox ()

A boolean element that can be checked (t) or unchecked (nil)

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

element (class)

Direct methods
Direct slots
Slot: style

A plist containing :foreground and :selected-foreground.

Type

(or null cons)

Initargs

:style

Slot: checkedp

t if the checkbox has been checked, nil if it hasn’t.

Type

boolean

Initargs

:checked

Readers

checkedp (generic function)

Writers

(setf checkedp) (generic function)

Slot: bindings

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Type

(or null cons)

Initargs

:bindings

Readers

bindings (generic function)

Writers

(setf bindings) (generic function)

Slot: keymap

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Type

(or null symbol keyword de.anvi.croatoan:keymap)

Initargs

:keymap

Initform

(quote de.anvi.croatoan::checkbox-map)

Readers

keymap (generic function)

Writers

(setf keymap) (generic function)

Class: complex-char ()

A complex char consists of a simple char, a list of attribute keywords and a pair of color keywords.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
  • convert-char (method)
  • stream-write-char (method)
  • print-object (method)
  • print-object (method)
  • color-pair (method)
  • color-pair (method)
  • initialize-instance (method)
  • bgcolor (method)
  • bgcolor (method)
  • fgcolor (method)
  • fgcolor (method)
  • attributes (method)
  • attributes (method)
  • simple-char (method)
  • simple-char (method)
Direct slots
Slot: simple-char

Lisp primitive character type, like #a.

Type

(or null integer character keyword)

Initargs

:simple-char

Readers

simple-char (generic function)

Writers

(setf simple-char) (generic function)

Slot: attributes

List of keywords denoting attributes.

Type

(or null cons)

Initargs

:attributes

Initform

(quote nil)

Readers

attributes (generic function)

Writers

(setf attributes) (generic function)

Slot: fgcolor

A keyword denoting the foreground color of the complex character.

Type

(or null keyword integer list)

Initargs

:fgcolor

Readers

fgcolor (generic function)

Writers

(setf fgcolor) (generic function)

Slot: bgcolor

A keyword denoting the background color of the complex character.

Type

(or null keyword integer list)

Initargs

:bgcolor

Readers

bgcolor (generic function)

Writers

(setf bgcolor) (generic function)

Class: complex-string ()

A complex string consists of an array of complex characters.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
  • print-object (method)
  • print-object (method)
  • initialize-instance (method)
  • complex-char-array (method)
  • complex-char-array (method)
Direct slots
Slot: complex-char-array

Lisp primitive string type.

Type

vector

Initargs

:complex-char-array

Initform

(make-array 0 :element-type (quote de.anvi.croatoan:complex-char) :fill-pointer 0 :adjustable t)

Readers

complex-char-array (generic function)

Writers

(setf complex-char-array) (generic function)

Class: decorated-window ()

A decorated-window is a window consisting of a background window for a border, a title and a content sub-window.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

window (class)

Direct subclasses
Direct methods
  • close (method)
  • initialize-instance (method)
  • title (method)
  • title (method)
  • sub-window (method)
Direct slots
Slot: sub-window

Active content window, for example for menu items.

Type

(or null de.anvi.croatoan:sub-window)

Initargs

:sub-window

Readers

sub-window (generic function)

Slot: title

If t, a title of the window will be displayed over the top border.

Type

(or boolean string)

Initargs

:title

Readers

title (generic function)

Writers

(setf title) (generic function)

Class: dialog-window ()

A dialog is a decorated menu with a title, a message and items.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

menu-window (class)

Direct methods
Direct slots
Slot: message-pad

Passive content window, for example for menu descriptions.

Type

(or null de.anvi.croatoan:pad)

Readers

message-pad (generic function)

Slot: message-text

Optional message text to describe the choices in the menu below.

Type

(or null string)

Initargs

:message-text

Readers

message-text (generic function)

Writers

(setf message-text) (generic function)

Slot: message-height

Max number of lines reserved for the optional message text.

Type

integer

Initargs

:message-height

Initform

0

Readers

message-height (generic function)

Slot: message-pad-coordinates

List of four coordinates where to refresh/display the message pad: min-y min-x max-y max-x.

Type

(or null cons)

Readers

message-pad-coordinates (generic function)

Class: field ()

A field is an editable part of the screen for user input. Can be part of a form.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

element (class)

Direct methods
Direct slots
Slot: width

The width of the field. The default buffer length is equal the width.

Type

(or null integer)

Initargs

:width

Readers

width (generic function)

Writers

(setf width) (generic function)

Slot: style

A plist of four complex-chars (or nil): :foreground, :background, :selected-foreground, :selected-background.

Type

(or null cons)

Initargs

:style

Slot: bindings

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Type

(or null cons)

Initargs

:bindings

Readers

bindings (generic function)

Writers

(setf bindings) (generic function)

Slot: keymap

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Type

(or null symbol keyword de.anvi.croatoan:keymap)

Initargs

:keymap

Initform

(quote de.anvi.croatoan:field-map)

Readers

keymap (generic function)

Writers

(setf keymap) (generic function)

Slot: buffer

List containing the characters in the field.

Type

(or null list)

Readers

buffer (generic function)

Writers

(setf buffer) (generic function)

Slot: max-buffer-length

Max length of the field buffer. If nil, it will be initialized to field width. Horizontal scrolling is then disabled.

Type

(or null integer)

Initargs

:max-buffer-length

Readers

max-buffer-length (generic function)

Writers

(setf max-buffer-length) (generic function)

Slot: display-pointer

Position in the input buffer from which n=width characters are displayed.
When max-buffer-length is greater than width, display-pointer can be greater than zero. Horizontal scrolling is then enabled.

Type

(or null integer)

Initform

0

Readers

display-pointer (generic function)

Writers

(setf display-pointer) (generic function)

Slot: input-pointer

The position in the input buffer to which the next character will be written.

Type

integer

Initform

0

Readers

input-pointer (generic function)

Writers

(setf input-pointer) (generic function)

Class: form ()

A form is a list of fields.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

standard-object (class)

Direct subclasses

form-window (class)

Direct methods
Direct slots
Slot: name

Name of the form.

Type

(or null symbol keyword string)

Initargs

:name

Readers

name (generic function)

Slot: elements

List of elements. The first element will be initialized as the current element.

Type

(or null cons)

Initargs

:elements

Readers

elements (generic function)

Writers

(setf elements) (generic function)

Slot: current-element-number

Number of the currently selected element.

Type

integer

Initform

0

Readers

current-element-number (generic function)

Writers

(setf current-element-number) (generic function)

Slot: current-element

Currently selected element object.

Type

(or null de.anvi.croatoan:field de.anvi.croatoan:button de.anvi.croatoan:label de.anvi.croatoan:checkbox)

Readers

current-element (generic function)

Writers

(setf current-element) (generic function)

Slot: style

A plist of default styles for each form element type.

Type

(or null cons)

Initargs

:style

Readers

style (generic function)

Writers

(setf style) (generic function)

Slot: bindings

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Type

(or null cons)

Initargs

:bindings

Readers

bindings (generic function)

Writers

(setf bindings) (generic function)

Slot: keymap

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Type

(or null symbol keyword de.anvi.croatoan:keymap)

Initargs

:keymap

Initform

(quote de.anvi.croatoan:form-map)

Readers

keymap (generic function)

Writers

(setf keymap) (generic function)

Slot: window

Window created separately and then associated with the form.

Type

(or null de.anvi.croatoan:window)

Initargs

:window

Readers

window (generic function)

Writers

(setf window) (generic function)

Class: form-window ()
Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses
Direct methods
  • draw (method)
  • close (method)
  • initialize-instance (method)
Class: keymap ()

A keymap contains an alist of events as keys and event handlers or chained keymaps as values.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
  • initialize-instance (method)
  • bindings (method)
  • bindings (method)
Direct slots
Slot: bindings

Alist of events and handler functions.

Type

(or null cons)

Initargs

:bindings

Readers

bindings (generic function)

Writers

(setf bindings) (generic function)

Class: label ()

A string displayed at the specified location.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

element (class)

Direct methods
Direct slots
Slot: reference

If the name of a reference element is specified, the element’s title will be displayed instead of the label’s. If a title for the label is explicitely provided, it overrides the title of the reference element.

Type

(or null symbol keyword string)

Initargs

:reference

Readers

reference (generic function)

Writers

(setf reference) (generic function)

Slot: width

The width of the label.

Type

(or null integer)

Initargs

:width

Readers

width (generic function)

Writers

(setf width) (generic function)

Slot: style
Type

(or null cons)

Initargs

:style

Slot: activep

Labels are by default not active and can not be selected when cycling through the elements.

Class: menu ()

A menu is a list of items that can be selected by the user.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

standard-object (class)

Direct subclasses

menu-window (class)

Direct methods
Direct slots
Slot: name

Name of the menu. (For example for setting the menu-window title, if title is t.)

Type

(or null string symbol)

Initargs

:name

Readers

name (generic function)

Slot: items

List of menu items. Item types can be strings, symbols, other menus or callback functions.

Type

(or null cons)

Initargs

:items

Readers

items (generic function)

Writers

(setf items) (generic function)

Slot: menu-type

Types of menus: :selection (default, can contain strings, symbols, menus) or :checklist.

Type

keyword

Initargs

:menu-type

Initform

:selection

Readers

menu-type (generic function)

Writers

(setf menu-type) (generic function)

Slot: menu-location

Relative location of the menu within its associated window.

Type

(or null cons)

Initargs

:menu-location

Readers

menu-location (generic function)

Writers

(setf menu-location) (generic function)

Slot: current-item-number

Number of the currently selected item.

Type

integer

Initform

0

Readers

current-item-number (generic function)

Writers

(setf current-item-number) (generic function)

Slot: current-item

Pointer to the currently selected item object. The first item is initialized as the current item.

Type

(or null string symbol de.anvi.croatoan:menu-item)

Readers

current-item (generic function)

Writers

(setf current-item) (generic function)

Slot: current-item-mark

A string prefixed to the current item in the menu.

Type

string

Initargs

:current-item-mark

Initform

""

Readers

current-item-mark (generic function)

Slot: cyclic-selection-p

Wrap around when the end of a non-scrolled menu is reached.

Type

boolean

Initargs

:cyclic-selection

Readers

cyclic-selection-p (generic function)

Writers

(setf cyclic-selection-p) (generic function)

Slot: max-item-length

Max number of characters displayed for a single item.

Type

integer

Initargs

:max-item-length

Initform

15

Readers

max-item-length (generic function)

Writers

(setf max-item-length) (generic function)

Slot: layout

Layout (no-of-rows no-of-columns) of the items in the menu. If nil, we have a vertical list.

Type

(or null cons)

Initargs

:layout

Readers

layout (generic function)

Writers

(setf layout) (generic function)

Slot: scrolled-layout

Layout (no-of-rows no-of-columns) of the menu items actually displayed on screen.

Type

(or null cons)

Initargs

:scrolled-layout

Readers

scrolled-layout (generic function)

Writers

(setf scrolled-layout) (generic function)

Slot: scrolled-region-start

A 2-element list tracking the starting row/y and column/x of the displayed menu region.

Type

(or null cons)

Initform

(list 0 0)

Readers

scrolled-region-start (generic function)

Writers

(setf scrolled-region-start) (generic function)

Slot: bindings

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Type

(or null cons)

Initargs

:bindings

Readers

bindings (generic function)

Writers

(setf bindings) (generic function)

Slot: keymap

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Type

(or null symbol keyword de.anvi.croatoan:keymap)

Initargs

:keymap

Initform

(quote de.anvi.croatoan:menu-map)

Readers

keymap (generic function)

Writers

(setf keymap) (generic function)

Slot: window

Window created separately and then associated with the menu.

Type

(or null de.anvi.croatoan:window)

Initargs

:window

Readers

window (generic function)

Writers

(setf window) (generic function)

Class: menu-item ()

A menu consists of a list of menu items.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: name

Short name of a menu item displayed in the menu.

Type

(or null string symbol)

Initargs

:name

Readers

name (generic function)

Slot: checkedp

t if the item has been checked, nil if it hasn’t.

Type

boolean

Initargs

:checked

Readers

checkedp (generic function)

Writers

(setf checkedp) (generic function)

Slot: value

Object associated with and returned upon selection of the item.

Type

(or symbol string de.anvi.croatoan:menu de.anvi.croatoan:menu-window function)

Initargs

:value

Readers

value (generic function)

Class: menu-window ()

A menu-window is decorated-window providing a list of items to be selected by the user.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses
Direct subclasses

dialog-window (class)

Direct methods
  • draw (method)
  • close (method)
  • initialize-instance (method)
Class: pad ()

A pad is a window without a specified location on screen, which is specified dynamically during refresh.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

window (class)

Direct subclasses

sub-pad (class)

Direct methods

initialize-instance (method)

Class: queue ()

A thread-safe FIFO queue.

Package

de.anvi.croatoan

Source

queue.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
  • print-object (method)
  • initialize-instance (method)
Direct slots
Slot: head

Pointer to the first cons of the elements list.

Slot: tail

Pointer to the last cons of the elements list.

Slot: lock

A mutex that ensures thread-safe access to the queue from multiple threads.

Class: screen ()

Represents the main window created upon screen initialisation.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

window (class)

Direct methods
Direct slots
Slot: colors-enabled-p

Enable (t) or disable (nil) display of colors, if the terminal supports it.

Type

boolean

Initargs

:enable-colors

Slot: use-terminal-colors-p

Use (t) colors set by the terminal (named :terminal) as the default instead of the ncurses default white on black.

Type

boolean

Initargs

:use-terminal-colors

Slot: cursor-visible-p

Enable (t) or disable (nil) the display of a visible cursor.

Type

boolean

Initargs

:cursor-visible

Initform

t

Slot: input-echoing-p

Enable (t) or disable (nil) echoing of chars during keyboard input.

Type

boolean

Initargs

:input-echoing

Initform

t

Slot: input-buffering-p

Set whether typed characters will be returned immediately when they are typed (nil, default) or buffered until Return is typed (t).

Type

boolean

Initargs

:input-buffering

Slot: process-control-chars-p

If input-buffering is nil, set whether some control characters like ^C, ^S, ^Q, ^D will be processed (t, default) or passed directly to the program (nil).
When input-buffering is t, control chars are always processed and this option has no effect.

Type

boolean

Initargs

:process-control-chars

Initform

t

Slot: newline-translation-enabled-p

If t (default), the #return character (CR ^M r) is automatically translated to newline (NL) on input, and NL is translated to CR LF on output.
NL is the standard, system independent, portable way to end a line.
It can be either #linefeed (LF ^J n) on Linux, carriage #return on MacOS, CRLF rn on Windows. Setting newline translation to nil is necessary to be able to detect the #return key.

Type

boolean

Initargs

:enable-newline-translation

Initform

t

Slot: closed-p

Check whether the screen has been closed, without a subsequent call to refresh to reactivate it.

Type

boolean

Class: shape ()

A shape is a list of coordinates, relative to an origin, that can be plotted in a window.

Package

de.anvi.croatoan

Source

shape.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: origin-x

The x coordinate of this shape’s point of origin.

Type

integer

Initargs

:x0

Initform

0

Readers

origin-x (generic function)

Writers

(setf origin-x) (generic function)

Slot: origin-y

The y coordinate of this shape’s point of origin.

Type

integer

Initargs

:y0

Initform

0

Readers

origin-y (generic function)

Writers

(setf origin-y) (generic function)

Slot: coordinates

A list of coordinates relative to the origin that form this shape.

Type

(or null cons)

Readers

coordinates (generic function)

Writers

(setf coordinates) (generic function)

Slot: plot-char

The character to use for plotting.

Type

(or null character keyword de.anvi.croatoan:complex-char)

Initargs

:char

Initform

(make-instance (quote de.anvi.croatoan:complex-char) :simple-char #\x :color-pair (quote (:white :black)) :attributes nil)

Readers

plot-char (generic function)

Writers

(setf plot-char) (generic function)

Class: sub-pad ()

A sub-pad shares the memory and the display with a parent pad and has to be contained within it.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

pad (class)

Direct methods

initialize-instance (method)

Direct slots
Slot: parent

The parent pad which will contain the sub-pad.

Type

(or null de.anvi.croatoan:pad)

Initargs

:parent

Class: sub-window ()

A sub-window shares the memory and the display with and has to be contained within a parent window.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses

window (class)

Direct methods
Direct slots
Slot: parent

The parent window which will contain the sub-window.

Type

(or null de.anvi.croatoan:window)

Initargs

:parent

Slot: relativep

The location of the sub-window is relative to the parent window (t) or to the screen (nil, default).

Type

boolean

Initargs

:relative

Slot: source-location

Location (y x) of the area of the parent window, which is mapped to the subwindow. By default it is identical to the location of the subwindow.

Type

(or null cons)

Initargs

:source-location

Class: window ()

A curses window object as returned by newwin.

Package

de.anvi.croatoan

Source

classes.lisp (file)

Direct superclasses
  • fundamental-character-output-stream (class)
  • fundamental-character-input-stream (class)
Direct subclasses
Direct methods
Direct slots
Slot: location

The (y=row x=column) coordinate of the top left corner of the window.

Type

cons

Initargs

:location

Initform

(quote (0 0))

Slot: width

The width (second, horizontal, x dimension) of the window.

Type

(or null integer)

Initargs

:width

Slot: height

The height (first, vertical, y dimension) of the window.

Type

(or null integer)

Initargs

:height

Slot: cursor-position

The current cursor position coordinates in the form (y x).

Type

cons

Slot: input-blocking

Input mode: blocking (t), non-blocking (nil) or blocking duration in (positive integer) miliseconds.

Type

(or boolean integer)

Initargs

:input-blocking

Initform

t

Slot: frame-rate

Set the frame rate in fps (frames per second). When input-blocking is nil, sleep for 1/frame-rate seconds between event loop cycles. Has the same effect as setting input-blocking duration, and should thus not be used simultaneously.

Type

(or null integer)

Initargs

:frame-rate

Readers

frame-rate (generic function)

Writers

(setf frame-rate) (generic function)

Slot: function-keys-enabled-p

Enable (t) or disable (nil) support for function keys.

Type

boolean

Initargs

:enable-function-keys

Slot: scrolling-enabled-p

Enable (t) or disable (nil) support for window scrolling.

Type

boolean

Initargs

:enable-scrolling

Slot: scrolling-region

When scrolling is enabled, only scroll the window region from line y1 to y2 given as the list (y1 y2).

Type

(or null cons)

Initargs

:scrolling-region

Slot: insert-mode-p

Printing a new char will insert (t) it before the character under the cursor instead of overwriting it (nil, default).

Type

boolean

Initargs

:insert-mode

Readers

insert-mode-p (generic function)

Writers

(setf insert-mode-p) (generic function)

Slot: bindings

Alist of events (characters, keywords or integers) as keys and handler functions as values. Used by the run-event-loop function.

Type

(or null cons)

Initargs

:bindings

Readers

bindings (generic function)

Writers

(setf bindings) (generic function)

Slot: keymap

Keymap containing the key bindings to be used by run-event-loop instead of the object’s own bindings.

Type

(or null symbol keyword de.anvi.croatoan:keymap)

Initargs

:keymap

Readers

keymap (generic function)

Writers

(setf keymap) (generic function)

Slot: background

Sets a complex char with its attributes and colors as the default style of unrendered text and empty cells of the window. Complex chars with pre-existing attributes and colors are not changed.

Type

(or null de.anvi.croatoan:complex-char)

Initargs

:background

Slot: attributes

A list of keywords denoting attributes of new characters added to a window.

Type

(or null cons)

Initargs

:attributes

Slot: fgcolor

A keyword denoting the foreground color of new characters added to the window.

Type

(or null keyword integer list)

Initargs

:fgcolor

Slot: bgcolor

A keyword denoting the background color of new characters added to the window.

Type

(or null keyword integer list)

Initargs

:bgcolor

Slot: draw-border-p

Draw (t) or don’t draw (nil, default) an initial border around a window. Not redrawn automatically.

Type

boolean

Initargs

:draw-border

Readers

draw-border-p (generic function)

Slot: stackedp

If stacked is t, the window is added to the global window stack, so overlapping windows can be refreshed in the stacking order.

Type

boolean

Initargs

:stacked

Slot: visiblep

If visible is nil, do not refresh the stacked window when refreshing the window stack.

Type

boolean

Initargs

:visible

Initform

t

Readers

visiblep (generic function)

Writers

(setf visiblep) (generic function)

Slot: winptr

Pointer to a C/ncurses WINDOW structure after the window is created.

Readers

winptr (generic function)


Previous: , Up: Definitions   [Contents][Index]

6.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.1 Special variables

Special Variable: *bitmask-alist*
Package

de.anvi.croatoan

Source

attr.lisp (file)

Special Variable: *color-pair-alist*
Package

de.anvi.croatoan

Source

attr.lisp (file)

Special Variable: *default-color-pair*
Package

de.anvi.croatoan

Source

attr.lisp (file)

Special Variable: *job-queue*

A queue of functions (consed to their form for debugging purposes) to be processed by the main thread to interface with ncurses.

Package

de.anvi.croatoan

Source

queue.lisp (file)

Special Variable: *key-alist*
Package

de.anvi.croatoan

Source

getch.lisp (file)

Special Variable: *keymaps*

An alist of available keymaps.

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Special Variable: *mouse-button-event-bitmask-alist*
Package

de.anvi.croatoan

Source

mouse.lisp (file)

Special Variable: *mouse-event-bitmask-alist*
Package

de.anvi.croatoan

Source

mouse.lisp (file)

Special Variable: *valid-attributes*
Package

de.anvi.croatoan

Source

attr.lisp (file)

Special Variable: *window-stack*
Package

de.anvi.croatoan

Source

classes.lisp (file)

Special Variable: *xterm-color-hex-list*
Package

de.anvi.croatoan

Source

color.lisp (file)

Special Variable: *xterm-color-name-list*
Package

de.anvi.croatoan

Source

attr.lisp (file)

Special Variable: acs-alist
Package

de.anvi.croatoan

Source

addch.lisp (file)

Special Variable: acs-map-array
Package

de.anvi.croatoan

Source

addch.lisp (file)

Special Variable: wide-acs-alist
Package

de.anvi.croatoan

Source

add_wch.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.2 Macros

Macro: mouse-bitmask BUTTON EVENT
Package

de.anvi.croatoan

Source

mouse.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.3 Functions

Function: %has-mouse ()
Package

de.anvi.ncurses

Source

mouse.lisp (file)

Function: %key_name W
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: %ungetmouse EVENT
Package

de.anvi.ncurses

Source

mouse.lisp (file)

Function: %var-accessor-%color-pairs ()
Function: (setf %var-accessor-%color-pairs) VALUE
Package

de.anvi.ncurses

Source

variables.lisp (file)

Function: %var-accessor-%colors ()
Function: (setf %var-accessor-%colors) VALUE
Package

de.anvi.ncurses

Source

variables.lisp (file)

Function: %var-accessor-%cols ()
Function: (setf %var-accessor-%cols) VALUE
Package

de.anvi.ncurses

Source

variables.lisp (file)

Function: %var-accessor-%escdelay ()
Function: (setf %var-accessor-%escdelay) VALUE
Package

de.anvi.ncurses

Source

variables.lisp (file)

Function: %var-accessor-%lines ()
Function: (setf %var-accessor-%lines) VALUE
Package

de.anvi.ncurses

Source

variables.lisp (file)

Function: %var-accessor-%tabsize ()
Function: (setf %var-accessor-%tabsize) VALUE
Package

de.anvi.ncurses

Source

variables.lisp (file)

Function: %wunctrl C
Package

de.anvi.ncurses

Source

util.lisp (file)

Function: ascii-byte-p OCTET

Return t if octet is a single-byte 7-bit ASCII char.

The most significant bit is 0, so the allowed pattern is 0xxx xxxx.

Package

de.anvi.croatoan

Source

utf8.lisp (file)

Function: attrs2chtype ATTRS

Take a list of attribute keywords, return a chtype with the attribute bits set.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: bitmask-to-keyword BITMASK
Package

de.anvi.croatoan

Source

mouse.lisp (file)

Function: call-button-function BUTTON EVENT &rest ARGS
Package

de.anvi.croatoan

Source

form.lisp (file)

Function: char2chtype CHAR

Take a character in different forms, return a chtype containing that character.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: chtype2attrs CH

Take a chtype, return a list of used attribute keywords.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: chtype2colors CH

Take a chtype or attr_t integer, return a list of two keywords denoting a color pair.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: chtype2xchar CH

Converts a ncurses chtype to croatoan complex-char.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: closest-gray RGB

Take an integer 0-255 denoting a gray color intensity, return the closest gray from the xterm palette.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: color-1k-to-8bit INTEGER

Convert the ncurses color intensity 0-1000 to the 8bit range 0-255.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: color-8bit-to-1k INTEGER

Convert the 8bit range 0-255 to the ncurses color intensity 0-1000.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: color-name-to-number COLOR-NAME

Take a keyword denoting a color name, return the color number.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: color-to-number COLOR

Takes a color in various notations, converts that notation to the exact or most appropriate color number.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: colors2chtype COLOR-PAIR

Take a list of a color pair, return a chtype with the color attribute set.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: complete-default-pair COLOR-PAIR

Take a color pair possibly containing nil, return a pair completed from the default color pair 0.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: complete-pair WINDOW PAIR

If either the foreground or background color is nil, complete the pair for the given window.

Return the completed pair.

Try to complete the missing colors in the following order:

1. window color pair.
2. window background character color pair.
3. ncurses default color pair 0 (white on black or the terminal default color pair).

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: debug-print-field-buffer OBJECT EVENT &rest ARGS
Package

de.anvi.croatoan

Source

form.lisp (file)

Function: define-keymap NAME PLIST

Register a keymap given by a name and a plist of keys and functions.

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Function: delete-next-char FIELD EVENT &rest ARGS

Delete the next char (char under the cursor) in the field, not moving the cursor.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: delete-previous-char FIELD EVENT &rest ARGS

Delete the previous char in the field, moving the cursor to the left.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: distance-to-bottom WINDOW

Return the number of lines from the cursor position to the bottom of the window.

Package

de.anvi.croatoan

Source

addch.lisp (file)

Function: distance-to-eol WINDOW

Return the number of columns from the cursor position to the end of the line in the window.

Package

de.anvi.croatoan

Source

addch.lisp (file)

Function: draw-menu-item WIN MENU ITEM-NUMBER I J

Draw the item given by item-number at item position i,j in the window.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: enable-8bit-char-input WINDOW FLAG
Package

de.anvi.croatoan

Source

inopts.lisp (file)

Function: escape-sequence-delay WINDOW FLAG
Package

de.anvi.croatoan

Source

inopts.lisp (file)

Function: field-add-char FIELD CHAR &rest ARGS

Add char to the current cursor position in the field.

The buffer can be longer than the displayed field width, horizontal scrolling is enabled.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: flush-on-interrupt WINDOW FLAG
Package

de.anvi.croatoan

Source

inopts.lisp (file)

Function: format-menu-item MENU ITEM-NUMBER

Take a menu and return item item-number as a properly formatted string.

If the menu is a checklist, return [ ] or [X] at the first position.

If a mark is set for the current item, display the mark at the second position. Display the same number of spaces for other items.

At the third position, display the item given by item-number.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: funcall-get-cchar_t FN WINDOW

Call function fn to read a cchar_t from window and return it as a wide complex char.

Package

de.anvi.croatoan

Source

bkgrnd.lisp (file)

Function: funcall-make-cchar_t FN WINDOW CHAR ATTRIBUTES COLOR-PAIR N

Assemble a cchar_t out of a char, attributes and a color-pair.

Then apply the fn to window and the assembled cchar_t.

char can be a lisp character, an ACS keyword, an integer code point or a complex char.

attributes should be a list of valid attribute keywords.

color-pair should be a list of a foreground and background color keyword.

attributes and color-pair can be nil.

If char is a complex char, attributes and color-pair are ignored.

Package

de.anvi.croatoan

Source

add_wch.lisp (file)

Function: funcall-make-cchar_t-ptr FN WINPTR CHAR ATTR_T COLOR-PAIR-NUMBER COUNT

Create a cchar_t and apply function fn count times to winptr and cchar_t.

cchar_t is a C struct representing a wide complex-char in ncurses.

This function is a wrapper around %setcchar and should not be used elsewhere.

Package

de.anvi.croatoan

Source

add_wch.lisp (file)

Function: funcall-make-chtype FN WINDOW CHAR ATTRIBUTES COLOR-PAIR N

Assemble a chtype out of a char, attributes and a color-pair.

Apply low-level ncurses function fn count times to window and chtype.

chtype is a 32-bit integer representing a non-wide complex-char in ncurses.

char can be a lisp character, an ACS keyword, an integer code point or a complex char.

attributes should be a list of valid attribute keywords.

color-pair should be a list of a foreground and background color keyword.

attributes and color-pair can be nil.

If char is a complex char, attributes and color-pair are ignored.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: get-background-cchar_t WINDOW

Return the wide complex char that is the background character of the window.

Package

de.anvi.croatoan

Source

bkgrnd.lisp (file)

Function: get-background-char WINDOW

Return the complex char that is the background character of the window.

Package

de.anvi.croatoan

Source

bkgd.lisp (file)

Function: get-bitmask ATTRIBUTE

Returns an ncurses attr/chtype representing the attribute keyword.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: get-event-handler OBJECT EVENT

Take an object and an event, return the handler for that event.

The key bindings alist is stored in the bindings slot of the object.

If no handler is defined for the event, the default event handler t is tried. If not even a default handler is defined, the event is ignored.

If input-blocking is nil, we receive nil events in case no real events occur. In that case, the handler for the nil event is returned, if defined.

The event pairs are added by the bind function as conses: (event . #’handler).

An event should be bound to the pre-defined function exit-event-loop.

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Function: gray-to-rgb SGR

Take a sgr gray color number 232-255, return a list of three RGB integers 0-255.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: hex-to-rgb HEX

Take a 24bit integer (RGB hex triplet), return a list of three 8bit (0-255) RGB values.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: hex-to-sgr HEX

Takes a RGB hex triplet, returns the exact or most appropriate SGR color code 0-255.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: init-screen ()

Initializes the curses mode. Returns the main window.

Package

de.anvi.croatoan

Source

initscr.lisp (file)

Function: io-queue-flush FLAG
Package

de.anvi.croatoan

Source

inopts.lisp (file)

Function: keyword-to-bitmask KEYS

Take a list of mouse event keywords, return a logiored bitmask.

Package

de.anvi.croatoan

Source

mouse.lisp (file)

Function: lead-byte-p OCTET

Return t if octet is one of the leading bytes of an UTF-8 sequence, nil otherwise.

Allowed leading byte patterns are 0xxx xxxx, 110x xxxx, 1110 xxxx and 1111 0xxx.

Package

de.anvi.croatoan

Source

utf8.lisp (file)

Function: list2array LIST DIMENSIONS

Example: (list2array ’(a b c d e f) ’(3 2)) => #2A((A B) (C D) (E F))

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: make-chtype CHAR ATTRIBUTES COLOR-PAIR

Assemble a chtype out of a char, attributes and a color-pair.

char can be a lisp character, an ACS keyword, or an integer code point.

attributes should be a list of valid attribute keywords.

color-pair should be a list of a foreground and background color keyword.

attributes and color-pair can be nil.

If char is a complex char, and the attributes and color-pair are passed, they override the attributes and the color-of the complex char.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: move-next-char FIELD EVENT &rest ARGS

Move the cursor to the next char in the field.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: move-previous-char FIELD EVENT &rest ARGS

Move the cursor to the previous char in the field.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: multi-byte-p OCTET

Return t if octet is a part of a multi-byte UTF-8 sequence.

The multibyte pattern is 1xxx xxxx.

A multi-byte can be either a lead byte or a trail byte.

Package

de.anvi.croatoan

Source

utf8.lisp (file)

Function: n-trail-bytes OCTET

Take a leading utf-8 byte, return the number of continuation bytes 1-3.

Package

de.anvi.croatoan

Source

utf8.lisp (file)

Function: new-terminal TYPE OUT-FD IN-FD

Use instead of init-screen when you want more than one terminal.

Package

de.anvi.croatoan

Source

initscr.lisp (file)

Function: number-to-pair NUMBER

Take a pair number, return a color pair in a 2 element list of keywords.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: pair-to-number PAIR

Take a two-element list of colors, return the ncurses pair number.

The colors can be keywords or numbers -1:255.

-1 is the :terminal color when use-terminal-colors-p is t.

If it is a new color pair, add it to ncurses, then return the new pair number.

If the pair already exists, return its pair number.

If pair is nil, return the default color number, 0.

Example: (pair-to-number ’(:white :black)) => 0

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: plist2alist PLIST

Take a plist in the form (k1 v1 k2 v2 ...), return an alist ((k1 . v1) (k2 . v2) ...)

Package

de.anvi.croatoan

Source

croatoan.lisp (file)

Function: reset-menu MENU

After the menu is closed reset it to its initial state.

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: rgb-to-hex RGB-LIST

Take a list of three 8bit (0-255) RGB values, return a 24bit integer (RGB hex triplet).

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: rgb-to-rgb6 RGB-LIST

Take a list of three RGB integers 0-255, return a list of three RGB integers 0-5.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: rgb6-to-rgb RGB6-LIST

Take a list of three RGB integers 0-5, return a list of three RGB integers 0-255 of the xterm color palette.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: rgb6-to-sgr RGB6-LIST

Take a list of three RGB integers 0-5, return an 8bit SGR color code 16-231.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: rmi2sub LAYOUT RMI

Take array dimensions and an index in row-major order, return two subscripts.

Example: (rmi2sub ’(2 3) 5) => (1 2)

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: rotate LIST COUNT
Package

de.anvi.croatoan

Source

panel.lisp (file)

Function: select-next-element FORM EVENT &rest ARGS

Select the next element in a form’s element list.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: select-previous-element FORM EVENT &rest ARGS

Select the previous element in a form’s element list.

Package

de.anvi.croatoan

Source

form.lisp (file)

Function: set-attributes WINPTR ATTRIBUTES

Takes a list of keywords and sets the appropriate attributes.

Overwrites any previous attribute settings including the color.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: set-background-cchar_t WINDOW CHAR &optional APPLY

Set a wide complex character as the background of a window.

The attribute part of the background character is combined with simple characters added to the window.

If apply is t, the background setting is immediately applied to all cells in the window.

Otherwise, it is applied only to newly added simple characters.

Package

de.anvi.croatoan

Source

bkgrnd.lisp (file)

Function: set-background-char WINPTR XCHAR &optional APPLY

Set a complex single-byte character as the background of a window.

The attribute part of the background character is combined with simple characters in the window.

If apply is t, the background setting is immediately applied to all cells in the window.

Otherwise, it is applied only to newly added simple characters.

Package

de.anvi.croatoan

Source

bkgd.lisp (file)

Function: set-color-pair WINPTR COLOR-PAIR

Sets the color attribute of the window only.

Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: set-current-terminal NEW-SCREEN

Sets new-screen as the current terminal. Returns the old screen.

Package

de.anvi.croatoan

Source

initscr.lisp (file)

Function: set-cursor-visibility STATUS
Package

de.anvi.croatoan

Source

kernel.lisp (file)

Function: set-default-color-pair USE-TERMINAL-COLORS-P
Package

de.anvi.croatoan

Source

attr.lisp (file)

Function: set-enable-fkeys WINDOW FLAG

If flag is t, bind function keys to known codes when returned by get-char.

If flag is nil, F keys will be system-dependent multi-character escape codes.

Package

de.anvi.croatoan

Source

inopts.lisp (file)

Function: set-input-blocking WINDOW STATUS

Set window input blocking behavior.

Possible values are t, nil and a blocking duration in (positive integer) miliseconds.

Package

de.anvi.croatoan

Source

inopts.lisp (file)

Function: set-input-echoing FLAG

Set whether chars will be echoed on input.

Package

de.anvi.croatoan

Source

inopts.lisp (file)

Function: set-input-mode INPUT-BUFFERING PROCESS-CONTROL-CHARS
Package

de.anvi.croatoan

Source

inopts.lisp (file)

Function: sgr-to-hex SGR

Take a SGR color code 0-255, return a 24bit hex triplet.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: sgr-to-rgb6 SGR

Take a 8bit SGR color code 16-231, return a list of three RGB integers 0-5.

Package

de.anvi.croatoan

Source

color.lisp (file)

Function: sub2rmi LAYOUT SUBS

Take array dimensions and two subscripts, return an index in row-major order.

Example: (sub2rmi ’(2 3) ’(1 2)) => 5

Package

de.anvi.croatoan

Source

menu.lisp (file)

Function: test-utf-8 ()
Package

de.anvi.croatoan

Source

utf8.lisp (file)

Function: toggle-checkbox CHECKBOX EVENT &rest ARGS
Package

de.anvi.croatoan

Source

form.lisp (file)

Function: trail-byte-p OCTET

Return t if octet is the continuation byte of an UTF-8 sequence.

The allowed continuation byte pattern is 10xx xxxx.

Package

de.anvi.croatoan

Source

utf8.lisp (file)

Function: type-ahead-fd FD