diff --git a/FoxBin2PRGVersionFile.txt b/FoxBin2PRGVersionFile.txt index d520fb1..d9b83cd 100644 --- a/FoxBin2PRGVersionFile.txt +++ b/FoxBin2PRGVersionFile.txt @@ -3,7 +3,7 @@ Lparameters toUpdateInfo Local lcNote With toUpdateInfo .VersionNumber = 'v1.19.51' - .VersionDate = Date(2018,07,09) + .VersionDate = Date(2018,07,13) .SourceFileUrl = 'http://vfpxrepository.com/dl/thorupdate/Projects/FoxBin2Prg/FoxBin2Prg.Zip' .Link = 'https://github.com/fdbozzo/foxbin2prg/wiki' @@ -21,6 +21,10 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg Change History ------------------------------------------------------------- +2018-07-13 v1.19.51.4 +- Bug Fix: The alphabetic ordering of ADD OBJECT's objects can cause that some objects be created in erroneous order, causing unexpected behavior (Jochen Kauz) [https://github.com/fdbozzo/foxbin2prg/issues/28] +- NOTE: This Bug Fix implies that when tx2 files are regenerated, differences will occur almost certainly for the first time, so do not regenerate all tx2 files unnecesarily to keep differences at minimum. + 2018-07-09 v1.19.51.3 - Bug Fix: Error 1098, Cannot find ... [ENDT] that closes ... [TEXT] Issue#26 when there is a field named TEXT as first line-word (KIRIDES) diff --git a/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vc2 b/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vc2 index 1d465d4..888f4aa 100644 --- a/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vc2 +++ b/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vc2 @@ -137,7 +137,7 @@ DEFINE CLASS grdbase AS grid ENDDEFINE -DEFINE CLASS grdgeneral AS grdbase OF "classlib.vcx" +DEFINE CLASS grdgeneral AS grdbase OF "classlib_method_order_bug_test.vcx" *< CLASSDATA: Baseclass="grid" Timestamp="" Scale="Pixels" Uniqueid="" /> Name = "grdgeneral" diff --git a/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vct b/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vct index 1894eb3..74d0c7a 100644 Binary files a/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vct and b/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vct differ diff --git a/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vcx b/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vcx index 3ffee3f..2a927a8 100644 Binary files a/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vcx and b/TESTS/DATOS_READONLY/classlib_method_order_bug_test.vcx differ diff --git a/TESTS/DATOS_READONLY/encuestas.db2 b/TESTS/DATOS_READONLY/encuestas.db2 index de7b18f..d4c6ae5 100644 --- a/TESTS/DATOS_READONLY/encuestas.db2 +++ b/TESTS/DATOS_READONLY/encuestas.db2 @@ -5,10 +5,11 @@ *< FOXBIN2PRG: Version="1.19" SourceFile="encuestas.dbf" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * + 1252 - 2014/01/31 + 0x00000030Visual FoxPro @@ -116,4 +117,28 @@ + + + + + + PEPE + id1 + Q + 1969/11/25 + + + + + PEPE + id2 + NQ + 1969/11/25 + + + + + +
+ diff --git a/TESTS/DATOS_READONLY/f_checkbox.sc2 b/TESTS/DATOS_READONLY/f_checkbox.sc2 index 5222614..05a45b7 100644 --- a/TESTS/DATOS_READONLY/f_checkbox.sc2 +++ b/TESTS/DATOS_READONLY/f_checkbox.sc2 @@ -40,13 +40,13 @@ DEFINE CLASS f_base1 AS f_base OF "lib_controles.vcx" Left = 0 Name = "F_base1" Top = 0 - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "CHECKBOX NORMAL" Label1.Name = "Label1" Label2.Caption = "CHECKBOX SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Check1' AS checkbox WITH ; Alignment = 0, ; diff --git a/TESTS/DATOS_READONLY/f_combobox.sc2 b/TESTS/DATOS_READONLY/f_combobox.sc2 index 632122d..e46ebb6 100644 --- a/TESTS/DATOS_READONLY/f_combobox.sc2 +++ b/TESTS/DATOS_READONLY/f_combobox.sc2 @@ -38,13 +38,13 @@ DEFINE CLASS f_base1 AS f_base OF "lib_controles.vcx" DoCreate = .T. Name = "F_base1" - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "COMBOBOX NORMAL" Label1.Name = "Label1" Label2.Caption = "COMBOBOX SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_ComboDropdown1' AS cl_combobox WITH ; Alignment = 0, ; @@ -1111,7 +1111,7 @@ DEFINE CLASS f_base1 AS f_base OF "lib_controles.vcx" WhatsThisHelpID = -1, ; Width = 200 *< END OBJECT: BaseClass="combobox" /> - + PROCEDURE Cl_ComboDropdown1.Init this.AddListItem('Este es el valor.A1') this.AddListItem('Este es el valor.A2', this.NewItemId, 2) diff --git a/TESTS/DATOS_READONLY/f_commandgroup.sc2 b/TESTS/DATOS_READONLY/f_commandgroup.sc2 index 89b7a58..2beba0f 100644 --- a/TESTS/DATOS_READONLY/f_commandgroup.sc2 +++ b/TESTS/DATOS_READONLY/f_commandgroup.sc2 @@ -34,14 +34,14 @@ DEFINE CLASS f_base1 AS f_base OF "lib_controles.vcx" DoCreate = .T. Name = "F_base1" - Command2.Name = "Command2" Edit1.Name = "Edit1" Edit1.Value = * En los OptionGroup subclasados, cuando el Option de la clase de base tiene Autosize=.T. y la instancia tiene Autosize=.F., ocurre esto: - Los option normales deben mantener su longitud y apariencia nuevos - Los option graficos deben mantener su longitud y apariencia, pero pierden en height (bug de VFP) * En los OptionGroup normales, no hay problemas y se deben mantener igual siempre * RECOMENDACIÓN: No usar Autosize=.T. en una clase de base + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "COMMANDGROUP NORMAL" Label1.Name = "Label1" Label2.Caption = "COMMANDGROUP SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_commandbutton1' AS cl_commandbutton WITH ; Alignment = 2, ; diff --git a/TESTS/DATOS_READONLY/f_containers.sc2 b/TESTS/DATOS_READONLY/f_containers.sc2 index 8ec7c03..7e78c20 100644 --- a/TESTS/DATOS_READONLY/f_containers.sc2 +++ b/TESTS/DATOS_READONLY/f_containers.sc2 @@ -31,13 +31,13 @@ DEFINE CLASS f_base1 AS f_base OF "lib_controles.vcx" DoCreate = .T. Name = "F_base1" - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "CONTAINER NORMAL" Label1.Name = "Label1" Label2.Caption = "CONTAINER SUBCLASADO" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_container1' AS cl_container WITH ; Anchor = 0, ; diff --git a/TESTS/DATOS_READONLY/f_form_aa.sc2 b/TESTS/DATOS_READONLY/f_form_aa.sc2 index fe1ddc3..699fcbd 100644 --- a/TESTS/DATOS_READONLY/f_form_aa.sc2 +++ b/TESTS/DATOS_READONLY/f_form_aa.sc2 @@ -152,18 +152,25 @@ DEFINE CLASS f_form_aa AS f_base OF "lib_controles.vcx" WindowState = 0 WindowType = 0 ZoomBox = .F. - cmdCapturar.Height = 27 - cmdCapturar.Left = 764 - cmdCapturar.Name = "cmdCapturar" - cmdCapturar.RightToLeft = .F. - cmdCapturar.Top = 392 - cmdCapturar.Width = 212 Edit1.Height = 144 Edit1.Left = 764 Edit1.Name = "Edit1" Edit1.RightToLeft = .F. Edit1.Top = 32 Edit1.Width = 212 + Label3.BackColor = 128,255,128 + Label3.Height = 17 + Label3.Left = 764 + Label3.Name = "Label3" + Label3.RightToLeft = .F. + Label3.Top = 8 + Label3.Width = 212 + cmdCapturar.Height = 27 + cmdCapturar.Left = 764 + cmdCapturar.Name = "cmdCapturar" + cmdCapturar.RightToLeft = .F. + cmdCapturar.Top = 392 + cmdCapturar.Width = 212 Label1.BackColor = 128,255,128 Label1.Caption = "CONTROLES" Label1.Height = 17 @@ -180,13 +187,6 @@ DEFINE CLASS f_form_aa AS f_base OF "lib_controles.vcx" Label2.RightToLeft = .F. Label2.Top = 8 Label2.Width = 460 - Label3.BackColor = 128,255,128 - Label3.Height = 17 - Label3.Left = 764 - Label3.Name = "Label3" - Label3.RightToLeft = .F. - Label3.Top = 8 - Label3.Width = 212 ADD OBJECT 'Cl_grid1' AS cl_grid WITH ; AllowAddNew = .F., ; diff --git a/TESTS/DATOS_READONLY/f_form_aa2.sc2 b/TESTS/DATOS_READONLY/f_form_aa2.sc2 index 4de1213..e175f1f 100644 --- a/TESTS/DATOS_READONLY/f_form_aa2.sc2 +++ b/TESTS/DATOS_READONLY/f_form_aa2.sc2 @@ -27,6 +27,14 @@ DEFINE CLASS f_form_aa1 AS f_form_aa OF "lib_controles.vcx" Left = (2) Name = "F_form_aa1" Top = (4) + Cl_image1.Height = 104 + Cl_image1.Name = "Cl_image1" + Cl_image1.Width = 212 + Edit1.Name = "Edit1" + Label3.Name = "Label3" + cmdCapturar.Name = "cmdCapturar" + Label1.Name = "Label1" + Label2.Name = "Label2" Cl_grid1.AllowAddNew = .F. Cl_grid1.AllowAutoColumnFit = 0 Cl_grid1.AllowCellSelection = .T. @@ -403,17 +411,6 @@ DEFINE CLASS f_form_aa1 AS f_form_aa OF "lib_controles.vcx" Cl_grid1.View = 0 Cl_grid1.Visible = .T. Cl_grid1.WhatsThisHelpID = -1 - Cl_image1.Height = 104 - Cl_image1.Name = "Cl_image1" - Cl_image1.Width = 212 - cmdCapturar.Name = "cmdCapturar" - Edit1.Name = "Edit1" - Image1.Height = 104 - Image1.Name = "Image1" - Image1.Width = 212 - Label1.Name = "Label1" - Label2.Name = "Label2" - Label3.Name = "Label3" pgf.ActivePage = 2 pgf.Anchor = 0 pgf.ColorSource = 4 @@ -1327,5 +1324,8 @@ DEFINE CLASS f_form_aa1 AS f_form_aa OF "lib_controles.vcx" pgf.Visible = .T. pgf.WhatsThisHelpID = -1 pgf.Width = 268 + Image1.Height = 104 + Image1.Name = "Image1" + Image1.Width = 212 ENDDEFINE diff --git a/TESTS/DATOS_READONLY/f_form_controles.sc2 b/TESTS/DATOS_READONLY/f_form_controles.sc2 index f349a22..a90be08 100644 --- a/TESTS/DATOS_READONLY/f_form_controles.sc2 +++ b/TESTS/DATOS_READONLY/f_form_controles.sc2 @@ -192,18 +192,18 @@ DEFINE CLASS f_base1 AS f_base OF "lib_controles.vcx" WindowState = 0 WindowType = 0 ZoomBox = .F. - cmdCapturar.Name = "cmdCapturar" - cmdCapturar.RightToLeft = .F. Edit1.Name = "Edit1" Edit1.RightToLeft = .F. + Label3.Name = "Label3" + Label3.RightToLeft = .F. + cmdCapturar.Name = "cmdCapturar" + cmdCapturar.RightToLeft = .F. Label1.Caption = "CONTROL NORMAL" Label1.Name = "Label1" Label1.RightToLeft = .F. Label2.Caption = "CONTROL SUBCLASADOS" Label2.Name = "Label2" Label2.RightToLeft = .F. - Label3.Name = "Label3" - Label3.RightToLeft = .F. ADD OBJECT 'Cl_collection1' AS cl_collection WITH ; Left = 325, ; diff --git a/TESTS/DATOS_READONLY/f_formset.sc2 b/TESTS/DATOS_READONLY/f_formset.sc2 index 5f4fbe3..2482016 100644 --- a/TESTS/DATOS_READONLY/f_formset.sc2 +++ b/TESTS/DATOS_READONLY/f_formset.sc2 @@ -187,16 +187,16 @@ DEFINE CLASS formset AS formset WindowState = 0, ; WindowType = 0, ; ZoomBox = .F., ; - cmdCapturar.Name = "cmdCapturar", ; - cmdCapturar.RightToLeft = .F., ; Edit1.Name = "Edit1", ; Edit1.RightToLeft = .F., ; + Label3.Name = "Label3", ; + Label3.RightToLeft = .F., ; + cmdCapturar.Name = "cmdCapturar", ; + cmdCapturar.RightToLeft = .F., ; Label1.Name = "Label1", ; Label1.RightToLeft = .F., ; Label2.Name = "Label2", ; - Label2.RightToLeft = .F., ; - Label3.Name = "Label3", ; - Label3.RightToLeft = .F. + Label2.RightToLeft = .F. *< END OBJECT: ClassLib="lib_controles.vcx" BaseClass="form" /> ADD OBJECT 'F_base1.Cl_grid1' AS cl_grid WITH ; diff --git a/TESTS/DATOS_READONLY/f_listbox.sc2 b/TESTS/DATOS_READONLY/f_listbox.sc2 index c2ed217..4454467 100644 --- a/TESTS/DATOS_READONLY/f_listbox.sc2 +++ b/TESTS/DATOS_READONLY/f_listbox.sc2 @@ -35,13 +35,13 @@ DEFINE CLASS f_listbox_test AS f_base OF "lib_controles.vcx" Left = 0 Name = "F_Listbox_Test" Top = 0 - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "LISTBOX NORMAL" Label1.Name = "Label1" Label2.Caption = "LISTBOX SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_ListBox1' AS cl_listbox WITH ; Anchor = 0, ; @@ -508,7 +508,7 @@ DEFINE CLASS f_listbox_test AS f_base OF "lib_controles.vcx" WhatsThisHelpID = -1, ; Width = 224 *< END OBJECT: BaseClass="listbox" /> - + PROCEDURE Cl_ListBox1.Init this.AddListItem('Este es el valor.A1') this.AddListItem('Este es el valor.A2', this.NewItemId, 2) diff --git a/TESTS/DATOS_READONLY/f_optiongroup.sc2 b/TESTS/DATOS_READONLY/f_optiongroup.sc2 index 5df6ae1..fd558c1 100644 --- a/TESTS/DATOS_READONLY/f_optiongroup.sc2 +++ b/TESTS/DATOS_READONLY/f_optiongroup.sc2 @@ -41,13 +41,13 @@ DEFINE CLASS f_optiongroup_test AS f_base OF "lib_controles.vcx" Name = "F_OptionGroup_Test" Top = 0 Width = 819 - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "OPTIONGROUP NORMAL" Label1.Name = "Label1" Label2.Caption = "OPTIONGROUP SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_option1' AS cl_option WITH ; Alignment = 0, ; diff --git a/TESTS/DATOS_READONLY/f_optiongroup2.sc2 b/TESTS/DATOS_READONLY/f_optiongroup2.sc2 index 82c4457..40697f7 100644 --- a/TESTS/DATOS_READONLY/f_optiongroup2.sc2 +++ b/TESTS/DATOS_READONLY/f_optiongroup2.sc2 @@ -22,31 +22,11 @@ DEFINE CLASS f_optiongroup1 AS f_optiongroup OF "lib_controles.vcx" DoCreate = .T. Name = "F_optiongroup1" - Cl_optiongroup1.Name = "Cl_optiongroup1" - Cl_optiongroup1.Option1.Left = 8 - Cl_optiongroup1.Option1.Name = "Option1" - Cl_optiongroup1.Option1.Top = 4 - Cl_optiongroup1.Option2.Left = 8 - Cl_optiongroup1.Option2.Name = "Option2" - Cl_optiongroup1.Option2.Top = 28 - Cl_optiongroup1.Option3.Left = 8 - Cl_optiongroup1.Option3.Name = "Option3" - Cl_optiongroup1.Option3.Top = 52 - Cl_optiongroup2.Name = "Cl_optiongroup2" - Cl_optiongroup2.Option1.Left = 8 - Cl_optiongroup2.Option1.Name = "Option1" - Cl_optiongroup2.Option1.Top = 4 - Cl_optiongroup2.Option2.Left = 8 - Cl_optiongroup2.Option2.Name = "Option2" - Cl_optiongroup2.Option2.Top = 28 - Cl_optiongroup2.Option3.Left = 8 - Cl_optiongroup2.Option3.Name = "Option3" - Cl_optiongroup2.Option3.Top = 52 - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Name = "Label1" Label2.Name = "Label2" - Label3.Name = "Label3" Optiongroup1.Anchor = 0 Optiongroup1.AutoSize = .F. Optiongroup1.BackColor = 240,240,240 @@ -156,16 +136,26 @@ DEFINE CLASS f_optiongroup1 AS f_optiongroup OF "lib_controles.vcx" Optiongroup1.Visible = .T. Optiongroup1.WhatsThisHelpID = -1 Optiongroup1.Width = (248) - Optiongroup2.Cl_option1.Left = 16 - Optiongroup2.Cl_option1.Name = "Cl_option1" - Optiongroup2.Cl_option1.Top = 4 - Optiongroup2.Cl_option2.Left = 16 - Optiongroup2.Cl_option2.Name = "Cl_option2" - Optiongroup2.Cl_option2.Top = 28 - Optiongroup2.Cl_option3.Left = 16 - Optiongroup2.Cl_option3.Name = "Cl_option3" - Optiongroup2.Cl_option3.Top = 52 - Optiongroup2.Name = "Optiongroup2" + Cl_optiongroup1.Name = "Cl_optiongroup1" + Cl_optiongroup1.Option1.Left = 8 + Cl_optiongroup1.Option1.Name = "Option1" + Cl_optiongroup1.Option1.Top = 4 + Cl_optiongroup1.Option2.Left = 8 + Cl_optiongroup1.Option2.Name = "Option2" + Cl_optiongroup1.Option2.Top = 28 + Cl_optiongroup1.Option3.Left = 8 + Cl_optiongroup1.Option3.Name = "Option3" + Cl_optiongroup1.Option3.Top = 52 + Cl_optiongroup2.Name = "Cl_optiongroup2" + Cl_optiongroup2.Option1.Left = 8 + Cl_optiongroup2.Option1.Name = "Option1" + Cl_optiongroup2.Option1.Top = 4 + Cl_optiongroup2.Option2.Left = 8 + Cl_optiongroup2.Option2.Name = "Option2" + Cl_optiongroup2.Option2.Top = 28 + Cl_optiongroup2.Option3.Left = 8 + Cl_optiongroup2.Option3.Name = "Option3" + Cl_optiongroup2.Option3.Top = 52 Pageframe1.ErasePage = .T. Pageframe1.Name = "Pageframe1" Pageframe1.Page1.Cl_optiongroup1.Name = "Cl_optiongroup1" @@ -211,5 +201,15 @@ DEFINE CLASS f_optiongroup1 AS f_optiongroup OF "lib_controles.vcx" Pageframe1.Page1.Optiongroup2.Cl_option3.Top = 52 Pageframe1.Page1.Optiongroup2.Name = "Optiongroup2" Pageframe1.Page2.Name = "Page2" + Optiongroup2.Cl_option1.Left = 16 + Optiongroup2.Cl_option1.Name = "Cl_option1" + Optiongroup2.Cl_option1.Top = 4 + Optiongroup2.Cl_option2.Left = 16 + Optiongroup2.Cl_option2.Name = "Cl_option2" + Optiongroup2.Cl_option2.Top = 28 + Optiongroup2.Cl_option3.Left = 16 + Optiongroup2.Cl_option3.Name = "Cl_option3" + Optiongroup2.Cl_option3.Top = 52 + Optiongroup2.Name = "Optiongroup2" ENDDEFINE diff --git a/TESTS/DATOS_READONLY/f_test.sc2 b/TESTS/DATOS_READONLY/f_test.sc2 index 1b736f3..e9fac45 100644 --- a/TESTS/DATOS_READONLY/f_test.sc2 +++ b/TESTS/DATOS_READONLY/f_test.sc2 @@ -20,129 +20,11 @@ DEFINE CLASS f_form_controles1 AS f_form_controles OF "lib_controles.vcx" DoCreate = .T. Name = "F_form_controles1" - Cl_image1.Height = 16 - Cl_image1.Name = "Cl_image1" - Cl_image1.Width = 17 - Cl_image10.Height = 16 - Cl_image10.Name = "Cl_image10" - Cl_image10.Width = 17 - Cl_image2.Name = "Cl_image2" - Cl_image3.Height = 16 - Cl_image3.Name = "Cl_image3" - Cl_image3.Width = 17 - Cl_image4.Name = "Cl_image4" - Cl_image5.Height = 16 - Cl_image5.Name = "Cl_image5" - Cl_image5.Width = 17 - Cl_image6.Height = 16 - Cl_image6.Name = "Cl_image6" - Cl_image6.Width = 17 - Cl_image7.Name = "Cl_image7" - Cl_image8.Height = 16 - Cl_image8.Name = "Cl_image8" - Cl_image8.Width = 17 - Cl_image9.Name = "Cl_image9" - Cl_label1.Name = "Cl_label1" - Cl_label2.Name = "Cl_label2" - Cl_line1.Name = "Cl_line1" - Cl_line2.Name = "Cl_line2" - Cl_pageframe1.ErasePage = .T. - Cl_pageframe1.Name = "Cl_pageframe1" - Cl_pageframe1.Page1.Name = "Page1" - Cl_pageframe1.Page2.Image1.Height = 16 - Cl_pageframe1.Page2.Image1.Name = "Image1" - Cl_pageframe1.Page2.Image1.Width = 17 - Cl_pageframe1.Page2.Image10.Height = 16 - Cl_pageframe1.Page2.Image10.Name = "Image10" - Cl_pageframe1.Page2.Image10.Width = 17 - Cl_pageframe1.Page2.Image2.Name = "Image2" - Cl_pageframe1.Page2.Image3.Height = 16 - Cl_pageframe1.Page2.Image3.Name = "Image3" - Cl_pageframe1.Page2.Image3.Width = 17 - Cl_pageframe1.Page2.Image4.Name = "Image4" - Cl_pageframe1.Page2.Image5.Height = 16 - Cl_pageframe1.Page2.Image5.Name = "Image5" - Cl_pageframe1.Page2.Image5.Width = 17 - Cl_pageframe1.Page2.Image6.Height = 16 - Cl_pageframe1.Page2.Image6.Name = "Image6" - Cl_pageframe1.Page2.Image6.Width = 17 - Cl_pageframe1.Page2.Image7.Name = "Image7" - Cl_pageframe1.Page2.Image8.Height = 16 - Cl_pageframe1.Page2.Image8.Name = "Image8" - Cl_pageframe1.Page2.Image8.Width = 17 - Cl_pageframe1.Page2.Image9.Name = "Image9" - Cl_pageframe1.Page2.Label4.Name = "Label4" - Cl_pageframe1.Page2.Label5.Name = "Label5" - Cl_pageframe1.Page2.Line1.Name = "Line1" - Cl_pageframe1.Page2.Line2.Name = "Line2" - Cl_pageframe1.Page2.Name = "Page2" - Cl_pageframe1.Page2.Shape1.Name = "Shape1" - Cl_pageframe1.Page2.Shape2.Name = "Shape2" - Cl_pageframe1.Page2.Spinner1.Name = "Spinner1" - Cl_pageframe1.Page2.Spinner2.Name = "Spinner2" - Cl_pageframe1.Page3.Name = "Page3" - Cl_shape1.Name = "Cl_shape1" - Cl_shape2.Name = "Cl_shape2" - Cl_spinner1.Name = "Cl_spinner1" - Cl_spinner2.Name = "Cl_spinner2" - Command2.Name = "Command2" Edit1.Name = "Edit1" - Image1.Anchor = 0 - Image1.BackStyle = 1 - Image1.BorderColor = 100,100,100 - Image1.BorderStyle = 0 - Image1.ColorSource = 4 - Image1.Comment = "" - Image1.DefHeight = - Image1.DefLeft = - Image1.DefTop = - Image1.DefWidth = - Image1.DragIcon = ..\..\ - Image1.DragMode = 0 - Image1.Enabled = .T. - Image1.Height = (16) - Image1.HelpContextID = 0 - Image1.Left = (44) - Image1.MouseIcon = ..\..\ - Image1.MousePointer = 0 - Image1.Name = "Image1" - Image1.OLEDragMode = 0 - Image1.OLEDragPicture = ..\..\ - Image1.OLEDropEffects = 3 - Image1.OLEDropMode = 0 - Image1.Picture = bmps\sobrepostal.bmp - Image1.RotateFlip = 0 - Image1.StatusBarText = "" - Image1.Stretch = 0 - Image1.Tag = "" - Image1.Themes = .T. - Image1.ToolTipText = "" - Image1.Top = (100) - Image1.Visible = .T. - Image1.WhatsThisHelpID = -1 - Image1.Width = (17) - Image10.Height = 16 - Image10.Name = "Image10" - Image10.Width = 17 - Image2.Name = "Image2" - Image3.Height = 16 - Image3.Name = "Image3" - Image3.Width = 17 - Image4.Name = "Image4" - Image5.Height = 16 - Image5.Name = "Image5" - Image5.Width = 17 - Image6.Height = 16 - Image6.Name = "Image6" - Image6.Width = 17 - Image7.Name = "Image7" - Image8.Height = 16 - Image8.Name = "Image8" - Image8.Width = 17 - Image9.Name = "Image9" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Name = "Label1" Label2.Name = "Label2" - Label3.Name = "Label3" Label4.Alignment = 0 Label4.Anchor = 0 Label4.AutoSize = .F. @@ -193,7 +75,47 @@ DEFINE CLASS f_form_controles1 AS f_form_controles OF "lib_controles.vcx" Label4.WhatsThisHelpID = -1 Label4.Width = (104) Label4.WordWrap = .F. - Label5.Name = "Label5" + Shape1.Anchor = 0 + Shape1.BackColor = 240,240,240 + Shape1.BackStyle = 1 + Shape1.BorderColor = 100,100,100 + Shape1.BorderStyle = 1 + Shape1.BorderWidth = 1 + Shape1.ColorScheme = 1 + Shape1.ColorSource = 4 + Shape1.Comment = "" + Shape1.Curvature = 0 + Shape1.DefHeight = + Shape1.DefLeft = + Shape1.DefTop = + Shape1.DefWidth = + Shape1.DragIcon = ..\..\ + Shape1.DragMode = 0 + Shape1.DrawMode = 13 + Shape1.Enabled = .T. + Shape1.FillColor = 0,0,0 + Shape1.FillStyle = 1 + Shape1.Height = (17) + Shape1.HelpContextID = 0 + Shape1.Left = (44) + Shape1.MouseIcon = ..\..\ + Shape1.MousePointer = 0 + Shape1.Name = "Shape1" + Shape1.OLEDragMode = 0 + Shape1.OLEDragPicture = ..\..\ + Shape1.OLEDropEffects = 3 + Shape1.OLEDropMode = 0 + Shape1.PolyPoints = "" + Shape1.Rotation = 0 + Shape1.SpecialEffect = 0 + Shape1.StatusBarText = "" + Shape1.Style = 0 + Shape1.Tag = "" + Shape1.ToolTipText = "" + Shape1.Top = (60) + Shape1.Visible = .T. + Shape1.WhatsThisHelpID = -1 + Shape1.Width = (105) Line1.Anchor = 0 Line1.BorderColor = 100,100,100 Line1.BorderStyle = 1 @@ -228,7 +150,48 @@ DEFINE CLASS f_form_controles1 AS f_form_controles OF "lib_controles.vcx" Line1.Visible = .T. Line1.WhatsThisHelpID = -1 Line1.Width = (104) - Line2.Name = "Line2" + Image1.Anchor = 0 + Image1.BackStyle = 1 + Image1.BorderColor = 100,100,100 + Image1.BorderStyle = 0 + Image1.ColorSource = 4 + Image1.Comment = "" + Image1.DefHeight = + Image1.DefLeft = + Image1.DefTop = + Image1.DefWidth = + Image1.DragIcon = ..\..\ + Image1.DragMode = 0 + Image1.Enabled = .T. + Image1.Height = (16) + Image1.HelpContextID = 0 + Image1.Left = (44) + Image1.MouseIcon = ..\..\ + Image1.MousePointer = 0 + Image1.Name = "Image1" + Image1.OLEDragMode = 0 + Image1.OLEDragPicture = ..\..\ + Image1.OLEDropEffects = 3 + Image1.OLEDropMode = 0 + Image1.Picture = bmps\sobrepostal.bmp + Image1.RotateFlip = 0 + Image1.StatusBarText = "" + Image1.Stretch = 0 + Image1.Tag = "" + Image1.Themes = .T. + Image1.ToolTipText = "" + Image1.Top = (100) + Image1.Visible = .T. + Image1.WhatsThisHelpID = -1 + Image1.Width = (17) + Image2.Name = "Image2" + Image3.Height = 16 + Image3.Name = "Image3" + Image3.Width = 17 + Image4.Name = "Image4" + Image5.Height = 16 + Image5.Name = "Image5" + Image5.Width = 17 Pageframe1.ActivePage = 2 Pageframe1.Anchor = 0 Pageframe1.cl_page1.BackColor = 240,240,240 @@ -348,48 +311,6 @@ DEFINE CLASS f_form_controles1 AS f_form_controles OF "lib_controles.vcx" Pageframe1.Visible = .T. Pageframe1.WhatsThisHelpID = -1 Pageframe1.Width = (256) - Shape1.Anchor = 0 - Shape1.BackColor = 240,240,240 - Shape1.BackStyle = 1 - Shape1.BorderColor = 100,100,100 - Shape1.BorderStyle = 1 - Shape1.BorderWidth = 1 - Shape1.ColorScheme = 1 - Shape1.ColorSource = 4 - Shape1.Comment = "" - Shape1.Curvature = 0 - Shape1.DefHeight = - Shape1.DefLeft = - Shape1.DefTop = - Shape1.DefWidth = - Shape1.DragIcon = ..\..\ - Shape1.DragMode = 0 - Shape1.DrawMode = 13 - Shape1.Enabled = .T. - Shape1.FillColor = 0,0,0 - Shape1.FillStyle = 1 - Shape1.Height = (17) - Shape1.HelpContextID = 0 - Shape1.Left = (44) - Shape1.MouseIcon = ..\..\ - Shape1.MousePointer = 0 - Shape1.Name = "Shape1" - Shape1.OLEDragMode = 0 - Shape1.OLEDragPicture = ..\..\ - Shape1.OLEDropEffects = 3 - Shape1.OLEDropMode = 0 - Shape1.PolyPoints = "" - Shape1.Rotation = 0 - Shape1.SpecialEffect = 0 - Shape1.StatusBarText = "" - Shape1.Style = 0 - Shape1.Tag = "" - Shape1.ToolTipText = "" - Shape1.Top = (60) - Shape1.Visible = .T. - Shape1.WhatsThisHelpID = -1 - Shape1.Width = (105) - Shape2.Name = "Shape2" Spinner1.Alignment = 1 Spinner1.Anchor = 0 Spinner1.BackColor = 255,255,255 @@ -456,6 +377,85 @@ DEFINE CLASS f_form_controles1 AS f_form_controles OF "lib_controles.vcx" Spinner1.Visible = .T. Spinner1.WhatsThisHelpID = -1 Spinner1.Width = (104) + Label5.Name = "Label5" + Shape2.Name = "Shape2" + Line2.Name = "Line2" + Image6.Height = 16 + Image6.Name = "Image6" + Image6.Width = 17 + Image7.Name = "Image7" + Image8.Height = 16 + Image8.Name = "Image8" + Image8.Width = 17 + Image9.Name = "Image9" + Image10.Height = 16 + Image10.Name = "Image10" + Image10.Width = 17 Spinner2.Name = "Spinner2" + Cl_pageframe1.ErasePage = .T. + Cl_pageframe1.Name = "Cl_pageframe1" + Cl_pageframe1.Page1.Name = "Page1" + Cl_pageframe1.Page2.Image1.Height = 16 + Cl_pageframe1.Page2.Image1.Name = "Image1" + Cl_pageframe1.Page2.Image1.Width = 17 + Cl_pageframe1.Page2.Image10.Height = 16 + Cl_pageframe1.Page2.Image10.Name = "Image10" + Cl_pageframe1.Page2.Image10.Width = 17 + Cl_pageframe1.Page2.Image2.Name = "Image2" + Cl_pageframe1.Page2.Image3.Height = 16 + Cl_pageframe1.Page2.Image3.Name = "Image3" + Cl_pageframe1.Page2.Image3.Width = 17 + Cl_pageframe1.Page2.Image4.Name = "Image4" + Cl_pageframe1.Page2.Image5.Height = 16 + Cl_pageframe1.Page2.Image5.Name = "Image5" + Cl_pageframe1.Page2.Image5.Width = 17 + Cl_pageframe1.Page2.Image6.Height = 16 + Cl_pageframe1.Page2.Image6.Name = "Image6" + Cl_pageframe1.Page2.Image6.Width = 17 + Cl_pageframe1.Page2.Image7.Name = "Image7" + Cl_pageframe1.Page2.Image8.Height = 16 + Cl_pageframe1.Page2.Image8.Name = "Image8" + Cl_pageframe1.Page2.Image8.Width = 17 + Cl_pageframe1.Page2.Image9.Name = "Image9" + Cl_pageframe1.Page2.Label4.Name = "Label4" + Cl_pageframe1.Page2.Label5.Name = "Label5" + Cl_pageframe1.Page2.Line1.Name = "Line1" + Cl_pageframe1.Page2.Line2.Name = "Line2" + Cl_pageframe1.Page2.Name = "Page2" + Cl_pageframe1.Page2.Shape1.Name = "Shape1" + Cl_pageframe1.Page2.Shape2.Name = "Shape2" + Cl_pageframe1.Page2.Spinner1.Name = "Spinner1" + Cl_pageframe1.Page2.Spinner2.Name = "Spinner2" + Cl_pageframe1.Page3.Name = "Page3" + Cl_label1.Name = "Cl_label1" + Cl_shape1.Name = "Cl_shape1" + Cl_line1.Name = "Cl_line1" + Cl_image1.Height = 16 + Cl_image1.Name = "Cl_image1" + Cl_image1.Width = 17 + Cl_image2.Name = "Cl_image2" + Cl_image3.Height = 16 + Cl_image3.Name = "Cl_image3" + Cl_image3.Width = 17 + Cl_image4.Name = "Cl_image4" + Cl_image5.Height = 16 + Cl_image5.Name = "Cl_image5" + Cl_image5.Width = 17 + Cl_spinner1.Name = "Cl_spinner1" + Cl_label2.Name = "Cl_label2" + Cl_shape2.Name = "Cl_shape2" + Cl_line2.Name = "Cl_line2" + Cl_image6.Height = 16 + Cl_image6.Name = "Cl_image6" + Cl_image6.Width = 17 + Cl_image7.Name = "Cl_image7" + Cl_image8.Height = 16 + Cl_image8.Name = "Cl_image8" + Cl_image8.Width = 17 + Cl_image9.Name = "Cl_image9" + Cl_image10.Height = 16 + Cl_image10.Name = "Cl_image10" + Cl_image10.Width = 17 + Cl_spinner2.Name = "Cl_spinner2" ENDDEFINE diff --git a/TESTS/DATOS_READONLY/f_textbox.sc2 b/TESTS/DATOS_READONLY/f_textbox.sc2 index 3dfc4f8..d601e88 100644 --- a/TESTS/DATOS_READONLY/f_textbox.sc2 +++ b/TESTS/DATOS_READONLY/f_textbox.sc2 @@ -47,13 +47,13 @@ DEFINE CLASS f_textbox_test AS f_base OF "lib_controles.vcx" Left = 0 Name = "F_Textbox_Test" Top = 0 - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "TEXTBOX NORMAL" Label1.Name = "Label1" Label2.Caption = "TEXTBOX SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_editbox1' AS cl_editbox WITH ; AddLineFeeds = .T., ; diff --git a/TESTS/DATOS_READONLY/fb2p_foxuser.fr2 b/TESTS/DATOS_READONLY/fb2p_foxuser.fr2 index f5c3f86..b53d5b3 100644 --- a/TESTS/DATOS_READONLY/fb2p_foxuser.fr2 +++ b/TESTS/DATOS_READONLY/fb2p_foxuser.fr2 @@ -5,7 +5,7 @@ *< FOXBIN2PRG: Version="1.19" SourceFile="fb2p_foxuser.frx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * @@ -33,7 +33,7 @@ de report Properties de report Properties]]> @@ -45,7 +45,7 @@ de report Properties]]> @@ -57,7 +57,7 @@ de report Properties]]> @@ -69,7 +69,7 @@ de report Properties]]> @@ -81,7 +81,7 @@ de report Properties]]> @@ -93,7 +93,7 @@ de report Properties]]> @@ -105,7 +105,7 @@ de report Properties]]> @@ -117,7 +117,7 @@ de report Properties]]> de Label Properties]]> @@ -144,7 +144,7 @@ de Label Properties]]> @@ -156,7 +156,7 @@ de Label Properties]]> @@ -168,7 +168,7 @@ de Label Properties]]> @@ -180,7 +180,7 @@ de Label Properties]]> @@ -192,7 +192,7 @@ de Label Properties]]> @@ -204,7 +204,7 @@ de Label Properties]]> @@ -216,7 +216,7 @@ de Label Properties]]> @@ -228,7 +228,7 @@ de Label Properties]]> @@ -240,7 +240,7 @@ de Label Properties]]> @@ -252,7 +252,7 @@ de Label Properties]]> @@ -264,7 +264,7 @@ de Label Properties]]> de Label Properties]]> @@ -291,7 +291,7 @@ de Label Properties]]> de Label Properties]]> @@ -318,7 +318,7 @@ de Label Properties]]> @@ -330,7 +330,7 @@ de Label Properties]]> @@ -342,7 +342,7 @@ de Label Properties]]> @@ -354,7 +354,7 @@ de Label Properties]]> @@ -366,7 +366,7 @@ de Label Properties]]> @@ -378,7 +378,7 @@ de Label Properties]]> de Label Properties]]> @@ -405,7 +405,7 @@ de Label Properties]]> @@ -417,7 +417,7 @@ de Label Properties]]> de Label Properties]]> de Label Properties]]> @@ -459,7 +459,7 @@ de Label Properties]]> @@ -471,7 +471,7 @@ de Label Properties]]> @@ -483,7 +483,7 @@ de Label Properties]]> @@ -495,7 +495,7 @@ de Label Properties]]> @@ -507,7 +507,7 @@ de Label Properties]]> @@ -519,7 +519,7 @@ de Label Properties]]> @@ -531,7 +531,7 @@ de Label Properties]]> @@ -543,7 +543,7 @@ de Label Properties]]> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * - * *< LIBCOMMENT: Comentario principal de "fb2p_test.vcx" /> * @@ -54,8 +53,8 @@ DEFINE CLASS cl_form AS form OLEPUBLIC && mi OLE server DLL *p: _memberdata && XML Metadata for customizable properties * - HIDDEN chidden,ahidden - PROTECTED cprotected,aprotected + HIDDEN ahidden,chidden + PROTECTED aprotected,cprotected Caption = "Form" chidden = && Prop.Hidden cprotected = && Prop.Protegida diff --git a/TESTS/DATOS_READONLY/form1.sc2 b/TESTS/DATOS_READONLY/form1.sc2 index 8da5b4c..6ff153c 100644 --- a/TESTS/DATOS_READONLY/form1.sc2 +++ b/TESTS/DATOS_READONLY/form1.sc2 @@ -4,7 +4,6 @@ *-------------------------------------------------------------------------------------------------------------------------------------------------------- *< FOXBIN2PRG: Version="1.19" SourceFile="form1.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * - * #INCLUDE "include\keycodes.h" @@ -72,18 +71,10 @@ DEFINE CLASS frm_form1 AS form Name = "Cnt_controles1", ; TabIndex = 3, ; Top = 72, ; - Check1.Alignment = 0, ; - Check1.Name = "Check1", ; - Check1.TabIndex = 1, ; - Check1.ZOrderSet = 0, ; Check2.Alignment = 0, ; Check2.Name = "Check2", ; Check2.TabIndex = 2, ; Check2.ZOrderSet = 1, ; - Check3.Alignment = 0, ; - Check3.Name = "Check3", ; - Check3.TabIndex = 4, ; - Check3.ZOrderSet = 4, ; Check4.Alignment = 0, ; Check4.Name = "Check4", ; Check4.TabIndex = 5, ; @@ -93,7 +84,15 @@ DEFINE CLASS frm_form1 AS form Label_h.ZOrderSet = 2, ; Textbox_h.Name = "Textbox_h", ; Textbox_h.TabIndex = 3, ; - Textbox_h.ZOrderSet = 3 + Textbox_h.ZOrderSet = 3, ; + Check1.Alignment = 0, ; + Check1.Name = "Check1", ; + Check1.TabIndex = 1, ; + Check1.ZOrderSet = 0, ; + Check3.Alignment = 0, ; + Check3.Name = "Check3", ; + Check3.TabIndex = 4, ; + Check3.ZOrderSet = 4 *< END OBJECT: ClassLib="bca.vcx" BaseClass="container" /> ADD OBJECT 'Cnt_controles1.Label1' AS label WITH ; @@ -132,7 +131,7 @@ DEFINE CLASS frm_form1 AS form Name = "Olecontrol1", ; Top = 72, ; Width = 133 - *< END OBJECT: BaseClass="olecontrol" Nombre="frm_Form1.Olecontrol1" Parent="frm_Form1" ObjName="Olecontrol1" OLEObject="C:\Windows\system32\richtx32.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7////+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOBWdmE47c4BAwAAAAACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABPAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAEoAAAAAAAAABQAAAAIAAAD+////BAAAAP7///8GAAAABwAAAP7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9giHw7j9cbELm1BAIcAJQCIUM0EggAAAC/DQAAOhAAACFDNBIBAAYArAAAAAAA//8AAP//AQAAAAAAAAAAAAAATwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABcAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcWhqIFp0dVFoYTtqZGZuW2lhZXRyIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAACADAAAAFJpZ2h0TWFyZ2luABEAAABODQAAAAcAAAAAAAAAAAAAAAUAAABUZXh0ABQAAABIAAAAAAsAAABPbGVjb250cm9sMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAACAAAAAAAAAAQAAAAEAAQACAAgAAAB7XHJ0ZjFcYW5zaVxhbnNpY3BnMTI1MlxkZWZmMHtcZm9udHRibHtcZjBcZm5pbFxmY2hhcnNldDAgQXJpYWw7fX0NClx2aWV3a2luZDRcdWMxXHBhcmRcbGFuZzMwODJcZnMxOCBPbGVjb250cm9sMQ0KXHBhciB9DQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==" /> + *< END OBJECT: BaseClass="olecontrol" OLEObject="c:\windows\system32\richtx32.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7////+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOBWdmE47c4BAwAAAAACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABPAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAEoAAAAAAAAABQAAAAIAAAD+////BAAAAP7///8GAAAABwAAAP7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9giHw7j9cbELm1BAIcAJQCIUM0EggAAAC/DQAAOhAAACFDNBIBAAYArAAAAAAA//8AAP//AQAAAAAAAAAAAAAATwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABcAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcWhqIFp0dVFoYTtqZGZuW2lhZXRyIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAACADAAAAFJpZ2h0TWFyZ2luABEAAABODQAAAAcAAAAAAAAAAAAAAAUAAABUZXh0ABQAAABIAAAAAAsAAABPbGVjb250cm9sMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAACAAAAAAAAAAQAAAAEAAQACAAgAAAB7XHJ0ZjFcYW5zaVxhbnNpY3BnMTI1MlxkZWZmMHtcZm9udHRibHtcZjBcZm5pbFxmY2hhcnNldDAgQXJpYWw7fX0NClx2aWV3a2luZDRcdWMxXHBhcmRcbGFuZzMwODJcZnMxOCBPbGVjb250cm9sMQ0KXHBhciB9DQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==" /> PROCEDURE Load *-- Form 1 LOAD() diff --git a/TESTS/DATOS_READONLY/lib_controles.vc2 b/TESTS/DATOS_READONLY/lib_controles.vc2 index 9713188..7f6e9fd 100644 --- a/TESTS/DATOS_READONLY/lib_controles.vc2 +++ b/TESTS/DATOS_READONLY/lib_controles.vc2 @@ -1604,13 +1604,13 @@ DEFINE CLASS f_checkbox AS f_base OF "lib_controles.vcx" Left = 0 Name = "f_checkbox" Top = 1 - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "CHECKBOX NORMAL" Label1.Name = "Label1" Label2.Caption = "CHECKBOX SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Check1' AS checkbox WITH ; Alignment = 0, ; @@ -2413,18 +2413,18 @@ DEFINE CLASS f_combobox AS f_base OF "lib_controles.vcx" DoCreate = .T. Name = "f_combobox" - Command2.Name = "Command2" - Command2.TabIndex = 1 Edit1.Name = "Edit1" Edit1.TabIndex = 2 + Label3.Name = "Label3" + Label3.TabIndex = 3 + Command2.Name = "Command2" + Command2.TabIndex = 1 Label1.Caption = "COMBOBOX NORMAL" Label1.Name = "Label1" Label1.TabIndex = 4 Label2.Caption = "COMBOBOX SUBCLASADOS" Label2.Name = "Label2" Label2.TabIndex = 5 - Label3.Name = "Label3" - Label3.TabIndex = 3 ADD OBJECT 'Cl_ComboDropdown1' AS cl_combobox WITH ; Alignment = 0, ; @@ -3639,13 +3639,13 @@ DEFINE CLASS f_commandgroup AS f_base OF "lib_controles.vcx" Left = 0 Name = "f_commandgroup" Top = 0 - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "COMMANDGROUP NORMAL" Label1.Name = "Label1" Label2.Caption = "COMMANDGROUP SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_commandgroup1' AS cl_commandgroup WITH ; Anchor = 0, ; @@ -5028,18 +5028,25 @@ DEFINE CLASS f_form_aa AS f_base OF "lib_controles.vcx" WindowState = 0 WindowType = 0 ZoomBox = .F. - cmdCapturar.Height = 27 - cmdCapturar.Left = 764 - cmdCapturar.Name = "cmdCapturar" - cmdCapturar.RightToLeft = .F. - cmdCapturar.Top = 392 - cmdCapturar.Width = 212 Edit1.Height = 144 Edit1.Left = 764 Edit1.Name = "Edit1" Edit1.RightToLeft = .F. Edit1.Top = 32 Edit1.Width = 212 + Label3.BackColor = 128,255,128 + Label3.Height = 17 + Label3.Left = 764 + Label3.Name = "Label3" + Label3.RightToLeft = .F. + Label3.Top = 8 + Label3.Width = 212 + cmdCapturar.Height = 27 + cmdCapturar.Left = 764 + cmdCapturar.Name = "cmdCapturar" + cmdCapturar.RightToLeft = .F. + cmdCapturar.Top = 392 + cmdCapturar.Width = 212 Label1.BackColor = 128,255,128 Label1.Caption = "CONTROLES" Label1.Height = 17 @@ -5056,13 +5063,6 @@ DEFINE CLASS f_form_aa AS f_base OF "lib_controles.vcx" Label2.RightToLeft = .F. Label2.Top = 8 Label2.Width = 460 - Label3.BackColor = 128,255,128 - Label3.Height = 17 - Label3.Left = 764 - Label3.Name = "Label3" - Label3.RightToLeft = .F. - Label3.Top = 8 - Label3.Width = 212 ADD OBJECT 'Cl_grid1' AS cl_grid WITH ; AllowAddNew = .F., ; @@ -7827,18 +7827,25 @@ DEFINE CLASS f_form_aa_ AS f_base OF "lib_controles.vcx" WindowState = 0 WindowType = 0 ZoomBox = .F. - cmdCapturar.Height = 27 - cmdCapturar.Left = 764 - cmdCapturar.Name = "cmdCapturar" - cmdCapturar.RightToLeft = .F. - cmdCapturar.Top = 392 - cmdCapturar.Width = 212 Edit1.Height = 356 Edit1.Left = 764 Edit1.Name = "Edit1" Edit1.RightToLeft = .F. Edit1.Top = 32 Edit1.Width = 212 + Label3.BackColor = 128,255,128 + Label3.Height = 17 + Label3.Left = 764 + Label3.Name = "Label3" + Label3.RightToLeft = .F. + Label3.Top = 8 + Label3.Width = 212 + cmdCapturar.Height = 27 + cmdCapturar.Left = 764 + cmdCapturar.Name = "cmdCapturar" + cmdCapturar.RightToLeft = .F. + cmdCapturar.Top = 392 + cmdCapturar.Width = 212 Label1.BackColor = 128,255,128 Label1.Caption = "CONTROLES" Label1.Height = 17 @@ -7855,13 +7862,6 @@ DEFINE CLASS f_form_aa_ AS f_base OF "lib_controles.vcx" Label2.RightToLeft = .F. Label2.Top = 8 Label2.Width = 460 - Label3.BackColor = 128,255,128 - Label3.Height = 17 - Label3.Left = 764 - Label3.Name = "Label3" - Label3.RightToLeft = .F. - Label3.Top = 8 - Label3.Width = 212 ADD OBJECT 'Cl_grid1' AS cl_grid WITH ; AllowAddNew = .F., ; @@ -10519,18 +10519,18 @@ DEFINE CLASS f_form_controles AS f_base OF "lib_controles.vcx" WindowState = 0 WindowType = 0 ZoomBox = .F. - Command2.Name = "Command2" - Command2.RightToLeft = .F. Edit1.Name = "Edit1" Edit1.RightToLeft = .F. + Label3.Name = "Label3" + Label3.RightToLeft = .F. + Command2.Name = "Command2" + Command2.RightToLeft = .F. Label1.Caption = "CONTROL NORMAL" Label1.Name = "Label1" Label1.RightToLeft = .F. Label2.Caption = "CONTROL SUBCLASADOS" Label2.Name = "Label2" Label2.RightToLeft = .F. - Label3.Name = "Label3" - Label3.RightToLeft = .F. ADD OBJECT 'Cl_image1' AS cl_image WITH ; Anchor = 0, ; @@ -13402,13 +13402,13 @@ DEFINE CLASS f_listbox AS f_base OF "lib_controles.vcx" DoCreate = .T. Name = "f_listbox" - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "LISTBOX NORMAL" Label1.Name = "Label1" Label2.Caption = "LISTBOX SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_ListBox1' AS cl_listbox WITH ; Anchor = 0, ; @@ -13962,14 +13962,14 @@ DEFINE CLASS f_optiongroup AS f_base OF "lib_controles.vcx" Name = "f_optiongroup" Top = 0 Width = 819 - Command2.Name = "Command2" Edit1.Name = "Edit1" Edit1.Value = * En los OptionGroup subclasados, cuando el Option de la clase de base tiene Autosize=.T. y la instancia tiene Autosize=.F., ocurre esto: - Los option normales deben mantener su longitud y apariencia nuevos - Los option graficos deben mantener su longitud y apariencia, pero pierden en height (bug de VFP) * En los OptionGroup normales, no hay problemas y se deben mantener igual siempre * RECOMENDACIÓN: No usar Autosize=.T. en una clase de base + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "OPTIONGROUP NORMAL" Label1.Name = "Label1" Label2.Caption = "OPTIONGROUP SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_optiongroup1' AS cl_optiongroup WITH ; Anchor = 0, ; @@ -15186,13 +15186,13 @@ DEFINE CLASS f_textbox AS f_base OF "lib_controles.vcx" Left = 0 Name = "f_textbox" Top = 0 - Command2.Name = "Command2" Edit1.Name = "Edit1" + Label3.Name = "Label3" + Command2.Name = "Command2" Label1.Caption = "TEXTBOX NORMAL" Label1.Name = "Label1" Label2.Caption = "TEXTBOX SUBCLASADOS" Label2.Name = "Label2" - Label3.Name = "Label3" ADD OBJECT 'Cl_textbox1' AS cl_textbox WITH ; Alignment = 3, ; diff --git a/TESTS/ut__foxbin2prg__c_conversor_bin_a_prg__get_PropsAndValuesFrom_PROPERTIES.prg b/TESTS/ut__foxbin2prg__c_conversor_bin_a_prg__get_PropsAndValuesFrom_PROPERTIES.prg index 8c06d5a..3859b54 100644 --- a/TESTS/ut__foxbin2prg__c_conversor_bin_a_prg__get_PropsAndValuesFrom_PROPERTIES.prg +++ b/TESTS/ut__foxbin2prg__c_conversor_bin_a_prg__get_PropsAndValuesFrom_PROPERTIES.prg @@ -143,8 +143,10 @@ DEFINE CLASS ut__foxbin2prg__c_conversor_bin_a_prg__get_PropsAndValuesFrom_PROPE Y el 3! <> Name = "c1" + Page2.Name = "pagPage2" Page2.Caption = "Page2" - Page1.Name = "Page1" + Page1.Name = "pagPage1" + Page1.Caption = "Page1" ENDTEXT lcMemo = STRTRAN( STRTRAN( lcMemo, ' ', CHR(13) ), ' ', CHR(10) ) @@ -152,7 +154,8 @@ DEFINE CLASS ut__foxbin2prg__c_conversor_bin_a_prg__get_PropsAndValuesFrom_PROPE *-- DATOS ESPERADOS STORE 0 TO lnCodError_Esperado - DIMENSION laPropsAndValues_Esperado(9,2) + lnPropsAndValues_Count_Esperado = 11 + DIMENSION laPropsAndValues_Esperado(lnPropsAndValues_Count_Esperado,2) laPropsAndValues_Esperado = '' laPropsAndValues_Esperado( 1,1) = 'Height' laPropsAndValues_Esperado( 1,2) = '2.73' @@ -169,11 +172,14 @@ DEFINE CLASS ut__foxbin2prg__c_conversor_bin_a_prg__get_PropsAndValuesFrom_PROPE laPropsAndValues_Esperado( 6,2) = '27.40' laPropsAndValues_Esperado( 7,1) = '_memberdata' laPropsAndValues_Esperado( 7,2) = '' - laPropsAndValues_Esperado( 8,1) = 'Page1.Name' - laPropsAndValues_Esperado( 8,2) = '"Page1"' - laPropsAndValues_Esperado( 9,1) = 'Page2.Caption' - laPropsAndValues_Esperado( 9,2) = '"Page2"' - lnPropsAndValues_Count_Esperado = 9 + laPropsAndValues_Esperado( 8,1) = 'Page2.Caption' + laPropsAndValues_Esperado( 8,2) = '"Page2"' + laPropsAndValues_Esperado( 9,1) = 'Page2.Name' + laPropsAndValues_Esperado( 9,2) = '"pagPage2"' + laPropsAndValues_Esperado(10,1) = 'Page1.Caption' + laPropsAndValues_Esperado(10,2) = '"Page1"' + laPropsAndValues_Esperado(11,1) = 'Page1.Name' + laPropsAndValues_Esperado(11,2) = '"pagPage1"' TEXT TO lcMemo_Esperado TEXTMERGE NOSHOW FLAGS 1 PRETEXT 1+2 Height = 2.73 @@ -190,8 +196,10 @@ DEFINE CLASS ut__foxbin2prg__c_conversor_bin_a_prg__get_PropsAndValuesFrom_PROPE _memberdata = <<>> <<>> - Page1.Name = "Page1" Page2.Caption = "Page2" + Page2.Name = "pagPage2" + Page1.Caption = "Page1" + Page1.Name = "pagPage1" ENDTEXT diff --git a/ThorUpdater/FoxBin2Prg.zip b/ThorUpdater/FoxBin2Prg.zip index b3f72fc..1c73e69 100644 Binary files a/ThorUpdater/FoxBin2Prg.zip and b/ThorUpdater/FoxBin2Prg.zip differ diff --git a/ThorUpdater/FoxBin2PrgVersion.txt b/ThorUpdater/FoxBin2PrgVersion.txt index 483fa89..9236fe9 100644 --- a/ThorUpdater/FoxBin2PrgVersion.txt +++ b/ThorUpdater/FoxBin2PrgVersion.txt @@ -2,10 +2,10 @@ lparameters toUpdateObject local ldDate, ; lnJulian, ; lcJulian -ldDate = date(2018,7,9) +ldDate = date(2018,7,31) lnJulian = val(sys(11, ldDate)) - val(sys(11, {^2000-01-01})) lcJulian = padl(transform(lnJulian), 4, '0') -toUpdateObject.AvailableVersion = 'FoxBin2Prg-1.19.51.3' + lcJulian + ; +toUpdateObject.AvailableVersion = 'FoxBin2Prg-1.19.51.4' + lcJulian + ; '-update-' + dtoc(ldDate, 1) return toUpdateObject diff --git a/ThorUpdater/Project.txt b/ThorUpdater/Project.txt index 51bbcc7..accc73a 100644 --- a/ThorUpdater/Project.txt +++ b/ThorUpdater/Project.txt @@ -1,5 +1,5 @@ appName = FoxBin2Prg appID = FoxBin2Prg -majorVersion = 1.19.51.3 +majorVersion = 1.19.51.4 excludeFiles = *.bak,*.bat,*.fxp,*.tbk,*.tmp,*.dat,*.log,*.cvp,README.md,.gitignore,*.zip*,*.7z*,*- copia.*,*.private.*,test_*.*,xx*.*,*.lnk,vfp_init.*,tmp*.*,*.err, *.conflict.*, *.private.* excludeFolders = *.plastic*,*ThorUpdater*,*Documentacion*,*foxunit*,*foxunit_*,*pruebas varias*,*versiones*,*datos_test* diff --git a/foxbin2prg.cfg.txt b/foxbin2prg.cfg.txt index 0f78455..091eba7 100644 --- a/foxbin2prg.cfg.txt +++ b/foxbin2prg.cfg.txt @@ -1,5 +1,5 @@ **************************************************************************************************** -* FOXBIN2PRG v1.19.51.3 +* FOXBIN2PRG v1.19.51.4 * CONFIGURATION FILE / ARCHIVO DE CONFIGURACIÓN **************************************************************************************************** diff --git a/foxbin2prg.exe b/foxbin2prg.exe index 0941a07..947967b 100644 Binary files a/foxbin2prg.exe and b/foxbin2prg.exe differ diff --git a/foxbin2prg.prg b/foxbin2prg.prg index 0a1349b..2a4c0c1 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -218,6 +218,7 @@ * 05/05/2018 SSF1&FDB v1.19.51.1 Bug Fix: Si se usa capitalización en la información de las vistas, entonces la información relacionada no se exporta correctamente o completamente y puede perderse (SkySurfer1) * 20/06/2018 FDBOZZO v1.19.51.2 Bug Fix: Cuando se exporta un DBF que pertenece a un DBC sin eventos, falla (Jairo Argüelles/Juan C.Perdomo) * 09/07/2018 FDBOZZO v1.19.51.3 Bug Fix: Error 1098, Cannot find ... [ENDT] that closes ... [TEXT] Issue#26 when there is a field named TEXT as first line-word (KIRIDES) +* 10/07/2018 FDBOZZO v1.19.51.4 Bug Fix: El ordenamiento alfabético de los objetos de los ADD OBJECT puede causar que algunos objetos se creen en el orden erróneo, provocando comportamientos inesperados (Jochen Kauz) * * *--------------------------------------------------------------------------------------------------- @@ -344,6 +345,7 @@ * 05/05/2018 SkySurfer1 Reporte Bug v1.19.51: Si se usa capitalización en la información de las vistas, entonces la información relacionada no se exporta correctamente o completamente y puede perderse (Arreglado en v1.19.51.1) * 20/06/2018 Jairo A/Juan CP Reporte Bug v1.19.51: Cuando se exporta un DBF que pertenece a un DBC sin eventos, falla (Arreglado en v1.19.51.2) * 09/07/2018 KIRIDES Reporte Bug v1.19.51: Error 1098, Cannot find ... [ENDT] that closes ... [TEXT] Issue#26 when there is a field named TEXT as first line-word (Se arregla en v1.19.51.3) +* 10/07/2018 Jochen Kauz Reporte Bug v1.19.51: El ordenamiento alfabético de los objetos de los ADD OBJECT puede causar que algunos objetos se creen en el orden erróneo, provocando comportamientos inesperados (Se arregla en v1.19.51.3) * * *--------------------------------------------------------------------------------------------------- @@ -7552,8 +7554,10 @@ DEFINE CLASS c_conversor_base AS Custom EXTERNAL ARRAY taPropsAndValues TRY - LOCAL I, X, lnArrayCols, laPropsAndValues(1,2), lcPropName, lcSortedMemo, lcMethods + LOCAL I, X, lnArrayCols, laPropsAndValues(1,2), lcPropName, lcSortedMemo, lcMethods ; + , lnSelect, lcObjName lnArrayCols = ALEN( taPropsAndValues, 2 ) + lnSelect = SELECT() DIMENSION laPropsAndValues( tnPropsAndValues_Count, lnArrayCols ) ACOPY( taPropsAndValues, laPropsAndValues ) @@ -7561,42 +7565,86 @@ DEFINE CLASS c_conversor_base AS Custom IF m.tnSortType > 0 * CON SORT: * - A las que no tienen '.' les pongo 'A' por delante, y al resto 'B' por delante para que queden al final + + * ATENCIÓN: 10/07/2018 + * Cuando hay ADD OBJECT multicontenedor (obj.obj.obj...), el reordenamiento + * puede producir daños colaterales, como objetos mal colocados. + * (Era de esperar: No todo se puede ordenar alfabéticamente) + * Un solución de compromiso podría ser al menos mantener juntos los objetos de mismo nombre, + * que en la práctica pueden estar todos mezclados. Al menos eso no rompería nada. + * VER: https://github.com/fdbozzo/foxbin2prg/issues/28 + * + * PASO 1: Obtener los nombres únicos y asignarles un código de orden + CREATE CURSOR C_OBJ (objName C(50), iOrder I AUTOINC) + INDEX ON objname TAG objname + + * PASO 2: Configurar las prioridades de ordenamiento (primero props, luego objs) FOR I = 1 TO m.tnPropsAndValues_Count IF '.' $ laPropsAndValues(m.I,1) IF m.tnSortType = 2 - laPropsAndValues(m.I,1) = 'B' + JUSTSTEM(laPropsAndValues(m.I,1)) + '.' ; + * Genera obj+props para BIN + lcObjName = GETWORDNUM(laPropsAndValues(m.I,1), 1, '.') + + IF NOT SEEK(LOWER(lcObjName), "C_OBJ") + INSERT INTO C_OBJ (objName) VALUES (LOWER(lcObjName)) + ENDIF + + laPropsAndValues(m.I,1) = 'B' + PADL(C_OBJ.iOrder,3,'0') ; + + JUSTSTEM(laPropsAndValues(m.I,1)) + '.' ; + + .sortPropsAndValues_SetAndGetSCXPropNames( 'SETNAME', JUSTEXT(laPropsAndValues(m.I,1)) ) + + *laPropsAndValues(m.I,1) = 'B000' + lcObjName + '.' ; + .sortPropsAndValues_SetAndGetSCXPropNames( 'SETNAME', JUSTEXT(laPropsAndValues(m.I,1)) ) ELSE - laPropsAndValues(m.I,1) = 'B' + laPropsAndValues(m.I,1) + * Genera obj+props para TX2 + lcObjName = GETWORDNUM(laPropsAndValues(m.I,1), 1, '.') + + IF NOT SEEK(LOWER(lcObjName), "C_OBJ") + INSERT INTO C_OBJ (objName) VALUES (LOWER(lcObjName)) + ENDIF + + laPropsAndValues(m.I,1) = 'B' + PADL(C_OBJ.iOrder,3,'0') ; + + JUSTSTEM(laPropsAndValues(m.I,1)) + '.' ; + + JUSTEXT(laPropsAndValues(m.I,1)) + + *laPropsAndValues(m.I,1) = 'B' + PADL(I,3,'0') + laPropsAndValues(m.I,1) ENDIF ELSE IF m.tnSortType = 2 + * Genera obj+props para BIN laPropsAndValues(m.I,1) = .sortPropsAndValues_SetAndGetSCXPropNames( 'SETNAME', laPropsAndValues(m.I,1) ) ELSE - laPropsAndValues(m.I,1) = 'A' + laPropsAndValues(m.I,1) + * Genera obj+props para TX2 + laPropsAndValues(m.I,1) = 'A000' + laPropsAndValues(m.I,1) ENDIF ENDIF ENDFOR + * Paso 3: Ordenar según la prioridad previa IF .l_PropSort_Enabled ASORT( laPropsAndValues, 1, -1, 0, 1) ENDIF + * Paso 4: Quitar metadatos y rearmar array FOR I = 1 TO m.tnPropsAndValues_Count *-- Quitar caracteres agregados antes del SORT IF '.' $ laPropsAndValues(m.I,1) IF m.tnSortType = 2 - taPropsAndValues(m.I,1) = JUSTSTEM( SUBSTR( laPropsAndValues(m.I,1), 2 ) ) + '.' ; + * Genera obj+props para BIN + taPropsAndValues(m.I,1) = JUSTSTEM( SUBSTR( laPropsAndValues(m.I,1), 2+3 ) ) + '.' ; + .sortPropsAndValues_SetAndGetSCXPropNames( 'GETNAME', JUSTEXT(laPropsAndValues(m.I,1)) ) ELSE - taPropsAndValues(m.I,1) = SUBSTR( laPropsAndValues(m.I,1), 2 ) + * Genera obj+props para TX2 + taPropsAndValues(m.I,1) = SUBSTR( laPropsAndValues(m.I,1), 2+3 ) ENDIF ELSE IF m.tnSortType = 2 + * Genera obj+props para BIN taPropsAndValues(m.I,1) = .sortPropsAndValues_SetAndGetSCXPropNames( 'GETNAME', laPropsAndValues(m.I,1) ) ELSE - taPropsAndValues(m.I,1) = SUBSTR( laPropsAndValues(m.I,1), 2 ) + * Genera obj+props para TX2 + taPropsAndValues(m.I,1) = SUBSTR( laPropsAndValues(m.I,1), 2+3 ) ENDIF ENDIF @@ -7657,6 +7705,8 @@ DEFINE CLASS c_conversor_base AS Custom FINALLY RELEASE taPropsAndValues, tnPropsAndValues_Count, tnSortType ; , I, X, lnArrayCols, laPropsAndValues, lcPropName, lcSortedMemo, lcMethods + USE IN (SELECT("C_OBJ")) + SELECT (lnSelect) ENDTRY RETURN