top of page
lampcoding2_logo_color.png

Download Editor

Version history

​

LAMP Coding Editor • version 2.00 Build 1 | .zip 467.54KB

Notice

Please report any erros in the Documentation or Editor/Compiler.

Documentation

Documentation

Syntax

Comment

> Example:

# This line will not be read as code

 

Action/Function

Note: some spaces are optional.
Action/function:<parameters>;


Action: value;

> or

Action: parameter1=value1; parameter2=value2;

​

> Examples:

ppt.slideshow.gotoslide:10;

ppt.msgbox: prompt=Hello world!; title=LAMP Coding 2;

Syntax

PPT > SlideShow

> Clear slide

# Deletes all shapes from a specific slide.

ppt.slideshow.clearslide:<SLIDE-NUMBER>;

​

> Navigate

# Go to next slide

ppt.slideshow.navigate:next;

​

# Go to previous slide

ppt.slideshow.navigate:previous;

​

# Go to first slide

ppt.slideshow.navigate:first;

​

# Go to last slide

ppt.slideshow.navigate:last;

​

# Go to a specific slide

ppt.slideshow.gotoslide:<SLIDE-NUMBER>;

PPT > SlideShow

PPT > Shapes

> Add a new shape

ppt.shapes.add: slide=<SLIDE-NUMBER>; type=<SHAPE-TYPE>; name=<SHAPE-NAME>; x=<SHAPE-HORIZONTAL-POSITION>; y=<SHAPE-VERTICAL-POSITION>; w=<SHAPE-WIDTH>; h=<SHAPE-HEIGHT>;

​

PARAMETERS

SLIDE-NUMBER - Number of the slide where the shape should be added.

SHAPE-TYPE - Type of the shape. Can be rectangle, circle or triangle.

SHAPE-NAME - Name of the shape.

SHAPE-HORIZONTAL-POSITION - Shape's Left property.

SHAPE-VERTICAL-POSITION - Shape's Top property.

SHAPE-WIDTH - Shape's Width property.

SHAPE-HEIGHT - Shape's Height property.

​

​

> Delete a shape

ppt.shapes.delete: slide=<SLIDE-NUMBER>; shape=<SHAPE-NAME>;

​

PARAMETERS

SLIDE-NUMBER - Number of the slide where the shape is.

SHAPE-NAME - Name of the shape.

​

​

> Set shape property

ppt.shapes.setproperty: slide=<SLIDE-NUMBER>; shape=<SHAPE-NAME> property=<SHAPE-PROPERTY>; value=<PROPERTY-VALUE>;

​

PARAMETERS

SLIDE-NUMBER - Number of the slide where the shape is.

SHAPE-NAME - Name of the shape.

SHAPE-PROPERTY - The shape's property that should be changed.

PROPERTY-VALUE - The new value of the shape's property. See SHAPE PROPERTIES for a list of available properties.

​

SHAPE PROPERTIES

text - String

fill_color - RGB Long Number (between 0 and 16777215)

fill_transparency - Number (between 0,00 and 1,00)

fill_picture - String (Picture URL from PC files or web)

line_color - RGB Long Number (between 0 and 16777215)

line_transparency - Number (between 0,00 and 1,00)

line_dashstyle - Number index (between 1 and 12). See SHAPE LINE DASH STYLES for a list of dash styles.

line_weight - Number (between 0,01 and 999,99)

line_visible - Boolean (Number) (0 - False (line not visible), any other number - True (line visible))

font_color - RGB Long Number (between 0 and 16777215)

font_size - Number (between 1,0 and 4000,0)

font_bold - Boolean (Number) (0 - False (bold disabled), any other number - True (bold enabled))

font_italic - Boolean (Number) (0 - False (italic disabled), any other number - True (italic enabled))

font_underline - Boolean (Number) (0 - False (underline disabled), any other number - True (underline enabled))

font_name - String

