Win32FileDialog.st
author Claus Gittinger <cg@exept.de>
Tue, 26 Oct 2010 18:44:44 +0200
changeset 9597 7b38dfad7a7e
parent 9345 fa51879ca252
child 9598 d9be113eb4f5
permissions -rw-r--r--
lock
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8277
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
     1
"
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
     2
 COPYRIGHT (c) 2008 by eXept Software AG
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
     3
              All Rights Reserved
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
     4
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
     5
 This software is furnished under a license and may be used
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
     6
 only in accordance with the terms of that license and with the
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
     8
 be provided or otherwise made available to, or used by, any
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
     9
 other person.  No title to or ownership of the software is
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    10
 hereby transferred.
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    11
"
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    13
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    14
Object subclass:#Win32FileDialog
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    15
	instanceVariableNames:'fileName openFileNameStruct filters lpstrFilter lpstrFile
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    16
		lpstrInitialDir lpstrTitle lpstrDefExt defFilter defExtension
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    17
		style title smalltalkFileFilters defFilterIndex parent'
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
    18
	classVariableNames:'InitialDirectory CommonDialogConstants FilterPatternDescriptions
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
    19
		Lock'
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    20
	poolDictionaries:''
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    21
	category:'Interface-Tools-File'
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    22
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    23
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    24
ByteArray variableByteSubclass:#OpenFilenameStructure
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    25
	instanceVariableNames:''
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    26
	classVariableNames:''
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    27
	poolDictionaries:''
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    28
	privateIn:Win32FileDialog
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    29
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    30
8277
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    31
!Win32FileDialog class methodsFor:'documentation'!
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    32
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    33
copyright
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    34
"
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    35
 COPYRIGHT (c) 2008 by eXept Software AG
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    36
              All Rights Reserved
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    37
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    38
 This software is furnished under a license and may be used
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    39
 only in accordance with the terms of that license and with the
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    40
 inclusion of the above copyright notice.   This software may not
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    41
 be provided or otherwise made available to, or used by, any
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    42
 other person.  No title to or ownership of the software is
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    43
 hereby transferred.
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    44
"
5535db32c46f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8260
diff changeset
    45
! !
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    46
8260
bd2f4ccb4fec category change
Claus Gittinger <cg@exept.de>
parents: 8037
diff changeset
    47
!Win32FileDialog class methodsFor:'initialization'!
bd2f4ccb4fec category change
Claus Gittinger <cg@exept.de>
parents: 8037
diff changeset
    48
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
    49
initialize
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
    50
    Lock := RecursionLock new.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
    51
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
    52
    "Created: / 26-10-2010 / 12:51:23 / cg"
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
    53
!
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
    54
8260
bd2f4ccb4fec category change
Claus Gittinger <cg@exept.de>
parents: 8037
diff changeset
    55
startUp
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
    56
    "Private - Initialize the class variables.  
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
    57
     This is called during startup."
8260
bd2f4ccb4fec category change
Claus Gittinger <cg@exept.de>
parents: 8037
diff changeset
    58
bd2f4ccb4fec category change
Claus Gittinger <cg@exept.de>
parents: 8037
diff changeset
    59
    InitialDirectory := Directory pathName: Disk drivePathName.
bd2f4ccb4fec category change
Claus Gittinger <cg@exept.de>
parents: 8037
diff changeset
    60
