CSE 333 – Section 4 HW3, MVC, GTK+.

Slides:



Advertisements
Similar presentations
Introduction To The Course Network Architecture Hervey Allen Chris Evans Phil Regnauld September 3 - 4, 2009 Santiago, Chile.
Advertisements

Software environment Sander Stuijk January 18th, 2006.
Interpret Application Specifications
1 SEEM3460 Tutorial Access to Unix Workstations in SE.
Course Instructor: Aisha Azeem
Installing and running COMSOL on a Windows HPCS2008(R2) cluster
Telnet/SSH: Connecting to Hosts Internet Technology1.
Quoridor Classic Game Manager Kevin Dickerson April 2004.
Squiggle Lan Messenger.
VNC Greg Fankhanel Jessica Nunn Jennifer Romero. What is it? Stands for Virtual Network Computing It is remote control software which allows you to view.
Introduction to Matlab & Data Analysis
Drexel University Software Engineering Research Group 1 Eclipse for SE101.
How computer’s are linked together.
CPSC 233 Run graphical Java programs remotely on Mac and Windows.
An application architecture specifies the technologies to be used to implement one or more (and possibly all) information systems in terms of DATA, PROCESS,
Model View Controller (MVC) Bigger than a Pattern: It’s an Architecture Rick Mercer with help from many others 1.
X-WindowsP.K.K.Thambi The X Window System Module 5.
Using the remote access option on the lab computers Fall 2005.
Protocols COM211 Communications and Networks CDA College Olga Pelekanou
Using the Weizmann Cluster Nov Overview Weizmann Cluster Connection Basics Getting a Desktop View Working on cluster machines GPU For many more.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
CACI Proprietary Information | Date 1 PD² SR13 Client Upgrade Name: Semarria Rosemond Title: Systems Analyst, Lead Date: December 8, 2011.
– Protocols 21 – Protocols 21. – Protocols 21 Now we’ll move on to more technical aspects of This means protocols Remember.
CHAPTER 7 Operating System Copyright © Cengage Learning. All rights reserved.
Network and Server Basics. Learning Objectives After viewing this presentation, you will be able to: Understand the benefits of a client/server network.
Pasewark & Pasewark 1 Windows Vista Lesson 1 Windows Vista Basics Microsoft Office 2007: Introductory.
Programming Paradigms, Software Architectural Patterns, and MVC CS 378 – Mobile Computing for iOS Dr. William C. Bulko.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
X Window System
Chapter 1: Introduction to Computers and Programming
J2EE Platform Overview (Application Architecture)
RASPBERRY PI WORKSHOP.
TurningPoint ResponseWare
Configuring ALSMS Remote Navigation
Module 8: Networking Services
Topics Graphical User Interfaces Using the tkinter Module
Introduction to Visual Basic 2008 Programming
Port Forwarding and Shell Login Essentials
Play Framework: Introduction
How to Fi
Chapter 2: System Structures
Create Virtual Directory Windows 8 - IIS 8.5
Event Driven Programming Dick Steflik
XWN740 X-Windows Configuring and Using Remote Access
Bomgar Remote support software
Lecture 4 : Windows 7 By MSc. Manar Joundy Hazar 2017
Introduction to Computers
SharePoint Cloud hosted Apps
Ch > 28.4.
How to Fix Secure Connection Error in WordPress?.
Intuit has launched QuickBooks File Doctor tool (QBFD) in QuickBooks File Doctor is a tool that has been designed to recover the damaged company.
Database Driven Websites
Telnet/SSH Connecting to Hosts Internet Technology.
slides borrowed and adapted from Alex Mariakis and CSE 390a
Module 1: Getting Started with Windows 95
Microsoft Windows 2000 Professional
Social Media And Global Computing Introduction to Visual Studio
MicroEconomix 1500 RSLogix 500 LAB#1
Optimizing Efficiency + Funding
Informatics 43 – May 26, 2016.
Understanding the Visual IDE
Windows xp PART 1 DR.WAFAA SHRIEF.
X Windows.
Web Programming Essentials:
GTK + Programming.
Information Technology Ms. Abeer Helwa
Chapter 5 Architectural Design.
February 16th, 2004 Class Meeting 5
ACM programming contest
How to install and manage exchange server 2010 OP Saklani.
Presentation transcript:

CSE 333 – Section 4 HW3, MVC, GTK+

HW3 online now. Start early! You must work in groups. Agenda: MVC model HW3 specifications GTK+

Model–view–controller (MVC) The model directly manages the data, logic, and rules of the application. A view can be any output representation of information, such as a chart or a diagram. The controller accepts input and converts it to commands for the model or view. Multiple views of the same information are possible, such as a bar chart for management and a tabular view for accountants. Illegal moves are prevented by the controller

MVC interactions A model stores data that is retrieved according to commands from the controller and displayed in the view. A view generates new output to the user based on changes in the model. A controller can send commands to the model to update the model's state. It can also change the view's presentation of the model

See HW3 https://courses.cs.washington.edu/courses/cse333/16au/assignments/hw3/hw3.html What you’ll be doing in HW3: a first version of the view component of Candy Crush. Make sure you can display a board, can provide some way for the user to select and swap adjacent candies, and can update the number of moves left field.

MVC version of Candy Crush Eventually you will be splitting the view/controller from the model, across the Internet.

GTK+ GTK+ is Installed on attu The X Window System (X11, or X) A windowing system for bitmap displays, common on UNIX-like computer operating systems Provides the basic framework for a GUI environment https://en.wikipedia.org/wiki/X_Window_System The X Window System (X11) is a windowing system for bitmap displays, common on UNIX-like computer operating systems.

For you to remotely use GTK+ and run X11 applications on MAC/Linux 1) SSH –X usr@attu.cs.washington.edu 2) X-Server X11 For you to remotely use GTK+ and run X11 applications on Windows, we need 2 additional pieces of software. 1) SSH Client Eg. PuTTY Eg. Xming X-Server Another option: Cygwin/X

Xming Download: https://sourceforge.net/projects/xming/ 1. Double click on the Xming shortcut on the desktop Note: If you have a firewall installed on your computer you will need to allow remote hosts access to the X-server 2. After a short while, you will see the X logo in the system tray. 3. Launch Putty and check ‘Enable X11 forwarding’ under SSH.

GTK+ Basic drawing model Hierarchical containers Reference counted (but mostly you don't see it) Event driven Gtk+ seems not interested in changing layouts/updating the view. Switching widgets could turn out to be error prone. One strategy: just redraw everything

GTK+ intro example Getting started https://developer.gnome.org/gtk3/stable/gtk-getting-started.html#id-1.2.3.5 See example-0.c pkg-config provides the necessary details for compiling and linking a program to a library pkg-config --cflags Man pkg-config [Demo]Compile using gcc gcc `pkg-config --cflags gtk+-3.0` -o example-0 example-0.c `pkg-config --libs gtk+-3.0`

GTK+ intro example See example-1.c

GTK+ intro example See example-2.c

Review of GTK+ features Basic drawing model Hierarchical containers Reference counted (but mostly you don't see it) Event driven Gtk+ seems not interested in changing layouts/updating the view. Switching widgets could turn out to be error prone ( explosions). One strategy: just redraw everything

Event driven While the program is running, GTK+ is receiving events. Typically input events caused by the user interacting with your program Could also be messages from the window manager or other applications Signals may be emitted on your widgets Connecting handlers for these signals => respond to user input

Hierarchical containers Example: https://developer.gnome.org/gtk3/stable/GtkGrid.html

Reference counted https://developer.gnome.org/gobject/stable/gobject-memory.html g_object_unref ()