visible - Boolean (Number) (0 - False (shape not visible), any other number - True (shape visible))

position_x - Number (Horizontal position - Left property of shape)

position_y - Number (Vertical position - Top property of shape)

size_w - Number (Width property of shape)

size_h - Number (Height Top property of shape)

shadow_visible - Boolean (Number) (0 - False (shadow not visible), any other number - True (shadow visible))

shadow_blur - Number (between 1,0 and 100,0)

shadow_offset_x - Number

shadow_offset_y - Number

shadow_size - Number (between 1,0 and 100,0)

shadow_transparency - Number (between 0,00 and 1,00)

​

​

SHAPE LINE DASH STYLES

1  - msoLineSolid

2  - msoLineSquareDot
3  - msoLineRoundDot

4  - msoLineDash
5  - msoLineDashDot
6  - msoLineDashDotDot
7  - msoLineLongDash
8  - msoLineLongDashDot
9  - msoLineLongDashDotDot

10 - msoLineSysDash
11 - msoLineSysDot

12 - msoLineSysDashDot

PPT > Shapes

PPT > Controls

> Add a new control

# Controls are ActiveX Controls or OLEObjects as described in VBA.

ppt.controls.add: slide=<SLIDE-NUMBER>; type=<CONTROL-TYPE>; name=<CONTROL-NAME>; x=<CONTROL-HORIZONTAL-POSITION>; y=<CONTROL-VERTICAL-POSITION>; w=<CONTROL-WIDTH>; h=<CONTROL-HEIGHT>;

​

PARAMETERS

SLIDE-NUMBER - Number of the slide where the control should be added.

CONTROL-TYPE - Type of the control. Can be textbox.

CONTROL-NAME - Name of the control.

CONTROL-HORIZONTAL-POSITION - Control's Left property.

CONTROL-VERTICAL-POSITION - Control's Top property.

CONTROL-WIDTH - Control's Width property.

CONTROL-HEIGHT - Control's Height property.

​

​

> Delete a control

ppt.controls.control: slide=<SLIDE-NUMBER>; control=<CONTROL-NAME>;

​

PARAMETERS

SLIDE-NUMBER - Number of the slide where the control is.

CONTROL-NAME - Name of the control.

​

> Set control property

ppt.controls.setproperty: slide=<SLIDE-NUMBER>; control=<CONTROL-NAME> property=<CONTROL-PROPERTY>; value=<PROPERTY-VALUE>;

​

PARAMETERS

SLIDE-NUMBER - Number of the slide where the control is.

CONTROL-NAME - Name of the control.

CONTROL-PROPERTY - The control's property that should be changed.

PROPERTY-VALUE - The new value of the control's property. See CONTROL PROPERTIES for a list of available properties.

​

CONTROL PROPERTIES

text - String
autowordselect - Boolean (
Number) (0 - False (AutoWordSelect not enabled), any other number - True (AutoWordSelect enabled)). More information
back_color - RGB Long Number (between 0 and 16777215)
border_color - RGB Long Number (between 0 and 16777215)
border_style - Number index (0 (fmBorderStyleNone) or 1 (fmBorderStyleSingle))
enabled - Boolean (Number) (0 - False
(control not enabled), any other number - True (control enabled))
font_name - String
font_size - Number
font_bold - Boolean (
Number) (0 - False (bold disabled), any other number - True (bold enabled))
font_italic - Boolean (
Number) (0 - False (italic disabled), any other number - True (italic enabled))
font_underline - Boolean (
Number) (0 - False (underline disabled), any other number - True (underline enabled))
font_color - RGB Long Number (between 0 and 16777215)

position_x - Number (Horizontal position - Left property of control)

position_y - Number (Vertical position - Top property of control)

size_w - Number (Width property of control)

