Index
A
- accelerators / Accelerators and label buddies
- Add-ons / Qt Add-ons
- Affine Transformations project
- animations
- elements, animating / Animating elements
- generic animations / Generic animations
- action game, scene / Time for action – scene for an action game, What just happened?
- suns horizontal movement, animating / Time for action – animating the sun's horizontal movement, What just happened?
- composing / Composing animations
- sun, making rise and set / Time for action – making the sun rise and set
- non-linear animations / Non-linear animations
- sun, path improving / Time for action – improving the path of the sun, What just happened?
- property value sources / Property value sources
- suns color, adjusting / Time for action – adjusting the sun's color, What just happened?
- sun animation, furnishing / Time for action – furnishing sun animation, What just happened?
- sun rays, animating / Have a go hero – animating the sun's rays
- behaviors / Behaviors
- car dashboard, animating / Time for action – animating the car dashboard
- types / More animation types
- application, main window
- about / An application's main window, Time for action – the main window of the application
- Qt resource system / The Qt resource system
- pull-down menu, adding / Time for action – adding a pull-down menu, What just happened?
- toolbar, creating / Time for action – creating a toolbar
- central widget, filling in / Time for action – filling in the central widget, Time for action – putting it all together
- game, extending / Have a go hero – extending the game
- artificial intelligence (AI) / Time for action – employing scripting for npc AI
- asynchronous approach / Improvements
B
- button component
- button content
C
- C++
- and Python, data converting between / Time for action – converting data between C++ and Python, What just happened?
- C++11 support / C++11 support
- C++ functions
- exposing, to scripts / Exposing C++ functions to scripts
- script functions, exposing / Exposing script functions to C++
- script, storing / Time for action – storing the script, What just happened?
- C++ objects
- pushing, to QML / Pushing C++ objects to QML
- car dashboard, self-updating / Time for action – self-updating car dashboard
- engine properties, grouping / Time for action – grouping engine properties
- Canvas
- preparing, for hearbeat visualization / Time for action – preparing Canvas for heartbeat visualization, What just happened?
- character
- animating, sprites used / Time for action – animating characters using sprites, What just happened?
- child widgets
- adding, to window / Adding child widgets to a window
- client
- about / The client
- setting up / Time for action – setting up the client, What just happened?
- text messages, receiving / Time for action – receiving text messages
- text messages, sending / Time for action – sending text messages
- chat, extending with user list / Have a go hero – extending the chat with a user list
- collision detection
- about / Collision detection
- coins, collecting / Time for action – collecting coins, What just happened?
- notes / Notes on collision detection
- Comma-separated Values (CSV) format / Dissecting strings
- commercial license / A commercial license
- URL / A commercial license
- components
- analog clock application / Time for action – a simple analog clock application, What just happened?
- needles, adding to clock / Time for action – adding needles to the clock
- clock, making functional / Time for action – making the clock functional, What just happened?
- dynamic objects / Dynamic objects
- about / Using components in detail
- objects, creating on request / Creating objects on request
- item creation, delaying / Delaying item creation
- items component functionality, accessing / Accessing your item's component functionality
- imperative painting / Imperative painting
- connectivity state
- about / Controlling the connectivity state
- QNetworkConfigurationManager / QNetworkConfigurationManager
- QNetworkConfiguration / QNetworkConfiguration
- QNetworkSession / QNetworkSession
- QNetworkInterface / QNetworkInterface
- cube
- animating / Have a go hero – animating a cube
D
- data serialization
- about / Data serialization
- binary streams / Binary streams
- of custom structure / Time for action – serialization of a custom structure
- XML streams / XML streams
- XML parser, implementing for player data / Time for action – implementing an XML parser for player data
- XML serializer, for player data / Have a go hero – an XML serializer for player data
- JavaScript Object Notation (JSON) / JSON files
- player data JSON serializer / Time for action – the player data JSON serializer
- JSON parser, implementing / Time for action – implementing a JSON parser
- QSettings / QSettings
- data storage
- about / Data storage
- files / Files and devices
- devices / Files and devices
- text streams / Text streams
- data serialization / Data serialization
- declarative programming
- about / Declarative UI programming
- designer forms
- using / Using designer forms
- direct approach / Direct approach
- multiple inheritance approach / The multiple-inheritance approach
- single inheritance approach / The single inheritance approach
- dialog, logic / Time for action – the logic of the dialog
- devices
- about / Devices
- implementing, to encrypt data / Time for action – implementing a device to encrypt data, What just happened?
- GUI, for Caesar cipher / Have a go hero – a GUI for the Caesar cipher
- Docker
- URL / QNetworkAccessManager
- Document Object Model (DOM) standard / XML streams
- double-buffered oscillogram
- implementing / Have a go hero – implementing a double-buffered oscillogram
- download progress
- downloadProgress method / The downloadProgress method
- drawing
- optimizing / Optimized drawing
- oscillogram drawing, optimizing / Time for action – optimizing oscillogram drawing
- drawing, optimizing
- double-buffered oscillogram, implementing / Have a go hero – implementing a double-buffered oscillogram
- game architecture, developing / Time for action – developing the game architecture, What just happened?
- game board class, implementing / Time for action – implementing the game board class, What just happened?
- ChessView class / Time for action – understanding the ChessView class, What just happened?
- pieces, rendering / Time for action – rendering the pieces, What just happened?
- chess game, making interactive / Time for action – making the chess game interactive, What just happened?
- game algorithm, connecting / Time for action – connecting the game algorithm
- UI, implementing around chess booard / Have a go hero – implementing the UI around the chess board
- UCI-compliant chess engine, connecting / Have a go hero – connecting a UCI-compliant chess engine
E
- error handling
- about / Error handling
- proper error message, displaying / Time for action – displaying a proper error message
- error recovery / Error recovery and debugging
- error signal / The error signal
- Essentials / Qt Essentials
- event handlers
- about / Event handlers
- mouse input / Mouse input
- touch input / Touch input
- keyboard input / Keyboard input
- extensions / Extensions
F
- files
- directories, traversing / Traversing directories
- basic file access, getting / Getting access to the basic file
- downloading, over HTTP / Downloading files over HTTP
- downloading / Time for action – downloading a file
- basic file downloader, extending / Have a go hero – extending the basic file downloader
- downloading, over FTP / Downloading files over FTP
- downloading, in parallel / Downloading files in parallel
- Framebuffer Objects (FBO) / Off-screen rendering
- functions
- exposing / Exposing functions
- initialization function, providing / Time for action – providing an initialization function
- heartbeat event, implementing / Time for action – implementing the heartbeat event
- attacks, defending against / Have a go hero – defending against attacks
G
- game
- programming / Quick game programming
- loop / Game loops
- character navigation / Time for action – character navigation
- character navigation, approach / Time for action – another approach to character navigation, What just happened?
- animation, polishing / Have a go hero – polishing the animation
- coins, generating / Time for action – generating coins
- games
- communicating between / Communicating between games
- simple chat program, realizing / Time for action – realizing a simple chat program
- Git
- used, for setting up Qt sources / Time for action – setting up Qt sources using Git
- URL / Time for action – setting up Qt sources using Git
- GL buffers / GL buffers
- god object pattern / Game loops
- Google
- connecting to / Connecting to Google, Facebook, Twitter, and co.
- Distance Matrix API, usng / Time for action – using Google's Distance Matrix API
- query, constructing / Time for action – constructing the query
- servers reply, parsing / Time for action – parsing the server's reply
- XML, selecting as reply format / Have a go hero – choosing XML as the reply's format
- Graphics View architecture
- about / Graphics View architecture
- items / Items
- scenes / Adding items to the scene
- view / View
- GUIs
- designing / Designing GUIs
- game configuration dialog, designing / Time for action – designing the game configuration dialog
- dialog, polishing / Time for action – polishing the dialog
- label buddies / Accelerators and label buddies
- accelerators / Accelerators and label buddies
- tab order / The tab order
I
- images
- working with / Working with images
- loading / Loading
- modifying / Modifying
- painting / Painting
- imperative painting
- Canvas, preparing for heartbeat visualization / Time for action – preparing Canvas for heartbeat visualization, What just happened?
- heartbeat, drawing / Time for action – drawing a heartbeat, What just happened?
- diagram, making colorful / Time for action – making the diagram more colorful
- initialization function
- items
- about / Graphics View architecture, Items
- parent child relationship / Parent child relationship
- appearance / Appearance
- black rectangular item, creating / Time for action – creating a black, rectangular item, What just happened?
- selection state, reacting to / Time for action – reacting to an item's selection state, What just happened?
- size, making definable / Time for action – making the item's size definable, What just happened?
- customizing / Have a go hero – customizing the item
- standard items / Standard items
- coordinate system / Coordinate system of the items
- creating, with different origins / Time for action – creating items with different origins
- rotating / Time for action – rotating an item, What just happened?
- multiple transformations, applying / Have a go hero – applying multiple transformations
- adding, to scenes / Adding items to the scene
J
- JavaScript, alternatives
- about / Alternatives to JavaScript
- Python / Python
- JavaScript Object Notation (JSON)
- about / JSON files
- parser, implementing / Time for action – implementing a JSON parser
- jumping elephant example
- about / The jumping elephant or how to animate the scene
- game play / The game play
- player item / The player item
- item, creating for Benjamin / Time for action – creating an item for Benjamin, What just happened?
- playing field / The playing field
- scene / The scene
- Benjamin, moving / Time for action – making Benjamin move, What just happened?
- parallax scrolling / Parallax scrolling
- background, moving / Time for action – moving the background
- new background layers, adding / Have a go hero – adding new background layers
- QObject / QObject and items, Time for action – using properties, signals, and slots with items
- items / QObject and items
- property animations / Property animations
- animation, using to smoothly move items / Time for action – using animations to move items smoothly, What just happened?
- scene, handling Benjamins jump / Have a go hero – letting the scene handle Benjamin's jump, What just happened?
- item collision detection / Item collision detection
- coins, exploding / Time for action – making the coins explode, What just happened?
- playing field, setting up / Setting up the playing field
- game, extending / Have a go hero – extending the game
- animation / A third way of animation
K
- keyboard input
- about / Keyboard input
- key-event propagation / Have a go hero – practicing key-event propagation
L
- license
- selecting / Choosing the right license
- open source license / An open source license
- commercial license / A commercial license
M
- MAMP
- URL / QNetworkAccessManager
- meta-objects / Meta-objects
- mouse input
- about / Mouse input
- button, making clickable / Time for action – making the button clickable
- button state, visualizing / Time for action – visualizing button states, What just happened?
- environment, notifying about button state / Time for action – notifying the environment about button states, What just happened?
- mouse tracking / Input events
O
- object hierarchies
- about / Object hierarchies
- button component, creating / Time for action – creating a button component, What just happened?
- button content, adding / Time for action – adding button content, What just happened?
- button, sizing / Time for action – sizing the button properly
- button, making reusable component / Time for action – making the button a reusable component, What just happened?
- objects
- dynamic objects / Dynamic objects
- creating, on requests / Creating objects on request
- online installer
- used, for installing Qt / Time for action – installing Qt using an online installer, What just happened?
- OpenGL
- about / OpenGL
- with Qt / Introduction to OpenGL with Qt, Modern OpenGL with Qt
- Qt, used for drawing triangle / Time for action – drawing a triangle using Qt and OpenGL
- used, for drawing triangle / Time for action – drawing a triangle using Qt and OpenGL
- scene-based rendering / Time for action – scene-based rendering
- textured cube, drawing / Time for action – drawing a textured cube
- cube, animating / Have a go hero – animating a cube
- shaders / Shaders
- shaded object / Time for action – shaded objects
- GL buffers / GL buffers
- off-screen rendering / Off-screen rendering
- Off-screen rendering / Off-screen rendering
- open source license
- about / An open source license
- URL / An open source license
- optimizations
- about / Optimization
- binary space partition tree / A binary space partition tree
- items paint function, caching / Caching the item's paint function
- view, optimizing / Optimizing the view
- oscillogram
- drawing / Time for action – drawing an oscillogram
- making, selectable / Time for action – making oscillograms selectable
- drawing, optimizing / Time for action – optimizing oscillogram drawing
P
- parallax scrolling / Parallax scrolling
- about / Parallax scrolling
- revisiting / Time for action – revisiting parallax scrolling, What just happened?
- vertical parallax sliding / Have a go hero – vertical parallax sliding
- particles / Particle systems
- pattern occurrences
- finding / Finding all pattern occurrences
- Perl script
- platforms
- about / Supported platforms
- properties
- about / Properties
- declaring / Declaring a property
- using / Using a property
- adding, to board class / Time for action – adding properties to the board class, What just happened?
- property binding / Element properties
- property value source / Property value sources
- proxy
- using / Using a proxy
- pull-down menu
- Python
- about / Python
- embedding, Qt wrapper writing / Time for action – writing a Qt wrapper for embedding Python
- and C++, data converting between / Time for action – converting data between C++ and Python
- remaining conversions, implementing / Have a go hero – implementing the remaining conversions
- functions, calling / Time for action – calling functions and returning values
- values, returning / Time for action – calling functions and returning values, What just happened?
- Qt objects, wrapping into Python objects / Have a go hero – wrapping Qt objects into Python objects
- URL / Have a go hero – wrapping Qt objects into Python objects
Q
- QML (Qt Modeling Language)
- about / Declarative UI programming
- element properties / Element properties
- group properties / Group properties, Object hierarchies
- object hierarchies / Object hierarchies
- QML (Qt Modeling Language), extending
- about / Extending QML
- classes, registering as QML elements / Registering classes as QML elements
- CarInfo, making instantiable / Time for action – making CarInfo instantiable from QML
- QML objects
- creating, from C++ / Creating QML objects from C++
- pulling, to C++ / Pulling QML objects to C++
- QNetworkAccessManager
- about / QNetworkAccessManager
- files, downloading over HTTP / Downloading files over HTTP
- file, downloading / Time for action – downloading a file
- basic file downloader, extending / Have a go hero – extending the basic file downloader
- error handling / Error handling
- error message, displaying / Time for action – displaying a proper error message
- files, downloading over FTP / Downloading files over FTP
- files, downloading in parallel / Downloading files in parallel
- finished signal / The finished signal
- OOP conform code writing, QSignalMapper used / Time for action – writing the OOP conform code using QSignalMapper, What just happened?
- error signal / The error signal
- readyRead signal / The readyRead signal
- downloadProgress method / The downloadProgress method, What just happened?
- proxy, using / Using a proxy
- QNetworkConfiguration / QNetworkConfiguration
- QNetworkConfigurationManager / QNetworkConfigurationManager
- QNetworkInterface / QNetworkInterface
- QNetworkSession / QNetworkSession
- QSettings / QSettings
- QSignalMapper
- Qt
- cross-platform programming / The cross-platform programming
- platforms / Supported platforms
- history / A journey through time
- Essentials / Qt Essentials
- Add-ons / Qt Add-ons
- installing, online installer used / Time for action – installing Qt using an online installer, What just happened?
- URL / Time for action – installing Qt using an online installer
- building, from sources / Building Qt from sources
- configuring / Time for action – configuring and building Qt
- building / Time for action – configuring and building Qt
- meta-objects / Qt meta-objects
- Qt 5
- features / New in Qt 5, Qt Essentials, Qt Add-ons, Meta-objects, C++11 support
- QTcpServer
- about / The server – QTcpServer
- setting up / Time for action – setting up the server, What just happened?
- new pending connection, reacting on / Time for action – reacting on a new pending connection, What just happened?
- new message, forwarding / Time for action – forwarding a new message
- QSignalMapper, using / Have a go hero – using QSignalMapper
- disconnect, detecting / Time for action – detecting a disconnect
- Qt Creator
- setting up / Setting up Qt Creator
- example project, loading / Time for action – loading an example project, What just happened?
- Affine Transformations project, running / Time for action – running the Affine Transformations project, What just happened?
- Qt Designer / Designing GUIs
- Qt Desktop project
- Qt JavaScript environment / The other Qt JavaScript environment
- Qt Modeling Language (QML)
- about / A journey through time
- Qt objects
- in scripts, creating / Creating Qt objects in scripts
- Qt Platform Abstraction (QPA) / Qt Platform Abstraction
- Qt project
- creating / Windows and dialogs, Creating a Qt project
- Qt Quick
- components, using / Using components in Qt Quick
- and C++ / Qt Quick and C++
- Qt Quick 2.0
- about / Qt Quick 2.0
- Qt Quick application
- about / Eye candy
- user interfaces, auto-scaling / Auto-scaling user interfaces
- graphical effects / Graphical effects
- blur parallax scrolled game view / Have a go hero – the blur parallax scrolled game view
- particle system / Particle systems
- emitter, tuning / Tuning the emitter
- particles, rendering / Rendering particles
- particles, moving / Making particles move
- coins spawning particles, vanishing / Time for action – vanishing coins spawning particles, What just happened?
- Qt Quick items
- about / Custom Qt Quick items
- OpenGL items / OpenGL items
- regular polygon item, creating / Time for action – creating a regular polygon item, What just happened?
- border, supporting for RegularPolygon / Have a go hero – creating a supporting border for RegularPolygon
- painted items / Painted items
- creating, for drawing outlined text / Time for action – creating an item for drawing outlined text
- Qt Script
- basics / The basics of Qt Script
- JavaScript expressions, evaluating / Evaluating JavaScript expressions
- editor, creating / Time for action – creating a Qt Script editor, What just happened?
- sandboxed script evaluation / Time for action – sandboxed script evaluation, What just happened?
- and Qt, integrating / Integrating Qt and Qt Script
- objects, exposing / Exposing objects
- scripting, employing for npc AI / Time for action – employing scripting for npc AI, What just happened?
- Dungeons & Dragons game, extending / Have a go hero – extending the Dungeons
- signals and slots, using / Using signals and slots in scripts
- Qt SDK
- installing / Installing the Qt SDK
- Qt sources
- setting up, Git used / Time for action – setting up Qt sources using Git
- Qt wrapper
- writing, for embedding Python / Time for action – writing a Qt wrapper for embedding Python, What just happened?
R
- raster painting
- about / Raster painting
- painter, attributes / Painter attributes
- readyRead signal / The readyRead signal
- regular expressions
- about / Regular expressions
- simple quiz game / Time for action – a simple quiz game, What just happened?
S
- scene
- about / Graphics View architecture
- scenes
- about / Scenes
- items, adding / Adding items to the scene, Time for action – adding an item to a scene, What just happened?
- items, iterating with / Interacting with items on the scene
- rendering / Rendering
- content, rendering to image / Time for action – rendering the scene's content to an image, What just happened?
- specific parts, rendering / Have a go hero – rendering only specific parts of a scene
- coordinate system / Coordinate system of the scene
- child items, transforming / Time for action – transforming parent items and child items, What just happened?
- parent items, transforming / Time for action – transforming parent items and child items, What just happened?
- z value, playing with / Have a go hero – playing with the z value
- script
- about / Why script?
- scripts
- C++ functions, exposing / Exposing C++ functions to scripts
- exposing, to C++ / Exposing script functions to C++
- Qt objects, using / Creating Qt objects in scripts
- shaders / Shaders
- signal
- about / Signals and slots, Signals and slots
- signal-slot connections
- signals and slots
- using, in scripts / Using signals and slots in scripts
- used, for triggering defense / Have a go hero – triggering defense using signals and slots
- slot
- about / Signals and slots, Signals and slots
- sprite animation
- about / Sprite animation
- simple character animation, implementing / Time for action – implementing simple character animation, What just happened?
- character animation used / Time for action – animating characters using sprites, What just happened?
- jumping, adding with sprite transitions / Time for action – adding jumping with sprite transitions, What just happened?
- tail, wiggling / Have a go hero – making Benjamin wiggle his tail in anticipation
- sprites / What just happened?
- states
- about / States and transitions
- static user interfaces
- strings
- manipulating / Manipulating strings
- operations, basic / Basic string operations
- search and lookup / The string search and lookup
- dissecting / Dissecting strings
- and numbers, conversions / Converting between numbers and strings
- arguments, using / Using arguments in strings
- information, extracting / Extracting information out of a string
T
- tab order / The tab order
- text
- handling / Text handling
- strings, manipulating / Manipulating strings
- encoding / Encoding and decoding text
- decoding / Encoding and decoding text
- string operations, basic / Basic string operations
- painting / Painting text
- static text / Static text
- rich text / Rich text
- textured cube
- tic-tac-toe board
- functionality / Time for action – functionality of a tic-tac-toe board
- tic-tac-toe game board
- toolbar
- creating / Time for action – creating a toolbar
- touch input
- about / Touch input
- item, dragging / Time for action – dragging an item around
- picture, rotating by pinching / Time for action – rotating and scaling a picture by pinching, What just happened?
- picture, scaling by pinching / Time for action – rotating and scaling a picture by pinching, What just happened?
- rotating, with mouse / Have a go hero – rotating and scaling with a mouse
- scaling, with mouse / Have a go hero – rotating and scaling with a mouse
- transitions
- about / States and transitions
- Transmission Control Protocol (TCP) / The server – QTcpServer
- Twitter
- connecting to / Connecting to Google, Facebook, Twitter, and co.
U
- UDP
- using / Using UDP
- used, for sending text / Time for action – sending a text via UDP
- Benjamin game players, connecting / Have a go hero – connecting players of the Benjamin game
- Uniform Server
- URL / QNetworkAccessManager
- User Interface Compiler (uic) / Using designer forms
- user interfaces
- fluid / Fluid user interfaces
V
- view
- about / Graphics View architecture, View
- merging / Time for action – putting it all together!, What just happened?
- scene specific areas, showing / Showing specific areas of the scene
- scene, transforming / Transforming the scene
- item, creation on transformation visibility / Time for action – creating an item where transformations can easily be seen, What just happened?
- scene, scaling ability / Time for action – implementing the ability to scale the scene, What just happened?
- scene, moving ability / Time for action – implementing the ability to move the scene, What just happened?
- zoom level, taking into account / Time for action – taking the zoom level into account
- viewport
- transforming / Time for action – transforming the viewport, What just happened?
- VirtualBox
- URL / QNetworkAccessManager
W
- widget
- content, managing / Managing widget content
- tic-tac-toe game board, implementing / Time for action – implementing a tic-tac-toe game board, What just happened?
- widget painting
- about / Widget painting
- custom-painted widgets / Time for action – custom-painted widgets, What just happened?
- viewport, transforming / Time for action – transforming the viewport, What just happened?
- oscillogram, drawing / Time for action – drawing an oscillogram
- input events / Input events
- oscillograms, making selectable / Time for action – making oscillograms selectable
- left mouse button, reacting to / Have a go hero – reacting only to the left mouse button
- widgets
- inside Graphics View / Widgets inside Graphics View
X
- XAMPP
- URL / QNetworkAccessManager
- XML parser
- implementing, for player data / Time for action – implementing an XML parser for player data
- XML serializer
- for player data / Have a go hero – an XML serializer for player data
- XML streams / XML streams