/*
(c) Copyright 1988-1994 Microsoft Corporation.

Microsoft Bars&Pipes Professional Source Code License

This License governs use of the accompanying Software.  
Microsoft hopes you find this Software useful.

You are licensed to do anything you want with the Software. 

In return, we simply require that you agree:

1.      Not to remove any copyright notices from the Software.

2.      That the Software comes "as is", with no warranties.  
        None whatsoever. This means no implied warranty of merchantability or 
        fitness for a particular purpose or any warranty of non-infringement.  
        Also, you must pass this disclaimer on whenever you distribute the Software.

3.      That we will not be liable for any of those types of damages known as indirect, 
        special, consequential, or incidental related to the Software or this License, 
        to the maximum extent the law permits. Also, you must pass this limitation of 
        liability on whenever you distribute the Software.

4.      That if you sue anyone over patents that you think may apply to the Software 
        for that person’s use of the Software, your license to the Software ends automatically.

5.      That the patent rights Microsoft is licensing only apply to the Software, 
        not to any derivatives you make.

6.      That your rights under the License end automatically if you breach this in any way.
*/

#include "/CompilerSpecific.h"
#include <intuition/intuition.h>

static SHORT metroBorderVectors1[] = {
        0,0,
        35,0,
        35,10,
        0,10,
        0,0
};
static struct Border metroBorder1 = {
        -1,-1,
        3,0,JAM1,
        5,
        metroBorderVectors1,
        NULL
};

static struct IntuiText metroIText1 = {
        4,0,JAM1,
        8,1,
        NULL,
        "On",
        NULL
};

static struct Gadget metroGadget12 = {
        NULL,
        76,84,
        34,9,
        NULL,
        RELVERIFY+GADGIMMEDIATE+TOGGLESELECT,
        BOOLGADGET,
        (APTR)&metroBorder1,
        NULL,
        &metroIText1,
        NULL,
        NULL,
        20,
        NULL
};

static struct PropInfo metrometroGadget11SInfo = {
        AUTOKNOB+FREEHORIZ,
        32039,-1,
        13107,-1,
};

static struct Image metroImage1 = {
        49,0,
        26,5,
        0,
        NULL,
        0x0000,0x0000,
        NULL
};

static struct IntuiText metroIText2 = {
        2,0,JAM1,
        -74,1,
        NULL,
        "Loudness:",
        NULL
};

static struct Gadget metroGadget11 = {
        &metroGadget12,
        83,56,
        136,9,
        NULL,
        RELVERIFY+GADGIMMEDIATE,
        PROPGADGET,
        (APTR)&metroImage1,
        NULL,
        &metroIText2,
        NULL,
        (APTR)&metrometroGadget11SInfo,
        9,
        NULL
};

static struct PropInfo metrometroGadget10SInfo = {
        AUTOKNOB+FREEHORIZ,
        16384,-1,
        13107,-1,
};

static struct Image metroImage2 = {
        25,0,
        26,5,
        0,
        NULL,
        0x0000,0x0000,
        NULL
};

static struct IntuiText metroIText3 = {
        2,0,JAM1,
        -107,1,
        NULL,
        "Lead In:",
        NULL
};

static struct Gadget metroGadget10 = {
        &metroGadget11,
        116,84,
        134,9,
        GADGHBOX+GADGHIMAGE,
        RELVERIFY+GADGIMMEDIATE,
        PROPGADGET,
        (APTR)&metroImage2,
        NULL,
        &metroIText3,
        NULL,
        (APTR)&metrometroGadget10SInfo,
        11,
        NULL
};

static struct IntuiText metroIText4 = {
        4,0,JAM1,
        26,1,
        NULL,
        "Metronome On Lead In Only",
        NULL
};

static struct Gadget metroGadget9 = {
        &metroGadget10,
        10,98,
        254,10,
        NULL,
        RELVERIFY+GADGIMMEDIATE+TOGGLESELECT,
        BOOLGADGET,
        NULL,
        NULL,
        &metroIText4,
        NULL,
        NULL,
        10,
        NULL
};

static struct IntuiText metroIText5 = {
        4,0,JAM1,
        12,1,
        NULL,
        "Triplet",
        NULL
};

static struct Gadget metroGadget8 = {
        &metroGadget9,
        182,70,
        82,10,
        NULL,
        RELVERIFY+GADGIMMEDIATE+TOGGLESELECT,
        BOOLGADGET,
        NULL,
        NULL,
        &metroIText5,
        NULL,
        NULL,
        8,
        NULL
};