size_h - Number (Height Top property of control)
locked - Boolean (
Number) (0 - False (not locked), any other number - True (locked))
maxlength - Number (0 (no limit) or integer greater than 0)
multiline - Boolean (
Number) (0 - False (multiline disabled), any other number - True (multiline enabled))
passwordchar - String (empty (no passwordchar) or a single character)
specialeffect - Number (0 (fmSpecialEffectFlat), 1 (fmSpecialEffectRaised), 2 (fmSpecialEffectSunken), 3 (fmSpecialEffectEtched) or 6 (fmSpecialEffectBump))
textalign - Number (1 (fmTextAlignLeft), 2 (fmTextAlignCenter) or 3 (fmTextAlignRight))
visible - Boolean (
Number) (0 - False (control not visible), any other number - True (control visible))
wordwrap - Boolean (
Number) (0 - False (wordwrap disabled), any other number - True (wordwrap enabled)). More information
enterkeybehavior - Boolean (Number) (0 - False (enterkeybehavior disabled), any other number - True (enterkeybehavior enabled)). More information

PPT> Controls

User variables

> Create a new user variable

variables.new: name=<VARIABLE-NAME>; value=<VARIABLE-VALUE>;

​

PARAMETERS

VARIABLE-NAME - Name of the new variable.

VARIABLE-VALUE - Value of the new variable. (optional)

 

​

> Edit a user variable
variables.edit: name=<VARIABLE-NAME>; newvalue=<VARIABLE-VALUE>;

 

PARAMETERS

VARIABLE-NAME - Name of the variable.

VARIABLE-VALUE - New value of the variable.

 

 

> Use a user variable
Variables can be used in all parameters of actions/functions.

$var(<VARIABLE-NAME>)

User variables

System variables

> Use a system variable
Some system variables can be used as functions.

$<VARIABLE>

​

LIST OF SYSTEM VARIABLES

$datetime(<DATE-TIME-PARAMETER>) - Current system date and time

$char(<CHARACTER-NAME>) - Return a specific character

$chr(<ASCII-CODE>) - Return a specific character using VBA Chr function. More information

$presentation_path - Path of the active presentation

$rgb(r[<RED>]g[<GREEN>]b[<BLUE>])

$exc(<VBA-FUNCTION>) - Let's you execute VBA code. Use it to make mathematical calculations or run VBA functions.

​

PARAMETERS

DATE-TIME-PARAMETER - See DATE&TIME PARAMETERS for the list.

CHARACTER-NAME - See CHARACTERS NAMES for a list of available characters.

RED - Red value of RGB, Number (between 0 and 255)

GREEN - Green value of RGB, Number (between 0 and 255)

BLUE - Blue value of RGB, Number (between 0 and 255)

​

DATE&TIME PARAMETERS

day - Day of current system date.

month - Month of current system date.

year - Year of current system date.

weekday - Weekday of current system date.

hours - Hours of current system time.

minutes - Minutes of current system time.

seconds - Seconds of current system time.

​

Tip: to format the parameter to 2 digits (example: turn 4 to 04), add a # after the parameter (example: $datetime(day#))

Notes:

- Using this for the year parameter returns the last 2 digits (example: 2019 turns into 19).

- Using this for the weekday parameter returns the weekday day (example: on Sunday it returns 1 and on Wednesday it returns 4).

​

CHARACTERS NAMES AND IDS

dollar_sign - Dollar sign $

colon - Colon :

semicolon - Semicolon ;

equals_sign - Equals sign =

new_line - vbNewLine

Syste variables

VBA > Macros

> Add a new macro (sub)
vba.macros.add: name=<MACRO-NAME>; code=([<MACRO-CODE>]);

​

PARAMETERS

MACRO-NAME - Name of the new macro (sub) (cannot contain spaces and some special characters)

MACRO-CODE - The code of the new macro (sub)

​

EXAMPLE

vba.macros.add: name=MyMacro; code=([MsgBox "Hello world!"]);

​

In this example, the code added will look like this

