View RemoveFileWithAPI.clw
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
!There are a few Remove() things here, what you want is FileApiRemove FUNCTION(STRING Fn2Delete),LONG,PROC | |
! | |
!In C8 Clarion REMOVE() was enhanced a second parameter with flags to allow wildcards, recursion, etc | |
!It was changed from calling API DeleteFile() to use the much more complicated ShFileOperation() | |
!This makes it much slower and more bug prone | |
! | |
!My replacement FileApiRemove() uses API DeleteFile() then sets the Claion Error so it can replace | |
!an existing REMOVE() in Clarion code. If you are using Remove(FILE) you'll need REMOVE(Name(File)) | |
!or you can create a FileApi2Remove(FILE FileRef) that calls FileApiRemove(FileRef{PROP:Name}) or NAME() | |
!I named it "FileApiRemove(" so if you are searching "REMOVE(" you'll file it, versus RemoveUsingAPI() would not. |
View ReplaceString.clw
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
!Search and Replace inside a STRING | |
MAP | |
ReplaceInto PROCEDURE(*STRING Into, STRING FindTxt,STRING ReplaceTxt,BYTE ClipInto=0),LONG,PROC !Returns Count | |
ReplaceText PROCEDURE(STRING InText,STRING FindTxt,STRING ReplaceTxt,BYTE ClipInto=0),STRING !Returns Strng with FindTxt Replaced | |
END | |
!------------------------------------------------------------------------------------------------------ | |
ReplaceInto PROCEDURE(*STRING Into, STRING Find,STRING Repl,BYTE ClipInto=0)!,LONG,PROC !Returns Count | |
X LONG,AUTO | |
L LONG,AUTO |
View ListDropDown.clw
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
MAP | |
ListDropDown PROCEDURE(LONG FeqList, BOOL RollUp=0) !0=Down 1=Roll Up | |
MODULE('Win32') | |
PostMessage(LONG hWnd,LONG wMsg,LONG wParam,LONG lParam),BOOL,PROC,PASCAL,DLL(1),NAME('PostMessageA') | |
END | |
END | |
ListDropDown PROCEDURE(LONG FeqList, BOOL RollUp=0) !0=Down 1=Roll Up | |
CODE !CB_SHOWDROPDOWN = &H14F |
View ReportManualPaging.clw
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
!This CLASS was written to **replace page checking code** in reports that was in many places | |
!For most all people the **replace** comment will NOT apply. | |
! | |
!This is not an easy an easy thing to do. I cannot explain it all here. | |
! | |
! Steps to Implement ManRpt Class | |
! | |
!1. Add the Extension Template ReportLineHeightMaxSet Template so all lines have | |
! a. Sets all DETAIL PROP:MaxHeight=Height so line Height is exactly correct | |
! b. For all DETAILs defines LnHt_Label LONG variable and sets = DETAIL PROP:Height for use with Height calcs |
View Option2DropList.clw
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
! Version 2 - DROP and No DROP in one procedure. FORMAT() and ~Header option | |
! Generate LIST,DROP,FROM() reading OPTION and RADIOs -- or LIST without DROP | |
! Option + Radio's take mnore space that a LIST,DROP,FROM('radio|radio|radio') | |
! The Option can be easier for the User and more obvious of all the choices without dropping | |
! Some times you don't have the space, or too many Options can be visual clutter | |
! | |
PROGRAM | |
MAP | |
Option2DropList PROCEDURE() !Add this to your program and a button on the Window to call it, | |
MODULE('RTL') !Global MAP Requires this |
View DropListPretty.clw
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
!See https://clarionhub.com/t/how-to-make-drop-list-more-visible-on-the-window/3760?u=carlbarnes | |
!Make Drop lists more visible coloring like Tool Tip, easier to see with Format and +1 Line Spacing | |
!------------------------- | |
DropListPretty PROCEDURE | |
Fld LONG,AUTO | |
LstFEQ LONG,AUTO !Drop List is separate control Fld{PROP:Drop} | |
CODE | |
Fld=0 | |
LOOP | |
Fld=0{PROP:NextField,Fld} |
View Manifest_Windows10.Manifest
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> | |
<assemblyIdentity | |
version="1.0.0.0" | |
processorArchitecture="x86" | |
name="CompanyName.ProductName.ApplicationName" | |
type="win32" | |
/> | |
<description>Application with Visual Styles for Windows 10</description> | |
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> |
View Bak_and_Zip_Sample1.bat
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@REM This will backup the File Extensions listed below for ROBOCOPY to a subfolder | |
@REM then zip using PowerShell to a file named: ProjName_Date_Time.ZIP | |
@REM I place this BAT file in the Project folder named: _Bak_and_Zip_ProjBane.bat | |
@REM This backs up to a sub folder named _Bak_ under the project, some times I place this folder elsewhere | |
@REM This saves the CLW that allows for doing a code compare | |
@REM ----------------------------------------------------------------- | |
@echo off | |
for /f %%I in ('wmic os get localdatetime ^|find "20"') do set dt=%%I | |
REM dt format is now YYYYMMDDhhmmss... |
View ChooseColorAPI.clw
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
!Clarion's ColorDialog() does not have the deatures of the API ChooseColor like saving the 16 custom colors | |
!From https://www.icetips.com/showarticle.php?articleid=272 | |
!A few changes to Larry's code by Carl: | |
! Set cc.rgbResult = W{PROP:Color} before call. Should CC_RGBINIT be conditional? | |
! Check for ChooseColor returning True with IF ccBool THEN . | |
! Comment UnlockThread. | |
! Prototype a (LONG cc) so no need for type at Map level. Add DLL(1) | |
!----------------------------------------- | |
!Windows API: Saving and restoring custom colors for ColorDialog |
NewerOlder