ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ Cambalache, Π½ΠΎΠ²Ρ‹ΠΉ инструмСнт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ GTK-интСрфСйсов

На ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ GUADEC 2021 прСдставлСн Cambalache, Π½ΠΎΠ²Ρ‹ΠΉ инструмСнт быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ интСрфСйсов для GTK 3 ΠΈ GTK 4, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΡƒ MVC ΠΈ Ρ„ΠΈΠ»ΠΎΡΠΎΡ„ΠΈΡŽ пСрвостСпСнного значСния ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Одним ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Ρ… ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΉ ΠΎΡ‚ Glade являСтся ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° вСдСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… интСрфСйсов ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° написан Π½Π° Python ΠΈ поставляСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv2.

Для обСспСчСния ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²Π΅Ρ‚ΠΎΠΊ GTK Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ области осущСствляСтся с ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ бэкСнда Broadway, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΎΡ‚Ρ€ΠΈΡΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ GTK Π² ΠΎΠΊΠ½Π΅ web-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. Основной процСсс Cambalache прСдоставляСтся обвязку с WebKit WebView, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Broadway транслируСтся Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠ· процСсса Merengue, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ нСпосрСдствСнно занимаСтся отрисовкой интСрфСйса, создаваСмого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΌΠΎΠΆΠ΅Ρ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π±Π°Π·Π΅ GTK 3 ΠΈ GTK 4, Π² зависимости ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΉ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ вСрсии.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ Cambalache, Π½ΠΎΠ²Ρ‹ΠΉ инструмСнт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ GTK-интСрфСйсов

Cambalache Π½Π΅ зависит ΠΎΡ‚ GtkBuilder ΠΈ GObject, Π½ΠΎ прСдоставляСт модСль Π΄Π°Π½Π½Ρ‹Ρ…, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ систСмС Ρ‚ΠΈΠΏΠΎΠ² GObject. МодСль Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΎΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… интСрфСйсов, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, свойства ΠΈ сигналы GtkBuilder, прСдоставляСт стСк ΠΎΡ‚ΠΊΠ°Ρ‚Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ (Undo / Redo) ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ сТатия история ΠΊΠΎΠΌΠ°Π½Π΄. Для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· gir-Ρ„Π°ΠΉΠ»ΠΎΠ² прСдоставляСтся ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° cambalache-db, Π° для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ классов GObject ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ† ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… — ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° db-codegen.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ Cambalache, Π½ΠΎΠ²Ρ‹ΠΉ инструмСнт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ GTK-интСрфСйсов


Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