Sub MyMacro()
MsgBox "Hello world!"
End Sub

​

​

> Edit a macro (sub)
vba.macros.edit: name=<MACRO-NAME>; code=([<MACRO-CODE>]);

​

PARAMETERS

MACRO-NAME - Name of the macro (sub) you want to edit (cannot contain spaces and some special characters)

MACRO-CODE - The new code of the macro (sub)

​

​

> Remove a macro (sub)

vba.macros.remove:<MACRO-NAME>;

​

> Run a macro (sub)

vba.macros.run:<MACRO-NAME>;

VBA > Macros

Misc

> Message box
msgbox: prompt=<MSG-BOX-PROMPT>; title=<MSG-BOX-TITLE>;

​

PARAMETERS

MSG-BOX-PROMPT - Text that is displayed in the message box.

MSG-BOX-TITLE - Title of the message box. (optional)

Misc
Examples

Examples

A Simple House

# Clear the slide
ppt.slideshow.clearslide:10;

​

# Chimney
ppt.shapes.add: slide=10; type=rectangle; name=chimney; x=160; y=90; w=30; h=60;
ppt.shapes.setproperty: slide=10; shape=chimney; property=fill_color; value=$rgb(r[50]g[50]b[50]);
ppt.shapes.setproperty: slide=10; shape=chimney; property=line_visible; value=0;

​

# Roof
ppt.shapes.add: slide=10; type=triangle; name=roof; x=100; y=50; w=290; h=160;
ppt.shapes.setproperty: slide=10; shape=roof; property=fill_color; value=$rgb(r[255]g[100]b[100]);
ppt.shapes.setproperty: slide=10; shape=roof; property=line_visible; value=0;

​

# Wall
ppt.shapes.add: slide=10; type=rectangle; name=wall; x=130; y=210; w=230; h=140;
ppt.shapes.setproperty: slide=10; shape=wall; property=fill_color; value=$rgb(r[60]g[150]b[230]);
ppt.shapes.setproperty: slide=10; shape=wall; property=line_visible; value=0;

​

# Door
ppt.shapes.add: slide=10; type=rectangle; name=door; x=222,5; y=270; w=45; h=80;
ppt.shapes.setproperty: slide=10; shape=door; property=fill_color; value=$rgb(r[50]g[50]b[50]);
ppt.shapes.setproperty: slide=10; shape=door; property=line_visible; value=0;

​

# Go to the slide
ppt.slideshow.gotoslide:10;

​

​

RESULT

house lampcoding.JPG

Date and Time Display

# Clear the slide
ppt.slideshow.clearslide:10;

​

