throbber
0_I001
`
`EICROSOET
`/INDowS
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Cover
`
`

`

`PUBLISHED
`
`BY
`
`Microsoft
`
`Press
`
`Division
`One Microsoft
`
`of Microsoft
`
`Corporation
`
`Way
`Redmond Washington 98052
`
`6399
`
`Copyright
`
`1995 by Microsoft
`
`Corporation
`
`All rights reserved No part of the contents
`in any form or by any means withoot
`
`of this book may be reprodoced or transmitted
`the written permission
`of the publisher
`
`Library of Congress Cataloging-in
`The Windows
`
`interface guidelines
`cm
`index
`ISBN 1-55615 679-0
`
`Includes
`
`Publication
`
`Data
`
`for software
`
`design
`
`Microsoft Windows Computer file
`
`systems
`
`Computer
`
`software--Development
`
`User interfaces Computer
`Microsoft
`
`Corporation
`QA76 76.W56W553
`dc2O
`
`005.265-
`
`t995
`
`Printed
`
`and bound
`
`in the United States of America
`
`QEQE
`
`95 330
`
`CIP
`
`Distributed
`
`to the book
`
`trade in Canada by Macmillan
`
`of Canada
`
`division of Canada Publishing
`
`Corporation
`
`CIP catalogue
`
`record
`
`for this book
`
`is available
`
`from the British Library
`
`Microsoft
`
`Press books
`
`are available
`
`through
`
`booksellers
`
`and distributors worldwide
`
`Por further
`
`information
`
`about
`
`international
`
`editions
`
`Corporation
`
`office Or
`
`contact Microsoft
`
`Press International
`
`contact yoor local Microsoft
`fax 206 936 7329
`
`directly at
`
`Information
`
`in this document
`
`is subject
`
`notice
`
`and does
`
`not
`
`represent
`
`commitment
`
`on the
`
`to change without
`names and data used
`part of Microsoft
`in examples herein
`Corporation Companies
`noted No part of
`this document may be reproduced or transmitted
`in any form or by any means
`or mechanical
`the express written permission
`for any purpose without
`of Microsoft
`
`otherwise
`
`electronic
`
`are fictitious
`
`unless
`
`Corporation
`
`Microsoft
`
`property
`
`may have patents or pending patent applications
`in this document
`subject matter
`
`rights covering
`
`trademarks
`copyrights
`The furnishing of this document
`
`or other
`
`intellectual
`
`does
`
`not give you
`
`any license
`
`to these patents
`
`trademarks
`
`copyrights
`
`or other
`
`intellectual
`
`property
`
`rights
`
`Adobe Postscript
`
`and 11FF are trademarks
`
`trademarks
`
`Inc Frutiger
`
`is
`
`registered
`
`are registered
`
`trademarks
`
`of
`
`registered
`
`is
`
`trademark of Hilgraeve Inc
`
`and Lotus
`
`are
`
`Press logo
`
`of Adobe Systems Inc Apple and TrueType
`Inc Borland and Quattro
`of Apple Compoter
`of Borland International
`trademarks
`are registered
`trademark of Eltra Corporation HP and LaserJet
`are registered
`Hewlett Packard Company
`was developed for Microsoft
`by Colorado Memory Systems Inc
`Backup
`division of Hewlett Packard Company Hyperlerminal
`Press Microsoft
`of Lotus Development
`Corporation Microsoft Microsoft
`trademarks
`MS MS DOS PowerPoint
`logo and XENIX are registered
`Visual Basic Windows Windows
`trademarks
`and Windows NT is
`Corporation Anal Bodoni Swing and Times New Roman are
`trademark of Microsoft
`PLC Paintbrush
`trademark of Wordstar Atlanta
`
`registered
`
`trademarks
`
`of The Monotype
`
`Corporation
`
`is
`
`Technology Center
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page ii
`
`

`

`Contents
`
`Introduction
`
`Whats New
`How to Use This Guide
`How to Apply the Guidelines
`Conventions Used in This Guide
`
`PART
`
`FUNDAMENTALS
`
`OF DESIGNING
`
`USER INTERACTION
`
`at
`
`flesigft erirtqiplos
`
`and Metiwliptoqy
`
`User-Centered
`
`Design Principles
`
`User in Control
`
`Directness
`
`Consistency
`
`Forgiveness
`Feedback
`
`Aesthetics
`
`Simplicity
`
`Design Methodology
`Balanced Design Team
`The Design Cycle
`Usability Assessment
`
`in the Design Process
`
`Understanding
`
`Users
`
`Design Tradeoffs
`
`xv
`
`xvi
`
`xvii
`
`xviii
`
`12
`
`15
`
`16
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page iii
`
`

`

