PL/Dgs
From Multi Theft Auto: Wiki
Ten zasób jest stworzony by pozwolić ci stworzyć GUI directX jako alternatywę do funkcji oryginalnego GUI MTA:SA
Pełna nazwa: Thisdp's DirectX Graphical User Interface System (DxGUI Lib)
Autor: thisdp
Stan: OpenSourced & Work in progress
Źródło GitHub: https://github.com/thisdp/dgs/tree/master
Serwer Discord: https://discord.gg/QEs8q6W
Cechy
Jak to działa?
- DGS jest bazowane na systemie element, tak samo jak w systemie cegui. By ułatwić zrozumienie DGS by używać go i rozumieć, wybrałem by wzorować się na używaniu cegui.
- Elementy DGS są renderowane w evencie "onClientRender". Gdy "onClientRender" jest wykonywane, każdy element DGS będzie zapętlony i obliczony.
Jaka jest różnica miedzy cegui?
- Ten zasób bazowany jest na funkcjach dx*, więc jego styl będzie bardziej elastyczny niż cegui, co znaczy że możesz sam zdecydować jak będzie wyglądać twoje GUI.
System aktualizacji
- Zawiera system aktualizacji który informuje cię o aktualizowaniu twojego DGS.
- Gdy nowsza wersja jest wypuszczona, sprawdzi on to i cię poinformuje.
- Wykonaj komendę "updatedgs" by sprawdzić najnowszą wersję i zaktualizować swój DGS.
- Możesz też sprawdzić wersję DGS przez wpisanie komendy "dgsver"
Musisz wiedzieć
- Scroll Pane, Grid Lista, Combo Box, Memo i Edit Box użyte w Render Target, co oznacza że jeśli nie masz wystarczająco pamięci,'Render Target się nie utworzy, w konsekwencji te elementy DGS się nie pojawią.
Przykładowe skrypty
- 1.https://community.multitheftauto.com/index.php?p=resources&s=details&id=14757 Od (Ahmed Ly ,Mahmod Algeriany)
- 2 Plik test.lua też ma parę przykładów, możesz go zobaczyć.
- 3. Ten film pokazuje ci jak odtworzyć film używając DGS https://www.youtube.com/watch?v=ZIq24zS5byI
Auto Uzupełnianie
- 1. Link: http://www.mediafire.com/file/m6dm7815d5dihax/lua.zip Od Ahmed Ly
- 2. Uwaga: Musisz wrzucić go do pliku Notepad++\plugins\APIs.
- 3. Nie wszystkie funkcje DGS są dodane, reszta zostanie dodana niedługo.
Debug
- Możesz wejść w tryb debug przez wpisanie komendy "debugdgs".
Typy DGS
- 3D Interface (dgs-dx3dinterface): Interfejs 3D.
- Arrow List (dgs-arrowlist): An arrow list.
- Button (dgs-dxbutton): Przycisk.
- Ellipse Detect Area (dgs-dxeda): Owalna strefia wykrycia.
- Edit (dgs-dxedit): Editbox.
- Memo (dgs-dxmemo): Memo.
- Gridlist (dgs-dxgridlist): Gridlista.
- Image (dgs-dximage): Obrazek dynamiczny.
- Label (dgs-dxlabel): Nagłówek .
- Ellipse Detecting Area (EDA)
- ScrollBar (dgs-dxscrollbar): Pasek Scrolla.
- ScrollPane (dgs-dxscrollpane): Tło paska scrolla.
- Tab Panel (dgs-dxtabpanel + dgs-dxtab) : Panel TAB.
- Window (dgs-dxwindow): Okno.
- Progress Bar (dgs-dxprogressbar): Pasek postępu.
- Radio Button (dgs-dxradiobutton): Okrągły przycisk.
- Combo Box (dgs-dxcombobox + dgs-dxcombobox-Box) : Combo box.
- Check Box (dgs-dxcheckbox) : Check box z 3 stanami (zaznaczony, niezaznaczony, wymuszony).
- Media Browser (dgs-dxmedia) : Wyszukiwarka mediów przeznaczona do ładowania video/audio/gif.
- Browser (dgs-browser) : Przeglądarka DGS.
UWAGA
- Zaleca się zachowanie nazwy zasobu jako 'dgs'.
- To jest zasób, jeśli chcesz używać eksportowanych funkcji powinieneś użyć prefixu (export.dgs:).
label = exports.dgs:dgsCreateLabel(0, 0, 0.5, 0.1, "text", true)
- Tu jest sposób na skrócenie nazwy eksportowanej funkcji
DGS = exports.dgs --shorten the export function prefix label = DGS:dgsCreateLabel(0,0,0.5,0.1,"text",true) --stwórz nagłówek
- Od ostatniej wersji nie potrzebujesz już exports.dgs:, zamiast tego możesz
loadstring(exports.dgs:dgsImportFunction())()--Załaduj funkcje label = dgsCreateLabel(0,0,0.5,0.1,"text",true) --Utwórz nagłówek
Object Oriented Programming
loadstring(exports.dgs:dgsImportOOPClass())()-- załaduj klasę OOP window = DGSClass:createWindow(0,0,0.5,0.1,"test",true) --stwórz okno z OOP label = window:createLabel(0,0,1,1,"label",true) --Stwórz nagłówek z OOP label.text = "DGS OOP Test" --Ustaw tekst
Chcesz z nami pogadać??
- Dołącz do Serwera Discord: https://discord.gg/QEs8q6W
Specjalne podziękowania dla wymienionych za pomoc (Szanuj współtwórców!):
- Axel: Daje porady i dostarczył parę funkcji.
- Senpai: Pomaga z wiki.
- ZoNe: Pomaga z wiki.
- DiGiTal: Pomaga z wiki.
- #Dv^: Pomaga z wiki.
- maksam07: Sugestie, łatanie błędów, kodowanie.
- Scorpyo: Debug i sugestie.
- Kingleonide: Debug, sugestie i edycja kodu.
- .el3tar: Stworzył kurs video DGS dla języka arabskiego.
- Allerek: DGS Logo, Pisanie Wiki(PL).
- Deihim007: Pomaga z wiki, sugestie.
- OmarSwaitti(HankVoight): Pomaga z wiki, sugestie.
Specjalnie podziękowania dla:
- Ahmed Ly: Pomaga napisać wiki, wypuścił auto uzupełnianie dla N++.
Porady DGS
DGS Właściwości Elementów
Ogólnie
Poszczególne właściwości
- dgs-dx3dinterface
- dgs-dxbutton
- dgs-dxcheckbox
- dgs-dxcmd
- dgs-dxcombobox
- dgs-dxeda
- dgs-dxedit
- dgs-dxgridlist
- dgs-dximage
- dgs-dxmemo
- dgs-dxlabel
- dgs-dxprogressbar
- dgs-dxradiobutton
- dgs-dxscrollbar
- dgs-dxscrollpane
- dgs-dxtabpanel
- dgs-dxtab
- dgs-dxwindow
Funkcje client
- dgsGetPosition
- dgsSetPosition
- dgsSetParent
- dgsGetParent
- dgsGetChild
- dgsGetChildren
- dgsGetSize
- dgsSetSize
- dgsGetType
- dgsSetLayer
- dgsGetLayer
- dgsSetCurrentLayerIndex
- dgsGetCurrentLayerIndex
- dgsGetLayerElements
- dgsGetProperty
- dgsSetProperty
- dgsSetPropertyInherit
- dgsGetProperties
- dgsSetProperties
- dgsGetVisible
- dgsSetVisible
- dgsGetEnabled
- dgsSetEnabled
- dgsGetSide
- dgsSetSide
- dgsGetAlpha
- dgsSetAlpha
- dgsGetFont
- dgsSetFont
- dgsGetText
- dgsSetText
- dgsGetPostGUI
- dgsSetPostGUI
- dgsGetInputEnabled
- dgsSetInputEnabled
- dgsGetInputMode
- dgsSetInputMode
- dgsFocus
- dgsBlur
- dgsCreateFont
- dgsBringToFront
- dgsMoveToBack
- dgsGetScreenSize
- dgsGetCursorPosition
- dgsGetMouseEnterGUI
- dgsGetMouseLeaveGUI
- dgsSetSystemFont
- dgsGetSystemFont
- dgsGetDxGUINoParent
- dgsGetDxGUIFromResource
- dgsGetFocusedGUI
- dgsGetExportedFunctionName
- dgsImportFunction
- dgsImportOOPClass
- dgsSetRenderSetting
- dgsGetRenderSetting
- dgsSimulateClick
- dgsGetRootElement
- dgsAddMoveHandler
- dgsRemoveMoveHandler
- dgsIsMoveHandled
- dgsAddSizeHandler
- dgsRemoveSizeHandler
- dgsIsSizeHandled
- dgsAttachElemetns
- dgsDetachElements
- dgsElementIsAttached
Multi Language Supports
- dgsTranslationTableExists
- dgsSetTranslationTable
- dgsAttachToTranslation
- dgsDetachFromTranslation
- dgsSetAttachTranslation
- dgsGetTranslationName
Animation
- dgsAnimTo
- dgsIsAniming
- dgsStopAniming
- dgsMoveTo
- dgsIsMoving
- dgsStopMoving
- dgsSizeTo
- dgsIsSizing
- dgsStopSizing
- dgsAlphaTo
- dgsIsAlphaing
- dgsStopAlphaing
- dgsAddEasingFunction
- dgsRemoveEasingFunction
- dgsEasingFunctionExists
3D Interface
- dgsCreate3DInterface
- dgs3DInterfaceGetBlendMode
- dgs3DInterfaceSetBlendMode
- dgs3DInterfaceGetPosition
- dgs3DInterfaceSetPosition
- dgs3DInterfaceGetSize
- dgs3DInterfaceSetSize
- dgs3DInterfaceGetResolution
- dgs3DInterfaceSetResolution
- dgs3DInterfaceAttachToElement
- dgs3DInterfaceIsAttached
- dgs3DInterfaceDetachFromElement
- dgs3DInterfaceSetAttachedOffsets
- dgs3DInterfaceGetAttachedOffsets
- dgs3DInterfaceSetRotation
- dgs3DInterfaceGetRotation
3D Text
- dgsCreate3DText
- dgs3DTextGetDimension
- dgs3DTextSetDimension
- dgs3DTextGetInterior
- dgs3DTextSetInterior
- dgs3DTextAttachToElement
- dgs3DTextIsAttached
- dgs3DTextDetachFromElement
- dgs3DTextSetAttachedOffsets
- dgs3DTextGetAttachedOffsets
Arrow List
- dgsCreateArrowList
- dgsArrowListAddItem
- dgsArrowListRemoveItem
- dgsArrowListSetItemText
- dgsArrowListGetItemText
- dgsArrowListSetItemValue
- dgsArrowListGetItemValue
- dgsArrowListSetItemRange
- dgsArrowListGetItemRange
- dgsArrowListSetItemTranslationTable
- dgsArrowListGetItemTranslationTable
- dgsArrowListSetItemStep
- dgsArrowListGetItemStep
- dgsArrowListGetItemTranslatedValue
- dgsArrowListClear
Browser
Button
Check Box
Combo Box
- dgsCreateComboBox
- dgsComboBoxAddItem
- dgsComboBoxRemoveItem
- dgsComboBoxSetItemText
- dgsComboBoxGetItemText
- dgsComboBoxGetItemCount
- dgsComboBoxClear
- dgsComboBoxSetSelectedItem
- dgsComboBoxGetSelectedItem
- dgsComboBoxSetItemColor
- dgsComboBoxGetItemColor
- dgsComboBoxGetState
- dgsComboBoxSetState
- dgsComboBoxGetBoxHeight
- dgsComboBoxSetBoxHeight
- dgsComboBoxGetScrollBar
- dgsComboBoxSetScrollPosition
- dgsComboBoxGetScrollPosition
- dgsComboBoxSetCaptionText
- dgsComboBoxGetCaptionText
Edit
- dgsCreateEdit
- dgsEditMoveCaret
- dgsEditGetCaretPosition
- dgsEditSetCaretPosition
- dgsEditSetCaretStyle
- dgsEditGetCaretStyle
- dgsEditSetWhiteList
- dgsEditGetMaxLength
- dgsEditSetMaxLength
- dgsEditSetReadOnly
- dgsEditGetReadOnly
- dgsEditSetMasked
- dgsEditGetMasked
- dgsEditSetUnderlined
- dgsEditGetUnderlined
- dgsEditSetHorizontalAlign
- dgsEditSetVerticalAlign
- dgsEditGetHorizontalAlign
- dgsEditGetVerticalAlign
- dgsEditSetAlignment
- dgsEditGetAlignment
- dgsEditInsertText
- dgsEditDeleteText
- dgsEditGetPartOfText
- dgsEditClearText
- dgsEditReplaceText
- dgsEditSetTypingSound
- dgsEditGetTypingSound
- dgsEditSetPlaceHolder
- dgsEditGetPlaceHolder
Ellipse Detect Area
Detect Area
Grid List
- dgsCreateGridList
- dgsGridListGetScrollBar
- dgsGridListSetScrollPosition
- dgsGridListGetScrollPosition
- dgsGridListResetScrollBarPosition
- dgsGridListSetColumnRelative
- dgsGridListGetColumnRelative
- dgsGridListAddColumn
- dgsGridListGetColumnCount
- dgsGridListRemoveColumn
- dgsGridListGetColumnAllWidth
- dgsGridListGetColumnWidth
- dgsGridListSetColumnWidth
- dgsGridListAutoSizeColumn
- dgsGridListGetColumnTitle
- dgsGridListSetColumnTitle
- dgsGridListGetColumnFont
- dgsGridListSetColumnFont
- dgsGridListAddRow
- dgsGridListRemoveRow
- dgsGridListClearRow
- dgsGridListClearColumn
- dgsGridListClear
- dgsGridListGetRowCount
- dgsGridListSetItemText
- dgsGridListGetItemText
- dgsGridListGetSelectedItem
- dgsGridListSetSelectedItem
- dgsGridListSetItemColor
- dgsGridListGetItemColor
- dgsGridListSetItemData
- dgsGridListGetItemData
- dgsGridListSetItemImage
- dgsGridListGetItemImage
- dgsGridListRemoveItemImage
- dgsGridListGetRowBackGroundImage
- dgsGridListSetRowBackGroundImage
- dgsGridListSetRowBackGroundColor
- dgsGridListGetRowBackGroundColor
- dgsGridListSetRowAsSection
- dgsGridListSelectItem
- dgsGridListItemIsSelected
- dgsGridListSetMultiSelectionEnabled
- dgsGridListGetMultiSelectionEnabled
- dgsGridListSetSelectionMode
- dgsGridListGetSelectionMode
- dgsGridListGetSelectedCount
- dgsGridListGetSelectedItems
- dgsGridListSetSelectedItems
- dgsGridListSetSortFunction
- dgsGridListSetAutoSortEnabled
- dgsGridListGetAutoSortEnabled
- dgsGridListSetSortEnabled
- dgsGridListGetSortEnabled
- dgsGridListSetSortColumn
- dgsGridListGetSortColumn
- dgsGridListGetEnterColumn
- dgsGridListSort
- dgsGridListSetNavigationEnabled
- dgsGridListGetNavigationEnabled
Image
- dgsCreateImage
- dgsImageSetImage
- dgsImageGetImage
- dgsImageSetUVSize
- dgsImageGetUVSize
- dgsImageSetUVPosition
- dgsImageGetUVPosition
Memo
- dgsCreateMemo
- dgsMemoMoveCaret
- dgsMemoSeekPosition
- dgsMemoGetScrollBar
- dgsMemoSetScrollPosition
- dgsMemoGetScrollPosition
- dgsMemoSetCaretPosition
- dgsMemoGetCaretPosition
- dgsMemoSetCaretStyle
- dgsMemoGetCaretStyle
- dgsMemoSetReadOnly
- dgsMemoGetReadOnly
- dgsMemoGetPartOfText
- dgsMemoDeleteText
- dgsMemoInsertText
- dgsMemoClearText
- dgsMemoSetTypingSound
- dgsMemoGetTypingSound
- dgsMemoGetLineCount
- dgsMemoSetWordWarpState
- dgsMemoGetWordWarpState
- dgsMemoSetScrollBarState
- dgsMemoGetScrollBarState
Label
- dgsCreateLabel
- dgsLabelSetColor
- dgsLabelGetColor
- dgsLabelSetHorizontalAlign
- dgsLabelGetHorizontalAlign
- dgsLabelSetVerticalAlign
- dgsLabelGetVerticalAlign
- dgsLabelGetTextExtent
- dgsLabelGetFontHeight
Progress Bar
- dgsCreateProgressBar
- dgsProgressBarGetProgress
- dgsProgressBarSetProgress
- dgsProgressBarGetMode
- dgsProgressBarSetMode
Radio Button
Scroll Bar
- dgsCreateScrollBar
- dgsScrollBarSetScrollPosition
- dgsScrollBarGetScrollPosition
- dgsScrollBarSetScrollSize
- dgsScrollBarGetScrollSize
- dgsScrollBarSetLocked
- dgsScrollBarGetLocked
Scroll Pane
- dgsCreateScrollPane
- dgsScrollPaneGetScrollBar
- dgsScrollPaneSetScrollPosition
- dgsScrollPaneGetScrollPosition
- dgsScrollPaneSetScrollBarState
- dgsScrollPaneGetScrollBarState
Switch Button
- dgsCreateSwitchButton
- dgsSwitchButtonGetState
- dgsSwitchButtonSetState
- dgsSwitchButtonSetText
- dgsSwitchButtonGetText
Tab Panel
- dgsCreateTabPanel
- dgsCreateTab
- dgsGetSelectedTab
- dgsSetSelectedTab
- dgsTabPanelGetTabFromID
- dgsTabPanelMoveTab
- dgsTabPanelGetTabID
- dgsDeleteTab
Window
- dgsCreateWindow
- dgsWindowSetSizable
- dgsWindowSetMovable
- dgsWindowGetSizable
- dgsWindowGetMovable
- dgsCloseWindow
- dgsWindowSetCloseButtonEnabled
- dgsWindowGetCloseButtonEnabled
- dgsWindowSetCloseButtonSize
- dgsWindowGetCloseButtonSize
- dgsWindowGetCloseButton
Plugin
Media Browser
- dgsCreateMediaBrowser
- dgsMediaLoadMedia
- dgsMediaGetMediaPath
- dgsMediaClearMedia
- dgsMediaIsStreamMedia
- dgsMediaPlay
- dgsMediaPause
- dgsMediaStop
- dgsMediaSetSize
- dgsMediaSetFilled
- dgsMediaGetFilled
- dgsMediaSetFullScreen
- dgsMediaGetDuration
- dgsMediaGetCurrentPosition
- dgsMediaSetCurrentPosition
- dgsMediaGetLooped
- dgsMediaSetLooped
Rounded Rectangle
- dgsCreateRoundRect
- dgsRoundRectSetTexture
- dgsRoundRectSetRadius
- dgsRoundRectGetRadius
- dgsRoundRectSetColor
- dgsRoundRectGetColor
Color Picker
- dgsCreateColorPicker
- dgsColorPickerSetColor
- dgsColorPickerGetColor
- dgsBindToColorPicker
- dgsUnbindFromColorPicker
- dgsColorPickerCreateComponentSelector
- dgsColorPickerGetComponentSelectorValue
- dgsColorPickerSetComponentSelectorValue
Eventy Client
- onDgsArrowListValueChange
- onDgsBlur
- onDgsCheckBoxChange
- onDgsComboBoxStateChange
- onDgsComboBoxSelect
- onDgsCreate
- onDgsDestroy
- onDgsEditPreSwitch
- onDgsEditSwitched
- onDgsEditAccepted
- onDgsElementRender
- onDgsElementMove
- onDgsElementSize
- onDgsFocus
- onDgsGridListItemDoubleClick
- onDgsGridListSelect
- onDgsMouseClick
- onDgsMouseClickDown
- onDgsMouseClickUp
- onDgsMouseDrag
- onDgsMouseDoubleClick
- onDgsMouseDown
- onDgsMouseEnter
- onDgsMouseLeave
- onDgsMouseMove
- onDgsMouseUp
- onDgsMouseWheel
- onDgsRadioButtonChange
- onDgsPositionChange
- onDgsPreRender
- onDgsRender
- onDgsElementScroll
- onDgsSizeChange
- onDgsTabPanelTabSelect
- onDgsTabSelect
- onDgsTextChange
- onDgsWindowClose
Plugin
Media
- onDgsMediaPlay
- onDgsMediaPause
- onDgsMediaStop
- onDgsMediaDurationGet
- onDgsMediaTimeUpdate
- onDgsMediaBrowserReturn
Color Picker
Ostatnie
Każdy może pisać sugestie, testować skrypty, tworzyć/ulepszać/kończyć wiki, itp.