# Time
ppt.shapes.add: slide=10; type=rectangle; name=time; x=200; y=120; w=300; h=80;
ppt.shapes.setproperty: slide=10; shape=time; property=fill_color; value=$rgb(r[27]g[128]b[219]);
ppt.shapes.setproperty: slide=10; shape=time; property=line_visible; value=0;
ppt.shapes.setproperty: slide=10; shape=time; property=text; value=$datetime(hours#):$datetime(minutes#):$datetime(seconds#);
ppt.shapes.setproperty: slide=10; shape=time; property=font_name; value=Segoe UI;
ppt.shapes.setproperty: slide=10; shape=time; property=font_bold; value=1;
ppt.shapes.setproperty: slide=10; shape=time; property=font_size; value=30;
ppt.shapes.setproperty: slide=10; shape=time; property=shadow_visible; value=1;
ppt.shapes.setproperty: slide=10; shape=time; property=shadow_offset_x; value=0;
ppt.shapes.setproperty: slide=10; shape=time; property=shadow_offset_y; value=5;
ppt.shapes.setproperty: slide=10; shape=time; property=shadow_blur; value=15;
ppt.shapes.setproperty: slide=10; shape=time; property=shadow_transparency; value=0,6;
ppt.shapes.setproperty: slide=10; shape=time; property=shadow_size; value=104;

​

# Date
ppt.shapes.add: slide=10; type=rectangle; name=date; x=200; y=180; w=300; h=30;
ppt.shapes.setproperty: slide=10; shape=date; property=fill_color; value=$rgb(r[27]g[128]b[219]);
ppt.shapes.setproperty: slide=10; shape=date; property=line_visible; value=0;
ppt.shapes.setproperty: slide=10; shape=date; property=text; value=$datetime(weekday), $datetime(day#)/$datetime(month#)/$datetime(year#);
ppt.shapes.setproperty: slide=10; shape=date; property=font_name; value=Segoe UI;
ppt.shapes.setproperty: slide=10; shape=date; property=font_size; value=15;

​

# Go to the slide
ppt.slideshow.gotoslide:10;

​

​

RESULT

Capturar.JPG

Login Page

# Clear the slide
ppt.slideshow.clearslide:10;

​

# Title (Login)
ppt.shapes.add: slide=10; type=rectangle; name=title; w=200; h=25; x=380; y=100;
ppt.shapes.setproperty: slide=10; shape=title; property=text; value=Login;
ppt.shapes.setproperty: slide=10; shape=title; property=fill_color; value=$rgb(r[255]g[255]b[255]);
ppt.shapes.setproperty: slide=10; shape=title; property=line_visible; value=0;
ppt.shapes.setproperty: slide=10; shape=title; property=font_color; value=0;
ppt.shapes.setproperty: slide=10; shape=title; property=font_size; value=24;

​

# TextBox for username
ppt.shapes.add: slide=10; type=rectangle; name=username; w=200; h=25; x=230; y=170;
ppt.shapes.setproperty: slide=10; shape=username; property=text; value=Username:;
ppt.shapes.setproperty: slide=10; shape=username; property=fill_color; value=$rgb(r[255]g[255]b[255]);
ppt.shapes.setproperty: slide=10; shape=username; property=line_visible; value=0;
ppt.shapes.setproperty: slide=10; shape=username; property=font_color; value=0;
ppt.controls.add: slide=10; type=textbox; name=txtbox_username; w=200; h=25; x=380; y=170;

​

# TextBox for password
ppt.shapes.add: slide=10; type=rectangle; name=password; w=200; h=25; x=233; y=210;
ppt.shapes.setproperty: slide=10; shape=password; property=text; value=Password:;
ppt.shapes.setproperty: slide=10; shape=password; property=fill_color; value=$rgb(r[255]g[255]b[255]);
ppt.shapes.setproperty: slide=10; shape=password; property=line_visible; value=0;
ppt.shapes.setproperty: slide=10; shape=password; property=font_color; value=0;
ppt.controls.add: slide=10; type=textbox; name=txtbox_password; w=200; h=25; x=380; y=210;
ppt.controls.setproperty: slide=10; control=txtbox_password; property=passwordchar; value=*;

​

# Button to login
ppt.shapes.add: slide=10; type=rectangle; name=btn_login; w=100; h=30; x=430; y=280;
ppt.shapes.setproperty: slide=10; shape=btn_login; property=text; value=Login;
ppt.shapes.setproperty: slide=10; shape=btn_login; property=fill_color; value=$rgb(r[27]g[128]b[219]);
ppt.shapes.setproperty: slide=10; shape=btn_login; property=line_visible; value=0;
ppt.shapes.setproperty: slide=10; shape=btn_login; property=font_color; value=$rgb(r[255]g[255]b[255]);
ppt.shapes.setproperty: slide=10; shape=btn_login; property=font_bold; value=1;
ppt.shapes.setproperty: slide=10; shape=btn_login; property=shadow_visible; value=1;
ppt.shapes.setproperty: slide=10; shape=btn_login; property=shadow_offset_x; value=0;
ppt.shapes.setproperty: slide=10; shape=btn_login; property=shadow_offset_y; value=3;
ppt.shapes.setproperty: slide=10; shape=btn_login; property=shadow_blur; value=8;
ppt.shapes.setproperty: slide=10; shape=btn_login; property=shadow_transparency; value=0,7;
ppt.shapes.setproperty: slide=10; shape=btn_login; property=shadow_size; value=98;

​

# Go to the slide
ppt.slideshow.gotoslide:10;

​

​

RESULT

Capturar.JPG

Simple Addition Calculator

# Clear the slide
ppt.slideshow.clearslide:10;

​

# TextBox for the first number
ppt.controls.add: slide=10; type=textbox; name=txtbox_1stnum; w=200; h=25; x=380; y=170;
ppt.controls.setproperty: slide=10; control=txtbox_1stnum; property=border_style; value=1;
ppt.controls.setproperty: slide=10; control=txtbox_1stnum; property=border_color; value=$rgb(r[180]g[180]b[180]);

​

# Plus sign
ppt.shapes.add: slide=10; type=rectangle; name=btn_plussign; w=140; h=30; x=410; y=192;
ppt.shapes.setproperty: slide=10; shape=btn_plussign; property=text; value=+;
ppt.shapes.setproperty: slide=10; shape=btn_plussign; property=fill_color; value=$rgb(r[255]g[255]b[255]);
ppt.shapes.setproperty: slide=10; shape=btn_plussign; property=line_visible; value=0;
ppt.shapes.setproperty: slide=10; shape=btn_plussign; property=font_color; value=0;
ppt.shapes.setproperty: slide=10; shape=btn_plussign; property=font_bold; value=1;
ppt.shapes.setproperty: slide=10; shape=btn_plussign; property=font_size; value=16;

​

# TextBox for the second number
ppt.controls.add: slide=10; type=textbox; name=txtbox_2ndnum; w=200; h=25; x=380; y=220;
ppt.controls.setproperty: slide=10; control=txtbox_2ndnum; property=border_style; value=1;
ppt.controls.setproperty: slide=10; control=txtbox_2ndnum; property=border_color; value=$rgb(r[180]g[180]b[180]);

​

# calc macro
vba.macros.add: name=calc; code=([shapes("result").textframe.textrange.text="Result: "&(val(txtbox_1stnum.text)+val(txtbox_2ndnum.text))]);

​

# Button to calculate sum
ppt.shapes.add: slide=10; type=rectangle; name=btn_calc; w=140; h=30; x=410; y=280;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=text; value=Calculate sum;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=fill_color; value=$rgb(r[27]g[128]b[219]);
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=line_visible; value=0;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=font_color; value=$rgb(r[255]g[255]b[255]);
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=font_bold; value=1;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=font_size; value=16;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=shadow_visible; value=1;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=shadow_offset_x; value=0;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=shadow_offset_y; value=3;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=shadow_blur; value=8;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=shadow_transparency; value=0,7;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=shadow_size; value=98;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=onclickaction; value=macro;
ppt.shapes.setproperty: slide=10; shape=btn_calc; property=onclickaction_macro; value=calc;

​

# Shape for the result
ppt.shapes.add: slide=10; type=rectangle; name=result; w=140; h=30; x=410; y=325;
ppt.shapes.setproperty: slide=10; shape=result; property=text; value=Result: 0;
ppt.shapes.setproperty: slide=10; shape=result; property=fill_color; value=$rgb(r[255]g[255]b[255]);
ppt.shapes.setproperty: slide=10; shape=result; property=line_visible; value=0;
ppt.shapes.setproperty: slide=10; shape=result; property=font_color; value=0;
ppt.shapes.setproperty: slide=10; shape=result; property=font_bold; value=1;
ppt.shapes.setproperty: slide=10; shape=result; property=font_size; value=16;

​

# Go to the slide
ppt.slideshow.gotoslide:10;

​

​

RESULT

Capture.PNG
bottom of page