|
Last change
on this file was
19654,
checked in by westram, 5 weeks ago
|
- reintegrates 'macros' into 'trunk'
- improves program termination (#867)
- introduces MacroExitor classes
- handles confirmation (to quit)
- waits for macros to finish, then exits w/o confirmation
- provides specialized termination for different programs via derived classes
- has been implemented for "normal" arb and merge-tool.
- introduces ARB_disconnect_from_db
- generalizes code to terminate all interconnections between GUI, database and macro-ability
- allow to install atdisconnect-callbacks
- usable by modules operating on a database; allow to inform module that database will vanish.
- now used by all arb applications to disconnect from all their database(s), except the properties.
- fixes some broken behavior
- merge-tool
- crashed when quitting via macro
- wrong restarts, if originally started with arguments,
- importer
- failed to record/playback macros
- crashed in modules operating on the temporary import database
- database browser
- crashed on disappearing database
- adds: log:branches/macros@19620:19653
|
|
File size:
1.5 KB
|
| Line | |
|---|
| 1 | // ============================================================= // |
|---|
| 2 | // // |
|---|
| 3 | // File : macros.hxx // |
|---|
| 4 | // Purpose : macro interface // |
|---|
| 5 | // // |
|---|
| 6 | // Coded by Ralf Westram (coder@reallysoft.de) in March 2013 // |
|---|
| 7 | // Institute of Microbiology (Technical University Munich) // |
|---|
| 8 | // http://www.arb-home.de/ // |
|---|
| 9 | // // |
|---|
| 10 | // ============================================================= // |
|---|
| 11 | |
|---|
| 12 | #ifndef MACROS_HXX |
|---|
| 13 | #define MACROS_HXX |
|---|
| 14 | |
|---|
| 15 | #ifndef ARB_CORE_H |
|---|
| 16 | #include <arb_core.h> |
|---|
| 17 | #endif |
|---|
| 18 | #ifndef ATTRIBUTES_H |
|---|
| 19 | #include <attributes.h> |
|---|
| 20 | #endif |
|---|
| 21 | |
|---|
| 22 | class AW_window; |
|---|
| 23 | class AW_root; |
|---|
| 24 | class UserActionTracker; |
|---|
| 25 | |
|---|
| 26 | struct GBDATA; |
|---|
| 27 | |
|---|
| 28 | // tracker factory: |
|---|
| 29 | UserActionTracker *need_macro_ability(); |
|---|
| 30 | __ATTR__USERESULT GB_ERROR configure_macro_recording(AW_root *aw_root, const char *client_id, GBDATA *gb_main); // replaces active tracker |
|---|
| 31 | void shutdown_macro_recording_via_database(AW_root *aw_root, GBDATA *gb_main); |
|---|
| 32 | |
|---|
| 33 | bool got_macro_ability(AW_root *aw_root); |
|---|
| 34 | |
|---|
| 35 | // gui-interface: |
|---|
| 36 | void insert_macro_menu_entry(AW_window *awm, bool prepend_separator); |
|---|
| 37 | void execute_macro(AW_root *root, const char *macroname); |
|---|
| 38 | |
|---|
| 39 | bool is_executing_macro_as_server(AW_root *root); |
|---|
| 40 | bool is_executing_macro(AW_root *root); |
|---|
| 41 | |
|---|
| 42 | #else |
|---|
| 43 | #error macros.hxx included twice |
|---|
| 44 | #endif // MACROS_HXX |
|---|
Note: See
TracBrowser
for help on using the repository browser.