did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780321635907

Advanced Qt Programming Creating Great Software with C++ and Qt 4

by
  • ISBN13:

    9780321635907

  • ISBN10:

    0321635906

  • Edition: 1st
  • Format: Hardcover
  • Copyright: 2010-07-11
  • Publisher: Prentice Hall
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $54.99
  • Digital
    $56.91
    Add to Cart

    DURATION
    PRICE

Supplemental Materials

What is included with this book?

Summary

This book is aimed at existing C++/Qt programmers and presents ideas and techniques that are too advanced or specialized (although not necessarily difficult), for a first book on Qt.

Qt has now grown to over 700 classes and well over a million words of documentation, far too much to cover in a single volume. So instead of covering everything very thinly, the book focuses on key areas of Qt technology and tries to provide more comprehensive coverage than is available elsewhere.

The book is completely practical in emphasis, with every technique illustrated by working code. The examples show Qt best practices, and have been tested on Linux, Mac OS X, and Windows, using Qt 4.6 and where possible (e.g., using #if QT_VERSION), Qt 4.5. (The examples and a sample chapter can be downloaded from the book's web page. Amazon don't allow URLs so google for "qtrac" to find it.)

The book's main themes are hybrid desktop/Internet applications, threading, rich text handling, Qt's graphics/view architecture, and Qt's model/view architecture (to which four chapters are devoted), although many other topics are covered. Besides each chapter's main subject, lots of other classes, methods, and techniques are used wherever they make sense, to show as many Qt features as possible. So even the most experienced Qt programmer should discover aspects of Qt they weren't aware of, discover new techniques, and be inspired with new ideas.

Master Qt's Most Powerful APIs, Patterns, and Development Practices.

Qt has evolved into a remarkably powerful solution for cross-platform desktop, Web, and mobile development. However, even most experienced Qt programmers only use a fraction of its capabilities. Moreover, practical information about Qt's newest features has been scarce--until now.

Advanced Qt Programming shows developers exactly how to take full advantage of Qt 4.6's most valuable new APIs, application patterns, and development practices. Authored by world-renowned Qt expert Mark Summerfield, this book focuses on the techniques that offer the most power and flexibility with the least added complexity.

Summerfield focuses especially on model/view and graphics/view programming, hybrid desktop/Web applications, threading, and applications incorporating media and rich text. Throughout, he presents realistic, downloadable code examples, all thoroughly tested for Qt 4.6 and designed to anticipate future versions of Qt.

The book:

-Walks through using Qt with WebKit to create robust hybrid desktop/Internet applications

-Shows how to use the Phonon framework to build powerful media applications without managing low-level details

-Presents state-of-the-art techniques for working with model/view table and tree models, delegates, and views

-Explains how to write more effective threaded programs with QtConcurrent and QThread

-Includes detailed coverage of creating rich text editors and documents

-Thoroughly covers graphics/view programming: architecture, windows, widgets, layouts, scenes, and more

-Introduces Qt's powerful animation and state machine frameworks

“A good book on advanced Qt programming has been missing in the arsenal of Qt programmers. I’m very happy that Mark has written one. He is a fantastic technical writer with all the necessary background to write authoritatively about Qt programming. ... In other words: You are in for a treat! You are holding in your hands an excellent opportunity to expand on your knowledge of all the cool stuff you can do with Qt.”-Eirik Chambe-Eng, cocreator of Qt

Author Biography

Mark Summerfield owns Qtrac Ltd., where he works as an independent consultant, programmer, author, editor, and trainer specializing in C++, Qt, Python, and PyQt. During nearly three years as documentation manager for Trolltech (now Nokia’s Qt Development Frameworks), he founded and edited the Qt Quarterly technical journal. His books include Rapid GUI Programming with Python and Qt (Prentice Hall, 2008) and Programming in Python 3, Second Edition (Addison-Wesley, 2010). With Jasmin Blanchette, he coauthored C++ GUI Programming with Qt 4, Second Edition (Prentice Hall, 2008).

Table of Contents

List of Tables xiii

Foreword xv

 

Introduction 1

 

Chapter 1: Hybrid Desktop/Internet Applications 5

Internet-Aware Widgets 6

Using WebKit 21

 

Chapter 2: Audio and Video 53

Using QSound and QMovie 54

The Phonon Multimedia Framework 60

 

Chapter 3: Model/View Table Models 87

Qt’s Model/View Architecture 88

Using QStandardItemModels for Tables 90

Creating Custom Table Models 113

 

Chapter 4: Model/View Tree Models 129

Using QStandardItemModels for Trees 130

Creating Custom Tree Models 151

 

Chapter 5: Model/View Delegates 185

Datatype-Specific Editors 186

Datatype-Specific Delegates 188

Model-Specific Delegates 201

 

Chapter 6: Model/View Views 207

QAbstractItemView Subclasses 208

Model-Specific Visualizing Views 224

 

Chapter 7: Threading with QtConcurrent 245

Executing Functions in Threads 248

Filtering and Mapping in Threads 261

 

Chapter 8: Threading with QThread 287

Processing Independent Items 287

Processing Shared Items 302

 

Chapter 9: Creating Rich Text Editors 317

Introducing QTextDocument 318

Creating Custom Text Editors 320

A Rich Text Single Line Editor 342

Multi-line Rich Text Editing 353

 

Chapter 10: Creating Rich Text Documents 359

Exported QTextDocument File Quality 361

Creating QTextDocuments 364

Exporting and Printing Documents 371

Painting Pages 379

 

Chapter 11: Creating Graphics/View Windows 389

The Graphics/View Architecture 390

Graphics/View Widgets and Layouts 392

Introducing Graphics Items 399

 

Chapter 12: Creating Graphics/View Scenes 409

Scenes, Items, and Actions 411

Enhancing QGraphicsView 439

Creating a Dock Widget Toolbox 440

Creating Custom Graphics Items 447

 

Chapter 13: The Animation and State Machine Frameworks 469

Introducing the Animation Framework 469

Introducing the State Machine Framework 474

Combining Animations and State Machines 481

 

Epilogue 491

 

Selected Bibliography 495

 

Index 499

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program