ACAV f0ba4b7c9529
Abstract Syntax Tree (AST) visualization tool for C, C++, and Objective-C
Loading...
Searching...
No Matches
acav::MainWindow Class Reference

Main application window with multi-panel dock layout. More...

#include <MainWindow.h>

Inheritance diagram for acav::MainWindow:
[legend]

Public Member Functions

 MainWindow (QWidget *parent=nullptr)
void loadCompilationDatabase (const QString &compilationDatabasePath, const QString &projectRoot=QString())
 Load compilation database and populate translation units.

Protected Member Functions

void resizeEvent (QResizeEvent *event) override
void moveEvent (QMoveEvent *event) override
bool eventFilter (QObject *watched, QEvent *event) override

Friends

class MainWindowTestAccess

Detailed Description

Main application window with multi-panel dock layout.

The MainWindow provides the primary user interface for ACAV. It consists of dockable panels arranged horizontally:

  • Translation Unit View: List of source files from compilation database
  • Source Code View: Display of selected source file
  • AST Tree View: AST hierarchy

Definition at line 75 of file MainWindow.h.

Constructor & Destructor Documentation

◆ MainWindow()

acav::MainWindow::MainWindow ( QWidget * parent = nullptr)
explicit

Definition at line 91 of file MainWindow.cpp.

◆ ~MainWindow()

acav::MainWindow::~MainWindow ( )
override

Definition at line 130 of file MainWindow.cpp.

Member Function Documentation

◆ eventFilter()

bool acav::MainWindow::eventFilter ( QObject * watched,
QEvent * event )
overrideprotected

Definition at line 589 of file MainWindow.cpp.

◆ loadCompilationDatabase()

void acav::MainWindow::loadCompilationDatabase ( const QString & compilationDatabasePath,
const QString & projectRoot = QString() )

Load compilation database and populate translation units.

Parameters
compilationDatabasePathPath to compile_commands.json
projectRootOptional project root directory (auto-detected if empty)

Definition at line 2039 of file MainWindow.cpp.

References acav::MemoryProfiler::checkpoint(), acav::AppConfig::getCacheDirectory(), acav::AppConfig::getDependenciesFilePath(), acav::AppConfig::instance(), and loadCompilationDatabase().

Referenced by loadCompilationDatabase().

◆ moveEvent()

void acav::MainWindow::moveEvent ( QMoveEvent * event)
overrideprotected

Definition at line 582 of file MainWindow.cpp.

◆ resizeEvent()

void acav::MainWindow::resizeEvent ( QResizeEvent * event)
overrideprotected

Definition at line 575 of file MainWindow.cpp.

◆ MainWindowTestAccess

friend class MainWindowTestAccess
friend

Definition at line 151 of file MainWindow.h.


The documentation for this class was generated from the following files: