EgtExecutor (ModelessDialog) :

- Aggiunta gestione dialoghi non modali.
This commit is contained in:
Riccardo Elitropi
2026-06-23 12:28:54 +02:00
5 changed files with 392 additions and 561 deletions
+6 -5
View File
@@ -22,7 +22,7 @@
using namespace std ;
#pragma comment( lib, "Comctl32.lib")
#pragma comment( lib, "Comctl32.lib") // per funzioni LRESULT CALLBACK
HWND phDlgModeless = nullptr ;
int nDlgModelessItem = -1 ;
@@ -53,7 +53,8 @@ UpdateIdsModelessDialog( HWND phDlgModeless, int nDlgModelessItem)
}
//-----------------------------------------------------------------------------
LRESULT CALLBACK UpdateSelectionModelessDialog( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam, UINT_PTR uIdSubclass, DWORD_PTR dwRefData)
LRESULT
CALLBACK UpdateSelectionModelessDialog( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam, UINT_PTR uIdSubclass, DWORD_PTR dwRefData)
{
if ( msg == WM_GETDLGCODE)
return DLGC_WANTALLKEYS ;
@@ -61,7 +62,7 @@ LRESULT CALLBACK UpdateSelectionModelessDialog( HWND hwnd, UINT msg, WPARAM wPar
if ( msg == WM_KEYDOWN && wParam == VK_RETURN) {
// dwRefData contiene l'ID dell'EDIT
int nEditId = int( dwRefData) ;
HWND hwndDlg = GetParent(hwnd);
HWND hwndDlg = GetParent(hwnd) ;
if ( hwndDlg == nullptr)
return FALSE ;
// recupero il testo dell'EDIT corretto
@@ -75,7 +76,7 @@ LRESULT CALLBACK UpdateSelectionModelessDialog( HWND hwnd, UINT msg, WPARAM wPar
if ( ! sIds.empty()) {
STRVECTOR vsIds;
Tokenize( sIds, ",", vsIds) ;
for ( auto& s : vsIds) {
for ( const string& s : vsIds) {
int nId = GDB_ID_NULL ;
if ( FromString( s, nId) && nId != GDB_ID_NULL)
ExeSelectObj( nId) ;
@@ -86,5 +87,5 @@ LRESULT CALLBACK UpdateSelectionModelessDialog( HWND hwnd, UINT msg, WPARAM wPar
return TRUE ;
}
return ( DefSubclassProc(hwnd, msg, wParam, lParam)) ;
return ( DefSubclassProc( hwnd, msg, wParam, lParam)) ;
}
-3
View File
@@ -146,9 +146,6 @@ ExeSelectAll( bool bOnlyIfVisible)
" -- bOk=1" ;
LOG_INFO( GetCmdLogger(), sLua.c_str()) ;
}
// verifico se presente un dialogo modeless per aggiornare i valori
if ( phDlgModeless != nullptr && nDlgModelessItem != -1)
UpdateIdsModelessDialog( phDlgModeless, nDlgModelessItem) ;
// restituisco risultato
return true ;
}
BIN
View File
Binary file not shown.
+376 -502
View File
File diff suppressed because it is too large Load Diff
+10 -51
View File
@@ -5,8 +5,6 @@
#define VS_VERSION_INFO 1
#define IDD_LUADLG 101
#define IDD_LUASCENE 102
#define IDD_LUADLG_ML 103
#define IDC_TEXT1 1001
#define IDC_TEXT2 1002
#define IDC_TEXT3 1003
@@ -52,63 +50,24 @@
#define IDC_COLOR7 1047
#define IDC_COLOR8 1048
#define IDC_BUTTON_SEL1 1051
#define IDC_BUTTON_SEL2 1052
#define IDC_BUTTON_SEL3 1053
#define IDC_BUTTON_SEL4 1054
#define IDC_BUTTON_SEL5 1055
#define IDC_BUTTON_SEL6 1056
#define IDC_BUTTON_SEL7 1057
#define IDC_BUTTON_SEL8 1058
#define IDC_PICTURE1 1101
#define IDC_TEXT_ML_1 2001
#define IDC_TEXT_ML_2 2002
#define IDC_TEXT_ML_3 2003
#define IDC_TEXT_ML_4 2004
#define IDC_TEXT_ML_5 2005
#define IDC_TEXT_ML_6 2006
#define IDC_TEXT_ML_7 2007
#define IDC_TEXT_ML_8 2008
#define IDC_EDIT_ML_1 2011
#define IDC_EDIT_ML_2 2012
#define IDC_EDIT_ML_3 2013
#define IDC_EDIT_ML_4 2014
#define IDC_EDIT_ML_5 2015
#define IDC_EDIT_ML_6 2016
#define IDC_EDIT_ML_7 2017
#define IDC_EDIT_ML_8 2018
#define IDC_COMBO_ML_1 2021
#define IDC_COMBO_ML_2 2022
#define IDC_COMBO_ML_3 2023
#define IDC_COMBO_ML_4 2024
#define IDC_COMBO_ML_5 2025
#define IDC_COMBO_ML_6 2026
#define IDC_COMBO_ML_7 2027
#define IDC_COMBO_ML_8 2028
#define IDC_CHECK_ML_1 2031
#define IDC_CHECK_ML_2 2032
#define IDC_CHECK_ML_3 2033
#define IDC_CHECK_ML_4 2034
#define IDC_CHECK_ML_5 2035
#define IDC_CHECK_ML_6 2036
#define IDC_CHECK_ML_7 2037
#define IDC_CHECK_ML_8 2038
#define IDC_BUTTON_SEL_ML_1 2041
#define IDC_BUTTON_SEL_ML_2 2042
#define IDC_BUTTON_SEL_ML_3 2043
#define IDC_BUTTON_SEL_ML_4 2044
#define IDC_BUTTON_SEL_ML_5 2045
#define IDC_BUTTON_SEL_ML_6 2046
#define IDC_BUTTON_SEL_ML_7 2047
#define IDC_BUTTON_SEL_ML_8 2048
#define IDOK_ML 2051
#define IDCANCEL_ML 2052
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 109
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1073
#define _APS_NEXT_CONTROL_VALUE 1074
#define _APS_NEXT_SYMED_VALUE 115
#endif
#endif