TR/Resource:DGS

From Multi Theft Auto: Wiki
Revision as of 11:39, 29 January 2023 by Shady (talk | contribs) (shady)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

DGS Logo By Allerek

Bu kaynak, orijinal MTA:SA GUI işlevlerine alternatif olarak directX GUI'leri oluşturmanıza izin vermek için tasarlanmıştır.

This wiki is always for the latest DGS version!

Full Name: Thisdp's DirectX Graphical User Interface System (DxGUI Lib)

Developer Team: thisdp, xLive, KronoS Lettify, [𝐓𝐅] 𝓣𝓗𝓔 𝓕𝓘𝓧𝓔𝓡

State: OpenSource & Work in progress

GitHub Source: https://github.com/thisdp/dgs/tree/master

Server Discord: https://discord.gg/QEs8q6W

Current Version: 3.519

Update Log: Changes and Updates Log


Auto Completion & Syntax Highlight

Official:

Use the following command in server console to crawl and generate the latest auto completion (Only support NotePad++/Sublime/VSCode).

  • g2d -crawl npp/sublime/vscode

Or you can use the following link to download completed files instead of crawling by yourself.

3rd Party Auto Completion:

Features

DGS Network Monitor
DGSS.png


How does it work?

  • DGS, tıpkı cegui sistemi gibi element sistemine dayanmaktadır. DGS'nin kullanımını ve anlaşılmasını kolaylaştırmak için cegui'lerin kullanımını takip etmeyi seçiyorum.
  • DGS OOP sözdizimini destekler, POP'u sevmiyorsanız, bunun yerine OOP kullanın. Ancak OOP'un POP'tan daha yavaş olduğunu bilmelisiniz.
  • DGS elementlerin "onClientRender" olayında render edilir. "onClientRender" çağrıldığında, her DGS elemantin döngüye girecek ve hesaplanacaktır.


What's different from cegui?

  • Bu kaynak dx* fonksiyonlarına dayanmaktadır, bu nedenle stili cegui'den daha esnek olacaktır, bu da stili kendiniz tanımlayabileceğiniz anlamına gelir.
  • En son Style System', geliştiricinin çok sayıda dgsSetProperty/dgsSetProperties kullanmak yerine renk değiştirme, görüntü yükleme ve hatta sunucuda dgs öğeleriyle gölgelendiriciler yükleme gibi kendi stillerini tanımlamasına olanak tanır.


Update System

  • DGS'nizi en güncel tutmanız için sizi bilgilendirebilecek bir güncelleme sistemine sahiptir.
  • Daha yeni bir sürüm yayınlandığında, sürüm değişikliğini periyodik olarak algılar ve ardından sizi uyarır.
  • En düşük sürümü kontrol etmek ve DGS'nizi güncellemek için "updatedgs" komutunu çalıştırın.
  • Ayrıca, "dgsver" komutunu girerek DGS'nin sürümünü kontrol edebilirsiniz.


You Should Know

  • Bu proje 2014 yılından itibaren başlatılmıştır.
  • Bazı DGS öğeleri Render Target kullanır, bu da yeterli video belleğiniz yoksa Render Target won't be created ve bu nedenle bu dgs öğelerinin gösterilmeyeceği anlamına gelir.


Example DGS Cmd

Examples scripts


Debug

  • Hata ayıklama moduna "debugdgs" komutunu çalıştırarak girebilirsiniz.
  • "debugdgs": Basit hata ayıklama modu. Temel bilgiler için.
  • "'debugdgs 2": Render hata ayıklama modu. Dgs öğelerinin ölçeğini gökkuşağı kenarlığı ile görmek için
  • "'debugdgs 3": İzleme hata ayıklama modu. Örneğin dgs elementlerinin' nerede oluşturulduğunu izlemek için ve bazı işlevlerin izleme modu ayrıntıları göstermek için etkinleştirilecektir.


Notice

  • Kaynak adının 'dgs' olarak değiştirilmesi önerilir.
  • Bu bir kaynaktır, bu kaynak tarafından dışa aktarılan işlevleri kullanmak istiyorsanız, kodunuzda bir dışa aktarılan işlev öneki (exports.dgs:) çağrısı kullanmalısınız, örneğin
label = exports.dgs:dgsCreateLabel(0, 0, 0.5, 0.1, "text", true)
  • İşte dışa aktarılan bir işlevin adını kısaltmanın uygulanabilir bir yolu:
DGS = exports.dgs --shorten the export function prefix
label = DGS:dgsCreateLabel(0,0,0.5,0.1,"text",true) --create a label
  • En son sürümden itibaren artık exports.dgs:ye ihtiyaç duymuyor, bunun yerine şunları yapabiliriz
loadstring(exports.dgs:dgsImportFunction())()-- load functions
label = dgsCreateLabel(0,0,0.5,0.1,"text",true) --create a label

Object Oriented Programming

loadstring(exports.dgs:dgsImportOOPClass(true))()-- load OOP class
window = dgsWindow(0,0,0.5,0.1,"test",true) --create a window with oop
label = window:dgsLabel(0,0,1,1,"label",true) --create a label inside the window
label.text = "DGS OOP Test" --set text

Special thanks to the following for their help (Respect the contributors):

  • Axel, Senpai, ZoNe
  • DiGiTal, #Dv^, maksam07
  • Scorpyo, Kingleonide, Bullet(.el3tar)
  • Allerek, Deihim007, OmarSwaitti(HankVoight)
  • FlyingFork, Lettify, Ahmed Ly
  • ᴛᴇᴍᴏɪꜱ

DGS Tips

DGS Element Properties

General Properties

Unique Properties For DGS Core Elements

Extra Properties For DGS Plugins

Client Functions

Custom Cursor Functions

Multi Language Supports

Animation

3D Element

3D Interface

3D Line

3D Image

3D Text

Browser

Button

Check Box

Combo Box

Custom Renderer

Edit

Detect Area

Drag'N Drop

Grid List

Image

Memo

Menu

Label

Layout

Line

Progress Bar

Radio Button

Scale Pane

Scroll Bar

Scroll Pane

Selector

Style

Switch Button

Tab Panel

Window

Basic Shape Plugins

Circle

Quadrilateral

Rounded Rectangle

Other Plugins

Blur Box

Canvas

Chart

Color Picker

Effect 3D

Gradient

Mask

Media Browser

Nine Slice

Object Preview Supports

Paste Handler

QRCode

Remote Image

Screen Source

SVG

Tooltips

Client Events

General

Check Box

Combo Box

Drag'N Drop

Edit

Grid List

Menu

Selector

Mouse

Radio Button

Switch Button

Tab

Animation

Plugin

Media

Color Picker

QRCode

Remote Image

Last

Everyone is welcome to make suggestions, test the script, help make adjustments/finish the wiki, etc.