From a43295d1ecf78ab1649c008a3a271ebd91e68c9e Mon Sep 17 00:00:00 2001
From: Marcel Baur <mbaur@g26.ethz.ch>
Date: Sun, 18 Oct 1998 14:11:42 +0000
Subject: [PATCH] Fixed GetOpenFileName and GetSaveFileName dialogs. Fixed
 Print dialog and introduced PrinterSetup dialog. Fixed PageSetup dialog:
 values are now correctly initialized (had to change all *.rc files)
 Preliminary file drag and drop support.

---
 programs/notepad/Da.rc      | 133 +++++++++++++++++---------------
 programs/notepad/De.rc      | 134 +++++++++++++++++---------------
 programs/notepad/En.rc      | 135 ++++++++++++++++----------------
 programs/notepad/Fr.rc      | 133 +++++++++++++++++---------------
 programs/notepad/Sw.rc      | 130 ++++++++++++++++---------------
 programs/notepad/TODO       |   5 --
 programs/notepad/dialog.c   | 148 ++++++++++++++++++++++++++----------
 programs/notepad/dialog.h   |   4 +-
 programs/notepad/language.c |  10 ++-
 programs/notepad/language.h |   6 +-
 programs/notepad/license.c  |   5 +-
 programs/notepad/license.h  |   5 +-
 programs/notepad/main.c     |  57 +++++++++-----
 programs/notepad/main.h     |  33 ++++----
 programs/notepad/notepad.rc |  45 ++++++-----
 15 files changed, 565 insertions(+), 418 deletions(-)

diff --git a/programs/notepad/Da.rc b/programs/notepad/Da.rc
index 668390f7f21..1308b531951 100644
--- a/programs/notepad/Da.rc
+++ b/programs/notepad/Da.rc
@@ -1,77 +1,87 @@
 /*
- * Notepad (Danish resources)
+ *  Notepad (Danish resources)
  *
- * Copyright 1998 Henrik Olsen <henrik@iaeste.dk>
+ *  Copyright 1998 Henrik Olsen <henrik@iaeste.dk>
  */
 
-#define LANGUAGE_ID                  Da
-#define LANGUAGE_NUMBER              6
-#define LANGUAGE_MENU_ITEM           "&Dansk"
+#define LANGUAGE_ID                     Da
+#define LANGUAGE_NUMBER                 6
+#define LANGUAGE_MENU_ITEM              "&Dansk"
 
 /* Menu */
 
-#define MENU_FILE                    "&Filef"
-#define MENU_FILE_NEW                "&Ny..."
-#define MENU_FILE_OPEN               "Å&bn\tEnter"
-#define MENU_FILE_SAVE               "&Gem"
-#define MENU_FILE_SAVEAS             "Gem so&m..."
-#define MENU_FILE_PRINT              "&Udskriv"
-#define MENU_FILE_PAGESETUP          "Side&opsætning..."
-#define MENU_FILE_PRINTSETUP         "&Indstil printer..."
-#define MENU_FILE_EXIT               "&Afslut"
-
-#define MENU_EDIT                    "&Rediger"
-#define MENU_EDIT_UNDO               "&Fortryd\tCtrl+Z"
-#define MENU_EDIT_CUT                "&Klip\tCtrl+X"
-#define MENU_EDIT_COPY               "K&opier\tCtrl+C"
-#define MENU_EDIT_PASTE              "Sæt &ind\tCtrl+V"
-#define MENU_EDIT_DELETE             "&Slet\tDel"
-#define MENU_EDIT_SELECTALL          "Marker &alt"
-#define MENU_EDIT_TIMEDATE           "&Dato/tid\tF5"
-#define MENU_EDIT_WRAP               "Automatisk &linjeskift"
-
-#define MENU_SEARCH                  "&Søg"
-#define MENU_SEARCH_SEARCH           "&Søg..."
-#define MENU_SEARCH_NEXT             "&Find næste\tF3"
-
-#define MENU_LANGUAGE                "S&prog"
-
-#define MENU_HELP                    "&Hjælp"
-#define MENU_HELP_CONTENTS           "&Indhold"
-#define MENU_HELP_SEARCH             "&Søg efter hjælp om..."
-#define MENU_HELP_HELP_ON_HELP       "&Brug af Hjælp"
-
-#define MENU_INFO                    "&Om Notesblok..."
-#define MENU_INFO_LICENSE            "&Licens"
-#define MENU_INFO_NO_WARRANTY        "&NO WARRANTY"
-#define MENU_INFO_ABOUT_WINE         "&Om WINE"
+#define MENU_FILE                       "&Filef"
+#define MENU_FILE_NEW                   "&Ny..."
+#define MENU_FILE_OPEN                  "Å&bn\tEnter"
+#define MENU_FILE_SAVE                  "&Gem"
+#define MENU_FILE_SAVEAS                "Gem so&m..."
+#define MENU_FILE_PRINT                 "&Udskriv"
+#define MENU_FILE_PAGESETUP             "Side&opsætning..."
+#define MENU_FILE_PRINTSETUP            "&Indstil printer..."
+#define MENU_FILE_EXIT                  "&Afslut"
+
+#define MENU_EDIT                       "&Rediger"
+#define MENU_EDIT_UNDO                  "&Fortryd\tCtrl+Z"
+#define MENU_EDIT_CUT                   "&Klip\tCtrl+X"
+#define MENU_EDIT_COPY                  "K&opier\tCtrl+C"
+#define MENU_EDIT_PASTE                 "Sæt &ind\tCtrl+V"
+#define MENU_EDIT_DELETE                "&Slet\tDel"
+#define MENU_EDIT_SELECTALL             "Marker &alt"
+#define MENU_EDIT_TIMEDATE              "&Dato/tid\tF5"
+#define MENU_EDIT_WRAP                  "Automatisk &linjeskift"
+
+#define MENU_SEARCH                     "&Søg"
+#define MENU_SEARCH_SEARCH              "&Søg..."
+#define MENU_SEARCH_NEXT                "&Find næste\tF3"
+
+#define MENU_LANGUAGE                   "S&prog"
+
+#define MENU_HELP                       "&Hjælp"
+#define MENU_HELP_CONTENTS              "&Indhold"
+#define MENU_HELP_SEARCH                "&Søg efter hjælp om..."
+#define MENU_HELP_HELP_ON_HELP          "&Brug af Hjælp"
+
+#define MENU_INFO                       "&Om Notesblok..."
+#define MENU_INFO_LICENSE               "&Licens"
+#define MENU_INFO_NO_WARRANTY           "&NO WARRANTY"
+#define MENU_INFO_ABOUT_WINE            "&Om WINE"
+
 
 /* Dialogs */
-#define DIALOG_OK                    "OK"
-#define DIALOG_CANCEL                "Annuller"
-#define DIALOG_BROWSE                "&Gennemse..."
-#define DIALOG_HELP                  "&Hjælp"
 
-#define DIALOG_PAGESETUP_CAPTION     "Sideopsætning"
-#define DIALOG_PAGESETUP_HEAD        "&Sidehoved:"
-#define DIALOG_PAGESETUP_TAIL        "Side&fod:"
-#define DIALOG_PAGESETUP_MARGIN      "Margener:"
-#define DIALOG_PAGESETUP_LEFT        "&Venstre:"
-#define DIALOG_PAGESETUP_RIGHT       "&Højre:"
-#define DIALOG_PAGESETUP_TOP         "&Top:"
-#define DIALOG_PAGESETUP_BOTTOM      "&Bund:"
+#define DIALOG_OK                       "OK"
+#define DIALOG_CANCEL                   "Annuller"
+#define DIALOG_BROWSE                   "&Gennemse..."
+#define DIALOG_HELP                     "&Hjælp"
+
+#define DIALOG_PAGESETUP_CAPTION        "Sideopsætning"
+#define DIALOG_PAGESETUP_HEAD           "&Sidehoved:"
+#define DIALOG_PAGESETUP_TAIL           "Side&fod:"
+#define DIALOG_PAGESETUP_MARGIN         "Margener:"
+#define DIALOG_PAGESETUP_LEFT           "&Venstre:"
+#define DIALOG_PAGESETUP_RIGHT          "&Højre:"
+#define DIALOG_PAGESETUP_TOP            "&Top:"
+#define DIALOG_PAGESETUP_BOTTOM         "&Bund:"
+
 
+/* Strings */
+
+#define STRING_PAGESETUP_HEADERVALUE    "&n"        /* FIXME */
+#define STRING_PAGESETUP_FOOTERVALUE    "Page &s"   /* FIXME */
+#define STRING_PAGESETUP_LEFTVALUE      "20 mm"     /* FIXME */
+#define STRING_PAGESETUP_RIGHTVALUE     "20 mm"     /* FIXME */
+#define STRING_PAGESETUP_TOPVALUE       "25 mm"     /* FIXME */
+#define STRING_PAGESETUP_BOTTOMVALUE    "25 mm"     /* FIXME */
 
-/* Strings */
-#define STRING_NOTEPAD               "Notesblok"
-#define STRING_ERROR                 "FEJL"
-#define STRING_WARNING               "ADVARSEL"
-#define STRING_INFO                  "Information"
+#define STRING_NOTEPAD                  "Notesblok"
+#define STRING_ERROR                    "FEJL"
+#define STRING_WARNING                  "ADVARSEL"
+#define STRING_INFO                     "Information"
 
-#define STRING_UNTITLED              "(ikke-navngivet)"
+#define STRING_UNTITLED                 "(ikke-navngivet)"
 
