Advertisement
Guest User

Gtk

a guest
Feb 22nd, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.73 KB | None | 0 0
  1. #include "notatnik.h"
  2. #include <malloc.h>
  3.  
  4. Notatnik * Tworzenie_Notatnika(void)
  5. {
  6. Notatnik * N ;
  7. N = (Notatnik *) malloc(sizeof(Notatnik));
  8. if(N == NULL)
  9. {
  10.     //Jeśli nie udało się utworzyć okna to zwróć Null
  11.     return NULL ;
  12. }
  13. else
  14. {   //Udało się
  15.     N->Okno_Notatnik = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  16.     gtk_window_set_title(GTK_WINDOW(N->Okno_Notatnik) , "Notatnik") ;
  17.     gtk_window_set_position(GTK_WINDOW(N->Okno_Notatnik) , GTK_WIN_POS_CENTER);
  18.     N->Textf_Pole_Tekstowe = gtk_text_view_new();
  19.     N->Vbox_Kontener = gtk_vbox_new( FALSE , 0 ) ;
  20.     gtk_container_add(GTK_WINDOW(N->Okno_Notatnik) , N->Vbox_Kontener) ;
  21.     //Menu na górnym pasu
  22.     N->Pasek_Gorny = gtk_menu_bar_new();
  23.     N->Menu_Gorne = gtk_menu_new() ;
  24.     N->Menu_Plik = gtk_menu_item_new_with_mnemonic("_Plik") ;
  25.     N->Przycisk_Zamknij = gtk_menu_item_new_with_mnemonic("_Zamknij");
  26.     N->Przycisk_Otworz = gtk_menu_item_new_with_mnemonic("Otwórz") ;
  27.     N->Przycisk_Zapisz =  gtk_menu_item_new_with_mnemonic("_Zapisz") ;
  28.     gtk_menu_item_set_submenu(GTK_MENU_ITEM(N->Menu_Plik) , N->Menu_Gorne) ;
  29.     gtk_menu_shell_append(GTK_MENU_SHELL(N->Menu_Gorne) , N->Przycisk_Otworz );
  30.     gtk_menu_shell_append(GTK_MENU_SHELL(N->Menu_Gorne) , N->Przycisk_Zapisz );
  31.     gtk_menu_shell_append(GTK_MENU_SHELL(N->Menu_Gorne) , N->Przycisk_Zamknij );
  32.     //Układanie elementów w oknie
  33.     gtk_box_pack_start(GTK_BOX(N->Vbox_Kontener) , N->Pasek_Gorny , FALSE , FALSE , 0) ;
  34.     gtk_box_pack_start(GTK_BOX(N->Vbox_Kontener) , N->Textf_Pole_Tekstowe , FALSE , FALSE , 0) ;
  35.     //Przypisanie akcji do okna
  36.     g_signal_connect(G_OBJECT(N->Okno_Notatnik) , "destroy" , G_CALLBACK(gtk_main_quit) , NULL) ;
  37.     g_signal_connect(G_OBJECT(N->Okno_Notatnik) , "activated" , G_CALLBACK(gtk_main_quit) , NULL) ;
  38.     return N ;
  39. }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement