Karya, built on Mon Jul 24 11:39:07 PDT 2017 (patch 33511aca01257b76b88de7c7a2763b7a965c084e)

Safe HaskellNone

Instrument.Browser

Description

The instrument browser is a standalone program to browse the instrument database.

Instruments are in the left pane, and the right pane has information on the selected instrument. A search box above the instrument list accepts a simple query language, documneted at Search.Query.

If you double click on an instrument name, choose_instrument is called on the instrument.

The instrument info is basically just a pretty-printed version of the contents of Patch.Patch.

Some parts of the instrument db may be generated offline, by Instrument.MakeDb.

Synopsis

Documentation

data Flag Source #

Instances

Eq Flag # 

Methods

(==) :: Flag -> Flag -> Bool #

(/=) :: Flag -> Flag -> Bool #

Show Flag # 

Methods

showsPrec :: Int -> Flag -> ShowS #

show :: Flag -> String #

showList :: [Flag] -> ShowS #

main :: IO () Source #

data Db Source #

Bundle a Db along with its search index.

Constructors

Db 

data State Source #

Constructors

State 

Instances

show_info :: Fltk.Channel -> BrowserC.Window -> Db -> InstTypes.Qualified -> IO () Source #

Look up the instrument, generate a info sheet on it, and send to the UI.

choose_instrument :: InstTypes.Qualified -> IO () Source #

Send the chosen instrument to the sequencer. This will send change_instrument "synth/inst" to the REPL port.

process_query :: Fltk.Channel -> BrowserC.Window -> Db -> [InstTypes.Qualified] -> Text -> IO [InstTypes.Qualified] Source #

Find instruments that match the query, and update the UI incrementally.