-#define STRING_ALL_FILES             "Alle filer (*.*)"
-#define STRING_TEXT_FILES_TXT        "Tekst filer (*.txt)"
+#define STRING_ALL_FILES                "Alle filer (*.*)"
+#define STRING_TEXT_FILES_TXT           "Tekst filer (*.txt)"
 
 #define STRING_TOOLARGE         "Filen '%s' er for stor til Notesblok. \
 \nBrug en anden editor til at redigere filen."
@@ -86,6 +96,3 @@ denne operation. \nAfslut et eller flere aktive programmer for at frig
 hukommelse, og prøv så igen."
 
 #include "notepad.rc"
-
-
-
diff --git a/programs/notepad/De.rc b/programs/notepad/De.rc
index f409233b3c7..6e201d2b98c 100644
--- a/programs/notepad/De.rc
+++ b/programs/notepad/De.rc
@@ -1,79 +1,89 @@
 /*
- * Notepad (German resources)
+ *  Notepad (German resources)
  *
- * Copyright 1997 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  To be distributed under the Wine License
  */
 
-#define LANGUAGE_ID                  De
-#define LANGUAGE_NUMBER              2
-#define LANGUAGE_MENU_ITEM           "&Deutsch"
+#define LANGUAGE_ID                     De
+#define LANGUAGE_NUMBER                 2
+#define LANGUAGE_MENU_ITEM              "&Deutsch"
+
 
 /* Menu */
 
-#define MENU_FILE                    "&Datei"
-#define MENU_FILE_NEW                "&Neu..."
-#define MENU_FILE_OPEN               "Ö&ffnen..."
-#define MENU_FILE_SAVE               "&Speichern"
-#define MENU_FILE_SAVEAS             "Speichern &unter..."
-#define MENU_FILE_PRINT              "&Drucken"
-#define MENU_FILE_PAGESETUP          "Seite ein&richten..."
-#define MENU_FILE_PRINTSETUP         "Drucker&einrichtung..."
-#define MENU_FILE_EXIT               "&Beenden"
-
-#define MENU_EDIT                    "&Bearbeiten"
-#define MENU_EDIT_UNDO               "&Rückgängig\tStrg+Z"
-#define MENU_EDIT_CUT                "&Ausschneiden\tStrg+X"
-#define MENU_EDIT_COPY               "&Kopieren\tStrg+C"
-#define MENU_EDIT_PASTE              "&Einfügen\tStrg+V"
-#define MENU_EDIT_DELETE             "&Löschen\tEntf"
-#define MENU_EDIT_SELECTALL          "Alles &markieren"
-#define MENU_EDIT_TIMEDATE           "&Uhrzeit/Datum\tF5"
-#define MENU_EDIT_WRAP               "&Zeilenumbruch"
-
-#define MENU_SEARCH                  "&Suchen"
-#define MENU_SEARCH_SEARCH           "Suchen..."
-#define MENU_SEARCH_NEXT             "&Weitersuchen\tF3"
-
-#define MENU_LANGUAGE                "&Sprache"
-
-#define MENU_HELP                    "&Hilfe"
-#define MENU_HELP_CONTENTS           "&Inhalt"
-#define MENU_HELP_SEARCH             "&Suchen..."
-#define MENU_HELP_HELP_ON_HELP       "&Hilfe benutzen"
-
-#define MENU_INFO                    "Inf&o..."
-#define MENU_INFO_LICENSE            "&Lizenz"
-#define MENU_INFO_NO_WARRANTY        "&KEINE GARANTIE"
-#define MENU_INFO_ABOUT_WINE         "&Über WINE"
+#define MENU_FILE                       "&Datei"
+#define MENU_FILE_NEW                   "&Neu..."
+#define MENU_FILE_OPEN                  "Ö&ffnen..."
+#define MENU_FILE_SAVE                  "&Speichern"
+#define MENU_FILE_SAVEAS                "Speichern &unter..."
+#define MENU_FILE_PRINT                 "&Drucken"
+#define MENU_FILE_PAGESETUP             "Seite ein&richten..."
+#define MENU_FILE_PRINTSETUP            "Drucker&einrichtung..."
+#define MENU_FILE_EXIT                  "&Beenden"
+
+#define MENU_EDIT                       "&Bearbeiten"
+#define MENU_EDIT_UNDO                  "&Rückgängig\tStrg+Z"
+#define MENU_EDIT_CUT                   "&Ausschneiden\tStrg+X"
+#define MENU_EDIT_COPY                  "&Kopieren\tStrg+C"
+#define MENU_EDIT_PASTE                 "&Einfügen\tStrg+V"
+#define MENU_EDIT_DELETE                "&Löschen\tEntf"
+#define MENU_EDIT_SELECTALL             "Alles &markieren"
+#define MENU_EDIT_TIMEDATE              "&Uhrzeit/Datum\tF5"
+#define MENU_EDIT_WRAP                  "&Zeilenumbruch"
+
+#define MENU_SEARCH                     "&Suchen"
+#define MENU_SEARCH_SEARCH              "Suchen..."
+#define MENU_SEARCH_NEXT                "&Weitersuchen\tF3"
+
+#define MENU_LANGUAGE                   "&Sprache"
+
+#define MENU_HELP                       "&Hilfe"
+#define MENU_HELP_CONTENTS              "&Inhalt"
+#define MENU_HELP_SEARCH                "&Suchen..."
+#define MENU_HELP_HELP_ON_HELP          "&Hilfe benutzen"
+
+#define MENU_INFO                       "Inf&o..."
+#define MENU_INFO_LICENSE               "&Lizenz"
+#define MENU_INFO_NO_WARRANTY           "&KEINE GARANTIE"
+#define MENU_INFO_ABOUT_WINE            "&Über WINE"
 
 
 /* Dialogs */
 
-#define DIALOG_OK                    "OK"
-#define DIALOG_CANCEL                "Abbrechen"
-#define DIALOG_BROWSE                "&Durchsuchen..."
-#define DIALOG_HELP                  "&Hilfe"
+#define DIALOG_OK                       "OK"
+#define DIALOG_CANCEL                   "Abbrechen"
+#define DIALOG_BROWSE                   "&Durchsuchen..."
+#define DIALOG_HELP                     "&Hilfe"
 
-#define DIALOG_PAGESETUP_CAPTION     "Seite einrichten"
-#define DIALOG_PAGESETUP_HEAD        "&Kopfzeile:"
-#define DIALOG_PAGESETUP_TAIL        "&Fußzeile:"
-#define DIALOG_PAGESETUP_MARGIN      "Ränder"
-#define DIALOG_PAGESETUP_LEFT        "&Links:"
-#define DIALOG_PAGESETUP_RIGHT       "&Rechts:"
-#define DIALOG_PAGESETUP_TOP         "&Oben:"
-#define DIALOG_PAGESETUP_BOTTOM      "&Unten:"
+#define DIALOG_PAGESETUP_CAPTION        "Seite einrichten"
+#define DIALOG_PAGESETUP_HEAD           "&Kopfzeile:"
+#define DIALOG_PAGESETUP_TAIL           "&Fußzeile:"
+#define DIALOG_PAGESETUP_MARGIN         "Ränder"
+#define DIALOG_PAGESETUP_LEFT           "&Links:"
+#define DIALOG_PAGESETUP_RIGHT          "&Rechts:"
+#define DIALOG_PAGESETUP_TOP            "&Oben:"
+#define DIALOG_PAGESETUP_BOTTOM         "&Unten:"
 
 
 /* Strings */
-#define STRING_NOTEPAD               "Editor"
-#define STRING_ERROR                 "FEHLER"
-#define STRING_WARNING               "ACHTUNG"
-#define STRING_INFO                  "Information"
-
-#define STRING_UNTITLED              "(unbenannt)"
-
-#define STRING_ALL_FILES              "Alle Dateien (*.*)"
-#define STRING_TEXT_FILES_TXT         "Textdateien (*.txt)"
+
+#define STRING_PAGESETUP_HEADERVALUE    "&n"
+#define STRING_PAGESETUP_FOOTERVALUE    "Page &s"
+#define STRING_PAGESETUP_LEFTVALUE      "20 mm"
+#define STRING_PAGESETUP_RIGHTVALUE     "20 mm"
+#define STRING_PAGESETUP_TOPVALUE       "25 mm"
+#define STRING_PAGESETUP_BOTTOMVALUE    "25 mm"
+
+#define STRING_NOTEPAD                  "Editor"
+#define STRING_ERROR                    "FEHLER"
+#define STRING_WARNING                  "ACHTUNG"
+#define STRING_INFO                     "Information"
+
+#define STRING_UNTITLED                 "(unbenannt)"
+
+#define STRING_ALL_FILES                "Alle Dateien (*.*)"
+#define STRING_TEXT_FILES_TXT           "Textdateien (*.txt)"
 
 #define STRING_TOOLARGE       "'%s' ist zu gross für den Editor\n \
 Benutzen Sie bitte einen anderen Editor, um diese Datei zu bearbeiten."
@@ -89,3 +99,5 @@ um diese Funktion \nabzuschlie
 \nAnwendungen, um den verfügbaren Arbeitsspeicher zu \nerhöhen."
 
 #include "notepad.rc"
