TABLE OF CONTENTS Pkb.mcc/Pkb.mcc Pkb.mcc/MUIA_Pkb_Mode Pkb.mcc/MUIA_Pkb_AutoRelease Pkb.mcc/MUIA_Pkb_Current Pkb.mcc/MUIA_Pkb_Quiet Pkb.mcc/MUIA_Pkb_Pool Pkb.mcc/MUIA_Pkb_PoolPuddleSize Pkb.mcc/MUIA_Pkb_PoolThreshSize Pkb.mcc/MUIA_Pkb_Octv_Name Pkb.mcc/MUIA_Pkb_Octv_Base Pkb.mcc/MUIA_Pkb_Octv_Range Pkb.mcc/MUIA_Pkb_Octv_Start Pkb.mcc/MUIA_Pkb_Key_Release Pkb.mcc/MUIA_Pkb_Key_Press Pkb.mcc/MUIA_Pkb_Range_Head Pkb.mcc/MUIA_Pkb_Range_Start Pkb.mcc/MUIA_Pkb_Range_End Pkb.mcc/MUIA_Pkb_Low Pkb.mcc/MUIA_Pkb_High Pkb.mcc/MUIM_Pkb_Reset Pkb.mcc/MUIM_Pkb_Refresh Pkb.mcc/MUIM_Pkb_Range Pkb.mcc/MUIM_Pkb_Range_Reset Pkb.mcc/MUIM_Pkb_Range_Refresh Pkb.mcc/MUIM_Pkb_Jump Pkb.mcc/MUIA_Pkb_InputEnable Pkb.mcc/MUIA_Pkb_ExcludeLow Pkb.mcc/MUIA_Pkb_ExcludeHigh Pkb.mcc/Pkb.mcc Pkb on Magic User Interfacen Custom luokka, MUI © Stefan Stuntz. Se on Virtgroup-luokan alaluokka. Tämän luokan tavoite on tuoda pianokoskettimisto yleisille musiikki- sovelluksille. Pkb käyttää eri värejä eri toimintotiloille, ja käyttäjä voi vaihtaa ne MCP:llä. Lisätietojen saamiseksi katso esimerkkiohjelmaa. Demo voidaan kääntää Dice:llä tai StormC 2.0:lla. NOTES Ei tällä hetkellä Pkb/MUIA_Pkb_Mode NAME MUIA_Pkb_Mode -- (V1) [ISG], ULONG FUNCTION Asettaa tai palauttaa toimintotilan. INPUTS MUIV_Pkb_Mode_NORMAL (oletus) MUIV_Pkb_Mode_SPECIAL MUIV_Pkb_Mode_RANGE NOTES Ensimmäiset kaksi tilaa poikkeavat toisistaan vain pohjaan painettujen näppäimien värien osalta. Kolmatta tilaa käytetään merkitsemään joukko yhteenkuuluvia näppäimiä. VIIMEKSI valitun ryhmän aloitusnäppäimen atribuutti on MUIA_Pkb_Range_Start ja MUIA_Pkb_Range_End on lopetusnäppäimen atribuutti. Tässä tilassa MUIA_Pkb_Key_Release atribuutti EI asetu, kun käyttäjä vapauttaa hiiren viimeisellä näppäimellä. SEE ALSO MUIA_Pkb_Range_Head Pkb/MUIA_Pkb_AutoRelease NAME MUIA_Pkb_AutoRelease -- (V1) [ISG], BOOL FUNCTION Asettaa tai tunnistaa automaattisen näppäinvapautuksen. INPUTS -TOSI (oletus) -EPÄTOSI NOTES Jos on TOSI, näppäin vapautetaan, kun käyttäjä painaa toista näppäintä. Jos on EPÄTOSI, näppäintä ei vapauteta, ja sen vapauttaminen on sovelluksen päätettävissä. SEE ALSO MUIA_Pkb_Key_Press , MUIA_Pkb_Key_Release Pkb/MUIA_Pkb_Current NAME MUIA_Pkb_Current -- (V1) [..GN], LONG FUNCTION Tunnistaa käyttäjän viimeksi soittaman nuotin koodin (viimeksi painetun näppäimen) NOTES Paluukoodi vaihtelee 0:n ja 131:n välillä ja on oktaavin arvosta, joka näkyisi alapalkissa, riippumaton. SEE ALSO MUIA_Pkb_Octv_Start, MUIA_Pkb_Octv_Range, MUIA_Pkb_Key_Release Pkb/MUIA_Pkb_Quiet NAME MUIA_Pkb_Quiet -- (V1) [.S.], BOOL FUNCTION Jos on asetettu TODEKSI, niin näppäimiä ei piirretä. SEE ALSO MUIM_Pkb_Refresh Pkb/MUIA_Pkb_Pool NAME MUIA_Pkb_Pool -- (V1) [I.G], PoolHeader * FUNCTION Jätä jotain CreatePool():sta tänne, jos et halua kentän luovan omaa muistipooliansa, vaan käyttävän tätä sensijaan. Huomaa, että pkb-ryhmäluokka *ei* käytä semaphore-suojausta, kun se käyttää poolia. Et saa käyttää pooleja, joita käyttävät muutkin taskit kuin sovelluksen päätaski. SEE ALSO MUIA_Pkb_PoolPuddleSize, MUIA_Pkb_PoolThreshSize Pkb/MUIA_Pkb_PoolPuddleSize NAME MUIA_Pkb_PoolPuddleSize -- (V1) [I..], ULONG FUNCTION Määrittää kenttien memorypoolin puddlen koon. Oletuskoko on 2048. Sitä ei huomioida, jos käytät omaa poolia MUIA_Pkb_Poolin avulla. SEE ALSO MUIA_Pkb_Pool, MUIA_Pkb_PoolThreshSize Pkb/MUIA_Pkb_PoolThreshSize NAME MUIA_Pkb_PoolThreshSize -- (V1) [I..], ULONG FUNCTION Määrittää kenttien memorypoolin thresh-koon. Oletuskoko on 1024. Sitä ei huomioida, jos käytät omaa poolia MUIA_Pkb_Poolin avulla. SEE ALSO MUIA_Pkb_Pool, MUIA_Pkb_PoolPuddleSize Pkb/MUIA_Pkb_Octv_Name NAME MUIA_Pkb_Octv_Name -- (V1) [I..], BOOL FUNCTION Valitsee, näytetäänkö palkki koskettimiston alla. SEE ALSO Pkb/MUIA_Pkb_Octv_Base NAME MUIA_Pkb_Octv_Base -- (V1) [I..], ULONG FUNCTION Valitsee aloitusnumeron, joka näkyy palkissa koskettimiston alla. NOTES Varoitus: Oktaaviluku, joka näkyy palkissa ei vaikuta kosketinkoodeihin. SEE ALSO MUIA_Pkb_Octv_Name Pkb/MUIA_Pkb_Octv_Range NAME MUIA_Pkb_Octv_Range -- (V1) [I...], ULONG FUNCTION Valitsee, kuinka monta oktaavia näytetään koskettimistolla. Hyväksyttävät arvot: 1...11 SEE ALSO Pkb/MUIA_Pkb_Octv_Start NAME MUIA_Pkb_Octv_Start -- (V1) [I.G], ULONG FUNCTION Valitsee koskettimiston aloitusoktaavin. NOTES Varoitus: MUIA_Pkb_Octv_Start + MUIA_Pkb_Octv_Range TÄYTYY olla <= 11, muuten MUIA_Pkb_Octv_Startin arvoa alennetaan niin paljon, että ehto täyttyy. SEE ALSO Pkb/MUIA_Pkb_Key_Release NAME MUIA_Pkb_Key_Release -- (V1) [.S.N], ULONG FUNCTION Vapauttaa koskettimen. NOTES Arvo vaihtelee 0:n ja 131:n välillä ja on riippumaton oktaaviluvusta, joka näkyisi alapalkissa. SEE ALSO MUIA_Pkb_Octv_Start, MUIA_Pkb_Octv_Range, MUIA_Pkb_Key_Press Pkb/MUIA_Pkb_Key_Press NAME MUIA_Pkb_Key_Press -- (V1) [.S..], ULONG FUNCTION Painaa kosketinta. NOTES Arvo vaihtelee 0:n ja 131:n välillä ja on riippumaton oktaaviluvusta, joka näkyisi alapalkissa. SEE ALSO MUIA_Pkb_Octv_Start, MUIA_Pkb_Octv_Range, MUIA_Pkb_Key_Release Pkb/MUIA_Pkb_Range_Head NAME MUIA_Pkb_Range_Head -- (V1) [.SGM], ULONG FUNCTION Asettaa tai palauttaa ryhmän johtajan range-tilassa. INPUTS MUIV_Pkb_Range_Head_OFF MUIV_Pkb_Range_Head_BOT MUIV_Pkb_Range_Head_TOP SEE ALSO MUIA_Pkb_Mode Pkb/MUIA_Pkb_Range_Start NAME MUIA_Pkb_Range_Start -- (V1) [.SGM], LONG FUNCTION Asettaa tai palauttaa VIIMEISEN aktiivisen välin matalimman nuotin arvon. NOTES Kun asetat, sinun pitää antaa sallittu positiivinen luku. Kun saat tämän atribuutin, sinulle palautetaan aina 0:n ja 131:n välillä oleva luku, tai -1, jos ei ole aktiivista väliä. SEE ALSO MUIA_Pkb_Range_End, MUIA_Pkb_Mode Pkb/MUIA_Pkb_Range_End NAME MUIA_Pkb_Range_End -- (V1) [.SGM], LONG FUNCTION Asettaa tai palauttaa VIIMEISEN aktiivisen välin korkeimman nuotin arvon. NOTES Kun asetat, sinun pitää antaa sallittu positiivinen luku. Kun saat tämän atribuutin, sinulle palautetaan aina 0:n ja 131:n välillä oleva luku, tai -1, jos ei ole aktiivista väliä. SEE ALSO MUIA_Pkb_Range_Start, MUIA_Pkb_Mode Pkb/MUIA_Pkb_Low NAME MUIA_Pkb_Low -- (V1) [..G.], ULONG FUNCTION Palauttaa koskettimiston alimman nuotin arvon. SEE ALSO MUIA_Pkb_High Pkb/MUIA_Pkb_High NAME MUIA_Pkb_High -- (V1) [..G.], ULONG FUNCTION Palauttaa koskettimiston korkeimman nuotin arvon. SEE ALSO MUIA_Pkb_Low Pkb/MUIM_Pkb_Reset NAME MUIM_Pkb_Reset SYNOPSIS DoMethod(obj, MUIM_Pkb_Reset); FUNCTION Resetoi koskettimiston vapauttamalla kaikki koskettimet. SEE ALSO Pkb/MUIM_Pkb_Refresh NAME MUIM_Pkb_Refresh -- (V1) SYNOPSIS DoMethod(obj, MUIM_Pkb_Refresh); FUNCTION Piirtää koskettimiston uudelleen. NOTES Täma tapa voi olla tarpeellinen, jos jotain muutoksia on tehty, kun koskettimiston MUIA_Pkb_Quiet oli asetettu TODEKSI. SEE ALSO MUIA_Pkb_Quiet Pkb/MUIM_Pkb_Range NAME MUIM_Pkb_Range -- (V1) SYNOPSIS DoMethod(obj, MUIM_Pkb_Range, ULONG nstart, ULONG nend); FUNCTION Luo välin arvojen nstart ja nend välille. NOTES nstart arvon ei välttämättä tarvitse olla pienempi kuin nend, mutta ne molemmat pitää asettaa välille 0...131. SEE ALSO MUIA_Pkb_Range_Start, MUIA_Pkb_Range_End Pkb/MUIM_Pkb_Range_Reset NAME MUIM_Pkb_Range_Reset -- (V1) SYNOPSIS DoMethod(obj, MUIM_Pkb_Range_Reset); FUNCTION Resetoi VIIMEISEN aktiivisen välin, jolloin kaikki koskettimet, mitkä muodostivat välin, vapautuvat. NOTES MUIA_Pkb_Range_Start ja MUIA_Pkb_Range_End atribuutit resetoituvat tämän metodin kutsumisen jälkeen. SEE ALSO MUIA_Pkb_Range_Start, MUIA_Pkb_Range_End Pkb/MUIM_Pkb_Range_Refresh NAME MUIM_Pkb_Range_Refresh -- (V1) SYNOPSIS DoMethod(obj, MUIM_Pkb_Range_Refresh); FUNCTION Virkistää aktiivisen välin, joka on ryhmä nuotteja, jotka ovat MUIA_Pkb_Range_Startin ja MUIA_PKb_Range_Endin välissä. SEE ALSO MUIA_Pkb_Range_Start, MUIA_Pkb_Range_End Pkb/MUIM_Pkb_Jump NAME MUIM_Pkb_Jump -- (V1) SYNOPSIS DoMethod(obj, MUIM_Pkb_Jump, ULONG ncode); FUNCTION Hyppää ncoden mukaiselle nuotille, tehden sen näkyväksi. NOTES ncode arvon pitää olla joku koskettimistolta, eli arvo MUIA_Pkb_Low:n ja MUIA_Pkb_High:n väliltä SEE ALSO MUIA_Pkb_Range_Start, MUIA_Pkb_Range_End Pkb.mcc/MUIA_Pkb_InputEnable NAME MUIA_Pkb_InputEnable -- (V14.4) [ISG], BOOL FUNCTION Sallii tai estää koskettimiston käytön käyttäjältä. INPUTS TOSI (oletus) EPÄTOSI NOTES Aseta tämä atribuutti, jos haluat estää koskettimistoa reagoimasta hiiren painalluksiin. Kun asetat MUIA_Pkb_Quiet:n TODEKSI, koskettimisto TUNTUU reagoivan, vaikka koskettimia ei päivitetä, mutta atribuutit, joiden tila riippuu koskettimien painamisesta ja vapauttamisesta - kuten MUIA_Pkb_Key_Release, MUIA_Pkb_Key_Press jne. - päivitetään. SEE ALSO MUIA_Pkb_Quiet Pkb.mcc/MUIA_Pkb_ExcludeLow NAME MUIA_Pkb_ExcludeLow -- (V14.4) [ISG], ULONG FUNCTION Asettaa tai palauttaa poisjätettyjen sävelpuolikkaiden määrän koskettimiston alapäästä. INPUTS 0 : ei poisjätettyjä koskettimia (oletus) 1...11 : jätetty pois C...Bb NOTES Pkb luokka EI VOI piirtää epätäydellisiä oktaaveja. Kuitenkin joskus tarvitaan koskettimistoa, joka alkaa jollain muulla kuin C-nuotilla. Tämä on mahdollista, kun asetat MUIA_Pkb_ExcludeLow:n tarvittavan määrän sävelpuolikkaita. Poisjätetyt koskettimet piirretään joka tapauksessa, mutta ne ovat eri värisiä, eikä niillä ole mitään toimintoa. SEE ALSO MUIA_Pkb_ExcludeHigh Pkb.mcc/MUIA_Pkb_ExcludeHigh NAME MUIA_Pkb_ExcludeHigh -- (V14.4) [ISG], ULONG FUNCTION Asettaa tai palauttaa poisjätettyjen sävelpuolikkaiden määrän koskettimiston yläpäästä. INPUTS 0 : ei poisjätettyjä koskettimia (oletus) 1...11 : jätetty pois B...Db NOTES Pkb luokka EI VOI piirtää epätäydellisiä oktaaveja. Kuitenkin joskus tarvitaan koskettimistoa, joka päättyy johonkin muuhun kuin B-nuottiin. Tämä on mahdollista, kun asetat MUIA_Pkb_ExcludeHigh:n tarvittavan määrän sävelpuolikkaita. Poisjätetyt koskettimet piirretään joka tapauksessa, mutta ne ovat eri värisiä, eikä niillä ole mitään toimintoa. SEE ALSO MUIA_Pkb_ExcludeLow