# LibTmux.ScreenWatch

- **Module:** LibTmux
- **Package:** LibTmux
- **Language:** Julia
- **Kind:** struct
- **Source:** https://github.com/libtmux/libtmux-julia/blob/1a68a11f071686736937d027b190b43cf946c385/src/screen_wait.jl#L39
- **Page:** https://libtmux.org/en/julia/latest/reference/libtmux-screenwatch/

```
LibTmux.ScreenWatch(
    server::LibTmux.Server,
    pane::LibTmux.PaneRef,
    interval::Float64,
    timeout::Float64,
    started::UInt64,
    cancel,
    entry::String,
    entry_alternate::Bool,
    entry_state::Symbol,
    open::Bool,
    timer::Union{Nothing, Timer},
)

LibTmux.ScreenWatch(
    server,
    pane,
    interval,
    timeout,
    started,
    cancel,
    entry,
    entry_alternate,
    entry_state,
    open,
    timer,
)
```

The handle [`watch_screen`](/en/julia/latest/reference/libtmux-watch_screen/) passes to its block. It holds the entry screen, the polling interval and the total deadline. It is valid only inside the block. Every wait on it counts against the entry read taken when the block opened, so a second wait for the same text returns at once.

```julia
ScreenWatch
```

## Methods

### `ScreenWatch` (overload 1)

```julia
LibTmux.ScreenWatch(
    server::LibTmux.Server,
    pane::LibTmux.PaneRef,
    interval::Float64,
    timeout::Float64,
    started::UInt64,
    cancel,
    entry::String,
    entry_alternate::Bool,
    entry_state::Symbol,
    open::Bool,
    timer::Union{Nothing, Timer},
)
```

[Source](https://github.com/libtmux/libtmux-julia/blob/1a68a11f071686736937d027b190b43cf946c385/src/screen_wait.jl#L48).

### `ScreenWatch` (overload 2)

```julia
LibTmux.ScreenWatch(
    server,
    pane,
    interval,
    timeout,
    started,
    cancel,
    entry,
    entry_alternate,
    entry_state,
    open,
    timer,
)
```

[Source](https://github.com/libtmux/libtmux-julia/blob/1a68a11f071686736937d027b190b43cf946c385/src/screen_wait.jl#L48).

## Parameters

- `server` (`LibTmux.Server`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `pane` (`LibTmux.PaneRef`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `interval` (`Float64`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `timeout` (`Float64`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `started` (`UInt64`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `cancel` (`Any`)
- `entry` (`String`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `entry_alternate` (`Bool`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `entry_state` (`Symbol`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `open` (`Bool`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `timer` (`Union{Nothing, Base.Timer}`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 1]`)
- `server` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)
- `pane` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)
- `interval` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)
- `timeout` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)
- `started` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)
- `entry` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)
- `entry_alternate` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)
- `entry_state` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)
- `open` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)
- `timer` (`Any`) (for `ScreenWatch(server, pane, interval, timeout, started, cancel, entry, entry_alternate, entry_state, open, timer) [overload 2]`)

## Members

### Common operations

- [`cancel`](/en/julia/latest/reference/libtmux-screenwatch-cancel/) (property)

### Other members

- [`entry`](/en/julia/latest/reference/libtmux-screenwatch-entry/) (property)
- [`entry_alternate`](/en/julia/latest/reference/libtmux-screenwatch-entry_alternate/) (property)
- [`entry_state`](/en/julia/latest/reference/libtmux-screenwatch-entry_state/) (property)
- [`interval`](/en/julia/latest/reference/libtmux-screenwatch-interval/) (property)
- [`open`](/en/julia/latest/reference/libtmux-screenwatch-open/) (property)
- [`pane`](/en/julia/latest/reference/libtmux-screenwatch-pane/) (property)
- [`server`](/en/julia/latest/reference/libtmux-screenwatch-server/) (property)
- [`started`](/en/julia/latest/reference/libtmux-screenwatch-started/) (property)
- [`timeout`](/en/julia/latest/reference/libtmux-screenwatch-timeout/) (property)
- [`timer`](/en/julia/latest/reference/libtmux-screenwatch-timer/) (property)
