WvdS VSCode UI Designer

UI Designer omogućuje vizualni PXAML razvoj u VS Code - WYSIWYG editor za Pascal-bazirana korisnička sučelja.

Funkcija i svrha

Designer nudi:

  • Vizualni editor - Drag-and-drop UI dizajn
  • PXAML sintaksa - WPF/XAML-kompatibilni markup za Pascal
  • Pregled uživo - Pregled u stvarnom vremenu tijekom uređivanja
  • Properties Panel - Vizualno uređivanje svojstava
  • Component Palette - Pregled dostupnih kontrola

Što je PXAML?

PXAML (Pascal XAML) je XML-bazirani markup format za korisnička sučelja, inspiriran WPF/XAML-om.

Primjer

<Window Title="Hello PXAML" Width="400" Height="300">
  <Grid>
    <Grid.RowDefinitions>
      <RowDefinition Height="Auto"/>
      <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
 
    <Label Grid.Row="0" Content="Dobrodošli!" FontSize="24"/>
 
    <StackPanel Grid.Row="1" Orientation="Vertical" Margin="10">
      <TextBox x:Name="txtInput" PlaceholderText="Unesite ime..."/>
      <Button Content="Pozdravi" Click="OnGreetClick"/>
    </StackPanel>
  </Grid>
</Window>

PXAML vs. LFM

Aspekt PXAML LFM (Lazarus)
Format XML Vlasnički (binarni ili tekstualni)
Čitljivost Visoka Srednja
Kontrola verzija Izvrsna (diff-prijateljska) Teška
Designer WvdS Designer Lazarus IDE
Ciljevi GUI, TUI, Web Samo GUI

Naredbe

Naredba Tipkovnička kratica Opis
WVDS Designer: New PXAML File - Stvara novu PXAML datoteku
WVDS Designer: Toggle Designer Preview - Prebacuje između pogleda koda i dizajna
WVDS Designer: Show Properties Panel - Prikazuje panel svojstava

Rad s designerom

Stvaranje PXAML datoteke

  1. Ctrl+Shift+PWVDS Designer: New PXAML File
  2. Unesite naziv
  3. Datoteka se stvara s osnovnim predloškom

Otvaranje pogleda dizajna

Kada otvorite .pxaml datoteku, Designer se automatski aktivira.

Editor prikazuje:

  • Područje dizajna - Vizualni prikaz UI-ja (lijevo)
  • Properties Panel - Svojstva odabranog elementa (desno)
  • Toolbox - Dostupne kontrole (lijevo dolje)

Pogled koda

Za uređivanje PXAML izvornog koda:

  1. Kliknite na „Source“ u alatnoj traci
  2. Ili: Desni klik → „View Source“

Dodavanje komponenti

Drag & Drop:

  1. Povucite kontrolu iz Toolboxa
  2. Ispustite je u području dizajna
  3. Pozicionirajte po želji

Putem koda:

  1. Prebacite se na pogled koda
  2. Ručno dodajte element
  3. Pregled se automatski ažurira

Uređivanje svojstava

  1. Odaberite element u designeru
  2. Properties Panel prikazuje sva dostupna svojstva
  3. Mijenjajte vrijednosti direktno u panelu
  4. Promjene se odmah prikazuju u pregledu

PXAML osnove

Namespaceovi

<Window xmlns="http://schemas.wvds.de/pxaml/2024"
        xmlns:x="http://schemas.wvds.de/pxaml/x/2024"
        xmlns:local="clr-namespace:MyApp">
</Window>
Namespace Korištenje
Standard (bez prefiksa) Osnovne kontrole (Button, TextBox, Grid, …)
x: Markup ekstenzije (x:Name, x:Key, …)
local: Vlastiti tipovi iz projekta

Layout kontejneri

Kontejner Opis
Grid Layout s recima i stupcima
StackPanel Slaže elemente horizontalno ili vertikalno
DockPanel Sidri elemente uz rubove
Canvas Apsolutno pozicioniranje
WrapPanel Raspored s prijelomom

Česte kontrole

Kontrola Opis
Button Gumb s Click događajem
TextBox Jednoredni unos teksta
Label Prikaz teksta
CheckBox Odabir Da/Ne
ComboBox Padajući odabir
ListBox Odabir s liste
Image Prikaz slike
Border Okvir i pozadina

Data Binding

<TextBox Text="{Binding Path=UserName, Mode=TwoWay}"/>
<Label Content="{Binding Path=WelcomeMessage}"/>

Event handleri

<Button Content="Spremi" Click="OnSaveClick"/>

Handler se implementira u code-behind unitu:

procedure TMainWindow.OnSaveClick(Sender: TObject);
begin
  // Logika spremanja
end;

Postavke

Designer koristi postavke UI Meta ekstenzije za IntelliSense i informacije o komponentama.

Multi-target renderiranje

PXAML se može renderirati za različite ciljeve:

Cilj Opis Renderer
GUI Nativno desktop sučelje LCL-bazirano
TUI Terminalno sučelje Tekstualno
Web Sučelje preglednika HTML/CSS

Odabir se vrši tijekom kompilacije, ne u designeru.

Rješavanje problema

Designer prikazuje praznu stranicu

Uzrok: PXAML sintaksna greška ili nedostaju komponente.

Rješenje:

  1. Prebacite se na pogled koda
  2. Provjerite PXAML sintaksu (XML validacija)
  3. Osigurajte da sve referencirane komponente postoje

Pregled se ne ažurira

Uzrok: Auto-refresh je deaktiviran ili je došlo do greške.

Rješenje:

  1. Spremite datoteku (Ctrl+S)
  2. Ručno izvršite WVDS: Refresh Preview
  3. Provjerite Output Channel za greške

Drag & Drop ne radi

Uzrok: Pogrešno područje ili nepodržani kontejner.

Rješenje:

  1. Osigurajte da ispuštate u području dizajna
  2. Provjerite dopušta li ciljni kontejner djecu
  3. Neki kontejneri (npr. Border) dopuštaju samo jedno dijete

Tehnički detalji

Svojstvo Vrijednost
Extension ID wvds.wvds-vscode-ui-designer
Aktivacija onCustomEditor:wvds.ui.designer.pxaml
Ovisnosti wvds-vscode-core
Min. VS Code 1.85.0
Format datoteke .pxaml

Vidi također

Zuletzt geändert: 29.01.2026. u 22:29