Systemy operacyjne na platformach mobilnych 2 Programowanie aplikacji z graficznym interfejsem użytkownika w GTK+



Podobne dokumenty
Systemy operacyjne na platformach mobilnych 2 Platforma Maemo

Zaawansowane programowanie w języku C++ Programowanie obiektowe

Zaawansowane programowanie w języku C++ Zarządzanie pamięcią w C++

Zaawansowane programowanie w języku C++ Funkcje uogólnione - wzorce

Systemy operacyjne na platformach mobilnych 2 Podstawy obsługi powłoki Bash

Architektura komputerów Reprezentacja liczb. Kodowanie rozkazów.

Zaawansowane programowanie w języku C++ Klasy w C++

Architektura komputerów Wprowadzenie do algorytmów

Zaawansowane programowanie w języku C++ Biblioteka standardowa

Zaawansowane programowanie w języku C++ Przeciążanie operatorów

Zaawansowane programowanie w języku C++ Wyjątki

Studia podyplomowe realizowane w ramach zadania 5 Systemy mobilne i techniki multimedialne

Systemy operacyjne na platformach mobilnych 3 Wstęp do systemu Android

Zaawansowane programowanie w języku C++ Wstęp

Medical electronics part 9a Electroencephalography (EEG)

Układy reprogramowalne i SoC Implementacja w układach FPGA

Mikrosystemy Wprowadzenie. Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt.

dr inż. Małgorzata Langer Architektura komputerów

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

Efektywne tworzenie aplikacji webowych z wykorzystaniem AngularJS, HTML5 i JavaScript

Architektura komputerów Historia systemów liczących

Kompleksowe tworzenie aplikacji klasy Desktop z wykorzystaniem SWT i

Zaawansowany kurs języka Python

Podstawy programowania. Wprowadzenie

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Micha Strzelecki Metody przetwarzania i analizy obrazów biomedycznych (2)

Łukasz Januszkiewicz Technika antenowa

MAS dr. Inż. Mariusz Trzaska. Wykład 12. Tworzenie graficznych interfejsów użytkownika

Qt - podstawowe cechy

Król Łukasz Nr albumu:

Łukasz Januszkiewicz Technika antenowa

Nauczycielem wszystkiego jest praktyka Juliusz Cezar. Nauka to wiara w ignorancję ekspertów Richard Feynman

Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Windows.

Język programowania C C Programming Language. ogólnoakademicki

Układy reprogramowalne i SoC Język VHDL (część 4)

ZARZĄDZANIE SIECIAMI TELEKOMUNIKACYJNYMI

Michał Strzelecki Metody przetwarzania i analizy obrazów biomedycznych (3)

Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i

PRZYJĘTE ZASADY GRY...3 ZAŁOŻENIA PROJEKTU...4 CZYM JEST I DLACZEGO QT?...5 DIAGRAM KLAS...7 DIAGRAM GRY SINGLE PLAYER...8 DIAGRAM MULTIPLAYERA...

System wspomagania harmonogramowania przedsięwzięć budowlanych

Programowanie na poziomie sprzętu. Programowanie w Windows API

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

Projektowanie, tworzenie aplikacji mobilnych na platformie Android

Programowanie obiektowe Object programming. Elektrotechnika II stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

KARTA MODUŁU KSZTAŁCENIA

Aplikacje Internetowe

76.Struktura oprogramowania rozproszonego.

komunikator na platformę Android wspierający protokół GG

COMARCH IT AKADEMIA. Programista VBA w Microsoft Excel (microbootcamp)

Automatyzacja Testowania w WEB 2.0

Programowanie współbieżne i rozproszone

Struktury systemów operacyjnych

Narzędzia uruchomieniowe dla systemów Embedded firmy Total Phase

Język programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści

Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:

Swing Application Framework czyli tam i z powrotem. Copyright Piotr Kochański & Erudis,

Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.

Konspekt pracy inżynierskiej

Czym jest Ruby on Rails?

Systemy operacyjne na platformach mobilnych 2 Wstęp do systemu Linux

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Opisy efektów kształcenia dla modułu

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Monitorowanie Sieci nonblocking content packet filtering

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

Webowy generator wykresów wykorzystujący program gnuplot

Komputery przemysłowe i systemy wbudowane

Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04

WYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja. Nazwa przedmiotu: Język programowania C++

dr inż. Jarosław Forenc

Praca w środowisku Visual Studio 2008, Visual C

IdyllaOS. Prosty, alternatywny system operacyjny. Autor: Grzegorz Gliński. Kontakt:

MentorGraphics ModelSim

OBC01/TOPMOB Projektowanie w języku Objective-C

Architektura komputerów

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Zaawansowany kurs języka Python

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Aplikacje Internetowe

Autor: Bączkowski Karol Promotor: dr inż. Paweł FIGAT

Java jako język programowania

Dokument Detaliczny Projektu

DOS COMMAND.COM. Rys. 2. Główne moduły programowe systemu operacyjnego DOS. Interpreter poleceń. Rys. 3. Warstwowa struktura systemu DOS

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

GLKit. Wykład 10. Programowanie aplikacji mobilnych na urządzenia Apple (IOS i ObjectiveC) #import "Fraction.h" #import <stdio.h>

Implementacja aplikacji sieciowych z wykorzystaniem środowiska Qt

Instrukcja laboratoryjna cz.3

Dokumentacja aplikacji Szachy online

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