`Contents
`
`Chapter
`
`Baslu Concepts
`
`IF
`
`Data-Centered
`
`Design
`
`Objects
`
`as Metaphor
`
`Object Characteristics
`
`Relationships
`
`Composition
`
`Persistence
`
`Putting Theory into Practice
`
`The Desktop
`
`The Taskbar
`
`The Start Button
`
`Window Buttons
`
`The Status Area
`
`Icons
`
`Windows
`
`Mouse Input
`Mouse Pointers
`Mouse Actions
`
`Keyboard Input
`
`Text Keys
`
`Access Keys
`Mode Keys
`
`Shortcut Keys
`
`Pen Input
`
`Pen Pointers
`
`Pen Gestures
`
`Pen Recognition
`
`Ink Input
`
`Targeting
`
`iv
`
`The Windows
`
`Interface
`
`Guidelines
`
`for Software Design
`
`17
`
`18
`
`18
`
`19
`
`19
`
`20
`
`20
`
`23
`
`24
`
`25
`
`26
`
`26
`
`26
`
`28
`
`29
`
`29
`
`31
`
`32
`
`33
`
`33
`
`34
`
`35
`
`37
`
`39
`
`40
`
`41
`
`41
`
`42
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page iv
`
`

`

`Contents
`
`Navigation
`Mouse and Pen Navigation
`
`Keyboard Navigation
`
`Selection
`
`Selection Feedback
`
`Scope of Selection
`
`Hierarchical Selection
`
`Mouse Selection
`
`Pen Selection
`
`Keyboard Selection
`
`Selection Shortcuts
`
`Common Conventions
`
`for Supporting
`
`Operations
`
`Operations
`
`for Multiple Selection
`
`Default Operations
`
`and Shortcut Techniques
`
`View Operations
`
`Editing Operations
`
`Editing Text
`
`Handles
`
`Transactions
`
`Properties
`
`Pen-Specific Editing Techniques
`
`Transfer Operations
`Command Method
`
`Direct Manipulation Method
`
`Transfer Feedback
`
`Specialized Transfer Commands
`
`Shortcut Keys for Transfer Operations
`
`Creation Operations
`Copy Command
`New Command
`
`Insert Command
`
`Using Controls
`
`Using Templates
`
`Operations
`
`on Linked Objects
`
`43
`
`44
`
`44
`
`45
`
`46
`
`47
`
`47
`
`48
`
`55
`
`56
`
`57
`
`58
`
`58
`
`59
`
`59
`
`62
`
`62
`
`63
`
`64
`
`65
`
`66
`
`72
`
`74
`
`77
`
`83
`
`86
`
`87
`
`87
`
`87
`
`88
`
`88
`
`88
`
`88
`
`89
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page v
`
`

`

`Contents
`
`PART II WINDOWS INTERFACE
`
`COMPONENTS
`
`Common Types of Windows
`
`Primary Window Components
`Window Frames
`
`Title Bars
`
`Title Bar Icons
`
`Title Text
`
`Title Bar Buttons
`
`Basic Window Operations
`and Deactivating Windows
`Activating
`Opening and Closing Windows
`Moving Windows
`Resizing Windows
`Scrolling Windows
`Splitting Windows
`
`Menus Controls
`
`and Toolbars
`
`Menus
`The Menu Bar and Drop-down Menus
`Cnmmon Drop-dnwn Menus
`Pop up Menus
`Pop up Menu Interaction
`Common Pop-up Menus
`Cascading Menus
`Menu Titles
`Menu Items
`
`Controls
`
`Buttons
`
`List Boxes
`
`Text Fields
`
`Other General Controls
`
`Pen-Specific Controls
`
`Toolbars
`
`and Status Bars
`
`Interaction with Controls in Toolbars
`
`and Status Bars
`
`Support
`
`for User Options
`and Status Bar Controls
`Toolbar
`Common Toolbar Buttons
`
`vi
`
`The Windows
`
`Interface
`
`Guidelines
`
`fnr Software
`
`Design
`
`95
`
`95
`
`96
`
`96
`
`97
`
`98
`
`101
`
`103
`
`103
`
`104
`
`106
`
`106
`
`109
`
`116
`
`121
`
`121
`
`124
`
`126
`
`128
`
`129
`
`133
`
`134
`
`135
`
`140
`
`141
`
`149
`
`157
`
`163
`
`169
`
`172
`
`173
`
`174
`
`175
`
`176
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page vi
`
`

`

