Category : Dbase (Clipper, FoxBase, etc) Languages Source Code
Archive   : SNDVIS.ZIP
Filename : SOUNDVIS.CH

 
Output of file : SOUNDVIS.CH contained in archive : SNDVIS.ZIP

/******************************************************************
* *
* SOUNDVIS.CH Version 1.4 *
* *
* Include for SOUND & VISION for Clipper *
* *
* Example : SetPref ( C_BARCOL, 30 ) sets the color for the *
* menubar from 112 ( black on white , default) *
* to 30 (light-white on blue ) *
* *
* Copyright (c) 1993, Thomas Groeger *
* All rights reserved. *
* *
******************************************************************/


// definitions

#define A_SANDGLASS '»' // 189
#define A_LU 'Ô' // 212
#define A_RU 'Ó' // 211
#define A_UPPER 'Ç' // 199
#define A_BOTTOM 'È' // 200
#define A_SEP 'Ä' // 196
#define A_HORIZONT 'Ð' // 208
#define A_VERTICAL 'äÏ' // 228 + 207
#define A_EXITBOX '˵' // 203 + 181
#define A_ICONBOX 'Ì·' // 204 + 183
#define A_CHOICEBOX '͸' // 205 + 184
#define A_RIGHTBOX '˶' // 203 + 182
#define A_LEFTBOX 'ʵ' // 202 + 181
#define A_UPBOX 'Ò²' // 210 + 178
#define A_DOWNBOX 'ѱ' // 209 + 177
#define A_SCROLLBOX 'ÛÛ' // 219 + 219

// Return values of the menu functions

#define B_ESC 0
#define B_LEFT -1
#define B_RIGHT -2
#define B_QUIT -3
#define B_MOUSE -4


// Mouse return values when using AlertBox

#define M_NOMATCH 0 // Nothing found
#define M_CLOSE 248 // CloseButton
#define K_MOUSE 255 // MouseButton
#define M_MOVE 254 // MoveButton
#define M_CHOICE 253 // ChoiceButton
#define M_UP 252 // Scrollbar Top
#define M_DOWN 251 // Bottom
#define M_LEFT 250 // Left
#define M_RIGHT 249 // Right



// ArrayDimension for the Menu-Arrays

#define MEN_TEXT 1 // Dimension 1 = Text
#define MEN_RET 2 // Dimension 2 = Return-Code/Function
#define MEN_SEL 3 // Dimension 3 = Selected T/F
#define MEN_DESC 4 // Dimension 4 = Description
#define MEN_CUT 5 // Dim.PopUp 5 = ShortCut
#define MEN_SPACE 5 // Dim.Bar 5 = prompt distance

// ArrayDimension for the Mouse-Array

#define MS_ROW 1 // MouseRow 1
#define MS_LCOL 2 // Column left
#define MS_RCOL 3 // Column Right
#define MS_RET 4 // Return value/Function

// ArrayDimension for MausArray neu
#define MSE_TROW 1 // Upper MouseRow
#define MSE_LCOL 2 // Left MouseCol
#define MSE_BROW 3 // Lower MousRow
#define MSE_RCOL 4 // Right MouseRow
#define MSE_RET 5 // Return value/Function

// WindowConstants / Types of Windows

#define WIN_SINGLE 0 // single frame
#define WIN_GSINGLE 32 // Grafic frame
#define WIN_GSINGBUT 64 // Grafic frame, spaces below
#define WIN_MESSAGE 51 // GrafWindow with Close/Movebutton
#define WIN_LIST 59 // ListBox with ScrollBar without menue
#define WIN_FULL 63 // full Window: everything's in here
#define WIN_MESSBUT 83 // MessageBox without underline


// Colordefinition for SetDAC ColorValue

#define C_N 0 // black
#define C_B 1 // blue
#define C_G 2 // green
#define C_BG 3 // cyan
#define C_R 4 // red
#define C_RB 5 // magenta
#define C_RG 6 // brown
#define C_W 7 // white
#define C_HN 8 // grey
#define C_HB 9 // shining blue
#define C_HG 10 // shining green
#define C_HBG 11 // light blue
#define C_HR 12 // shining red
#define C_HRB 13 // shining magenta
#define C_HRG 14 // yellow
#define C_HW 15 // shining white