+
+
\ No newline at end of file
diff --git a/programs/notepad/En.rc b/programs/notepad/En.rc
index 09bb79ad7ba..54942f3cc12 100644
--- a/programs/notepad/En.rc
+++ b/programs/notepad/En.rc
@@ -1,79 +1,89 @@
 /*
- * Notepad (English resources)
+ *  Notepad (English resources)
  *
- * Copyright 1997 Marcel Baur <mbaur@g26.ethz.ch>
- * Proofread 1998 by David Lee Lambert <lamber45@egr.msu.edu>
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Proofread 1998 by David Lee Lambert <lamber45@egr.msu.edu>
  */
 
-#define LANGUAGE_ID                  En
-#define LANGUAGE_NUMBER              0
-#define LANGUAGE_MENU_ITEM           "&English"
+#define LANGUAGE_ID                     En
+#define LANGUAGE_NUMBER                 0
+#define LANGUAGE_MENU_ITEM              "&English"
+
 
 /* Menu */
 
-#define MENU_FILE                    "&File"
-#define MENU_FILE_NEW                "&New..."
-#define MENU_FILE_OPEN               "&Open"
-#define MENU_FILE_SAVE               "&Save"
-#define MENU_FILE_SAVEAS             "Save &as..."
-#define MENU_FILE_PRINT              "&Print"
-#define MENU_FILE_PAGESETUP          "Page Se&tup..."
-#define MENU_FILE_PRINTSETUP         "P&rinter Setup..."
-#define MENU_FILE_EXIT               "&Exit"
-
-#define MENU_EDIT                    "&Edit"
-#define MENU_EDIT_UNDO               "&Undo\tCtrl+Z"
-#define MENU_EDIT_CUT                "Cu&t\tCtrl+X"
-#define MENU_EDIT_COPY               "&Copy\tCtrl+C"
-#define MENU_EDIT_PASTE              "&Paste\tCtrl+V"
-#define MENU_EDIT_DELETE             "&Delete\tDel"
-#define MENU_EDIT_SELECTALL          "Select &all"
-#define MENU_EDIT_TIMEDATE           "&Time/Date\tF5"
-#define MENU_EDIT_WRAP               "&Wrap long lines"
-
-#define MENU_SEARCH                  "&Search"
-#define MENU_SEARCH_SEARCH           "Search..."
-#define MENU_SEARCH_NEXT             "&Search next\tF3"
-
-#define MENU_LANGUAGE                "&Language"
-
-#define MENU_HELP                    "&Help"
-#define MENU_HELP_CONTENTS           "&Contents"
-#define MENU_HELP_SEARCH             "&Search..."
-#define MENU_HELP_HELP_ON_HELP       "&Help on help"
-
-#define MENU_INFO                    "Inf&o..."
-#define MENU_INFO_LICENSE            "&License"
-#define MENU_INFO_NO_WARRANTY        "&NO WARRANTY"
-#define MENU_INFO_ABOUT_WINE         "&About Wine"
+#define MENU_FILE                       "&File"
+#define MENU_FILE_NEW                   "&New..."
+#define MENU_FILE_OPEN                  "&Open"
+#define MENU_FILE_SAVE                  "&Save"
+#define MENU_FILE_SAVEAS                "Save &as..."
+#define MENU_FILE_PRINT                 "&Print"
+#define MENU_FILE_PAGESETUP             "Page Se&tup..."
+#define MENU_FILE_PRINTSETUP            "P&rinter Setup..."
+#define MENU_FILE_EXIT                  "&Exit"
+
+#define MENU_EDIT                       "&Edit"
+#define MENU_EDIT_UNDO                  "&Undo\tCtrl+Z"
+#define MENU_EDIT_CUT                   "Cu&t\tCtrl+X"
+#define MENU_EDIT_COPY                  "&Copy\tCtrl+C"
+#define MENU_EDIT_PASTE                 "&Paste\tCtrl+V"
+#define MENU_EDIT_DELETE                "&Delete\tDel"
+#define MENU_EDIT_SELECTALL             "Select &all"
+#define MENU_EDIT_TIMEDATE              "&Time/Date\tF5"
+#define MENU_EDIT_WRAP                  "&Wrap long lines"
+
+#define MENU_SEARCH                     "&Search"
+#define MENU_SEARCH_SEARCH              "Search..."
+#define MENU_SEARCH_NEXT                "&Search next\tF3"
+
+#define MENU_LANGUAGE                   "&Language"
+
+#define MENU_HELP                       "&Help"
+#define MENU_HELP_CONTENTS              "&Contents"
+#define MENU_HELP_SEARCH                "&Search..."
+#define MENU_HELP_HELP_ON_HELP          "&Help on help"
+
+#define MENU_INFO                       "Inf&o..."
+#define MENU_INFO_LICENSE               "&License"
+#define MENU_INFO_NO_WARRANTY           "&NO WARRANTY"
+#define MENU_INFO_ABOUT_WINE            "&About Wine"
+
 
 /* Dialogs */
 
-#define DIALOG_OK                    "OK"
-#define DIALOG_CANCEL                "Cancel"
-#define DIALOG_BROWSE                "&Browse..."
-#define DIALOG_HELP                  "&Help"
+#define DIALOG_OK                       "OK"
+#define DIALOG_CANCEL                   "Cancel"
+#define DIALOG_BROWSE                   "&Browse..."
+#define DIALOG_HELP                     "&Help"
 
-#define DIALOG_PAGESETUP_CAPTION     "Page Setup"
-#define DIALOG_PAGESETUP_HEAD        "&Header:"
-#define DIALOG_PAGESETUP_TAIL        "&Footer:"
-#define DIALOG_PAGESETUP_MARGIN      "&Margins:"
-#define DIALOG_PAGESETUP_LEFT        "&Left:"
-#define DIALOG_PAGESETUP_RIGHT       "&Right:"
-#define DIALOG_PAGESETUP_TOP         "&Top:"
-#define DIALOG_PAGESETUP_BOTTOM      "&Bottom:"
+#define DIALOG_PAGESETUP_CAPTION        "Page Setup"
+#define DIALOG_PAGESETUP_HEAD           "&Header:"
+#define DIALOG_PAGESETUP_TAIL           "&Footer:"
+#define DIALOG_PAGESETUP_MARGIN         "&Margins:"
+#define DIALOG_PAGESETUP_LEFT           "&Left:"
+#define DIALOG_PAGESETUP_RIGHT          "&Right:"
+#define DIALOG_PAGESETUP_TOP            "&Top:"
+#define DIALOG_PAGESETUP_BOTTOM         "&Bottom:"
 
 
 /* Strings */
-#define STRING_NOTEPAD               "Notepad"
-#define STRING_ERROR                 "ERROR"
-#define STRING_WARNING               "WARNING"
-#define STRING_INFO                  "Information"
 
-#define STRING_UNTITLED              "(untitled)"
+#define STRING_PAGESETUP_HEADERVALUE    "&n"        /* FIXME */
+#define STRING_PAGESETUP_FOOTERVALUE    "Page &s"   /* FIXME */
+#define STRING_PAGESETUP_LEFTVALUE      "20 mm"     /* FIXME */
+#define STRING_PAGESETUP_RIGHTVALUE     "20 mm"     /* FIXME */
+#define STRING_PAGESETUP_TOPVALUE       "25 mm"     /* FIXME */
+#define STRING_PAGESETUP_BOTTOMVALUE    "25 mm"     /* FIXME */
+
+#define STRING_NOTEPAD                  "Notepad"
+#define STRING_ERROR                    "ERROR"
+#define STRING_WARNING                  "WARNING"
+#define STRING_INFO                     "Information"
 
-#define STRING_ALL_FILES              "All files (*.*)"
-#define STRING_TEXT_FILES_TXT         "Text files (*.txt)"
+#define STRING_UNTITLED                 "(untitled)"
+
+#define STRING_ALL_FILES                "All files (*.*)"
+#define STRING_TEXT_FILES_TXT           "Text files (*.txt)"
 
 #define STRING_TOOLARGE         "File '%s' is too large for notepad.\n \
 Please use a different editor."
@@ -88,8 +98,3 @@ task. \nClose one or more applications to increase the amount of \nfree \
 memory."
 
 #include "notepad.rc"
-
-
-
-
-
diff --git a/programs/notepad/Fr.rc b/programs/notepad/Fr.rc
index 03102f6f28b..5a42b4f8158 100644
--- a/programs/notepad/Fr.rc
+++ b/programs/notepad/Fr.rc
@@ -1,79 +1,89 @@
 /*
- * Notepad (French resources)
+ *  Notepad (French resources)
  *
- * Copyright 1997 Marcel Baur <mbaur@g26.ethz.ch>
- * Translation by Laurent Buffler <laurent@bluewin.ch>
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Translation by Laurent Buffler <laurent@bluewin.ch>
  */
 
-#define LANGUAGE_ID                  Fr
-#define LANGUAGE_NUMBER              3
-#define LANGUAGE_MENU_ITEM           "&Français"
+#define LANGUAGE_ID                     Fr
+#define LANGUAGE_NUMBER                 3
+#define LANGUAGE_MENU_ITEM              "&Français"
+
 
 /* Menu */
 