`Contents
`
`Chapter
`
`Secondary Windows
`
`Characteristics
`
`of Secondary Windows
`Appearance and Behavior
`Window Placement
`
`Modeless vs Modal
`
`Default Buttons
`in Secondary Windows
`
`Navigation
`
`Validation
`
`of Input
`
`Property Sheets and Inspectors
`
`Property Sheet
`Property Sheet Commands
`
`Interface
`
`Closing
`
`Property Sheet
`
`Property Inspectors
`
`Properties of Multiple Selection
`
`Properties of Heterogeneous Selection
`
`Properties of Grouped Items
`
`Dialog Boxes
`Dialog Box Commands
`
`Layout
`Common Dialog Box Interfaces
`
`Palette Windows
`
`Message Boxes
`Title Bar Text
`Message Box Types
`Command Buttons
`Message Box Text
`
`Popup Windows
`
`in Message Boxes
`
`179
`
`179
`
`183
`
`183
`
`184
`
`185
`
`187
`
`187
`
`188
`
`190
`
`191
`
`191
`
`192
`
`193
`
`193
`
`193
`
`194
`
`194
`
`195
`
`207
`
`209
`
`209
`
`209
`
`212
`
`213
`
`215
`
`The Windows
`
`Interface
`
`Guidelines
`
`for Software Design
`
`vii
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page vii
`
`

`

`Contents
`
`PART Ill DESIGN SPECIFICATIONS
`
`AND GUIDELINES
`
`Single Document Window Interface
`
`Interface
`Multiple Document
`Opening and Closing MDI Windows
`and Sizing \4D1 Windows
`Between MDI Child Windows
`
`Moving
`
`Switching
`
`MDI Alternatives
`
`Workspaces
`
`Workbooks
`
`Projects
`
`Selecting Window Model
`or Task
`
`Presentation of Object
`
`Display Layout
`
`Data-Centered
`
`Design
`Combination of Alternatives
`
`The Registry
`
`Registering Application
`
`State Information
`
`Registering Application
`
`Path Information
`
`Registering File Extensions
`
`Supporting
`
`Creation
`
`Registering Icons
`Registering Commands
`
`Enabling
`Printing
`Registering OLE
`
`Registering Shell Extensions
`the Quick View Command
`Sound Events
`
`Supporting
`
`Registering
`
`Installation
`
`Copying Files
`Providing Access to Your Application
`Designing Your Installation
`
`Program
`
`viii
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`219
`
`220
`
`222
`
`223
`
`225
`
`225
`
`227
`
`229
`
`231
`
`233
`
`233
`
`234
`
`235
`
`235
`
`237
`
`238
`
`241
`
`242
`
`249
`
`250
`
`251
`
`253
`
`253
`
`254
`
`256
`
`257
`
`257
`
`257
`
`260
`
`260
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page viii
`
`

`

`Installing
`
`Fonts
`
`Installing
`
`Your Application
`Uninstalling Your Application
`
`on Network
`
`Supporting
`
`AutoPlay
`
`System Naming Conventions
`
`Taskbar
`
`Integration
`Taskbar Window Buttons
`
`Status Notification
`
`Message Notification
`
`Application Desktop Toolbars
`
`Full-Screen Display
`
`Recycle Bin Integration
`
`Control Panel
`
`Integration
`
`Adding Control Panel Objects
`Adding to the Passwords Object
`
`Plug
`
`and Play Support
`
`System Settings and Notification
`
`Modeless Interaction
`
`The Interaction Model
`
`Creating OLE Embedded and OLE Linked Objects
`
`Transferring Objects
`Inserting New Objects
`
`Displaying Objects
`
`Selecting Objects
`Accessing Commands for Selected Objects
`
`Activating Objects
`
`Outside-in Activation
`
`Inside-out Activation
`
`Container Control of Activation
`
`OLE Visual Editing of OLE Embedded Objects
`The Active Hatched Border
`
`Contents
`
`262
`
`262
`
`263
`
`264
`
`266
`
`268
`
`268
`
`269
`
`270
`
`271
`
`272
`
`273
`
`273
`
`273
`
`273
`
`275
`
`275
`
`276
`
`277
`
`279
`
`279
`
`285
`
`290
`
`293
`
`295
`
`297
`
`297
`
`297
`
`298
`
`300
`
`304
`
`The Windows Interface
`
`Goidelines
`
`for Software Design
`
`ix
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page ix
`
`

`

