EuroPython 2006, CERN, Geneva David Boddie and Torsten Marek * Qt and Trolltech are registered trademarks of Trolltech ASA
|
|
|
- Mercy Wheeler
- 10 years ago
- Views:
Transcription
1 Introducing PyQt4* for GUI Application Development David Boddie Torsten Marek EuroPython 2006, CERN, Geneva 2006 David Boddie and Torsten Marek * Qt and Trolltech are registered trademarks of Trolltech ASA
2 What is Qt? Qt is a cross-platform C++ framework for the development of GUI applications. Developed by Trolltech in Norway and Germany Supported on Windows, Mac OS X, Linux and other Unix platforms Available under the GNU General Public License on all supported platforms Also available under a Commercial License for closed source applications Not just a widget toolkit other features for application developers
3 Features Widgets, layouts, styles (native appearance on each platform) Standard GUI features for applications (menus, toolbars, dock windows) Easy communication between application components (signals and slots) Unified painting system (with transparency, anti-aliasing and SVG support) Rich text processing, display and printing Database support (SQL) and model/view features Input/output and networking Other features Container classes Threading Resources XML processing
4 PyQt Qt 3: PyQt is a set of bindings for Qt 3 by Phil Thompson at Riverbank Computing. Uses SIP to generate bindings Comprehensive API coverage Dual licensed under the GPL and Commercial licenses Community mailing list with around 500 members PyQt3 1998: First release 2000: Windows release 2002: Mac OS X and Zaurus releases PyQt4 2006: PyQt4 release Wiki at
5 PyKDE KDE 3: PyKDE is a set of bindings for KDE 3 by Jim Bublitz that supports these mainstream KDE libraries: DCOP interprocess communication kdecore application and configuration kdeui widgets, dialogs, user interface elements khtml HTML display (used by Konqueror and Safari) kio network transparent communications kparts high-level reusable GUI components kdeprint printing, dialogs, print jobs and management Others (kfile, kmdi, kspell, kdesu, kutils)
6 Library Structure Qt 3 Qt 4 QtOpenGL QtGui Main Qt classes plus Icon view Workspace Table QtCore QtXml QtSvg Canvas Network SQL OpenGL XML QtNetwork QtSql ActiveQt QMotif Netscape Plugin Qt3Support QtAssistant QtDesigner QtUiTools QtTest QAxContainer QAxServer
7 QtCore Object and meta-object system: QObject, QMetaObject Basic value types: QByteArray, QString, QDate, QTime, QPoint[F], QSize[F] File system abstraction: QFile, QDir, QIODevice, QTextStream, QDataStream Basic application support: QCoreApplication encapsulates an application QEvent communication (see also signals and slots) QTimer signal-based timed event handling
8 QtGui Widgets: QCheckBox, QComboBox, QDateTimeEdit, QLineEdit, QPushButton, QRadioButton, QSlider, QSpinBox, etc. Basic value types: QColor, QFont, QBrush, QPen Painting system and devices: QPainter, QPaintDevice, QPrinter, QImage, QPixmap, QWidget Basic application support: QApplication encapsulates a GUI application Rich text: QTextEdit, QTextDocument, QTextCursor
9 QtGui Display widgets Input widgets Text entry widgets Buttons Scrolling list and tree widgets Tab widgets QGroupBox QLabel QDateEdit QTimeEdit QComboBox QListWidget QGroupBox QRadioButton QCheckBox QTabWidget QLabel QLineEdit QTextEdit
10 QtGui Range controls Tables Scrolling views Database support Custom widgets QFrame QLabel QSpinBox QSlider QDial QTableWidget AnalogClock QSlider QLabel
11 Using Widgets Creating a top-level widget window = QWidget() window.resize(480, 360) window.show() Creates a widget Resizes and shows it Creating a child widget button = QPushButton("Press me", window) button.move(200, 200) button.show() Creates a button inside the window Positions and shows it Placing widgets in a layout okbutton = QPushButton("&OK") cancelbutton = QPushButton("&Cancel") layout = QVBoxLayout() layout.addwidget(okbutton) layout.addwidget(cancelbutton) window.setlayout(layout) Creates parent and child widgets Creates a layout to arrange widgets Adds the child widget to the layout
12 Using Layouts Layouts manage child widgets and are responsible for: Updating their sizes and positions Providing default and minimum sizes One One Two Two One Two Three Three Three Horizontal, vertical and grid layouts Four Five yesbutton = QPushButton("&Yes") nobutton = QPushButton("&No") layout = QHBoxLayout() layout.addstretch(1) layout.addwidget(yesbutton) layout.addwidget(nobutton) namelabel = QLabel("Name:") nameedit = QLineEdit() addresslabel = QLabel("Address:") addressedit = QTextEdit() layout = QGridLayout() layout.addwidget(namelabel, 0, 0) layout.addwidget(nameedit, 0, 1) layout.addwidget(addresslabel,0,0,qt.aligntop) layout.addwidget(addressedit, 0, 1)
13 Signals and Slots Signals and slots allow objects to communicate with each other via type-safe interfaces. QComboBox QTextEdit Sender and receiver do not need to know about each other Connections can be direct or queued Sender and receiver can be in different threads
14 Making connections Signals and Slots class MainWindow(QMainWindow): def init (self): QMainWindow. init (self) filemenu = self.menubar().addmenu(self.tr("&file")) exitaction = filemenu.addaction(self.tr("e&xit")) helpmenu = self.menubar().addmenu(self.tr("&help")) aboutaction = helpmenu.addaction(self.tr("&about This Example")) self.connect(exitaction, SIGNAL("triggered()"), qapp, SLOT("quit()")) self.connect(aboutaction, SIGNAL("triggered()"), self.showaboutbox) # Set up the rest of the window. def showaboutbox(self): QMessageBox.information(self, self.tr("about This Example"), self.tr("this example shows how signals and slots are used to\n" "communication between objects in Python and C++."))
15 Writing an Application Creating an application app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) Creates the application Creates and shows the main window (a QMainWindow subclass) Runs the event loop then exits Running an application in different styles myapplication -style plastique myapplication -style motif myapplication -style windows QApplication parses the command line arguments The -style option can be used to override the native style
16 Main windows usually have Main Window Classes Menus built using QMenu and populated with actions Toolbars built using QToolBar, these usually share actions with menus Dock windows provided by QDockWidget A status bar provided by QStatusBar A central widget containing the main GUI User actions are represented by the QAction class The action system synchronizes menus, toolbars, and keyboard shortcuts It also stores information about tooltips and interactive help
17 Actions To create an action, you can: Instantiate a QAction object directly Call addaction() on existing QMenu and QToolBar objects Then you can share it with other objects. Sharing actions self.saveaction = QAction(QIcon(":/images/save.png"), self.tr("&save..."), self) self.saveaction.setshortcut(self.tr("ctrl+s")) self.saveaction.setstatustip(self.tr("save the current form letter")) self.connect(self.saveact, QtCore.SIGNAL("triggered()"), self.save)... self.filemenu = self.menubar().addmenu(self.tr("&file")) self.filemenu.addaction(self.saveaction)... self.filetoolbar = self.addtoolbar(self.tr("file")) self.filetoolbar.addaction(self.saveact)
18 Multiple Document Interface Applications are designed with different user interfaces: Single Document Interface (SDI) applications use multiple main windows, each containing a suitable central widget Multiple Document Interface (MDI) applications use a QWorkspace as the central widget Multiple Document Interface workspace = QWorkspace() workspace.setwindowtitle("simple Workspace Example") for i in range(5): textedit = QTextEdit() textedit.setplaintext("pyqt4 "*100) textedit.setwindowtitle("document %i" % i) workspace.addwindow(textedit) workspace.cascade()
19 Item Views Item views are complex controls that handle collections of items, each representing a piece of data. QListView or QListWidget QTableView or QTableWidget QTreeView or QTreeWidget Qt 3's item views are populated with item objects Qt 4 has item-based view classes and a model/view framework
20 Item Views What's the difference between the item-based and model-based approaches? Item-based tree of items tree = QTreeWidget() tree.setcolumncount(2) tree.setheaderlabels(["name", "Address"]) for name, address in phonebook.items(): item = QTreeWidgetItem(tree) item.settext(0, name) item.settext(1, address) tree.show() Model-based version # Given an existing model... tree = QTreeView() tree.setmodel(model) tree.show() table = QTableView() table.setmodel(model) table.show() Items are easy to use You just create them and add them to parent widgets or items It all has to be done by you Models automatically populate views with items Views (of different kinds) can share models We left out the tricky part...
21 Models and Views Concepts Models hold data for views to display Views access data using indexes Delegates display individual items for views Roles describe the types of data # Reading index = model.index(row, column, parent) data = index.data(index, role) # Writing model.setdata(index, data, role) Models expose pieces of data as items in tables Items can expose tables of child items
22 Models and Views A simple model class ImageModel(QAbstractTableModel): def init (self, image, parent=none): QAbstractTableModel. init (self, parent) self.image = QImage(image) def rowcount(self, parent): return self.image.height() def columncount(self, parent): return self.image.width() def data(self, index, role): if not index.isvalid(): return QVariant() elif role!= QtCore.Qt.DisplayRole: return QVariant() return QVariant(qGray( self.image.pixel(index.column(), index.row())))
23 Models and Views With a suitable model, views can be used to display any kind of data: XML data can be displayed in a tree view There's already a Qt example of a DOM-based XML model Torsten decided to write an ElementTree model Torsten's ElementTree model Around 50 lines of code Read-only Copes with quite large files Fast, even compared to pure C++ models
24 Database Support Like Python, Qt 4 has classes for working with databases These are integrated with the model/view framework Accessing a database with a SQL table model db = QSqlDatabase.addDatabase("QSQLITE") db.setdatabasename(databasename) model = QSqlTableModel(self) model.settable("person") model.seteditstrategy(qsqltablemodel.onmanualsubmit) model.select() view1 = QTableView(self) view1.setmodel(model) view2 = QTableView(self) view2.setmodel(model)
25 Database Support Python has its own standard database API: Included with many Python database modules Many Python developers are familiar with it Torsten decided to write a model for that, too Accessing a database with a SQL table model
26 Scalable Vector Graphics (SVG) SVG support can be accessed in two ways: You can use QSvgWidget to load and display pictures in a widget You can use QSvgRenderer to load and render pictures to any paint device SVGs can also contain animations # Showing an SVG drawing: widget = QSvgWidget(parent) widget.load(filename) widget.show() # Rendering a drawing on an image: pixmap = QPixmap(200, 200) renderer = QSvgRenderer() painter = QPainter() painter.begin(pixmap) renderer.render(painter) painter.end()
27 OpenGL Integration Qt provides a QGLWidget (a QWidget subclass) to display OpenGL content: The OpenGL context is handled automatically Convenience functions to handle textures and colors class GLWidget(QGLWidget): def init (self, parent): QGLWidget. init (self, parent) def initializegl(self): # Set up display lists, OpenGL options. def paintgl(self): # Clear buffers, apply transformations, # paint. def resizegl(self): # Resize viewport, recalculate matrices.
28 Custom widgets Widgets can be combined to make composite widgets by subclassing an existing widget class. class AddressWidget(QWidget): def init (self, parent = None): QWidget. init (self, parent) namelabel = QLabel(self.tr("Name:")) nameedit = QLineEdit() addresslabel = QLabel(self.tr("Address:")) addressedit = QTextEdit() In the init method: Call the base class's init method Create child widgets Use layouts to make the contents resize nicely. layout = QGridLayout() layout.addwidget(namelabel, 0, 0) layout.addwidget(nameedit, 0, 1) layout.addwidget(addresslabel, 1, 0, Qt.AlignTop) layout.addwidget(addressedit, 1, 1) self.setlayout(layout) Lay out the child widgets
29 Custom widgets Custom widgets can also be built from scratch. To make new controls For decorative purposes class CustomWidget(QWidget): def init (self, parent = None): QWidget. init (self, parent) # Initialize the widget. def paintevent(self, event): painter = QPainter() painter.begin(self) # Do some painting. painter.end() def sizehint(self): return QSize(200, 200) In the init () method: Subclass an existing widget class Call the base class's init () method In the paintevent() method: Widgets are paint devices Just use a painter to draw on them In the sizehint() method: Return a preferred size to help the layout engine
30 Custom widgets They can also provide their own signals and slots... There are lots of examples of custom widgets:
31 OpenGL Integration Revisited You can also use QPainter to paint onto a QGLWidget: Painting operations are translated to OpenGL calls The result is accelerated 2D rendering Relies on extensions for anti-aliasing, so you may be trading looks for speed
32 Qt Designer Qt Designer is Trolltech's design tool for creating user interfaces. Forms created with Qt Designer are stored in XML (.ui) files These can be compiled to C++ with uic You can also use pyuic4 to convert them to Python Or you can use the Python uic module to generate the GUI at run-time This presentation was created with Qt Designer. The GUI is shown using PyQt4.
33 Thanks Trolltech for Qt Phil Thompson for SIP and PyQt4 Jim Bublitz for PyKDE Paul Boddie for suggestions The PyQt community (especially those on the mailing list) Links Trolltech: Riverbank Computing: PyQt Wiki at
Introduction to GUI programming in Python. Alice Invernizzi [email protected]
Introduction to GUI programming in Python Alice Invernizzi [email protected] Index Introduction to GUI programming Overview of Qt Framework for Python How to embed matplotlib/vtk widget inside Qt
David Boddie. PyCon UK 2007, Birmingham
Creating GUI Applications with PyQt and Qt Designer David Boddie [email protected] PyCon UK 2007, Birmingham Qt, Qtopia and Trolltech are registered trademarks of Trolltech ASA Contents 1. What are
PyQt for Desktop and Embedded Devices
PyQt for Desktop and Embedded Devices David Boddie PyCon Tre, Firenze, 8 th 10 th May 2009 About Qt Developed by Qt Software (Nokia) Cross-platform C++ framework Linux, Windows,
Qt/Embedded Whitepaper. Trolltech
Qt/Embedded Whitepaper Trolltech www.trolltech.com Abstract This whitepaper describes the Qt/Embedded C++ toolkit for GUI and application development on embedded devices. It runs on any device supported
Surface and Volumetric Data Rendering and Visualisation
Surface and Volumetric Data Rendering and Visualisation THE Qt TOOLKIT Department of Information Engineering Faculty of Engineering University of Brescia Via Branze, 38 25231 Brescia - ITALY 1 What is
Qt 3.3 Whitepaper. Trolltech. Abstract
Qt 3.3 Whitepaper Trolltech www.trolltech.com Abstract This whitepaper describes the Qt C++ toolkit. Qt supports the development of multiplatform GUI applications with its write once, compile anywhere
Building a Python Plugin
Building a Python Plugin QGIS Tutorials and Tips Author Ujaval Gandhi http://google.com/+ujavalgandhi This work is licensed under a Creative Commons Attribution 4.0 International License. Building a Python
BogDan Vatra and Andy Gryc. Qt on Android: Is it right for you?
BogDan Vatra and Andy Gryc Qt on Android: Is it right for you? Coffee and Code sessions Free, three-hour, hands-on session that delves into the internals of Qt on Android. Learn how to: set up the Qt development
[PRAKTISCHE ASPEKTE DER INFORMATIK SS 2014]
2014 Institut für Computergraphik, TU Braunschweig Pablo Bauszat [PRAKTISCHE ASPEKTE DER INFORMATIK SS 2014] All elemental steps that will get you started for your new life as a computer science programmer.
HBQT-Tutorial. Giovanni Di Maria May 9, 2011. email: [email protected]. www.gruppoeratostene.com/harbour/harbour-tutorials.htm
HBQT-Tutorial Giovanni Di Maria May 9, 2011 email: [email protected] Harbour (2.1) and QT Classes (4.7) - Tutorial Rev. [1] February 12, 2011 - Rev. [4031] May 9, 2011 www.gruppoeratostene.com/harbour/harbour-tutorials.htm
Cross-platform C++ development using Qt
Cross-platform C++ development using Qt Fall 2005 QT Presentation By Gabe Rudy Overview About Trolltech /QT Qt Features and Benefits Examples and Code Demos and more Code! Questions About Trolltech/QT
The Most Popular UI/Apps Framework For IVI on Linux
The Most Popular UI/Apps Framework For IVI on Linux About me Tasuku Suzuki Qt Engineer Qt, Developer Experience and Marketing, Nokia Have been using Qt since 2002 Joined Trolltech in 2006 Nokia since 2008
GUI application set up using QT designer. Sana Siddique. Team 5
GUI application set up using QT designer Sana Siddique Team 5 Introduction: A very important part of the Team 5 breakout board project is to develop a user friendly Graphical User Interface that is able
Qt in Education. The Qt object model and the signal slot concept
Qt in Education The Qt object model and the signal slot concept. 2010 Nokia Corporation and its Subsidiary(-ies). The enclosed Qt Educational Training Materials are provided under the Creative Commons
KIVY - A Framework for Natural User Interfaces
KIVY - A Framework for Natural User Interfaces Faculty of Computer Sciences Source of all Slides adopted from http://www.kivy.org Kivy - Open Source Library Kivy is an Open Source Python library for rapid
caqtdm Tutorial Jim Stevens APS Controls Group October 9, 2014
caqtdm Tutorial Jim Stevens APS Controls Group October 9, 2014 Based on 2004 Medm lecture by Kenneth Evans Jr. 2013 Abridged version by Tim Mooney for SSG class 1 caqtdm Tutorial Introduction Introduction:
Rapid Application Development with GNOME and Python
Rapid Application Development with GNOME and Python Christian Egli [email protected] June 13, 2001 What is RAD? Abstract RAD is a programming system that enables programmers to build working programs
Multiprocess System for Virtual Instruments in Python
Multiprocess System for Virtual Instruments in Python An Introduction to Pythics Brian R. D Urso Assistant Professor of Physics and Astronomy School of Arts and Sciences Oak Ridge National Laboratory Measurement
Mouse and Pointer Settings. Technical Brief
Mouse and Pointer Settings Technical Brief Avocent, the Avocent logo, DSView, AutoView, SwitchView, DSR, OSCAR and AVWorks are trademarks or registered trademarks of Avocent Corporation or its affiliates.
Java 7 Recipes. Freddy Guime. vk» (,\['«** g!p#« Carl Dea. Josh Juneau. John O'Conner
1 vk» Java 7 Recipes (,\['«** - < g!p#«josh Juneau Carl Dea Freddy Guime John O'Conner Contents J Contents at a Glance About the Authors About the Technical Reviewers Acknowledgments Introduction iv xvi
JavaFX Session Agenda
JavaFX Session Agenda 1 Introduction RIA, JavaFX and why JavaFX 2 JavaFX Architecture and Framework 3 Getting Started with JavaFX 4 Examples for Layout, Control, FXML etc Current day users expect web user
Qt Tips and Tricks. Integrated Computer Solutions Incorporated. Justin Noel and the ICS Team Oct 2010
Qt Tips and Tricks Integrated Computer Solutions Incorporated Justin Noel and the ICS Team Oct 2010 Today's Agenda MetaObject Tips Qt Properties, Dynamic Function Calling QVariant and Implicit Sharing
Building Applications With DUIM
Building Applications With DUIM Release 1.0 Dylan Hackers January 28, 2016 CONTENTS 1 Copyright 3 2 Preface 5 2.1 About this manual............................................ 5 2.2 Running examples in
Microsoft PowerPoint 2011
Microsoft PowerPoint 2011 Starting PowerPoint... 2 Creating Slides in Your Presentation... 3 Beginning with the Title Slide... 3 Inserting a New Slide... 3 Adding an Image to a Slide... 4 Downloading Images
ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android
Why Android? ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android Dr Dimitris C. Dracopoulos A truly open, free development platform based on Linux and open source A component-based
ANDROID INTRODUCTION TO ANDROID
ANDROID JAVA FUNDAMENTALS FOR ANDROID Introduction History Java Virtual Machine(JVM) JDK(Java Development Kit) JRE(Java Runtime Environment) Classes & Packages Java Basics Data Types Variables, Keywords,
Table of Contents. Adding Build Targets to the SDK 8 The Android Developer Tools (ADT) Plug-in for Eclipse 9
SECOND EDITION Programming Android kjj *J} Zigurd Mednieks, Laird Dornin, G. Blake Meike, and Masumi Nakamura O'REILLY Beijing Cambridge Farnham Koln Sebastopol Tokyo Table of Contents Preface xiii Parti.
BACHELOR THESIS. Peter Fabian Interactive Data Visualization Tool
Charles University in Prague Faculty of Mathematics and Physics BACHELOR THESIS Peter Fabian Interactive Data Visualization Tool Department of Software Engineering Supervisor: RNDr. Pavel Parízek Study
How to Develop Accessible Linux Applications
Sharon Snider Copyright 2002 by IBM Corporation v1.1, 2002 05 03 Revision History Revision v1.1 2002 05 03 Revised by: sds Converted to DocBook XML and updated broken links. Revision v1.0 2002 01 28 Revised
NDA-30141 ISSUE 1 STOCK # 200893. CallCenterWorX-Enterprise IMX MAT Quick Reference Guide MAY, 2000. NEC America, Inc.
NDA-30141 ISSUE 1 STOCK # 200893 CallCenterWorX-Enterprise IMX MAT Quick Reference Guide MAY, 2000 NEC America, Inc. LIABILITY DISCLAIMER NEC America, Inc. reserves the right to change the specifications,
Lecture 1 Introduction to Android
These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy
The KPager Handbook. Dirk Doerflinger Antonio Larrosa Jiménez Pino Toscano Matthias Elter Matthias Ettrich
Dirk Doerflinger Antonio Larrosa Jiménez Pino Toscano Matthias Elter Matthias Ettrich 2 Contents 1 Introduction 5 2 Using KPager 6 2.1 More KPager features.................................... 6 3 Command
How To Use Gss Software In Trimble Business Center
Trimble Business Center software technical notes Trimble Business Center Software Makes Processing GNSS Survey Data Effortless Trimble Business Center is powerful surveying office software designed to
Beginning Nokia Apps. Development. Qt and HTIVIL5 for Symbian and MeeGo. Ray Rischpater. Apress. Daniel Zucker
Beginning Nokia Apps Development Qt and HTIVIL5 for Symbian and MeeGo Ray Rischpater Daniel Zucker Apress Contents Contents at a Glance... I Foreword About the Authors About the Technical Reviewers Acknowledgments
Eclipse with Mac OSX Getting Started Selecting Your Workspace. Creating a Project.
Eclipse with Mac OSX Java developers have quickly made Eclipse one of the most popular Java coding tools on Mac OS X. But although Eclipse is a comfortable tool to use every day once you know it, it is
DEVELOPMENT OF AN ANALYSIS AND REPORTING TOOL FOR ORACLE FORMS SOURCE CODES
DEVELOPMENT OF AN ANALYSIS AND REPORTING TOOL FOR ORACLE FORMS SOURCE CODES by Çağatay YILDIRIM June, 2008 İZMİR CONTENTS Page PROJECT EXAMINATION RESULT FORM...ii ACKNOWLEDGEMENTS...iii ABSTRACT... iv
The MaXX Desktop. Workstation Environment. Revised Road Map Version 0.7. for Graphics Professionals
The MaXX Desktop Workstation Environment for Graphics Professionals Revised Road Map Version 0.7 Document History Author Date Version Comments Eric Masson 01/11/2007 0.5 First Draft Eric Masson 18/11/2007
Microsoft Office System Tip Sheet
The 2007 Microsoft Office System The 2007 Microsoft Office system is a complete set of desktop and server software that can help streamline the way you and your people do business. This latest release
Professional. SlickEdif. John Hurst IC..T...L. i 1 8 О 7» \ WILEY \ Wiley Publishing, Inc.
Professional SlickEdif John Hurst IC..T...L i 1 8 О 7» \ WILEY \! 2 0 0 7 " > Wiley Publishing, Inc. Acknowledgments Introduction xiii xxv Part I: Getting Started with SiickEdit Chapter 1: Introducing
Notes Client Tips & Tricks
Southern California October 4 & 5, 2011 Notes Client Tips & Tricks Chuck Smith - IBM Client specific topics A look at the desktop Preferences Business card retrieval order Notes Client Workspace features
AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev
International Journal "Information Technologies & Knowledge" Vol.5 / 2011 319 AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev Abstract: This paper presents a new approach
Guide to SAS/AF Applications Development
Guide to SAS/AF Applications Development SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2012. Guide to SAS/AF Applications Development. Cary, NC:
ITG Software Engineering
Basic Android Development Course ID: Page 1 Last Updated 12/15/2014 Basic Android Development ITG Software Engineering Course Overview: This 5 day course gives students the fundamental basics of Android
Business Insight Report Authoring Getting Started Guide
Business Insight Report Authoring Getting Started Guide Version: 6.6 Written by: Product Documentation, R&D Date: February 2011 ImageNow and CaptureNow are registered trademarks of Perceptive Software,
Managing Your Desktop with Exposé, Spaces, and Other Tools
CHAPTER Managing Your Desktop with Exposé, Spaces, and Other Tools In this chapter Taking Control of Your Desktop 266 Managing Open Windows with Exposé 266 Creating, Using, and Managing Spaces 269 Mac
Skills for Employment Investment Project (SEIP)
Skills for Employment Investment Project (SEIP) Standards/ Curriculum Format For Web Design Course Duration: Three Months 1 Course Structure and Requirements Course Title: Web Design Course Objectives:
Module One: Getting Started... 6. Opening Outlook... 6. Setting Up Outlook for the First Time... 7. Understanding the Interface...
2 CONTENTS Module One: Getting Started... 6 Opening Outlook... 6 Setting Up Outlook for the First Time... 7 Understanding the Interface...12 Using Backstage View...14 Viewing Your Inbox...15 Closing Outlook...17
Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013
Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone
Figure 1 responsive grid system for all view ports, from desktops, tablets and smart phones
Pimp your SharePoint with Uihiro our front-end framework for developing responsive, on-prem, hybrid, pure Office 365 and mobile ready projects. Our theming engine provides a rich repeatable design experience
Neutron Science Visualization Software
Mitglied der Helmholtz-Gemeinschaft Neutron Science Visualization Software 1. September 2011 69. Koordinierungstreffen J. Heinen Contents ü Visualization Software Requirements in Neutron Science ü Available
Design document Goal Technology Description
Design document Goal OpenOrienteering Mapper is a program to draw orienteering maps. It helps both in the surveying and the following final drawing task. Support for course setting is not a priority because
Qt Features for Hybrid Web/Native Application Development
White Paper Qt Features for Hybrid Web/Native Application Development Today s computer users live and work in an interconnected world. They always have a network at hand and expect their data to be available
Content Author's Reference and Cookbook
Sitecore CMS 6.2 Content Author's Reference and Cookbook Rev. 091019 Sitecore CMS 6.2 Content Author's Reference and Cookbook A Conceptual Overview and Practical Guide to Using Sitecore Table of Contents
Handout: Word 2010 Tips and Shortcuts
Word 2010: Tips and Shortcuts Table of Contents EXPORT A CUSTOMIZED QUICK ACCESS TOOLBAR... 2 IMPORT A CUSTOMIZED QUICK ACCESS TOOLBAR... 2 USE THE FORMAT PAINTER... 3 REPEAT THE LAST ACTION... 3 SHOW
Mobile Development with Qt
Mobile Development with Qt Developing for Symbian and Maemo Daniel Molkentin Nokia, Qt Development Frameworks 1 Yours Truly Developer and Promoter for the KDE Project since 2000 Author of The Book of Qt
VisIt Visualization Tool
The Center for Astrophysical Thermonuclear Flashes VisIt Visualization Tool Randy Hudson [email protected] Argonne National Laboratory Flash Center, University of Chicago An Advanced Simulation and Computing
Enhancing the SAS Enhanced Editor with Toolbar Customizations Lynn Mullins, PPD, Cincinnati, Ohio
PharmaSUG 016 - Paper QT1 Enhancing the SAS Enhanced Editor with Toolbar Customizations Lynn Mullins, PPD, Cincinnati, Ohio ABSTRACT One of the most important tools for SAS programmers is the Display Manager
The Remote Desktop Connection Handbook. Brad Hards Urs Wolfer
The Remote Desktop Connection Handbook Brad Hards Urs Wolfer 2 Contents 1 Introduction 5 2 The Remote Frame Buffer protocol 6 3 Using Remote Desktop Connection 7 3.1 Connecting Remote Desktop Connection
Getting Started Guide. Chapter 14 Customizing LibreOffice
Getting Started Guide Chapter 14 Customizing LibreOffice Copyright This document is Copyright 2010 2012 by its contributors as listed below. You may distribute it and/or modify it under the terms of either
13 Managing Devices. Your computer is an assembly of many components from different manufacturers. LESSON OBJECTIVES
LESSON 13 Managing Devices OBJECTIVES After completing this lesson, you will be able to: 1. Open System Properties. 2. Use Device Manager. 3. Understand hardware profiles. 4. Set performance options. Estimated
Android Developer Fundamental 1
Android Developer Fundamental 1 I. Why Learn Android? Technology for life. Deep interaction with our daily life. Mobile, Simple & Practical. Biggest user base (see statistics) Open Source, Control & Flexibility
Using the Remote Desktop Connection for Mac
Using the Remote Desktop Connection for Mac In order to use the RDC Client for Macs, you first need to download the client http://www.microsoft.com/mac/remote-desktop-client. Run the installation package,
CaptainCasa. CaptainCasa Enterprise Client. CaptainCasa Enterprise Client. Feature Overview
Feature Overview Page 1 Technology Client Server Client-Server Communication Client Runtime Application Deployment Java Swing based (JRE 1.6), generic rich frontend client. HTML based thin frontend client
What's New in QuarkXPress 10
What's New in QuarkXPress 10 CONTENTS Contents What's New in QuarkXPress 10...3 Xenon graphics engine...4 Modern and optimized UI...6 Productivity enhancements...7 Other new features...10 Removed features...12
Microsoft Office System Tip Sheet
Experience the 2007 Microsoft Office System The 2007 Microsoft Office system includes programs, servers, services, and solutions designed to work together to help you succeed. New features in the 2007
QUICK START. GO-Global Cloud 4.1 SETTING UP A LINUX CLOUD SERVER AND HOST INSTALL THE CLOUD SERVER ON LINUX
GO-Global Cloud 4.1 QUICK START SETTING UP A LINUX CLOUD SERVER AND HOST This guide provides instructions for setting up a cloud server and configuring a host so it can be accessed from the cloud server.
IOIO for Android Beginners Guide Introduction
IOIO for Android Beginners Guide Introduction This is the beginners guide for the IOIO for Android board and is intended for users that have never written an Android app. The goal of this tutorial is to
PBA.pro Getting Started
PBA.pro Getting Started Issue 01.04 May 2007 AIM GmbH Sasbacherstr. 2 79111 Freiburg Germany www.aim-online.com Page 1 of 18 Table of Contents Table of Contents... 2 General... 3 PBA.pro Configuration...
MAS 500 Intelligence Tips and Tricks Booklet Vol. 1
MAS 500 Intelligence Tips and Tricks Booklet Vol. 1 1 Contents Accessing the Sage MAS Intelligence Reports... 3 Copying, Pasting and Renaming Reports... 4 To create a new report from an existing report...
Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean
Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean Course Description Getting Started with Android Programming is designed to give students a strong foundation to develop apps
Teradata SQL Assistant Version 13.0 (.Net) Enhancements and Differences. Mike Dempsey
Teradata SQL Assistant Version 13.0 (.Net) Enhancements and Differences by Mike Dempsey Overview SQL Assistant 13.0 is an entirely new application that has been re-designed from the ground up. It has been
PeopleTools 8.51 PeopleBook: PeopleSoft Application Designer Lifecycle Management Guide
PeopleTools 8.51 PeopleBook: PeopleSoft Application Designer Lifecycle Management Guide August 2010 PeopleTools 8.51 PeopleBook: PeopleSoft Application Designer Lifecycle Management Guide SKU pt8.51tlcm-b0810
Native-quality, cross-platform HTML5 apps. Peter Helm 11.9.2012
Native-quality, cross-platform HTML5 apps Peter Helm 11.9.2012 Enyo is A framework for building native-quality, crossplatform HTML5 apps Enyo is... Truly cross-platform Optimized for mobile Built to manage
MICROSOFT OUTLOOK 2010 READ, ORGANIZE, SEND AND RESPONSE E-MAILS
MICROSOFT OUTLOOK 2010 READ, ORGANIZE, SEND AND RESPONSE E-MAILS Last Edited: 2012-07-09 1 Read Emails... 4 Find the inbox... 4 Change new incoming e-mail notification options... 5 Read email... 6 Change
Table of Contents. iii
The contents of this manual and the associated KD Reports software are the property of Klarälvdalens Datakonsult AB and are copyrighted. Any reproduction in whole or in part is strictly prohibited without
Mobile application development with QML & PySide
Mobile application development with QML & PySide Martin Kolman, Faculty of Informatics, Masaryk University slides: http://www.modrana.org/om2012 example program: https://github.com/m4rtink/expyside What
Implementação. Interfaces Pessoa Máquina 2010/11. 2009-11 Salvador Abreu baseado em material Alan Dix. Thursday, June 2, 2011
Implementação Interfaces Pessoa Máquina 2010/11 2009-11 baseado em material Alan Dix 1 Windowing systems Architecture Layers Higher level Tool UI Toolkit (Widgets) Window System OS Application Hardware
Microsoft PowerPoint 2008
Microsoft PowerPoint 2008 Starting PowerPoint... 2 Creating Slides in Your Presentation... 3 Beginning with the Title Slide... 3 Inserting a New Slide... 3 Slide Layouts... 3 Adding an Image to a Slide...
14.1. bs^ir^qfkd=obcib`qflk= Ñçê=emI=rkfuI=~åÇ=léÉåsjp=eçëíë
14.1 bs^ir^qfkd=obcib`qflk= Ñçê=emI=rkfuI=~åÇ=léÉåsjp=eçëíë bî~äì~íáåö=oéñäéåíáçå=ñçê=emi=rkfui=~åç=lééåsjp=eçëíë This guide walks you quickly through key Reflection features. It covers: Getting Connected
Getting more out of Matplotlib with GR
Member of the Helmholtz Association Getting more out of Matplotlib with GR July 20 th 26 th, 2015 Bilbao EuroPython 2015 Josef Heinen @josef_heinen Visualization needs visualize and analyzing two- and
DCA. Document Control & Archiving USER S GUIDE
DCA Document Control & Archiving USER S GUIDE Decision Management International, Inc. 1111 Third Street West Suite 250 Bradenton, FL 34205 Phone 800-530-0803 FAX 941-744-0314 www.dmius.com Copyright 2002,
User's Guide FairCom Performance Monitor
User's Guide FairCom Performance Monitor User's Guide FairCom Performance Monitor Contents 1. c-treeace Performance Monitor... 4 2. Startup... 5 3. Using Main Window... 6 4. Menus... 8 5. Icon Row... 11
Microsoft Outlook 2010. Reference Guide for Lotus Notes Users
Microsoft Outlook 2010 Reference Guide for Lotus Notes Users ContentsWelcome to Office Outlook 2010... 2 Mail... 3 Viewing Messages... 4 Working with Messages... 7 Responding to Messages... 11 Organizing
Developing Exceptional Mobile and Multi-Channel Applications using IBM Web Experience Factory. 2012 IBM Corporation 1
Developing Exceptional Mobile and Multi-Channel Applications using IBM Web Experience Factory 1 Agenda Mobile web applications and Web Experience Factory High-level tour of Web Experience Factory automation
Rapid GUI Application Development with Python
Rapid GUI Application Development with Python Volker Kuhlmann Kiwi PyCon 2009 Christchurch 7 November 2009 Copyright 2009 by Volker Kuhlmann Released under Creative Commons Attribution Non-commercial Share-alike
FileMaker Pro 11. Tutorial
FileMaker Pro 11 Tutorial 2007 2010 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker is a trademark of FileMaker, Inc. registered in
MERLIN. The Quick Start Guide to professional project management. 2013 ProjectWizards GmbH, Melle, Germany. All rights reserved.
MERLIN The Quick Start Guide to professional project management 2013 ProjectWizards GmbH, Melle, Germany. All rights reserved. INTRODUCTION Welcome to the quick start guide to Merlin! Thank you for choosing
ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android
Why Android? ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android Dr Dimitris C. Dracopoulos A truly open, free development platform based on Linux and open source A component-based
USE OF PYTHON AS A SATELLITE OPERATIONS AND TESTING AUTOMATION LANGUAGE
USE OF PYTHON AS A SATELLITE OPERATIONS AND TESTING AUTOMATION LANGUAGE Gonzalo Garcia VP of Operations, USA Property of GMV All rights reserved INTRODUCTION Property of GMV All rights reserved INTRODUCTION
ADOBE MUSE. Building your first website
ADOBE MUSE Building your first website Contents Chapter 1... 1 Chapter 2... 11 Chapter 3... 20 Chapter 4... 30 Chapter 5... 38 Chapter 6... 48 Chapter 1 Installing the software and setting up the sample
Avaya Network Configuration Manager User Guide
Avaya Network Configuration Manager User Guide May 2004 Avaya Network Configuration Manager User Guide Copyright Avaya Inc. 2004 ALL RIGHTS RESERVED The products, specifications, and other technical information
NVivo 8 Help. Using the Software
NVivo 8 Help Using the Software This is a printable version of the NVivo 8 help that is built into the software. The help is divided into two sections - Using the Software and Working with Your Data. This
Communicator for Mac Help
Communicator for Mac Help About the ShoreTel Communicator Introduction to the ShoreTel Communicator for Mac ShoreTel Communicator elements Learn about the window layout, panels, icons, buttons and notifications
