notepad: Allow files to be saved in different encodings.

Alexander Scott-Johns alexander.scott.johns at googlemail.com
Tue Jun 16 21:36:26 CDT 2009


---
 programs/notepad/dialog.c |   90 +++++++++++++++++++++++++++++++++++----------
 1 files changed, 70 insertions(+), 20 deletions(-)

--001636c5a9fff0ff15046d34e360
Content-Type: text/plain; charset=US-ASCII; name="0002-notepad-saving-2009-06-25.txt"
Content-Disposition: attachment; 
	filename="0002-notepad-saving-2009-06-25.txt"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_fwe2tr0w0

RnJvbSA0Nzc4NzZlMDNlZGMxOTNkYWM1MTg2Y2IwNjQ0OTQ4YWEwNTJiMDVmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGV4YW5kZXIgU2NvdHQtSm9obnMgPGFsZXhhbmRlci5zY290
dC5qb2huc0Bnb29nbGVtYWlsLmNvbT4KRGF0ZTogV2VkLCAxNyBKdW4gMjAwOSAwMzozNjoyNiAr
MDEwMApTdWJqZWN0OiBub3RlcGFkOiBBbGxvdyBmaWxlcyB0byBiZSBzYXZlZCBpbiBkaWZmZXJl
bnQgZW5jb2RpbmdzLgoKLS0tCiBwcm9ncmFtcy9ub3RlcGFkL2RpYWxvZy5jIHwgICA5MCArKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KIDEgZmlsZXMgY2hhbmdl
ZCwgNzAgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvcHJvZ3Jh
bXMvbm90ZXBhZC9kaWFsb2cuYyBiL3Byb2dyYW1zL25vdGVwYWQvZGlhbG9nLmMKaW5kZXggMjQ2
NzMwNS4uOWFhYzVhYiAxMDA2NDQKLS0tIGEvcHJvZ3JhbXMvbm90ZXBhZC9kaWFsb2cuYworKysg
Yi9wcm9ncmFtcy9ub3RlcGFkL2RpYWxvZy5jCkBAIC0xNTksMzkgKzE1OSw4NCBAQCBCT09MIEZp
bGVFeGlzdHMoTFBDV1NUUiBzekZpbGVuYW1lKQogfQogCiAKLXN0YXRpYyBWT0lEIERvU2F2ZUZp
bGUoVk9JRCkKK3N0YXRpYyBWT0lEIERvU2F2ZUZpbGUoTFBDV1NUUiBzekZpbGVOYW1lLCBFTkNP
RElORyBlbmMpCiB7CisgICAgaW50IGxlblc7CisgICAgV0NIQVIqIHRleHRXOwogICAgIEhBTkRM
RSBoRmlsZTsKICAgICBEV09SRCBkd051bVdyaXRlOwotICAgIExQU1RSIHBUZW1wOworICAgIFBW
T0lEIHBCeXRlczsKICAgICBEV09SRCBzaXplOwogCi0gICAgaEZpbGUgPSBDcmVhdGVGaWxlVyhH
bG9iYWxzLnN6RmlsZU5hbWUsIEdFTkVSSUNfV1JJVEUsIEZJTEVfU0hBUkVfV1JJVEUsCi0gICAg
ICAgICAgICAgICAgICAgICAgIE5VTEwsIE9QRU5fQUxXQVlTLCBGSUxFX0FUVFJJQlVURV9OT1JN
QUwsIE5VTEwpOwotICAgIGlmKGhGaWxlID09IElOVkFMSURfSEFORExFX1ZBTFVFKQorICAgIC8q
IGxlblcgaW5jbHVkZXMgdGhlIGJ5dGUtb3JkZXIgbWFyaywgYnV0IG5vdCB0aGUgXDAuICovCisg
ICAgbGVuVyA9IEdldFdpbmRvd1RleHRMZW5ndGhXKEdsb2JhbHMuaEVkaXQpICsgMTsKKyAgICB0
ZXh0VyA9IEhlYXBBbGxvYyhHZXRQcm9jZXNzSGVhcCgpLCAwLCAobGVuVysxKSAqIHNpemVvZihX
Q0hBUikpOworICAgIGlmICghdGV4dFcpCiAgICAgewogICAgICAgICBTaG93TGFzdEVycm9yKCk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CisgICAgdGV4dFdbMF0gPSAoV0NIQVIpIDB4ZmVmZjsK
KyAgICBsZW5XID0gR2V0V2luZG93VGV4dFcoR2xvYmFscy5oRWRpdCwgdGV4dFcrMSwgbGVuVykg
KyAxOwogCi0gICAgc2l6ZSA9IEdldFdpbmRvd1RleHRMZW5ndGhBKEdsb2JhbHMuaEVkaXQpICsg
MTsKLSAgICBwVGVtcCA9IEhlYXBBbGxvYyhHZXRQcm9jZXNzSGVhcCgpLCAwLCBzaXplKTsKLSAg
ICBpZiAoIXBUZW1wKQorICAgIHN3aXRjaCAoZW5jKQorICAgIHsKKyAgICBjYXNlIEVOQ09ESU5H
X1VURjE2QkU6CisgICAgICAgIGJ5dGVzd2FwX3dpZGVfc3RyaW5nKHRleHRXLCBsZW5XKTsKKyAg
ICAgICAgLyogZmFsbCB0aHJvdWdoICovCisKKyAgICBjYXNlIEVOQ09ESU5HX1VURjE2TEU6Cisg
ICAgICAgIHNpemUgPSBsZW5XICogc2l6ZW9mKFdDSEFSKTsKKyAgICAgICAgcEJ5dGVzID0gdGV4
dFc7CisgICAgICAgIGJyZWFrOworCisgICAgY2FzZSBFTkNPRElOR19VVEY4OgorICAgICAgICBz
aXplID0gV2lkZUNoYXJUb011bHRpQnl0ZShDUF9VVEY4LCAwLCB0ZXh0VywgbGVuVywgTlVMTCwg
MCwgTlVMTCwgTlVMTCk7CisgICAgICAgIHBCeXRlcyA9IEhlYXBBbGxvYyhHZXRQcm9jZXNzSGVh
cCgpLCAwLCBzaXplKTsKKyAgICAgICAgaWYgKCFwQnl0ZXMpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIFNob3dMYXN0RXJyb3IoKTsKKyAgICAgICAgICAgIEhlYXBGcmVlKEdldFByb2Nlc3NIZWFw
KCksIDAsIHRleHRXKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBX
aWRlQ2hhclRvTXVsdGlCeXRlKENQX1VURjgsIDAsIHRleHRXLCBsZW5XLCBwQnl0ZXMsIHNpemUs
IE5VTEwsIE5VTEwpOworICAgICAgICBIZWFwRnJlZShHZXRQcm9jZXNzSGVhcCgpLCAwLCB0ZXh0
Vyk7CisgICAgICAgIGJyZWFrOworCisgICAgZGVmYXVsdDoKKyAgICAgICAgc2l6ZSA9IFdpZGVD
aGFyVG9NdWx0aUJ5dGUoQ1BfQUNQLCAwLCB0ZXh0VysxLCBsZW5XLTEsIE5VTEwsIDAsIE5VTEws
IE5VTEwpOworICAgICAgICBwQnl0ZXMgPSBIZWFwQWxsb2MoR2V0UHJvY2Vzc0hlYXAoKSwgMCwg
c2l6ZSk7CisgICAgICAgIGlmICghcEJ5dGVzKQorICAgICAgICB7CisgICAgICAgICAgICBTaG93
TGFzdEVycm9yKCk7CisgICAgICAgICAgICBIZWFwRnJlZShHZXRQcm9jZXNzSGVhcCgpLCAwLCB0
ZXh0Vyk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgV2lkZUNoYXJU
b011bHRpQnl0ZShDUF9BQ1AsIDAsIHRleHRXKzEsIGxlblctMSwgcEJ5dGVzLCBzaXplLCBOVUxM
LCBOVUxMKTsKKyAgICAgICAgSGVhcEZyZWUoR2V0UHJvY2Vzc0hlYXAoKSwgMCwgdGV4dFcpOwor
ICAgICAgICBicmVhazsKKyAgICB9CisKKyAgICBoRmlsZSA9IENyZWF0ZUZpbGVXKHN6RmlsZU5h
bWUsIEdFTkVSSUNfV1JJVEUsIEZJTEVfU0hBUkVfV1JJVEUsCisgICAgICAgICAgICAgICAgICAg
ICAgIE5VTEwsIE9QRU5fQUxXQVlTLCBGSUxFX0FUVFJJQlVURV9OT1JNQUwsIE5VTEwpOworICAg
IGlmIChoRmlsZSA9PSBJTlZBTElEX0hBTkRMRV9WQUxVRSkKICAgICB7Ci0JQ2xvc2VIYW5kbGUo
aEZpbGUpOwogICAgICAgICBTaG93TGFzdEVycm9yKCk7CisgICAgICAgIEhlYXBGcmVlKEdldFBy
b2Nlc3NIZWFwKCksIDAsIHBCeXRlcyk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgc2l6
ZSA9IEdldFdpbmRvd1RleHRBKEdsb2JhbHMuaEVkaXQsIHBUZW1wLCBzaXplKTsKLQotICAgIGlm
ICghV3JpdGVGaWxlKGhGaWxlLCBwVGVtcCwgc2l6ZSwgJmR3TnVtV3JpdGUsIE5VTEwpKQorICAg
IGlmICghV3JpdGVGaWxlKGhGaWxlLCBwQnl0ZXMsIHNpemUsICZkd051bVdyaXRlLCBOVUxMKSkK
KyAgICB7CiAgICAgICAgIFNob3dMYXN0RXJyb3IoKTsKLSAgICBlbHNlCi0gICAgICAgIFNlbmRN
ZXNzYWdlVyhHbG9iYWxzLmhFZGl0LCBFTV9TRVRNT0RJRlksIEZBTFNFLCAwKTsKLQorICAgICAg
ICBDbG9zZUhhbmRsZShoRmlsZSk7CisgICAgICAgIEhlYXBGcmVlKEdldFByb2Nlc3NIZWFwKCks
IDAsIHBCeXRlcyk7CisgICAgICAgIHJldHVybjsKKyAgICB9CiAgICAgU2V0RW5kT2ZGaWxlKGhG
aWxlKTsKICAgICBDbG9zZUhhbmRsZShoRmlsZSk7Ci0gICAgSGVhcEZyZWUoR2V0UHJvY2Vzc0hl
YXAoKSwgMCwgcFRlbXApOworICAgIEhlYXBGcmVlKEdldFByb2Nlc3NIZWFwKCksIDAsIHBCeXRl
cyk7CisKKyAgICBTZW5kTWVzc2FnZVcoR2xvYmFscy5oRWRpdCwgRU1fU0VUTU9ESUZZLCBGQUxT
RSwgMCk7CiB9CiAKIC8qKgpAQCAtNDM3LDcgKzQ4Miw3IEBAIEJPT0wgRElBTE9HX0ZpbGVTYXZl
KFZPSUQpCiAgICAgaWYgKEdsb2JhbHMuc3pGaWxlTmFtZVswXSA9PSAnXDAnKQogICAgICAgICBy
ZXR1cm4gRElBTE9HX0ZpbGVTYXZlQXMoKTsKICAgICBlbHNlCi0gICAgICAgIERvU2F2ZUZpbGUo
KTsKKyAgICAgICAgRG9TYXZlRmlsZShHbG9iYWxzLnN6RmlsZU5hbWUsIEVOQ09ESU5HX0FOU0kp
OwogICAgIHJldHVybiBUUlVFOwogfQogCkBAIC00NjEsMTQgKzUwNiwxOSBAQCBCT09MIERJQUxP
R19GaWxlU2F2ZUFzKFZPSUQpCiAgICAgc2F2ZWFzLmxwc3RyRmlsZSAgICAgICAgID0gc3pQYXRo
OwogICAgIHNhdmVhcy5uTWF4RmlsZSAgICAgICAgICA9IEFSUkFZX1NJWkUoc3pQYXRoKTsKICAg
ICBzYXZlYXMubHBzdHJJbml0aWFsRGlyICAgPSBzekRpcjsKLSAgICBzYXZlYXMuRmxhZ3MgICAg
ICAgICAgICAgPSBPRk5fUEFUSE1VU1RFWElTVCB8IE9GTl9PVkVSV1JJVEVQUk9NUFQgfAotICAg
ICAgICBPRk5fSElERVJFQURPTkxZIHwgT0ZOX0VOQUJMRVNJWklORzsKKyAgICBzYXZlYXMuRmxh
Z3MgICAgICAgICAgPSBPRk5fRU5BQkxFVEVNUExBVEUgfCBPRk5fRU5BQkxFSE9PSyB8IE9GTl9F
WFBMT1JFUiB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgT0ZOX1BBVEhNVVNURVhJU1Qg
fCBPRk5fT1ZFUldSSVRFUFJPTVBUIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBPRk5f
SElERVJFQURPTkxZIHwgT0ZOX0VOQUJMRVNJWklORzsKKyAgICBzYXZlYXMubHBmbkhvb2sgICAg
ICAgICAgPSBPZm5Ib29rUHJvYzsKKyAgICBzYXZlYXMubHBUZW1wbGF0ZU5hbWUgICAgPSBNQUtF
SU5UUkVTT1VSQ0VXKElERF9PRk5fVEVNUExBVEUpOwogICAgIHNhdmVhcy5scHN0ckRlZkV4dCAg
ICAgICA9IHN6RGVmYXVsdEV4dDsKIAorICAgIEdsb2JhbHMuZW5jT2ZuQ29tYm8gPSBFTkNPRElO
R19BTlNJOworCiAgICAgaWYgKEdldFNhdmVGaWxlTmFtZVcoJnNhdmVhcykpIHsKICAgICAgICAg
U2V0RmlsZU5hbWUoc3pQYXRoKTsKICAgICAgICAgVXBkYXRlV2luZG93Q2FwdGlvbigpOwotICAg
ICAgICBEb1NhdmVGaWxlKCk7CisgICAgICAgIERvU2F2ZUZpbGUoc3pQYXRoLCBHbG9iYWxzLmVu
Y09mbkNvbWJvKTsKICAgICAgICAgcmV0dXJuIFRSVUU7CiAgICAgfQogICAgIHJldHVybiBGQUxT
RTsKLS0gCjEuNS42LjMKCg==
--001636c5a9fff0ff15046d34e360--



More information about the wine-patches mailing list