`Contents
`
`Menu Integration
`
`Keyboard Interface Integration
`
`and Palette Windows
`Toolbars Frame Adornments
`Opening OLE Embedded Objects
`Editing an OLE Linked Object
`Automatic and Manual Updating
`and Links
`
`Operations
`
`Types and Links
`Link Management
`Accessing Properties of OLE Objects
`The Properties Command
`The Links Command
`
`Converting
`
`Types
`
`Using Handles
`
`Undo Operations
`
`for Active and Open Objects
`
`Displaying Messages
`
`Messages
`ObjectApplication
`OLE Linked Object Messages
`Status Line Messages
`
`Contextual User Assistance
`
`Context
`
`Sensitive Help
`
`Guidelines
`
`for Writing Context-Sensitive
`
`Help
`
`Tooltips
`Status Bar Messages
`for Writing Status Bar Messages
`Guidelines
`The Help Command Button
`
`Task-Oriented
`Help
`Task Topic Windows
`for Writing Task Help Topics
`
`Guidelines
`
`Shortcut Buttons
`
`305
`
`308
`
`310
`
`313
`
`316
`
`318
`
`319
`
`320
`
`320
`
`321
`
`321
`
`324
`
`326
`
`329
`
`330
`
`332
`
`332
`
`334
`
`336
`
`339
`
`339
`
`342
`
`343
`
`344
`
`345
`
`346
`
`347
`
`347
`
`348
`
`349
`
`The Windows Interface
`
`Guidelines
`
`for Software
`
`Design
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page x
`
`

`

`Contents
`
`Reference Help
`The Reference
`
`Help Window
`
`Guidelines
`
`for Writing Reference Help
`
`The Help Topics Browser
`The Help Topics
`
`Tabs
`
`Wizards
`
`Guidelines
`
`Guidelines
`
`for Designing Wizards
`for Wizard Pages
`
`for Writing Text
`
`Visual Communication
`
`Composition and Organization
`
`Color
`
`Fonts
`
`Dimensionality
`
`Design of Visual Elements
`Basic Border Styles
`Window Border Style
`Button Border Styles
`Field Border Style
`Status Field Border Style
`Grouping Border Style
`Visual States tor Controls
`
`Layout
`
`Font and Size
`
`Capitalization
`Grouping and Spacing
`
`Alignment
`
`Placement
`
`Design of Graphic
`
`Images
`
`Icon Design
`
`Pointer Design
`
`Selection Appearance
`
`Highlighting
`
`Handles
`
`TransferAppearance
`
`Open Appearance
`
`Animation
`
`350
`
`351
`
`352
`
`354
`
`354
`
`358
`
`359
`
`363
`
`365
`
`366
`
`362
`
`370
`
`371
`
`372
`
`372
`
`373
`
`374
`
`375
`
`376
`
`376
`
`377
`
`384
`
`384
`
`387
`
`388
`
`389
`
`389
`
`390
`
`391
`
`394
`
`395
`
`396
`
`397
`
`398
`
`399
`
`400
`
`The Windows Interface Guidehnes for Software
`
`Design
`
`xi
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page xi
`
`

`

`Contents
`
`Sound
`
`Accessibility
`
`Types of Disabilities
`Types of Accessibility Aids
`with Screen Review Utilities
`
`Compatibility
`
`The Users Point of Focus
`
`Timing and Navigational
`
`Interfaces
`
`Color
`Keyboard and Mouse Interface
`and Support
`
`Documentation
`
`Packaging
`
`Usability Testing
`
`Internationalization
`
`Text
`
`Graphics
`
`Keyboards
`
`Character
`
`Sets
`
`Formats
`
`Layout
`
`References
`
`to Unsupported Features
`
`Network Computing
`
`Leverage System Support
`
`Client-Server Applications
`
`Shared Data Files
`
`Record Processing
`
`Telephony
`
`Microsoft Exchange
`
`Coexisting with Other
`Adding Menu Items and Toolbar
`
`Information
`
`Services
`
`Buttons
`
`Supporting
`
`Connections
`
`Installing
`
`Information
`
`Services
`
`xli
`
`The Windows Interface
`
`Guidelines
`
`for Software
`
`Design
`
`401
`
`403
`
`404
`
`406
`
`408
`
`411
`
`411
`
`412
`
`413
`
`414
`
`414
`
`415
`
`416
`
`417
`
`418
`
`419
`
`419
`
`420
`
`420
`
`421
`
`421
`
`421
`
`422
`
`422
`
`423
`
`424
`
`424
`
`424
`
`425
`
`425
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page xii
`
`

