Files
musrfit/musredit/html/classPMusrEditAbout.html
T
2026-07-31 18:47:29 +00:00

308 lines
17 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>musredit: PMusrEditAbout Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">musredit<span id="projectnumber">&#160;1.0.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classPMusrEditAbout-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">PMusrEditAbout Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>About dialog displaying version and build information.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="PMusrEditAbout_8h_source.html">PMusrEditAbout.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for PMusrEditAbout:</div>
<div class="dyncontent">
<div class="center"><img src="classPMusrEditAbout__inherit__graph.png" border="0" usemap="#aPMusrEditAbout_inherit__map" alt="Inheritance graph"/></div>
<map name="aPMusrEditAbout_inherit__map" id="aPMusrEditAbout_inherit__map">
<area shape="rect" title="About dialog displaying version and build information." alt="" coords="45,81,164,109"/>
<area shape="rect" title=" " alt="" coords="5,5,76,33"/>
<area shape="poly" title=" " alt="" coords="64,43,95,79,91,82,60,47"/>
<area shape="rect" title=" " alt="" coords="100,5,237,33"/>
<area shape="poly" title=" " alt="" coords="149,47,118,82,114,79,145,43"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for PMusrEditAbout:</div>
<div class="dyncontent">
<div class="center"><img src="classPMusrEditAbout__coll__graph.png" border="0" usemap="#aPMusrEditAbout_coll__map" alt="Collaboration graph"/></div>
<map name="aPMusrEditAbout_coll__map" id="aPMusrEditAbout_coll__map">
<area shape="rect" title="About dialog displaying version and build information." alt="" coords="45,81,164,109"/>
<area shape="rect" title=" " alt="" coords="5,5,76,33"/>
<area shape="poly" title=" " alt="" coords="64,43,95,79,91,82,60,47"/>
<area shape="rect" title=" " alt="" coords="100,5,237,33"/>
<area shape="poly" title=" " alt="" coords="149,47,118,82,114,79,145,43"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a0a5c69a5227b0dfb908e654257491a57" id="r_a0a5c69a5227b0dfb908e654257491a57"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0a5c69a5227b0dfb908e654257491a57">PMusrEditAbout</a> (QWidget *parent=nullptr)</td></tr>
<tr class="memdesc:a0a5c69a5227b0dfb908e654257491a57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs the About dialog. <br /></td></tr>
<tr class="separator:a0a5c69a5227b0dfb908e654257491a57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a043161d31d5a385bba167406979f1975" id="r_a043161d31d5a385bba167406979f1975"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a043161d31d5a385bba167406979f1975">~PMusrEditAbout</a> ()</td></tr>
<tr class="memdesc:a043161d31d5a385bba167406979f1975"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual destructor. <br /></td></tr>
<tr class="separator:a043161d31d5a385bba167406979f1975"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>About dialog displaying version and build information. </p>
<p>This dialog presents comprehensive version and build information for the musredit application. It is typically accessed through the Help menu and provides users with essential details for bug reporting and version verification.</p>
<dl class="section user"><dt>Displayed Information:</dt><dd>The dialog displays the following information:<ul>
<li><b>musrfit package version</b>: Version number from PACKAGE_VERSION macro</li>
<li><b>Build type</b>: Debug or Release build configuration</li>
<li><b>ROOT version</b>: Version of ROOT framework used for building</li>
<li><b>Git branch</b>: Source code branch name (if available)</li>
<li><b>Git revision</b>: Current commit SHA1 hash (if available)</li>
</ul>
</dd></dl>
<dl class="section user"><dt>Version Information Sources:</dt><dd>Version information is obtained from:<ul>
<li>config.h: PACKAGE_VERSION and BUILD_TYPE macros</li>
<li>git-revision.h: GIT_BRANCH and GIT_CURRENT_SHA1 (if HAVE_GIT_REV_H defined)</li>
<li>ROOT configuration: ROOT_VERSION_USED macro</li>
</ul>
</dd></dl>
<dl class="section user"><dt>Git Information Availability:</dt><dd>Git branch and revision information are only available if:<ul>
<li>The application was built from a git repository</li>
<li>The HAVE_GIT_REV_H preprocessor symbol is defined</li>
<li>The git-revision.h header was generated during build</li>
</ul>
</dd></dl>
<p>If git information is unavailable, "unknown" is displayed for both branch and revision fields.</p>
<dl class="section note"><dt>Note</dt><dd>The dialog is modal, requiring user dismissal before returning to the main application. </dd>
<dd>
Typical usage: Help → About musredit menu action</dd></dl>
<dl class="section see"><dt>See also</dt><dd>musredit For the <a class="el" href="main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627" title="Main entry point for the musredit application.">main</a> application class </dd></dl>
<p class="definition">Definition at line <a class="el" href="PMusrEditAbout_8h_source.html#l00091">91</a> of file <a class="el" href="PMusrEditAbout_8h_source.html">PMusrEditAbout.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a0a5c69a5227b0dfb908e654257491a57" name="a0a5c69a5227b0dfb908e654257491a57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a5c69a5227b0dfb908e654257491a57">&#9670;&#160;</a></span>PMusrEditAbout()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">PMusrEditAbout::PMusrEditAbout </td>
<td>(</td>
<td class="paramtype">QWidget *</td> <td class="paramname"><span class="paramname"><em>parent</em></span><span class="paramdefsep"> = </span><span class="paramdefval">nullptr</span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs the About dialog. </p>
<p>Constructor - Initializes and populates the About dialog.</p>
<p>Initializes the About dialog and populates all version information labels with current build details. The dialog layout is loaded from the Qt Designer UI file, and text labels are dynamically updated with version information from build-time configuration macros.</p>
<p>Version information population:</p><ul>
<li>Git information is conditionally displayed based on HAVE_GIT_REV_H</li>
<li>musrfit version combines PACKAGE_VERSION and BUILD_TYPE</li>
<li>ROOT version is obtained from ROOT_VERSION_USED macro</li>
</ul>
<p>The dialog is configured as modal to ensure users acknowledge the information before continuing.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">parent</td><td>Pointer to the parent widget (typically the main window). If nullptr, the dialog has no parent. The parent-child relationship ensures proper dialog lifetime management and centering over the parent window.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>The dialog centers itself over the parent window if a parent is provided. </dd>
<dd>
All version labels are set with monospace-friendly formatting.</dd></dl>
<dl class="section see"><dt>See also</dt><dd>setupUi() Qt Designer generated UI initialization method </dd>
<dd>
setModal() Configures the dialog as modal</dd></dl>
<p>Sets up the About dialog user interface and dynamically populates all version information labels with current build details. The dialog retrieves information from various sources and presents it in a clear, structured format.</p>
<p><b>Initialization Process:</b></p>
<ol type="1">
<li><b>UI Setup</b>: Loads the dialog layout from Qt Designer UI file via setupUi()</li>
<li><b>Git Information</b>: Conditionally populates git-related fields based on availability of git-revision.h header:<ul>
<li>If HAVE_GIT_REV_H is defined:<ul>
<li>Displays actual git branch from GIT_BRANCH macro</li>
<li>Displays commit SHA1 hash from GIT_CURRENT_SHA1 macro</li>
</ul>
</li>
<li>If not defined:<ul>
<li>Displays "unknown" for both branch and revision</li>
<li>Typical for release builds or non-git source distributions</li>
</ul>
</li>
</ul>
</li>
<li><b>Package Version</b>: Combines musrfit package information:<ul>
<li>PACKAGE_VERSION: Version string (e.g., "1.9.3")</li>
<li>BUILD_TYPE: Build configuration ("Debug" or "Release")</li>
<li>Format: "musrfit-version: 1.9.3 (Release)"</li>
</ul>
</li>
<li><b>ROOT Version</b>: Displays ROOT framework version from ROOT_VERSION_USED macro<ul>
<li>Format: "ROOT-version: 6.28/00" (or current ROOT version)</li>
</ul>
</li>
<li><b>Modal Configuration</b>: Sets the dialog as modal to ensure user acknowledgment before continuing with the application</li>
</ol>
<p><b>Version Information Sources:</b></p><ul>
<li>config.h: PACKAGE_VERSION, BUILD_TYPE, ROOT_VERSION_USED</li>
<li>git-revision.h: GIT_BRANCH, GIT_CURRENT_SHA1 (conditional)</li>
</ul>
<p><b>Example Dialog Content:</b> </p><div class="fragment"><div class="line">musrfit-version: 1.9.3 (Release)</div>
<div class="line">ROOT-version: 6.28/00</div>
<div class="line">git-branch: <a class="code hl_function" href="main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div>
<div class="line">git-rev: a1b2c3d4e5f6...</div>
<div class="ttc" id="amain_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdoc">Main entry point for the musredit application.</div><div class="ttdef"><b>Definition</b> <a href="main_8cpp_source.html#l00085">main.cpp:85</a></div></div>
</div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">parent</td><td>Pointer to the parent widget, typically the main application window. If nullptr, the dialog has no parent and will not center over any window. The Qt parent-child relationship ensures:<ul>
<li>Automatic memory management when parent is destroyed</li>
<li>Proper dialog centering over parent window</li>
<li>Inheritance of default font and style settings</li>
</ul>
</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>The git information is particularly useful for bug reports, allowing developers to identify the exact source code version. </dd>
<dd>
All macros (PACKAGE_VERSION, BUILD_TYPE, etc.) are defined at compile time by the build system (CMake). </dd>
<dd>
The dialog remains centered even if the parent window is moved after the dialog is shown.</dd></dl>
<dl class="section see"><dt>See also</dt><dd>config.h For PACKAGE_VERSION, BUILD_TYPE, and ROOT_VERSION_USED definitions </dd>
<dd>
git-revision.h For GIT_BRANCH and GIT_CURRENT_SHA1 definitions (optional) </dd>
<dd>
setupUi() Qt Designer generated UI initialization </dd>
<dd>
setModal() Configures modal dialog behavior </dd></dl>
<p class="definition">Definition at line <a class="el" href="PMusrEditAbout_8cpp_source.html#l00117">117</a> of file <a class="el" href="PMusrEditAbout_8cpp_source.html">PMusrEditAbout.cpp</a>.</p>
</div>
</div>
<a id="a043161d31d5a385bba167406979f1975" name="a043161d31d5a385bba167406979f1975"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a043161d31d5a385bba167406979f1975">&#9670;&#160;</a></span>~PMusrEditAbout()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual PMusrEditAbout::~PMusrEditAbout </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual destructor. </p>
<p>Default destructor implementation. Qt's parent-child ownership system automatically handles cleanup of UI elements created by setupUi(). No manual cleanup is required.</p>
<dl class="section note"><dt>Note</dt><dd>Declared virtual to ensure proper cleanup in inheritance hierarchies, though this class is typically used directly without subclassing. </dd></dl>
<p class="definition">Definition at line <a class="el" href="PMusrEditAbout_8h_source.html#l00135">135</a> of file <a class="el" href="PMusrEditAbout_8h_source.html">PMusrEditAbout.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>/workspace/LMU/musrfit/src/musredit_qt6/musredit/<a class="el" href="PMusrEditAbout_8h_source.html">PMusrEditAbout.h</a></li>
<li>/workspace/LMU/musrfit/src/musredit_qt6/musredit/<a class="el" href="PMusrEditAbout_8cpp_source.html">PMusrEditAbout.cpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>