-#define MENU_FILE                    "&Fichier"
-#define MENU_FILE_NEW                "&Nouveau..."
-#define MENU_FILE_OPEN               "&Ouvrir"
-#define MENU_FILE_SAVE               "&Sauver"
-#define MENU_FILE_SAVEAS             "S&auver sous..."
-#define MENU_FILE_PRINT              "Im&primer"
-#define MENU_FILE_PAGESETUP          "&Mise en page..."
-#define MENU_FILE_PRINTSETUP         "Imp&rimante..."
-#define MENU_FILE_EXIT               "&Quitter"
-
-#define MENU_EDIT                    "&Edition"
-#define MENU_EDIT_UNDO               "&Annuler\tCtrl+Z"
-#define MENU_EDIT_CUT                "Coupe&r\tCtrl+X"
-#define MENU_EDIT_COPY               "&Copier\tCtrl+C"
-#define MENU_EDIT_PASTE              "C&oller\tCtrl+V"
-#define MENU_EDIT_DELETE             "E&ffacer\tDel"
-#define MENU_EDIT_SELECTALL          "Tout &selectionner"
-#define MENU_EDIT_TIMEDATE           "&Heure/Date\tF5"
-#define MENU_EDIT_WRAP               "&Retour à la ligne"
-
-#define MENU_SEARCH                  "&Recherche"
-#define MENU_SEARCH_SEARCH           "&Chercher..."
-#define MENU_SEARCH_NEXT             "&Suivant\tF3"
-
-#define MENU_LANGUAGE                "&Langue"
-
-#define MENU_HELP                    "&Aide"
-#define MENU_HELP_CONTENTS           "&Sommaire"
-#define MENU_HELP_SEARCH             "&Chercher..."
-#define MENU_HELP_HELP_ON_HELP       "&Aide sur l'aide"
-
-#define MENU_INFO                    "Inf&o..."
-#define MENU_INFO_LICENSE            "&License"
-#define MENU_INFO_NO_WARRANTY        "&SANS GARANTIE"
-#define MENU_INFO_ABOUT_WINE         "&A propos de Wine"
+#define MENU_FILE                       "&Fichier"
+#define MENU_FILE_NEW                   "&Nouveau..."
+#define MENU_FILE_OPEN                  "&Ouvrir"
+#define MENU_FILE_SAVE                  "&Sauver"
+#define MENU_FILE_SAVEAS                "S&auver sous..."
+#define MENU_FILE_PRINT                 "Im&primer"
+#define MENU_FILE_PAGESETUP             "&Mise en page..."
+#define MENU_FILE_PRINTSETUP            "Imp&rimante..."
+#define MENU_FILE_EXIT                  "&Quitter"
+
+#define MENU_EDIT                       "&Edition"
+#define MENU_EDIT_UNDO                  "&Annuler\tCtrl+Z"
+#define MENU_EDIT_CUT                   "Coupe&r\tCtrl+X"
+#define MENU_EDIT_COPY                  "&Copier\tCtrl+C"
+#define MENU_EDIT_PASTE                 "C&oller\tCtrl+V"
+#define MENU_EDIT_DELETE                "E&ffacer\tDel"
+#define MENU_EDIT_SELECTALL             "Tout &selectionner"
+#define MENU_EDIT_TIMEDATE              "&Heure/Date\tF5"
+#define MENU_EDIT_WRAP                  "&Retour à la ligne"
+
+#define MENU_SEARCH                     "&Recherche"
+#define MENU_SEARCH_SEARCH              "&Chercher..."
+#define MENU_SEARCH_NEXT                "&Suivant\tF3"
+
+#define MENU_LANGUAGE                   "&Langue"
+
+#define MENU_HELP                       "&Aide"
+#define MENU_HELP_CONTENTS              "&Sommaire"
+#define MENU_HELP_SEARCH                "&Chercher..."
+#define MENU_HELP_HELP_ON_HELP          "&Aide sur l'aide"
+
+#define MENU_INFO                       "Inf&o..."
+#define MENU_INFO_LICENSE               "&License"
+#define MENU_INFO_NO_WARRANTY           "&SANS GARANTIE"
+#define MENU_INFO_ABOUT_WINE            "&A propos de Wine"
+
 
 /* Dialogs */
 
-#define DIALOG_OK                    "OK"
-#define DIALOG_CANCEL                "Annuler"
-#define DIALOG_BROWSE                "&Parcourir..."
-#define DIALOG_HELP                  "&Aide"
+#define DIALOG_OK                       "OK"
+#define DIALOG_CANCEL                   "Annuler"
+#define DIALOG_BROWSE                   "&Parcourir..."
+#define DIALOG_HELP                     "&Aide"
 
-#define DIALOG_PAGESETUP_CAPTION     "Mise en page"
-#define DIALOG_PAGESETUP_HEAD        "&En-tête:"
-#define DIALOG_PAGESETUP_TAIL        "&Pied de page:"
-#define DIALOG_PAGESETUP_MARGIN      "&Marges:"
-#define DIALOG_PAGESETUP_LEFT        "&Gauche:"
-#define DIALOG_PAGESETUP_RIGHT       "&Droite:"
-#define DIALOG_PAGESETUP_TOP         "&Haut:"
-#define DIALOG_PAGESETUP_BOTTOM      "&Bas:"
+#define DIALOG_PAGESETUP_CAPTION        "Mise en page"
+#define DIALOG_PAGESETUP_HEAD           "&En-tête:"
+#define DIALOG_PAGESETUP_TAIL           "&Pied de page:"
+#define DIALOG_PAGESETUP_MARGIN         "&Marges:"
+#define DIALOG_PAGESETUP_LEFT           "&Gauche:"
+#define DIALOG_PAGESETUP_RIGHT          "&Droite:"
+#define DIALOG_PAGESETUP_TOP            "&Haut:"
+#define DIALOG_PAGESETUP_BOTTOM         "&Bas:"
 
 
 /* Strings */
-#define STRING_NOTEPAD               "Notepad"
-#define STRING_ERROR                 "ERREUR"
-#define STRING_WARNING               "AVERTISSEMENT"
-#define STRING_INFO                  "Information"
 
-#define STRING_UNTITLED              "(sans titre)"
+#define STRING_PAGESETUP_HEADERVALUE    "&n"        /* FIXME */
+#define STRING_PAGESETUP_FOOTERVALUE    "Page &s"   /* FIXME */
+#define STRING_PAGESETUP_LEFTVALUE      "20 mm"     /* FIXME */
+#define STRING_PAGESETUP_RIGHTVALUE     "20 mm"     /* FIXME */
+#define STRING_PAGESETUP_TOPVALUE       "25 mm"     /* FIXME */
+#define STRING_PAGESETUP_BOTTOMVALUE    "25 mm"     /* FIXME */
+
+#define STRING_NOTEPAD                  "Notepad"
+#define STRING_ERROR                    "ERREUR"
+#define STRING_WARNING                  "AVERTISSEMENT"
+#define STRING_INFO                     "Information"
+
+#define STRING_UNTITLED                 "(sans titre)"
 
-#define STRING_ALL_FILES              "Tous (*.*)"
-#define STRING_TEXT_FILES_TXT         "Fichiers texte (*.txt)"
+#define STRING_ALL_FILES                "Tous (*.*)"
+#define STRING_TEXT_FILES_TXT           "Fichiers texte (*.txt)"
 
 #define STRING_TOOLARGE         "Le fichier '%s' est trop grand pour le bloc note.\n \
 Veuillez utiliser un autre éditeur."
@@ -88,3 +98,6 @@ Veuillez utiliser un autre 
 de la mémoire."
 
 #include "notepad.rc"
+
+/* Strings */
+
diff --git a/programs/notepad/Sw.rc b/programs/notepad/Sw.rc
index aa3548bfdfa..84dfde48665 100644
--- a/programs/notepad/Sw.rc
+++ b/programs/notepad/Sw.rc
@@ -1,79 +1,89 @@
 /*
- * Notepad (Swedish resources)
+ *  Notepad (Swedish resources)
  *
- * Copyright 1997 Marcel Baur <mbaur@g26.ethz.ch>
- * Swedish language by Karl Backström <karl_b@geocities.com>
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Swedish language by Karl Backström <karl_b@geocities.com>
  */
 
-#define LANGUAGE_ID                  Sw
-#define LANGUAGE_NUMBER              1d
-#define LANGUAGE_MENU_ITEM           "&Svenska"
+#define LANGUAGE_ID                     Sw
+#define LANGUAGE_NUMBER                 1d
+#define LANGUAGE_MENU_ITEM              "&Svenska"
+
 
 /* Menu */
 