`

`PART IV APPENDIXES
`
`Appendix
`
`Mouse
`
`Interface Summary
`
`Interaction Guidelines
`
`for Common
`Unmodified Mouse Actions
`
`Interaction Guidelines
`
`for Using the SHIFT Key
`to Modify Mouse Actions
`for Using the CTRL Key
`to Modify Mouse Actions
`
`Interaction Guidelines
`
`Appendix
`
`Keyboard Interface Summary
`
`Common Navigation
`Keys
`Common Shortcut Keys
`Windows Keys
`
`Accessibility Keys
`Access Key Assignments
`
`Appendix
`
`Guidelines Summary
`
`General Design
`
`Design Process
`Input and Interaction
`Windows
`
`Control Usage
`
`Integration
`
`User Assistance
`
`Visual Design
`
`Sound
`
`Accessibility
`
`International Users
`
`Network Users
`
`Contents
`
`429
`
`431
`
`435
`
`437
`
`438
`
`439
`
`440
`
`441
`
`443
`
`444
`
`444
`
`445
`
`446
`
`447
`
`448
`
`448
`
`449
`
`449
`
`450
`
`450
`
`The Windows Interface
`
`Guidelines
`
`for Software
`
`Design
`
`xiii
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page xiii
`
`

`

`Contents
`
`Microsoft Windows
`3.1
`Microsoft Windows NT 3.51
`
`International Word Lists
`
`Glossary
`
`Bibliography
`
`Index
`
`451
`
`453
`
`455
`
`511
`
`523
`
`527
`
`xiv
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page xiv
`
`

`

`Introduction
`
`Welcome to The Windows
`
`Interface Guidelines for Software Design
`
`to designing software that
`runs with the
`an indispensable guide
`Microsoft Windows0 operating system The design of your
`interface more than anything else affects how
`softwares
`
`user
`
`experiences
`
`your product This guide promotes good interface
`design
`within and across Windows-
`and visual and functional
`
`consistency
`
`based applications
`
`Whats New
`
`that
`
`is from an
`
`In re
`one
`and designers may need to rethink the interface
`the basic components and the respective operations
`their software
`and properties that apply to them This is important because from
`users perspective
`applications have become
`
`sponse developers
`
`of
`
`less the primary
`
`focus
`
`and more the engines
`the objects in the interface
`behind
`now interact with data without having
`on their
`allowing them to better
`
`concentrate
`
`tasks
`
`Users can
`
`to think about applications
`
`When adapting
`
`you consider
`
`your existing Windows
`the following
`
`important
`
`based
`
`software make certain
`
`design
`
`aspects
`
`Title bar text and icons
`
`Property sheets
`
`Transfer model
`
`including
`
`drag and drop
`
`the direction set by Microsoft OLE the enhancements in
`Continuing
`the Windows user interface provide
`from the
`design evolution
`basic and graphical
`to the more object oriented
`to more data centered
`
`application-centered
`
`interface
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page xvii
`
`

`

`Introduction
`
`Pop-up menus
`
`New controls
`
`Integration with the system
`
`Help interface
`
`OLE embedding and OLE linking
`
`Visual design of windows controls
`
`and icons
`
`Window management
`
`Presentation of minimized windows
`
`These elements
`
`are covered
`
`in depth throughout
`
`this guide
`
`How to Use This Guide
`
`for those who are designing and developing
`This guide is intended
`Windows
`based
`software It may also be appropriate for
`those inter
`better undertanding of the Windows environment and the
`of the
`interface principles it supports The content
`
`human-computer
`
`ested in
`
`guide
`
`covers
`
`the following
`
`areas
`
`Basic
`
`design principles and process
`fundamental
`design phi
`about human behavior design methodol
`losophy assumptions
`embodied in the interface
`ogy and concepts
`
`Interface elements
`
`components in the interface as well
`
`descriptive information
`as when and how to use them
`
`about
`
`the various
`
`information
`about
`Design details
`and style when using the elements
`
`tive design
`
`specific
`
`the details of effec
`
`of the interface
`
`Additional
`
`information
`
`tion
`
`bibliography
`
`summary and quick
`comprehensive word list
`
`reference informa
`
`in numerous lan
`
`guages
`
`to assist
`
`in product
`
`localization and
`
`glossary
`
`xviii
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page xviii
`
`

`

