home *** CD-ROM | disk | FTP | other *** search
/ Mastering Visual Basic 6 / mastvb6.iso / leadtools / ocx32.lt / SAVEOPTS.FRM (.txt) < prev    next >
Encoding:
Visual Basic Form  |  1997-05-28  |  19.8 KB  |  741 lines

  1. VERSION 4.00
  2. Begin VB.Form SaveOpts 
  3.    BorderStyle     =   3  'Fixed Dialog
  4.    Caption         =   "File Save Options"
  5.    ClientHeight    =   4200
  6.    ClientLeft      =   1125
  7.    ClientTop       =   2355
  8.    ClientWidth     =   5370
  9.    BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  10.       Name            =   "MS Sans Serif"
  11.       Size            =   8.25
  12.       Charset         =   0
  13.       Weight          =   700
  14.       Underline       =   0   'False
  15.       Italic          =   0   'False
  16.       Strikethrough   =   0   'False
  17.    EndProperty
  18.    Height          =   4605
  19.    Left            =   1065
  20.    LinkTopic       =   "Form1"
  21.    LockControls    =   -1  'True
  22.    MaxButton       =   0   'False
  23.    MinButton       =   0   'False
  24.    ScaleHeight     =   4200
  25.    ScaleWidth      =   5370
  26.    ShowInTaskbar   =   0   'False
  27.    Top             =   2010
  28.    Width           =   5490
  29.    Begin VB.CheckBox SaveStampCheck 
  30.       Alignment       =   1  'Right Justify
  31.       Caption         =   "&Save Stamp"
  32.       Height          =   270
  33.       Left            =   3780
  34.       TabIndex        =   18
  35.       Top             =   3120
  36.       Width           =   1410
  37.    End
  38.    Begin VB.ComboBox Flavors 
  39.       Height          =   300
  40.       Left            =   210
  41.       Style           =   2  'Dropdown List
  42.       TabIndex        =   17
  43.       Top             =   3120
  44.       Width           =   2490
  45.    End
  46.    Begin VB.ListBox Format 
  47.       Height          =   2205
  48.       ItemData        =   "Saveopts.frx":0000
  49.       Left            =   210
  50.       List            =   "Saveopts.frx":0064
  51.       TabIndex        =   1
  52.       Top             =   360
  53.       Width           =   2475
  54.    End
  55.    Begin VB.Frame QfactorFrame 
  56.       Caption         =   "QFactor"
  57.       Height          =   1125
  58.       Left            =   2895
  59.       TabIndex        =   12
  60.       Top             =   1455
  61.       Width           =   2265
  62.       Begin VB.TextBox CustomQBox 
  63.          Alignment       =   1  'Right Justify
  64.          Height          =   300
  65.          Left            =   180
  66.          TabIndex        =   15
  67.          Text            =   "20"
  68.          Top             =   705
  69.          Width           =   465
  70.       End
  71.       Begin VB.HScrollBar CustomQBar 
  72.          Height          =   285
  73.          Left            =   735
  74.          TabIndex        =   14
  75.          Top             =   705
  76.          Width           =   1395
  77.       End
  78.       Begin VB.ComboBox PredefQ 
  79.          Height          =   300
  80.          ItemData        =   "Saveopts.frx":01A8
  81.          Left            =   180
  82.          List            =   "Saveopts.frx":01C7
  83.          Style           =   2  'Dropdown List
  84.          TabIndex        =   13
  85.          Top             =   285
  86.          Width           =   1950
  87.       End
  88.    End
  89.    Begin VB.CommandButton Cancel 
  90.       Cancel          =   -1  'True
  91.       Caption         =   "Cancel"
  92.       Height          =   375
  93.       Left            =   2880
  94.       TabIndex        =   11
  95.       Top             =   3630
  96.       Width           =   1200
  97.    End
  98.    Begin VB.CommandButton OK 
  99.       Caption         =   "OK"
  100.       Default         =   -1  'True
  101.       Height          =   375
  102.       Left            =   1275
  103.       TabIndex        =   10
  104.       Top             =   3630
  105.       Width           =   1200
  106.    End
  107.    Begin VB.CheckBox MultipageCheck 
  108.       Alignment       =   1  'Right Justify
  109.       Caption         =   "&Append"
  110.       Height          =   300
  111.       Left            =   4170
  112.       TabIndex        =   9
  113.       Top             =   2730
  114.       Width           =   1020
  115.    End
  116.    Begin VB.Frame Frame2 
  117.       Caption         =   "Save As"
  118.       Height          =   1125
  119.       Left            =   2895
  120.       TabIndex        =   2
  121.       Top             =   165
  122.       Width           =   2265
  123.       Begin VB.OptionButton Bit 
  124.          Caption         =   "&1 Bit"
  125.          Height          =   240
  126.          Index           =   1
  127.          Left            =   100
  128.          TabIndex        =   8
  129.          Top             =   240
  130.          Value           =   -1  'True
  131.          Width           =   800
  132.       End
  133.       Begin VB.OptionButton Bit 
  134.          Caption         =   "&4 Bit"
  135.          Height          =   240
  136.          Index           =   4
  137.          Left            =   100
  138.          TabIndex        =   7
  139.          Top             =   510
  140.          Width           =   800
  141.       End
  142.       Begin VB.OptionButton Bit 
  143.          Caption         =   "&8 Bit"
  144.          Height          =   240
  145.          Index           =   8
  146.          Left            =   100
  147.          TabIndex        =   6
  148.          Top             =   780
  149.          Width           =   800
  150.       End
  151.       Begin VB.OptionButton Bit 
  152.          Caption         =   "1&6 Bit"
  153.          Height          =   240
  154.          Index           =   16
  155.          Left            =   1300
  156.          TabIndex        =   5
  157.          Top             =   240
  158.          Width           =   915
  159.       End
  160.       Begin VB.OptionButton Bit 
  161.          Caption         =   "&24 Bit"
  162.          Height          =   240
  163.          Index           =   24
  164.          Left            =   1300
  165.          TabIndex        =   4
  166.          Top             =   510
  167.          Width           =   915
  168.       End
  169.       Begin VB.OptionButton Bit 
  170.          Caption         =   "&32 Bit"
  171.          Height          =   240
  172.          Index           =   32
  173.          Left            =   1300
  174.          TabIndex        =   3
  175.          Top             =   780
  176.          Width           =   915
  177.       End
  178.    End
  179.    Begin VB.Label FlavorsLabel 
  180.       Caption         =   "Fla&vors:"
  181.       Height          =   240
  182.       Left            =   210
  183.       TabIndex        =   16
  184.       Top             =   2850
  185.       Width           =   1485
  186.    End
  187.    Begin VB.Label Label1 
  188.       Caption         =   "&Format:"
  189.       Height          =   200
  190.       Left            =   195
  191.       TabIndex        =   0
  192.       Top             =   120
  193.       Width           =   1650
  194.    End
  195. Attribute VB_Name = "SaveOpts"
  196. Attribute VB_Creatable = False
  197. Attribute VB_Exposed = False
  198. Dim fUserGo As Boolean
  199. Dim nBitsIndex As Integer
  200. Dim nQFactor As Integer
  201. Dim QFactorChanged As Boolean
  202. Dim fMultipageInit As Boolean
  203. Dim StampWidth As Integer
  204. Dim StampHeight As Integer
  205. Dim StampBits As Integer
  206. Public Sub GetOptions(fGo As Boolean, nSaveIdx%, nFormat%, nBitsToSave%, nQFactor%, fMultipage As Boolean, fStamp As Boolean)
  207. fGo = fUserGo
  208. nSaveIdx = Format.ListIndex
  209. nBitsToSave = nBitsIndex
  210. nQFactor = 0
  211. fMultipage = fMultipageInit
  212. fStamp = False
  213. Select Case Format.ListIndex
  214.   Case SO_LEAD
  215.     nQFactor = CInt(CustomQBox.Text)
  216.     If Bit(1).Value = True Then
  217.       nFormat = FILE_LEAD1BIT
  218.     Else
  219.       nFormat = FILE_LEAD
  220.       If nQFactor = 0 Or nQFactor = 1 Then
  221.         nQFactor = 2
  222.       End If
  223.       If SaveStampCheck.Value = 1 Then
  224.         fStamp = True
  225.       End If
  226.     End If
  227.   Case SO_JFIF
  228.     Select Case Flavors.ListIndex
  229.       Case 0
  230.         nFormat = FILE_JFIF
  231.       Case 1
  232.         nFormat = FILE_LEAD2JFIF
  233.       Case 2
  234.         nFormat = FILE_LEAD1JFIF
  235.     End Select
  236.     nQFactor = CInt(CustomQBox.Text)
  237.     If SaveStampCheck.Value = 1 Then
  238.       fStamp = True
  239.     End If
  240.   Case SO_JTIF
  241.     Select Case Flavors.ListIndex
  242.       Case 0
  243.         nFormat = FILE_JTIF
  244.       Case 1
  245.         nFormat = FILE_LEAD2JTIF
  246.       Case 2
  247.         nFormat = FILE_LEAD1JTIF
  248.     End Select
  249.     nQFactor = CInt(CustomQBox.Text)
  250.   Case SO_AWD
  251.     nFormat = FILE_AWD
  252.   Case SO_CALS
  253.     nFormat = FILE_CALS
  254.   Case SO_CUR
  255.     nFormat = FILE_WIN_CUR
  256.   Case SO_CCITT
  257.     Select Case Flavors.ListIndex
  258.       Case 0
  259.         nFormat = FILE_CCITT
  260.       Case 1
  261.         nFormat = FILE_CCITT_GROUP3_1DIM
  262.       Case 2
  263.         nFormat = FILE_CCITT_GROUP3_2DIM
  264.       Case 3
  265.         nFormat = FILE_CCITT_GROUP4
  266.     End Select
  267.   Case SO_DIC_GRAY
  268.     nFormat = FILE_DICOM_GRAY
  269.   Case SO_DIC_COLOR
  270.     nFormat = FILE_DICOM_COLOR
  271.   Case SO_EXIF
  272.     Select Case Flavors.ListIndex
  273.       Case 0
  274.         nFormat = FILE_EXIF
  275.       Case 1
  276.         nFormat = FILE_EXIF_YCC
  277.       Case 2
  278.         nFormat = FILE_EXIF_JPEG
  279.         nQFactor = CInt(CustomQBox.Text)
  280.     End Select
  281.   Case SO_FAX
  282.     Select Case Flavors.ListIndex
  283.       Case 0
  284.         nFormat = FILE_FAX_G3_1D
  285.       Case 1
  286.         nFormat = FILE_FAX_G3_2D
  287.       Case 2
  288.         nFormat = FILE_FAX_G4
  289.     End Select
  290.   Case SO_EPS
  291.     nFormat = FILE_EPS
  292.   Case SO_FPX
  293.     Select Case Flavors.ListIndex
  294.       Case 0
  295.         nFormat = FILE_FPX
  296.       Case 1
  297.         nFormat = FILE_FPX_SINGLE_COLOR
  298.       Case 2
  299.         nFormat = FILE_FPX_JPEG
  300.       Case 3
  301.         nFormat = FILE_FPX_JPEG_QFACTOR
  302.         nQFactor = CInt(CustomQBox.Text)
  303.     End Select
  304.   Case SO_GEM
  305.     nFormat = FILE_IMG
  306.   Case SO_GIF
  307.     nFormat = FILE_GIF
  308.   Case SO_ICO
  309.     nFormat = FILE_WIN_ICO
  310.   Case SO_IOCA
  311.     Select Case Flavors.ListIndex
  312.       Case 0
  313.         nFormat = FILE_ICA_G3_1D
  314.       Case 1
  315.         nFormat = FILE_ICA_G3_2D
  316.       Case 2
  317.         nFormat = FILE_ICA_G4
  318.     End Select
  319.   Case SO_PCT
  320.     nFormat = FILE_PCT
  321.   Case SO_PNG
  322.     nFormat = FILE_PNG
  323.   Case SO_PSD
  324.     nFormat = FILE_PSD
  325.   Case SO_MAC
  326.     nFormat = FILE_MAC
  327.   Case SO_MSP
  328.     nFormat = FILE_MSP
  329.   Case SO_OS2
  330.     nFormat = FILE_OS2
  331.   Case SO_PCX
  332.     nFormat = FILE_PCX
  333.   Case SO_RAS
  334.     nFormat = FILE_RAS
  335.   Case SO_TGA
  336.     nFormat = FILE_TGA
  337.   Case SO_TIF
  338.     Select Case Flavors.ListIndex
  339.       Case 0
  340.         nFormat = FILE_TIF
  341.       Case 1
  342.         nFormat = FILE_TIFLZW
  343.       Case 2
  344.         nFormat = FILE_TIF_CMYK
  345.       Case 3
  346.         nFormat = FILE_TIFLZW_CMYK
  347.       Case 4
  348.         nFormat = FILE_TIF_PACKBITS
  349.       Case 5
  350.         nFormat = FILE_TIF_PACKBITS_CMYK
  351.       Case 6
  352.         nFormat = FILE_TIF_YCC
  353.       Case 7
  354.         nFormat = FILE_TIFLZW_YCC
  355.       Case 8
  356.         nFormat = FILE_TIF_PACKBITS_YCC
  357.     End Select
  358.   Case SO_WBMP
  359.     nFormat = FILE_BMP
  360.   Case SO_WBMP_RLE
  361.     nFormat = FILE_BMP_RLE
  362.   Case SO_WFX
  363.     Select Case Flavors.ListIndex
  364.       Case 0
  365.         nFormat = FILE_WFX_G3_1D
  366.       Case 1
  367.         nFormat = FILE_WFX_G4
  368.     End Select
  369.   Case SO_WMF
  370.     nFormat = FILE_WMF
  371.   Case SO_WPG
  372.     nFormat = FILE_WPG
  373. End Select
  374. End Sub
  375. Public Sub GetStampOptions(nWidth%, nHeight%, nBits%)
  376. nWidth = StampWidth
  377. nHeight = StampHeight
  378. nBits = StampBits
  379. End Sub
  380. Private Sub DisplayStampOpts(fOK As Boolean)
  381. Dim fStampOK As Boolean
  382. Dim fPalettized As Boolean
  383. Dim Value1 As Integer
  384. Dim Value2 As Integer
  385. Load Resize
  386. Resize.InitTheForm STAMP_TYPE
  387. Resize.Show 1
  388. Resize.GetResults fStampOK, Value1, Value2, fPalettized
  389. Unload Resize
  390. fOK = fStampOK
  391. If fStampOK Then
  392.   StampWidth = Value1
  393.   StampHeight = Value2
  394.   If fPalettized Then
  395.     StampBits = 8
  396.   Else
  397.     StampBits = 24
  398.   End If
  399. End If
  400. End Sub
  401. Public Sub InitTheForm(nSaveIdx%, fMultipage As Boolean)
  402. QFactorChanged = False
  403. Format.ListIndex = nSaveIdx
  404. fMultipageInit = fMultipage
  405. fUserGo = False
  406. End Sub
  407. Private Sub SetFlavors(nIndex)
  408. Flavors.Enabled = True
  409. Flavors.Clear
  410. Flavors.Enabled = False
  411. FlavorsLabel.Enabled = False
  412. Select Case nIndex
  413.   Case SO_JFIF, SO_JTIF
  414.     FlavorsLabel.Enabled = True
  415.     Flavors.Enabled = True
  416.     Flavors.AddItem "4:4:4"
  417.     Flavors.AddItem "4:2:2"
  418.     Flavors.AddItem "4:1:1"
  419.     Flavors.ListIndex = 0
  420.   Case SO_EXIF
  421.     FlavorsLabel.Enabled = True
  422.     Flavors.Enabled = True
  423.     Flavors.AddItem "RGB"
  424.     Flavors.AddItem "YCC"
  425.     Flavors.AddItem "JPEG"
  426.     Flavors.ListIndex = 0
  427.   Case SO_FPX
  428.     FlavorsLabel.Enabled = True
  429.     Flavors.Enabled = True
  430.     Flavors.AddItem "Uncompressed"
  431.     Flavors.AddItem "Single Color"
  432.     Flavors.AddItem "JPEG Def. QFactor"
  433.     Flavors.AddItem "JPEG User QFactor"
  434.     Flavors.ListIndex = 0
  435.   Case SO_CCITT, SO_FAX, SO_IOCA, SO_WFX
  436.     FlavorsLabel.Enabled = True
  437.     Flavors.Enabled = True
  438.     If nIndex = SO_CCITT Then
  439.       Flavors.AddItem "CCITT"
  440.     End If
  441.     Flavors.AddItem "G3 1D"
  442.     If nIndex <> SO_WFX Then
  443.       Flavors.AddItem "G3 2D"
  444.     End If
  445.     Flavors.AddItem "G4"
  446.     Flavors.ListIndex = 0
  447.   Case SO_TIF
  448.     FlavorsLabel.Enabled = True
  449.     Flavors.Enabled = True
  450.     Flavors.AddItem "Uncompressed RGB"
  451.     Flavors.AddItem "LZW RGB"
  452.     Flavors.AddItem "Uncompressed CMYK"
  453.     Flavors.AddItem "LZW CMYK"
  454.     Flavors.AddItem "Packbits RGB"
  455.     Flavors.AddItem "Packbits CMYK"
  456.     Flavors.AddItem "Uncompressed YCC"
  457.     Flavors.AddItem "LZW YCC"
  458.     Flavors.AddItem "Packbits YCC"
  459.     Flavors.ListIndex = 0
  460. End Select
  461. End Sub
  462. Private Sub SetBits(nIndex)
  463. Bit(1).Enabled = True
  464. Bit(4).Enabled = True
  465. Bit(8).Enabled = True
  466. Bit(16).Enabled = True
  467. Bit(24).Enabled = True
  468. Bit(32).Enabled = True
  469. Select Case nIndex
  470.   Case SO_DIC_GRAY
  471.     Bit(8).Value = True
  472.     Bit(1).Enabled = False
  473.     Bit(4).Enabled = False
  474.     Bit(16).Enabled = False
  475.     Bit(24).Enabled = False
  476.     Bit(32).Enabled = False
  477.   Case SO_DIC_COLOR
  478.     Bit(24).Value = True
  479.     Bit(1).Enabled = False
  480.     Bit(4).Enabled = False
  481.     Bit(8).Enabled = False
  482.     Bit(16).Enabled = False
  483.     Bit(32).Enabled = False
  484.   Case SO_FPX
  485.     Bit(24).Value = True
  486.     Bit(1).Enabled = False
  487.     Bit(4).Enabled = False
  488.     Bit(16).Enabled = False
  489.     Bit(32).Enabled = False
  490.   Case SO_EXIF
  491.     Bit(24).Value = True
  492.     Bit(1).Enabled = False
  493.     Bit(4).Enabled = False
  494.     Bit(8).Enabled = False
  495.     Bit(16).Enabled = False
  496.     Bit(32).Enabled = False
  497.   Case SO_ICO
  498.     Bit(4).Value = True
  499.     Bit(1).Enabled = False
  500.     Bit(8).Enabled = False
  501.     Bit(16).Enabled = False
  502.     Bit(24).Enabled = False
  503.     Bit(32).Enabled = False
  504.   Case SO_LEAD, SO_JFIF, SO_JTIF, SO_WMF
  505.     Bit(24).Value = True
  506.     If nIndex <> SO_LEAD Then
  507.       Bit(1).Enabled = False
  508.     End If
  509.     Bit(4).Enabled = False
  510.     If nIndex = SO_JTIF Then
  511.       Bit(8).Enabled = False
  512.     End If
  513.     Bit(16).Enabled = False
  514.     Bit(32).Enabled = False
  515.   Case SO_CALS, SO_CCITT, SO_FAX, SO_GEM, SO_IOCA, SO_MAC, SO_MSP, SO_WFX, SO_AWD, SO_CUR
  516.     Bit(1).Value = True
  517.     Bit(4).Enabled = False
  518.     Bit(8).Enabled = False
  519.     Bit(16).Enabled = False
  520.     Bit(24).Enabled = False
  521.     Bit(32).Enabled = False
  522.   Case SO_EPS, SO_GIF
  523.     Bit(8).Value = True
  524.     Bit(1).Enabled = False
  525.     Bit(4).Enabled = False
  526.     Bit(16).Enabled = False
  527.     Bit(24).Enabled = False
  528.     Bit(32).Enabled = False
  529.   Case SO_PCT, SO_OS2, SO_PCX, SO_PNG
  530.     Bit(8).Value = True
  531.     Bit(16).Enabled = False
  532.     Bit(32).Enabled = False
  533.   Case SO_WBMP
  534.     Bit(8).Value = True
  535.     Bit(16).Enabled = True
  536.     Bit(24).Enabled = True
  537.     Bit(32).Enabled = True
  538.   Case SO_WBMP_RLE
  539.     Bit(8).Value = True
  540.     Bit(1).Enabled = False
  541.     Bit(16).Enabled = False
  542.     Bit(24).Enabled = False
  543.     Bit(32).Enabled = False
  544.   Case SO_PSD
  545.     Bit(8).Value = True
  546.     Bit(4).Enabled = False
  547.     Bit(16).Enabled = False
  548.     Bit(32).Enabled = False
  549.   Case SO_RAS
  550.     Bit(24).Value = True
  551.     Bit(16).Enabled = False
  552.   Case SO_TGA
  553.     Bit(24).Value = True
  554.     Bit(1).Enabled = False
  555.     Bit(4).Enabled = False
  556.   Case SO_TIF
  557.     Select Case Flavors.ListIndex
  558.         Case 0, 1, 4
  559.             Bit(24).Value = True
  560.         Case 2, 3, 5
  561.             Bit(32).Value = True
  562.             Bit(1).Enabled = False
  563.             Bit(4).Enabled = False
  564.             Bit(8).Enabled = False
  565.             Bit(16).Enabled = False
  566.             Bit(24).Enabled = False
  567.         Case 6, 7, 8
  568.             Bit(24).Value = True
  569.             Bit(1).Enabled = False
  570.             Bit(4).Enabled = False
  571.             Bit(8).Enabled = False
  572.             Bit(16).Enabled = False
  573.             Bit(32).Enabled = False
  574.     End Select
  575.   Case SO_WPG
  576.     Bit(8).Value = True
  577.     Bit(16).Enabled = False
  578.     Bit(24).Enabled = False
  579.     Bit(32).Enabled = False
  580. End Select
  581. End Sub
  582. Private Sub SetMultipage(nIndex)
  583. MultipageCheck.Value = 2
  584. MultipageCheck.Enabled = False
  585. Select Case nIndex
  586.   Case SO_TIF, SO_CCITT, SO_WFX, SO_PCX
  587.     MultipageCheck.Enabled = True
  588.     If fMultipageInit = True Then
  589.       MultipageCheck.Value = 1
  590.     Else
  591.       MultipageCheck.Value = 0
  592.     End If
  593. End Select
  594. End Sub
  595. Private Sub SetQFactor(nIndex)
  596. PredefQ.Enabled = True
  597. PredefQ.Clear
  598. PredefQ.Enabled = False
  599. CustomQBox.Enabled = False
  600. CustomQBar.Enabled = False
  601. QfactorFrame.Enabled = False
  602. SaveStampCheck.Value = 2
  603. SaveStampCheck.Enabled = False
  604. Select Case nIndex
  605.   Case SO_LEAD, SO_JFIF, SO_JTIF, SO_FPX, SO_EXIF
  606.     QfactorFrame.Enabled = True
  607.     PredefQ.Enabled = True
  608.     PredefQ.AddItem "PQ1"
  609.     PredefQ.AddItem "PQ2"
  610.     PredefQ.AddItem "QFS"
  611.     PredefQ.AddItem "QMS"
  612.     PredefQ.AddItem "QS"
  613.     PredefQ.AddItem "SQS"
  614.     PredefQ.AddItem "SQT"
  615.     PredefQ.AddItem "MCQ"
  616.     PredefQ.AddItem "MC"
  617.     PredefQ.AddItem "CUSTOM"
  618.     CustomQBox.Enabled = True
  619.     CustomQBar.Enabled = True
  620.     If nIndex = SO_LEAD Then
  621.       CustomQBar.Min = QFACTOR_MC
  622.     Else
  623.       CustomQBar.Min = 2
  624.     End If
  625.     CustomQBar.Max = 255
  626.     CustomQBar.SmallChange = 1
  627.     CustomQBar.LargeChange = 10
  628.     CustomQBar.Value = 20
  629.     If nIndex = SO_LEAD Then
  630.       Flavors.Enabled = True
  631.       Flavors.Clear
  632.       Flavors.Enabled = False
  633.       FlavorsLabel.Enabled = False
  634.       If Bit(1).Value = True Then
  635.         PredefQ.Clear
  636.         PredefQ.AddItem "LEAD_0"
  637.         PredefQ.AddItem "LEAD_1"
  638.       End If
  639.       PredefQ.ListIndex = 0
  640.       CustomQBox.Enabled = False
  641.       CustomQBar.Enabled = False
  642.       If Bit(1).Value = 0 Then
  643.         SaveStampCheck.Value = 0
  644.         SaveStampCheck.Enabled = True
  645.       End If
  646.     Else
  647.       PredefQ.ListIndex = QF_CUSTOM
  648.       PredefQ.Enabled = False
  649.       CustomQBox.Enabled = True
  650.       CustomQBar.Enabled = True
  651.       If nIndex = SO_JFIF Then
  652.         SaveStampCheck.Value = 0
  653.         SaveStampCheck.Enabled = True
  654.       End If
  655.     End If
  656. End Select
  657. End Sub
  658. Private Sub BIT_Click(Index As Integer)
  659. nBitsIndex = Index
  660. If Format.ListIndex = SO_LEAD Then
  661.   SetQFactor (SO_LEAD)
  662. End If
  663. End Sub
  664. Private Sub Cancel_Click()
  665. End Sub
  666. Private Sub CustomQBar_Change()
  667. If QFactorChanged = False Then
  668.   QFactorChanged = True
  669.   CustomQBox.Text = CStr(CustomQBar.Value)
  670.   QFactorChanged = False
  671. End If
  672. End Sub
  673. Private Sub CustomQBox_Change()
  674. If QFactorChanged = False Then
  675.   QFactorChanged = True
  676.   If CInt(CustomQBox.Text) <= 255 And CInt(CustomQBox.Text) >= 2 Then
  677.     CustomQBar.Value = CInt(CustomQBox.Text)
  678.   End If
  679.   QFactorChanged = False
  680. End If
  681. End Sub
  682. Private Sub Flavors_Change()
  683.     SetBits Format.ListIndex
  684. End Sub
  685. Private Sub Flavors_Click()
  686.     SetBits Format.ListIndex
  687. End Sub
  688. Private Sub Form_Load()
  689. left = (Screen.Width - Width) / 2
  690. top = (Screen.Height - Height) / 2
  691. End Sub
  692. Private Sub Format_Click()
  693.   SetFlavors (Format.ListIndex)
  694.   SetBits (Format.ListIndex)
  695.   SetQFactor (Format.ListIndex)
  696.   SetMultipage (Format.ListIndex)
  697. End Sub
  698. Private Sub MultipageCheck_Click()
  699. If MultipageCheck.Value = 1 Then
  700.   fMultipageInit = True
  701.   fMultipageInit = False
  702. End If
  703. End Sub
  704. Private Sub OK_Click()
  705. Dim fOK As Boolean
  706. If Format.ListIndex = SO_LEAD Then
  707.   If CInt(CustomQBox.Text) > 255 Or CInt(CustomQBox.Text) < -9 Then
  708.     Exit Sub
  709.   End If
  710. ElseIf Format.ListIndex = SO_JFIF Or Format.ListIndex = SO_JTIF Then
  711.   If CInt(CustomQBox.Text) > 255 Or CInt(CustomQBox.Text) < 2 Then
  712.     Exit Sub
  713.   End If
  714. End If
  715. fOK = True
  716. If SaveStampCheck.Value = 1 Then
  717.   DisplayStampOpts fOK
  718. End If
  719. If fOK Then
  720.   fUserGo = True
  721.   Hide
  722. End If
  723. End Sub
  724. Private Sub PredefQ_Click()
  725. If PredefQ.ListIndex = QF_CUSTOM Then
  726.   CustomQBar.Enabled = True
  727.   CustomQBox.Enabled = True
  728.   If CInt(CustomQBox.Text) < 2 Then
  729.     CustomQBox.Text = "20"
  730.   End If
  731.   CustomQBox.Enabled = True
  732.   If Bit(1).Value = True Then
  733.     CustomQBox.Text = CStr(PredefQ.ListIndex)
  734.   Else
  735.     CustomQBox.Text = CStr(-PredefQ.ListIndex - 1)
  736.   End If
  737.   CustomQBar.Enabled = False
  738.   CustomQBox.Enabled = False
  739. End If
  740. End Sub
  741.