\brief: Fills out the "Information" tab of the preferences dialogue * * Provides as much information as possible about build-time options and * the libraries used, to try and make Linux support easier. Basically anything * about the build we might wish to know should be visible here */
| 511 | * the libraries used, to try and make Linux support easier. Basically anything |
| 512 | * about the build we might wish to know should be visible here */ |
| 513 | void AboutDialog::PopulateInformationPage( ShuttleGui & S ) |
| 514 | { |
| 515 | wxStringOutputStream o; |
| 516 | wxTextOutputStream informationStr( o ); // string to build up list of information in |
| 517 | S.StartNotebookPage( XO("Build Information") ); // start the tab |
| 518 | S.StartVerticalLay(2); // create the window |
| 519 | HtmlWindow *html = safenew LinkingHtmlWindow(S.GetParent(), -1, wxDefaultPosition, |
| 520 | wxSize(ABOUT_DIALOG_WIDTH, 264), |
| 521 | wxHW_SCROLLBAR_AUTO ); |
| 522 | // create a html pane in it to put the content in. |
| 523 | auto enabled = XO("Enabled"); |
| 524 | auto disabled = XO("Disabled"); |
| 525 | wxString blank; |
| 526 | |
| 527 | /* this builds up the list of information to go in the window in the string |
| 528 | * informationStr */ |
| 529 | |
| 530 | informationStr |
| 531 | << wxT("<h3>") |
| 532 | /* i18n-hint: Information about when audacity was compiled follows */ |
| 533 | << XO("The Build") |
| 534 | << wxT("</h3>\n<table>"); // start build info table |
| 535 | |
| 536 | // Current date |
| 537 | AddBuildinfoRow(&informationStr, XO("Program build date:"), __TDATE__); |
| 538 | AddBuildinfoRow(&informationStr, XO("Commit Id:"), REV_IDENT ); |
| 539 | |
| 540 | auto buildType = |
| 541 | #ifdef _DEBUG |
| 542 | XO("Debug build (debug level %d)").Format(wxDEBUG_LEVEL); |
| 543 | #else |
| 544 | XO("Release build (debug level %d)").Format(wxDEBUG_LEVEL); |
| 545 | #endif |
| 546 | ; |
| 547 | if( (sizeof(void*) == 8) ) { |
| 548 | buildType = XO("%s, 64 bits").Format( buildType ); |
| 549 | } else { |
| 550 | buildType = XO("%s, 32 bits").Format( buildType ); |
| 551 | } |
| 552 | // Remove this once the transition to CMake is complete |
| 553 | #if defined(CMAKE) |
| 554 | buildType = Verbatim("CMake %s").Format( buildType ); |
| 555 | #endif |
| 556 | |
| 557 | AddBuildinfoRow(&informationStr, XO("Build type:"), buildType.Translation()); |
| 558 | |
| 559 | #ifdef _MSC_FULL_VER |
| 560 | AddBuildinfoRow(&informationStr, XO("Compiler:"), |
| 561 | wxString::Format(wxT("MSVC %02d.%02d.%05d.%02d"), _MSC_VER / 100, _MSC_VER % 100, _MSC_FULL_VER % 100000, _MSC_BUILD)); |
| 562 | #endif |
| 563 | |
| 564 | #ifdef __GNUC_PATCHLEVEL__ |
| 565 | #ifdef __MINGW32__ |
| 566 | AddBuildinfoRow(&informationStr, XO("Compiler:"), wxT("MinGW ") wxMAKE_VERSION_DOT_STRING_T(__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__)); |
| 567 | #else |
| 568 | AddBuildinfoRow(&informationStr, XO("Compiler:"), wxT("GCC ") wxMAKE_VERSION_DOT_STRING_T(__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__)); |
| 569 | #endif |
| 570 | #endif |
nothing calls this directly
no test coverage detected