! !
bd2f4ccb4fec category change
Claus Gittinger <cg@exept.de>
parents: 8037
diff changeset
    61
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    62
!Win32FileDialog class methodsFor:'instance creation'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    63
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    64
new
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
    65
    ^ self basicNew initialize
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    66
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    67
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    68
!Win32FileDialog class methodsFor:'accessing'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    69
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    70
getInitialDirectory
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    71
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    72
     ^ InitialDirectory
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    73
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    74
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    75
setInitialDirectory: aName
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    76
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    77
     InitialDirectory := Directory pathName: aName
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    78
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    79
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    80
!Win32FileDialog class methodsFor:'constants'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    81
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    82
commonDialogConstantAt: aString
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    83
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    84
    ^ self commonDialogConstants at: aString ifAbsent:[Transcript showCR: 'Common Dialog Constant ', aString, ' notfound!!']
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    85
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    86
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    87
commonDialogConstants
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    88
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
    89
    CommonDialogConstants isNil ifTrue:[
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
    90
        CommonDialogConstants := self generateCommonDialogConstants 
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
    91
    ].
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    92
    ^ CommonDialogConstants
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    93
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    94
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    95
generateCommonDialogConstants
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    96
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    97
    |dictionary|
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    98
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
    99
    dictionary := Dictionary new.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   100
    dictionary
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   101
        at: 'CcPreventfullopen' put: 4;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   102
        at: 'FrShowhelp' put: 128;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   103
        at: 'PdEnablesetuptemplate' put: 32768;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   104
        at: 'FrNoupdown' put: 1024;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   105
        at: 'CfNosimulations' put: 4096;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   106
        at: 'OfnPathmustexist' put: 2048;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   107
        at: 'CfWysiwyg' put: 32768;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   108
        at: 'PdReturndc' put: 256;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   109
        at: 'PdEnableprinthook' put: 4096;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   110
        at: 'CfInittologfontstruct' put: 64;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   111
        at: 'CfScalableonly' put: 131072;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   112
        at: 'PdPrinttofile' put: 32;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   113
        at: 'CfEffects' put: 256;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   114
        at: 'PdShowhelp' put: 2048;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   115
        at: 'OfnEnabletemplatehandle' put: 128;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   116
        at: 'CfBoth' put: 3;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   117
        at: 'OfnReadonly' put: 1;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   118
        at: 'PdNopagenums' put: 8;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   119
        at: 'PdDisableprinttofile' put: 524288;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   120
        at: 'PdHideprinttofile' put: 1048576;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   121
        at: 'OfnAllowmultiselect' put: 512;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   122
        at: 'CfPrinterfonts' put: 2;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   123
        at: 'CfEnabletemplatehandle' put: 32;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   124
        at: 'PdSelection' put: 1;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   125
        at: 'OfnHidereadonly' put: 4;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   126
        at: 'PdPrintsetup' put: 64;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   127
        at: 'OfnExtentiondifferent' put: 1024;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   128
        at: 'FrReplaceall' put: 32;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   129
        at: 'FrMatchcase' put: 4;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   130
        at: 'OfnFilemustexist' put: 4096;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   131
        at: 'PdCollate' put: 16;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   132
        at: 'CfFixedpitchonly' put: 16384;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   133
        at: 'PdEnablesetuphook' put: 8192;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   134
        at: 'OfnShareaware' put: 16384;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   135
        at: 'CcEnablehook' put: 16;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   136
        at: 'CfEnabletemplate' put: 16;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   137
        at: 'Findmsgstring' put: 'commdlgFindreplace';
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   138
        at: 'CfLimitsize' put: 8192;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   139
        at: 'OfnNochangedir' put: 8;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   140
        at: 'OfnCreateprompt' put: 8192;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   141
        at: 'ScreenFonttype' put: 8192;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   142
        at: 'PdUsedevmodecopies' put: 262144;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   143
        at: 'CcRgbinit' put: 1;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   144
        at: 'FrFindnext' put: 8;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   145
        at: 'CfUsestyle' put: 128;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   146
        at: 'FrEnablehook' put: 256;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   147
        at: 'PdEnableprinttemplatehandle' put: 65536;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   148
        at: 'CfShowhelp' put: 4;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   149
        at: 'FrNowholeword' put: 4096.
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   150
        dictionary
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   151
        at: 'ShareExist' put: 16448;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   152
        at: 'OfnOverwriteprompt' put: 2;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   153
        at: 'OfnEnablehook' put: 32;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   154
        at: 'OfnShowhelp' put: 16;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   155
        at: 'CcEnabletemplatehandle' put: 64;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   156
        at: 'SimulatedFonttype' put: 32768;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   157
        at: 'FrDown' put: 1;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   158
        at: 'PdEnableprinttemplate' put: 16384;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   159
        at: 'CfNovectorfonts' put: 2048;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   160
        at: 'PdNoselection' put: 4;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   161
        at: 'CfAnsionly' put: 1024;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   162
        at: 'OfnNovalidate' put: 256;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   163
        at: 'CfScreenfonts' put: 1;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   164
        at: 'FrWholeword' put: 2;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   165
        at: 'FrEnabletemplatehandle' put: 8192;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   166
        at: 'PdAllpages' put: 0;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   167
        at: 'CfForcefontexist' put: 65536;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   168
        at: 'CcEnabletemplate' put: 32;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   169
        at: 'PdPagenums' put: 2;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   170
        at: 'FrReplace' put: 16;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   171
        at: 'PdEnablesetuptemplatehandle' put: 131072;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   172
        at: 'CfApply' put: 512;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   173
        at: 'OfnEnabletemplate' put: 64;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   174
        at: 'DnDefaultprn' put: 1;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   175
        at: 'PdNowarning' put: 128;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   176
        at: 'CfTtonly' put: 262144;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   177
        at: 'PrinterFonttype' put: 16384;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   178
        at: 'CcShowhelp' put: 8;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   179
        at: 'CcFullopen' put: 2;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   180
        at: 'PdReturnic' put: 512;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   181
        at: 'FrEnabletemplate' put: 512;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   182
        at: 'FrDialogterm' put: 64;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   183
        at: 'Helpmsgstring' put: 'commdlgHelp';
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   184
        at: 'PdReturndefault' put: 1024;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   185
        at: 'FrNomatchcase' put: 2048;
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   186
        at: 'CfEnablehook' put: 8.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   187
    ^ dictionary
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   188
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   189
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   190
!Win32FileDialog class methodsFor:'examples'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   191
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   192
openFile
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   193
    ^ (Win32FileDialog new openFile: 'c:\untitled.txt') file.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   194
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   195
    "
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   196
     self openFile
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   197
    "
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   198
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   199
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   200
saveFile
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   201
    ^ (Win32FileDialog new saveFile: 'C:\vsw311\untitled.txt') file.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   202
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   203
    "
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   204
     self saveFile
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   205
    "
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   206
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   207
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   208
!Win32FileDialog class methodsFor:'filters'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   209
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   210
filterPatternDescription: filterPattern
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   211
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   212
    ^ self filterPatternDescriptions at: filterPattern ifAbsent: ''
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   213
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   214
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   215
filterPatternDescriptions
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   216
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   217
    FilterPatternDescriptions isNil ifTrue:[ FilterPatternDescriptions := self generateFilterPatternDescriptions ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   218
    ^ FilterPatternDescriptions
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   219
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   220
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   221
filtersFor: pattern
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   222
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   223
    |filters filterPatterns|
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   224
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   225
    pattern isEmptyOrNil ifTrue:[^ nil].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   226
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   227
    filters := OrderedCollection new.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   228
    filterPatterns := pattern subStrings: $;.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   229
    filterPatterns do:[:filterPattern | 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   230
        filterPattern notEmpty ifTrue:[
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   231
            filters add: (Array with: (self filterPatternDescription: filterPattern) 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   232
                                with:filterPattern)
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   233
        ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   234
    ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   235
    ^ filters asArray
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   236
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   237
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   238
generateFilterPatternDescriptions
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   239
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   240
    ^ Dictionary new
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   241
        at: '*.txt' put: 'Text files (*.txt)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   242
        at: '*.st'  put: 'Smalltalk files (*.st)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   243
        at: '*.csv' put: 'CSV files (*.csv)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   244
        at: '*.xml' put: 'XML files (*.xml)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   245
        at: '*.zip' put: 'ZIP files (*.zip)';   
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   246
        at: '*.xls' put: 'Excel files (*.xls)'; 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   247
        at: '*.ent' put: 'SGML Entity files (*.ent)'; 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   248
        at: '*.ccs' put: 'CCS files (*.ccs)';             
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   249
        at: '*.ini' put: 'Configuration files (*.ini)';    
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   250
        at: '*.prn' put: 'Printer Text files (*.prn)'; 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   251
        at: '*.dir' put: 'DapasX Database files (*.dir)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   252
        at: '*.dat' put: 'DapasX Database files (*.dat)'; 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   253
        at: '*.prg' put: 'DapasX Program files (*.prg)';      
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   254
        at: '*.dcf' put: 'DapasX Options files (*.dcf)';  
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   255
        at: '*.ext' put: 'DapasX Backup files (*.ext)';  
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   256
        at: '*.mpl' put: 'DapasX Project files (*.mpl)';    
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   257
        yourself
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   258
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   259
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   260
!Win32FileDialog class methodsFor:'opening'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   261
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   262
fileDialogFor:ownerWindow save:isSaveDialog 
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   263
    title:titleOrNil inDirectory:dirPathOrNil initialAnswer:initialOrNil
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   264
    filter:pattern extension:extensionOrNil
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   265
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   266
    "start a native open-file dialog.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   267
     If not cancelled, the selected fileName is returned; nil otherwise.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   268
     Of course, this one looks like the
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   269
     Windows file dialog - no matter which viewStyle settings are active.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   270
     Notice: if no ownerWindow is given, the dialog pops up at 0@0.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   271
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   272
     EXPERIMENTAL & non-portable: use with caution"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   273
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   274
    |filePath filterArrayOrNil|
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   275
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   276
    filterArrayOrNil := self filtersFor: pattern.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   277
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   278
    filePath := 
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   279
        self new
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   280
            openFor:ownerWindow
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   281
            save:isSaveDialog
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   282
            title:titleOrNil
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   283
            inDirectory:dirPathOrNil
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   284
            initialAnswer:initialOrNil
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   285
            filter:filterArrayOrNil
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
   286
            extension:extensionOrNil.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   287
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   288
    ^ filePath
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   289
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   290
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   291
!Win32FileDialog methodsFor:'accessing'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   292
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   293
addAllFilesFilter
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   294
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   295
    self addFilter: '*.*' description: 'All Files (*.*)'.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   296
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   297
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   298
addFilter: aFilter description: aDescription
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   299
        "Add aFilter and aDescription to the list of File dialog
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   300
        filters."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   301
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   302
    filters add: ( Association key: aFilter value: aDescription ).
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   303
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   304
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   305
addSmalltalkFileFilters
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   306
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   307
    ^ smalltalkFileFilters
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   308
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   309
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   310
defExtension: aDefExtension
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   311
        "Specifies the default extension of File dialog."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   312
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   313
    defExtension := aDefExtension.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   314
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   315
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   316
defFilter
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   317
        "Answers the aDefFilterString as the default filter of File dialog."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   318
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   319
    ^ defFilter
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   320
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   321
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   322
defFilter: aDefFilterString
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   323
        "Specifies the aDefFilterString as the default filter of File dialog."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   324
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   325
    defFilter := aDefFilterString
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   326
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   327
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   328
defFilterIndex: defaultFilterIndex 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   329
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   330
    defFilterIndex := defaultFilterIndex.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   331
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   332
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   333
directory
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   334
        "Answer the selected directory."
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   335
    InitialDirectory isNil ifTrue:[
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   336
        ^ Filename currentDirectory pathName asFilename
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   337
    ].
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   338
    ^ InitialDirectory "? OperatingSystem getCurrentDirectory asFilename"
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   339
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   340
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   341
directory: directory
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   342
        "Sets the initial directory."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   343
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   344
    | aFilename |
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   345
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   346
    directory isNil ifTrue:[^ self.].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   347
    aFilename := directory asFilename.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   348
    aFilename exists ifTrue: [ InitialDirectory := aFilename ].      
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   349
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   350
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   351
file
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   352
        "Answer the selected file."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   353
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   354
    ^fileName
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   355
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   356
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   357
fileSpec: aFileSpec
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   358
        "Sets the initial fileName and directory in the File Dialog."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   359
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   360
   | array dir |
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   361
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   362
    "SHOULD assign initial fileName and directory separately using #fileName: and #directory"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   363
8358
83aa07fd9d8a leftover halt in fileSpec:
Claus Gittinger <cg@exept.de>
parents: 8277
diff changeset
   364
    self breakPoint:#fm.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   365
    fileName := aFileSpec.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   366
"/    array := Filename splitPath: aFileSpec in: self directory .
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   367
"/    dir := 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   368
"/        (( String with: ( array at: 1 ) with: $: ),
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   369
"/        ( ( array at: 2 ) isEmpty ifTrue: [ '\' ] ifFalse: [ array at: 2 ] )) asFilename.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   370
"/    dir exists ifFalse: [ dir := OperatingSystem getCurrentDirectory asFilename ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   371
"/
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   372
"/    self directory: dir.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   373
"/    fileName := array at: 3
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   374
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   375
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   376
filters
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   377
        "Private - answers  a string containing all filters and sets up
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   378
        the defFilterIndex property"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   379
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   380
    | filterString count defaultFilterIndex defaultFilter|
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   381
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   382
    smalltalkFileFilters notNil ifTrue: [
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   383
        self
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   384
            addFilter: '*.cls' description: 'Class Files (*.CLS)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   385
            addFilter: '*.mth' description: 'Method Files (*.MTH)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   386
            addFilter: '*.st' description: 'Smalltalk Files (*.ST)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   387
            addFilter: '*.bnd' description: 'Library Bind Files (*.BND)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   388
            addFilter: '*.map' description: 'Library Map Files (*.MAP)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   389
            addFilter: '*.ini' description: 'Initialization Files (*.INI)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   390
            addFilter: '*.obj' description: 'Object Files (*.OBJ)';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   391
            addFilter: '*.log' description: 'Log Files (*.LOG)' 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   392
    ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   393
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   394
    defaultFilter := self defFilter.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   395
    (fileName notEmptyOrNil and:[defaultFilter isNil]) ifTrue:[
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   396
        |initialFilenameSuffix|
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   397
        initialFilenameSuffix := fileName asFilename suffix.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   398
        initialFilenameSuffix notEmptyOrNil ifTrue:[
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   399
            defaultFilter := '*.', initialFilenameSuffix.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   400
        ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   401
    ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   402
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   403
    filterString := String new.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   404
    count := 0.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   405
    defaultFilterIndex := 0.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   406
    filters do: [:assoc |
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   407
        count := count + 1.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   408
        assoc key = defaultFilter ifTrue: [ defaultFilterIndex := count ].
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   409
        filterString := filterString, assoc value, #[0] asString, assoc key , #[0] asString. 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   410
    ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   411
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   412
    self defFilterIndex: defaultFilterIndex.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   413
    ^filterString
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   414
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   415
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   416
flags
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   417
        "Private - Answers the dialog box current flags.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   418
        For compatibility reasons -> use style instead"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   419
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   420
    ^openFileNameStruct flags
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   421
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   422
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   423
flags: flags
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   424
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   425
        "Private - Specifies the dialog box creation flags.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   426
        Kept for compatibility reasons. Use style: instead"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   427
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   428
    self style: flags
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   429
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   430
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   431
hideReadonly
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   432
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   433
        "Hides the file dialog's Readonly check box. "
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   434
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   435
    self style: self style | (self class commonDialogConstantAt: 'OfnHidereadonly')
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   436
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   437
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   438
initialFileName: filename
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   439
        "Sets the initial fileName string in the File Dialog."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   440
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   441
    | aString |
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   442
    filename isNil ifTrue:[^ self.].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   443
    aString := filename.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   444
    filename isFilename ifTrue:[ aString := filename baseName].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   445
    fileName := aString.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   446
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   447
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   448
overwritePrompt
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   449
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   450
        "Prompt if the user attempts to overwrite a file"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   451
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   452
    self style: self style | (self class commonDialogConstantAt: 'OfnOverwriteprompt')
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   453
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   454
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   455
owner: ownerWindow
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   456
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   457
        "Sets the owner of the Dialog box."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   458
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   459
    |mainView handle|
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   460
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   461
    ownerWindow isNil ifTrue:[^ self].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   462
    mainView := ownerWindow windowGroup mainView.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   463
    mainView notNil ifTrue:[
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   464
        handle := mainView id.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   465
        handle notNil ifTrue:[
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   466
            parent := handle address
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   467
        ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   468
    ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   469
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   470
"/    super owner: anOwner.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   471
"/    owner isWindow
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   472
"/        ifTrue: [ parent := owner ]
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   473
"/        ifFalse: [ parent := owner mainView.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   474
"/                       parent isWindow ifFalse: [
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   475
"/                            parent := Notifier findWindow: WindowHandle queryActive ]].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   476
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   477
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   478
pathMustExist
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   479
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   480
       "Private & DEFAULT!!."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   481
       "Changed by K3/EES5-Mg, 29.01.97"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   482
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   483
    self style: self style | 16r800.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   484
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   485
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   486
shareAware
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   487
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   488
        "Allows a previously opened file to be opened
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   489
         (e.g. change.log)"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   490
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   491
    self style: self style | (self class commonDialogConstantAt: 'OfnShareaware')
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   492
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   493
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   494
style
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   495
    ^ style ? 8
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   496
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   497
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   498
style:something
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   499
    style := something.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   500
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   501
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   502
title: aTitle
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   503
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   504
        "Specifies the string to be placed in the title bar of the
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   505
        File dialog."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   506
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   507
    title := aTitle
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   508
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   509
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   510
!Win32FileDialog methodsFor:'dapas'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   511
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   512
dapasOpenFile
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   513
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   514
        "Brings up the default open file dialog "
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   515
       "Changed by K3/EES5-Mg, 28.02.96"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   516
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   517
    self hideReadonly;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   518
         shareAware;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   519
         addFilter: '*.*' description: 'All Files (*.*)'.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   520
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   521
    self defFilter isNil ifTrue:[ self defFilter: '*.*'].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   522
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   523
    self open.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   524
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   525
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   526
dapasSaveFile
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   527
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   528
        "Brings up the file save dialog."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   529
       "Changed by K3/EES5-Mg, 28.02.96"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   530
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   531
    self hideReadonly;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   532
         overwritePrompt;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   533
         addFilter: '*.*' description: 'All Files (*.*)'.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   534
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   535
    self save.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   536
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   537
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   538
openFileXml
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   539
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   540
        "Brings up the default open file dialog "
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   541
       "Changed by K3/EES5-Mg, 28.02.96"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   542
       "Changed by GS-EC/EES3 - Bernd Eisenmann, 14.08.03"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   543
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   544
    self hideReadonly;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   545
         shareAware;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   546
         addFilter: '*.xml' description: 'XML-Datei'.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   547
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   548
    self defFilter isNil ifTrue:[ self defFilter: '*.*'].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   549
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   550
    self open.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   551
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   552
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   553
openFileXmlZip
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   554
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   555
        "Brings up the default open file dialog "
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   556
       "Changed by K3/EES5-Mg, 28.02.96"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   557
       "Changed by GS-EC/EES3 - Bernd Eisenmann, 14.08.03"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   558
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   559
    self hideReadonly;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   560
         shareAware;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   561
         addFilter: '*.xml' description: 'XML-Datei';
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   562
         addFilter: '*.zip' description: 'ZIP-Datei'.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   563
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   564
    self defFilter isNil ifTrue:[ self defFilter: '*.*'].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   565
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   566
    self open.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   567
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   568
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   569
!Win32FileDialog methodsFor:'initialize & release'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   570
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   571
cleanUp
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   572
        "Private - Free openFileNameStruct."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   573
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   574
    self style: self flags.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   575
    lpstrFilter notNil ifTrue: [lpstrFilter free].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   576
    lpstrFile notNil ifTrue: [lpstrFile free].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   577
    lpstrInitialDir notNil ifTrue: [lpstrInitialDir free].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   578
    lpstrTitle notNil ifTrue: [ lpstrTitle free ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   579
    lpstrDefExt notNil ifTrue: [ lpstrDefExt free ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   580
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   581
    openFileNameStruct := nil
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   582
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   583
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   584
initialize
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   585
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   586
        "Private - Initialize openFileNameStruct"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   587
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   588
    super initialize.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   589
    openFileNameStruct :=  OpenFilenameStructure new.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   590
    openFileNameStruct lStructSize: openFileNameStruct sizeInBytes.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   591
    fileName := String new.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   592
    filters := OrderedCollection new.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   593
    self style: (self class commonDialogConstantAt: 'OfnNochangedir')
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   594
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   595
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   596
!Win32FileDialog methodsFor:'opening'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   597
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   598
open
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   599
    "Brings up the open file dialog."
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   600
    
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   601
    |error rslt openFileNameStructExternalBytes|
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   602
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   603
    Lock critical:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   604
        [
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   605
            self fillStruct.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   606
            parent notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   607
                openFileNameStruct hwndOwner:parent.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   608
            ].
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   609
            style notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   610
                openFileNameStruct flags:style
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   611
            ].
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   612
            openFileNameStructExternalBytes := ExternalBytes from:openFileNameStruct asByteArray.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   613
            rslt := OperatingSystem getOpenFilename:openFileNameStructExternalBytes address.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   614
            rslt ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   615
                self getFileName
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   616
            ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   617
                fileName := nil.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   618
                error := OperatingSystem commDlgExtendedError.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   619
            ].
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   620
        ] ensure:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   621
            openFileNameStructExternalBytes free.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   622
            self cleanUp.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   623
        ].
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   624
    ].
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   625
    (error notNil and:[ error ~= 0 ]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   626
        self error:error
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   627
    ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   628
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   629
    "Modified: / 26-10-2010 / 12:51:49 / cg"
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   630
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   631
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   632
openFile
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   633
        "Brings up the default open file dialog.  The title is set to 'Open File'
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   634
        and fileSpec is set to '*.*'. "
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   635
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   636
    self openFile: '*.*'.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   637
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   638
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   639
openFile: initialFileName
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   640
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   641
        "Brings up the default open file dialog.  The title is set to 'Open File'
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   642
        and fileSpec is set to patternString. "  
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   643
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   644
    self title: 'Open'.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   645
    initialFileName notNil ifTrue: [ self initialFileName: initialFileName ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   646
    self
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   647
        hideReadonly;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   648
        shareAware;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   649
        addAllFilesFilter;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   650
        addFilter: '*.txt' description: 'Text Files (*.txt)'.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   651
    Smalltalk isStandAloneApp ifFalse: [ self addSmalltalkFileFilters ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   652
    self defFilter isNil ifTrue:[ self defFilter: '*.*'].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   653
    self open.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   654
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   655
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   656
openFor:ownerWindow
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   657
        save:isSaveDialog
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   658
        title:titleOrNil
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   659
        inDirectory:dirPathOrNil
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   660
        initialAnswer:initialOrNil
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   661
        filter:filterArrayOrNil
8402
d4b122b3a4b7 fix opening in specified directory
fm
parents: 8358
diff changeset
   662
        extension:extensionOrNil
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   663
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   664
    self 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   665
        owner: ownerWindow;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   666
        title: titleOrNil;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   667
        initialFileName: initialOrNil;
8402
d4b122b3a4b7 fix opening in specified directory
fm
parents: 8358
diff changeset
   668
        defFilter: extensionOrNil;
d4b122b3a4b7 fix opening in specified directory
fm
parents: 8358
diff changeset
   669
        directory: dirPathOrNil.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   670
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   671
    filterArrayOrNil notNil ifTrue:[
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   672
        filterArrayOrNil do:[:each | self addFilter: each last description: each first].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   673
    ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   674
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   675
    self addAllFilesFilter.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   676
"/    self defFilter isNil ifTrue:[ self defFilter: '*.*'].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   677
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   678
    isSaveDialog 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   679
        ifTrue:[
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   680
            self hideReadonly;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   681
                 overwritePrompt;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   682
                 save.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   683
        ] ifFalse:[
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   684
            self hideReadonly;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   685
                 shareAware;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   686
                 open.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   687
    ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   688
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   689
    ^ self file
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   690
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   691
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   692
save
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   693
    "Brings up the save file dialog."
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   694
    
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   695
    |error rslt openFileNameStructExternalBytes|
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   696
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   697
    Lock critical:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   698
        [
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   699
            self fillStruct.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   700
            parent notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   701
                openFileNameStruct hwndOwner:parent.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   702
            ].
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   703
            style notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   704
                openFileNameStruct flags:style
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   705
            ].
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   706
            openFileNameStructExternalBytes := ExternalBytes from:openFileNameStruct asByteArray.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   707
            rslt := OperatingSystem getSaveFilename:openFileNameStructExternalBytes address.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   708
            rslt ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   709
                self getFileName
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   710
            ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   711
                fileName := nil.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   712
                error := OperatingSystem commDlgExtendedError.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   713
            ].
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   714
        ] ensure:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   715
            openFileNameStructExternalBytes free.
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   716
            self cleanUp.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   717
        ].
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   718
    ].
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   719
    (error notNil and:[ error ~= 0 ]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   720
        self error:error
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   721
    ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   722
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
   723
    "Modified: / 26-10-2010 / 12:51:59 / cg"
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   724
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   725
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   726
saveFile: aString
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   727
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   728
        "Brings up the save file dialog with aString as the
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   729
         default name.  The title is set to 'Save File'. "
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   730
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   731
    self saveTitle: 'Save File' fileName: aString
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   732
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   733
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   734
saveTitle: aTitle fileName: initialFileName
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   735
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   736
        "Brings up the file save dialog with aTitle and aString
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   737
         as the default name."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   738
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   739
    self title: aTitle;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   740
            initialFileName: initialFileName;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   741
            hideReadonly;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   742
            overwritePrompt;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   743
            addAllFilesFilter;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   744
            addFilter: '*.txt' description: 'Text Files (*.txt)'.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   745
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   746
    self save.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   747
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   748
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   749
!Win32FileDialog methodsFor:'private'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   750
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   751
fillStruct
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   752
        "Private - fills the openFileNameStruct"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   753
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   754
    | temp |
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   755
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   756
    temp := fileName "asAsciiZ".
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   757
    lpstrFile := ExternalBytes new:512 withAll:0.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   758
    lpstrFile 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   759
        replaceBytesFrom:1 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   760
        to:temp size 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   761
        with:temp 
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   762
        startingAt:1.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   763
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   764
    lpstrFilter := ExternalBytes newNullTerminatedFromString: self filters.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   765
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   766
    lpstrInitialDir := ExternalBytes newNullTerminatedFromString: self directory pathName.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   767
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   768
    openFileNameStruct
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   769
        lpstrFile: lpstrFile address ;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   770
        nMaxFile: 512;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   771
        lpstrFilter: lpstrFilter address ;
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   772
        nFilterIndex: defFilterIndex ;      "set by filters"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   773
        lpstrInitialDir: lpstrInitialDir address.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   774
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   775
    ( temp := defExtension) notNil ifTrue: [
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   776
        lpstrDefExt := ExternalBytes newNullTerminatedFromString: temp.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   777
        openFileNameStruct lpstrDefExt: lpstrDefExt address].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   778
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   779
    ( temp := title ) notNil ifTrue: [
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   780
        lpstrTitle := ExternalBytes newNullTerminatedFromString: temp.
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   781
        openFileNameStruct lpstrTitle: lpstrTitle address ].
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   782
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   783
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   784
getFileName
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   785
        "Private - get the filename"
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   786
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   787
    | directory |
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   788
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   789
    self style: self flags.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   790
    fileName := lpstrFile stringAt: 1.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   791
    directory := fileName copyFrom: 1 to: openFileNameStruct nFileOffset.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   792
    self directory: directory asFilename.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   793
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   794
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   795
!Win32FileDialog::OpenFilenameStructure class methodsFor:'accessing'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   796
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   797
sizeInBytes
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   798
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   799
    ^ 76
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   800
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   801
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   802
!Win32FileDialog::OpenFilenameStructure class methodsFor:'instance creation'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   803
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   804
new
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   805
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   806
    ^ super new: self sizeInBytes
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   807
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   808
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   809
!Win32FileDialog::OpenFilenameStructure methodsFor:'accessing'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   810
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   811
flags
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   812
    "Answer the receiver's flags field as a Smalltalk object."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   813
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   814
    ^ self doubleWordAt: 52+1
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   815
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   816
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   817
flags: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   818
    "Set the receiver's flags field as a Smalltalk object."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   819
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   820
    ^ self doubleWordAt: 52+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   821
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   822
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   823
hInstance
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   824
    "Get the receiver's hInstance field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   825
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   826
    ^ self doubleWordAt: 8+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   827
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   828
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   829
hInstance: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   830
    "Set the receiver's hInstance field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   831
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   832
    self doubleWordAt: 8+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   833
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   834
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   835
hwndOwner
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   836
    "Get the receiver's hwndOwner field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   837
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   838
    ^ self doubleWordAt: 4+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   839
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   840
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   841
hwndOwner: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   842
    "Set the receiver's hwndOwner field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   843
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   844
    self doubleWordAt: 4+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   845
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   846
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   847
lCustData
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   848
    "Get the receiver's lCustData field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   849
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   850
    ^ self doubleWordAt: 64+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   851
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   852
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   853
lCustData: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   854
    "Set the receiver's lCustData field as a Smalltalk object."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   855
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   856
    ^ self doubleWordAt: 64+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   857
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   858
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   859
lStructSize
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   860
    "Get the receiver's lStructSize field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   861
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   862
    ^ self doubleWordAt: 0+1
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   863
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   864
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   865
lStructSize: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   866
    "Set the receiver's lStructSize field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   867
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   868
    self doubleWordAt:0+1 put:anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   869
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   870
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   871
lpfnHook
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   872
    "Get the receiver's lpfnHook field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   873
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   874
    ^ self doubleWordAt: 68+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   875
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   876
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   877
lpfnHook: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   878
    "Set the receiver's lpfnHook field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   879
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   880
    self doubleWordAt: 68+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   881
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   882
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   883
lpstrCustomFilter
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   884
    "Get the receiver's lpstrCustomFilter field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   885
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   886
    ^ self doubleWordAt: 16+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   887
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   888
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   889
lpstrCustomFilter: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   890
    "Set the receiver's lpstrCustomFilter field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   891
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   892
    self doubleWordAt: 16+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   893
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   894
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   895
lpstrDefExt
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   896
    "Get the receiver's lpstrDefExt field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   897
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   898
    ^ self doubleWordAt: 60+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   899
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   900
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   901
lpstrDefExt: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   902
    "Set the receiver's lpstrDefExt field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   903
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   904
    self doubleWordAt: 60+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   905
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   906
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   907
lpstrFile
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   908
    "Get the receiver's lpstrFile field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   909
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   910
    ^ self doubleWordAt: 28+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   911
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   912
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   913
lpstrFile: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   914
    "Set the receiver's lpstrFile field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   915
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   916
    self doubleWordAt: 28+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   917
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   918
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   919
lpstrFileTitle
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   920
    "Get the receiver's lpstrFileTitle field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   921
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   922
    ^ self doubleWordAt: 36+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   923
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   924
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   925
lpstrFileTitle: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   926
    "Set the receiver's lpstrFileTitle field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   927
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   928
    self doubleWordAt: 36+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   929
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   930
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   931
lpstrFilter
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   932
    "Get the receiver's lpstrFilter field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   933
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   934
    ^ self doubleWordAt: 12+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   935
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   936
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   937
lpstrFilter: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   938
    "Set the receiver's lpstrFilter field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   939
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   940
    self doubleWordAt: 12+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   941
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   942
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   943
lpstrInitialDir
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   944
    "Get the receiver's lpstrInitialDir field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   945
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   946
    ^ self doubleWordAt: 44+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   947
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   948
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   949
lpstrInitialDir: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   950
    "Set the receiver's lpstrInitialDir field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   951
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   952
    self doubleWordAt: 44+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   953
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   954
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   955
lpstrTemplateName
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   956
    "Get the receiver's lpstrTemplateName field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   957
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   958
    ^ self doubleWordAt: 72+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   959
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   960
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   961
lpstrTemplateName: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   962
    "Set the receiver's lpstrTemplateName field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   963
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   964
    self doubleWordAt: 72+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   965
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   966
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   967
lpstrTitle
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   968
    "Get the receiver's lpstrTitle field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   969
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   970
    ^ self doubleWordAt: 48+1
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   971
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   972
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   973
lpstrTitle: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   974
    "Set the receiver's lpstrTitle field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   975
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   976
    self doubleWordAt: 48+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   977
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   978
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   979
nFileExtension
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   980
    "Get the receiver's nFileExtension field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   981
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   982
    ^ self unsignedShortAt: 58+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   983
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   984
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   985
nFileExtension: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   986
    "Set the receiver's nFileExtension field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   987
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   988
    self unsignedShortAt: 58+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   989
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   990
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   991
nFileOffset
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   992
    "Get the receiver's nFileOffset field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   993
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
   994
    ^ self unsignedShortAt: 56+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   995
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   996
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   997
nFileOffset: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   998
    "Set the receiver's nFileOffset field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
   999
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
  1000
    self unsignedShortAt: 56+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1001
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1002
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1003
nFilterIndex
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1004
    "Get the receiver's nFilterIndex field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1005
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
  1006
    ^ self doubleWordAt: 24+1 
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1007
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1008
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1009
nFilterIndex: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1010
    "Set the receiver's nFilterIndex field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1011
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
  1012
    self doubleWordAt: 24+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1013
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1014
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1015
nMaxCustFilter
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1016
    "Get the receiver's nMaxCustFilter field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1017
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
  1018
    ^ self doubleWordAt: 20+1
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1019
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1020
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1021
nMaxCustFilter: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1022
    "Set the receiver's nMaxCustFilter field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1023
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
  1024
    self doubleWordAt: 20+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1025
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1026
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1027
nMaxFile
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1028
    "Get the receiver's nMaxFile field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1029
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
  1030
    ^ self doubleWordAt: 32+1
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1031
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1032
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1033
nMaxFile: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1034
    "Set the receiver's nMaxFile field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1035
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
  1036
    self doubleWordAt: 32+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1037
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1038
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1039
nMaxFileTitle
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1040
    "Get the receiver's nMaxFileTitle field."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1041
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
  1042
    ^ self doubleWordAt: 40+1
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1043
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1044
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1045
nMaxFileTitle: anObject
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1046
    "Set the receiver's nMaxFileTitle field to the value of anObject."
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1047
8037
04b0b1939a14 double*AtOffset -> double*
Claus Gittinger <cg@exept.de>
parents: 8015
diff changeset
  1048
    self doubleWordAt: 40+1 put: anObject
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1049
!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1050
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1051
sizeInBytes
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1052
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1053
    ^ self class sizeInBytes
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1054
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1055
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1056
!Win32FileDialog::OpenFilenameStructure methodsFor:'printing'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1057
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1058
printOn: aStream
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1059
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1060
    super printOn: aStream.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1061
    aStream cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1062
    aStream nextPutAll:'flags: ', self flags printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1063
    aStream nextPutAll:'hInstance: ', self hInstance printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1064
    aStream nextPutAll:'hwndOwner: ', self hwndOwner printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1065
    aStream nextPutAll:'lCustData: ', self lCustData printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1066
    aStream nextPutAll:'lpfnHook: ', self lpfnHook printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1067
    aStream nextPutAll:'lpstrCustomFilter: ', self lpstrCustomFilter printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1068
    aStream nextPutAll:'lpstrDefExt: ', self lpstrDefExt printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1069
    aStream nextPutAll:'lpstrFile: ', self lpstrFile printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1070
    aStream nextPutAll:'lpstrFileTitle: ', self lpstrFileTitle printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1071
    aStream nextPutAll:'lpstrFilter: ', self lpstrFilter printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1072
    aStream nextPutAll:'lpstrInitialDir: ', self lpstrInitialDir printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1073
    aStream nextPutAll:'lpstrTemplateName: ', self lpstrTemplateName printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1074
    aStream nextPutAll:'lStructSize: ', self lStructSize printString; cr.
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1075
    aStream nextPutAll:'nFileExtension: ', self nFileExtension printString; cr.    
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1076
    aStream nextPutAll:'nFileOffset: ', self nFileOffset printString; cr.    
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1077
    aStream nextPutAll:'nFilterIndex: ', self nFilterIndex printString; cr.    
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1078
    aStream nextPutAll:'nMaxCustFilter: ', self nMaxCustFilter printString; cr.    
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1079
    aStream nextPutAll:'nMaxFile: ', self nMaxFile printString; cr.    
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1080
    aStream nextPutAll:'nMaxFileTitle: ', self nMaxFileTitle printString; cr.    
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1081
! !
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1082
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1083
!Win32FileDialog class methodsFor:'documentation'!
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1084
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1085
version
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
  1086
    ^ '$Header: /cvs/stx/stx/libtool/Win32FileDialog.st,v 1.8 2010-10-26 16:44:44 cg Exp $'
9345
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
  1087
!
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
  1088
fa51879ca252 comment/format
Claus Gittinger <cg@exept.de>
parents: 8402
diff changeset
  1089
version_CVS
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
  1090
    ^ '$Header: /cvs/stx/stx/libtool/Win32FileDialog.st,v 1.8 2010-10-26 16:44:44 cg Exp $'
8015
4e27ebbd5d79 initial checkin
fm
parents:
diff changeset
  1091
! !
9597
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
  1092
Claus Gittinger <cg@exept.de>
parents: 9345
diff changeset
  1093
Win32FileDialog initialize!