msi [3/6]: Update the DirectoryCombo control in response to the
DirectoryListUp event
James Hawkins
truiken at gmail.com
Mon Aug 28 19:54:43 CDT 2006
Hi,
Changelog:
* Update the DirectoryCombo control in response to the DirectoryListUp event.
dlls/msi/dialog.c | 22 ++++++++++++++++++++++
1 files changed, 22 insertions(+), 0 deletions(-)
--
James Hawkins
-------------- next part --------------
diff --git a/dlls/msi/dialog.c b/dlls/msi/dialog.c
index 5fa599f..0e19cf0 100644
--- a/dlls/msi/dialog.c
+++ b/dlls/msi/dialog.c
@@ -1979,6 +1979,27 @@ static UINT msi_dialog_list_box( msi_dia
/******************** Directory Combo ***************************************/
+static void msi_dialog_update_directory_combo( msi_dialog *dialog )
+{
+ msi_control *control;
+ LPWSTR prop, path;
+ BOOL indirect;
+
+ control = msi_dialog_find_control( dialog, szDirectoryCombo );
+ indirect = control->attributes & msidbControlAttributesIndirect;
+ prop = msi_dialog_dup_property( dialog, control->property, indirect );
+ path = msi_dup_property( dialog->package, prop );
+
+ PathStripPathW( path );
+ PathRemoveBackslashW( path );
+
+ SendMessageW( control->hwnd, CB_INSERTSTRING, 0, (LPARAM)path );
+ SendMessageW( control->hwnd, CB_SETCURSEL, 0, 0 );
+
+ msi_free( path );
+ msi_free( prop );
+}
+
static UINT msi_dialog_directory_combo( msi_dialog *dialog, MSIRECORD *rec )
{
msi_control *control;
@@ -2035,6 +2056,7 @@ UINT msi_dialog_directorylist_up( msi_di
MSI_SetPropertyW( dialog->package, prop, path );
+ msi_dialog_update_directory_combo( dialog );
msi_dialog_update_pathedit( dialog );
msi_free( path );
--
1.4.2
More information about the wine-patches
mailing list