VERSION 1: Writes out a coded version of the given script node
| 11526 | |
| 11527 | // VERSION 1: Writes out a coded version of the given script node |
| 11528 | void CDallasMainDlg::WriteScriptNodeDump_v1U(HTREEITEM node, bool filter_on /*=FALSE*/) { |
| 11529 | tTreeNodeData *data; |
| 11530 | CString tmp_name; |
| 11531 | int index; |
| 11532 | |
| 11533 | if (CurrentOutputFile == NULL || node == NULL) |
| 11534 | return; |
| 11535 | |
| 11536 | data = (tTreeNodeData *)m_ScriptTree.GetItemData(node); |
| 11537 | if (data == NULL) |
| 11538 | return; |
| 11539 | |
| 11540 | TabOver(); |
| 11541 | switch (data->type) { |
| 11542 | case SCRIPT_HEADER_NODE: |
| 11543 | cfprintf(CurrentOutputFile, "%02d:%d:%s", data->type, data->ID, data->name); |
| 11544 | break; |
| 11545 | case SCRIPT_OWNER_NODE: |
| 11546 | if (data->ID == OBJECT_TYPE) { |
| 11547 | if (filter_on || data->int_val == OBJECT_HANDLE_NONE || strlen(data->str_val) == 0) |
| 11548 | index = OBJECT_NONE_HANDLE; |
| 11549 | else |
| 11550 | index = FindObjectInList(data->str_val); |
| 11551 | } else if (data->ID == TRIGGER_TYPE) { |
| 11552 | if (filter_on || data->int_val == NOT_SPECIFIED_TYPE || strlen(data->str_val) == 0) |
| 11553 | index = NOT_SPECIFIED_TYPE; |
| 11554 | else |
| 11555 | index = FindTriggerInList(data->str_val); |
| 11556 | } else |
| 11557 | index = data->int_val; |
| 11558 | cfprintf(CurrentOutputFile, "%02d:%d:%d", data->type, data->ID, index); |
| 11559 | break; |
| 11560 | case SCRIPT_EVENT_NODE: |
| 11561 | cfprintf(CurrentOutputFile, "%02d:%d", data->type, data->ID); |
| 11562 | break; |
| 11563 | case CONDITIONAL_HEADER_NODE: |
| 11564 | cfprintf(CurrentOutputFile, "%02d:%d", data->type, data->ID); |
| 11565 | break; |
| 11566 | case ACTIONS_HEADER_NODE: |
| 11567 | if (DALLAS_SAVE_VERSION >= 3) { |
| 11568 | cfprintf(CurrentOutputFile, "%02d:%d:%d:%d", data->type, data->ID, data->int_val, data->subID); |
| 11569 | } else { |
| 11570 | cfprintf(CurrentOutputFile, "%02d:%d:%d", data->type, data->ID, data->subID); |
| 11571 | } |
| 11572 | break; |
| 11573 | case CONDITIONAL_STATEMENT_NODE: |
| 11574 | cfprintf(CurrentOutputFile, "%02d:%d", data->type, data->ID); |
| 11575 | break; |
| 11576 | case EXPRESSION_NODE: |
| 11577 | cfprintf(CurrentOutputFile, "%02d:%s:%s", data->type, GetQueryFunc(data->ID), data->name); |
| 11578 | break; |
| 11579 | case EXPRESSION_OPERATOR_NODE: |
| 11580 | cfprintf(CurrentOutputFile, "%02d:%d:%d", data->type, data->ID, data->subID); |
| 11581 | break; |
| 11582 | case ACTION_STATEMENT_NODE: |
| 11583 | cfprintf(CurrentOutputFile, "%02d:%s", data->type, GetActionFunc(data->ID)); |
| 11584 | break; |
| 11585 | case LOGICAL_OPERATOR_NODE: |