home *** CD-ROM | disk | FTP | other *** search
/ Total C++ 2 / TOTALCTWO.iso / vfp5.0 / vfp / samples / solution / forms / graphics / fdproc.prg < prev    next >
Encoding:
Text File  |  1996-08-21  |  7.5 KB  |  316 lines

  1. * FDPROC.PRG
  2. * Procedure File for FoxDraw Graphics Methods Demo
  3. * Defines: ToolBar 'fdToolBar'
  4. * Procs  : Hide & Show ToolBars, FdMainErr
  5.  
  6. * Toolbar Object captions and tooltips
  7. #INCLUDE "foxdraw.h"
  8.  
  9. * FDMAIN Class definitions & procedures
  10.  
  11. * FDToolBar Class Def
  12. DEFINE CLASS fdToolBar  AS ToolBar
  13.  
  14. iLastDockWidth = 0
  15.  
  16. ADD OBJECT lbl1        AS LABEL WITH ;
  17.     Caption = LBL1CAP_LOC, ;
  18.     AutoSize = .T., ;
  19.     BackStyle = 0, ;
  20.     FontName = CMDFONTNAME, ;
  21.     FontSize = CMDFONTSIZE
  22.  
  23. * Following object Caption changes when clicked
  24. ADD OBJECT cmdDraw    AS commandbutton WITH ;
  25.     HEIGHT = CMDHT_LOC,;
  26.     WIDTH = CMDWIDTH1_LOC, ;
  27.     Caption = CMDDRAWCAP2_LOC, ;
  28.     ToolTipText = CMDDRAWTIP_LOC, ;
  29.     FontName = CMDFONTNAME, ;
  30.     FontSize = CMDFONTSIZE
  31.  
  32. ADD OBJECT sepL2        AS SEPARATOR
  33.  
  34. ADD OBJECT lbl2        AS LABEL WITH ;
  35.     Caption = LBL2CAP_LOC, ;
  36.     AutoSize = .T., ;
  37.     BackStyle = 0, ;
  38.     FontName = CMDFONTNAME, ;
  39.     FontSize = CMDFONTSIZE
  40.  
  41. * Following object Caption changes when clicked
  42. ADD OBJECT cmdDrawMode    AS commandbutton WITH ;
  43.     HEIGHT = CMDHT_LOC,;
  44.     WIDTH = CMDWIDTH1_LOC, ;
  45.     Caption = CMDDRAWMODECAP1_LOC, ;
  46.     ToolTipText = CMDDRAWMODETIP_LOC, ;
  47.     FontName = CMDFONTNAME, ;
  48.     FontSize = CMDFONTSIZE
  49.  
  50. ADD OBJECT sepD2        AS SEPARATOR
  51.  
  52. ADD OBJECT lbl3     AS LABEL WITH ;
  53.     Caption = LBL3CAP_LOC, ;
  54.     AutoSize = .T.,;
  55.     BackStyle = 0, ;
  56.     FontName = CMDFONTNAME, ;
  57.     FontSize = CMDFONTSIZE
  58.  
  59. ADD OBJECT spnPenWidth AS SPINNER WITH ;
  60.     VALUE = 1, ;
  61.     SpinnerLowValue = 1, ;
  62.     SpinnerHighValue = 99, ;
  63.     InputMask = "99", ;
  64.     WIDTH = CMDWIDTH1_LOC, ;
  65.     HEIGHT = CMDHT_LOC,;
  66.     ToolTipText = SPNPENWIDTHTIP_LOC, ;
  67.     FontName = CMDFONTNAME, ;
  68.     FontSize = CMDFONTSIZE
  69.  
  70. ADD OBJECT sepS        AS SEPARATOR
  71.  
  72. ADD OBJECT lbl4     AS LABEL WITH ;
  73.     Caption = LBL4CAP_LOC,;
  74.     AutoSize = .T., ;
  75.     BackStyle = 0, ;
  76.     FontName = CMDFONTNAME, ;
  77.     FontSize = CMDFONTSIZE
  78.  
  79. ADD OBJECT cboPenMode    AS combobox WITH ;
  80.     VALUE = 13, ;
  81.     STYLE = 2, ;
  82.     WIDTH = CMDWIDTH2_LOC, ;
  83.     ToolTipText = CBOPENMODETIP_LOC, ;
  84.     FontName = CMDFONTNAME, ;
  85.     FontSize = CMDFONTSIZE
  86.  
  87. ADD OBJECT sepC1    AS SEPARATOR
  88.  
  89. ADD OBJECT cmdRed    AS commandbutton WITH ;
  90.     HEIGHT = CMDHT_LOC, ;
  91.     WIDTH = CMDWIDTH2_LOC, ;
  92.     Caption = CMDREDCAP_LOC, ;
  93.     ForeColor = RGB(255,0,0), ;
  94.     ToolTipText = CMDREDTIP_LOC, ;
  95.     FontName = CMDFONTNAME, ;
  96.     FontSize = CMDFONTSIZE
  97.  
  98. ADD OBJECT cmdGreen    AS commandbutton WITH ;
  99.     HEIGHT = CMDHT_LOC, ;
  100.     WIDTH = CMDWIDTH2_LOC, ;
  101.     Caption = CMDGREENCAP_LOC, ;
  102.     ForeColor = RGB(0,255,0), ;
  103.     ToolTipText = CMDGREENTIP_LOC, ;
  104.     FontName = CMDFONTNAME, ;
  105.     FontSize = CMDFONTSIZE
  106.  
  107. ADD OBJECT cmdBlue  AS commandbutton WITH ;
  108.     HEIGHT = CMDHT_LOC,;
  109.     WIDTH = CMDWIDTH2_LOC,;
  110.     Caption = CMDBLUECAP_LOC, ;
  111.     ForeColor = RGB(0,0,255),;
  112.     ToolTipText = CMDBLUETIP_LOC, ;
  113.     FontName = CMDFONTNAME, ;
  114.     FontSize = CMDFONTSIZE
  115.  
  116. ADD OBJECT cmdCustom    AS commandbutton WITH;
  117.     HEIGHT = CMDHT_LOC, ;
  118.     WIDTH = CMDWIDTH2_LOC, ;
  119.     Caption = CMDCUSTOMCAP_LOC, ;
  120.     ForeColor = 16711935, ;
  121.     ToolTipText = CMDCUSTOMTIP_LOC, ;
  122.     FontName = CMDFONTNAME, ;
  123.     FontSize = CMDFONTSIZE
  124.  
  125. ADD OBJECT cmdErase    AS commandbutton WITH ;
  126.     HEIGHT = CMDHT_LOC, ;
  127.     WIDTH = CMDWIDTH2_LOC, ;
  128.     Caption = CMDERASECAP_LOC, ;
  129.     ForeColor = RGB(255,255,255), ;
  130.     ToolTipText = CMDERASETIP_LOC, ;
  131.     FontName = CMDFONTNAME, ;
  132.     FontSize = CMDFONTSIZE
  133.  
  134. ADD OBJECT cmdClear    AS commandbutton WITH ;
  135.     HEIGHT = CMDHT_LOC,;
  136.     WIDTH = CMDWIDTH2_LOC, ;
  137.     Caption = CMDCLEARCAP_LOC, ;
  138.     ToolTipText = CMDCLEARTIP_LOC, ;
  139.     FontName = CMDFONTNAME, ;
  140.     FontSize = CMDFONTSIZE
  141.  
  142. ADD OBJECT sepClr1   AS SEPARATOR
  143.  
  144. ADD OBJECT lbl5     AS LABEL WITH ;
  145.     Caption = LBL5CAP_LOC, ;
  146.     AutoSize = .T., ;
  147.     BackStyle = 0, ;
  148.     FontName = CMDFONTNAME, ;
  149.     FontSize = CMDFONTSIZE
  150.  
  151. ADD OBJECT cboGDemo    AS combobox WITH ;
  152.     VALUE = 1, ;
  153.     STYLE = 2, ;
  154.     WIDTH = CMDWIDTH2_LOC, ;
  155.     ToolTipText = CBOGDEMOTIP_LOC, ;
  156.     FontName = CMDFONTNAME, ;
  157.     FontSize = CMDFONTSIZE
  158.  
  159. ADD OBJECT sepCG1    AS SEPARATOR
  160.  
  161. ADD OBJECT cmdDone    AS commandbutton WITH ;
  162.     HEIGHT = CMDHT_LOC, ;
  163.     WIDTH = CMDWIDTH2_LOC, ;
  164.     Caption = CMDDONECAP_LOC, ;
  165.     ToolTipText = CMDDONETIP_LOC, ;
  166.     FontName = CMDFONTNAME, ;
  167.     FontSize = CMDFONTSIZE
  168.  
  169. PROCEDURE Init
  170.     *- Setup and Dock ToolBar
  171.     THIS.Dock(1)
  172.     THIS.ScaleMode = 3
  173.     THIS.Caption = TBRCAP_LOC
  174.     THIS.ControlBox = .F.
  175.     THIS.SetAll('FontSize',8)
  176.     THIS.Visible = .T.
  177.     PUSH KEY
  178.     ON KEY LABEL CTRL+D _SCREEN.ActiveForm.Parent.Release
  179. ENDPROC
  180.  
  181. PROCEDURE BeforeDock
  182.     parameters iLocation
  183.     IF THIS.DockPosition = -1
  184.         THIS.Width = THIS.iLastDockWidth
  185.     ENDIF
  186. ENDPROC
  187.  
  188. PROCEDURE AfterDock
  189.   PARAMETERS iIndex
  190.     IF THIS.DockPosition = 3 OR THIS.DockPosition = 0
  191.         ??chr(7)
  192.         THIS.Dock(-1)
  193.     ENDIF
  194. ENDPROC
  195.  
  196. PROCEDURE Undock
  197.     parameters iIndex
  198.     THIS.WIDTH = 130
  199. ENDPROC
  200.  
  201. PROCEDURE Destroy
  202.     LOCAL lcProcToClose, lcErrorSave
  203.     THIS.Visible = .F.
  204.     THISFORMSET.frmFD.Visible = .F.
  205.     WAIT WINDOW WUNLOAD_LOC NOWAIT NOCLEAR
  206.     _SCREEN.BackColor = RGB(255,255,255)
  207.     RELEASE frmFD, fdmain
  208.     WAIT CLEAR
  209.     RELEASE CLASSLIB foxdraw
  210.     IF TYPE('Main') = "O" AND NOT ISNULL(Main)
  211.         Main.Show
  212.     ELSE
  213.         IF WEXIST('main')
  214.             ACTI WIND main
  215.         ENDIF
  216.     ENDIF
  217.     ON KEY LABEL CTRL+D
  218.     POP KEY
  219. ENDPROC
  220.  
  221. PROCEDURE cmdDraw.Click
  222.     THISFORMSET.frmFD.DrawAction (THISFORMSET.frmFD.MousePointer)
  223.     IF THISFORMSET.frmFD.MousePointer = 1
  224.         THIS.Caption = CMDDRAWCAP1_LOC
  225.     ELSE
  226.         THIS.Caption = CMDDRAWCAP2_LOC
  227.     ENDIF
  228. ENDPROC
  229.  
  230. PROCEDURE cmdDrawMode.Click
  231.     THISFORMSET.frmFD.ChgDrawMode
  232.     IF THISFORMSET.frmFD.nDrawMode = 1
  233.         THIS.Caption = CMDDRAWMODECAP1_LOC
  234.     ELSE
  235.         THIS.Caption = CMDDRAWMODECAP2_LOC
  236.     ENDIF
  237. ENDPROC
  238.  
  239. PROCEDURE spnPenWidth.InteractiveChange
  240.     THISFORMSET.frmFD.SetPenWidth ( THIS.value )
  241.     THISFORMSET.frmFD.SetCaption
  242. ENDPROC
  243.  
  244. PROCEDURE cboPenMode.InteractiveChange
  245.     THISFORMSET.frmFD.SetDrawMode ( THIS.value )
  246. ENDPROC
  247.  
  248. PROCEDURE cboGDemo.Click
  249.     THISFORMSET.frmFD.GraphDemo ( THIS.value )
  250. ENDPROC
  251.  
  252. PROCEDURE cmdRed.CLICK
  253.     THISFORMSET.frmFD.DrawColor ( RGB(255,0,0), THIS.caption )
  254. ENDPROC
  255.  
  256. PROCEDURE cmdGreen.CLICK
  257.     THISFORMSET.frmFD.DrawColor ( RGB(0,255,0), THIS.caption )
  258. ENDPROC
  259.  
  260. PROCEDURE cmdBlue.CLICK
  261.     THISFORMSET.frmFD.DrawColor ( RGB(0,0,255),THIS.caption )
  262. ENDPROC
  263.  
  264. PROCEDURE cmdCustom.CLICK
  265.     LOCAL lnColor
  266.     lnColor = GETCOLOR()
  267.     THISFORMSET.frmFD.DrawColor ( lnColor, THIS.caption )
  268.     THIS.forecolor = lnColor
  269. ENDPROC
  270.  
  271. PROCEDURE cmdErase.CLICK
  272.     THISFORMSET.frmFD.DrawColor ( RGB(255,255,255), THIS.caption )
  273. ENDPROC
  274.  
  275. PROCEDURE cmdClear.CLICK
  276.     THISFORMSET.frmFD.ClearForm
  277. ENDPROC
  278.  
  279. PROCEDURE cmdDone.Click
  280.     _SCREEN.ActiveForm.Hide
  281.     RELEASE THISFORMSET
  282. ENDPROC
  283.  
  284. PROCEDURE cboPenMode.Init
  285.     THIS.AddItem ( CBOPENMODE1_LOC,1)
  286.     THIS.AddItem ( CBOPENMODE2_LOC,2 )
  287.     THIS.AddItem ( CBOPENMODE3_LOC,3 )
  288.     THIS.AddItem ( CBOPENMODE4_LOC,4 )
  289.     THIS.AddItem ( CBOPENMODE5_LOC,5 )
  290.     THIS.AddItem ( CBOPENMODE6_LOC,6 )
  291.     THIS.AddItem ( CBOPENMODE7_LOC,7 )
  292.     THIS.AddItem ( CBOPENMODE8_LOC,8 )
  293.     THIS.AddItem ( CBOPENMODE9_LOC,9 )
  294.     THIS.AddItem ( CBOPENMODE10_LOC,10 )
  295.     THIS.AddItem ( CBOPENMODE11_LOC,11 )
  296.     THIS.AddItem ( CBOPENMODE12_LOC,12 )
  297.     THIS.AddItem ( CBOPENMODE13_LOC,13 )
  298.     THIS.AddItem ( CBOPENMODE14_LOC,14 )
  299.     THIS.AddItem ( CBOPENMODE15_LOC,15 )
  300.     THIS.AddItem ( CBOPENMODE16_LOC,16 )
  301. ENDPROC
  302.  
  303. PROCEDURE cboGDemo.Init
  304.     THIS.AddItem ( CBOGDEMOITEM1_LOC,1 )
  305.     THIS.AddItem ( CBOGDEMOITEM2_LOC,2 )
  306.     THIS.AddItem ( CBOGDEMOITEM3_LOC,3 )
  307.     THIS.AddItem ( CBOGDEMOITEM4_LOC,4 )
  308.     THIS.AddItem ( CBOGDEMOITEM5_LOC,5 )
  309.     THIS.AddItem ( CBOGDEMOITEM6_LOC,6 )
  310.     THIS.AddItem ( CBOGDEMOITEM7_LOC,7 )
  311.     THIS.AddItem ( CBOGDEMOITEM8_LOC,8 )
  312. ENDPROC
  313.  
  314. ENDDEFINE
  315. ** EOF FdProc.prg
  316.