// ColorDefinitions for SetLibCol


#define C_BARCOL 1 // MenuBar, default 240 - black on white+
#define C_BARKEY 2 // Hotkey 244 - red on white+
#define C_BARPASSIV 3 // non-chooseable 248 - grey on white+
#define C_BARPROMPT 4 // PromptColor 15 - +white on black
#define C_BARHOTKEY 5 // HotKeyColor 15 - +white on black

// PopUp-Menu

#define C_POPCOL 6 // Window/Text 48 - black on light blue
#define C_POPKEY 7 // Hotkeys 52 - red on light blue
#define C_POPPASSIV 8 // Choice not available 56 - grey on light blue
#define C_POPPROMPT 9 // Prompt 15 - light white on black
#define C_POPHOTKEY 10 // Prompt-Hotkey 10 - light green on black
#define C_POPSHORT 11 // ShortCuts in Menue 55 - white on light blue

// ColorDefinitions for OpenWin() / DataWindow
#define C_MASKWIN 12 // Window/FrameColor 112 - black on white
#define C_MASKMENU 13 // MenuBar 240 - black on white+
#define C_MASKHEAD 14 // Title 31 - +white on blue
#define C_MASKSYMB 15 // All Icons 7 - white on black

// AlertBoxes: TitleColor
#define C_BOXHEADER 16 // TitleColor 112 - black on white

// Question ? - Box
#define C_QUESTWIN 17 // QuestionBox 23 - white on blue
#define C_QUESTTEXT 18 // Text 30 - yellow on blue
#define C_QUESTBUTTEXT 19 // ButtonText 112 - black on white
#define C_QUESTBUTHOT 20 // ButtonHotkey 116 - red on white

// Attention ! - Box
#define C_ALERTWIN 21 // AlertBox 71 - white on red
#define C_ALERTTEXT 22 // MessageText 69 - yellow on red
#define C_ALERTBUTTEXT 23 // ButtonText 46 - yellow on green
#define C_ALERTBUTHOT 24 // ButtonHotkey 44 - red on green

// Message-Box
#define C_MESSWIN 25 // MessageBox 208 - black on purple
#define C_MESSTEXT 26 // MessageText 212 - red on purple
#define C_MESSBUTTEXT 27 // Button-Text 112 - black on white
#define C_MESSBUTHOT 28 // Button-Hotkey 116 - red on white

// Descript() - Row
#define C_DESCROW 29 // DispText-Row 24 - Row 24
#define C_DESCCOL 30 // DispText-Column 01 - Col 1
#define C_DESCEND 31 // EndColumn 79 - EndCol 79

// Button-Preferences
#define C_GRAFBUTTON 32 // GraficButtons 1 = Yes 2 = No
#define C_BUTTUPPER 33 // Upper Buttonline chr(200)
#define C_BUTTLOWER 34 // Lower Buttonline chr(199)



// Just a few tricks, using the PreProcessor :
// -------------------------------------------
#xcommand DEFAULT TO ;
=> IF ( == nil, := , nil )


#COMMAND @ , GET ;
AS PUSHBUTTON ;
[COLOR ] ;
[HOTKEY ] ;
[WHEN ] ;
[TIMEOUT ] ;
[] ;
;
=> SetPos( , ) ;
; aAdd( GetList, _GET_( , <(nvar)>, "9",, <{when}> ) ) ;
; aTail(GetList):cargo := oAddButt (,,,,,<.vert.>) ;
; oDisButt ( aTail(GetList):cargo, ) ;
; aTail(getlist):reader :={|get|ReadaButton( get, ) }


