Here is 1 of the methods that handles a theme: //JD20141120 //Method: Ks_PaperSizes ($patResourcePaths;$pnResID;$pnIndex;$pnFamily;$pnValue;$patConstants) //Description:
C_TEXT($1;$tDomRoot) //DOCUMENT ROOT C_POINTER($2;$pnResID) //THE RES ID POINTER C_POINTER($3;$pnIndex) //THE ITEM POINTER C_POINTER($4;$pnFamily) //THE FAMILY POINTER C_POINTER($5;$pnValue) //THE VALUE POINTER C_POINTER($6;$patConstants) //THE STRING ARRAY If (Count parameters=6) $tDomRoot:=$1 $pnResID:=$2 $pnIndex:=$3 $pnFamily:=$4 $pnValue:=$5 $patConstants:=$6 $pnResID->:=$pnResID->+1 $pnIndex->:=0 $pnFamily->:=0 $pnValue->:=0 C_TEXT($tGroupName) $tGroupName:="PaperSizes" ARRAY TEXT($patConstants->;1000) //PAPER SIZES http://resources.printhandbook.com/pages/paper-size-chart.php //ALL SIZES ARE IN MM //MISCELLANEOUS $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_Legal")+":"+"Legal"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_LegaW")+":"+String(216)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_LegaH")+":"+String(356)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_JuniorLegal")+":"+"Junior Legal"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_JuniorLegalW")+":"+String(127)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_JuniorLegalH")+":"+String(203)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_1/3A4")+":"+"1/3 A4"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_1/3A4W")+":"+String(99)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_1/3A4H")+":"+String(210)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_GutenbergBible")+":"+"Gutenberg Bible"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_GutenbergBibleW")+":"+String(280)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_GutenbergBibleH")+":"+String(398)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_CDCaseInsert")+":"+"CD case insert"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_CDCaseInsertW")+":"+String(120)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_CDCaseInsertH")+":"+String(120)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A4Square")+":"+"A4 square"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A4SquareW")+":"+String(210)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A4SquareH")+":"+String(210)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_AFormatPaperback")+":"+"A format paperback"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_AFormatPaperbackW")+":"+String(110)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A0H")+":"+String(178)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_BFormatPaperback")+":"+"B format paperback"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_BFormatPaperbackW")+":"+String(130)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_BFormatPaperbackH")+":"+String(198)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_48SheetBillboard")+":"+"48 sheet billboard"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_48SheetBillboardW")+":"+String(6096)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_48SheetBillboardH")+":"+String(3048)+":L" //INTERNATIONAL A PAPER SIZES $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A0")+":"+"A0"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A0W")+":"+String(841)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A0H")+":"+String(1189)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A1")+":"+"A1"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A1W")+":"+String(594)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A1H")+":"+String(841)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A2")+":"+"A2"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A2W")+":"+String(420)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A2H")+":"+String(594)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A3")+":"+"A3"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A3W")+":"+String(297)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A3H")+":"+String(420)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A4")+":"+"A4"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A4W")+":"+String(210)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A4H")+":"+String(297)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A5")+":"+"A5"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A5W")+":"+String(148)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A5H")+":"+String(210)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A6")+":"+"A6"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A6W")+":"+String(105)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A6H")+":"+String(148)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A7")+":"+"A7"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A7W")+":"+String(74)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A7H")+":"+String(105)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A8")+":"+"A8"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A8W")+":"+String(52)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A8H")+":"+String(74)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A9")+":"+"A9"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A9W")+":"+String(37)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A9H")+":"+String(52)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A10")+":"+"A10"+":S" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A10W")+":"+String(26)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kPaper_A10H")+":"+String(37)+":L" $patConstants->{TBox_Increment ($pnIndex)}:=Ks_TBox_SubString_tGET ("kAttrArIndex_nCount")+":"+String($pnValue->)+":L" //WRITE THE RESOURCE Ks_TBox_XLIFF_ArrayToXLIFF ($tDomRoot;$tGroupName;$pnResID;$pnIndex;$pnFamily;$pnValue;$patConstants) End if On Fri, Sep 16, 2016 at 5:36 PM, Jim Dorrance <[email protected]> wrote: > Here is my Ks method: > > //Method: Ks ($bConfirm) > //Description: > > > C_BOOLEAN($1;$bConfirm) > If (Count parameters>0) > $bConfirm:=$1 > Else > $bConfirm:=True > End if > > //XLIFF DOCUMENT NAME AND ROOT NAME > > C_TEXT($tXLIFF_FileName;$tXLIFF_DomRoot) > $tXLIFF_FileName:="ksLabels" > > C_POINTER($ptXLIFF_FileName;$ptXLIFF_DomRoot) > $ptXLIFF_FileName:=->$tXLIFF_FileName > $ptXLIFF_DomRoot:=->$tXLIFF_DomRoot > > //OPEN FILE > > C_TEXT($tErrorMethod) > $tErrorMethod:=Ks_TBox_Build_Open_tGET ($tXLIFF_FileName;$ptXLIFF_ > FileName;$ptXLIFF_DomRoot) > > //INITIALIZE A STRING ARRAY OF CREATED CONSTANTS > > ARRAY TEXT($atConstants;0) > C_POINTER($patConstants) > $patConstants:=->$atConstants > > //COUNTERS/VALUES > > ARRAY LONGINT($anFieldColumnValues;4) > C_POINTER($panIndices;$pnResID;$pnIndex;$pnFamily;$pnValue) > $panIndices:=->$anFieldColumnValues > $pnResID:=->$anFieldColumnValues{1} //THE CURRENT CONSTANT'S RESOURCE ID > $pnIndex:=->$anFieldColumnValues{2} //THE CURRENT CONSTANT'S ARRAY > ELEMENT IN $patConstants > $pnValue:=->$anFieldColumnValues{3} //A LONGINT USED FOR INCREMENTAL > VALUES (WHEN USEFULL) > $pnFamily:=->$anFieldColumnValues{4} //A LONGINT USED FOR THE FAMILY > MODULO (WHEN USEFULL) > > $pnResID->:=19999 //WILL BE AUGMENTED FOR EACH NEW LOGICAL GROUP > $pnIndex->:=0 > $pnFamily->:=0 > $pnValue->:=0 > > //BUILD CONSTANTS ( YOUR METHODS HERE) > > Ks_Labels ($tXLIFF_DomRoot;$pnResID;$pnIndex;$pnFamily;$pnValue;$ > patConstants) > Ks_PaperSizes ($tXLIFF_DomRoot;$pnResID;$pnIndex;$pnFamily;$pnValue;$ > patConstants) > Ks_SVG ($tXLIFF_DomRoot;$pnResID;$pnIndex;$pnFamily;$pnValue;$ > patConstants) > > //CLOSE CREATED FILES > > Ks_TBox_Build_Close ($ptXLIFF_FileName;$ptXLIFF_DomRoot) > > //RESTORE ERROR HANDLER > > ON ERR CALL($tErrorMethod) > > ARRAY TEXT($atConstants;0) > > If ($bConfirm) > C_TEXT($tConfirm) > $tConfirm:="Do you want to restart the data base > now?"+Char(13)+Char(13)+"The constants will be charged with the next > opening with your data base." > CONFIRM($tConfirm;"Yes";"No") > End if > > If (OK=1) > OPEN DATA FILE(Data file) > End if > > > On Fri, Sep 16, 2016 at 5:34 PM, Jim Dorrance <[email protected]> > wrote: > >> Once again, >> >> Constants are not necessary after compilation, ie they take up no place >> in memory if they are deleted. They must only be saved if they are used as >> a parameter in an Execute method. >> >> Here is some code from my On Startup methode: >> >> //WEB20141006 >> //Method: Ks_TBox_OnStartup >> //Description: >> >> //DELETES Ks IF THE BASE IS COMPILED (IF NECESSARY), >> //OR RE-CREATES THEM IF THE BASE IS INTERPRETED (IF NECESSARY) >> >> C_TEXT($tFolderPath) >> $tFolderPath:=Get 4D folder(Current Resources folder) >> If (Test path name($tFolderPath)=Is a folder) >> >> C_TEXT($tFilePath) >> $tFilePath:=$tFolderPath+"ksLabels.xlf" >> >> C_BOOLEAN($bKsExist) >> $bKsExist:=(Test path name($tFilePath)=Is a document) >> >> If (Is compiled mode) >> >> If ($bKsExist) >> DELETE DOCUMENT($tFilePath) >> End if >> >> Else >> >> If (Not($bKsExist)) >> Ks >> End if >> >> End if >> >> End if >> -- >> Jim Dorrance >> [email protected] >> [email protected] >> www.4d.dorrance.eu >> >> PS: If you know of anyone that needs an experienced 4D programmer to add >> energy and experience to their team, please let me know. I have >> experience in many areas. Reasonable rates. Remote or Paris only. >> > > > > -- > Jim Dorrance > [email protected] > [email protected] > www.4d.dorrance.eu > > PS: If you know of anyone that needs an experienced 4D programmer to add > energy and experience to their team, please let me know. I have > experience in many areas. Reasonable rates. Remote or Paris only. > -- Jim Dorrance [email protected] [email protected] www.4d.dorrance.eu PS: If you know of anyone that needs an experienced 4D programmer to add energy and experience to their team, please let me know. I have experience in many areas. Reasonable rates. Remote or Paris only. ********************************************************************** 4D Internet Users Group (4D iNUG) FAQ: http://lists.4d.com/faqnug.html Archive: http://lists.4d.com/archives.html Options: http://lists.4d.com/mailman/options/4d_tech Unsub: mailto:[email protected] **********************************************************************

