Example programs

| Home | Libraries | People | FAQ | More

## Example programs

### Miscellaneous Tutorial Examples

#### hello_world_slot

This example is a basic example of connecting a slot to a signal and then invoking the signal.

Download hello_world_slot.cpp.

#### hello_world_multi_slot

This example extends the hello_world_slot example slightly by connecting more than one slot to the signal before invoking it.

Download hello_world_multi_slot.cpp.

#### ordering_slots

This example extends the hello_world_multi_slot example slightly by using slot groups to specify the order slots should be invoked.

Download ordering_slots.cpp.

#### slot_arguments

The slot_arguments program shows how to pass arguments from a signal invocation to slots.

Download slot_arguments.cpp.

#### signal_return_value

This example shows how to return a value from slots to the signal invocation. It uses the default `optional_last_value` combiner.

Download signal_return_value.cpp.

#### custom_combiners

This example shows more returning of values from slots to the signal invocation. This time, custom combiners are defined and used.

Download custom_combiners.cpp.

#### disconnect_and_block

This example demonstrates various means of manually disconnecting slots, as well as temporarily blocking them via `shared_connection_block`.

Download disconnect_and_block.cpp.

#### passing_slots

This example demonstrates the passing of slot functions to a private signal through a non-template interface.

Download passing_slots.cpp.

#### extended_slot

This example demonstrates connecting an extended slot to a signal. An extended slot accepts a reference to its invoking signal-slot connection as an additional argument, permitting the slot to temporarily block or permanently disconnect itself.

Download extended_slot.cpp.

### Document-View

#### doc_view

This is the document-view example program which is described in the tutorial. It shows usage of a signal and slots to implement two different views of a text document.

Download doc_view.cpp.

#### doc_view_acm

This program modifies the original doc_view.cpp example to employ automatic connection management.

Download doc_view_acm.cpp.

#### doc_view_acm_deconstruct

This program modifies the doc_view_acm.cpp example to use postconstructors and the `deconstruct()` factory function.

Download doc_view_acm_deconstruct.cpp.

### Postconstructors and Predestructors with `deconstruct()`

#### postconstructor_ex1

This program is a basic example of how to define a class with a postconstructor which uses `deconstruct()` as its factory function.

Download postconstructor_ex1.

#### postconstructor_ex2

This program extends the postconstructor_ex1 example slightly, by additionally passing arguments from the `deconstruct()` call through to the class' constructor and postconstructor.

Download postconstructor_ex2.

#### predestructor_example

This program is a basic example of how to define a class with a predestructor which uses `deconstruct()` as its factory function.

Download predestructor_example.

Last revised: June 12, 2007 at 14:01:23 -0400 |