ATF Programmer's Guide

HarukaK edited this page Mar 18, 2015 · 2 revisions
Clone this wiki locally

Table of Contents

The ATF Programmer's Guide assists programmers in writing ATF applications. Its topics include:

  • Using and creating Managed Extensibility Framework (MEF) components in ATF to quickly add capabilities to your application.
  • Learning about key ATF concepts, such as adaptation and contexts.
  • Seeing how basic tasks, such as adding commands and controls, are done in ATF.
Start learning how to use ATF at ATF Getting Started and ATF Tutorials.

ATF Application Basics

Learn the basics of building an ATF application.

  • ATF Application Basics and Services: Information on basic structure of an ATF-based application, for both WinForms and ATF, including discussing the Application Shell Framework.
  • Documents in ATF: Using components to track documents that a user is working on.
  • Controls in ATF: How to use controls in ATF, including the ControlHostService component, and a survey of ATF custom controls and dialogs.
  • Commands in ATF: Adding custom commands for application menus, buttons, and other controls, including context menus.

Windows Presentation Foundation (WPF) in ATF

ATF provides in depth support for WPF.

  • WPF Support: Discusses how WPF support differs from WinForms, basic WPF support, and specific topics such as WPF ViewModels.

Using Managed Extensibility Framework (MEF)

ATF uses MEF to make it easy to build applications with its extensive set of components.

  • MEF with ATF: Introduction to the Managed Extensibility Framework (MEF), and how to use existing MEF components in ATF and develop your own components.

Key ATF Application Features

Use these powerful ATF features to speed development.

  • Adaptation in ATF: How to support different kinds of data models and managed data stores, such as a DOM or other CLR objects, by converting objects to other types.
  • Instancing In ATF: Using the Instancing Framework, which works with object instances that can be edited, that is, copied, inserted, or deleted.
  • ATF Contexts: Using the variety of ATF contexts, which are logical views of application data presented to a user for viewing or editing.
  • Property Editing in ATF: How to edit properties of application data, setting up property descriptors, value editors, editing controls, and converters, and using property editing components.

Using the Document Object Model (DOM)

Using the DOM simplifies a lot of development. Some important concepts, such as adaptation and contexts, apply to the DOM, and you should probably read the sections Adaptation in ATF and ATF Contexts before the DOM section. For more details on using the ATF DOM, download the ATF Programmer's Guide: Document Object Model (DOM) from ATF Documentation.

  • DOM in a Nutshell: What you need to know to use the ATF Document Object Model (DOM), which is a framework for managing application data as a tree of nodes that can be adapted to other objects, edited, monitored, and stored persistently.


ATF's samples demonstrate its features.

Development Process

These ATF features aid development and debugging.

Specialized Topics

These ATF features can be especially useful in developing game tools.

  • Graphs in ATF: Description of graph support in ATF, such as in circuits and statecharts.
  • Timelines in ATF: Discussion of timelines, which are graphical representations of time-sequences.
  • LiveConnectService Component: Describes LiveConnectService, which provides easy access to LiveConnect, a lightweight communications technology for client-to-client communication.
  • OSC Support: Describes the support for OSC, Open Sound Control, a standard for communicating among computers, and multimedia and other devices, such as sound synthesizers.