-#define MENU_FILE                    "&Arkiv"
-#define MENU_FILE_NEW                "&Ny..."
-#define MENU_FILE_OPEN               "Ö&ppna"
-#define MENU_FILE_SAVE               "&Spara"
-#define MENU_FILE_SAVEAS             "Spara &som..."
-#define MENU_FILE_PRINT              "&Skriv ut"
-#define MENU_FILE_PAGESETUP          "Sid La&yout..."
-#define MENU_FILE_PRINTSETUP         "Skrivar &inställningar..."
-#define MENU_FILE_EXIT               "&Avsluta"
-
-#define MENU_EDIT                    "&Redigera"
-#define MENU_EDIT_UNDO               "&Undo\tCtrl+Z"
-#define MENU_EDIT_CUT                "Klippa\tCtrl+X"
-#define MENU_EDIT_COPY               "&Kopiera\tCtrl+C"
-#define MENU_EDIT_PASTE              "&Klistra in\tCtrl+V"
-#define MENU_EDIT_DELETE             "&Ta bort\tDel"
-#define MENU_EDIT_SELECTALL          "Markera &allt"
-#define MENU_EDIT_TIMEDATE           "&Tid/Datum\tF5"
-#define MENU_EDIT_WRAP               "&Dela långa meningar"
-
-#define MENU_SEARCH                  "&Sök"
-#define MENU_SEARCH_SEARCH           "Sök..."
-#define MENU_SEARCH_NEXT             "&Sök nästa\tF3"
-
-#define MENU_LANGUAGE                "&Språk"
-
-#define MENU_HELP                    "&Hjälp"
-#define MENU_HELP_CONTENTS           "&Innehåll"
-#define MENU_HELP_SEARCH             "&Sök..."
-#define MENU_HELP_HELP_ON_HELP       "Användningen &av hjälp"
-
-#define MENU_INFO                    "Inf&ormation..."
-#define MENU_INFO_LICENSE            "&Licens"
-#define MENU_INFO_NO_WARRANTY        "&INGEN GARANTI"
-#define MENU_INFO_ABOUT_WINE         "&Om Wine"
+#define MENU_FILE                       "&Arkiv"
+#define MENU_FILE_NEW                   "&Ny..."
+#define MENU_FILE_OPEN                  "Ö&ppna"
+#define MENU_FILE_SAVE                  "&Spara"
+#define MENU_FILE_SAVEAS                "Spara &som..."
+#define MENU_FILE_PRINT                 "&Skriv ut"
+#define MENU_FILE_PAGESETUP             "Sid La&yout..."
+#define MENU_FILE_PRINTSETUP            "Skrivar &inställningar..."
+#define MENU_FILE_EXIT                  "&Avsluta"
+
+#define MENU_EDIT                       "&Redigera"
+#define MENU_EDIT_UNDO                  "&Undo\tCtrl+Z"
+#define MENU_EDIT_CUT                   "Klippa\tCtrl+X"
+#define MENU_EDIT_COPY                  "&Kopiera\tCtrl+C"
+#define MENU_EDIT_PASTE                 "&Klistra in\tCtrl+V"
+#define MENU_EDIT_DELETE                "&Ta bort\tDel"
+#define MENU_EDIT_SELECTALL             "Markera &allt"
+#define MENU_EDIT_TIMEDATE              "&Tid/Datum\tF5"
+#define MENU_EDIT_WRAP                  "&Dela långa meningar"
+
+#define MENU_SEARCH                     "&Sök"
+#define MENU_SEARCH_SEARCH              "Sök..."
+#define MENU_SEARCH_NEXT                "&Sök nästa\tF3"
+
+#define MENU_LANGUAGE                   "&Språk"
+
+#define MENU_HELP                       "&Hjälp"
+#define MENU_HELP_CONTENTS              "&Innehåll"
+#define MENU_HELP_SEARCH                "&Sök..."
+#define MENU_HELP_HELP_ON_HELP          "Användningen &av hjälp"
+
+#define MENU_INFO                       "Inf&ormation..."
+#define MENU_INFO_LICENSE               "&Licens"
+#define MENU_INFO_NO_WARRANTY           "&INGEN GARANTI"
+#define MENU_INFO_ABOUT_WINE            "&Om Wine"
+
 
 /* Dialogs */
 
-#define DIALOG_OK                    "OK"
-#define DIALOG_CANCEL                "Avbryt"
-#define DIALOG_BROWSE                "&Bläddra..."
-#define DIALOG_HELP                  "&Hjälp"
+#define DIALOG_OK                       "OK"
+#define DIALOG_CANCEL                   "Avbryt"
+#define DIALOG_BROWSE                   "&Bläddra..."
+#define DIALOG_HELP                     "&Hjälp"
 
-#define DIALOG_PAGESETUP_CAPTION     "Sid Layout"
-#define DIALOG_PAGESETUP_HEAD        "&Huvudnot:"
-#define DIALOG_PAGESETUP_TAIL        "&Fotnot:"
-#define DIALOG_PAGESETUP_MARGIN      "Kanter:"
-#define DIALOG_PAGESETUP_LEFT        "&Vänster:"
-#define DIALOG_PAGESETUP_RIGHT       "&Höger:"
-#define DIALOG_PAGESETUP_TOP         "&Över:"
-#define DIALOG_PAGESETUP_BOTTOM      "&Under:"
+#define DIALOG_PAGESETUP_CAPTION        "Sid Layout"
+#define DIALOG_PAGESETUP_HEAD           "&Huvudnot:"
+#define DIALOG_PAGESETUP_TAIL           "&Fotnot:"
+#define DIALOG_PAGESETUP_MARGIN         "Kanter:"
+#define DIALOG_PAGESETUP_LEFT           "&Vänster:"
+#define DIALOG_PAGESETUP_RIGHT          "&Höger:"
+#define DIALOG_PAGESETUP_TOP            "&Över:"
+#define DIALOG_PAGESETUP_BOTTOM         "&Under:"
 
 
 /* Strings */
-#define STRING_NOTEPAD               "Anteckningar"
-#define STRING_ERROR                 "FEL"
-#define STRING_WARNING               "VARNING"
-#define STRING_INFO                  "Information"
 
-#define STRING_UNTITLED              "(untitled)"
+#define STRING_PAGESETUP_HEADERVALUE    "&n"        /* FIXME */
+#define STRING_PAGESETUP_FOOTERVALUE    "Page &s"   /* FIXME */
+#define STRING_PAGESETUP_LEFTVALUE      "20 mm"     /* FIXME */
+#define STRING_PAGESETUP_RIGHTVALUE     "20 mm"     /* FIXME */
+#define STRING_PAGESETUP_TOPVALUE       "25 mm"     /* FIXME */
+#define STRING_PAGESETUP_BOTTOMVALUE    "25 mm"     /* FIXME */
+
+#define STRING_NOTEPAD                  "Anteckningar"
+#define STRING_ERROR                    "FEL"
+#define STRING_WARNING                  "VARNING"
+#define STRING_INFO                     "Information"
+
+#define STRING_UNTITLED                 "(untitled)"
 
-#define STRING_ALL_FILES              "Alla filer (*.*)"
-#define STRING_TEXT_FILES_TXT         "Text filer (*.txt)"
+#define STRING_ALL_FILES                "Alla filer (*.*)"
+#define STRING_TEXT_FILES_TXT           "Text filer (*.txt)"
 
 #define STRING_TOOLARGE         "Filen '%s' är för stor för notepad.\n \
 Använd en annan editor."
diff --git a/programs/notepad/TODO b/programs/notepad/TODO
index 13f15f6486c..8d0f335a417 100644
--- a/programs/notepad/TODO
+++ b/programs/notepad/TODO
@@ -7,9 +7,4 @@
  - Notepad segfaults when selecting "Find" button in "Search" dialog.
    This is probably a problem related to Winelib.
  
- - Page Setup dialog box should exchange strings with the corresponding
-   Globals.szMargin???-strings (needed to evaluate strings when printing)
-   
- - Fields in "Page Setup" dialog box should be initialized.
-   
  - create new *.rc files for all languages you know.
diff --git a/programs/notepad/dialog.c b/programs/notepad/dialog.c
index 3fb491a8e91..36f486208cc 100644
--- a/programs/notepad/dialog.c
+++ b/programs/notepad/dialog.c
@@ -1,23 +1,27 @@
 /*
- * Notepad
+ *  Notepad (dialog.c)
  *
- * Copyright 1998 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Copyright 1998 Marcel Baur <mbaur@g26.ethz.ch>
+ *  To be distributed under the Wine License
  */
 
 #include <stdio.h>
-#include "windows.h"
-#include "commdlg.h"
-#include "winnls.h"
-#include "winerror.h"
+#include <windows.h>
+#include <commdlg.h>
+#include <winerror.h>
+
 #ifdef WINELIB
 #include "shell.h"
 #include "options.h"
 #endif
+
 #include "main.h"
 #include "license.h"
 #include "language.h"
 #include "dialog.h"
+
 #include "version.h"
+#include "winnls.h"
 #include "debug.h"
 
 
@@ -42,7 +46,7 @@ void AlertFileNotFound(LPCSTR szFilename) {
 
    int nResult;
    
-   nResult = AlertIDS(IDS_NOTFOUND, IDS_ERROR, 0);
+   nResult = AlertIDS(IDS_NOTFOUND, IDS_ERROR, MB_ICONEXCLAMATION);
 }
 
 
@@ -50,7 +54,7 @@ VOID AlertOutOfMemory(void) {
 
    int nResult;
    
-   nResult = AlertIDS(IDS_OUT_OF_MEMORY, IDS_ERROR, 0);
+   nResult = AlertIDS(IDS_OUT_OF_MEMORY, IDS_ERROR, MB_ICONEXCLAMATION);
    PostQuitMessage(1);
 }
 
@@ -60,10 +64,10 @@ BOOL ExistFile(LPCSTR szFilename) {
  *  Returns: TRUE  - if "szFileName" exists
  *           FALSE - if it does not
  */
-   WIN32_FIND_DATA32A entry;
+   WIN32_FIND_DATA entry;
    HANDLE32 handle;
    
-   handle = FindFirstFile32A(szFilename, &entry);
+   handle = FindFirstFile(szFilename, &entry);
    
    return (handle!=INVALID_HANDLE_VALUE32);
 }
