home *** CD-ROM | disk | FTP | other *** search
- '***********************************************************************
- ' FormDev: StdBmp.RLZ
- '
- ' Copyright ⌐ 1991-1992 Computer Associates International, Inc.
- ' All rights reserved.
- '
- '***********************************************************************
-
- PROC %%ShowBitMaps
- LOCAL startID, i, xPos, yPos, nextFile, bmpInfo, wd, ht, tp, found
-
- xPos = 5
- yPos = 10
- FormSelect(%%browser)
- %%FrameIt(0)
- startID = FormQNum(19)
- FOR i = 0 TO 3
- FormModifyObject(100 + i, _Close)
- FormModifyObject(200 + i, _Close)
- IF startID + i <= ENDVALID(%%bmNames) THEN
- nextFile = %%bmNames[startID + i]
- found = FileQ(fdClipArtPath + nextFile, _Exists)
- ELSE
- found = 0
- END IF
- IF found THEN
- FormSetObject(100 + i, _BitmapButton, fdClipArtPath + nextFile, 10 in, 20 in)
- bmpInfo = FormQObject(100 + i)
- wd = MIN(bmpInfo[_FQO_Width], %%maxBMWidth)
- ht = MIN(bmpInfo[_FQO_Height], %%maxBMWidth)
- FormModifyObject(100 + i, _Normal, ((%%maxWidth - wd) \ 2) pxl, yPos, wd, ht)
- tp = yPos + ht + 5
- IF tp <= yPos + %%MaxPictSize - %%capHeight THEN
- FormSetObject(200 + i, _CaptionCenter, LEFT$(nextFile, LEN(nextFile) - 4), font_P, 0, tp, %%maxWidth, _Default)
- ELSE
- FormSetObject(200 + i, _CaptionCenter, "", 20in, 20in)
- END IF
- IF fdClipArtPath = fdCurrentBmpPath AND nextFile = fdCurrentBmpFN THEN
- %%FrameIt(100 + i)
- END IF
- xPos = 5
- yPos = yPos + %%MaxPictSize
- END IF
- IF NOT found THEN
- FormSetObject(100 + i, _Button, "", 10 in, 10 in)
- FormSetObject(200 + i, _Button, "", 10 in, 10 in)
- END IF
- NEXT
- END PROC
-
-
- PROC %%FrameIt (itemNum)
- LOCAL v
-
- IF itemNum = 0 THEN
- FormModifyObject(300, _Gray, 20in, 20in)
- ELSE
- v = FormQObject(itemNum)
- FormModifyObject(300, _Gray, v[_FQO_Left] - 3, v[_FQO_Top] - 3, v[_FQO_Width] + 6, v[_FQO_Height] + 6)
- END IF
- END PROC
-
-
- PROC %%BrowserProc(params)
- LOCAL currScroll, fName, bmpInfo, J
-
- IF params[_Invoke] <> _Click THEN
- IF params[_Invoke] = _Close THEN
- CLEAR %%browser
- END IF
- EXIT PROC
- END IF
-
- LastFrameOff
- FormSelect(params[_FormNum])
- SELECT CASE params[_ItemNum]
- CASE 1
- fn = StdOpen(fdOpenBmpPath + "*.BMP", "Select a bitmap:")
- IF FDParseFN(fn, "", fdOpenBmpPath, fdCurrentBmpFN) THEN
- fdCurrentBmpPath = fdOpenBmpPath
- UpdateBrowser
- FormSelect(fdMain)
- FormControl(_Show)
- END IF
- CASE 2
- FormSelect(fdMain)
- FormControl(_Show)
- CASE 19
- %%ShowBitmaps
- CASE 100 TO 103
- J = FormQNum(19) + params[_ItemNum] - 100
- %%FrameIt(0)
- %%FrameIt(params[_ItemNum])
- fdCurrentBmpPath = fdClipArtPath
- fdCurrentBmpFN = %%bmNames[J]
- UpdateBrowser
- FormSelect(fdMain)
- FormControl(_Show)
- END SELECT
- END PROC
-
-
- PROC UpdateBrowser
- LOCAL oldForm, s
-
- IF NOT QVar(%%browser) THEN
- EXIT PROC
- END IF
- IF NOT FormQ(_Exists; %%browser) THEN
- EXIT PROC
- END IF
- oldForm = FormQ(_Selected)
- FormSelect(%%browser)
- s = fdCurrentBmpFN
- IF s = "" THEN
- s = "<none selected>"
- FormModifyObject(300, _Gray, 20in, 20in)
- END IF
- FormModifyObject(3002, _Gray, s)
- IF oldForm THEN
- FormSelect(oldForm)
- END IF
- END PROC
-
-
- PROC ShowBrowser (..)
- LOCAL oldHG, v, yTop, J, show, recal, oldForm, new
-
- oldHG = QVar(%%formHourglass)
- show = 1
- recal = 0
- IF QNOptParams THEN
- show = QOptParam(1)
- IF QNOptParams >= 2 THEN
- recal = QOptParam(2)
- END IF
- END IF
-
- oldForm = FormQ(_Selected)
- IF NOT QVar(%%browser, _Defined) THEN
- %%browser = FormQUnique
- new = 1
- ELSEIF NOT FormQ(_Exists; %%browser) THEN
- %%browser = FormQUnique
- new = 1
- ELSE
- new = 0
- END IF
- IF new THEN
- IF NOT oldHG THEN
- SetHourglass
- END IF
- recal = 1
- %%MaxPictSize = 80 ' Maximum size of bitmap on the vertical in pels.
-
- FormNew(%%browser; "ClipArt", _Title + _Close + _Minimize + _HotClick)
- FormControl(_Size; 84 pct, 17 pct, 15 pct, 100)
- desiredWid = FormQ(_Size)[3] - 2
- FormSizeForWidHt(1, desiredWid, %%MaxPictSize * 4)
- %%maxWidth = desiredWid
-
- FormSetObject(29998, _Bitmap, QSys(_ProgDir) + "White.BMP", 0, 0, 100pct, 100pct)
- FormSetColor(_White; _Text)
- FormSetObject(29999, _GroupBox, "", 0, 0)
- FormSetColor(_Black; _Text)
- yTop = FormQObject(29998)[_FQO_Height]
- FormSetObject(1, _DefButton, "Open...", font_B, 0, yTop, 100 pct, _Default)
- yTop = yTop + FormQObject(1)[_FQO_Height]
- FormSetObject(300, _GroupBox, "", 20 in, 20 in)
- FormModifyObject(300, _Gray)
- FormSetObject(19, _ScrollBar, "", 0 pxl, 0 pxl, _Default, 100pct; _SB_Style + _SB_Vertical, 0, 0, 0, 0)
- FormModifyObject(19, _Normal, desiredWid - FormQObject(19)[_FQO_Width] + 1, _Default, _Default, _Default)
- %%maxWidth = FormQObject(19)[_FQO_Left]
- %%maxBMWidth = %%maxWidth - 6
-
- FormSetColor(_LightGray; _Field)
- FormSetColor(_LightGray; _Text)
- FormSetObject(3000, _GroupBox, "", 0, yTop, 100, 100pct)
- FormModifyObject(3000, _Gray)
- yTop = yTop + 1
- FormSetColor(_Black; _Text)
- FormSetObject(3001, _CaptionLeft, "Current bitmap:", font_B, 1.1, yTop, 100pct, _Default)
- yTop = yTop + FormQObject(3001)[_FQO_Height]
- FormSetObject(3002, _CaptionCenter, "", font_P, 0, yTop, 100pct, _Default)
- %%capHeight = FormQObject(3002)[_FQO_Height]
- yTop = yTop + %%capHeight
- FormSetColor(_White; _Field)
- FormSizeForWidHt(100, desiredWid, yTop)
- FormControl(_Size; _Right, _Bottom)
- v = FormQ(_Size)
- FormControl(_Size; v[1] - 10, v[2] - 10)
- FormModifyObject(29998, _Normal, 0, 0, 100pct, 100pct)
- FormModifyObject(29999, _Gray, 0, 0, 100pct, 100pct)
- FOR J = 0 TO 3
- FormSetObject(100 + J, _Button, "", 10 in, 10 in)
- FormSetObject(200 + J, _Button, "", 10 in, 10 in)
- NEXT
- UpdateBrowser
- FormSetProc(%%BrowserProc)
- END IF
- FormSelect(%%browser)
- IF recal THEN
- FormModifyObject(19; 1, 1, MAX(1, ENDVALID(%%bmNames) - 3), 4)
- %%ShowBitMaps
- END IF
- IF show THEN
- FormControl(_Show)
- END IF
- IF oldForm THEN
- FormSelect(oldForm)
- END IF
- IF NOT oldHG THEN
- ResetHourglass
- END IF
- END PROC
-
-
- PROC %%BrowMenuCheck(J)
- LOCAL oldForm
-
- IF %%currentBM THEN
- MenuSetCmd(%%currentBM; _Uncheck)
- END IF
- %%currentBM = J
- MenuSetCmd(%%currentBM; _Check)
-
- oldForm = FormQ(_Selected)
- FormNew(FormQUnique)
- FormSetObject(1, _ListBox, "", 0, 0; _Sorted, _ListFiles, _NormFiles, fdClipArtPath + %%ClipArt.fileNames[%%currentBM])
- %%bmNames = FormQStr(1, 1, 1000)
- FormControl(_Close)
- IF oldForm THEN
- FormSelect(oldForm)
- END IF
- END PROC
-
-
- PROC %%BrowMenuProc(params)
- SetHourglass
- MenuSelect(params[_MenuNum])
- %%BrowMenuCheck(params[_ItemNum])
- ShowBrowser(1, 1)
- ToolOn(10)
- ResetHourglass
- END PROC
-
-
- PROC InitBrowserMenu(title, position)
- IF QVar(%%browserMenu) THEN
- IF MenuQ(_Exists; %%browserMenu) THEN
- EXIT PROC
- END IF
- END IF
- %%currentBM = 0
- %%browserMenu = MenuQUnique
- MenuNew(%%browserMenu; title)
- FileImport(fdClipArtPath + "ClipArt.RLV", _Realizer, _Named, %%ClipArt)
- MenuSetCmd(Index(EndValid(%%ClipArt.menuNames)), %%ClipArt.menuNames)
- %%BrowMenuCheck(1)
- MenuSetProc(%%BrowMenuProc)
- MenuControl(_Show; position)
- END PROC
-