`This guide focuses
`
`ou the design and elements
`
`of an applications
`
`user interface Although an occasional
`
`technical
`
`reference is
`
`included
`
`this guide
`
`does not generally cover detailed information
`
`Introduction
`
`about
`technical
`implementation
`faces APIs because
`
`mentation
`
`or application programming
`there are many different
`types of develupment
`software for Windows
`The docu
`tools that you can use to develop
`included with the Microsoft Win32 Software Develop
`ment Kit SDK is one source of information
`specific APIs
`about
`
`inter
`
`How to Apply the Guidelines
`
`This guide promotes visual and functional
`consistency
`across the Windows operating system Although following
`
`within and
`
`these
`
`guidelines is encouraged you are free to adopt
`best suit your software However by following
`their skills and experience
`enable users to transfer
`
`the guidelines that
`
`these guidelines
`
`you
`from one task to
`
`the next and to learn new tasks easily In addition
`breaks down the lines between traditional
`
`data-centered
`
`design
`
`evolution toward
`
`appli
`
`cation domains making inconsistencies
`
`in the interface more obvi
`
`ous and distracting
`
`to users
`
`to the design guidelines does not guarantee
`Conversely adhering
`usability The guidelines are valuable tools but they must be com
`bined with other factors
`as part of an effecti\
`software design pro
`as application of design principles task analysis
`
`cess such
`
`prototyping
`
`and usability
`
`evaluation
`
`In general avoid
`
`adding
`
`that you do so in the
`You may extend
`these guidelines
`provided
`spirit of the principles on which they are based and maintain
`rca
`with the visual and behavioral
`sonable level of consistency
`aspects of
`the Windows interface
`new elements
`or
`them More
`
`behaviors
`
`unless the interface does not otherwise support
`for common ele
`
`avoid
`
`an existing behavior
`changing
`importantly
`user builds up expectations
`Inconsistencies
`not only confuse
`
`ments
`
`face
`
`unnecessary
`
`complexity
`
`about
`
`the workings of an inter
`
`the user
`
`they also add
`
`The Windows Interface
`
`Guidelines
`
`tor Software Design
`
`xix
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page xix
`
`

`

`Introduction
`
`These guidelines supersede
`
`those issued for Windows
`
`version 3.1 and
`
`of applica
`to the development
`all previous releases arid are specific
`for Microsoft Windows Microsoft Windows NTTM
`tions designed
`Workstation and Mic cosoft Windows NT Server
`relationship between these guidelines and those provided
`
`There is no direct
`
`for other
`
`operating systems
`
`For more information
`
`developing
`
`applications
`
`about special considerations
`concerning
`for both Windows 95 and Windows NT
`
`operating system see Appendix
`of Windows
`
`Supporting Specific Versions
`
`Conventions Used in This Guide
`
`The following
`
`conventions
`
`are used
`
`throughout
`
`this guide
`
`Convention
`
`Indicates
`
`rI
`LJ
`
`SMALL
`
`CAPITAL
`
`LETTERS
`
`KEYKEY
`
`Italic text
`
`Bold text
`
`reference
`
`tn related tnpics
`
`in this guide
`
`or other books
`
`that provide more
`
`information about
`
`the topic
`
`Additional
`
`or special
`
`information about
`
`the topic
`
`Names of keys on the keybnard
`example SHIFT CTRL or ALT
`
`fnr
`
`for which the user
`Key combinations
`must press and hold down one key and
`
`another
`then press
`CTRLP or ALTF4
`
`for example
`
`New terms and variable
`such as parameters
`
`expressions
`
`Win32 API keywords
`
`and registry
`
`key
`
`entries
`
`Registry text
`
`Examples of registry entries
`
`Optional
`
`information
`
`xx
`
`The Windows
`
`Interface
`
`Guidelines
`
`for Software Design
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page xx
`
`

`

`CHAPTER
`
`Menus Controls
`and Toolbars
`
`Microsoft Windows provides
`number of interactive
`components
`that make it easy to provide interfaces
`to carry out commands and
`These components also provide
`specify values
`consistent structure
`and set of interface
`conventions
`This chapter describes the interac
`and how to use them
`
`of menus controls
`
`and toolbars
`
`tive elements
`
`Menus
`
`Menus list commands available to the user By making commands
`on
`visible menus
`leverage user recognition rather than depending
`of command names and syntax
`
`user recollection
`
`There are several
`types of menus including
`drop-down menus pop
`up menus and cascading menus The following
`these
`sections cover
`in more detail
`menus
`
`The Menu Bar and Drop-down Menus
`
`menu bar one of the most common forms of menu interface
`
`is
`
`special area displayed across the top of
`directly
`menu bar includes
`
`window
`
`title bar as shown in Figure 7.1
`tries called menu titles Each menu title provides access to
`drop
`down menu composed
`of menu items or choices
`of
`collection
`
`set of en
`
`below the
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page 167
`
`

`

