summaryrefslogtreecommitdiff
path: root/README.mac
blob: 3b244dafad365aae1af2887dd039db756133780b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
README.mac - 12/03/2001 - Building FLTK under MacOS and OS X
------------------------------------------------------------

CONTENTS
--------
  - Introduction
  - gcc (Carbon) - how to build
  - scripts
  - known MacFLTK bugs
  - test suite status
  - other stuff
  - FLTK 1.0.x for Mac
  
  
INTRODUCTION
------------

FLTK for Mac OS X is in pre-beta stage. Expect rapid changes to the 
source code and build environment. Expect many crashes and funny
blinking patterns.

FLTK currently supports the following development environment on the
Mac OS X platform:

    - gcc (Carbon)

    - (Metrowerks CodeWarrior - future releases)

    - (Apple Project Builder - future releases)

    - (MPW - future releases)

FLTK for Mac is carbonized, i.e. all applications should run on Mac
OS 8.1 and higher and OS X without changes.


gcc (Carbon) - how to build
--------------------------

Since the Max OS X command line build environment is based on BSD 
Unix, the normal Unix build procedure as described in 'README' 
applies. Compiled applications can only be started from within
the terminal though.

A 'resource fork' needs to be attached to applications to make
them visible to the Finder. A sample resource file is ./FL/mac.r .

To make 'hello' a full application, compile and link 'hello', then 
change into the test directory and type:

> Rez -t APPL -c Fltk ../FL/mac.r -o hello


scripts
-------

When using Finder applications on source files (i.e. FileMerge)
I found the following script very useful. It adds resource forks to
all text files.

#!/bin/tcsh
setenv SET_MAC_TYPE "SetFile -t TEXT -c ttxt "
setenv F1MAC_N 7
echo "Setting Mac File Types. Please wait..."
echo "[1/"$F1MAC_N"]"
find . -name '*.H' -exec $SET_MAC_TYPE {} \;
echo "[2/"$F1MAC_N"]"
find . -name '*.h' -exec $SET_MAC_TYPE {} \;
echo "[3/"$F1MAC_N"]"
find . -name '*.c' -exec $SET_MAC_TYPE {} \;
echo "[4/"$F1MAC_N"]"
find . -name '*.cxx' -exec $SET_MAC_TYPE {} \;
echo "[5/"$F1MAC_N"]"
find . -name '*.fl' -exec $SET_MAC_TYPE {} \;
echo "[6/"$F1MAC_N"]"
find . -name 'make*' -exec $SET_MAC_TYPE {} \;
echo "[7/"$F1MAC_N"]"
find . -name 'Make*' -exec $SET_MAC_TYPE {} \;
echo "done."


known MacFLTK bugs
------------------

- OpenGL window resize
- font support not finished
- line styles missing
- cut, copy, paste
- mousewheel (Carbon Events)
- sub-sub-subwindow
- modal windows are not modal
- makefiles supporting Rez


test suite status
-----------------

OS X:

CubeView(++), adjuster(++), arc(++), ask(++), bitmap(++), 
boxtype(++), browser(++), button(++), buttons(++), checkers(++),
clock(++), colbrowser(++), color_chooser(++), cube(++), cursor(+),
curve(++), demo(++), doublebuffer(++), editor(++), fast_slow(++),
file_chooser(++), fonts(++), forms(++), fractals(+), fullscreen(+),
gl_overlay(o), glpuzzle(++), hello(++), help(++), iconize(+), image(+),
inactive(++), input(++), keyboard(+), label(++), line_style(+),
mandelbrot(++), menubar(++), message(++), minimum(++), navigation(++),
output(++), overlay(o), pack(++), pixmap(++), pixmap_browser(++),
radio(++), resizebox(++), scroll(++), shape(+), shiny(--), subwindow(++),
symbols(++), tabs(++), tile(++), tiled_image(++), valuators(++), 
fluid(++)

(o)=minor bugs, (+)=usable, (++)=running perfectly, (-)=major 
bugs, (--)=crashes  


other stuff
-----------

The following creator ID's 'FLTK', 'Fltk', 'FLID' and 'Flid' are
officially registered with Apple Computers and can be used for
FLTK applications ('FLTK') and fluid files ('Flid').

All applications should be ended with exit(0); or they might 
hang until killed.

Under OS X, all windows are doublebuffered anyway. Using Fl_Window
has the same effect as using Fl_Double_Window on OS X.


FLTK 1.0.x for Mac
------------------

FLTK 1.0.6 for Mac OS 8.x and OS 9.x is in beta stage and can be
downloaded from http://www.matthiasm.com/fltk/mac.shtml. The
archive contains build files for Metrowerks CodeWarrior 5 and 6.

FLTK 1.0.6 for Mac is not supported by the FLTK team and will not 
be further developed by the author. Instead it will be replaced 
by FLTK 1.1.x for Mac in the near future.