Source code of file oscpmwin_v0.4.1.723/config.pas from the
osCommerce Product Manager for Windows.


0000:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0001:   osCommerce Product Manager for Windows (oscpmwin).
0002:   0003:   
0004:   You can contact Mario A. Valdez-Ramirez
0005:   by email at mario@mariovaldez.org or paper mail at
0006:   Olmos 809, San Nicolas, NL. 66495, Mexico.
0007:   
0008:   This program is free software; you can redistribute it and/or modify
0009:   it under the terms of the GNU General Public License as published by
0010:   the Free Software Foundation; either version 2 of the License, or (at
0011:   your option) any later version.
0012:   
0013:   This program is distributed in the hope that it will be useful, but
0014:   WITHOUT ANY WARRANTY; without even the implied warranty of
0015:   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
0016:   General Public License for more details.
0017:   
0018:   You should have received a copy of the GNU General Public License
0019:   along with this program; if not, write to the Free Software
0020:   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
0021:   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0022:   unit config;
0023:   
0024:   interface
0025:   
0026:   uses
0027:     SysUtils, Classes, Graphics, Controls, Forms,
0028:     Dialogs, StdCtrls, Buttons, Spin, ExtCtrls, ComCtrls, FR_DSet,
0029:     FR_Desgn, FR_Class;
0030:   
0031:   type
0032:     Topm_Form_Config = class(TForm)
0033:       opm_BitBtn_ConfigOk: TBitBtn;
0034:       opm_BitBtn_ConfigCancel: TBitBtn;
0035:       opm_PageControl_Config: TPageControl;
0036:       opm_TabSheet_ConfigGeneral: TTabSheet;
0037:       opm_TabSheet_ConfigUI: TTabSheet;
0038:       opm_GroupBox_inter: TGroupBox;
0039:       Bevel4: TBevel;
0040:       opm_CheckBox_ConfigRemember: TCheckBox;
0041:       opm_CheckBox_ConfigHotTrack: TCheckBox;
0042:       opm_CheckBox_ConfigAutoload: TCheckBox;
0043:       opm_CheckBox_ConfigDragDrop: TCheckBox;
0044:       opm_CheckBox_ConfigTooltips: TCheckBox;
0045:       opm_CheckBox_ConfigSilent: TCheckBox;
0046:       opm_TabSheet_ConfigImg: TTabSheet;
0047:       opm_GroupBox_ImgConv: TGroupBox;
0048:       opm_CheckBox_ConfigResizeImg: TCheckBox;
0049:       opm_Label_ConfigImgResize: TLabel;
0050:       opm_SpinEdit_ConfigImgX: TSpinEdit;
0051:       opm_SpinEdit_ConfigImgY: TSpinEdit;
0052:       opm_Label_ConfigImgXSymbol: TLabel;
0053:       opm_SpinEdit_ConfigImgQ: TSpinEdit;
0054:       opm_Label_ConfigImgJPEGQuality: TLabel;
0055:       opm_OpenDialog_ConfigINI: TOpenDialog;
0056:       opm_SaveDialog_ConfigINI: TSaveDialog;
0057:       opm_GroupBox_inter2: TGroupBox;
0058:       opm_BitBtn_ConfigReset: TBitBtn;
0059:       Bevel2: TBevel;
0060:       opm_CheckBox_ConfigDragUps: TCheckBox;
0061:       opm_CheckBox_ConfigConfirmDels: TCheckBox;
0062:       opm_CheckBox_ConfigConfirmDrag: TCheckBox;
0063:       opm_CheckBox_ConfigConfirmMods: TCheckBox;
0064:       opm_CheckBox_ConfigConfirmUps: TCheckBox;
0065:       opm_CheckBox_ConfigAutoDownImg: TCheckBox;
0066:       opm_CheckBox_ConfigNoCacheImg: TCheckBox;
0067:       Bevel1: TBevel;
0068:       opm_CheckBox_ConfigConfirmExit: TCheckBox;
0069:       opm_CheckBox_ConfigConfirmImgDels: TCheckBox;
0070:       opm_Label_ConfigJPEGQCategory: TLabel;
0071:       opm_TabSheet_ConfigMods: TTabSheet;
0072:       opm_CheckBox_ConfigPaddingImg: TCheckBox;
0073:       opm_CheckBox_ConfigKeepARImg: TCheckBox;
0074:       opm_BitBtn_ConfigColSel: TBitBtn;
0075:       opm_Panel_ConfigColSel: TPanel;
0076:       opm_GroupBox_INI: TGroupBox;
0077:       opm_BitBtn_ConfigLoadINI: TBitBtn;
0078:       opm_BitBtn_ConfigSaveINI: TBitBtn;
0079:       opm_TabSheet_ConfigUI2: TTabSheet;
0080:       opm_GroupBox_Lang: TGroupBox;
0081:       opm_Label_ConfigUILang: TLabel;
0082:       opm_ComboBox_ConfigUILang: TComboBox;
0083:       opm_Label_ConfigUILangDesc: TLabel;
0084:       Bevel3: TBevel;
0085:       opm_FontDialog_Config: TFontDialog;
0086:       opm_GroupBox_Font: TGroupBox;
0087:       opm_BitBtn_ConfigFont: TBitBtn;
0088:       opm_Label_ConfigFontDetails: TLabel;
0089:       opm_CheckBox_ConfigAllowZeroPrice: TCheckBox;
0090:       opm_CheckBox_ConfigWBDebug: TCheckBox;
0091:       opm_CheckBox_ConfigAllowNegativeQuantity: TCheckBox;
0092:       opm_TabSheet_ConfigReports: TTabSheet;
0093:       opm_GroupBox_Reports: TGroupBox;
0094:       opm_GroupBox_Clipboard: TGroupBox;
0095:       opm_Label_Config_ClipMaxChars: TLabel;
0096:       opm_SpinEdit_Config_ClipColSize: TSpinEdit;
0097:       opm_BitBtn_ConfigReportEdit: TBitBtn;
0098:       opm_ListBox_ConfigReports: TListBox;
0099:       opm_CheckBox_ConfigPRNDirectPrint: TCheckBox;
0100:       opm_frReport_Config: TfrReport;
0101:       opm_frDesigner_Config: TfrDesigner;
0102:       opm_frUserDataset_Config: TfrUserDataset;
0103:       opm_BitBtn_ConfigReportPreview: TBitBtn;
0104:       opm_CheckBox_ConfigAllowEditImageName: TCheckBox;
0105:       opm_Label_ConfigModConnWait: TLabel;
0106:       opm_SpinEdit_ConfigModConnWait: TSpinEdit;
0107:       opm_Label_ConfigModConnRetries: TLabel;
0108:       opm_SpinEdit_ConfigModConnRetries: TSpinEdit;
0109:       opm_OpenDialog_ConfigMod: TOpenDialog;
0110:       opm_GroupBox_Modules: TGroupBox;
0111:       opm_BitBtn_ConfigModDel: TBitBtn;
0112:       opm_ListBox_ConfigMods: TListBox;
0113:       opm_BitBtn_ConfigModEdit: TBitBtn;
0114:       opm_BitBtn_ConfigModAdd: TBitBtn;
0115:       opm_TabSheet_ConfigNet: TTabSheet;
0116:       opm_GroupBox_HTTP: TGroupBox;
0117:       opm_Label_ConfigPHost: TLabel;
0118:       opm_Label_ConfigPPort: TLabel;
0119:       opm_ComboBox_ConfigProxyHost: TComboBox;
0120:       opm_SpinEdit_ConfigProxyPort: TSpinEdit;
0121:       opm_BitBtn_ConfigProxyIE: TBitBtn;
0122:       opm_CheckBox_ConfigUseProxy: TCheckBox;
0123:       opm_ComboBox_ConfigProxyApply: TComboBox;
0124:       opm_GroupBox_HTTPGen: TGroupBox;
0125:       opm_Label_ConfigETABase: TLabel;
0126:       opm_ComboBox_ConfigETABase: TComboBox;
0127:       opm_Label_ConfigUploadURL: TLabel;
0128:       opm_ComboBox_ConfigUploadURL: TComboBox;
0129:       opm_Label_ConfigHTTPConnWait: TLabel;
0130:       opm_SpinEdit_ConfigHTTPConnWait: TSpinEdit;
0131:       opm_GroupBox_Img: TGroupBox;
0132:       opm_ComboBox_ConfigImgURL: TComboBox;
0133:       opm_Label_ConfigImageURL: TLabel;
0134:       opm_CheckBox_ConfigStripes: TCheckBox;
0135:       opm_CheckBox_ConfigCacheIList: TCheckBox;
0136:       opm_Edit_ConfigPDFAuthor: TEdit;
0137:       opm_Label_ConfigPDFAuthor: TLabel;
0138:       opm_ComboBox_ConfigUsername: TComboBox;
0139:       opm_Label_ConfigUsername: TLabel;
0140:       opm_Label_ConfigPassword: TLabel;
0141:       opm_Edit_ConfigPassword: TEdit;
0142:       opm_CheckBox_ConfigStorePass: TCheckBox;
0143:       opm_CheckBox_ConfigDBDebugLog: TCheckBox;
0144:       opm_SpinEdit_ConfigHTTPConnRetries: TSpinEdit;
0145:       opm_Label_ConfigHTTPConnRetries: TLabel;
0146:       opm_CheckBox_ConfigHTTPCompress: TCheckBox;
0147:       opm_CheckBox_ConfigCenterImage: TCheckBox;
0148:       procedure FormShow(Sender: TObject);
0149:       procedure opm_BitBtn_ConfigOkClick(Sender: TObject);
0150:       procedure FormCreate(Sender: TObject);
0151:       procedure opm_BitBtn_ConfigResetClick(Sender: TObject);
0152:       procedure opm_CheckBox_ConfigResizeImgClick(Sender: TObject);
0153:       procedure opm_BitBtn_ConfigSaveINIClick(Sender: TObject);
0154:       procedure opm_BitBtn_ConfigLoadINIClick(Sender: TObject);
0155:       procedure opm_SpinEdit_ConfigImgQChange(Sender: TObject);
0156:       procedure opm_BitBtn_ConfigModDelClick(Sender: TObject);
0157:       procedure opm_ListBox_ConfigModsClick(Sender: TObject);
0158:       procedure opm_BitBtn_ConfigColSelClick(Sender: TObject);
0159:       procedure opm_BitBtn_ConfigProxyIEClick(Sender: TObject);
0160:       procedure opm_BitBtn_ConfigFontClick(Sender: TObject);
0161:       procedure opm_CheckBox_ConfigUseProxyClick(Sender: TObject);
0162:       procedure opm_ListBox_ConfigReportsClick(Sender: TObject);
0163:       procedure opm_BitBtn_ConfigReportEditClick(Sender: TObject);
0164:       procedure opm_frReport_ConfigGetValue (const ParName: String; var ParValue: Variant);
0165:       procedure opm_frUserDataset_ConfigCheckEOF(Sender: TObject; var Eof: Boolean);
0166:       procedure opm_BitBtn_ConfigReportPreviewClick(Sender: TObject);
0167:       procedure opm_BitBtn_ConfigModEditClick(Sender: TObject);
0168:       procedure opm_ListBox_ConfigModsDblClick(Sender: TObject);
0169:       procedure opm_ListBox_ConfigReportsDblClick(Sender: TObject);
0170:       procedure opm_BitBtn_ConfigModAddClick(Sender: TObject);
0171:     private
0172:       PROCEDURE PRopm_ControlToVars;
0173:       procedure PRopm_VarsToControls;
0174:       PROCEDURE opm_PRRefresh_ModuleList (LastIndex : INTEGER);
0175:       PROCEDURE opm_PRRefresh_ReportList (LastIndex : INTEGER);
0176:     public
0177:     end;
0178:   
0179:   var
0180:     opm_Form_Config: Topm_Form_Config;
0181:   
0182:   implementation
0183:   
0184:   {$R *.dfm}
0185:   
0186:   Uses gnugettext, oscpmdata, regconfig, attention, imageman, modules, dataman,
0187:        colorsel, network, configmod;
0188:   
0189:   
0190:   
0191:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0192:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0193:   procedure Topm_Form_Config.PRopm_VarsToControls;
0194:   VAR
0195:     UILang : LONGINT;
0196:   begin
0197:     opm_Edit_ConfigPDFAuthor.Text := opmG_PDFAuthor;
0198:     opm_ComboBox_ConfigUsername.Text := opmG_DBUsername;
0199:     opm_ComboBox_ConfigImgURL.Text := opmG_WBImgURL;
0200:     opm_ComboBox_ConfigUploadURL.Text := opmG_WBUploadURL;
0201:     opm_ComboBox_ConfigUsername.Items := opmG_PastUsername_BoxList;
0202:     opm_ComboBox_ConfigImgURL.Items := opmG_PastImgURL_BoxList;
0203:     opm_ComboBox_ConfigUploadURL.Items := opmG_PastUploadURL_BoxList;
0204:     opm_ComboBox_ConfigProxyHost.Items := opmG_PastProxy_BoxList;
0205:     opm_ComboBox_ConfigProxyHost.Text := opmG_WBProxyHost;
0206:     opm_Edit_ConfigPassword.Text := opmG_DBPassword;
0207:     opm_ComboBox_ConfigETABase.Text := INTTOSTR (opmG_ETABase) + ' kbps';
0208:     opm_SpinEdit_ConfigProxyPort.Value := opmG_WBProxyPort;
0209:     opm_SpinEdit_ConfigModConnWait.Value := opmG_ModConnWait;
0210:     opm_SpinEdit_ConfigHTTPConnWait.Value := opmG_HTTPConnWait;
0211:     opm_SpinEdit_ConfigModConnRetries.Value := opmG_ModConnRetries;
0212:     opm_SpinEdit_ConfigHTTPConnRetries.Value := opmG_HTTPConnRetries;
0213:     opm_SpinEdit_ConfigImgX.Value := opmG_WBImgX;
0214:     opm_SpinEdit_ConfigImgY.Value := opmG_WBImgY;
0215:     opm_SpinEdit_ConfigImgQ.Value := opmG_WBImgQ;
0216:     opm_Label_ConfigJPEGQCategory.Caption := FNopm_QualityExplain (opmG_WBImgQ);
0217:     opm_Panel_ConfigColSel.Color := FNopm_DecColorToColor (opmG_WBPaddingColor);
0218:     opm_Panel_ConfigColSel.Caption := FNopm_ColorToRGB (opm_Panel_ConfigColSel.Color);
0219:     opm_PageControl_Config.ActivePageIndex := 0;
0220:     opm_CheckBox_ConfigHotTrack.Checked := (opmG_UIHotTracking > 0);
0221:     opm_CheckBox_ConfigRemember.Checked := (opmG_UIRememberDisplay > 0);
0222:     opm_CheckBox_ConfigAutoload.Checked := (opmG_UIClickLoad > 0);
0223:     opm_CheckBox_ConfigDragDrop.Checked := (opmG_UIDragDrop > 0);
0224:     opm_CheckBox_ConfigDragUps.Checked := (opmG_UIImgDragDrop > 0);
0225:     opm_CheckBox_ConfigTooltips.Checked := (opmG_UIToolTips > 0);
0226:     opm_CheckBox_ConfigStripes.Checked := (opmG_UIStripes > 0);
0227:     opm_CheckBox_ConfigCacheIList.Checked := (opmG_UICacheIList > 0);
0228:     opm_CheckBox_ConfigUseProxy.Checked := (opmG_UseProxy > 0);
0229:     opm_ComboBox_ConfigProxyApply.ItemIndex := opmG_ProxyApply;
0230:     opm_CheckBox_ConfigStorePass.Checked := (opmG_DBStorePass > 0);
0231:     opm_CheckBox_ConfigSilent.Checked := (opmG_UISilent > 0);
0232:     opm_CheckBox_ConfigSilent.Enabled := (FNopm_CheckSound = TRUE);
0233:     opm_CheckBox_ConfigConfirmDels.Checked := (opmG_UIConfirmDels > 0);
0234:     opm_CheckBox_ConfigConfirmDrag.Checked := (opmG_UIConfirmDrag > 0);
0235:     opm_CheckBox_ConfigConfirmMods.Checked := (opmG_UIConfirmMods > 0);
0236:     opm_CheckBox_ConfigAllowZeroPrice.Checked := (opmG_UIAllowZeroPrice > 0);
0237:     opm_CheckBox_ConfigAllowEditImageName.Checked := (opmG_UIAllowEditImageName > 0);
0238:     opm_CheckBox_ConfigAllowNegativeQuantity.Checked := (opmG_UIAllowNegativeQuantity > 0);
0239:     opm_CheckBox_ConfigAutoDownImg.Checked := (opmG_UIAutoDownImg > 0);
0240:     opm_FontDialog_Config.Font.Name := opmG_UIFontName;
0241:     opm_FontDialog_Config.Font.Height := opmG_UIFontHeight;
0242:     opm_FontDialog_Config.Font.Charset := opmG_UIFontCharset;
0243:     opm_FontDialog_Config.Font.Style := opmC_DefaultFontStyle;
0244:     opm_Label_ConfigFontDetails.Font := opm_FontDialog_Config.Font;
0245:     opm_Label_ConfigFontDetails.Caption := opmG_UIFontName + ', ' +
0246:                                            INTTOSTR (ROUND ((opmG_UIFontHeight * -72) / opm_FontDialog_Config.Font.PixelsPerInch)) + ', ' +
0247:                                            opmG_CharsetList [opmG_UIFontCharset];
0248:     opm_SpinEdit_Config_ClipColSize.Value := opmG_Clip_ColSize;
0249:     opm_CheckBox_ConfigPRNDirectPrint.Checked := (opmG_PRNDirectPrint > 0);
0250:     opm_CheckBox_ConfigNoCacheImg.Checked := (opmG_WBNoCacheImg > 0);
0251:     opm_CheckBox_ConfigResizeImg.Checked := (opmG_WBResizeImg > 0);
0252:     opm_CheckBox_ConfigPaddingImg.Checked := (opmG_WBPaddingImg > 0);
0253:     opm_CheckBox_ConfigKeepARImg.Checked := (opmG_WBKeepARImg > 0);
0254:     opm_CheckBox_ConfigConfirmExit.Checked := (opmG_UIConfirmExit > 0);
0255:     opm_CheckBox_ConfigCenterImage.Checked := (opmG_UICenterImage > 0);
0256:     opm_CheckBox_ConfigDBDebugLog.Checked := (opmG_DBDebugLog > 0);
0257:     opm_CheckBox_ConfigHTTPCompress.Checked := (opmG_HTTPCompress > 0);
0258:     opm_CheckBox_ConfigWBDebug.Checked := (opmG_UIWBDebug > 0);
0259:     IF (opm_ComboBox_ConfigUILang.Items.Count > 0) THEN
0260:       FOR UILang := 0 TO opm_ComboBox_ConfigUILang.Items.Count DO
0261:         IF (ANSIPOS ('(' + opmG_UIGUILang + ')', opm_ComboBox_ConfigUILang.Items[UILang]) > 0) THEN
0262:           BEGIN
0263:             opm_ComboBox_ConfigUILang.ItemIndex := UILang;
0264:             BREAK;
0265:           END;
0266:   end;
0267:   
0268:   
0269:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0270:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0271:   PROCEDURE Topm_Form_Config.FormShow(Sender: TObject);
0272:   BEGIN
0273:     opm_Form_Config.Caption := _('Settings of ') + opmC_AppShortName;
0274:     opm_ComboBox_ConfigUILang.Items.Clear;
0275:     DefaultInstance.GetListOfLanguages ('default', opm_ComboBox_ConfigUILang.Items);
0276:     opm_ComboBox_ConfigUILang.Sorted := TRUE;
0277:     IF (opm_ComboBox_ConfigUILang.Items.Count > 0) THEN
0278:       BEGIN
0279:         DefaultInstance.BindtextdomainToFile ('isotolanguagenames', ExtractFilePath (Application.Exename) + 'locale/isotolanguagenames.mo');
0280:         DefaultInstance.TranslateProperties (opm_ComboBox_ConfigUILang, 'isotolanguagenames');
0281:         opm_ComboBox_ConfigUILang.Enabled := TRUE;
0282:       END
0283:     ELSE
0284:       opm_ComboBox_ConfigUILang.Enabled := FALSE;
0285:     opm_Label_ConfigUILangDesc.Caption := _('Do you want to contribute with a translation in your native language?') + #13#10 +
0286:                                           _('It is very easy, and you don''t have to be a programmer to do it.') + #13#10 +
0287:                                           _('Please visit the website for more information.');
0288:     PRopm_VarsToControls;
0289:     opm_Label_ConfigImgResize.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0290:     opm_CheckBox_ConfigPaddingImg.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0291:     opm_CheckBox_ConfigKeepARImg.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0292:     opm_SpinEdit_ConfigImgX.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0293:     opm_SpinEdit_ConfigImgY.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0294:     opm_Panel_ConfigColSel.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0295:     opm_BitBtn_ConfigColSel.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0296:     opm_SpinEdit_ConfigImgQ.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0297:     opm_Label_ConfigImgJPEGQuality.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0298:     opm_Label_ConfigJPEGQCategory.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0299:     opm_ComboBox_ConfigProxyApply.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0300:     opm_ComboBox_ConfigProxyHost.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0301:     opm_SpinEdit_ConfigProxyPort.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0302:     opm_BitBtn_ConfigProxyIE.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0303:     opm_Label_ConfigPHost.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0304:     opm_Label_ConfigPPort.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0305:     opm_BitBtn_ConfigModDel.Enabled := FALSE;
0306:     opm_BitBtn_ConfigModEdit.Enabled := FALSE;
0307:     opm_PRRefresh_ModuleList (-1);
0308:     opm_ListBox_ConfigMods.ScrollWidth := ROUND (opm_ListBox_ConfigMods.Width * 1.5);
0309:     opm_BitBtn_ConfigReportEdit.Enabled := FALSE;
0310:     opm_BitBtn_ConfigReportPreview.Enabled := FALSE;
0311:     opm_PRRefresh_ReportList (-1);
0312:     opm_ListBox_ConfigReports.ScrollWidth := ROUND (opm_ListBox_ConfigReports.Width * 1.5);
0313:   END;
0314:   
0315:   
0316:   
0317:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0318:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0319:   PROCEDURE Topm_Form_Config.PRopm_ControlToVars;
0320:   VAR
0321:     LangUIStr : STRING;
0322:   BEGIN
0323:     opmG_PDFAuthor := TRIM (opm_Edit_ConfigPDFAuthor.Text);
0324:     opmG_DBUsername := TRIM (opm_ComboBox_ConfigUsername.Text);
0325:     opmG_DBPassword := TRIM (opm_Edit_ConfigPassword.Text);
0326:     opmG_WBImgURL := FNopm_FixURL (opm_ComboBox_ConfigImgURL.Text);
0327:     opmG_WBUploadURL := FNopm_FixURL (opm_ComboBox_ConfigUploadURL.Text);
0328:     opmG_WBProxyHost := FNopm_CleanHostName (opm_ComboBox_ConfigProxyHost.Text);
0329:     IF (opmG_WBImgURL[LENGTH (opmG_WBImgURL)] <> '/') THEN opmG_WBImgURL := opmG_WBImgURL + '/';
0330:     opmG_ETABase := FNopm_StrToInt (opm_ComboBox_ConfigETABase.Text);
0331:     opmG_WBProxyPort := ABS (opm_SpinEdit_ConfigProxyPort.Value);
0332:     opmG_ModConnWait := ABS (ROUND ((opm_SpinEdit_ConfigModConnWait.Value + 1) / opmC_MiliSecIncrement) * opmC_MiliSecIncrement);
0333:     opmG_HTTPConnWait := ABS (ROUND ((opm_SpinEdit_ConfigHTTPConnWait.Value + 1) / opmC_MiliSecIncrement) * opmC_MiliSecIncrement);
0334:     opmG_ModConnRetries := ABS (opm_SpinEdit_ConfigModConnRetries.Value);
0335:     opmG_HTTPConnRetries := ABS (opm_SpinEdit_ConfigHTTPConnRetries.Value);
0336:     opmG_WBImgX := ABS (opm_SpinEdit_ConfigImgX.Value);
0337:     opmG_WBImgY := ABS (opm_SpinEdit_ConfigImgY.Value);
0338:     opmG_WBImgQ := ABS (opm_SpinEdit_ConfigImgQ.Value);
0339:     IF (opm_CheckBox_ConfigHotTrack.Checked = TRUE) THEN opmG_UIHotTracking := 1 ELSE opmG_UIHotTracking := 0;
0340:     IF (opm_CheckBox_ConfigRemember.Checked = TRUE) THEN opmG_UIRememberDisplay := 1 ELSE opmG_UIRememberDisplay := 0;
0341:     IF (opm_CheckBox_ConfigAutoload.Checked = TRUE) THEN opmG_UIClickLoad := 1 ELSE opmG_UIClickLoad := 0;
0342:     IF (opm_CheckBox_ConfigDragDrop.Checked = TRUE) THEN opmG_UIDragDrop := 1 ELSE opmG_UIDragDrop := 0;
0343:     IF (opm_CheckBox_ConfigDragUps.Checked = TRUE) THEN opmG_UIImgDragDrop := 1 ELSE opmG_UIImgDragDrop := 0;
0344:     IF (opm_CheckBox_ConfigToolTips.Checked = TRUE) THEN opmG_UIToolTips := 1 ELSE opmG_UIToolTips := 0;
0345:     IF (opm_CheckBox_ConfigStripes.Checked = TRUE) THEN opmG_UIStripes := 1 ELSE opmG_UIStripes := 0;
0346:     IF (opm_CheckBox_ConfigCacheIList.Checked = TRUE) THEN opmG_UICacheIList := 1 ELSE opmG_UICacheIList := 0;
0347:     IF (opm_CheckBox_ConfigUseProxy.Checked = TRUE) THEN opmG_UseProxy := 1 ELSE opmG_UseProxy := 0;
0348:     IF (opm_ComboBox_ConfigProxyApply.ItemIndex >= 0) THEN opmG_ProxyApply := opm_ComboBox_ConfigProxyApply.ItemIndex ELSE opmG_ProxyApply := opmC_Def_ProxyApply; 
0349:     IF (opm_CheckBox_ConfigStorePass.Checked = TRUE) THEN opmG_DBStorePass := 1 ELSE opmG_DBStorePass := 0;
0350:     IF (opm_CheckBox_ConfigSilent.Checked = TRUE) THEN opmG_UISilent := 1 ELSE opmG_UISilent := 0;
0351:     IF (opm_CheckBox_ConfigConfirmDels.Checked = TRUE) THEN opmG_UIConfirmDels := 1 ELSE opmG_UIConfirmDels := 0;
0352:     IF (opm_CheckBox_ConfigConfirmDrag.Checked = TRUE) THEN opmG_UIConfirmDrag := 1 ELSE opmG_UIConfirmDrag := 0;
0353:     IF (opm_CheckBox_ConfigConfirmMods.Checked = TRUE) THEN opmG_UIConfirmMods := 1 ELSE opmG_UIConfirmMods := 0;
0354:     IF (opm_CheckBox_ConfigAllowZeroPrice.Checked = TRUE) THEN opmG_UIAllowZeroPrice := 1 ELSE opmG_UIAllowZeroPrice := 0;
0355:     IF (opm_CheckBox_ConfigAllowEditImageName.Checked = TRUE) THEN opmG_UIAllowEditImageName := 1 ELSE opmG_UIAllowEditImageName := 0;
0356:     IF (opm_CheckBox_ConfigAllowNegativeQuantity.Checked = TRUE) THEN opmG_UIAllowNegativeQuantity := 1 ELSE opmG_UIAllowNegativeQuantity := 0;
0357:     IF (opm_CheckBox_ConfigAutoDownImg.Checked = TRUE) THEN opmG_UIAutoDownImg := 1 ELSE opmG_UIAutoDownImg := 0;
0358:     opmG_UIFontName := opm_FontDialog_Config.Font.Name;
0359:     opmG_UIFontHeight := opm_FontDialog_Config.Font.Height;
0360:     opmG_UIFontCharset := opm_FontDialog_Config.Font.Charset;
0361:     opmG_Clip_ColSize := ABS (opm_SpinEdit_Config_ClipColSize.Value);
0362:     IF (opm_CheckBox_ConfigPRNDirectPrint.Checked = TRUE) THEN opmG_PRNDirectPrint := 1 ELSE opmG_PRNDirectPrint := 0;
0363:     IF (opm_CheckBox_ConfigNoCacheImg.Checked = TRUE) THEN opmG_WBNoCacheImg := 1 ELSE opmG_WBNoCacheImg := 0;
0364:     IF (opm_CheckBox_ConfigResizeImg.Checked = TRUE) THEN opmG_WBResizeImg := 1 ELSE opmG_WBResizeImg := 0;
0365:     IF (opm_CheckBox_ConfigPaddingImg.Checked = TRUE) THEN opmG_WBPaddingImg := 1 ELSE opmG_WBPaddingImg := 0;
0366:     IF (opm_CheckBox_ConfigKeepARImg.Checked = TRUE) THEN opmG_WBKeepARImg := 1 ELSE opmG_WBKeepARImg := 0;
0367:     IF (opm_CheckBox_ConfigConfirmExit.Checked = TRUE) THEN opmG_UIConfirmExit := 1 ELSE opmG_UIConfirmExit := 0;
0368:     IF (opm_CheckBox_ConfigCenterImage.Checked = TRUE) THEN opmG_UICenterImage := 1 ELSE opmG_UICenterImage := 0;
0369:     IF (opm_CheckBox_ConfigDBDebugLog.Checked = TRUE) THEN opmG_DBDebugLog := 1 ELSE opmG_DBDebugLog := 0;
0370:     IF (opm_CheckBox_ConfigHTTPCompress.Checked = TRUE) THEN opmG_HTTPCompress := 1 ELSE opmG_HTTPCompress := 0;
0371:     IF (opm_CheckBox_ConfigWBDebug.Checked = TRUE) THEN opmG_UIWBDebug := 1 ELSE opmG_UIWBDebug := 0;
0372:     LangUIStr := opm_ComboBox_ConfigUILang.Items[opm_ComboBox_ConfigUILang.ItemIndex];
0373:     IF (opm_ComboBox_ConfigUILang.Items.Count > 0) THEN
0374:       opmG_UIGUILang := COPY (LangUIStr, ANSIPOS ('(', LangUIStr) + 1, ANSIPOS (')', LangUIStr) - ANSIPOS ('(', LangUIStr) - 1)
0375:     ELSE
0376:       opmG_UIGUILang := opmC_Def_GUILang;
0377:   END;
0378:   
0379:   
0380:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0381:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0382:   procedure Topm_Form_Config.opm_BitBtn_ConfigOkClick(Sender: TObject);
0383:   begin
0384:     PRopm_ControlToVars;
0385:     PRReg_WriteSetting ('OSCETABase', INTTOSTR (opmG_ETABase), opmC_RegistryKey, opmC_RKConfig);
0386:     PRReg_WriteSetting ('OSCPDFAuthor', opmG_PDFAuthor, opmC_RegistryKey, opmC_RKConfig);
0387:     PRReg_WriteSetting ('OSCTable01', opmG_DBTable_Categories, opmC_RegistryKey, opmC_RKConfig);
0388:     PRReg_WriteSetting ('OSCTable02', opmG_DBTable_Manufacturers, opmC_RegistryKey, opmC_RKConfig);
0389:     PRReg_WriteSetting ('OSCTable03', opmG_DBTable_Languages, opmC_RegistryKey, opmC_RKConfig);
0390:     PRReg_WriteSetting ('OSCTable04', opmG_DBTable_Products, opmC_RegistryKey, opmC_RKConfig);
0391:     PRReg_WriteSetting ('OSCTable05', opmG_DBTable_Specials, opmC_RegistryKey, opmC_RKConfig);
0392:     PRReg_WriteSetting ('OSCTable06', opmG_DBTable_ProductsDescription, opmC_RegistryKey, opmC_RKConfig);
0393:     PRReg_WriteSetting ('OSCTable07', opmG_DBTable_TaxClass, opmC_RegistryKey, opmC_RKConfig);
0394:     PRReg_WriteSetting ('OSCTable08', opmG_DBTable_Currencies, opmC_RegistryKey, opmC_RKConfig);
0395:     PRReg_WriteSetting ('OSCTable09', opmG_DBTable_Configuration, opmC_RegistryKey, opmC_RKConfig);
0396:     PRReg_WriteSetting ('OSCTable10', opmG_DBTable_ProductsToCategories, opmC_RegistryKey, opmC_RKConfig);
0397:     PRReg_WriteSetting ('OSCTable11', opmG_DBTable_CategoriesDescription, opmC_RegistryKey, opmC_RKConfig);
0398:     PRReg_WriteSetting ('OSCTable13', opmG_DBTable_TaxRates, opmC_RegistryKey, opmC_RKConfig);
0399:     PRReg_WriteSetting ('OSCTable14', opmG_DBTable_ManufacturersInfo, opmC_RegistryKey, opmC_RKConfig);
0400:     PRReg_WriteSetting ('OSCUsername', opmG_DBUsername, opmC_RegistryKey, opmC_RKConfig);
0401:     IF (opmG_DBStorePass > 0) THEN
0402:       PRReg_WriteSetting ('OSCPassword', opmG_DBPassword, opmC_RegistryKey, opmC_RKConfig)
0403:     ELSE
0404:       PRReg_WriteSetting ('OSCPassword', '', opmC_RegistryKey, opmC_RKConfig);
0405:     PRReg_WriteSetting ('OSCImgURL', opmG_WBImgURL, opmC_RegistryKey, opmC_RKConfig);
0406:     PRReg_WriteSetting ('OSCUploadURL', opmG_WBUploadURL, opmC_RegistryKey, opmC_RKConfig);
0407:     PRReg_WriteSetting ('OSCProxyHost', opmG_WBProxyHost, opmC_RegistryKey, opmC_RKConfig);
0408:     PRReg_WriteSetting ('OSCProxyPort', IntToStr (opmG_WBProxyPort), opmC_RegistryKey, opmC_RKConfig);
0409:     PRReg_WriteSetting ('OSCModConnWait', IntToStr (opmG_ModConnWait), opmC_RegistryKey, opmC_RKConfig);
0410:     PRReg_WriteSetting ('OSCHTTPConnWait', IntToStr (opmG_HTTPConnWait), opmC_RegistryKey, opmC_RKConfig);
0411:     PRReg_WriteSetting ('OSCModConnRetries', IntToStr (opmG_ModConnRetries), opmC_RegistryKey, opmC_RKConfig);
0412:     PRReg_WriteSetting ('OSCHTTPConnRetries', IntToStr (opmG_HTTPConnRetries), opmC_RegistryKey, opmC_RKConfig);
0413:     PRReg_WriteSetting ('OSCImgX', IntToStr (opmG_WBImgX), opmC_RegistryKey, opmC_RKConfig);
0414:     PRReg_WriteSetting ('OSCImgY', IntToStr (opmG_WBImgY), opmC_RegistryKey, opmC_RKConfig);
0415:     PRReg_WriteSetting ('OSCImgQ', IntToStr (opmG_WBImgQ), opmC_RegistryKey, opmC_RKConfig);
0416:     PRReg_WriteSetting ('OSCPaddingColor', IntToStr (opmG_WBPaddingColor), opmC_RegistryKey, opmC_RKConfig);
0417:     PRReg_WriteSetting ('OSCHotTracking', IntToStr (opmG_UIHotTracking), opmC_RegistryKey, opmC_RKConfig);
0418:     PRReg_WriteSetting ('OSCAutoLoad', IntToStr (opmG_UIClickLoad), opmC_RegistryKey, opmC_RKConfig);
0419:     PRReg_WriteSetting ('OSCDragDrop', IntToStr (opmG_UIDragDrop), opmC_RegistryKey, opmC_RKConfig);
0420:     PRReg_WriteSetting ('OSCImgDragDrop', IntToStr (opmG_UIImgDragDrop), opmC_RegistryKey, opmC_RKConfig);
0421:     PRReg_WriteSetting ('OSCToolTips', IntToStr (opmG_UIToolTips), opmC_RegistryKey, opmC_RKConfig);
0422:     PRReg_WriteSetting ('OSCStripes', IntToStr (opmG_UIStripes), opmC_RegistryKey, opmC_RKConfig);
0423:     PRReg_WriteSetting ('OSCCacheIList', IntToStr (opmG_UICacheIList), opmC_RegistryKey, opmC_RKConfig);
0424:     PRReg_WriteSetting ('OSCUseProxy', IntToStr (opmG_UseProxy), opmC_RegistryKey, opmC_RKConfig);
0425:     PRReg_WriteSetting ('OSCProxyApply', IntToStr (opmG_ProxyApply), opmC_RegistryKey, opmC_RKConfig);
0426:     PRReg_WriteSetting ('OSCStorePass', IntToStr (opmG_DBStorePass), opmC_RegistryKey, opmC_RKConfig);
0427:     PRReg_WriteSetting ('OSCSilent', IntToStr (opmG_UISilent), opmC_RegistryKey, opmC_RKConfig);
0428:     PRReg_WriteSetting ('OSCConfirmDels', IntToStr (opmG_UIConfirmDels), opmC_RegistryKey, opmC_RKConfig);
0429:     PRReg_WriteSetting ('OSCConfirmDrag', IntToStr (opmG_UIConfirmDrag), opmC_RegistryKey, opmC_RKConfig);
0430:     PRReg_WriteSetting ('OSCConfirmMods', IntToStr (opmG_UIConfirmMods), opmC_RegistryKey, opmC_RKConfig);
0431:     PRReg_WriteSetting ('OSCAllowZeroPrice', IntToStr (opmG_UIAllowZeroPrice), opmC_RegistryKey, opmC_RKConfig);
0432:     PRReg_WriteSetting ('OSCAllowEditImageName', IntToStr (opmG_UIAllowEditImageName), opmC_RegistryKey, opmC_RKConfig);
0433:     PRReg_WriteSetting ('OSCAllowNegativeQuantity', IntToStr (opmG_UIAllowNegativeQuantity), opmC_RegistryKey, opmC_RKConfig);
0434:     PRReg_WriteSetting ('OSCAutoDownImg', IntToStr (opmG_UIAutoDownImg), opmC_RegistryKey, opmC_RKConfig);
0435:     PRReg_WriteSetting ('UIFontName', opmG_UIFontName, opmC_RegistryKey, opmC_RKVisual);
0436:     PRReg_WriteSetting ('UIFontHeight', INTTOSTR (opmG_UIFontHeight), opmC_RegistryKey, opmC_RKVisual);
0437:     PRReg_WriteSetting ('UIFontCharset', INTTOSTR (opmG_UIFontCharset), opmC_RegistryKey, opmC_RKVisual);
0438:     PRReg_WriteSetting ('Clip_ColSize', IntToStr (opmG_Clip_ColSize), opmC_RegistryKey, opmC_RKVisual);
0439:     PRReg_WriteSetting ('PRNDirectPrint', IntToStr (opmG_PRNDirectPrint), opmC_RegistryKey, opmC_RKVisual);
0440:     PRReg_WriteSetting ('PastAvailDate', INTTOSTR (opmG_Past_PAvailDate), opmC_RegistryKey, opmC_RKVisual);
0441:     PRReg_WriteSetting ('PastManufacturer', INTTOSTR (opmG_Past_PManufacturer), opmC_RegistryKey, opmC_RKVisual);
0442:     PRReg_WriteSetting ('PastTaxClass', INTTOSTR (opmG_Past_PTaxClass), opmC_RegistryKey, opmC_RKVisual);
0443:     PRReg_WriteSetting ('PastImageDir', opmG_Past_PImageDir, opmC_RegistryKey, opmC_RKVisual);
0444:     PRReg_WriteSetting ('OSCNoCacheImg', IntToStr (opmG_WBNoCacheImg), opmC_RegistryKey, opmC_RKConfig);
0445:     PRReg_WriteSetting ('OSCResizeImg', IntToStr (opmG_WBResizeImg), opmC_RegistryKey, opmC_RKConfig);
0446:     PRReg_WriteSetting ('OSCPaddingImg', IntToStr (opmG_WBPaddingImg), opmC_RegistryKey, opmC_RKConfig);
0447:     PRReg_WriteSetting ('OSCKeepARImg', IntToStr (opmG_WBKeepARImg), opmC_RegistryKey, opmC_RKConfig);
0448:     PRReg_WriteSetting ('OSCConfirmExit', IntToStr (opmG_UIConfirmExit), opmC_RegistryKey, opmC_RKConfig);
0449:     PRReg_WriteSetting ('OSCCenterImage', IntToStr (opmG_UICenterImage), opmC_RegistryKey, opmC_RKConfig);
0450:     PRReg_WriteSetting ('OSCDBDebugLog', IntToStr (opmG_DBDebugLog), opmC_RegistryKey, opmC_RKConfig);
0451:     PRReg_WriteSetting ('OSCHTTPCompress', IntToStr (opmG_HTTPCompress), opmC_RegistryKey, opmC_RKConfig);
0452:     PRReg_WriteSetting ('OSCWBDebug', IntToStr (opmG_UIWBDebug), opmC_RegistryKey, opmC_RKConfig);
0453:     PRReg_WriteSetting ('OSCRememberPosition', IntToStr (opmG_UIRememberDisplay), opmC_RegistryKey, opmC_RKConfig);
0454:     PRReg_WritePastList ('Username', opmC_RegistryKey, opmC_RKServers, opmG_DBUsername, opmG_PastUsername_BoxList, opmC_MaxPast_Usernames);
0455:     PRReg_WritePastList ('ImgURL', opmC_RegistryKey, opmC_RKServers, opmG_WBImgURL, opmG_PastImgURL_BoxList, opmC_MaxPast_ImgURL);
0456:     PRReg_WritePastList ('UploadURL', opmC_RegistryKey, opmC_RKServers, opmG_WBUploadURL, opmG_PastUploadURL_BoxList, opmC_MaxPast_UploadURL);
0457:     PRReg_WritePastList ('Proxy', opmC_RegistryKey, opmC_RKServers, opmG_WBProxyHost, opmG_PastProxy_BoxList, opmC_MaxPast_Proxy);
0458:   end;
0459:   
0460:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0461:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0462:   procedure Topm_Form_Config.FormCreate(Sender: TObject);
0463:   begin
0464:     opm_SpinEdit_ConfigProxyPort.MinValue := opmC_Min_ProxyPort;
0465:     opm_SpinEdit_ConfigProxyPort.MaxValue := opmC_Max_ProxyPort;
0466:     opm_SpinEdit_ConfigModConnWait.MinValue := opmC_Min_ModConnWait;
0467:     opm_SpinEdit_ConfigModConnWait.MaxValue := opmC_Max_ModConnWait;
0468:     opm_SpinEdit_ConfigModConnWait.Increment := opmC_MiliSecIncrement;
0469:     opm_SpinEdit_ConfigHTTPConnWait.MinValue := opmC_Min_HTTPConnWait;
0470:     opm_SpinEdit_ConfigHTTPConnWait.MaxValue := opmC_Max_HTTPConnWait;
0471:     opm_SpinEdit_ConfigHTTPConnWait.Increment := opmC_MiliSecIncrement;
0472:     opm_SpinEdit_ConfigModConnRetries.MinValue := opmC_Min_ModConnRetries;
0473:     opm_SpinEdit_ConfigModConnRetries.MaxValue := opmC_Max_ModConnRetries;
0474:     opm_SpinEdit_ConfigHTTPConnRetries.MinValue := opmC_Min_HTTPConnRetries;
0475:     opm_SpinEdit_ConfigHTTPConnRetries.MaxValue := opmC_Max_HTTPConnRetries;
0476:     opm_SpinEdit_ConfigImgX.MinValue := opmC_Min_ImgX;
0477:     opm_SpinEdit_ConfigImgX.MaxValue := opmC_Max_ImgX;
0478:     opm_SpinEdit_ConfigImgY.MinValue := opmC_Min_ImgY;
0479:     opm_SpinEdit_ConfigImgY.MaxValue := opmC_Max_ImgY;
0480:     opm_SpinEdit_ConfigImgQ.MinValue := opmC_Min_ImgQ;
0481:     opm_SpinEdit_ConfigImgQ.MaxValue := opmC_Max_ImgQ;
0482:     opm_ComboBox_ConfigETABase.Items.Text := opmC_ETABitrates;
0483:     opm_ComboBox_ConfigProxyApply.Items.Text := _('For all web connections') + #13#10 + _('For OSCPM script only') + #13#10 + _('To check updates only') + #13#10;
0484:     opm_Edit_ConfigPassword.PasswordChar := opmC_PasswordChar;
0485:     opm_FontDialog_Config.MinFontSize := opmC_Min_FontHeight;
0486:     opm_FontDialog_Config.MaxFontSize := opmC_Max_FontHeight;
0487:     opm_SpinEdit_Config_ClipColSize.MinValue := opmC_Min_Clip_ColSize;
0488:     opm_SpinEdit_Config_ClipColSize.MaxValue := opmC_Max_Clip_ColSize;
0489:     IF (opmG_UIHotTracking > 0) THEN
0490:       opm_PageControl_Config.HotTrack := TRUE
0491:     ELSE
0492:       opm_PageControl_Config.HotTrack := FALSE;
0493:     TranslateComponent (self);
0494:   end;
0495:   
0496:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0497:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0498:   procedure Topm_Form_Config.opm_BitBtn_ConfigResetClick(Sender: TObject);
0499:   begin
0500:     opm_CheckBox_ConfigHotTrack.Checked := (opmC_Def_HotTracking > 0);
0501:     opm_CheckBox_ConfigRemember.Checked := (opmC_Def_RememberDisplay > 0);
0502:     opm_CheckBox_ConfigAutoload.Checked := (opmC_Def_AutoLoad > 0);
0503:     opm_CheckBox_ConfigDragDrop.Checked := (opmC_Def_DragDrop > 0);
0504:     opm_CheckBox_ConfigDragUps.Checked := (opmC_Def_ImgDragDrop > 0);
0505:     opm_CheckBox_ConfigTooltips.Checked := (opmC_Def_Tooltips > 0);
0506:     opm_CheckBox_ConfigStripes.Checked := (opmC_Def_Stripes > 0);
0507:     opm_CheckBox_ConfigCacheIList.Checked := (opmC_Def_CacheIList > 0);
0508:     opm_CheckBox_ConfigConfirmDels.Checked := (opmC_Def_ConfirmDels > 0);
0509:     opm_CheckBox_ConfigConfirmDrag.Checked := (opmC_Def_ConfirmDrag > 0);
0510:     opm_CheckBox_ConfigConfirmMods.Checked := (opmC_Def_ConfirmMods > 0);
0511:     opm_CheckBox_ConfigAllowZeroPrice.Checked := (opmC_Def_AllowZeroPrice > 0);
0512:     opm_CheckBox_ConfigAllowEditImageName.Checked := (opmC_Def_AllowEditImageName > 0);
0513:     opm_CheckBox_ConfigAllowNegativeQuantity.Checked := (opmC_Def_AllowNegativeQuantity > 0);
0514:     opm_CheckBox_ConfigAutoDownImg.Checked := (opmC_Def_AutoDownImg > 0);
0515:     opm_CheckBox_ConfigNoCacheImg.Checked := (opmC_Def_NoCacheImg > 0);
0516:     opm_CheckBox_ConfigConfirmExit.Checked := (opmC_Def_ConfirmExit > 0);
0517:     opm_CheckBox_ConfigCenterImage.Checked := (opmC_Def_CenterImage > 0);
0518:     opm_CheckBox_ConfigDBDebugLog.Checked := (opmC_Def_DBDebugLog > 0);
0519:     opm_CheckBox_ConfigHTTPCompress.Checked := (opmC_Def_HTTPCompress > 0);
0520:     opm_CheckBox_ConfigWBDebug.Checked := (opmC_Def_WBDebug > 0);
0521:   end;
0522:   
0523:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0524:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0525:   procedure Topm_Form_Config.opm_CheckBox_ConfigResizeImgClick (Sender: TObject);
0526:   begin
0527:     opm_Label_ConfigImgResize.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0528:     opm_CheckBox_ConfigPaddingImg.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0529:     opm_CheckBox_ConfigKeepARImg.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0530:     opm_SpinEdit_ConfigImgX.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0531:     opm_SpinEdit_ConfigImgY.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0532:     opm_Panel_ConfigColSel.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0533:     opm_BitBtn_ConfigColSel.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0534:     opm_SpinEdit_ConfigImgQ.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0535:     opm_Label_ConfigImgJPEGQuality.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0536:     opm_Label_ConfigJPEGQCategory.Enabled := opm_CheckBox_ConfigResizeImg.Checked;
0537:   end;
0538:   
0539:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0540:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0541:   procedure Topm_Form_Config.opm_BitBtn_ConfigSaveINIClick(Sender: TObject);
0542:   begin
0543:     opm_SaveDialog_ConfigINI.DefaultExt := opmC_Def_SaveINIExt;
0544:     opm_SaveDialog_ConfigINI.FileName := opmC_Def_SaveINIFilename;
0545:     opm_SaveDialog_ConfigINI.Filter := _('Configuration files') + ' (' + opmC_Def_SaveINIFilter + ')|' + opmC_Def_SaveINIFilter + '|' + _('All files (*.*)');
0546:     opm_SaveDialog_ConfigINI.Title := _('Saving configuration file...');
0547:     opm_SaveDialog_ConfigINI.InitialDir := ExtractFilePath (Application.Exename);
0548:     IF (opm_SaveDialog_ConfigINI.Execute = TRUE) THEN
0549:       BEGIN
0550:         PRopm_ControlToVars;
0551:         PRINI_WriteSetting ('OSCETABase', INTTOSTR (opmG_ETABase), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0552:         PRINI_WriteSetting ('OSCPDFAuthor', opmG_PDFAuthor, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0553:         PRINI_WriteSetting ('OSCTable01', opmG_DBTable_Categories, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0554:         PRINI_WriteSetting ('OSCTable02', opmG_DBTable_Manufacturers, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0555:         PRINI_WriteSetting ('OSCTable03', opmG_DBTable_Languages, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0556:         PRINI_WriteSetting ('OSCTable04', opmG_DBTable_Products, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0557:         PRINI_WriteSetting ('OSCTable05', opmG_DBTable_Specials, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0558:         PRINI_WriteSetting ('OSCTable06', opmG_DBTable_ProductsDescription, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0559:         PRINI_WriteSetting ('OSCTable07', opmG_DBTable_TaxClass, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0560:         PRINI_WriteSetting ('OSCTable08', opmG_DBTable_Currencies, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0561:         PRINI_WriteSetting ('OSCTable09', opmG_DBTable_Configuration, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0562:         PRINI_WriteSetting ('OSCTable10', opmG_DBTable_ProductsToCategories, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0563:         PRINI_WriteSetting ('OSCTable11', opmG_DBTable_CategoriesDescription, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0564:         PRINI_WriteSetting ('OSCTable13', opmG_DBTable_TaxRates, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0565:         PRINI_WriteSetting ('OSCTable14', opmG_DBTable_ManufacturersInfo, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0566:         PRINI_WriteSetting ('OSCUsername', opmG_DBUsername, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0567:         IF (opmG_DBStorePass > 0) THEN
0568:           PRINI_WriteSetting ('OSCPassword', opmG_DBPassword, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig)
0569:         ELSE
0570:           PRINI_WriteSetting ('OSCPassword', '', opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0571:         PRINI_WriteSetting ('OSCImgURL', opmG_WBImgURL, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0572:         PRINI_WriteSetting ('OSCUploadURL', opmG_WBUploadURL, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0573:         PRINI_WriteSetting ('OSCProxyHost', opmG_WBProxyHost, opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0574:         PRINI_WriteSetting ('OSCProxyPort', IntToStr (opmG_WBProxyPort), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0575:         PRINI_WriteSetting ('OSCModConnWait', IntToStr (opmG_ModConnWait), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0576:         PRINI_WriteSetting ('OSCHTTPConnWait', IntToStr (opmG_HTTPConnWait), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0577:         PRINI_WriteSetting ('OSCModConnRetries', IntToStr (opmG_ModConnRetries), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0578:         PRINI_WriteSetting ('OSCHTTPConnRetries', IntToStr (opmG_HTTPConnRetries), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0579:         PRINI_WriteSetting ('OSCImgX', IntToStr (opmG_WBImgX), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0580:         PRINI_WriteSetting ('OSCImgY', IntToStr (opmG_WBImgY), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0581:         PRINI_WriteSetting ('OSCImgQ', IntToStr (opmG_WBImgQ), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0582:         PRINI_WriteSetting ('OSCPaddingColor', IntToStr (opmG_WBPaddingColor), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0583:         PRINI_WriteSetting ('OSCHotTracking', IntToStr (opmG_UIHotTracking), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0584:         PRINI_WriteSetting ('OSCAutoLoad', IntToStr (opmG_UIClickLoad), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0585:         PRINI_WriteSetting ('OSCDragDrop', IntToStr (opmG_UIDragDrop), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0586:         PRINI_WriteSetting ('OSCImgDragDrop', IntToStr (opmG_UIImgDragDrop), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0587:         PRINI_WriteSetting ('OSCToolTips', IntToStr (opmG_UIToolTips), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0588:         PRINI_WriteSetting ('OSCStripes', IntToStr (opmG_UIStripes), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0589:         PRINI_WriteSetting ('OSCCacheIList', IntToStr (opmG_UICacheIList), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0590:         PRINI_WriteSetting ('OSCUseProxy', IntToStr (opmG_UseProxy), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0591:         PRINI_WriteSetting ('OSCProxyApply', IntToStr (opmG_ProxyApply), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0592:         PRINI_WriteSetting ('OSCStorePass', IntToStr (opmG_DBStorePass), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0593:         PRINI_WriteSetting ('OSCSilent', IntToStr (opmG_UISilent), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0594:         PRINI_WriteSetting ('OSCConfirmDels', IntToStr (opmG_UIConfirmDels), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0595:         PRINI_WriteSetting ('OSCConfirmDrag', IntToStr (opmG_UIConfirmDrag), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0596:         PRINI_WriteSetting ('OSCConfirmMods', IntToStr (opmG_UIConfirmMods), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0597:         PRINI_WriteSetting ('OSCAllowZeroPrice', IntToStr (opmG_UIAllowZeroPrice), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0598:         PRINI_WriteSetting ('OSCAllowEditImageName', IntToStr (opmG_UIAllowEditImageName), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0599:         PRINI_WriteSetting ('OSCAllowNegativeQuantity', IntToStr (opmG_UIAllowNegativeQuantity), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0600:         PRINI_WriteSetting ('OSCAutoDownImg', IntToStr (opmG_UIAutoDownImg), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0601:         PRINI_WriteSetting ('UIFontName', opmG_UIFontName, opm_SaveDialog_ConfigINI.FileName, opmC_RKVisual);
0602:         PRINI_WriteSetting ('UIFontHeight', INTTOSTR (opmG_UIFontHeight), opm_SaveDialog_ConfigINI.FileName, opmC_RKVisual);
0603:         PRINI_WriteSetting ('UIFontCharset', INTTOSTR (opmG_UIFontCharset), opm_SaveDialog_ConfigINI.FileName, opmC_RKVisual);
0604:         PRINI_WriteSetting ('Clip_ColSize', IntToStr (opmG_PRNDirectPrint), opm_SaveDialog_ConfigINI.FileName, opmC_RKVisual);
0605:         PRINI_WriteSetting ('PRNDirectPrint', IntToStr (opmG_PRNDirectPrint), opm_SaveDialog_ConfigINI.FileName, opmC_RKVisual);
0606:         PRINI_WriteSetting ('PastAvailDate', INTTOSTR (opmG_Past_PAvailDate), opm_SaveDialog_ConfigINI.FileName, opmC_RKVisual);
0607:         PRINI_WriteSetting ('PastManufacturer', INTTOSTR (opmG_Past_PManufacturer), opm_SaveDialog_ConfigINI.FileName, opmC_RKVisual);
0608:         PRINI_WriteSetting ('PastTaxClass', INTTOSTR (opmG_Past_PTaxClass), opm_SaveDialog_ConfigINI.FileName, opmC_RKVisual);
0609:         PRINI_WriteSetting ('PastImageDir', opmG_Past_PImageDir, opm_SaveDialog_ConfigINI.FileName, opmC_RKVisual);
0610:         PRINI_WriteSetting ('OSCNoCacheImg', IntToStr (opmG_WBNoCacheImg), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0611:         PRINI_WriteSetting ('OSCResizeImg', IntToStr (opmG_WBResizeImg), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0612:         PRINI_WriteSetting ('OSCPaddingImg', IntToStr (opmG_WBPaddingImg), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0613:         PRINI_WriteSetting ('OSCKeepARImg', IntToStr (opmG_WBKeepARImg), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0614:         PRINI_WriteSetting ('OSCConfirmExit', IntToStr (opmG_UIConfirmExit), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0615:         PRINI_WriteSetting ('OSCCenterImage', IntToStr (opmG_UICenterImage), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0616:         PRINI_WriteSetting ('OSCDBDebugLog', IntToStr (opmG_DBDebugLog), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0617:         PRINI_WriteSetting ('OSCHTTPCompress', IntToStr (opmG_HTTPCompress), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0618:         PRINI_WriteSetting ('OSCWBDebug', IntToStr (opmG_UIWBDebug), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0619:         PRINI_WriteSetting ('OSCRememberPosition', IntToStr (opmG_UIRememberDisplay), opm_SaveDialog_ConfigINI.FileName, opmC_RKConfig);
0620:       END;
0621:   end;
0622:   
0623:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0624:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0625:   procedure Topm_Form_Config.opm_BitBtn_ConfigLoadINIClick(Sender: TObject);
0626:   begin
0627:     opm_OpenDialog_ConfigINI.DefaultExt := opmC_Def_LoadINIExt;
0628:     opm_OpenDialog_ConfigINI.FileName := '';
0629:     opm_OpenDialog_ConfigINI.Filter := _('Configuration files') + ' (' + opmC_Def_LoadINIFilter + ')|' + opmC_Def_LoadINIFilter + '|' + _('All files (*.*)');
0630:     opm_OpenDialog_ConfigINI.Title := _('Loading configuration file...');
0631:     opm_OpenDialog_ConfigINI.InitialDir := ExtractFilePath (Application.Exename);
0632:     IF (opm_OpenDialog_ConfigINI.Execute = TRUE) THEN
0633:       BEGIN
0634:         opmG_ETABase := FNopm_StrToInt (FNINI_ReadSetting ('OSCETABase', opmC_Def_ETABase, opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0635:         opmG_PDFAuthor := FNINI_ReadSetting ('OSCPDFAuthor', opmC_Def_PDFAuthor, opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig);
0636:         opmG_DBUsername := FNINI_ReadSetting ('OSCUsername', opmC_Def_Username, opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig);
0637:         opmG_DBPassword := FNINI_ReadSetting ('OSCPassword', opmC_Def_Password, opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig);
0638:         opmG_WBImgURL := FNINI_ReadSetting ('OSCImgURL', opmC_Def_ImgURL, opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig);
0639:         opmG_WBUploadURL := FNINI_ReadSetting ('OSCUploadURL', opmC_Def_UploadURL, opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig);
0640:         opmG_WBProxyHost := FNopm_CleanHostName (FNINI_ReadSetting ('OSCProxyHost', opmC_Def_ProxyHost, opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0641:         opmG_WBProxyPort := FNopm_StrToInt (FNINI_ReadSetting ('OSCProxyPort', INTTOSTR (opmC_Def_ProxyPort), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0642:         opmG_ModConnWait := FNopm_StrToInt (FNINI_ReadSetting ('OSCModConnWait', INTTOSTR (opmC_Def_ModConnWait), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0643:         opmG_HTTPConnWait := FNopm_StrToInt (FNINI_ReadSetting ('OSCHTTPConnWait', INTTOSTR (opmC_Def_HTTPConnWait), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0644:         opmG_ModConnRetries := FNopm_StrToInt (FNINI_ReadSetting ('OSCModConnRetries', INTTOSTR (opmC_Def_ModConnRetries), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0645:         opmG_HTTPConnRetries := FNopm_StrToInt (FNINI_ReadSetting ('OSCHTTPConnRetries', INTTOSTR (opmC_Def_HTTPConnRetries), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0646:         opmG_WBImgX := FNopm_StrToInt (FNINI_ReadSetting ('OSCImgX', INTTOSTR (opmC_Def_ImgX), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0647:         opmG_WBImgY := FNopm_StrToInt (FNINI_ReadSetting ('OSCImgY', INTTOSTR (opmC_Def_ImgY), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0648:         opmG_WBImgQ := FNopm_StrToInt (FNINI_ReadSetting ('OSCImgQ', INTTOSTR (opmC_Def_ImgQ), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0649:         opmG_WBPaddingColor := FNopm_StrToInt (FNINI_ReadSetting ('OSCPaddingColor', INTTOSTR (opmC_Def_PaddingColor), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0650:         IF (opmG_WBImgURL[LENGTH (opmG_WBImgURL)] <> '/') THEN opmG_WBImgURL := opmG_WBImgURL + '/';
0651:         opmG_UIHotTracking := FNopm_StrToInt (FNINI_ReadSetting ('OSCHotTracking', INTTOSTR (opmC_Def_HotTracking), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0652:         opmG_UIClickLoad := FNopm_StrToInt (FNINI_ReadSetting ('OSCAutoLoad', INTTOSTR (opmC_Def_AutoLoad), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0653:         opmG_UIDragDrop := FNopm_StrToInt (FNINI_ReadSetting ('OSCDragDrop', INTTOSTR (opmC_Def_DragDrop), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0654:         opmG_UIImgDragDrop := FNopm_StrToInt (FNINI_ReadSetting ('OSCImgDragDrop', INTTOSTR (opmC_Def_ImgDragDrop), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0655:         opmG_UIToolTips := FNopm_StrToInt (FNINI_ReadSetting ('OSCToolTips', INTTOSTR (opmC_Def_ToolTips), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0656:         opmG_UIStripes := FNopm_StrToInt (FNINI_ReadSetting ('OSCStripes', INTTOSTR (opmC_Def_Stripes), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0657:         opmG_UICacheIList := FNopm_StrToInt (FNINI_ReadSetting ('OSCCacheIList', INTTOSTR (opmC_Def_CacheIList), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0658:         opmG_UseProxy := FNopm_StrToInt (FNINI_ReadSetting ('OSCUseProxy', INTTOSTR (opmC_Def_UseProxy), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0659:         opmG_ProxyApply := FNopm_StrToInt (FNINI_ReadSetting ('OSCProxyApply', INTTOSTR (opmC_Def_ProxyApply), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0660:         opmG_DBStorePass := FNopm_StrToInt (FNINI_ReadSetting ('OSCStorePass', INTTOSTR (opmC_Def_StorePass), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0661:         opmG_UISilent := FNopm_StrToInt (FNINI_ReadSetting ('OSCSilent', INTTOSTR (opmC_Def_Silent), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0662:         opmG_UIConfirmDels := FNopm_StrToInt (FNINI_ReadSetting ('OSCConfirmDels', INTTOSTR (opmC_Def_ConfirmDels), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0663:         opmG_UIConfirmDrag := FNopm_StrToInt (FNINI_ReadSetting ('OSCConfirmDrag', INTTOSTR (opmC_Def_ConfirmDrag), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0664:         opmG_UIConfirmMods := FNopm_StrToInt (FNINI_ReadSetting ('OSCConfirmMods', INTTOSTR (opmC_Def_ConfirmMods), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0665:         opmG_UIAllowZeroPrice := FNopm_StrToInt (FNINI_ReadSetting ('OSCAllowZeroPrice', INTTOSTR (opmC_Def_AllowZeroPrice), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0666:         opmG_UIAllowEditImageName := FNopm_StrToInt (FNINI_ReadSetting ('OSCAllowEditImageName', INTTOSTR (opmC_Def_AllowEditImageName), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0667:         opmG_UIAllowNegativeQuantity := FNopm_StrToInt (FNINI_ReadSetting ('OSCAllowNegativeQuantity', INTTOSTR (opmC_Def_AllowNegativeQuantity), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0668:         opmG_UIAutoDownImg := FNopm_StrToInt (FNINI_ReadSetting ('OSCAutoDownImg', INTTOSTR (opmC_Def_AutoDownImg), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0669:         opmG_UIFontName := FNReg_ReadSetting ('UIFontName', opmC_DefaultFont, opmC_RegistryKey, opmC_RKVisual);
0670:         opmG_UIFontHeight := FNopm_StrToInt (FNReg_ReadSetting ('UIFontHeight', INTTOSTR (opmC_DefaultFontHeight), opmC_RegistryKey, opmC_RKVisual));
0671:         opmG_UIFontCharset := FNopm_StrToInt (FNReg_ReadSetting ('UIFontCharset', INTTOSTR (opmC_DefaultFontCharset), opmC_RegistryKey, opmC_RKVisual));
0672:         opmG_Clip_ColSize := FNopm_StrToInt (FNReg_ReadSetting ('Clip_ColSize', INTTOSTR (opmC_Def_Clip_ColSize), opmC_RegistryKey, opmC_RKVisual));
0673:         opmG_PRNDirectPrint := FNopm_StrToInt (FNReg_ReadSetting ('PRNDirectPrint', INTTOSTR (opmC_Def_PRNDirectPrint), opmC_RegistryKey, opmC_RKVisual));
0674:         opmG_Past_PAvailDate := FNopm_StrToInt (FNReg_ReadSetting ('PastAvailDate', INTTOSTR (opmC_Def_Past_PAvailDate), opmC_RegistryKey, opmC_RKVisual));
0675:         opmG_Past_PManufacturer := FNopm_StrToInt (FNReg_ReadSetting ('PastManufacturer', INTTOSTR (opmC_Def_Past_PManufacturer), opmC_RegistryKey, opmC_RKVisual));
0676:         opmG_Past_PTaxClass := FNopm_StrToInt (FNReg_ReadSetting ('PastTaxClass', INTTOSTR (opmC_Def_Past_PTaxClass), opmC_RegistryKey, opmC_RKVisual));
0677:         opmG_Past_PImageDir := FNReg_ReadSetting ('PastImageDir', opmC_Def_Past_PImageDir, opmC_RegistryKey, opmC_RKVisual);
0678:         opmG_WBNoCacheImg := FNopm_StrToInt (FNINI_ReadSetting ('OSCNoCacheImg', INTTOSTR (opmC_Def_NoCacheImg), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0679:         opmG_WBResizeImg := FNopm_StrToInt (FNINI_ReadSetting ('OSCResizeImg', INTTOSTR (opmC_Def_ResizeImg), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0680:         opmG_WBPaddingImg := FNopm_StrToInt (FNINI_ReadSetting ('OSCPaddingImg', INTTOSTR (opmC_Def_PaddingImg), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0681:         opmG_WBKeepARImg := FNopm_StrToInt (FNINI_ReadSetting ('OSCKeepARImg', INTTOSTR (opmC_Def_KeepARImg), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0682:         opmG_UIConfirmExit := FNopm_StrToInt (FNINI_ReadSetting ('OSCConfirmExit', INTTOSTR (opmC_Def_ConfirmExit), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0683:         opmG_UICenterImage := FNopm_StrToInt (FNINI_ReadSetting ('OSCCenterImage', INTTOSTR (opmC_Def_CenterImage), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0684:         opmG_DBDebugLog := FNopm_StrToInt (FNINI_ReadSetting ('OSCDBDebugLog', INTTOSTR (opmC_Def_DBDebugLog), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0685:         opmG_HTTPCompress := FNopm_StrToInt (FNINI_ReadSetting ('OSCHTTPCompress', INTTOSTR (opmC_Def_HTTPCompress), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0686:         opmG_UIWBDebug := FNopm_StrToInt (FNINI_ReadSetting ('OSCWBDebug', INTTOSTR (opmC_Def_WBDebug), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0687:         opmG_UIGUILang := FNINI_ReadSetting ('OSCGUILang', opmC_Def_GUILang, opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig);
0688:         IF (FNopm_CheckLanguage (opmG_UIGUILang) = FALSE) THEN opmG_UIGUILang := opmC_Def_GUILang;
0689:         opmG_UIRememberDisplay := FNopm_StrToInt (FNINI_ReadSetting ('OSCRememberPosition', INTTOSTR (opmC_Def_RememberDisplay), opm_OpenDialog_ConfigINI.FileName, opmC_RKConfig));
0690:         PRopm_VarsToControls;
0691:       END;
0692:   end;
0693:   
0694:   
0695:   
0696:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0697:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0698:   procedure Topm_Form_Config.opm_SpinEdit_ConfigImgQChange (Sender: TObject);
0699:   begin
0700:     opm_Label_ConfigJPEGQCategory.Caption := FNopm_QualityExplain (opm_SpinEdit_ConfigImgQ.Value);
0701:   end;
0702:   
0703:   
0704:   
0705:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0706:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0707:   PROCEDURE Topm_Form_Config.opm_PRRefresh_ModuleList (LastIndex : INTEGER);
0708:   VAR
0709:     ModCounter : LONGINT;
0710:   BEGIN
0711:     opm_PRLoad_ModuleList;
0712:     opm_ListBox_ConfigMods.Items.Clear;
0713:     FOR ModCounter := 0 TO (opm_TotalModules - 1) DO
0714:       opm_ListBox_ConfigMods.Items.Add (opmG_ModuleList[ModCounter].Name);
0715:     IF ((LastIndex + 1) < opm_TotalModules) THEN
0716:       opm_ListBox_ConfigMods.ItemIndex := LastIndex
0717:     ELSE opm_ListBox_ConfigMods.ItemIndex := (opm_TotalModules - 1);
0718:   END;
0719:   
0720:   
0721:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0722:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0723:   procedure Topm_Form_Config.opm_ListBox_ConfigModsClick(Sender: TObject);
0724:   begin
0725:     IF (opm_ListBox_ConfigMods.ItemIndex >= 0) THEN
0726:       BEGIN
0727:         opm_BitBtn_ConfigModDel.Enabled := TRUE;
0728:         opm_BitBtn_ConfigModEdit.Enabled := TRUE;
0729:       END
0730:     ELSE
0731:       BEGIN
0732:         opm_BitBtn_ConfigModDel.Enabled := FALSE;
0733:         opm_BitBtn_ConfigModEdit.Enabled := FALSE;
0734:       END;
0735:   end;
0736:   
0737:   
0738:   
0739:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0740:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0741:   procedure Topm_Form_Config.opm_BitBtn_ConfigColSelClick(Sender: TObject);
0742:   begin
0743:     opm_Form_ColorSel.opmG_ColorChoosed := FNopm_DecColorToColor (opmG_WBPaddingColor);
0744:     IF (opm_Form_ColorSel.ShowModal = mrOk) THEN
0745:       BEGIN
0746:         opmG_WBPaddingColor := opm_Form_ColorSel.opmG_ColorChoosedDec;
0747:         opm_Panel_ConfigColSel.Color := opm_Form_ColorSel.opmG_ColorChoosed;
0748:         opm_Panel_ConfigColSel.Caption := FNopm_ColorToRGB (opm_Panel_ConfigColSel.Color);
0749:       END;
0750:   end;
0751:   
0752:   
0753:   
0754:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0755:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0756:   procedure Topm_Form_Config.opm_BitBtn_ConfigProxyIEClick(Sender: TObject);
0757:   VAR
0758:     PHost : STRING;
0759:     PPort : LONGINT;
0760:   begin
0761:     PRopm_GetIEProxyData (PHost, PPort);
0762:     IF ((PHost <> '') AND (PPort > 0)) THEN
0763:       BEGIN
0764:         opm_ComboBox_ConfigProxyHost.Text := PHost;
0765:         opm_SpinEdit_ConfigProxyPort.Value := PPort;
0766:       END
0767:     ELSE
0768:       FNopm_Message (_('Cannot find the proxy settings automatically.'), mtWarning, [mbOK], opmG_UISilent);
0769:   end;
0770:   
0771:   
0772:   
0773:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0774:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0775:   procedure Topm_Form_Config.opm_BitBtn_ConfigFontClick (Sender: TObject);
0776:   begin
0777:     IF (opm_FontDialog_Config.Execute = TRUE) THEN
0778:       BEGIN
0779:         opm_Label_ConfigFontDetails.Caption := opm_FontDialog_Config.Font.Name + ', ' +
0780:                                                INTTOSTR (ROUND ((opm_FontDialog_Config.Font.Height * -72) / opm_FontDialog_Config.Font.PixelsPerInch)) + ', ' +
0781:                                                opmG_CharsetList [opm_FontDialog_Config.Font.Charset];
0782:         FNopm_Message (_('The font will change until you restart the application.'), mtInformation, [mbOk], opmG_UISilent);
0783:       END
0784:     ELSE
0785:       BEGIN
0786:         opm_FontDialog_Config.Font.Name := opmG_UIFontName;
0787:         opm_FontDialog_Config.Font.Height := opmG_UIFontHeight;
0788:         opm_FontDialog_Config.Font.Charset := opmG_UIFontCharset;
0789:         opm_FontDialog_Config.Font.Style := opmC_DefaultFontStyle;
0790:       END;
0791:   end;
0792:   
0793:   
0794:   
0795:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0796:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0797:   procedure Topm_Form_Config.opm_CheckBox_ConfigUseProxyClick (Sender: TObject);
0798:   begin
0799:     opm_ComboBox_ConfigProxyApply.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0800:     opm_ComboBox_ConfigProxyHost.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0801:     opm_SpinEdit_ConfigProxyPort.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0802:     opm_BitBtn_ConfigProxyIE.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0803:     opm_Label_ConfigPHost.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0804:     opm_Label_ConfigPPort.Enabled := opm_CheckBox_ConfigUseProxy.Checked;
0805:   end;
0806:   
0807:   
0808:   
0809:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0810:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0811:   procedure Topm_Form_Config.opm_ListBox_ConfigReportsClick(Sender: TObject);
0812:   begin
0813:     IF (opm_ListBox_ConfigReports.ItemIndex >= 0) THEN
0814:       BEGIN
0815:         opm_BitBtn_ConfigReportEdit.Enabled := TRUE;
0816:         opm_BitBtn_ConfigReportPreview.Enabled := TRUE;
0817:       END
0818:     ELSE
0819:       BEGIN
0820:         opm_BitBtn_ConfigReportEdit.Enabled := FALSE;
0821:         opm_BitBtn_ConfigReportPreview.Enabled := FALSE;
0822:       END;
0823:   end;
0824:   
0825:   
0826:   
0827:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0828:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0829:   procedure Topm_Form_Config.opm_BitBtn_ConfigReportEditClick(Sender: TObject);
0830:   begin
0831:     IF (opm_ListBox_ConfigReports.ItemIndex >= 0) THEN
0832:       BEGIN
0833:         TRY
0834:           opm_frReport_Config.LoadFromFile (ExtractFilePath (Application.Exename) + opmC_DirReports + '/' + opm_ListBox_ConfigReports.Items[opm_ListBox_ConfigReports.ItemIndex]);
0835:           opm_frReport_Config.DesignReport;
0836:         EXCEPT
0837:           ON E : Exception DO
0838:             BEGIN
0839:               FNopm_Message (_('Error while editing report') + #13#10 + E.Message, mtError, [mbOk], opmG_UISilent);
0840:             END;
0841:         END;
0842:         opm_PRRefresh_ReportList (opm_ListBox_ConfigReports.ItemIndex);
0843:       END;
0844:   end;
0845:   
0846:   
0847:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0848:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0849:   PROCEDURE Topm_Form_Config.opm_PRRefresh_ReportList (LastIndex : INTEGER);
0850:   VAR
0851:     DirRecord : TSearchRec;
0852:     RepCount : LONGINT;
0853:   BEGIN
0854:     RepCount := 0;
0855:     opm_ListBox_ConfigReports.Items.Clear;
0856:     IF (SysUtils.FINDFIRST (ExtractFilePath (Application.Exename) + opmC_DirReports + '/' + '*.' + opmC_Def_ReportExt, faAnyFile, DirRecord) = 0) THEN
0857:       BEGIN
0858:         REPEAT
0859:           opm_ListBox_ConfigReports.Items.Add (TRIM (DirRecord.Name));
0860:           INC (RepCount);
0861:         UNTIL (SysUtils.FINDNEXT (DirRecord) <> 0);
0862:         SysUtils.FINDCLOSE (DirRecord);
0863:         IF (LastIndex < RepCount) THEN
0864:           opm_ListBox_ConfigReports.ItemIndex := LastIndex
0865:         ELSE opm_ListBox_ConfigReports.ItemIndex := (RepCount - 1);
0866:       END;
0867:   END;
0868:   
0869:   
0870:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0871:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0872:   procedure Topm_Form_Config.opm_frReport_ConfigGetValue (const ParName: String; var ParValue: Variant);
0873:   begin
0874:     ParValue := _('Test data') + ' ' + INTTOSTR (opm_frUserDataset_Config.RecNo);
0875:   end;
0876:   
0877:   
0878:   
0879:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0880:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0881:   procedure Topm_Form_Config.opm_frUserDataset_ConfigCheckEOF (Sender: TObject; var Eof: Boolean);
0882:   begin
0883:     EOF := (opm_frUserDataset_Config.RecNo > 100);
0884:   end;
0885:   
0886:   
0887:   
0888:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0889:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0890:   procedure Topm_Form_Config.opm_BitBtn_ConfigReportPreviewClick(Sender: TObject);
0891:   begin
0892:     IF (opm_ListBox_ConfigReports.ItemIndex >= 0) THEN
0893:       BEGIN
0894:         TRY
0895:           opm_frReport_Config.LoadFromFile (ExtractFilePath (Application.Exename) + opmC_DirReports + '/' + opm_ListBox_ConfigReports.Items[opm_ListBox_ConfigReports.ItemIndex]);
0896:           opm_frReport_Config.ShowReport;
0897:         EXCEPT
0898:           ON E : Exception DO
0899:             BEGIN
0900:               FNopm_Message (_('Error while editing report') + #13#10 + E.Message, mtError, [mbOk], opmG_UISilent);
0901:             END;
0902:         END;
0903:         opm_PRRefresh_ReportList (opm_ListBox_ConfigReports.ItemIndex);
0904:       END;
0905:   end;
0906:   
0907:   
0908:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0909:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0910:   procedure Topm_Form_Config.opm_BitBtn_ConfigModEditClick(Sender: TObject);
0911:   begin
0912:     IF (opm_ListBox_ConfigMods.ItemIndex >= 0) THEN
0913:       BEGIN
0914:         opm_Form_ConfigMod.MC_Name := TRIM (opm_ListBox_ConfigMods.Items[opm_ListBox_ConfigMods.ItemIndex] + '.' + opmC_Def_ModulesExt);
0915:         opm_Form_ConfigMod.MC_AddEdit := FALSE;
0916:         IF (opm_Form_ConfigMod.ShowModal = mrOK) THEN opm_PRRefresh_ModuleList (opm_ListBox_ConfigMods.ItemIndex);
0917:       END;
0918:   end;
0919:   
0920:   
0921:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0922:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0923:   procedure Topm_Form_Config.opm_BitBtn_ConfigModAddClick(Sender: TObject);
0924:   begin
0925:     opm_Form_ConfigMod.MC_Name := '';
0926:     opm_Form_ConfigMod.MC_AddEdit := TRUE;
0927:     IF (opm_Form_ConfigMod.ShowModal = mrOK) THEN opm_PRRefresh_ModuleList (opm_ListBox_ConfigMods.ItemIndex);
0928:   end;
0929:   
0930:   
0931:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0932:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0933:   procedure Topm_Form_Config.opm_BitBtn_ConfigModDelClick(Sender: TObject);
0934:   begin
0935:     IF (opm_ListBox_ConfigMods.ItemIndex >= 0) THEN
0936:       IF (FNopm_Message (_('Are you sure you want to delete this module configuration?') +
0937:                          ' [' + opm_ListBox_ConfigMods.Items[opm_ListBox_ConfigMods.ItemIndex] + ']', mtConfirmation, [mbYes, mbNo], opmG_UISilent) = mrYes) THEN
0938:         BEGIN
0939:           opm_PRDelete_ModuleData (opm_ListBox_ConfigMods.Items[opm_ListBox_ConfigMods.ItemIndex] + '.' + opmC_Def_ModulesExt);
0940:           opm_PRRefresh_ModuleList (opm_ListBox_ConfigMods.ItemIndex);
0941:         END;
0942:   end;
0943:   
0944:   
0945:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0946:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0947:   procedure Topm_Form_Config.opm_ListBox_ConfigModsDblClick(Sender: TObject);
0948:   begin
0949:     IF (opm_ListBox_ConfigMods.ItemIndex >= 0) THEN
0950:       BEGIN
0951:         opm_Form_ConfigMod.MC_Name := TRIM (opm_ListBox_ConfigMods.Items[opm_ListBox_ConfigMods.ItemIndex] + '.' + opmC_Def_ModulesExt);
0952:         opm_Form_ConfigMod.MC_AddEdit := FALSE;
0953:         IF (opm_Form_ConfigMod.ShowModal = mrOK) THEN opm_PRRefresh_ModuleList (opm_ListBox_ConfigMods.ItemIndex);
0954:       END;
0955:   end;
0956:   
0957:   
0958:   
0959:   
0960:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0961:   {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0962:   procedure Topm_Form_Config.opm_ListBox_ConfigReportsDblClick(Sender: TObject);
0963:   begin
0964:     IF (opm_ListBox_ConfigReports.ItemIndex >= 0) THEN
0965:       BEGIN
0966:         TRY
0967:           opm_frReport_Config.LoadFromFile (ExtractFilePath (Application.Exename) + opmC_DirReports + '/' + opm_ListBox_ConfigReports.Items[opm_ListBox_ConfigReports.ItemIndex]);
0968:           opm_frReport_Config.DesignReport;
0969:         EXCEPT
0970:           ON E : Exception DO
0971:             BEGIN
0972:               FNopm_Message (_('Error while editing report') + #13#10 + E.Message, mtError, [mbOk], opmG_UISilent);
0973:             END;
0974:         END;
0975:         opm_PRRefresh_ReportList (opm_ListBox_ConfigReports.ItemIndex);
0976:       END;
0977:   end;
0978:   
0979:   
0980:   end.
 
 
NA fum/lmd: 2007.07.15
Copyright ©1994-2024 by Mario A. Valdez-Ramírez.
no siga este enlace / do not follow this link