@@ -90,6 +94,9 @@ BOOL DoCloseFile(void) {
    
    // FIXME: The following resources are not yet in the .rc files
    // szMessage, szCaption show up random values. Please keep these lines!
+
+   strcpy(szMessage, "Save changes ?");
+   strcpy(szCaption, "Save changes");
    
 //  LoadString(Globals.hInstance, ids_savechanges, szMessage, sizeof(szMessage));
 //  LoadString(Globals.hInstance, ids_savetitle, szCaption, sizeof(szCaption));
@@ -98,21 +105,22 @@ BOOL DoCloseFile(void) {
 
    switch (nResult) {
           case IDYES:     DoSaveFile();
-                     break;
+                          break;
+
           case IDNO:      break;
+
           case IDCANCEL:  return(FALSE);
-                     break;
+                          break;
                       
-         default:    return(FALSE);
-                     break;
+          default:        return(FALSE);
+                          break;
       }
       
     
   }
   
-  // Forget file name
-  
-  lstrcpyn(Globals.szFileName, "\0", 1);
+  // Forget file name 
+  lstrcpy(Globals.szFileName, "");
   LANGUAGE_UpdateWindowCaption();
 
   return(TRUE);
@@ -126,7 +134,7 @@ void DoOpenFile(LPCSTR szFileName) {
     if (DoCloseFile) {
 
         // Open file
-        lstrcpyn(Globals.szFileName, szFileName, strlen(szFileName)+1); 
+        lstrcpy(Globals.szFileName, szFileName); 
         LANGUAGE_UpdateWindowCaption();
     
     }
@@ -151,8 +159,11 @@ VOID DIALOG_FileOpen(VOID)
         CHAR szPath[MAX_PATHNAME_LEN];
         CHAR szDir[MAX_PATHNAME_LEN];
         CHAR szzFilter[2 * MAX_STRING_LEN + 100];
+        CHAR szDefaultExt[4];
         LPSTR p = szzFilter;
 
+        lstrcpy(szDefaultExt, "txt");
+
         LoadString(Globals.hInstance, IDS_TEXT_FILES_TXT, p, MAX_STRING_LEN);
         p += strlen(p) + 1;
         lstrcpy(p, "*.txt");
@@ -163,9 +174,10 @@ VOID DIALOG_FileOpen(VOID)
         p += strlen(p) + 1;
         *p = '\0';
 
-        GetWindowsDirectory(szDir, sizeof(szDir));
+        GetCurrentDirectory(sizeof(szDir), szDir);
+        lstrcpy(szPath,"*.txt");
 
-        openfilename.lStructSize       = sizeof(openfilename);
+        openfilename.lStructSize       = sizeof(OPENFILENAME);
         openfilename.hwndOwner         = Globals.hMainWnd;
         openfilename.hInstance         = Globals.hInstance;
         openfilename.lpstrFilter       = szzFilter;
@@ -178,10 +190,10 @@ VOID DIALOG_FileOpen(VOID)
         openfilename.nMaxFileTitle     = 0;
         openfilename.lpstrInitialDir   = szDir;
         openfilename.lpstrTitle        = 0;
-        openfilename.Flags             = 0;
+        openfilename.Flags             = OFN_FILEMUSTEXIST + OFN_PATHMUSTEXIST;
         openfilename.nFileOffset       = 0;
         openfilename.nFileExtension    = 0;
-        openfilename.lpstrDefExt       = 0;
+        openfilename.lpstrDefExt       = szDefaultExt;
         openfilename.lCustData         = 0;
         openfilename.lpfnHook          = 0;
         openfilename.lpTemplateName    = 0;
@@ -194,7 +206,6 @@ VOID DIALOG_FileOpen(VOID)
                     AlertFileNotFound(openfilename.lpstrFile);
                     
         }
-          
 }
 
 VOID DIALOG_FileSave(VOID)
@@ -207,9 +218,13 @@ VOID DIALOG_FileSaveAs(VOID)
         OPENFILENAME saveas;
         CHAR szPath[MAX_PATHNAME_LEN];
         CHAR szDir[MAX_PATHNAME_LEN];
+        CHAR szDefaultExt[4];
         CHAR szzFilter[2 * MAX_STRING_LEN + 100];
+       
         LPSTR p = szzFilter;
 
+        lstrcpy(szDefaultExt, "txt");
+
         LoadString(Globals.hInstance, IDS_TEXT_FILES_TXT, p, MAX_STRING_LEN);
         p += strlen(p) + 1;
         lstrcpy(p, "*.txt");
@@ -220,9 +235,11 @@ VOID DIALOG_FileSaveAs(VOID)
         p += strlen(p) + 1;
         *p = '\0';
 
-        GetWindowsDirectory(szDir, sizeof(szDir));
+        lstrcpy(szPath,"*.*");
+
+        GetCurrentDirectory(sizeof(szDir), szDir);
 
-        saveas.lStructSize       = 0;
+        saveas.lStructSize       = sizeof(OPENFILENAME);
         saveas.hwndOwner         = Globals.hMainWnd;
         saveas.hInstance         = Globals.hInstance;
         saveas.lpstrFilter       = szzFilter;
@@ -235,17 +252,16 @@ VOID DIALOG_FileSaveAs(VOID)
         saveas.nMaxFileTitle     = 0;
         saveas.lpstrInitialDir   = szDir;
         saveas.lpstrTitle        = 0;
-        saveas.Flags             = 0;
+        saveas.Flags             = OFN_PATHMUSTEXIST + OFN_OVERWRITEPROMPT + OFN_HIDEREADONLY;
         saveas.nFileOffset       = 0;
         saveas.nFileExtension    = 0;
-        saveas.lpstrDefExt       = 0;
+        saveas.lpstrDefExt       = szDefaultExt;
         saveas.lCustData         = 0;
         saveas.lpfnHook          = 0;
         saveas.lpTemplateName    = 0;
 
         if (GetSaveFileName(&saveas)) {
-            lstrcpyn(Globals.szFileName, saveas.lpstrFile, 
-            strlen(saveas.lpstrFile)+1);
+            lstrcpy(Globals.szFileName, saveas.lpstrFile);
             LANGUAGE_UpdateWindowCaption();
             DIALOG_FileSave();
         }
@@ -254,7 +270,7 @@ VOID DIALOG_FileSaveAs(VOID)
 VOID DIALOG_FilePrint(VOID)
 {
         PRINTDLG printer;
-        printer.lStructSize           = sizeof(printer);
+        printer.lStructSize           = sizeof(PRINTDLG);
         printer.hwndOwner             = Globals.hMainWnd;
         printer.hInstance             = Globals.hInstance;
         printer.hDevMode              = 0;
@@ -265,7 +281,7 @@ VOID DIALOG_FilePrint(VOID)
         printer.nToPage               = 0;
         printer.nMinPage              = 0;
         printer.nMaxPage              = 0;
-        printer.nCopies               = 0;
+        printer.nCopies               = 1;
         printer.lCustData             = 0;
         printer.lpfnPrintHook         = 0;
         printer.lpfnSetupHook         = 0;
@@ -274,7 +290,7 @@ VOID DIALOG_FilePrint(VOID)
         printer.hPrintTemplate        = 0;
         printer.hSetupTemplate        = 0;
         
-        if (PrintDlg16(&printer)) {
+        if (PrintDlg(&printer)) {
             // do nothing
         };
 }
@@ -286,7 +302,31 @@ VOID DIALOG_FilePageSetup(VOID)
 
 VOID DIALOG_FilePrinterSetup(VOID)
 {
-        fprintf(stderr, "FilePrinterSetup()\n");
+        PRINTDLG printer;
+        printer.lStructSize           = sizeof(PRINTDLG);
+        printer.hwndOwner             = Globals.hMainWnd;
+        printer.hInstance             = Globals.hInstance;
+        printer.hDevMode              = 0;
+        printer.hDevNames             = 0;
+        printer.hDC                   = 0;
+        printer.Flags                 = PD_PRINTSETUP;
+        printer.nFromPage             = 0;
+        printer.nToPage               = 0;
+        printer.nMinPage              = 0;
+        printer.nMaxPage              = 0;
+        printer.nCopies               = 1;
+        printer.lCustData             = 0;
+        printer.lpfnPrintHook         = 0;
+        printer.lpfnSetupHook         = 0;
+        printer.lpPrintTemplateName   = 0;
+        printer.lpSetupTemplateName   = 0;
+        printer.hPrintTemplate        = 0;
+        printer.hSetupTemplate        = 0;
+        
+        if (PrintDlg(&printer)) {
+            // do nothing
+        };
+
 }
 
 VOID DIALOG_FileExit(VOID)
@@ -341,27 +381,36 @@ VOID DIALOG_EditWrap(VOID)
 VOID DIALOG_Search(VOID)
 {
         FINDREPLACE find;
-        CHAR szFind[MAX_PATHNAME_LEN];
+        CHAR szFind[MAX_PATHNAME_LEN+10];
+        CHAR szReplace[MAX_PATHNAME_LEN+10];
           
-        lstrcpyn(szFind, Globals.szFindText, strlen(Globals.szFindText)+1);
+        HWND hResult;
+
+        lstrcpy(szReplace, "");
+        lstrcpy(szFind, Globals.szFindText);
           
-        find.lStructSize      = sizeof(find);
+        find.lStructSize      = sizeof(FINDREPLACE);
         find.hwndOwner        = Globals.hMainWnd;
-        find.hInstance        = Globals.hInstance;
+        find.hInstance        = 0;
         find.lpstrFindWhat    = szFind;
-        find.wFindWhatLen     = sizeof(szFind);
-        find.Flags            = 0;
+        find.wFindWhatLen     = MAX_PATHNAME_LEN;
+        find.lpstrReplaceWith = szReplace;
+        find.wReplaceWithLen  = MAX_PATHNAME_LEN;
+        find.Flags            = FR_DOWN;
         find.lCustData        = 0;
         find.lpfnHook         = 0;
         find.lpTemplateName   = 0;
 
-        if (FindText(&find)) {
-             lstrcpyn(Globals.szFindText, szFind, strlen(szFind)+1);
+        hResult = FindText(&find);
+
+        if (hResult) {
+             lstrcpy(Globals.szFindText, szFind);
         } 
              else 
         { 
              // do nothing yet
         };
+
 }
 
 VOID DIALOG_SearchNext(VOID)
@@ -406,7 +455,9 @@ VOID DIALOG_HelpAboutWine(VOID)
 
 VOID DIALOG_PageSetup(VOID)
 {
-  WNDPROC lpfnDlg = MakeProcInstance(DIALOG_PAGESETUP_DlgProc, Globals.hInstance);
+  WNDPROC lpfnDlg;
+
+  lpfnDlg = MakeProcInstance(DIALOG_PAGESETUP_DlgProc, Globals.hInstance);
   DialogBox(Globals.hInstance, STRING_PAGESETUP_Xx, Globals.hMainWnd, lpfnDlg);
   FreeProcInstance(lpfnDlg);
 }
@@ -456,6 +507,19 @@ static LRESULT DIALOG_PAGESETUP_DlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPAR
           EndDialog(hDlg, IDCANCEL);
           return TRUE;
         }
+      break;
+
+    case WM_INITDIALOG:
+       SetDlgItemText(hDlg, NP_PAGESETUP_HEAD,   Globals.szHeader);
+       SetDlgItemText(hDlg, NP_PAGESETUP_TAIL,   Globals.szFooter);
+       SetDlgItemText(hDlg, NP_PAGESETUP_TOP,    Globals.szMarginTop);
+       SetDlgItemText(hDlg, NP_PAGESETUP_BOTTOM, Globals.szMarginBottom);
+       SetDlgItemText(hDlg, NP_PAGESETUP_LEFT,   Globals.szMarginLeft);
+       SetDlgItemText(hDlg, NP_PAGESETUP_RIGHT,  Globals.szMarginRight);
+       break;
+
+    case WM_CLOSE:
+       break;
     }
   return FALSE;
 }