#command @ , GET ;
AS FRAME IN , ;
[LISTBOX ] ;
[PICTURE ] ;
[VALID ] ;
[WHEN ] ;
;
=> SetPos( , ) ;
; AAdd(GetList, _GET_( , <(var)>, , <{valid}>, <{when}>):display()) ;
; aTail(getList):reader:={|get|FrameReader(get,,,)}

#command @ , GET ;
LISTBOX ;
[PICTURE ] ;
[VALID ] ;
[WHEN ] ;
;
=> SetPos( , ) ;
; AAdd(GetList, _GET_( , <(var)>, , <{valid}>, <{when}>):display()) ;
; aTail(getList):reader:={|get|FrameReader(get,,,)}

#COMMAND OPENWIN FROM , TO , ;
[TITLE ] ;<br /> [TOPCOLOR <TopCol>] ;<br /> [WINCOLOR <WinCol>] ;<br /> [TYP <WinTyp>] ;<br /> [SAVE TO <Buffer>] ;<br /> ;<br /> =>[<Buffer> :=] OpenMask(<tRow>,<tCol>,<bRow>,<bCol>,<title>,<WinTyp>,<TopCol>,<WinCol>)<br /> <br /> <br /> #translate SCROLLTOP(<var>) => ScrollPos(<var>,0)<br /> #translate SCROLLBOTTOM(<var>) => ScrollPos(<var>,-1)<br /> #translate GETSCROLLTOP(<var>) => GetScrlPos(<var>,0)<br /> #translate GETSCROLLPOS(<var>) => GetScrlPos(<var>,1)<br /> #translate GETSCROLLEND(<var>) => GetScrlPos(<var>,2)<br /> <br><br> </div><!--/entry --> </div><!-- .entry-container --> <footer class="post-footer postdata fix"> </footer><!-- .post-footer --> <div class='postdata line'> </div> <section id="comments"> <h3 class="comments"><span class="icon"> </span> 3 Responses to “Category : Dbase (Clipper, FoxBase, etc) Languages Source Code<br>Archive   : SNDVIS.ZIP<br>Filename : SOUNDVIS.CH<br>”</h3> <ol class="commentlist"> <li id="comment-468" class="comment even thread-even depth-1 plain-nested"> <div id="div-comment-468" class="comment-body"> <div class="comment-author fix vcard"> <img alt='' src='https://secure.gravatar.com/avatar/8f76d6c77c12a5a1083dce633a326642?s=48&d=mm&r=g' srcset='https://secure.gravatar.com/avatar/8f76d6c77c12a5a1083dce633a326642?s=96&d=mm&r=g 2x' class='avatar avatar-48 photo' height='48' width='48' loading='lazy' decoding='async'/> <div class="comment-author-link"> <cite class="fn">Daniel</cite> <span class="says">says:</span> </div> <div class="comment-meta commentmetadata"><a href="https://www.pcorner.com/list/#comment-468"> January 27, 2013 at 3:59 pm</a> </div> </div> <p>Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!</p> </div> <div class="reply"> </div> </li><!-- #comment-## --> <li id="comment-1491" class="comment odd alt thread-odd thread-alt depth-1 plain-nested"> <div id="div-comment-1491" class="comment-body"> <div class="comment-author fix vcard"> <img alt='' src='https://secure.gravatar.com/avatar/6b4f9d1304972a01f7c30ad1710ddc18?s=48&d=mm&r=g' srcset='https://secure.gravatar.com/avatar/6b4f9d1304972a01f7c30ad1710ddc18?s=96&d=mm&r=g 2x' class='avatar avatar-48 photo' height='48' width='48' loading='lazy' decoding='async'/> <div class="comment-author-link"> <cite class="fn">Joshie</cite> <span class="says">says:</span> </div> <div class="comment-meta commentmetadata"><a href="https://www.pcorner.com/list/#comment-1491"> March 18, 2014 at 4:57 pm</a> </div> </div> <p>This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.</p> </div> <div class="reply"> </div> </li><!-- #comment-## --> <li id="comment-31187" class="comment even thread-even depth-1 plain-nested"> <div id="div-comment-31187" class="comment-body"> <div class="comment-author fix vcard"> <img alt='' src='https://secure.gravatar.com/avatar/e91d5d889b8284060613b258afef30f7?s=48&d=mm&r=g' srcset='https://secure.gravatar.com/avatar/e91d5d889b8284060613b258afef30f7?s=96&d=mm&r=g 2x' class='avatar avatar-48 photo' height='48' width='48' loading='lazy' decoding='async'/> <div class="comment-author-link"> <cite class="fn">DiskingRound</cite> <span class="says">says:</span> </div> <div class="comment-meta commentmetadata"><a href="https://www.pcorner.com/list/#comment-31187"> January 14, 2015 at 10:57 pm</a> </div> </div> <p>But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: <a href="http://www.os2museum.com/wp/mtswslnk/" rel="nofollow ugc">http://www.os2museum.com/wp/mtswslnk/</a></p> </div> <div class="reply"> </div> </li><!-- #comment-## --> </ol> <div class="navigation fix"> <div class="alignleft"></div> <div class="alignright"></div> </div> </section> <!-- #comments --> </article><!--/post --> </div><!-- #content --> </div><!-- #main-col --> <div id='sidebar-shell-1' class='sidebar-shell sidebar-shell-right'> <div class="dbx-group right boxed warea" id="sidebar"> <!--widget start --><aside id="block-6" class="dbx-box suf-widget widget_block"><div class="dbx-content"> <h2 class="wp-block-heading">Donate</h2> </div></aside><!--widget end --><!--widget start --><aside id="block-7" class="dbx-box suf-widget widget_block widget_text"><div class="dbx-content"> <p>Please help defray the cost of running this free service, send Zelle payment to The Programmer's Corner at donation@pcorner.com</p> </div></aside><!--widget end --><!--widget start --><aside id="text-7" class="dbx-box suf-widget widget_text"><div class="dbx-content"> <div class="textwidget"><div style="display:inline-block;width:160px;height:1200px;overflow:hidden"> <div style="height:600px;overflow:hidden"> <script type="text/javascript"> amzn_assoc_placement = "adunit0"; amzn_assoc_enable_interest_ads = "true"; amzn_assoc_tracking_id = "zca-20"; amzn_assoc_ad_mode = "auto"; amzn_assoc_ad_type = "smart"; amzn_assoc_marketplace = "amazon"; amzn_assoc_region = "US"; amzn_assoc_linkid = "ea8faac85a6c9ee94ab5174bccaeb487"; amzn_assoc_emphasize_categories = "13900871"; amzn_assoc_fallback_mode = {"type":"search","value":"DOS Windows"}; amzn_assoc_default_category = "All"; </script> <script src="//z-na.amazon-adsystem.com/widgets/onejs?MarketPlace=US"></script> </div> <div style="width:160px;height:600px;overflow:hidden"> <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:inline-block;width:160px;height:600px" data-ad-client="ca-pub-8001169946558833" data-ad-slot="3404908173"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> </div></div> </div></aside><!--widget end --><!--widget start --><aside id="text-4" class="dbx-box suf-widget widget_text"><div class="dbx-content"> <div class="textwidget"><div class="alignleft" style="height:250px"> <script type='text/javascript'> amzn_assoc_ad_type = 'banner'; amzn_assoc_tracking_id = 'zca-20'; amzn_assoc_marketplace = 'amazon'; amzn_assoc_region = 'US'; amzn_assoc_placement = 'assoc_banner_placement_default'; amzn_assoc_linkid = 'IHR4HJGBAKD7GTXW'; amzn_assoc_campaigns = 'primemain'; amzn_assoc_p = '12'; amzn_assoc_banner_type = 'promotions'; amzn_assoc_banner_id = '1MDTME9E9G651CJTDA82'; amzn_assoc_width = '300'; amzn_assoc_height = '250'; </script> <script src='//z-na.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&Operation=GetScript&ID=OneJS&WS=1'></script> </div></div> </div></aside><!--widget end --><!--widget start --><aside id="text-6" class="dbx-box suf-widget widget_text"><div class="dbx-content"> <div class="textwidget"><div class="alignleft" style="height:250px"> <script type='text/javascript'> amzn_assoc_ad_type = 'banner'; amzn_assoc_tracking_id = 'zca-20'; amzn_assoc_marketplace = 'amazon'; amzn_assoc_region = 'US'; amzn_assoc_placement = 'assoc_banner_placement_default'; amzn_assoc_linkid = 'ITD6QMTPEKWARMWK'; amzn_assoc_campaigns = 'student_usa'; amzn_assoc_p = '12'; amzn_assoc_banner_type = 'promotions'; amzn_assoc_banner_id = '048JV5R198MXDXRBR1R2'; amzn_assoc_width = '300'; amzn_assoc_height = '250'; </script> <script src='//z-na.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&Operation=GetScript&ID=OneJS&WS=1'></script> </div></div> </div></aside><!--widget end --><!--widget start --><aside id="text-5" class="dbx-box suf-widget widget_text"><div class="dbx-content"> <div class="textwidget"><div class="alignleft" style="height:250px"> <script type='text/javascript'> amzn_assoc_ad_type = 'banner'; amzn_assoc_tracking_id = 'zca-20'; amzn_assoc_marketplace = 'amazon'; amzn_assoc_region = 'US'; amzn_assoc_placement = 'assoc_banner_placement_default'; amzn_assoc_linkid = 'VDMKO73JLHN6K4FF'; amzn_assoc_campaigns = 'echo'; amzn_assoc_p = '12'; amzn_assoc_banner_type = 'promotions'; amzn_assoc_banner_id = '146870N94VDD8MAPHT02'; amzn_assoc_width = '300'; amzn_assoc_height = '250'; </script> <script src='//z-na.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&Operation=GetScript&ID=OneJS&WS=1'></script> </div></div> </div></aside><!--widget end --><!--widget start --><aside id="block-3" class="dbx-box suf-widget widget_block widget_text"><div class="dbx-content"> <p></p> </div></aside><!--widget end --></div><!--/sidebar --> </div> </div><!-- /container --> </div><!--/wrapper --> <footer> <div id='page-footer'> <div class='col-control'> <div id="cred"> <table> <tr> <td class="cred-left">© 2018 <a href='http://www.pcorner.com'>The Programmer's Corner</a> by Personalized Computer Systems </td> <td class="cred-center"><script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:inline-block;width:728px;height:90px" data-ad-client="ca-pub-8001169946558833" data-ad-slot="6568049104"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </td> <td class="cred-right"></td> </tr> </table> </div> </div> </div> </footer> <!-- 10 queries, 54MB in 0.779 seconds. --> <!-- location footer --> <script type='text/javascript'> //<![CDATA[ jQuery(document).ready(function($) { $('html').MagicLiquidizerTable({ whichelement: 'table', breakpoint: '780', headerSelector: 'thead td, thead th, tr th', bodyRowSelector: 'tbody tr, tr', table: '' }) }) //]]> </script> <script type='text/javascript' src='https://www.pcorner.com/wp-includes/js/comment-reply.min.js?ver=6.2.5' id='comment-reply-js'></script> </body> </html> <!-- Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/ Object Caching 19/22 objects using disk Database Caching 16/23 queries in 0.008 seconds using disk Served from: www.pcorner.com @ 2024-04-17 03:19:39 by W3 Total Cache --><script defer src="https://static.cloudflareinsights.com/beacon.min.js/v84a3a4012de94ce1a686ba8c167c359c1696973893317" integrity="sha512-euoFGowhlaLqXsPWQ48qSkBSCFs3DPRyiwVu3FjR96cMPx+Fr+gpWRhIafcHwqwCqWS42RZhIudOvEI+Ckf6MA==" data-cf-beacon='{"rayId":"87594654391e2006","version":"2024.3.0","r":1,"token":"bb4034281aa041b0a0eb74cc298dc9b6","b":1}' crossorigin="anonymous"></script>