Skip to content

Instantly share code, notes, and snippets.

@MarkGoldberg
MarkGoldberg / TestNotify.clw
Last active August 29, 2015 14:08
Clarion - Test Notify
PROGRAM
gtNotification GROUP,TYPE
_Code UNSIGNED
CallerThread UNSIGNED
Param UNSIGNED !was Parameter
END
@MarkGoldberg
MarkGoldberg / SumArray
Created October 30, 2014 21:26
Clarion - Sum Array
PROGRAM
MAP
SumArray (*SHORT[] xArr),REAL
FillArray(*SHORT[] xArr)
END
Short4 SHORT,DIM(4)
Short10 SHORT,DIM(10)
CODE
@MarkGoldberg
MarkGoldberg / UI_PRE_Update.clw
Last active August 29, 2015 14:18
Example of Minimal Hand coded ABC form, using WindowMgrEst & and ctCostCodes (a window component)
UI_PRE_Update PROCEDURE
QuickWindow WINDOW('Update Project Equipment'),AT(,,328,70),CENTER,MDI,GRAY,IMM,MASK,AUTO,SYSTEM,HLP('~Update_Project_Equipment'),FONT('Segoe UI',8)
SHEET,AT(1,1,326,47),USE(?CurrentTab),WIZARD
TAB('Project Equipment'),USE(?TAB1)
PROMPT('&Equipment ID'),AT(5,7),USE(?PrE:Equip_ID:Prompt)
ENTRY(@s15),AT(65,7,75,10),USE(PRE:Equip_ID),FONT(,,,FONT:bold),MSG('Equipment ID'),REQ,OVR
PROMPT('&Description'),AT(5,20),USE(?PrE:Descr:Prompt)
ENTRY(@s40),AT(65,20,175,10),USE(PRE:Descr),MSG('Description'),OVR
PROMPT('Co&st / Day'),AT(5,33),USE(?PrE:Daily_Rate:Prompt)
@MarkGoldberg
MarkGoldberg / ClarionComparerFunction
Last active August 29, 2015 14:19
Clarion - SORT Comparer Function example
PROGRAM
MAP
_Comparer(*GROUP a, *GROUP b), SIGNED
_Comparer2(*GROUP a, *GROUP b), SIGNED
_Comparer3(*GR A, *GR B),SIGNED !<-- typed groups
END
ct CLASS, TYPE
field1 STRING(1)
@MarkGoldberg
MarkGoldberg / TestDataPath
Created May 12, 2015 16:18
Clarion - Test Prop:DataPath
END
END
CODE
TextFile{PROP:Name} = 'Yada.txt'
DO CreateFile
SYSTEM{PROP:DataPath} = 'C:\TMP'
DO CreateFile
@MarkGoldberg
MarkGoldberg / CorrectControls.clw
Last active August 29, 2015 14:24
CorrectControls
!Below is a simplified version of code that I call after opening every window
MOD:LineHeight LONG(9)
CorrectControls PROCEDURE(*Window xWin)
CurrFEQ SIGNED !No Auto
IsFrame BOOL,AUTO
CODE
IsFrame = CHOOSE( xWin{PROP:Type} = CREATE:application )
@MarkGoldberg
MarkGoldberg / BlackBoardMG.tmTheme
Created October 29, 2013 09:51
Sublime Text Theme - With Clarion and VCSGutter Enhancements modified from http://tmtheme-editor.herokuapp.com/#/Blackboard
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!-- Generated by: TmTheme-Editor -->
<!-- ============================================ -->
<!-- app: http://tmtheme-editor.herokuapp.com -->
<!-- code: https://github.com/aziz/tmTheme-Editor -->
<plist version="1.0">
<dict>
<key>author</key>
<string>Domenico Carbotta</string>
@MarkGoldberg
MarkGoldberg / gist:7675892
Created November 27, 2013 13:43
ViewManager.Next (Clarion ABC) refactoring for clarity This helps explain return values from .ValidateRecord() ViewManager.Next is One Method from ABBrowse.clw
ViewManager.Next PROCEDURE
CODE
LOOP
NEXT(SELF.View)
CASE ERRORCODE()
OF NoError ; CASE SELF.ValidateRecord()
OF Record:OK ; RETURN Level:Benign
OF Record:OutOfRange; RETURN Level:Notify
! OF Record:Filtered ; do nothing loop around for the NEXT()
END
@MarkGoldberg
MarkGoldberg / FileVersion.clw
Last active January 4, 2016 04:29
FileVersion, Clarion Program - submitted by Olivier Cretey
Program
!Pragma('link(version.lib)')
!Pragma('link(GetVersion.Version)')
_VS_FIXEDFILEINFO Group, Type
dwSignature Long
dwStrucVersion Long
dwFileVersionMS Long
dwFileVersionLS Long
@MarkGoldberg
MarkGoldberg / TestThreads.clw
Created January 23, 2014 15:14
Clarion Tightloop ThreadTest
PROGRAM
OMIT('***')
* Created with Clarion 9.0
* User: Mark.Live
* Date: 1/23/2014
* Time: 10:05 AM
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.