diff --git a/programs/notepad/dialog.h b/programs/notepad/dialog.h
index 4d689f6b810..a14d4df9b47 100644
--- a/programs/notepad/dialog.h
+++ b/programs/notepad/dialog.h
@@ -1,7 +1,7 @@
 /*
- * Notepad
+ *  Notepad (dialog.h)
  *
- * Copyright 1998 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Copyright 1998 Marcel Baur <mbaur@g26.ethz.ch>
  */
 
 #include "windows.h"
diff --git a/programs/notepad/language.c b/programs/notepad/language.c
index 854053d0975..f0525d842ac 100644
--- a/programs/notepad/language.c
+++ b/programs/notepad/language.c
@@ -1,14 +1,15 @@
 /*
- * Notepad
+ *  Notepad
  *
- * Copyright 1997 Marcel Baur <mbaur@g26.ethz.ch>
- * Copyright 1998 Karl Backström <karl_b@geocities.com>
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Copyright 1998 Karl Backstr÷m <karl_b@geocities.com>
  */
 
 #include <stdio.h>
 #include "windows.h"
 #include "main.h"
 #include "language.h"
+
 #ifdef WINELIB
 #include "options.h"
 #endif
@@ -147,7 +148,8 @@ VOID LANGUAGE_Init(VOID)
     PROFILE_GetWineIniString("programs", "language", "language", 
                              buffer, sizeof(buffer));
   Globals.lpszLanguage = p = LocalLock(LocalAlloc(LMEM_FIXED, lstrlen(buffer)));
-  hmemcpy(p, buffer, 1 + lstrlen(buffer));
+  strcpy(p, buffer);
+  // hmemcpy(p, buffer, 1 + lstrlen(buffer));
   #endif
 }
 
diff --git a/programs/notepad/language.h b/programs/notepad/language.h
index 3515d6895f9..35fa6921e81 100644
--- a/programs/notepad/language.h
+++ b/programs/notepad/language.h
@@ -1,8 +1,8 @@
 /*
- * Notepad
+ *  Notepad
  *
- * Copyright 1997 Marcel Baur <mbaur@g26.ethz.ch>
- * Copyright 1998 Karl Backström <karl_b@geocities.com>
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Copyright 1998 Karl Backstr÷m <karl_b@geocities.com>
  */
 
 VOID LANGUAGE_UpdateWindowCaption(VOID);
diff --git a/programs/notepad/license.c b/programs/notepad/license.c
index 9ff62a61a0b..4f0ab76ca61 100644
--- a/programs/notepad/license.c
+++ b/programs/notepad/license.c
@@ -1,5 +1,8 @@
 /*
- * Notepad (license.h)
+ *  Notepad (license.h)
+ *
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  To be distributed under the Wine License
  */
 
 #include "windows.h"
diff --git a/programs/notepad/license.h b/programs/notepad/license.h
index 82ad0549a6c..6057c70a3ae 100644
--- a/programs/notepad/license.h
+++ b/programs/notepad/license.h
@@ -1,5 +1,8 @@
 /*
- * Notepad (license.h)
+ *  Notepad (license.h)
+ *
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  To be distributed under the Wine License
  */
 
 VOID WineLicense(HWND hWnd, LPCSTR lpszLanguage);
diff --git a/programs/notepad/main.c b/programs/notepad/main.c
index b737c727ac4..791ca7357c5 100644
--- a/programs/notepad/main.c
+++ b/programs/notepad/main.c
@@ -1,19 +1,23 @@
 /*
- * Notepad
+ *  Notepad
  *
- * Copyright 1997 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  To be distributed under the Wine License
  */
 
 #include <stdio.h>
 #include "windows.h"
+#include "shell.h"
 #include "main.h"
 #include "license.h"
 #include "dialog.h"
 #include "language.h"
+
 #ifdef WINELIB
 #include "options.h"
 #include "resource.h"
 #include "shell.h"
+void LIBWINE_Register_Da();
 void LIBWINE_Register_De();
 void LIBWINE_Register_En();
 void LIBWINE_Register_Sw();
