

The form designer, it has to be written manually): If we assume MainWindow.pbf has two buttons ('OK' and 'Cancel') and DateWindow.pbf has oneĬalendar gadget, here is how the main file would look like (the main file is not handled by Main.pb The main PureBasic file, which will includes the two forms file, and defines the events The directory structure could look like that: The event procedures needs to be defined somewhere in the source code.Įvery form file should be named with the '.pbf' extension, so it will be correctly opened by the IDE.įorm files can also be added to a project.įor example, to build a program which handle two windows, we will have to create two form files and An event procedure can be assigned to every gadget, and will be handledĪutomatically in the event loop. It can not have two form in the file (in other words, it should never have two The form designer has been created to allow modular forms and easy maintenance. Using the form designer in real world projects WhenĪ gadget is selected on the form, its properties are display on this panel and can be modified here. Select one, and draw directly on the form the size needed. The image and its path can be changed easily here.
#Purebasic hide window code#
So if a change is made directly in code view, it will be reflected visually.ĭisplay all the images currently used by the form. It will bring automatically the form panel tool on top.Ĭhange the form view, switch from design mode to code view.
#Purebasic hide window manual#
The code parser isn't the same used by theĬompiler and therefore doesn't support all features, so when doing manual changes toĬreate a new empty form. Modified without even open the form designer. A form file is a regular PureBasic file, so it can be easily It supports almost all native PureBasic gadgets,
#Purebasic hide window windows#
Gtk_window_set_titlebar(*Window.GtkWindow, *TitleBar.The PureBasic IDE has a very powerful integrated form designer, which allows to designĮasily windows and arrange gadgets on them. Gtk_header_bar_set_title(*HeaderBar, Title.P-UTF8) Gtk_header_bar_set_has_subtitle(*HeaderBar, Setting.L) Gtk_style_context_add_provider_for_screen(*Screen.GdkScreen, *StyleProvider, Gtk_css_provider_load_from_data (*CSSProvider, *CSSData, CSSDataLength.I, #GTK_STYLE_PROVIDER_PRIORITY_APPLICATION = 600 ResizeWindow(0, WindowX, WindowY, WindowWidth, WindowHeight) Gtk_header_bar_set_title(HeaderBar, HeaderBar) HeaderBar = #HeaderBarTitle, -1, #PB_UTF8)

#PB_Window_SystemMenu | #PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget)īuttonGadget(0, 58, 40, 200, 25, "Remove all titlebar buttons")ĪddKeyboardShortcut(0, #PB_Shortcut_Escape, 0) Gtk_window_set_titlebar(*Window.GtkWindow, *TitleBar.GtkWidget)ĭefine HeaderBarTitle.S = Space(StringByteLength(#HeaderBarTitle) + SizeOf(Integer)) Gtk_header_bar_set_title(*HeaderBar, *Title) #HeaderBarTitle = "Close window with key"
