
\section{Gscan GUI (cylc gscan) Config File Reference}
\label{GscanRCReference}

\lstset{language=bash}

This section defines all legal items and values for the gscan config
file which should be located in \lstinline=$HOME/.cylc/gscan.rc=. Some items
also affect the gpanel panel app.

The main menubar can be hidden to maximise the display area. Its visibility
can be toggled via the mouse right-click menu, or by typing Alt-m. When
visible, the main View menu allows you to change properties such as the columns
that are displayed, which hosts to scan for running suites, and the task state
icon theme.

At startup, the task state icon theme and icon size are taken from the gcylc
config file \lstinline=$HOME/.cylc/gcylc.rc=.

\subsection{Top Level Items}

\subsubsection{activate on startup}

Set whether \lstinline=cylc gpanel= will activate automatically when the gui is
loaded or not.

\begin{myitemize}
    \item {\em type:} boolean (True or False)
\item {\em legal values:} ``True'', ``False''
\item {\em default:} ``False''
\item {\em example:} \lstinline@activate on startup = True@
\end{myitemize}

\subsubsection{columns}

Set the columns to display when the \lstinline=cylc gscan= GUI starts. This can
be changed later with the View menu.  The order in which the columns are
specified here does not affect the display order.

\begin{myitemize}
\item {\em type:} string (a list of one or more view names)
\item {\em legal values:} ``host'', ``owner'', ``status'', ``suite'',
  ``title'', ``updated''
\item {\em default:} ``status'', ``suite''
\item {\em example:} \lstinline@columns = suite, title, status@
\end{myitemize}

\subsubsection{suite listing update interval}

Set the time interval between refreshing the suite listing (by file system or
port range scan).

Increasing this setting will reduce the frequency of gscan looking for running
suites. Scanning for suites by port range scan can be a hit on the network and
the running suite processes, while scanning for suites by walking the file
system can hit the file system (especially if the file system is a network file
system). Therefore, this is normally set with a lower frequency than the status
update interval. Increasing this setting will make gscan friendlier to the
network and/or the file system, but gscan may appear out of sync if there are
many start up or shut down of suites between the intervals.

\begin{myitemize}
\item {\em type:} ISO 8601 duration/interval representation (e.g.\ 
\lstinline=PT10S=, 10 seconds, or \lstinline=PT1M=, 1 minute).
\item {\em default: PT1M}
\end{myitemize}

\subsubsection{suite status update interval}

Set the time interval between calls to known running suites (suites that are
known via the latest suite listing) for data updates.

Increasing this setting will reduce the network traffic and hits on the suite
processes. However, gscan may appear out of sync with what may be happening
in very busy suites.

\begin{myitemize}
\item {\em type:} ISO 8601 duration/interval representation (e.g.\ 
\lstinline=PT10S=, 10 seconds, or \lstinline=PT1M=, 1 minute).
\item {\em default: PT15S}
\end{myitemize}

\subsubsection{window size}

Sets the size in pixels of the \lstinline=cylc gscan= GUI window at startup.

\begin{myitemize}
    \item {\em type:} integer list: x, y
    \item {\em legal values:} positive integers
    \item {\em default:} 300, 200
    \item {\em example:} \lstinline@window size = 1000, 700@
\end{myitemize}

\subsubsection{hide main menubar}

Hide the main menubar of the \lstinline=cylc gscan= GUI window at startup. By
default, the menubar is initially hidden. Either way, you can toggle its
visibility with Alt-m or via the right-click menu.

\begin{myitemize}
  \item {\em type:} boolean (True or False)
    \item {\em default:} True
    \item {\em example:} \lstinline@hide main menubar = False@
\end{myitemize}