`Chapter
`
`Menus Controls and Tolbars
`
`Figure
`
`7.27
`
`progress indicator
`
`Because
`
`noninteractive
`
`information
`
`progress indicator only displays information
`it is typically
`to add static text or other
`However it may be usefnl
`to help communicate the purpose
`of the progress
`indicator If yon do include text place it ontside of the progress
`
`indicator control
`
`Use the control
`
`as
`
`feedback
`
`cesses as
`
`supplement
`
`to changing
`
`for long operations or background pro
`The control provides
`
`the pointer
`
`more visual
`
`feedback
`
`to the user about
`
`You can also use the control
`
`to reflect
`
`the progress of the process
`back
`
`the progression of
`
`For more
`
`information
`
`about
`
`boxes
`see Chapter
`message
`Secondary Windows
`about
`
`information
`
`status
`
`bars see
`
`For more
`
`ground process
`
`activities
`
`leaving the pointers
`image to reflect
`When determining whether
`to use
`foreground
`indicator in message box or status bar consider how modal
`eration or process
`the progress indicator represents
`
`progress
`the op
`
`interactivity
`
`the section Toolbars
`
`and Status
`
`for
`
`Bars later
`
`in this chapter
`
`Tooltip Controls
`
`tooltip is
`
`the basic functionality of
`tooltip control provdes
`tooltip
`small pop-up window that
`includes descriptive text dis
`played when the user moves
`as shown
`the pointer over
`Figure 7.28 The tooltip appears after
`matically removed when the user clicks
`pointer off the control
`
`control
`
`in
`
`short time-out
`
`and is auto
`
`the control or moves
`
`the
`
`For more
`
`information
`
`about
`
`the use of tooltips
`ter 12 User Assistance
`
`see Chap
`
`For more
`
`information
`
`about
`
`in toolbars see
`
`the use of tooltips
`the section Tool
`
`bars
`
`and Status Bars later
`
`in this
`
`chapter
`
`Figure 718
`
`tooltip control
`
`The system displays
`pointer but automatically
`offscreen However
`
`tooltip control at the lower
`
`right of the
`
`adjusts the tooltip to avoid displaying it
`
`centered
`
`under
`
`the control
`
`be displayed
`for text boxes the tooltip should
`it identifies The control supports an op
`
`tion to support
`
`this behavior
`
`168
`
`The Windows Interface Guide ines for Software Design
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page 168
`
`

`

`User Assistance
`
`in
`
`selection
`
`Its content
`
`explanatory
`
`CHAPTER
`
`and
`
`display of
`
`require explicit user
`
`of contextual
`
`procedural
`But user assistance
`
`Online user assistance is an important part of
`prodncts design
`can be supported
`variety of ways from automatic
`to commands that
`information
`based
`on context
`can be composed
`information
`
`or tutorial
`reference
`be simple efficient
`in the interface This chapter
`obtain it without becoming lost
`to create common
`description of the system support
`provides
`online forms of user assistance support and guidelines for implemen
`tation For more information
`about authoring Help files
`see
`included in the Microsoft Win32 Software
`Development Kit SDK
`
`should
`
`always
`
`and relevant so that
`
`user can
`
`the documentation
`
`Contextual User Assistance
`
`contextual
`
`form of user assistance provides information
`
`particular object and its context
`It answers questions such
`use it This section covers
`is this and Why would
`basic ways
`to support contextual user assistance in your application
`
`some of the
`
`about
`as What
`
`Context-Sensitive Help
`
`The Whats This command supports
`information
`including controls in
`about any object on the screen
`property sheets and dialog boxes This form of contextual user
`
`user obtaining contextual
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page 342
`
`

`

`As an option you can provide context-sensitive Help information
`file types by registering Whats This command for
`your supported
`the type as shown in Figure 12.5 This allows the user to choose
`the
`Whats This command from the file icons pop-up menu to get
`type When defining this
`information
`about
`an icon representing that
`include the type name and
`brief description of
`using the previously
`described
`
`for
`
`User Assistance
`
`Chapter
`
`12
`
`For more
`
`information
`
`about
`
`registering commands
`
`for file
`
`types
`
`and
`
`about
`
`type
`
`names
`
`see
`
`10
`
`Integrating
`
`with
`
`the
`
`Chapter
`System
`
`Help information
`
`its function
`
`guidelines
`
`Microsoft WordPad
`
`document
`
`You can open
`
`this document
`
`to view or
`
`edit_it._j
`
`Figure
`
`12.5 Context-sensitive
`
`Help information
`
`for an icon
`
`Tooltips
`
`Another form of contextual user assistance are tooltips Tooltips are
`control when the
`small pop-up windows that display the name of
`label The most common use of tooltips
`control has no text
`toolbar buttons that have graphic labels
`as shown in Figure 12.6 but
`they can be used
`for any control
`
`is for
`
`FitPIEIiit
`
`æI1F
`
`Id
`
`S.iev cI iiik
`
`Ii
`
`ii
`
`i.III__I 5fiiij
`
`Cctriterjls of PuLilic 1Dl
`
`11111
`
`Tooltip
`
`Figure
`
`12.6
`
`tooltip for
`
`toolbar
`
`button
`
`Display
`
`the button for
`
`until
`
`the pointer or pointing device remains
`tooltip after
`short period of time The tooltip remains
`the button or moves off of the control
`the user presses
`another
`time-out
`If the user moves
`the pointer directly
`to another
`tooltip ignore the time-out and display the new
`control supporting
`tooltip immediately replacing the former one
`
`over
`
`displayed
`
`or after
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`343
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page 343
`
`

`

