Files
Mike Nelson 4d8538e5cc Qtfred sexp tree refactor (#7301)
* long project will be long

* add shared foundation files

* unify some shared types across both editors

* sexptreemodel framework

* move opf functions to the model

* move shared functions into the model

* move variable/container stuff to the model

* sexptreeactions and ui interface

* wire the model into the ui

* move some shared logic to the model

* move more methods to the model

* move clipboard to model

* create new right click menu model

* begin connecting the new right click menu

* wire up the new right click menu in fred

* wire up the new right click menu in qtfred

* move help text and visuals to model

* move menu option enable disable to model

* wire up sexp_tree to the model

* rename sexp_tree files to sexp_tree_ui

* fix build errors

* fix warning

* remove all opf forwarders

* remove some forwarder methods

* connect qtfred events editor directly to model

* wite plan for unifying tree types

* replace legacy m_mode with treeflags

* fix qtfred campaign dialog

* fix qtfred ship/wing dialog trees

* build error

* documentation

* more documentation

* even more documentation

* move more opf functions to opf file

* clean up context menu function

* move default argument to opf file

* build errors

* fix qtfred dialogs and annoations

* new shared annotations model

* sexp_tree_ui to sexp_tree_view

* documentation pass

* document annotations model

* delete the plan

* move event annotations to the new model

* generic cleanup

* remove some old defines

* cleanup includes

* more cleanup

* parenthesis

* more parenthesis

* variable collisions

* too many parenthesis this time

* clang modernization

* variable names again

* more clang and assertions

* static cast

* clang again

* fix some bugs and issues

* Refactor sexp tree action duplication into SexpTreeActions

* fix a few more minor issues

* avoid clang false positive

* rebase tweaks

* fix annotations issue

* fix typo and two small bugs claude found

* fix event editor tree widget loading

* fix ship and wing sexp tree editors in qtfred

* fix qtfred briefing and debriefing trees

* fix a regression Claude found

* address feedback

* fix annotations for root items in qtfred by copying fred's method

* address feedback

* rescope variables

* clang
2026-07-04 02:12:34 +02:00

77 lines
1.9 KiB
C++

/*
* Copyright (C) Volition, Inc. 1999. All rights reserved.
*
* All source code herein is the property of Volition, Inc. You may not sell
* or otherwise commercially exploit the source or things you created based on the
* source.
*
*/
#include "mission/missionmessage.h"
/////////////////////////////////////////////////////////////////////////////
// CMessageEditorDlg dialog
class CMessageEditorDlg : public CDialog
{
// Construction
public:
int find_event();
int query_modified();
void OnCancel();
int update(int num);
void update_cur_message();
void OnOK();
CMessageEditorDlg(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CMessageEditorDlg)
enum { IDD = IDD_MESSAGE_EDITOR };
sexp_tree_view m_tree;
CString m_avi_filename;
CString m_wave_filename;
CString m_message_text;
CString m_message_name;
int m_cur_msg;
int m_priority;
int m_sender;
int m_persona;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CMessageEditorDlg)
public:
virtual BOOL DestroyWindow();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
int m_event_num; // event index if existing event is being used for formula
int modified;
// Generated message map functions
//{{AFX_MSG(CMessageEditorDlg)
virtual BOOL OnInitDialog();
afx_msg void OnSelchangeMessageList();
afx_msg void OnUpdateName();
afx_msg void OnDelete();
afx_msg void OnNew();
afx_msg void OnClose();
afx_msg void OnBrowseAvi();
afx_msg void OnBrowseWave();
afx_msg void OnRclickTree(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnBeginlabeleditTree(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnEndlabeleditTree(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnButtonOk();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
extern CMessageEditorDlg *Message_editor_dlg;