home *** CD-ROM | disk | FTP | other *** search
- Attribute VB_Name = "mDeclares"
- Option Explicit
-
- ' I usually put constants, types, and functions in the forms/modules/classes
- ' that call them, but this project had so many (and the potential to have
- ' even more), I decided to put them all in one module.
-
- ' Constants.
- Public Const CCDEVICENAME = 32&
- Public Const CCFORMNAME = 32&
- Public Const DM_PELSWIDTH = &H80000
- Public Const DM_PELSHEIGHT = &H100000
-
- Public Const GW_CHILD = 5&
- Public Const GWL_WNDPROC = -4&
- Public Const GWL_HINSTANCE = -6&
- Public Const GWL_HWNDPARENT = -8&
- Public Const GWL_STYLE = -16&
- Public Const GWL_EXSTYLE = -20&
- Public Const GWL_USERDATA = -21&
- Public Const GWL_ID = -12&
- Public Const WS_CHILD = &H40000000
- Public Const SWP_NOMOVE = 2&
- Public Const SWP_NOSIZE = 1&
- Public Const FLAGS = SWP_NOMOVE& Or SWP_NOSIZE&
- Public Const HWND_TOPMOST = -1&
- Public Const HWND_NOTOPMOST = -2&
- Public Const SPI_SCREENSAVERRUNNING = 97&
-
- Public Const Pi As Single = 3.14159265358979
- Public Const PiDiv180 As Single = 1.74532925199433E-02
- Public Const TPi As Single = 6.28318530717959
-
- Public Const HORZRES = 8&
- Public Const VERTRES = 10&
-
- ' Types.
- Public Type tPoint
- X As Long
- Y As Long
- End Type
-
- Public Type RECT
- Left As Long
- Top As Long
- Right As Long
- Bottom As Long
- End Type
-
- Public Type RGBQUAD
- b As Byte
- g As Byte
- r As Byte
- a As Byte
- End Type
-
- Public Type SAFEARRAYBOUND
- cElements As Long
- lLbound As Long
- End Type
-
- Public Type SAFEARRAY2D
- cDims As Integer
- fFeatures As Integer
- cbElements As Long
- cLocks As Long
- pvData As Long
- Bounds(1) As SAFEARRAYBOUND
- End Type
-
- Public Type DEVMODE
- dmDeviceName As String * CCDEVICENAME
- dmSpecVersion As Integer
- dmDriverVersion As Integer
- dmSize As Integer
- dmDriverExtra As Integer
-
- dmFields As Long
- dmOrientation As Integer
- dmPaperSize As Integer
- dmPaperLength As Integer
- dmPaperWidth As Integer
- dmScale As Integer
- dmCopies As Integer
- dmDefaultSource As Integer
- dmPrintQuality As Integer
- dmColor As Integer
- dmDuplex As Integer
- dmYResolution As Integer
- dmTTOption As Integer
- dmCollate As Integer
-
- dmFormName As String * CCFORMNAME
- dmUnusedPadding As Integer
- dmBitsPerPel As Integer
- dmPelsWidth As Long
- dmPelsHeight As Long
- dmDisplayFlags As Long
- dmDisplayFrequency As Long
- End Type
-
- Public Type udtFrameRate
- Text As String
- Value As Long
- Ticks As Long
- End Type
-
- ' Used to read/write blur settings in INI.
- Public Type udtBlurSettings
- Enabled As Long
- Quick As Long
- Strength As Long
- End Type
-
- ' Used to read/write buffer settings in INI.
- Public Type udtBufferSettings
- Width As Long
- Height As Long
- ScreenIndex As Long
- BackColor As Long
- FillColor As Long
- StretchMode As Long
- DisplayFrameRate As Long
- End Type
-
- ' Used to read/write flower settings in INI.
- Public Type udtFlowerSettings
- FlowerCount As Long
- PetalCount As Long
- PetalWidth As Long
- PetalPointiness As Long
- End Type
-
- Public Type udtSettings
- Mode As String
- Flower As udtFlowerSettings
- Buffer As udtBufferSettings
- Blur As udtBlurSettings
- End Type
-
- Public Type udtFlowerColorPart
- Value As Integer
- Direction As Integer
- End Type
-
- Public Type udtFlowerColor
- r As udtFlowerColorPart
- g As udtFlowerColorPart
- b As udtFlowerColorPart
- End Type
-
- ' Used to render the flowers.
- Public Type udtFlower
-
- Points(3) As tPoint
- Center As tPoint
- Direction As tPoint ' not really, but 2 related values
-
- Bounce As Single
- BounceRate As Single
-
- Color As udtFlowerColor
-
- Angle As Long
- SpiMode As StrinlowerSet ' As Integer
- no read/write buffer mlur fErColor
-
- &o1te flower settBngs
- Melatedl
- 'tfertef"lTSM As).soelatedl
- 'tfertef"lnO-S dDoene Blur As udtBl As Singls).soelatedl
- REdDoene Bls7Part
- g As udt1it
- t8t