SlideShare a Scribd company logo
The Art of
Tizen UI Theme Technology
in Various Profiles
Daniel Juyung Seo
Samsung Electronics
2
Who Am I
● Daniel Juyung Seo
● Senior Engineer at Samsung Electronics
● juyung.seo@samsung.com
● a.k.a SeoZ
● Tizen Core UIFW EFL Developer
● Enlightenment/EFL Open Source Committer
3
What is this talk about?
● Making frameworks and applications scalable in UI perspective.
● Enlightenment Foundation Libraries
4
Audience Introductions
● What is your expertise?
● Application Development
● Platform Development
● Design
● Marketing
Introduction
6
Tizen – Mobile/Wearable
● 2.2.1 SDK
● Test Devices
● RD-PQ, RD-210
● 1.0.0 beta2 Wearable SDK
7
Tizen – Camera, Gear 2
● NX300, NX300M, and etc. ● Gear 2, Gear 2 Neo
8
Various Tizen Profiles
● Mobile, IVI, Wearable, TV, Camera, PC, …
● Scalability is important.
9
What is Scalability?
● Supporting different
● resolutions, screen sizes, devices, and profiles.
Tizen Core
UI Framework
11
Tizen Architecture
Applications
Web Framework
Core Framework
Kernel
Native Framework
Linux Kernel & Device Drivers
W3C/HTML5 Device API WRT Social/Content Locations Etc.
Web Applications Native Applications Core Applications
App FW Graphics & UI Multimedia Web Messaging Location
Security System Base Connectivity Telephony PIM
12
Tizen Application Development Model
● Web Applications : HTML5 + CSS + JavaScript + jQuery
● Native Applications : C++
● Core Applications : C or C++
● But wait, they have something in common
● The Core Framework!
Platforms  Areas Mobile Gear 2 NX300
Core O O O
Web O O X
Native O X X
13
Does anyone know about EFL?
● Many applications are written in EFL on NX300 and Gear 2.
● EFL not ELF
● EFL may not be an ELF... but it's as pretty as one. :)
NO! YES!
14
What is EFL?
● Toolkit
● A set of libraries that provide a wide range of functionality
● http://www.enlightenment.org/
● Enlightenment Foundation Libraries
● Created to support E17 development
● Targeted at embedded since day 1
● Also effective on desktops
● Always focused on staying lean while providing fanciness
● The heart of the graphics component of Tizen
15
Core Framework and EFL
Applications
Web Framework
Core Framework
Kernel
Native Framework
Linux Kernel & Device Drivers
W3C/HTML5 Device API WRT Social/Content Locations Etc.
Web Applications Native Applications Applications
App FW Graphics & UI Multimedia Web Messaging Location
Security System Base Connectivity Telephony PIM
16
Why is EFL used on Tizen?
● Performance
● Small memory footprint
● GUI, Logic separation
● Themeable
● Animations
● H/W acceleration
● Various back-end engine
● Flexible
● Scalable
EFL(Edje + Elm)
18
EFL Block Diagram
Bindings
Elementary
EthumbEdbusEezeEioEfreet Emotion
Ecore
Embryo
Eet
Eina
Edje
Evas
19
Edje
● A complex graphical design and layout library.
● A graphical user interface without writing a line of C code.
● Creates visual layouts from compiled EDC script
● EDC is completely separate from application code
● Can be changed at or during runtime
● Layouts include
● Images, Colors
● Animations, Behaviors
● Supports relative and absolute positioning.
20
Edje
● Separation of layout and logic
● a graphical part : GUI Layout binary (edj)
● a functionality : Executable logic binary (C)
● Utility
● edje_cc : compile edc to edj
● edje_decc : de-compile edj to edc
< Compile Time >
.edc
.edj
.c
executable
edje_cc compile
< Run Time > running
runload
21
Edje
● EDC Script
collections { - list the groups.
group { - the list of parts and programs that compose a given edje object.
images { } – list each image file that will be used in the edc.
parts {
part { - the most basic design elements of the group.
(ie. RECT, TEXT, IMAGE, SWALLOW, TEXTBLOCK, GROUP, BOX, TABLE, EXTERNAL)
}
}
programs {
program { - manipulates the different interface elements and serve as a bridge between
the application and interface.
}
}
}
}
22
Elementary
● Widget Set
● 75 widgets
● Non-Containers - Bg, Button, Check, Entry, Label, List, Icon, Win, …
● Containers - Box, Conformant, Grid, Layout, Panes, Scroller, Table, …
● Fast, Finger friendly, Scalable, Themeable, …
23
Elementary
< Bubble >
< Button >
< Calendar >
< Check >
< Toggle >
< Clock >
< Ctxpopup >
< Radio > < Frame >
< DaySelector >
< Slider >
< FlipSelector >
< FileSelector > < Genlist >
< Gengrid >
< Spinner >
< Map > < Panes >
< Progressbar >
24
Elementary
● Elementary also uses edje for its layout
group { name: "elm/button/base/default";
images.image: "button_normal.png" COMP;
images.image: "button_clicked.png" COMP;
parts {
part { name: "base"; mouse_events: 0;
type: IMAGE
description { state: "default" 0.0;
image.normal: "button_normal.png";
rel1.relative: 0.0 0.0;
rel2.relative: 1.0 1.0;
image.border: 4 4 3 5;
image.middle: SOLID;
}
description { state: "clicked" 0.0;
inherit: "default" 0.0;
image.normal: "button_clicked.png";
image.border: 5 5 4 6;
}
...
programs {
program {
signal: "mouse,down,1"; source: "event";
action: STATE_SET "clicked" 0.0;
target: "base";
}
...
25
How to achieve Scalability?
● Relative Positioning (1)
Part A
rel1
(x=0.0 y=0.0)
rel2
(x=1.0 y=0.3)
Part B
rel1
(x=0.0 y=0.3)
rel2
(x=1.0 y=1.0)
26
How to achieve Scalability?
● Relative Positioning (2)
Bigger
Screen
Size
(y=0.1)
(y=0.9)
Fix
Header
27
How to achieve Scalability?
● Scale Factor
Higher Resolution + Scale Up
Higher Resolution
28
How to achieve Scalability?
● Border
< Original Background Image >
< Expand With Border >
< Expand Without Border >
● Finger Size
29
There is more!
● Elementary Configuration
● You can change the configuration based on
your own needs.
● Configurations
● Scale, finger size, engine, scroll, focus, profile, …
● Profile: a set of the configurations
● default, standard, mobile, tv, wearable, …
Demo
31
Demo
● Elementary Test
● Terminology
32
EFL Tools for a better Scalability
● Enventor
● Eflete
● Elm theme viewer
33
EFL Applications on Tizen SDK
● Install Platform SDK ● EFL Application Template
34
Summary
● Tizen supports various profiles over a lot of device categories.
● EFL makes you write scalable GUI applications over various
profiles with a good performance and small memory foot prints.
● It's open. You can start it now.
Questions?
The Art of Tizen UI Theme Technology in Various Profiles

More Related Content

What's hot

Flutter talkshow
Flutter talkshowFlutter talkshow
Flutter talkshow
Nhan Cao
 
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGESCROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
MapuSoft
 
Cloudy with a Dash of Universal Apps
Cloudy with a Dash of Universal AppsCloudy with a Dash of Universal Apps
Cloudy with a Dash of Universal AppsShahed Chowdhuri
 
Native mobile application development with Flutter (Dart)
Native mobile application development with Flutter (Dart)Native mobile application development with Flutter (Dart)
Native mobile application development with Flutter (Dart)
Randal Schwartz
 
Flutter for web
Flutter for webFlutter for web
Flutter for web
rihannakedy
 
Responsive Testing the Promet Way
Responsive Testing the Promet WayResponsive Testing the Promet Way
Responsive Testing the Promet Way
Promet Source
 
Windows Universal Apps
Windows Universal AppsWindows Universal Apps
Windows Universal Apps
Antonio Pelleriti
 
Getting started with mono game on visual studio 2019
Getting started with mono game on visual studio 2019Getting started with mono game on visual studio 2019
Getting started with mono game on visual studio 2019
Simon Jackson
 
VLC
VLCVLC
Mobile Controls for IBM Lotus Domino XPages on OpenNTF
Mobile Controls for IBM Lotus Domino XPages on OpenNTFMobile Controls for IBM Lotus Domino XPages on OpenNTF
Mobile Controls for IBM Lotus Domino XPages on OpenNTF
Niklas Heidloff
 
What is Flutter
What is FlutterWhat is Flutter
What is Flutter
Malan Amarasinghe
 
FIREFOX OS
FIREFOX OSFIREFOX OS
FIREFOX OS
Tousif Baddemalic
 
Flutter UI Framework
Flutter UI FrameworkFlutter UI Framework
Flutter UI Framework
Yuliia Makarenko
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with Flutter
Awok
 
Why choose flutter 2 over flutter 1
Why choose flutter 2 over flutter 1 Why choose flutter 2 over flutter 1
Why choose flutter 2 over flutter 1
Concetto Labs
 
Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101
Arif Amirani
 
Flutter app
Flutter appFlutter app
Flutter app
apptunixapp
 
Firefox os ppt
Firefox os pptFirefox os ppt
Firefox os ppt
Sourav Halder
 
Flutter
FlutterFlutter
Introduction to flutter
Introduction to flutterIntroduction to flutter
Introduction to flutter
龍一郎 北野
 

What's hot (20)

Flutter talkshow
Flutter talkshowFlutter talkshow
Flutter talkshow
 
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGESCROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
 
Cloudy with a Dash of Universal Apps
Cloudy with a Dash of Universal AppsCloudy with a Dash of Universal Apps
Cloudy with a Dash of Universal Apps
 
Native mobile application development with Flutter (Dart)
Native mobile application development with Flutter (Dart)Native mobile application development with Flutter (Dart)
Native mobile application development with Flutter (Dart)
 
Flutter for web
Flutter for webFlutter for web
Flutter for web
 
Responsive Testing the Promet Way
Responsive Testing the Promet WayResponsive Testing the Promet Way
Responsive Testing the Promet Way
 
Windows Universal Apps
Windows Universal AppsWindows Universal Apps
Windows Universal Apps
 
Getting started with mono game on visual studio 2019
Getting started with mono game on visual studio 2019Getting started with mono game on visual studio 2019
Getting started with mono game on visual studio 2019
 
VLC
VLCVLC
VLC
 
Mobile Controls for IBM Lotus Domino XPages on OpenNTF
Mobile Controls for IBM Lotus Domino XPages on OpenNTFMobile Controls for IBM Lotus Domino XPages on OpenNTF
Mobile Controls for IBM Lotus Domino XPages on OpenNTF
 
What is Flutter
What is FlutterWhat is Flutter
What is Flutter
 
FIREFOX OS
FIREFOX OSFIREFOX OS
FIREFOX OS
 
Flutter UI Framework
Flutter UI FrameworkFlutter UI Framework
Flutter UI Framework
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with Flutter
 
Why choose flutter 2 over flutter 1
Why choose flutter 2 over flutter 1 Why choose flutter 2 over flutter 1
Why choose flutter 2 over flutter 1
 
Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101
 
Flutter app
Flutter appFlutter app
Flutter app
 
Firefox os ppt
Firefox os pptFirefox os ppt
Firefox os ppt
 
Flutter
FlutterFlutter
Flutter
 
Introduction to flutter
Introduction to flutterIntroduction to flutter
Introduction to flutter
 

Similar to The Art of Tizen UI Theme Technology in Various Profiles

The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
Daniel Juyung Seo
 
Mobile app development using Android SDK
Mobile app development using Android SDKMobile app development using Android SDK
Mobile app development using Android SDK
Josh Clemm
 
Unit 2
Unit 2Unit 2
Unique but fast make your tizen gui application brilliant
Unique but fast make your tizen gui application brilliantUnique but fast make your tizen gui application brilliant
Unique but fast make your tizen gui application brilliant
Hermet Park
 
East Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
East Coast DevCon 2014: The Slate UI Framework - Architecture & ToolsEast Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
East Coast DevCon 2014: The Slate UI Framework - Architecture & ToolsGerke Max Preussner
 
Introduction to Android Development.pptx
Introduction to Android Development.pptxIntroduction to Android Development.pptx
Introduction to Android Development.pptx
asmeerana605
 
West Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
West Coast DevCon 2014: The Slate UI Framework (Part 1) - IntroductionWest Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
West Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
Gerke Max Preussner
 
Android Jump Start
Android Jump StartAndroid Jump Start
Android Jump StartConFoo
 
.NET Everywhere, Building Applications on the Tizen Platform
.NET Everywhere, Building Applications on the Tizen Platform.NET Everywhere, Building Applications on the Tizen Platform
.NET Everywhere, Building Applications on the Tizen Platform
Jason Robert
 
Tizen Operating System For Mobiles
Tizen Operating System For MobilesTizen Operating System For Mobiles
Tizen Operating System For Mobiles
Saurav Mohan V
 
Build beautiful native apps in record time with flutter
Build beautiful native apps in record time with flutterBuild beautiful native apps in record time with flutter
Build beautiful native apps in record time with flutter
RobertLe30
 
Introdução ao Tizen
Introdução ao TizenIntrodução ao Tizen
Introdução ao Tizen
Eduardo Santana
 
Hardware Detection Tool
Hardware Detection ToolHardware Detection Tool
Hardware Detection Tool
Anne Nicolas
 
Programming for non tech entrepreneurs
Programming for non tech entrepreneursProgramming for non tech entrepreneurs
Programming for non tech entrepreneursRodrigo Gil
 
Climberreport
ClimberreportClimberreport
Climberreport
LuckyTolani1
 
Android programming Assignment Help
Android programming Assignment HelpAndroid programming Assignment Help
Android programming Assignment Help
smithjonny9876
 
Creating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidCreating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for Android
Motorola Mobility - MOTODEV
 
Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Samsung Open Source Group
 
iphone application development
iphone application developmentiphone application development
iphone application development
arpitnot4u
 

Similar to The Art of Tizen UI Theme Technology in Various Profiles (20)

The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
 
Mobile app development using Android SDK
Mobile app development using Android SDKMobile app development using Android SDK
Mobile app development using Android SDK
 
Unit 2
Unit 2Unit 2
Unit 2
 
Unique but fast make your tizen gui application brilliant
Unique but fast make your tizen gui application brilliantUnique but fast make your tizen gui application brilliant
Unique but fast make your tizen gui application brilliant
 
East Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
East Coast DevCon 2014: The Slate UI Framework - Architecture & ToolsEast Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
East Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
 
Introduction to Android Development.pptx
Introduction to Android Development.pptxIntroduction to Android Development.pptx
Introduction to Android Development.pptx
 
West Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
West Coast DevCon 2014: The Slate UI Framework (Part 1) - IntroductionWest Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
West Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
 
Android Jump Start
Android Jump StartAndroid Jump Start
Android Jump Start
 
.NET Everywhere, Building Applications on the Tizen Platform
.NET Everywhere, Building Applications on the Tizen Platform.NET Everywhere, Building Applications on the Tizen Platform
.NET Everywhere, Building Applications on the Tizen Platform
 
Tizen Operating System For Mobiles
Tizen Operating System For MobilesTizen Operating System For Mobiles
Tizen Operating System For Mobiles
 
Build beautiful native apps in record time with flutter
Build beautiful native apps in record time with flutterBuild beautiful native apps in record time with flutter
Build beautiful native apps in record time with flutter
 
Introdução ao Tizen
Introdução ao TizenIntrodução ao Tizen
Introdução ao Tizen
 
Hardware Detection Tool
Hardware Detection ToolHardware Detection Tool
Hardware Detection Tool
 
Programming for non tech entrepreneurs
Programming for non tech entrepreneursProgramming for non tech entrepreneurs
Programming for non tech entrepreneurs
 
Climberreport
ClimberreportClimberreport
Climberreport
 
Android programming Assignment Help
Android programming Assignment HelpAndroid programming Assignment Help
Android programming Assignment Help
 
Creating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidCreating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for Android
 
Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)
 
iphone application development
iphone application developmentiphone application development
iphone application development
 
CG mini project
CG mini projectCG mini project
CG mini project
 

More from Daniel Juyung Seo

오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰
Daniel Juyung Seo
 
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 [위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
Daniel Juyung Seo
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
Daniel Juyung Seo
 
[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력
Daniel Juyung Seo
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
Daniel Juyung Seo
 
[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries
Daniel Juyung Seo
 
[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어
Daniel Juyung Seo
 
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
Daniel Juyung Seo
 
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
Daniel Juyung Seo
 
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
Daniel Juyung Seo
 
Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)
Daniel Juyung Seo
 
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
Daniel Juyung Seo
 
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Daniel Juyung Seo
 
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
Daniel Juyung Seo
 
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
Daniel Juyung Seo
 
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Daniel Juyung Seo
 
오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼
Daniel Juyung Seo
 
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Daniel Juyung Seo
 
EFL 오픈소스 활용 사례 2014
EFL 오픈소스 활용 사례 2014EFL 오픈소스 활용 사례 2014
EFL 오픈소스 활용 사례 2014
Daniel Juyung Seo
 
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Daniel Juyung Seo
 

More from Daniel Juyung Seo (20)

오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰
 
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 [위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
 
[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
 
[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries
 
[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어
 
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
 
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
 
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
 
Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)
 
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
 
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
 
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
 
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
 
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
 
오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼
 
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
 
EFL 오픈소스 활용 사례 2014
EFL 오픈소스 활용 사례 2014EFL 오픈소스 활용 사례 2014
EFL 오픈소스 활용 사례 2014
 
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
 

Recently uploaded

OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
Tendenci - The Open Source AMS (Association Management Software)
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
Srikant77
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
kalichargn70th171
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Anthony Dahanne
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 

Recently uploaded (20)

OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 

The Art of Tizen UI Theme Technology in Various Profiles

  • 1. The Art of Tizen UI Theme Technology in Various Profiles Daniel Juyung Seo Samsung Electronics
  • 2. 2 Who Am I ● Daniel Juyung Seo ● Senior Engineer at Samsung Electronics ● juyung.seo@samsung.com ● a.k.a SeoZ ● Tizen Core UIFW EFL Developer ● Enlightenment/EFL Open Source Committer
  • 3. 3 What is this talk about? ● Making frameworks and applications scalable in UI perspective. ● Enlightenment Foundation Libraries
  • 4. 4 Audience Introductions ● What is your expertise? ● Application Development ● Platform Development ● Design ● Marketing
  • 6. 6 Tizen – Mobile/Wearable ● 2.2.1 SDK ● Test Devices ● RD-PQ, RD-210 ● 1.0.0 beta2 Wearable SDK
  • 7. 7 Tizen – Camera, Gear 2 ● NX300, NX300M, and etc. ● Gear 2, Gear 2 Neo
  • 8. 8 Various Tizen Profiles ● Mobile, IVI, Wearable, TV, Camera, PC, … ● Scalability is important.
  • 9. 9 What is Scalability? ● Supporting different ● resolutions, screen sizes, devices, and profiles.
  • 11. 11 Tizen Architecture Applications Web Framework Core Framework Kernel Native Framework Linux Kernel & Device Drivers W3C/HTML5 Device API WRT Social/Content Locations Etc. Web Applications Native Applications Core Applications App FW Graphics & UI Multimedia Web Messaging Location Security System Base Connectivity Telephony PIM
  • 12. 12 Tizen Application Development Model ● Web Applications : HTML5 + CSS + JavaScript + jQuery ● Native Applications : C++ ● Core Applications : C or C++ ● But wait, they have something in common ● The Core Framework! Platforms Areas Mobile Gear 2 NX300 Core O O O Web O O X Native O X X
  • 13. 13 Does anyone know about EFL? ● Many applications are written in EFL on NX300 and Gear 2. ● EFL not ELF ● EFL may not be an ELF... but it's as pretty as one. :) NO! YES!
  • 14. 14 What is EFL? ● Toolkit ● A set of libraries that provide a wide range of functionality ● http://www.enlightenment.org/ ● Enlightenment Foundation Libraries ● Created to support E17 development ● Targeted at embedded since day 1 ● Also effective on desktops ● Always focused on staying lean while providing fanciness ● The heart of the graphics component of Tizen
  • 15. 15 Core Framework and EFL Applications Web Framework Core Framework Kernel Native Framework Linux Kernel & Device Drivers W3C/HTML5 Device API WRT Social/Content Locations Etc. Web Applications Native Applications Applications App FW Graphics & UI Multimedia Web Messaging Location Security System Base Connectivity Telephony PIM
  • 16. 16 Why is EFL used on Tizen? ● Performance ● Small memory footprint ● GUI, Logic separation ● Themeable ● Animations ● H/W acceleration ● Various back-end engine ● Flexible ● Scalable
  • 18. 18 EFL Block Diagram Bindings Elementary EthumbEdbusEezeEioEfreet Emotion Ecore Embryo Eet Eina Edje Evas
  • 19. 19 Edje ● A complex graphical design and layout library. ● A graphical user interface without writing a line of C code. ● Creates visual layouts from compiled EDC script ● EDC is completely separate from application code ● Can be changed at or during runtime ● Layouts include ● Images, Colors ● Animations, Behaviors ● Supports relative and absolute positioning.
  • 20. 20 Edje ● Separation of layout and logic ● a graphical part : GUI Layout binary (edj) ● a functionality : Executable logic binary (C) ● Utility ● edje_cc : compile edc to edj ● edje_decc : de-compile edj to edc < Compile Time > .edc .edj .c executable edje_cc compile < Run Time > running runload
  • 21. 21 Edje ● EDC Script collections { - list the groups. group { - the list of parts and programs that compose a given edje object. images { } – list each image file that will be used in the edc. parts { part { - the most basic design elements of the group. (ie. RECT, TEXT, IMAGE, SWALLOW, TEXTBLOCK, GROUP, BOX, TABLE, EXTERNAL) } } programs { program { - manipulates the different interface elements and serve as a bridge between the application and interface. } } } }
  • 22. 22 Elementary ● Widget Set ● 75 widgets ● Non-Containers - Bg, Button, Check, Entry, Label, List, Icon, Win, … ● Containers - Box, Conformant, Grid, Layout, Panes, Scroller, Table, … ● Fast, Finger friendly, Scalable, Themeable, …
  • 23. 23 Elementary < Bubble > < Button > < Calendar > < Check > < Toggle > < Clock > < Ctxpopup > < Radio > < Frame > < DaySelector > < Slider > < FlipSelector > < FileSelector > < Genlist > < Gengrid > < Spinner > < Map > < Panes > < Progressbar >
  • 24. 24 Elementary ● Elementary also uses edje for its layout group { name: "elm/button/base/default"; images.image: "button_normal.png" COMP; images.image: "button_clicked.png" COMP; parts { part { name: "base"; mouse_events: 0; type: IMAGE description { state: "default" 0.0; image.normal: "button_normal.png"; rel1.relative: 0.0 0.0; rel2.relative: 1.0 1.0; image.border: 4 4 3 5; image.middle: SOLID; } description { state: "clicked" 0.0; inherit: "default" 0.0; image.normal: "button_clicked.png"; image.border: 5 5 4 6; } ... programs { program { signal: "mouse,down,1"; source: "event"; action: STATE_SET "clicked" 0.0; target: "base"; } ...
  • 25. 25 How to achieve Scalability? ● Relative Positioning (1) Part A rel1 (x=0.0 y=0.0) rel2 (x=1.0 y=0.3) Part B rel1 (x=0.0 y=0.3) rel2 (x=1.0 y=1.0)
  • 26. 26 How to achieve Scalability? ● Relative Positioning (2) Bigger Screen Size (y=0.1) (y=0.9) Fix Header
  • 27. 27 How to achieve Scalability? ● Scale Factor Higher Resolution + Scale Up Higher Resolution
  • 28. 28 How to achieve Scalability? ● Border < Original Background Image > < Expand With Border > < Expand Without Border > ● Finger Size
  • 29. 29 There is more! ● Elementary Configuration ● You can change the configuration based on your own needs. ● Configurations ● Scale, finger size, engine, scroll, focus, profile, … ● Profile: a set of the configurations ● default, standard, mobile, tv, wearable, …
  • 30. Demo
  • 32. 32 EFL Tools for a better Scalability ● Enventor ● Eflete ● Elm theme viewer
  • 33. 33 EFL Applications on Tizen SDK ● Install Platform SDK ● EFL Application Template
  • 34. 34 Summary ● Tizen supports various profiles over a lot of device categories. ● EFL makes you write scalable GUI applications over various profiles with a good performance and small memory foot prints. ● It's open. You can start it now.