Obiektowy model dokumentu. Katedra Mikroelektroniki i Technik Informatycznych

Rok akademicki: 2014/2015 Kod: MIO s Punkty ECTS: 4. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Zaliczenie przedmiotu:

INFORMATYKA Pytania ogólne na egzamin dyplomowy

AgemaHR RAZEM DO CELU... AgemaHR

ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Pisząc okienkowy program w Matlabie wykorzystujemy gotowe obiekty graficzne, lub możemy tworzyć własne obiekty dziedzicząc już zdefiniowane.

Transkrypt:

Systemy operacyjne na platformach mobilnych 2 Programowanie aplikacji z graficznym interfejsem użytkownika w GTK+ Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń - zintegrowany rozwój Politechniki Łódzkiej - zarządzanie Uczelnią, nowoczesna oferta edukacyjna i wzmacniania zdolności do zatrudniania osób niepełnosprawnych Prezentacja dystrybuowana jest bezpłatnie Politechnika Projekt Łódzka, współfinansowany ul. Żeromskiego przez Unię 116, Europejską 90-924 Łódź, tel. (042) 631 28 83 w ramach Europejskiego www.kapitalludzki.p.lodz.pl Funduszu Społecznego

Biblioteki do tworzenia UI Wśród najpopularniejszych bibliotek do tworzenia graficznych interfejsów użytkownika wyróżniamy (ang. User Interface): Win32 API oraz MFC WxWindow QT GTK+ (GTKmm) TK FLTK AWT/SWING SWT 2

Biblioteka GTK+ Powstała na potrzeby projektu GIMP (The Gimp Toolkit) Zaprojektowana w sposób obiektowy lecz zakodowana w języku C W skład biblioteki GTK+ wchodzą: GLib GDK Pango ATK Biblioteka przenośna pozwalająca na pisanie interfejsów nie zależnych od systemu operacyjnego Istnieje wiele nakładek na GTK (tzw. bindings) pozwalających na jej wykorzystanie z poziomu innych niż C języków programowania 3

Cechy biblioteki GTK+ Obsługa kodowania UTF-8 Obsługa wygładzania czcionek (rendering) System wyświetlania i manipulacji tekstem (Pango) wspierający pisownię międzynarodową Obsługa wielu języków jednocześnie Metody wprowadzania niezależne od X Input Method System wspomagania dla osób niepełnosprawnych (ATK) Wsparcie dla wielowątkowości Możliwość używania różnych silników renderujących (np. cairo) Wsparcie w postaci graficznych kreatorów interfejsów (glade) 4

GTK+ GTK+ reference: http://library.gnome.org/devel/gtk/stable/ GTK+ tutorial: http://library.gnome.org/devel/gtk-tutorial/stable/ 5

Biblioteka GLib GLib jest to niskopoziomowa biblioteka dla języka C dostarczająca jednolite API dla typowych operacji (kontenery, zarządzanie pamięcią, timery). Biblioteka GLib dostarcza następujące struktury danych: jedno- i dwukierunkowe listy tablice asocjacyjne drzewa binarne GLib reference: http://library.gnome.org/devel/glib/stable/ 6

Operacje wspierane przez GLib funkcje obsługujące kolejność bajtów definicje podstawowych typów i ich limitów standardowe makra obsługa konwersji typów przydatne definicje liczbowe (np. matematyczne) implementacja wielowątkowości GThread asynchroniczne kolejki implementacja obiektowości GObject obsługa dynamicznie ładowanych modułów 7

Operacje wspierane przez GLib obsługa gniazd i plików (ogólnie operacji I/O) system logowania błędów i ostrzeżeń alokacja pamięci obsługa Unicode i UTF-8 uruchamianie procesów potomnych przy użyciu fork() wbudowany generator liczb losowych kodowanie i dekodowanie danych w formacie Base64 obsługa wyrażeń regularnych 8

GObject GObject jest to system obiektowy dla języka C Wchodzi w skład biblioteki GLib i wraz z nią jest dystrybuowany, pomimo że kompilowany jest do oddzielnej biblioteki Głównym zadaniem GObject jest umożliwienie łatwego bindingu biblioteki GTK+ do innych niż C języków programowania Opiera się na dynamicznym systemie typów nazwanym Gtype Udostępnia wbudowany system komunikacji oparty na signals i closures (callback) GObject reference: http://library.gnome.org/devel/gobject/stable/index.html 9

Biblioteka GDK GDK (GTK Drawing Kit) pośredniczy pomiędzy oknami i widgetami GTK+, a systemem wyświetlania kontrolek graficznych (np. X-Window) GDK definiuje proste operacje graficzne: rysowanie figur, fontów i bitmap GDK jest odpowiedzialne przechwytywanie zdarzeń związanych z oknami 10

Systemy operacyjne na platformach mobilnych 2 Programowanie aplikacji z graficznym interfejsem użytkownika w GTK+ Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń - zintegrowany rozwój Politechniki Łódzkiej - zarządzanie Uczelnią, nowoczesna oferta edukacyjna i wzmacniania zdolności do zatrudniania osób niepełnosprawnych Prezentacja dystrybuowana jest bezpłatnie Politechnika Łódzka, ul. Żeromskiego 116, 90-924 Łódź, tel. (042) 631 28 83 w ramach Europejskiego www.kapitalludzki.p.lodz.pl Funduszu Społecznego