@@ -76,6 +80,9 @@ int NOTEPAD_MenuCommand (WPARAM wParam)
 LRESULT NOTEPAD_WndProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
 {
     PAINTSTRUCT ps;
+    CHAR szFileName[MAX_STRING_LEN];
+
+    lstrcpy(szFileName, "");
 
     switch (msg) {
 
@@ -95,6 +102,13 @@ LRESULT NOTEPAD_WndProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
           PostQuitMessage (0);
           break;
 
+       case WM_DROPFILES:
+          DragQueryFiles(wParam, 0, szFileName, sizeof(szFileName));
+          printf("file %s to be opened by drag and drop !\n", szFileName);
+          DragFinish(wParam);
+          break;
+          
+
        default:
           return DefWindowProc (hWnd, msg, wParam, lParam);
     }
@@ -117,33 +131,35 @@ int PASCAL WinMain (HANDLE hInstance, HANDLE prev, LPSTR cmdline, int show)
 
     #if defined(WINELIB) && !defined(HAVE_WINE_CONSTRUCTOR)
       /* Register resources */
+      LIBWINE_Register_Da();
       LIBWINE_Register_De();
       LIBWINE_Register_En();
       LIBWINE_Register_Sw();
     #endif
 
-    /* Setup Globals */
-
-    Globals.lpszIniFile   = "notepad.ini";
-    Globals.lpszIcoFile   = "notepad.ico";
-
     /* Select Language */
     LANGUAGE_Init();
 
-    Globals.hInstance     = hInstance;
-    Globals.hMainIcon     = ExtractIcon(Globals.hInstance, 
+
+    /* Setup Globals */
+
+    Globals.lpszIniFile     = "notepad.ini";
+    Globals.lpszIcoFile     = "notepad.ico";
+
+    Globals.hInstance       = hInstance;
+    Globals.hMainIcon       = ExtractIcon(Globals.hInstance, 
                                         Globals.lpszIcoFile, 0);
     if (!Globals.hMainIcon) Globals.hMainIcon = 
                                   LoadIcon(0, MAKEINTRESOURCE(DEFAULTICON));
 
-    lstrcpyn(Globals.szFindText,     "\0", 1);
-    lstrcpyn(Globals.szFileName,     "\0", 1);
-    lstrcpyn(Globals.szMarginTop,    "\0", 1);
-    lstrcpyn(Globals.szMarginBottom, "\0", 1);
-    lstrcpyn(Globals.szMarginLeft,   "\0", 1);
-    lstrcpyn(Globals.szMarginRight,  "\0", 1);
-    lstrcpyn(Globals.szHeader,       "\0", 1);
-    lstrcpyn(Globals.szFooter,       "\0", 1);
+    lstrcpy(Globals.szFindText,     "");
+    lstrcpy(Globals.szFileName,     "");
+    lstrcpy(Globals.szMarginTop,    "25 mm");
+    lstrcpy(Globals.szMarginBottom, "25 mm");
+    lstrcpy(Globals.szMarginLeft,   "20 mm");
+    lstrcpy(Globals.szMarginRight,  "20 mm");
+    lstrcpy(Globals.szHeader,       "&n");
+    lstrcpy(Globals.szFooter,       "Page &s");
 
     if (!prev){
         class.style         = CS_HREDRAW | CS_VREDRAW;
@@ -179,7 +195,7 @@ int PASCAL WinMain (HANDLE hInstance, HANDLE prev, LPSTR cmdline, int show)
     
     {
         CHAR   option;
-        LPCSTR topic_id;
+//      LPCSTR topic_id;
 
         if (*cmdline++ == ' ') continue;
 
@@ -196,7 +212,9 @@ int PASCAL WinMain (HANDLE hInstance, HANDLE prev, LPSTR cmdline, int show)
         }
     }
 
-    
+    DragAcceptFiles(Globals.hMainWnd, TRUE);
+
+    // now enter mesage loop    
     
     while (GetMessage (&msg, 0, 0, 0)) {
         TranslateMessage (&msg);
@@ -208,4 +226,3 @@ int PASCAL WinMain (HANDLE hInstance, HANDLE prev, LPSTR cmdline, int show)
 /* Local Variables:    */
 /* c-file-style: "GNU" */
 /* End:                */
-
diff --git a/programs/notepad/main.h b/programs/notepad/main.h
index 6bb3763f812..2a0dded8616 100644
--- a/programs/notepad/main.h
+++ b/programs/notepad/main.h
@@ -1,7 +1,8 @@
 /*
- * Notepad (notepad.h)
+ *  Notepad (notepad.h)
  *
- * Copyright 1997 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  To be distributed under the Wine License
  */
 
 #define MAX_STRING_LEN      255
@@ -74,6 +75,13 @@ extern CHAR STRING_PAGESETUP_Xx[];
 #define IDS_OUT_OF_MEMORY               STRINGID(0B)
 #define IDS_UNTITLED                    STRINGID(0C)
 
+#define IDS_PAGESETUP_HEADERVALUE       STRINGID(0D)
+#define IDS_PAGESETUP_FOOTERVALUE       STRINGID(0E)
+#define IDS_PAGESETUP_LEFTVALUE         STRINGID(0F)
+#define IDS_PAGESETUP_RIGHTVALUE        STRINGID(010)
+#define IDS_PAGESETUP_TOPVALUE          STRINGID(011)
+#define IDS_PAGESETUP_BOTTOMVALUE       STRINGID(012)
+
 /* main menu */
 
 #define NP_FILE_NEW              100
@@ -114,17 +122,16 @@ extern CHAR STRING_PAGESETUP_Xx[];
 #define NP_PAGESETUP_HEAD_TXT   1001
 #define NP_PAGESETUP_TAIL       1002
 #define NP_PAGESETUP_TAIL_TXT   1003
-#define NP_PAGESETUP_LEFT       1005
-#define NP_PAGESETUP_LEFT_TXT   1006
-#define NP_PAGESETUP_RIGHT      1007
-#define NP_PAGESETUP_RIGHT_TXT  1008
-#define NP_PAGESETUP_TOP        1009
-#define NP_PAGESETUP_TOP_TXT    1010
-#define NP_PAGESETUP_BOTTOM     1011
-#define NP_PAGESETUP_BOTTOM_TXT 1012
-#define NP_HELP                 1013
-#define NP_PAGESETUP_MARGIN     1014
-
+#define NP_PAGESETUP_LEFT       1004
+#define NP_PAGESETUP_LEFT_TXT   1005
+#define NP_PAGESETUP_RIGHT      1006
+#define NP_PAGESETUP_RIGHT_TXT  1007
+#define NP_PAGESETUP_TOP        1008
+#define NP_PAGESETUP_TOP_TXT    1009
+#define NP_PAGESETUP_BOTTOM     1010
+#define NP_PAGESETUP_BOTTOM_TXT 1011
+#define NP_HELP                 1012
+#define NP_PAGESETUP_MARGIN     1013
 
 /* Local Variables:    */
 /* c-file-style: "GNU" */
diff --git a/programs/notepad/notepad.rc b/programs/notepad/notepad.rc
index e79b88dc691..38ff1fec8e8 100644
--- a/programs/notepad/notepad.rc
+++ b/programs/notepad/notepad.rc
@@ -1,7 +1,8 @@
 /*
- * Notepad (notepad.rc)
+ *  Notepad (notepad.rc)
  *
- * Copyright 1997 Marcel Baur <mbaur@g26.ethz.ch>
+ *  Copyright 1997,98 Marcel Baur <mbaur@g26.ethz.ch>
+ *  To be distributed under the Wine License
  */
 
 #include "windows.h"
@@ -68,22 +69,24 @@ STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
 FONT 8, "Helv"
 CAPTION DIALOG_PAGESETUP_CAPTION
 {
-LTEXT     DIALOG_PAGESETUP_HEAD, NP_PAGESETUP_HEAD_TXT,     10, 07,  40, 15
-EDITTEXT                            NP_PAGESETUP_HEAD,      60, 05,  110, 12, WS_BORDER | WS_TABSTOP
-LTEXT     DIALOG_PAGESETUP_TAIL, NP_PAGESETUP_TAIL_TXT,     10, 24,  40, 15
-EDITTEXT                            NP_PAGESETUP_TAIL,      60, 22,  110, 12, WS_BORDER | WS_TABSTOP
-GROUPBOX  DIALOG_PAGESETUP_MARGIN,  NP_PAGESETUP_MARGIN,    10, 43, 160, 45
-LTEXT     DIALOG_PAGESETUP_LEFT, NP_PAGESETUP_LEFT_TXT,     20, 55,  30, 10, WS_CHILD
-EDITTEXT                            NP_PAGESETUP_LEFT,	    50, 55,  35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
-LTEXT     DIALOG_PAGESETUP_TOP, NP_PAGESETUP_TOP_TXT,	    20, 73,  30, 10, WS_CHILD
-EDITTEXT                            NP_PAGESETUP_TOP,       50, 73,  35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
-LTEXT     DIALOG_PAGESETUP_RIGHT, NP_PAGESETUP_RIGHT_TXT,   100, 55,  30, 10, WS_CHILD
-EDITTEXT                            NP_PAGESETUP_RIGHT,     130, 55,  35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
-LTEXT     DIALOG_PAGESETUP_BOTTOM, NP_PAGESETUP_BOTTOM_TXT, 100, 73,  30, 10, WS_CHILD
-EDITTEXT                            NP_PAGESETUP_BOTTOM,    130, 73,  35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
-DEFPUSHBUTTON DIALOG_OK,            IDOK,                180,  3,  40, 15, WS_TABSTOP
-PUSHBUTTON    DIALOG_CANCEL,        IDCANCEL,            180, 21,  40, 15, WS_TABSTOP
-PUSHBUTTON    DIALOG_HELP,          NP_HELP,             180, 39,  40, 15, WS_TABSTOP
+LTEXT    DIALOG_PAGESETUP_HEAD,  NP_PAGESETUP_HEAD_TXT,   10, 07, 40, 15
+EDITTEXT                         NP_PAGESETUP_HEAD,       60, 05,110, 12, WS_BORDER | WS_TABSTOP
+LTEXT    DIALOG_PAGESETUP_TAIL,  NP_PAGESETUP_TAIL_TXT,   10, 24, 40, 15
+EDITTEXT                         NP_PAGESETUP_TAIL,       60, 22,110, 12, WS_BORDER | WS_TABSTOP
+
+GROUPBOX DIALOG_PAGESETUP_MARGIN,NP_PAGESETUP_MARGIN,     10, 43,160, 45
+LTEXT    DIALOG_PAGESETUP_LEFT,  NP_PAGESETUP_LEFT_TXT,   20, 55, 30, 10, WS_CHILD
+EDITTEXT                         NP_PAGESETUP_LEFT,       50, 55, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
+LTEXT    DIALOG_PAGESETUP_TOP,   NP_PAGESETUP_TOP_TXT,    20, 73, 30, 10, WS_CHILD
+EDITTEXT                         NP_PAGESETUP_TOP,        50, 73, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
+LTEXT    DIALOG_PAGESETUP_RIGHT, NP_PAGESETUP_RIGHT_TXT, 100, 55, 30, 10, WS_CHILD
+EDITTEXT                         NP_PAGESETUP_RIGHT,     130, 55, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
+LTEXT    DIALOG_PAGESETUP_BOTTOM,NP_PAGESETUP_BOTTOM_TXT,100, 73, 30, 10, WS_CHILD
+EDITTEXT                         NP_PAGESETUP_BOTTOM,    130, 73, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
+
+DEFPUSHBUTTON DIALOG_OK,         IDOK,                   180,  3, 40, 15, WS_TABSTOP
+PUSHBUTTON    DIALOG_CANCEL,     IDCANCEL,               180, 21, 40, 15, WS_TABSTOP
+PUSHBUTTON    DIALOG_HELP,       NP_HELP,                180, 39, 40, 15, WS_TABSTOP
 }
 
 
@@ -114,4 +117,10 @@ ADDSTRING(NOTEXT)
 ADDSTRING(NOTFOUND)
 ADDSTRING(OUT_OF_MEMORY)
 ADDSTRING(UNTITLED)
+ADDSTRING(PAGESETUP_HEADERVALUE)
+ADDSTRING(PAGESETUP_FOOTERVALUE)
+ADDSTRING(PAGESETUP_LEFTVALUE)
+ADDSTRING(PAGESETUP_RIGHTVALUE)
+ADDSTRING(PAGESETUP_TOPVALUE)
+ADDSTRING(PAGESETUP_BOTTOMVALUE)
 }
-- 
GitLab