static struct IntuiText metroIText7 = {
        2,0,JAM1,
        -90,1,
        NULL,
        "Resolution:",
        NULL
};

static struct IntuiText metroIText6 = {
        4,0,JAM1,
        26,1,
        NULL,
        "1/32",
        &metroIText7
};

static struct Gadget metroGadget7 = {
        &metroGadget8,
        99,70,
        79,10,
        NULL,
        RELVERIFY+GADGIMMEDIATE,
        BOOLGADGET,
        NULL,
        NULL,
        &metroIText6,
        NULL,
        NULL,
        7,
        NULL
};

static struct IntuiText metroIText8 = {
        4,0,JAM1,
        24,1,
        NULL,
        "MIDI",
        NULL
};

static struct Gadget metroGadget6 = {
        &metroGadget7,
        182,15,
        82,10,
        NULL,
        RELVERIFY+GADGIMMEDIATE+TOGGLESELECT,
        BOOLGADGET,
        NULL,
        NULL,
        &metroIText8,
        NULL,
        NULL,
        3,
        NULL
};

static struct IntuiText metroIText9 = {
        4,0,JAM1,
        17,1,
        NULL,
        "Visual",
        NULL
};

static struct Gadget metroGadget5 = {
        &metroGadget6,
        96,15,
        82,10,
        NULL,
        RELVERIFY+GADGIMMEDIATE+TOGGLESELECT,
        BOOLGADGET,
        NULL,
        NULL,
        &metroIText9,
        NULL,
        NULL,
        2,
        NULL
};

static struct IntuiText metroIText11 = {
        2,0,JAM1,
        -106,1,
        NULL,
        "MIDI Channel:",
        NULL
};

static struct IntuiText metroIText10 = {
        4,0,JAM1,
        15,1,
        NULL,
        "6",
        &metroIText11
};

static struct Gadget metroGadget4 = {
        &metroGadget5,
        115,42,
        47,10,
        NULL,
        RELVERIFY+GADGIMMEDIATE,
        BOOLGADGET,
        NULL,
        NULL,
        &metroIText10,
        NULL,
        NULL,
        6,
        NULL
};

static struct IntuiText metroIText12 = {
        2,0,JAM1,
        -42,1,
        NULL,
        "Tool:",
        NULL
};

static struct Gadget metroGadget3 = {
        &metroGadget4,
        214,42,
        50,10,
        NULL,
        RELVERIFY+GADGIMMEDIATE,
        BOOLGADGET,
        NULL,
        NULL,
        &metroIText12,
        NULL,
        NULL,
        5,
        NULL
};

static struct PropInfo metrometroGadget2SInfo = {
        AUTOKNOB+FREEHORIZ,
        -21847,0,
        16383,-1,
};

static struct Image metroImage3 = {
        59,0,
        31,5,
        0,
        NULL,
        0x0000,0x0000,
        NULL
};

static struct IntuiText metroIText13 = {
        2,0,JAM1,
        -82,1,
        NULL,
        "MIDI Note:",
        NULL
};

static struct Gadget metroGadget2 = {
        &metroGadget3,
        91,29,
        129,9,
        NULL,
        RELVERIFY+GADGIMMEDIATE,
        PROPGADGET,
        (APTR)&metroImage3,
        NULL,
        &metroIText13,
        NULL,
        (APTR)&metrometroGadget2SInfo,
        4,
        NULL
};

static struct IntuiText metroIText14 = {
        4,0,JAM1,
        9,1,
        NULL,
        "Internal",
        NULL
};

static struct Gadget metroGadget1 = {
        &metroGadget2,
        10,15,
        82,10,
        NULL,
        RELVERIFY+GADGIMMEDIATE+TOGGLESELECT,
        BOOLGADGET,
        NULL,
        NULL,
        &metroIText14,
        NULL,
        NULL,
        1,
        NULL
};

#define metroGadgetList1 metroGadget1

static struct NewWindow metroNewWindowStructure1 = {
        151,28,
        274,114,
        0,4,
        MOUSEBUTTONS+MOUSEMOVE+GADGETDOWN+GADGETUP+MENUPICK+CLOSEWINDOW,
        WINDOWDRAG+WINDOWDEPTH+WINDOWCLOSE+ACTIVATE+NOCAREREFRESH,
        &metroGadget1,
        NULL,
        "Metronome",
        NULL,
        NULL,
        5,5,
        -1,-1,
        CUSTOMSCREEN
};
