DGS OOP Class: Difference between revisions
Jump to navigation
Jump to search
| Line 38: | Line 38: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<div style="background:# | <div style="background:#EEEE33;border-radius:5px;padding:5px;"> | ||
'''Notice:'''When you are ready to create child DGS element | '''Notice:'''When you are ready to create child DGS element | ||
<div style="background:#EE6666;border-radius:5px;padding:10px;"> | <div style="background:#EE6666;border-radius:5px;padding:10px;"> | ||
Revision as of 07:03, 29 January 2019
DGS provides not only POP ( Procedure Oriented Programming ) but also OOP ( Object Oriented Programming ). This page introduces OOP of dgs.
Structure
When using DGS OOP, DGS objects to be operated are no longer elements, instead, they will be tables ( table is the only type whose call methods can be defined in lua ) . Here is the structure of DGS OOP Object:
DGSDxObject = {
DGSElement = DGSElement -- The actual dgs element
function1,
function2,
...
}
- The built-in functions are non-modifiable
- Any variable of the table are get/set via dgsSetProperty/dgsGetProperty ( Exclude DGSElement )
- After importing DGS OOP Class, there is a table called : DGSClass
Get Started
Instead of using
label = exports.dgs:dgsCreateLabel(0, 0, 0.5, 0.1, "text", true)
DGS = exports.dgs label = DGS:dgsCreateLabel(0,0,0.5,0.1,"text",true)
loadstring(exports.dgs:dgsImportFunction())()-- load functions label = dgsCreateLabel(0,0,0.5,0.1,"text",true) --create a label
We provides Object Oriented Programming
loadstring(exports.dgs:dgsImportOOPClass())()-- load OOP class window = DGSClass:createWindow(0,0,0.5,0.1,"test",true) --create a window with oop label = window:createLabel(0,0,1,1,"label",true) --create a label inside the window label.text = "DGS OOP Test" --set text
Notice:When you are ready to create child DGS element
This is the Wrong Operation:
loadstring(exports.dgs:dgsImportOOPClass())()-- load OOP class window = DGSClass:createWindow(0,0,0.5,0.1,"test",true) --create a window with oop label = DGSClass:createLabel(0,0,1,1,"label",true,window) --create a label inside the window ( Wrong ) label.text = "DGS OOP Test" --set text
This is the Correct Operation:
loadstring(exports.dgs:dgsImportOOPClass())()-- load OOP class window = DGSClass:createWindow(0,0,0.5,0.1,"test",true) --create a window with oop label = window:createLabel(0,0,1,1,"label",true) --create a label inside the window ( Correct ) label.text = "DGS OOP Test" --set text
Functions
Creation Functions
| OOP Functions | POP Functions |
|---|---|
| createWindow | dgsCreateWindow |
| create3DInterface | dgsCreate3DInterface |
| createButton | dgsCreateButton |
| createBrowser | dgsCreateBrowser |
| createCheckBox | dgsCreateCheckBox |
| createRadioButton | dgsCreateRadioButton |
| createComboBox | dgsCreateComboBox |
| createEdit | dgsCreateEdit |
| createDetectArea | dgsCreateDetectArea |
| createGridList | dgsCreateGridList |
| createImage | dgsCreateImage |
| createMemo | dgsCreateMemo |
| createLabel | dgsCreateLabel |
| createProgressBar | dgsCreateProgressBar |
| createScrollBar | dgsCreateScrollBar |
| createScrollPane | dgsCreateScrollPane |
| createTabPanel | dgsCreateTabPanel |
| createArrowList | dgsCreateArrowList |
| createSwitchButton | dgsCreateSwitchButton |
Non Object Functions
| OOP Functions | POP Functions |
|---|---|
| isStyleAvailable | dgsIsStyleAvailable |
| getLoadedStyleList | dgsGetLoadedStyleList |
| setCurrentStyle | dgsSetCurrentStyle |
| getCurrentStyle | dgsGetCurrentStyle |
| getScreenSize | guiGetScreenSize |
| setInputEnabled | guiSetInputEnabled |
| getInputEnabled | guiGetInputEnabled |
| setRenderSetting | dgsSetRenderSetting |
| getRenderSetting | dgsGetRenderSetting |
| getLayerElements | dgsGetLayerElements |
| addEasingFunction | dgsAddEasingFunction |
| easingFunctionExists | dgsEasingFunctionExists |
| removeEasingFunction | dgsRemoveEasingFunction |
| getSystemFont | dgsGetSystemFont |
| setSystemFont | dgsSetSystemFont |
| translationTableExists | dgsTranslationTableExists |
| setTranslationTable | dgsSetTranslationTable |
| setAttachTranslation | dgsSetAttachTranslation |
General Functions
| OOP Functions | POP Functions |
|---|---|
| getPosition | dgsGetPosition |
| setPosition | dgsSetPosition |
| getParent | dgsGetParent |
| setParent | dgsSetParent |
| getChild | dgsGetChild |
| getChildren | dgsGetChildren |
| getSize | dgsGetSize |
| setSize | dgsSetSize |
| getType | dgsGetType |
| setLayer | dgsSetLayer |
| getLayer | dgsSetLayer |
| setCurrentLayerIndex | dgsSetCurrentLayerIndex |
| getCurrentLayerIndex | dgsGetCurrentLayerIndex |
| getProperty | dgsGetProperty |
| setProperty | dgsSetProperty |
| getProperties | dgsGetProperties |
| setProperties | dgsSetProperties |
| getVisible | dgsGetVisible |
| setVisible | dgsGetVisible |
| getEnabled | dgsGetEnabled |
| setEnabled | dgsSetEnabled |
| getSide | dgsGetSide |
| setSide | dgsSetSide |
| getAlpha | dgsGetAlpha |
| setAlpha | dgsSetAlpha |
| getFont | dgsGetFont |
| setFont | dgsSetFont |
| getText | dgsGetText |
| setText | dgsSetText |
| bringToFront | dgsBringToFront |
| simulateClick | dgsSimulateClick |
| animTo | dgsAnimTo |
| isAniming | dgsIsAniming |
| stopAniming | dgsStopAniming |
| moveTo | dgsMoveTo |
| isMoving | dgsIsMoving |
| stopMoving | dgsStopMoving |
| sizeTo | dgsSizeTo |
| isSizing | dgsIsSizing |
| stopSizing | dgsStopSizing |
| alphaTo | dgsAlphaTo |
| isAlphaing | dgsIsAlphaing |
| stopAlphaing | dgsStopAlphaing |
| getPostGUI | dgsGetPostGUI |
| setPostGUI | dgsGetPostGUI |
| destroy | destroyElement |
| isElement | isElement |
| getElement | self.dgsElement |
| addMoveHandler | dgsAddMoveHandler |
| removeMoveHandler | dgsRemoveMoveHandler |
| isMoveHandled | dgsIsMoveHandled |
| addSizeHandler | dgsAddSizeHandler |
| removeSizeHandler | dgsRemoveSizeHandler |
| isSizeHandled | dgsIsSizeHandled |
| attachToTranslation | dgsAttachToTranslation |
| detachFromTranslation | dgsDetachFromTranslation |
| getTranslationName | dgsGetTranslationName |
| on | addEventHandler(Handled By DGS) |
| removeOn | removeEventHandler(Handled By DGS) |
Window
| OOP Functions | POP Functions |
|---|---|
| setSizable | dgsWindowSetSizable |
| setMovable | dgsWindowSetMovable |
| close | dgsCloseWindow |
| setCloseButtonEnabled | dgsWindowSetCloseButtonEnabled |
| getCloseButtonEnabled | dgsWindowGetCloseButtonEnabled |
| getCloseButton | dgsWindowGetCloseButton |
3D Interface
| OOP Functions | POP Functions |
|---|---|
| getBlendMode | dgs3DInterfaceGetBlendMode |
| setBlendMode | dgs3DInterfaceSetBlendMode |
| getPosition | dgs3DInterfaceGetPosition |
| setPosition | dgs3DInterfaceSetPosition |
| getSize | dgs3DInterfaceGetSize |
| setSize | dgs3DInterfaceSetSize |
| getResolution | dgs3DInterfaceGetResolution |
| setResolution | dgs3DInterfaceSetResolution |
| attachToElement | dgs3DInterfaceAttachToElement |
| isAttached | dgs3DInterfaceIsAttached |
| detachFromElement | dgs3DInterfaceDetachFromElement |
| setAttachedOffsets | dgs3DInterfaceSetAttachedOffsets |
| getAttachedOffsets | dgs3DInterfaceGetAttachedOffsets |
| setRotation | dgs3DInterfaceSetRotation |
| getRotation | dgs3DInterfaceGetRotation |
Arrow List
| OOP Functions | POP Functions |
|---|---|
| addItem | dgsArrowListAddItem |
| removeItem | dgsArrowListRemoveItem |
| setItemText | dgsArrowListSetItemText |
| getItemText | dgsArrowListGetItemText |
| setItemValue | dgsArrowListSetItemValue |
| getItemValue | dgsArrowListGetItemValue |
| setItemRange | dgsArrowListSetItemRange |
| getItemRange | dgsArrowListGetItemRange |
| setItemTranslationTable | dgsArrowListSetItemTranslationTable |
| getItemTranslationTable | dgsArrowListGetItemTranslationTable |
| setItemStep | dgsArrowListSetItemStep |
| getItemStep | dgsArrowListGetItemStep |
| getItemTranslatedValue | dgsArrowListGetItemTranslatedValue |
| clear | dgsArrowListClear |
Check Box
| OOP Functions | POP Functions |
|---|---|
| getSelected | dgsCheckBoxGetSelected |
| setSelected | dgsCheckBoxSetSelected |
Radio Button
| OOP Functions | POP Functions |
|---|---|
| getSelected | dgsRadioButtonGetSelected |
| setSelected | dgsRadioButtonSetSelected |
Combo Box
| OOP Functions | POP Functions |
|---|---|
| addItem | dgsComboBoxAddItem |
| removeItem | dgsComboBoxRemoveItem |
| setItemText | dgsComboBoxSetItemText |
| getItemText | dgsComboBoxGetItemText |
| clear | dgsComboBoxClear |
| setSelectedItem | dgsComboBoxSetSelectedItem |
| getSelectedItem | dgsComboBoxGetSelectedItem |
| setItemColor | dgsComboBoxSetItemColor |
| getItemColor | dgsComboBoxGetItemColor |
| getState | dgsComboBoxGetState |
| setState | dgsComboBoxSetState |
| getBoxHeight | dgsComboBoxGetBoxHeight |
| setBoxHeight | dgsComboBoxSetBoxHeight |
| getScrollBar | dgsComboBoxGetScrollBar |
| setScrollPosition | dgsComboBoxSetScrollPosition |
| getScrollPosition | dgsComboBoxGetScrollPosition |
| setCaptionText | dgsComboBoxSetCaptionText |
| getCaptionText | dgsComboBoxGetCaptionText |
Edit
| OOP Functions | POP Functions |
|---|---|
| moveCaret | dgsEditMoveCaret |
| getCaretPosition | dgsEditGetCaretPosition |
| setCaretPosition | dgsEditSetCaretPosition |
| setCaretStyle | dgsEditSetCaretStyle |
| getCaretStyle | dgsEditGetCaretStyle |
| setWhiteList | dgsEditSetWhiteList |
| getMaxLength | dgsEditGetMaxLength |
| setMaxLength | dgsEditSetMaxLength |
| setReadOnly | dgsEditSetReadOnly |
| getReadOnly | dgsEditGetReadOnly |
| setMasked | dgsEditSetMasked |
| getMasked | dgsEditGetMasked |
| setUnderlined | dgsEditSetUnderlined |
| getUnderlined | dgsEditGetUnderlined |
| setHorizontalAlign | dgsEditSetHorizontalAlign |
| getHorizontalAlign | dgsEditGetHorizontalAlign |
| setVerticalAlign | dgsEditSetVerticalAlign |
| getVerticalAlign | dgsEditGetVerticalAlign |
| insertText | dgsEditInsertText |
| deleteText | dgsEditDeleteText |
| getPartOfText | dgsEditGetPartOfText |
| clearText | dgsEditClearText |
| replaceText | dgsEditReplaceText |
Ellipse Detect Area
| OOP Functions | POP Functions |
|---|---|
| setDebugModeEnabled | dgsEDASetDebugModeEnabled |
| getDebugModeEnabled | dgsEDAGetDebugModeEnabled |
Detect Area
| OOP Functions | POP Functions |
|---|---|
| setFunction | dgsDetectAreaSetFunction |
Grid List
Image
| OOP Functions | POP Functions |
|---|---|
| setImage | dgsImageSetImage |
| getImage | dgsImageGetImage |
| setUVSize | dgsImageSetUVSize |
| getUVSize | dgsImageGetUVSize |
| setUVPosition | dgsImageSetUVPosition |
| getUVPosition | dgsImageGetUVPosition |
Memo
| OOP Functions | POP Functions |
|---|---|
| moveCaret | dgsMemoMoveCaret |
| seekPosition | dgsMemoSeekPosition |
| getScrollBar | dgsMemoGetScrollBar |
| setScrollPosition | dgsMemoSetScrollPosition |
| getScrollPosition | dgsMemoGetScrollPosition |
| setCaretPosition | dgsMemoSetCaretPosition |
| getCaretPosition | dgsMemoGetCaretPosition |
| setCaretStyle | dgsMemoSetCaretStyle |
| getCaretStyle | dgsMemoGetCaretStyle |
| setReadOnly | dgsMemoSetReadOnly |
| getReadOnly | dgsMemoGetReadOnly |
| getPartOfText | dgsMemoGetPartOfText |
| deleteText | dgsMemoDeleteText |
| insertText | dgsMemoInsertText |
| clearText | dgsMemoClearText |
Label
| OOP Functions | POP Functions |
|---|---|
| setColor | dgsLabelSetColor |
| getColor | dgsLabelGetColor |
| setHorizontalAlign | dgsLabelSetHorizontalAlign |
| getHorizontalAlign | dgsLabelGetHorizontalAlign |
| setVerticalAlign | dgsLabelSetVerticalAlign |
| getVerticalAlign | dgsLabelGetVerticalAlign |
Progress Bar
| OOP Functions | POP Functions |
|---|---|
| getProgress | dgsProgressBarGetProgress |
| setProgress | dgsProgressBarSetProgress |
| getMode | dgsProgressBarGetMode |
| setMode | dgsProgressBarSetMode |
| getVerticalSide | dgsProgressBarGetVerticalSide |
| setVerticalSide | dgsProgressBarSetVerticalSide |
| getHorizontalSide | dgsProgressBarGetHorizontalSide |
| setHorizontalSide | dgsProgressBarSetHorizontalSide |
Scroll Bar
| OOP Functions | POP Functions |
|---|---|
| setScrollPosition | dgsScrollBarSetScrollPosition |
| getScrollPosition | dgsScrollBarGetScrollPosition |
| setScrollSize | dgsScrollBarSetScrollSize |
| getScrollSize | dgsScrollBarGetScrollSize |
| setLocked | dgsScrollBarSetLocked |
| getLocked | dgsScrollBarGetLocked |
Scroll Pane
| OOP Functions | POP Functions |
|---|---|
| getScrollBar | dgsScrollPaneGetScrollBar |
| setScrollPosition | dgsScrollPaneSetScrollPosition |
| getScrollPosition | dgsScrollPaneGetScrollPosition |
| setScrollBarState | dgsScrollPaneSetScrollBarState |
| getScrollBarState | dgsScrollPaneGetScrollBarState |
Switch Button
| OOP Functions | POP Functions |
|---|---|
| getState | dgsSwitchButtonGetState |
| setState | dgsSwitchButtonSetState |
| setText | dgsSwitchButtonSetText |
| getText | dgsSwitchButtonGetText |
Tab Panel
| OOP Functions | POP Functions |
|---|---|
| getSelectedTab | dgsGetSelectedTab |
| setSelectedTab | dgsSetSelectedTab |
| getTabFromID | dgsTabPanelGetTabFromID |
| moveTab | dgsTabPanelMoveTab |
| getTabID | dgsTabPanelGetTabID |
| createTab | dgsCreateTab |
Tab
| OOP Functions | POP Functions |
|---|---|
| deleteTab | dgsDeleteTab |