summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatthias Melcher <fltk@matthiasm.com>2006-04-15 16:19:54 +0000
committerMatthias Melcher <fltk@matthiasm.com>2006-04-15 16:19:54 +0000
commit1184d7eee6ae394a93d352fe60b6630eb444fea5 (patch)
treeee6c05b984d734a32b5486de58304998e1ae8570 /src
parenteea06b4d6fc8a350c047bffa6c3f3b745f607b79 (diff)
Changed special handling on ISO characters 0x80 to 0xA0 for OS X, since this characters must be handled as standard characters here.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4957 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
-rw-r--r--src/fl_draw.cxx6
-rw-r--r--src/fl_shortcut.cxx12
2 files changed, 15 insertions, 3 deletions
diff --git a/src/fl_draw.cxx b/src/fl_draw.cxx
index 637744c4f..762a33b47 100644
--- a/src/fl_draw.cxx
+++ b/src/fl_draw.cxx
@@ -95,7 +95,11 @@ expand(const char* from, char* buf, double maxw, int& n, double &width,
} else if (c < ' ' || c == 127) { // ^X
*o++ = '^';
*o++ = c ^ 0x40;
- } else if (c == 0xA0) { // non-breaking space
+#ifdef __APPLE__
+ } else if (c == 0xCA) { // non-breaking space in MacRoman
+#else
+ } else if (c == 0xA0) { // non-breaking space in ISO 8859
+#endif
*o++ = ' ';
} else if (c == '@' && draw_symbols) { // Symbol???
if (p[1] && p[1] != '@') break;
diff --git a/src/fl_shortcut.cxx b/src/fl_shortcut.cxx
index 69e11ede5..8742b7460 100644
--- a/src/fl_shortcut.cxx
+++ b/src/fl_shortcut.cxx
@@ -55,7 +55,11 @@ int Fl::test_shortcut(int shortcut) {
if (!shortcut) return 0;
int v = shortcut & 0xffff;
- if (v > 32 && v < 0x7f || v > 0xa0 && v <= 0xff) {
+#ifdef __APPLE__
+ if (v > 32 && v < 0x7f || v >= 0x80 && v <= 0xff) {
+#else
+ if (v > 32 && v < 0x7f || v >= 0xa0 && v <= 0xff) {
+#endif
if (isupper(v)) {
shortcut |= FL_SHIFT;
}
@@ -127,7 +131,11 @@ const char * fl_shortcut_label(int shortcut) {
if (!shortcut) {*p = 0; return buf;}
// fix upper case shortcuts
int v = shortcut & 0xffff;
- if (v > 32 && v < 0x7f || v > 0xa0 && v <= 0xff) {
+#ifdef __APPLE__
+ if (v > 32 && v < 0x7f || v >= 0x80 && v <= 0xff) {
+#else
+ if (v > 32 && v < 0x7f || v >= 0xa0 && v <= 0xff) {
+#endif
if (isupper(v)) {
shortcut |= FL_SHIFT;
}