`Chapter
`
`12 User Assistance
`
`provides support
`
`If you use the standard
`
`toolbar control
`
`the system automatically
`for tootips It also includes
`tooltip control
`that can
`If you create your own tooltip controls
`be used
`in other contexts
`make them consistent with the system-supplied
`controls
`
`For more
`
`information
`
`about
`
`toolbars
`
`see Chapter
`
`and loolbars
`
`and tooltip controls
`Menus Controls
`
`Status Bar Messages
`
`You can also use
`
`status
`
`However
`
`status bar
`
`elsewhere
`
`in the
`
`bar to provide contextual user assistance
`the users choice of displaying
`if you support
`avoid using it for displaying information
`or access to functions that
`to basic operation and not provided
`are essential
`interface
`In addition
`because
`the status bars location
`applications
`may not be near
`the user area of activity the user may not always
`notice
`As
`bar message
`result
`it is best to consider
`status
`bar messages as
`form of user asci stance
`
`status
`
`secondary
`
`or supplemental
`
`information
`
`In addition to displaying state
`about
`the context of the
`in the window you can display descriptive messages about
`activity
`menu and toolbar buttons
`as shown
`in Figure 12.7 Like tooltips the
`window
`typically must be active to support
`these messages When
`the user moves
`the pointer over
`toolbar button or presses
`the mouse
`button on menu or button display
`short message
`the describing
`command
`use of the associated
`
`344
`
`The Windows Interface Guide ines fnr Software Design
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Page 344
`
`

`

`fliIll ftQi ti1 1i1I.
`
`Here are the N4icrosoftL
`
`visuaHy
`
`and functionally
`
`consistent user
`
`interfaces for applications that
`
`operating
`
`for all
`
`release of Windows
`
`regardess of
`
`guidelines for creating well-designed
`run on the Microsoft Windows
`system TE WOOW NTERFAc LLiS SOFTWABE DED is an essential handbook
`programmers and designers workng with the latost
`tools used
`
`experience
`
`level or development
`
`interface design and design methodologies
`This bock covers the basic principles
`user
`and specifies flow data-ceitereo concepts such as objects and pioperties can
`information on mouse keyboard ano pen
`design It nciuoes oetailed
`and on how to use the common interface
`
`elements suopied by the system This book also
`
`be applied
`
`interaction
`
`to interface
`
`includes
`
`nfcrmation
`
`about
`
`special
`
`considerations
`
`such as network
`
`computing internationai
`
`users and users with disabilities
`
`TQppcs fficS
`
`General
`
`selection viewng
`input techniquesnavigation
`anc direct manipulation methods
`including both command
`
`edting and ceadon
`such
`drag and drop
`
`and secondary types and their components including property
`Windowsprimary
`and pop-up windows
`dialog boxes message boxes palette windows
`
`sheets
`
`Ivlenus controlc and roolbarstypes
`Microsoft OLEhow to support
`design interfaces for OLE embedded and linked
`end otheviorms
`vsual editing
`
`objects
`
`of activation
`
`and tneir components
`
`an.d when to use them
`
`User assistancehow to use contextual
`
`forms of help including
`
`tooltips and wizards
`
`with the sy.stem-----cesigning
`Integration
`and operates consistently with Windows
`
`your software so tnat its interface fnnctons
`
`Visual designeffective
`
`use of color
`
`layout
`
`fonts and graphics
`
`If you are developing
`
`or are considering
`
`WDOWS TEFt JOFJWFS FOB OWE E5 is
`
`oevelooing appicauons for Microsoft Windows
`
`key resource
`
`Opei sting Systems
`
`Windo
`
`vs/Pi
`
`ogi amming
`
`ISBN 1556156790
`HHI
`
`90000
`
`Dfl
`91 781556156793
`
`U.S.
`
`U.K
`
`canada
`
`$22S3
`27.49
`
`$39.95
`
`Rsnss
`
`dl
`
`Meta Platforms, Inc.
`Meta Platforms, Inc. v. Angel Technologies Group
`LLC IPR2023-00058
`Exhibit 1044 - Back Cover
`
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket