ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Controls, pages and windows / Windows functions that can be handled by the end user
  • Use example
  • Error
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Declares how to cancel an action that was added by WinEdDo. This function is linked to the "Allow end users to modify the UI" feature.
This function is mainly used when creating an editor through programming (see "Remarks").
Example
WinEdDo(WIN_MyEditor, ProcCreateCap, "New")
INTERNAL PROCÉDURE ProcCreateCap(sCap)
pNew is Control
pNew <- ControlCreate("STC_" + GetIdentifier(), typText, 150, 150, 80, 20)
pNew.Caption = sCap
WinEdDeclareUndo(ProcCancel)
INTERNAL PROCÉDURE ProcCancel()
ControlDelete(pNew)
END
END
WinEdDeclareUndo(UndoOperation, CUSTOMER.CustomerID)
 
// Management of Undo
INTERNAL PROCÉDURE UndoOperation(nCustomerID)
IF HReadSeekFirst(CUSTOMER, CustomerID, nCustomerID) THEN
   SourceToScreen()
END
Syntax
WinEdDeclareUndo(<WLanguage procedure> [, <Parameter 1> [... [, <Parameter N>]]])
<WLanguage procedure>: Procedure name
Name of WLanguage procedure to run. The code of this procedure must allow to cancel the action created by WinEdDo.
Using an internal procedure provides a direct access to the local variables.
<Parameter 1>: Any optional type
First optional parameter that will be passed to the procedure.
In most cases, these parameter are values used to restore the previous status.
<Parameter N>: Any optional type
Nth optional parameter that will be passed to the procedure.
In most cases, these parameter are values used to restore the previous status.
Remarks

Use example

WinEdDo is used to create custom actions (control creation for example) that support the undo/redo feature.
Let's take a simple example: creating a graphic object editor.
A button is used to create a shape. The user must have the ability to undo the shape creation. The following operations are performed:
  • The window switches to edit mode (WinEdActive).
  • The WinEdDo function is called. The procedure called by this function is used to create the shape. This procedure also contains the call to WinEdDeclareUndo. WinEdDeclareUndo is used to define the behavior in case of cancellation by the user.
  • The window switches to standard mode (WinEdActive).
The end user can cancel this action (Ctrl + Z or WinEdUndo): then, the <WLanguage procedure> will be called.

Error

A WLanguage error occurs if WinEdDeclareUndo is called outside a procedure added by WinEdDo.
Related Examples:
WD Graphic Objects Training (WINDEV): WD Graphic Objects
[ + ] This example illustrates the power of WLanguage in object oriented programming.
This example is a graphic object editor.

It is possible to:
- move, resize objects
- make selections with a lasso or a mouse
- cut/copy/paste objects
- delete/duplicate objects
- save the created documents and print them.

The main technical features presented and documented are:
- management of an object clipboard
- UNDO/REDO management
- serialization and deserialization of objects
- algorithms for managing graphic objects (proportional resizing, management of move rules, etc...)
Component: wd290obj.dll
Minimum version required
  • Version 21
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 07/03/2023

Send a report | Local help