Compare commits

..

1704 Commits

Author SHA1 Message Date
pnunn
2c74b94e4b upd to jpeg 6B
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3908 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-16 19:43:25 +00:00
pnunn
98b629f874 upd to jpeg 6B
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3906 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-16 19:27:05 +00:00
pnunn
e96b82d112 upd to jpeg 6B
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3899 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-16 18:00:06 +00:00
pnunn
18531b8d6e upd to 6B
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3835 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-15 22:46:02 +00:00
pnunn
55a9a48da8 upd to 6B
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3832 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-15 22:27:03 +00:00
pnunn
f5b2ba8ec9 upd to 6b
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3831 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-15 22:26:16 +00:00
pnunn
ecf8abe7de upd to 6b.
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3830 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-15 22:25:51 +00:00
pnunn
07a1ddc831 upd to 6.2b.
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3827 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-15 22:07:10 +00:00
pnunn
95028db51a fixed eof char for x.
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3501 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-08 19:18:34 +00:00
pnunn
b4dfdc1480 JPEG BRANCH
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3096 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-03 19:06:48 +00:00
pnunn
201d82a07b created in jpeg module update to 6B.
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3092 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-03 18:57:16 +00:00
pnunn
0ef80579b2 created in jpeg module update to 6b.
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3090 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-03 18:56:12 +00:00
pnunn
929192902e create in jpeg module update to 6B.
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@3087 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-03 18:55:06 +00:00
(no author)
61854ed71e This commit was manufactured by cvs2svn to create branch 'JPEG_BRANCH'.
git-svn-id: svn://10.0.0.236/branches/JPEG_BRANCH@2967 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-02 23:55:00 +00:00
sfraser
e51185d273 Changes for new build system, and unified prefix files.
git-svn-id: svn://10.0.0.236/trunk@2536 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 19:22:54 +00:00
sfraser
b4abce86b4 Changes for new build system and unified prefix files.
git-svn-id: svn://10.0.0.236/trunk@2535 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 19:19:09 +00:00
sfraser
644516c52a Updating for new build system and prefix files.
git-svn-id: svn://10.0.0.236/trunk@2534 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 19:16:03 +00:00
pnunn
156cabb819 fix for #84300. print images at printer rez not screen rez
git-svn-id: svn://10.0.0.236/trunk@2533 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 19:07:40 +00:00
sfraser
710a5ed2a5 Changes for the new build system; unify prefix files.
git-svn-id: svn://10.0.0.236/trunk@2532 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 19:04:58 +00:00
troy
363a605781 Changed VerifyTree() to check that NS_FRAME_IN_REFLOW isn't set
git-svn-id: svn://10.0.0.236/trunk@2531 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 19:00:31 +00:00
sfraser
0f5ae2a51d Changed for new build system
git-svn-id: svn://10.0.0.236/trunk@2530 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:58:33 +00:00
pnunn
fc6eb86d7c fix #84300. print images at printer rez not screen rez.
git-svn-id: svn://10.0.0.236/trunk@2529 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:58:11 +00:00
sfraser
d4a52ff18f Changed for new build system, and comments on how this thing works.
git-svn-id: svn://10.0.0.236/trunk@2528 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:58:09 +00:00
sfraser
6f382af498 Changed for new build system, and to inlcude long comment about how this whole thing works.
git-svn-id: svn://10.0.0.236/trunk@2527 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:57:55 +00:00
sfraser
a1f9da0d57 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2526 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:57:26 +00:00
pnunn
c9e85bd720 fix #84300. print image at printer rez not screen rez.
git-svn-id: svn://10.0.0.236/trunk@2525 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:57:05 +00:00
sfraser
6e50378dd1 Changed for new build system, and to put output of stubs project in dist:client_stubs
git-svn-id: svn://10.0.0.236/trunk@2524 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:53:57 +00:00
pnunn
0dddecb63a fix for #84300. print images at printer resolution not screen resolution.
git-svn-id: svn://10.0.0.236/trunk@2523 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:53:31 +00:00
sfraser
0fc30e6b1c Changed prefix file for new build system
git-svn-id: svn://10.0.0.236/trunk@2522 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:53:07 +00:00
sfraser
6c5edb8104 Replace a MIN with a locally defined Min()
git-svn-id: svn://10.0.0.236/trunk@2521 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:48:57 +00:00
kipp
482d1c4451 Port to new parser API
git-svn-id: svn://10.0.0.236/trunk@2520 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:40:23 +00:00
kipp
ea98683ca1 Revised argument handling and added code to test the ParseDeclarations css parser capability
git-svn-id: svn://10.0.0.236/trunk@2519 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:40:07 +00:00
kipp
1bf0cfd0b6 Revised API to be com-ish and added ParseDeclarations; implement ParseDeclartions using basic declaration handling routines
git-svn-id: svn://10.0.0.236/trunk@2518 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:39:42 +00:00
kipp
15197431ac Revised API to be com-ish and added ParseDeclarations
git-svn-id: svn://10.0.0.236/trunk@2517 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:39:08 +00:00
kipp
e5a638c35c Init refcnt properly
git-svn-id: svn://10.0.0.236/trunk@2516 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:38:32 +00:00
cyeh
845c6e85ce add mozilla/config/mac to MozillaSourceMacOnly as part of new build system.
git-svn-id: svn://10.0.0.236/trunk@2515 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:38:02 +00:00
troy
ea3a30a606 Added WillReflow() calls around reflowing of child frame
git-svn-id: svn://10.0.0.236/trunk@2514 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:37:56 +00:00
kostello
066a9ee625 Fix crasher loading mozilla.org page
git-svn-id: svn://10.0.0.236/trunk@2513 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:31:44 +00:00
selmer
0d0c63b1f0 Back out the IP stuff again
git-svn-id: svn://10.0.0.236/trunk@2512 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:20:00 +00:00
slamm
81cfe6418a change getURL() to take one less argument.
git-svn-id: svn://10.0.0.236/trunk@2511 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:14:00 +00:00
slamm
28ed9d31bd Make a distinction between stand-alone and embedded views. Stand-alone views show all the columns. Views embedded in the browser only show one column.
git-svn-id: svn://10.0.0.236/trunk@2510 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:41:47 +00:00
slamm
f49100e498 Change the nav center context from MWContextHistory to MWContextPane.
git-svn-id: svn://10.0.0.236/trunk@2509 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:41:44 +00:00
slamm
26d1e2f7fe Change getURL() to take only the urlStruct and not skip_get_url. It wasn't being used and it was confusing.src/BrowserDrop.cpp
git-svn-id: svn://10.0.0.236/trunk@2508 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:41:40 +00:00
slamm
4523b7631a Add a test case for the show/hide column behavior.
git-svn-id: svn://10.0.0.236/trunk@2507 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:41:34 +00:00
slamm
f1f6f0e1ab Add show/hide column buttons. Overload XmNvisibleColumns to set the actual number of visible columns when XmRESIZE_IF_POSIBLE is set. Previously, XmNvisibleColumns was used to request a width equal to an average column width times the number given. That behavior is still available when the horizontal size policy is XmCONSTANT.
git-svn-id: svn://10.0.0.236/trunk@2506 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:41:31 +00:00
morse
e29e2bc604 bug 122126, reviewed by mjudge
git-svn-id: svn://10.0.0.236/trunk@2504 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:41:09 +00:00
morse
c55ad343d6 bug 122126, reviewed by mjudge
git-svn-id: svn://10.0.0.236/trunk@2503 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:13:10 +00:00
kipp
1143ad5087 Default alignment of HR's is center
git-svn-id: svn://10.0.0.236/trunk@2501 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:10:17 +00:00
morse
774dc66bfd bug 122126, reviewed by valeski
git-svn-id: svn://10.0.0.236/trunk@2500 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:07:23 +00:00
kipp
3bcb8b4996 Fixed infinite loop in GetStyleSize code
git-svn-id: svn://10.0.0.236/trunk@2499 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:06:43 +00:00
kipp
03f29947f5 Eliminated bogus style from HR rule
git-svn-id: svn://10.0.0.236/trunk@2498 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:06:15 +00:00
kipp
a822df4a63 Support sizing properly; support width/height css (and attribute) style; elminate manual attribute storage
git-svn-id: svn://10.0.0.236/trunk@2497 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 17:05:39 +00:00
karnaze
36d98ad2fb fix bug in get submission
git-svn-id: svn://10.0.0.236/trunk@2495 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 16:00:15 +00:00
morse
d5565089fc bug 122126, reviewed by blythe
git-svn-id: svn://10.0.0.236/trunk@2494 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 15:35:21 +00:00
nisheeth
8baba2f927 Fix for bug 113155. We were losing the form_data->value of hidden text fields when executing "history.go(0)". Now we keep the value around between session history traversals. Thanks to ludovic for the fix.
----------------------------------------------------------------------


git-svn-id: svn://10.0.0.236/trunk@2492 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 14:24:16 +00:00
rickg
4d75e96e6d fixed class name crasher
git-svn-id: svn://10.0.0.236/trunk@2491 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 07:38:28 +00:00
ramiro
db5ab6bd3d Add macros to build unused widgets.
git-svn-id: svn://10.0.0.236/trunk@2490 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 07:26:08 +00:00
rickg
d26713dc46 modest improvements to push, and various bug fixes
git-svn-id: svn://10.0.0.236/trunk@2489 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 07:12:08 +00:00
sfraser
2d3e959eb3 Fix some project and lib names
git-svn-id: svn://10.0.0.236/trunk@2488 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 06:18:36 +00:00
sfraser
4027034ebc Fix the variable substitution, again
git-svn-id: svn://10.0.0.236/trunk@2486 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 05:52:42 +00:00
troy
c582c6488b Make sure we set the (x,y) before reflowing the frame
git-svn-id: svn://10.0.0.236/trunk@2485 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 05:41:59 +00:00
sfraser
397aea4430 Fix the variable substitution
git-svn-id: svn://10.0.0.236/trunk@2484 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 05:32:47 +00:00
sfraser
15edde0fe9 *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@2483 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 05:16:58 +00:00
sfraser
0891fd8e06 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2482 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 05:16:43 +00:00
sfraser
3894b2d566 Temporarily commenting out export.mac file in mozilla:config:mac, since this directory needs to be added to the MozillaSourceMac module.
git-svn-id: svn://10.0.0.236/trunk@2481 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 05:03:46 +00:00
rpotts
b5c0efe548 removed the B1M define... Use MODULAR_NETLIB instead...
git-svn-id: svn://10.0.0.236/trunk@2480 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 04:56:44 +00:00
rpotts
05a096f37c Removed B1M define and used MODULAR_NETLIB instead...
git-svn-id: svn://10.0.0.236/trunk@2479 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 04:55:51 +00:00
troy
27d5b5bdbe Changed Paint() to not check if the frame is a pseudo frame
git-svn-id: svn://10.0.0.236/trunk@2478 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 04:38:28 +00:00
cboatwri
5d7f7dc59d Added Directory (ldap) SDK source files for public release
git-svn-id: svn://10.0.0.236/trunk@2477 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 04:29:26 +00:00
cboatwri
bcc6f383bb Added Directory (ldap) SDK source files for public release
git-svn-id: svn://10.0.0.236/trunk@2476 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 04:23:42 +00:00
sfraser
bbe33e24af Fix a bug in the quoting of file names which caused problems with files with a hyphen in the name.
git-svn-id: svn://10.0.0.236/trunk@2475 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 04:07:53 +00:00
sfraser
07d9f8cb3d First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2472 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 03:19:00 +00:00
scullin
f3a658f096 Checked in from the wrong $@%$#%$ tree.
git-svn-id: svn://10.0.0.236/trunk@2471 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 03:15:39 +00:00
mcafee
99dc022e95 Initial fullcircle module checkin
git-svn-id: svn://10.0.0.236/trunk@2470 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 03:00:49 +00:00
troy
4423b06d16 Added 'ns' prefix to class name
git-svn-id: svn://10.0.0.236/trunk@2468 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 02:37:37 +00:00
kipp
243bbe4f16 Added style support for the new css opacity property
git-svn-id: svn://10.0.0.236/trunk@2467 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 02:02:43 +00:00
kipp
0af82d79bd Revised HorizontallyPlaceChildren API to support a default alignment based on the layout direction
git-svn-id: svn://10.0.0.236/trunk@2466 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 02:02:22 +00:00
kipp
0f84787aa8 Use revised HorziontallyPlaceChildren api
git-svn-id: svn://10.0.0.236/trunk@2465 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 02:01:50 +00:00
kipp
a1e84139ce Use default text alignment; setup opacity properly
git-svn-id: svn://10.0.0.236/trunk@2464 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 02:01:19 +00:00
kipp
855722caee Added text_align_default for better direction handling
git-svn-id: svn://10.0.0.236/trunk@2463 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 02:00:59 +00:00
kipp
1842fc5cd8 Added mOpacity to nsStyleColor
git-svn-id: svn://10.0.0.236/trunk@2462 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 01:59:38 +00:00
kipp
f0567815a9 new
git-svn-id: svn://10.0.0.236/trunk@2461 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 01:58:58 +00:00
morse
3a25f69d6e check-in for garrett
git-svn-id: svn://10.0.0.236/trunk@2460 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 01:49:21 +00:00
scullin
3097cad210 Fix mac build bustage.
git-svn-id: svn://10.0.0.236/trunk@2459 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 01:31:47 +00:00
sfraser
28d26264cc First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2457 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 01:24:19 +00:00
scullin
e7cc5af4d2 Fix Mac build.
git-svn-id: svn://10.0.0.236/trunk@2454 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 01:18:42 +00:00
kipp
834cd63031 Added a new property
git-svn-id: svn://10.0.0.236/trunk@2453 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 01:11:30 +00:00
cyeh
28a5660932 sigh. one more time. add mozilla/modules/libnls as part of the mail/news
integration effort.


git-svn-id: svn://10.0.0.236/trunk@2452 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 01:08:55 +00:00
cyeh
abb3b256a3 added mozilla/modules/calendar to MozillaCommon as part of the mail/news
integration effort


git-svn-id: svn://10.0.0.236/trunk@2451 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 01:00:19 +00:00
jevering
354c2123f5 Unwhack Rick's change.
git-svn-id: svn://10.0.0.236/trunk@2450 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:57:25 +00:00
scullin
a03e49ff46 Fully land MODULAR_NETLIB branch on windows.
git-svn-id: svn://10.0.0.236/trunk@2449 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:52:44 +00:00
ftang
3c7d0866f3 add euro sign. approved by dp
git-svn-id: svn://10.0.0.236/trunk@2448 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:49:35 +00:00
karnaze
c71fc09344 fixed memory leak from prev checkin
git-svn-id: svn://10.0.0.236/trunk@2447 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:42:26 +00:00
spider
ea64ef1e2e Fixes to support latest GFX changes
git-svn-id: svn://10.0.0.236/trunk@2443 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:23:10 +00:00
spider
5937630273 Fix NSPR circly dependency thing
git-svn-id: svn://10.0.0.236/trunk@2442 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:22:34 +00:00
jevering
672bf8b1cb Added parser message dispatch loop for debug robot to pump netlib
and complete individual parsing.


git-svn-id: svn://10.0.0.236/trunk@2441 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:22:11 +00:00
spider
7faae8033a Get TREX running on UNIX again
git-svn-id: svn://10.0.0.236/trunk@2440 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:21:57 +00:00
jevering
21f4b2f1e9 Changing the debug robot to be able to cope with the parser push model.
Updated the robot sink apis.
Fixed the global url holder in the destructor of the parser.
Changed the robot observer to set a flag when completed parsing of a
url so that it doesn't create lottsa little parsers.


git-svn-id: svn://10.0.0.236/trunk@2439 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:21:34 +00:00
scullin
4157160681 Remove SOCKET_ERRNO and xp_sock.h from network
git-svn-id: svn://10.0.0.236/trunk@2438 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:19:49 +00:00
scc
a5eee274d7 Exploit new routine BuildProjectClean($;$). Fixed $dist_dir use to be consistent with standard use of variables for directories (i.e., include the trailing colon). Unified some small $DEBUG logic.
git-svn-id: svn://10.0.0.236/trunk@2437 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:19:43 +00:00
scullin
b713c5c1a8 Remove SOCKET_ERRNO from mozilla/network.
git-svn-id: svn://10.0.0.236/trunk@2436 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:18:29 +00:00
scullin
bbfde797e0 Eliminate SOCKET_ERRNO and xp_sock.h
git-svn-id: svn://10.0.0.236/trunk@2435 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:17:37 +00:00
scc
8b1d7177ce Added additional parameter to BuildProject: a boolean which, when true, forces a full build via `remove object code'
git-svn-id: svn://10.0.0.236/trunk@2434 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:16:44 +00:00
scc
4e38154099 Added BuildProjectClean($;$), like BuildProject, but forces a `remove object code'. Factored the two routines into a private build_project($$$)
git-svn-id: svn://10.0.0.236/trunk@2433 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 00:15:54 +00:00
karnaze
4fda063ac0 gui events store nsISupports; improved forms event handling
git-svn-id: svn://10.0.0.236/trunk@2432 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:58:07 +00:00
sfraser
0d27b0a629 Changed exports
git-svn-id: svn://10.0.0.236/trunk@2430 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:57:48 +00:00
sfraser
de6e715c62 Changed the target name to "Stubs" so that remove binaries happens each time, to guarentee that dist happens.
git-svn-id: svn://10.0.0.236/trunk@2429 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:54:02 +00:00
sfraser
9234dfdcee Changed the target name of the MakeDist project to "Stubs" so that binaries are removed on every build.
git-svn-id: svn://10.0.0.236/trunk@2428 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:53:31 +00:00
eyork
e3c9d24c1c Adding files for calendar mime handler. This is not yet hooked into mozilla.
git-svn-id: svn://10.0.0.236/trunk@2427 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:44:03 +00:00
kipp
9c836bc876 Parse (and ignore) important declarations
git-svn-id: svn://10.0.0.236/trunk@2426 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:38:16 +00:00
kipp
39db2c7f41 new
git-svn-id: svn://10.0.0.236/trunk@2425 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:37:21 +00:00
pinkerton
5fead38dcc obsolete just a few more LGA* files.
git-svn-id: svn://10.0.0.236/trunk@2423 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:23:23 +00:00
wtc
e1c7878a44 Removed unused variables. Thanks to Wei Tsang Ooi
<weitsang@cs.cornell.edu> for the patch.


git-svn-id: svn://10.0.0.236/trunk@2422 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:21:10 +00:00
wtc
4d04c2a5ce Use the stabs debug format on Solaris x86, because the default dwarf
format does not work.  This patch is provided by Soren Juul Moller
<sjm@nwc.dk>.


git-svn-id: svn://10.0.0.236/trunk@2420 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:15:32 +00:00
wtc
491e021a91 Merged gcc support from the HP-UX Mozilla Patching Kit version 3.00
(http://hpux.csc.liv.ac.uk/hppd/mozilla/), maintained by
Richard K Lloyd <hpux@csc.liv.ac.uk>.


git-svn-id: svn://10.0.0.236/trunk@2419 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:13:47 +00:00
rpotts
c1108773df Changed NET_WritePostData(...) to only send a CRLF between headers and data if both are present... On in the modular netlib, headers can be placed in the URL_s->post_data... This cahnge is ifdef B1M
git-svn-id: svn://10.0.0.236/trunk@2418 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:07:13 +00:00
rpotts
16efd4b73b Added B1M define if the MODULAR_NETLIB environment variable is defined...
git-svn-id: svn://10.0.0.236/trunk@2417 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:05:18 +00:00
rpotts
7fe06ecb1d Added support for XP_FindCOntextOfType(....) This is needed to turn off the poll_netlib_all_the_time flag after a POST has occurred
git-svn-id: svn://10.0.0.236/trunk@2416 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:04:11 +00:00
rpotts
75cb8edc90 Null terminate the post databuffer...
git-svn-id: svn://10.0.0.236/trunk@2415 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 23:03:05 +00:00
cyeh
40ed381c57 turn on moz_medium (turn off moz_lite)
git-svn-id: svn://10.0.0.236/trunk@2414 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 22:57:32 +00:00
sfraser
89cd69560c Fix warnings
git-svn-id: svn://10.0.0.236/trunk@2413 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 22:55:38 +00:00
sfraser
9649279ca2 Remove an obsolete prefix file
git-svn-id: svn://10.0.0.236/trunk@2412 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 22:53:47 +00:00
sfraser
c30964cead Changed to use NewAlias instead of dupicate for making headers in dist
git-svn-id: svn://10.0.0.236/trunk@2411 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 22:53:17 +00:00
sfraser
4849021fab Fix warnings
git-svn-id: svn://10.0.0.236/trunk@2410 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 22:47:28 +00:00
sfraser
c10c97cb1b Added a need comma, and added lines to build Client resource targets. Also changed name of final project from Navigator to Client.
git-svn-id: svn://10.0.0.236/trunk@2409 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 22:47:14 +00:00
scc
ed6abb94e6 missing project files now counts as an error w.r.t. StopForErrors(). Cleaned up MakeAlias a little.
git-svn-id: svn://10.0.0.236/trunk@2408 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 22:40:36 +00:00
kipp
6aeed36e66 Set x,y coordinate of frame before reflowing it
git-svn-id: svn://10.0.0.236/trunk@2407 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 22:24:57 +00:00
scullin
0375c753f7 Landing MODULAR_NETLIB_BRANCH on windows.
git-svn-id: svn://10.0.0.236/trunk@2406 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 22:13:00 +00:00
scullin
6a0c8ea696 Fix bool type mismatch.
git-svn-id: svn://10.0.0.236/trunk@2403 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:18:25 +00:00
cyeh
b4cb3f29b7 updated LEGAL file to reflect non-infringement of WANG patent, and option
to appeal.


git-svn-id: svn://10.0.0.236/trunk@2402 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:17:37 +00:00
sfraser
35dee2f6a2 Fixed MakeAlias to give better errors, and to work.
git-svn-id: svn://10.0.0.236/trunk@2401 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:14:11 +00:00
sfraser
3627d9d93f Added code to remove binaries from stubs targets before building them.
git-svn-id: svn://10.0.0.236/trunk@2400 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:13:29 +00:00
sfraser
56f8574831 Added copyright, put in MOZ_LITE definition.
git-svn-id: svn://10.0.0.236/trunk@2399 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:12:59 +00:00
sfraser
2554c38ada Updated to point to the new projects, and use the MakeAlias routine.
git-svn-id: svn://10.0.0.236/trunk@2398 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:10:54 +00:00
kipp
90a0e806d2 Use new line layout struct; pass in word break info to line layout
git-svn-id: svn://10.0.0.236/trunk@2397 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:07:30 +00:00
kipp
c7f7ce710d Moved certain line layout state into a state struct that can be saved/restored for word breaking
git-svn-id: svn://10.0.0.236/trunk@2396 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:07:10 +00:00
kipp
61dcf31ce0 Moved certain line layout state into a state struct that can be saved/restored for word breaking; updated code to use it; fixed up split line logic to use state to compute push count; added in word breaking logic; eliminated old word break code
git-svn-id: svn://10.0.0.236/trunk@2395 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:06:55 +00:00
kipp
f10d10eb50 Added DidFit/CanFit predicates; removed cruft
git-svn-id: svn://10.0.0.236/trunk@2394 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:06:03 +00:00
kipp
ba58cf168c Removed cruft; fixed to use canfit/didfit predicates that check on word-breaking state; fixed long standing bug with last-content-complete in pullup code
git-svn-id: svn://10.0.0.236/trunk@2393 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:05:47 +00:00
kipp
73e6662d13 Updated to use lineLayout struct changes
git-svn-id: svn://10.0.0.236/trunk@2392 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:05:13 +00:00
kipp
ac90a0457e nop
git-svn-id: svn://10.0.0.236/trunk@2391 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:04:53 +00:00
kipp
fef14caafd Only perform horizontal alignment when there is room to do it
git-svn-id: svn://10.0.0.236/trunk@2390 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:04:33 +00:00
karnaze
7e760f96e7 removed printf
git-svn-id: svn://10.0.0.236/trunk@2389 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:04:23 +00:00
cyeh
09e6e142e3 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2386 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 20:38:39 +00:00
sfraser
08b5bba656 Updated comment
git-svn-id: svn://10.0.0.236/trunk@2385 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 20:35:52 +00:00
akkana
6ea3a86934 Re-enable -composer and -edit flags (they were disabled under MOZ_MAIL_NEWS).
Also clean up a couple of warnings.


git-svn-id: svn://10.0.0.236/trunk@2384 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 20:26:01 +00:00
scc
925bc36315 removed erroneous commas from export lists
git-svn-id: svn://10.0.0.236/trunk@2383 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 20:19:31 +00:00
waldemar
3f6f86757c Fixed bug 114508: delete can now delete fields of objects put into scope by with statements
git-svn-id: svn://10.0.0.236/trunk@2381 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 20:10:13 +00:00
morse
599a68f6e5 removed ifdefs, mac busted fixed
git-svn-id: svn://10.0.0.236/trunk@2379 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 20:06:00 +00:00
hardts
d224ba7688 change raptor to nglayout
git-svn-id: svn://10.0.0.236/trunk@2378 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 20:00:40 +00:00
karnaze
b2212278c9 fix irix build
git-svn-id: svn://10.0.0.236/trunk@2377 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 19:57:03 +00:00
pinkerton
55e683689b Port to new AM classes of security button.
git-svn-id: svn://10.0.0.236/trunk@2376 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 19:55:09 +00:00
pinkerton
0795bce6bf add NET_DeleteCookie for RDF.
git-svn-id: svn://10.0.0.236/trunk@2375 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 19:54:01 +00:00
scc
cc9c1e39ae Added MakeAlias, an error checking synonym for symlink. Moved some routines to @EXPORT from @EXPORT_OK, to make for more concise clients.
git-svn-id: svn://10.0.0.236/trunk@2374 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 19:52:28 +00:00
morse
daacb3e5e2 bug 122126, reviewd by valeski
git-svn-id: svn://10.0.0.236/trunk@2373 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 19:46:30 +00:00
morse
e033f40035 bug 122126, reviewed by valeski
git-svn-id: svn://10.0.0.236/trunk@2369 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 19:34:31 +00:00
morse
3ac0fa7e60 bug 122126, approved by valeski
git-svn-id: svn://10.0.0.236/trunk@2367 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 19:32:19 +00:00
scullin
f63d10a871 Strip out XP functions from last bug fix.
git-svn-id: svn://10.0.0.236/trunk@2364 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 18:50:54 +00:00
karnaze
ca8a2b30ce post submission, file content submission
git-svn-id: svn://10.0.0.236/trunk@2355 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 17:51:41 +00:00
pinkerton
ac438678e6 Removal of LGA* stuff in prefs.
git-svn-id: svn://10.0.0.236/trunk@2354 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 17:29:01 +00:00
pinkerton
2e899db9e9 removal of LGA* stuff
git-svn-id: svn://10.0.0.236/trunk@2353 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 17:27:50 +00:00
michaelp
9c7b6d8d1b added region to factory.
git-svn-id: svn://10.0.0.236/trunk@2352 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 17:11:37 +00:00
morse
4de633d5a8 attempt to fix mac bustage
git-svn-id: svn://10.0.0.236/trunk@2350 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 15:08:35 +00:00
shaver
aca06adb66 tracking ref fixes: XDR and jsnum
git-svn-id: svn://10.0.0.236/trunk@2349 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 14:24:39 +00:00
shaver
69c0f00221 allow NULL Scripts for JS_NewScriptObject
git-svn-id: svn://10.0.0.236/trunk@2348 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 14:18:51 +00:00
morse
1c50215a24 bug 122126, reviewed by guha
git-svn-id: svn://10.0.0.236/trunk@2347 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 08:15:49 +00:00
morse
3cbd932a72 bug 122126, reviewed by valeski
git-svn-id: svn://10.0.0.236/trunk@2345 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 08:06:33 +00:00
hshaw
82e7979a06 Fix for Rhapsody build, thanks toshok@netscape.com, also remove some improper wording
git-svn-id: svn://10.0.0.236/trunk@2342 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 07:33:12 +00:00
morse
6dd0737902 bug 122126, reviewed by atotic
git-svn-id: svn://10.0.0.236/trunk@2340 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 07:31:15 +00:00
morse
48c842a852 bug 122126, reviewed by aoki
git-svn-id: svn://10.0.0.236/trunk@2339 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 07:24:36 +00:00
scc
8215a118ba added symlink lines, most still need to be completed with final product names; dist directory probably needs to be set correctly
git-svn-id: svn://10.0.0.236/trunk@2338 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 05:46:21 +00:00
mccabe
1403ada266 Conditionalized a (jsint) cast to ask JSDOUBLE_IS_NaN first -
hopefully avoiding a SIGPFE on Alpha Linux.  (And others?)


git-svn-id: svn://10.0.0.236/trunk@2335 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 04:53:37 +00:00
timm
9144c3b087 fix threading problem with thermo bar
git-svn-id: svn://10.0.0.236/trunk@2334 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 03:36:23 +00:00
timm
f70fcc46ce Sols changes
git-svn-id: svn://10.0.0.236/trunk@2333 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 03:35:09 +00:00
timm
4d6fd3d15c remove debugging stubs
git-svn-id: svn://10.0.0.236/trunk@2332 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 03:34:57 +00:00
timm
2328897d3e add getSelectedISPName
git-svn-id: svn://10.0.0.236/trunk@2331 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 03:34:14 +00:00
timm
c2b35bd975 remove debugging stub
git-svn-id: svn://10.0.0.236/trunk@2330 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 03:33:37 +00:00
timm
fea8bc8078 117255 fix for null exception
git-svn-id: svn://10.0.0.236/trunk@2329 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 03:32:53 +00:00
timm
bea1cec239 Sols changes, fix for 97647
git-svn-id: svn://10.0.0.236/trunk@2328 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 03:31:09 +00:00
spider
582fd7877f Allow mkdepend to be built on windoze
git-svn-id: svn://10.0.0.236/trunk@2327 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 02:27:09 +00:00
spider
2afd1eef7d windows dep. stuff
git-svn-id: svn://10.0.0.236/trunk@2326 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 02:14:26 +00:00
michaelp
d4e2a5a20c added support for front-to-back view rendering.
git-svn-id: svn://10.0.0.236/trunk@2325 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 02:13:28 +00:00
tague
55e417dfe9 added libnls headers to public build
git-svn-id: svn://10.0.0.236/trunk@2324 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 02:02:27 +00:00
scullin
35ec9fcc3e Enable html coloring stream converter in modular netlib.
git-svn-id: svn://10.0.0.236/trunk@2322 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 01:28:29 +00:00
scullin
5fdece0330 Change magic emacs line to reflect correct tab size.
git-svn-id: svn://10.0.0.236/trunk@2321 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 01:27:50 +00:00
scullin
0dbf249dce Don't build mkstream.c with modular netlib
git-svn-id: svn://10.0.0.236/trunk@2320 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 01:26:05 +00:00
scullin
d960e37ced Enable more protocols
git-svn-id: svn://10.0.0.236/trunk@2319 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 01:24:22 +00:00
scullin
31fb3c746d Rebuild when sub-libraries change.
git-svn-id: svn://10.0.0.236/trunk@2318 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 01:24:05 +00:00
spider
06abfe228b Adding makedep to gconfig
git-svn-id: svn://10.0.0.236/trunk@2316 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 00:59:31 +00:00
sfraser
7f9b0a7fe2 Added some more headers to export
git-svn-id: svn://10.0.0.236/trunk@2315 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 00:53:55 +00:00
sfraser
4d0cc4402f First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2314 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 00:53:25 +00:00
sfraser
8703114e8b Addd some more export files
git-svn-id: svn://10.0.0.236/trunk@2313 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 00:53:11 +00:00
sfraser
5f209ad760 Updated the list of export.mac files
git-svn-id: svn://10.0.0.236/trunk@2311 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 00:50:22 +00:00
sfraser
df4052e541 Fixing bugs in the scripts that copy headers into dist. Now allow trailing #comments, and handle whitespace after file names.
git-svn-id: svn://10.0.0.236/trunk@2310 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 00:50:08 +00:00
buster
db2f93e156 fixed case-sensitive include
git-svn-id: svn://10.0.0.236/trunk@2307 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:28:48 +00:00
peterl
e232225565 added visibility style attribute
git-svn-id: svn://10.0.0.236/trunk@2306 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:17:29 +00:00
peterl
86b7ae08b5 moved attributes around
git-svn-id: svn://10.0.0.236/trunk@2305 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:16:55 +00:00
peterl
779a602187 added visibility style attribute
moved attributes from position to display struct


git-svn-id: svn://10.0.0.236/trunk@2304 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:15:47 +00:00
peterl
ef76e4aa4a use context graph for finding contexts
git-svn-id: svn://10.0.0.236/trunk@2303 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:14:56 +00:00
peterl
9050d134bb cleaned up visibility
git-svn-id: svn://10.0.0.236/trunk@2302 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:14:29 +00:00
peterl
f264deae62 reworked up reset code
added child list


git-svn-id: svn://10.0.0.236/trunk@2301 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:14:09 +00:00
peterl
2a8bcff4d7 cleanup
git-svn-id: svn://10.0.0.236/trunk@2300 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:13:26 +00:00
peterl
16a18a6b6d moved overflow from position to display struct
git-svn-id: svn://10.0.0.236/trunk@2299 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:13:15 +00:00
peterl
e280fe1c34 documented reset vs inherited attributes
shuffled some attributes around


git-svn-id: svn://10.0.0.236/trunk@2298 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:12:14 +00:00
waldemar
6f622be91c Fixed bug 117404: typeof should return "function" on scripts and regular expressions.
git-svn-id: svn://10.0.0.236/trunk@2295 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 22:11:00 +00:00
buster
314c1c9eb4 table width computation using style system (more than it used to, at least)
git-svn-id: svn://10.0.0.236/trunk@2294 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 22:03:16 +00:00
waldemar
66bf5ae377 Fixed syntax errors
git-svn-id: svn://10.0.0.236/trunk@2291 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 21:25:41 +00:00
kostello
b9b928f869 Updated Table Border code to render HTML3.2 compatible borders (no longer using the cool,
CSS borders).
Fixed Table but submitted by Isaac David Guedalia <daniel_sh@gezernet.co.il>.


git-svn-id: svn://10.0.0.236/trunk@2288 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 20:57:24 +00:00
kostello
557fb3323f Moved Get3DColors from HRPart to CSSRendering.
Modified Border Drawing Code to use Get3DColors for backwards compatibility purposes.


git-svn-id: svn://10.0.0.236/trunk@2287 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 20:52:59 +00:00
kostello
3b45b56e92 Moved Get3DColors from HRPart to CSSRendering.
git-svn-id: svn://10.0.0.236/trunk@2286 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 20:52:12 +00:00
scc
17b0861b94 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2283 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 19:48:03 +00:00
scc
0b0f644879 Added code to handle the `stop for errors, but not logging' case; moved copyright to (newly added) POD section
git-svn-id: svn://10.0.0.236/trunk@2282 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 19:46:36 +00:00
scc
9bc43c2d77 *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@2281 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 19:36:10 +00:00
scc
ceebd16267 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2280 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 19:34:23 +00:00
ftang
bdcc75c122 fix the x-x-big5(and also gb2312, ksc5601) problem MS FrontPage introduced
for UNIX and Mac. The Window fixed eariler.


git-svn-id: svn://10.0.0.236/trunk@2278 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 19:18:47 +00:00
radha
002970c8f4 Re-fix for earlier fix for bug # 104761. Re-fix provided by timm. See bug report
for further details.


git-svn-id: svn://10.0.0.236/trunk@2277 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 19:05:32 +00:00
ftang
6e7465ed87 Fix NO-ending-SI problem for EUC-KR to ISO-2022-KR conversion
Thanks Jungshik Shin <jshin@pantheon.yale.edu> from the net and Erik van der Poel


git-svn-id: svn://10.0.0.236/trunk@2276 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 18:52:50 +00:00
radha
0bf82aa7dc New resources for the "Show/Hide Navigation Center" menu option
git-svn-id: svn://10.0.0.236/trunk@2275 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 18:52:01 +00:00
radha
33443f536a Add new command xfeToggleNavCenter to show/hide Aurora pane
git-svn-id: svn://10.0.0.236/trunk@2274 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 18:51:12 +00:00
radha
493b237768 Add BrowserView to the source files list.
git-svn-id: svn://10.0.0.236/trunk@2273 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 18:50:25 +00:00
radha
fabf4d340b Use BrowserView instead of HTML View. BrowserView holds a HTML view and a
NavCenter. Create a new menu option "Show/Hide NavCenter".


git-svn-id: svn://10.0.0.236/trunk@2272 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 18:49:53 +00:00
radha
5cf9772f51 Initial Checkin. This is the new view for all browser frames. It holds a HTML
View and a Nav Center View. Navcenter is currently turned off by default. It
can be  turned on with the "Show Navigation Center"  menu option.


git-svn-id: svn://10.0.0.236/trunk@2271 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 18:48:14 +00:00
pinkerton
3f7244a881 Status bar now uses appearance to draw progress bar separate from status text. Related Netscape classes that do the same thing obsoleted.
git-svn-id: svn://10.0.0.236/trunk@2267 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 16:32:05 +00:00
pinkerton
e5d0c4da33 default button again works in profile picker dialog.
git-svn-id: svn://10.0.0.236/trunk@2266 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 16:30:42 +00:00
ltabb
bbbb26567e this is a test for judd, no code effect
git-svn-id: svn://10.0.0.236/trunk@2265 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 14:51:51 +00:00
shaver
ca7d9cbe28 actually define the function properties of a script when decoding
git-svn-id: svn://10.0.0.236/trunk@2262 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 13:25:26 +00:00
shaver
6b2c0b6ca0 preserve sprop->id across XDR
git-svn-id: svn://10.0.0.236/trunk@2261 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 12:18:18 +00:00
ramiro
a67670f676 Change the logic of the || operators. This fixes a problem where the
bookmark window was asserting for no reason.
Thanks to Andrew Veliath <andrewtv@usa.net>


git-svn-id: svn://10.0.0.236/trunk@2260 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 12:15:44 +00:00
ramiro
fc422af5d8 In mozilla.c it says that XFE_InitDNS_Early is called before NSPR, etc.; but
the LOG macro calls PR_smprintf which fires up NSPR.    Use fprintf instead
of LOG() for this case.
Thanks to tenthumbs@cybernex.net.


git-svn-id: svn://10.0.0.236/trunk@2259 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 11:08:10 +00:00
ramiro
110ffa00cd Mozilla crashed after visiting a page with plugin. This is caused
by an access to a NULL pointer (plugin->handle).
Thanks to weitsang@yahoo.com
Fixes bugzilla #409.


git-svn-id: svn://10.0.0.236/trunk@2258 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 10:58:59 +00:00
troy
d2d4e15ea4 Merged ResizeReflow() and IncrementalReflow() into one Reflow() member function
git-svn-id: svn://10.0.0.236/trunk@2253 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-25 17:31:49 +00:00
guha
75cecf8781 Mac ifdef bustage fixage
git-svn-id: svn://10.0.0.236/trunk@2249 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-24 01:13:55 +00:00
guha
36a7576bb9 Add test.c : This file is not in the client build but is meant as
a sample file for those who want to use the XML module in standalone
mode.

Added a bunch of ifdefs for getting the standalone mode.


git-svn-id: svn://10.0.0.236/trunk@2248 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-24 00:27:54 +00:00
spider
a329725d0b Support for resource files on win32 - other platforms currently
ignore the RESFILE and RCFILE variables


git-svn-id: svn://10.0.0.236/trunk@2246 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 18:34:48 +00:00
spider
7fcbc136f4 Support for Julian and nls prior to FreeSource move to /m/pub
git-svn-id: svn://10.0.0.236/trunk@2245 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 18:34:15 +00:00
scullin
19b636f12a Only build module with nglayout.
git-svn-id: svn://10.0.0.236/trunk@2241 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 03:54:56 +00:00
briano
924dbfe9d2 Fixing the SCO OpenServer builds. Need to define _SVID3 in this special case so including statvfs.h will give us what we need. Anyone want to volunteer a more elegant solution? Approved by ramiro@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@2240 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 03:46:19 +00:00
scullin
22acc06189 Landing modular netlib on Window.
git-svn-id: svn://10.0.0.236/trunk@2236 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 01:38:10 +00:00
scullin
14adc6359a Added modular netlib to nglayout/Raptor
git-svn-id: svn://10.0.0.236/trunk@2235 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 01:36:28 +00:00
scullin
6e902be1c6 Updated for modular netlib
git-svn-id: svn://10.0.0.236/trunk@2234 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 01:35:51 +00:00
scullin
9916a96f39 Fix nglayout build.
git-svn-id: svn://10.0.0.236/trunk@2232 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 01:28:11 +00:00
sfraser
4d3a73a6a0 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2231 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 01:14:17 +00:00
scullin
97ebcd1ae6 Fix printing of nsString.
git-svn-id: svn://10.0.0.236/trunk@2228 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 00:28:02 +00:00
rjc
596d7a6b33 Fix FTP on Mac. (Approval by module owner: gagan)
git-svn-id: svn://10.0.0.236/trunk@2227 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 00:09:18 +00:00
scullin
10222065f1 Landed raptor modular netlib stuff
git-svn-id: svn://10.0.0.236/trunk@2225 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 23:38:40 +00:00
hardts
cfef75c533 XPCOM has now landed on the tip
git-svn-id: svn://10.0.0.236/trunk@2224 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 22:41:37 +00:00
hardts
053114cc3c was 0 length file after landing branch, copy in the branch version
git-svn-id: svn://10.0.0.236/trunk@2223 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 22:34:32 +00:00
hardts
35e38c9902 TestID.cpp didn't get branch changes for some reason, adding them now.
git-svn-id: svn://10.0.0.236/trunk@2221 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 22:30:53 +00:00
cyeh
cd4e15a1f7 add file vr_stubs.c to libreg as part of the XPCOM_BRANCH landing
git-svn-id: svn://10.0.0.236/trunk@2219 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 22:01:45 +00:00
hardts
217d4a9900 landing XPCOM_BRANCH
git-svn-id: svn://10.0.0.236/trunk@2218 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 21:56:30 +00:00
hardts
d583c3a3b9 land XPCOM_BRANCH
git-svn-id: svn://10.0.0.236/trunk@2217 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 21:55:49 +00:00
cyeh
4222ef6c58 assist with XPCOM_BRANCH landing. add files nsDebug.cpp and nsSupportsArray.cpp to projects
git-svn-id: svn://10.0.0.236/trunk@2215 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 21:52:45 +00:00
pinkerton
6fc714fb0e More appearance manager changes. Support for toolbar buttons being AM savvy. (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@2213 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 20:25:42 +00:00
pinkerton
29536f7fbb First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2212 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 20:23:25 +00:00
kipp
2f9b3b6470 Including missing nsCoord
git-svn-id: svn://10.0.0.236/trunk@2211 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 20:11:42 +00:00
kipp
3ff4de3bf3 Added -md argument handling
git-svn-id: svn://10.0.0.236/trunk@2210 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 20:11:14 +00:00
rickg
8da56df062 fixed bug in form -- form flag was never being set to true
git-svn-id: svn://10.0.0.236/trunk@2204 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 19:31:38 +00:00
cyeh
b41a29c6af A utility batch file for setting all the necessary environment variables
that needed to build Mozilla for Win32.  Contributed by Lucas Gonze
(lucas@gonze.com) and Rick Ekle (rekle@iconect.net).  You'll need to edit
this file to point it at the location of your development environment and your
local copy of the source tree.


git-svn-id: svn://10.0.0.236/trunk@2203 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 19:30:23 +00:00
rickg
57d6142350 fixed a minor build problem with blender
git-svn-id: svn://10.0.0.236/trunk@2202 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 19:16:08 +00:00
guha
bb4e0c0672 Fix crashing bug caused by very long string being passed to FE_Trace
git-svn-id: svn://10.0.0.236/trunk@2201 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:51:38 +00:00
kipp
5906363e28 Let .cpp compilations KEEP the .cfg file too
git-svn-id: svn://10.0.0.236/trunk@2200 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:43:34 +00:00
kipp
04d414f623 Fixed windows cvpack problem
git-svn-id: svn://10.0.0.236/trunk@2199 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:41:08 +00:00
kipp
c6d6b4ec78 Removed a pile of includes
git-svn-id: svn://10.0.0.236/trunk@2198 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:39:28 +00:00
kipp
a38d94f629 Move padding out of UL/OL and into LI's that are in UL/OL's
git-svn-id: svn://10.0.0.236/trunk@2197 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:39:11 +00:00
kipp
3409cd9d61 Use new GetVisibleArea API
git-svn-id: svn://10.0.0.236/trunk@2196 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:38:33 +00:00
kipp
bd1b101779 Support LI's with padding instead of UL padding
git-svn-id: svn://10.0.0.236/trunk@2195 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:38:11 +00:00
gagan
abcef8c094 Unix builds. Not in the main build yet.
git-svn-id: svn://10.0.0.236/trunk@2194 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:38:10 +00:00
kipp
72ef1d9055 Removed some dead code; added code to DidReflow children at a good spot
git-svn-id: svn://10.0.0.236/trunk@2193 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:37:49 +00:00
kipp
48eb9c0084 Removed some includes
git-svn-id: svn://10.0.0.236/trunk@2192 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:37:25 +00:00
kipp
08c1e11e08 Removed an include
git-svn-id: svn://10.0.0.236/trunk@2191 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:37:15 +00:00
kipp
32b44a6565 Declare nsStylePosition
git-svn-id: svn://10.0.0.236/trunk@2190 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:37:04 +00:00
kipp
8e76027a72 Removed includes; updated GetVisibleArea API
git-svn-id: svn://10.0.0.236/trunk@2189 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:36:40 +00:00
kipp
d81b9d196e updated GetVisibleArea API
git-svn-id: svn://10.0.0.236/trunk@2188 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:36:27 +00:00
gagan
b64eb63d71 strlen to PL_strlen. Not in the build yet.
git-svn-id: svn://10.0.0.236/trunk@2187 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:34:22 +00:00
kipp
60a0ef89f7 Removed includes
git-svn-id: svn://10.0.0.236/trunk@2186 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:28:40 +00:00
kipp
acaaec9578 Only verify last is complete when enabled
git-svn-id: svn://10.0.0.236/trunk@2185 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:28:29 +00:00
kipp
e62719b058 Removed unneeded include
git-svn-id: svn://10.0.0.236/trunk@2184 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:28:02 +00:00
kipp
3cf90601b8 Repaired GetVisibleArea API
git-svn-id: svn://10.0.0.236/trunk@2183 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:27:48 +00:00
kipp
6a7bc663f3 new
git-svn-id: svn://10.0.0.236/trunk@2182 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:27:25 +00:00
jevering
7c150df597 Fixed about: URL's from crashing the viewer.
git-svn-id: svn://10.0.0.236/trunk@2181 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 18:10:08 +00:00
buster
483b518e3e added -r # for specifying a repeat count for batch mode
git-svn-id: svn://10.0.0.236/trunk@2179 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 17:34:58 +00:00
slamm
7a91059224 Fix crash on bringing up second NavCenter.
git-svn-id: svn://10.0.0.236/trunk@2176 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 17:15:03 +00:00
dcone
20016a960c Added the nsBlender classes to the project
git-svn-id: svn://10.0.0.236/trunk@2174 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 14:15:57 +00:00
hshaw
7b81da6fb3 Fix for SCO build. bitypes.h defines int32_t and was missing from stub files. Not a problem in real sun-java. Thanks briano@netscape.com
git-svn-id: svn://10.0.0.236/trunk@2173 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 09:31:16 +00:00
ramiro
0c2f6f30df Fix a dyslexic typo. Geez, how long was this here for ?
git-svn-id: svn://10.0.0.236/trunk@2172 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 06:52:57 +00:00
ramiro
350ecf8d15 Add initial support for layable children resource.
git-svn-id: svn://10.0.0.236/trunk@2171 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 06:50:41 +00:00
atotic
14133bdcd6 Commiting this from windows caused my special characters to disappear
git-svn-id: svn://10.0.0.236/trunk@2170 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 06:35:58 +00:00
atotic
8110e44179 Experimental Mac makefile
git-svn-id: svn://10.0.0.236/trunk@2169 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 05:57:00 +00:00
troy
14c16833da Changed reference to reflow command to a pointer to a reflow command
git-svn-id: svn://10.0.0.236/trunk@2168 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 04:56:27 +00:00
troy
ac413c29fa Changed splittable enum to be bit flags
git-svn-id: svn://10.0.0.236/trunk@2167 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 04:54:11 +00:00
pinkerton
ade769a9c5 commented out the annoying assert when max round was exceeded.
git-svn-id: svn://10.0.0.236/trunk@2166 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 04:22:04 +00:00
pinkerton
afe582b7b5 Landing of a bunch of appearance manager stuff. (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@2165 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 04:19:24 +00:00
troy
c7abe18deb Changed the nsBandTrapezoid::State enum values to conform to the coding
standard


git-svn-id: svn://10.0.0.236/trunk@2164 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 04:03:14 +00:00
troy
449871aa10 Added new Reflow() member function that will eventually supersede the two
existing reflow functions: ResizeReflow() and IncrementalReflow()


git-svn-id: svn://10.0.0.236/trunk@2162 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 03:52:51 +00:00
troy
06b63f6642 Some work in progress for incremental floaters
git-svn-id: svn://10.0.0.236/trunk@2161 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 02:38:41 +00:00
spider
bb47dc2302 Adding the beginnings of Colormap Installation
git-svn-id: svn://10.0.0.236/trunk@2160 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 01:58:31 +00:00
wtc
81cc85bf08 OSF1 V3.2 does not have <machines/builtins.h>, which declares the
atomic routines.  Thanks to Andrew Cassin <acassin@cs.mu.oz.au> for
this patch.


git-svn-id: svn://10.0.0.236/trunk@2157 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 00:59:33 +00:00
troy
6b6d4c22d4 Fixed some busted code of a bogus type cast
git-svn-id: svn://10.0.0.236/trunk@2154 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 00:45:34 +00:00
buster
9d29532002 made nsTableCaptionFrame a subclass of nsBodyFrame
git-svn-id: svn://10.0.0.236/trunk@2151 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-22 00:05:22 +00:00
shaver
6b008173d1 added missing lib
git-svn-id: svn://10.0.0.236/trunk@2150 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 23:53:00 +00:00
kostello
997174b4d5 * Added Support for cell spacing
* NOTE: due to changes in the style system -- things won't look correct right away.


git-svn-id: svn://10.0.0.236/trunk@2149 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 23:43:18 +00:00
buster
93d6e09272 added a "-f" debug option to read a file for URLs to load
added a "-d" debug option to set the delay between URL loads


git-svn-id: svn://10.0.0.236/trunk@2147 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 23:41:53 +00:00
mccabe
d90f218a88 Fix to (83996), global parseInt function fails for numbers > 2^31.
It now passes all of the tests in 15.1.2.2-1 (except that parseInt
still has the .length property, which is a different bug) - so I'll
close the bug.

Still possibly at issue is whether we conform to ECMA language about
decimal numbers that are too large to fit in a double.  I treat
decimal digits after the 20th as zero, but there could be some
floating-point rounding wackiness going on.  In particular - are we
doing the right thing for numbers that are powers of 2, but larger
than 2^54, that are representable in a double?


git-svn-id: svn://10.0.0.236/trunk@2143 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 23:15:24 +00:00
matt
559c72d11b ifdef include on prosdep. If should not be dependent. Was breaking js/src builds
git-svn-id: svn://10.0.0.236/trunk@2141 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 22:41:18 +00:00
rickg
7afaf5e301 temp. comment out call
git-svn-id: svn://10.0.0.236/trunk@2138 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 22:19:40 +00:00
montulli
73bf44f694 initial add of netsream.h , not yet in build
git-svn-id: svn://10.0.0.236/trunk@2134 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 22:03:55 +00:00
gagan
f8b1fc15d8 An excursion timing class.
git-svn-id: svn://10.0.0.236/trunk@2132 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 21:56:58 +00:00
rickg
f2f5d28308 incremental parsing; xml support; token handler dispatching; performance
git-svn-id: svn://10.0.0.236/trunk@2126 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 20:38:32 +00:00
rickg
3fac38b3d8 moved to new incremental API
git-svn-id: svn://10.0.0.236/trunk@2125 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 20:37:41 +00:00
rickg
7caed77d22 minor perf improvement to deque
git-svn-id: svn://10.0.0.236/trunk@2124 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 20:37:17 +00:00
guha
f3f598e3ce Add prototype, temporary bug fix added.
git-svn-id: svn://10.0.0.236/trunk@2122 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 19:23:44 +00:00
guha
9d3512090b Export NET_InitRDFCookieResources
git-svn-id: svn://10.0.0.236/trunk@2121 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 19:17:21 +00:00
guha
612bc28681 Add export (for Mac), fix XP_strcmp NOT_NULL bug.
git-svn-id: svn://10.0.0.236/trunk@2120 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 19:16:43 +00:00
guha
a66d4a6595 Cookie changes.
git-svn-id: svn://10.0.0.236/trunk@2119 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 19:08:38 +00:00
selmer
05259add9a Change over to http: w/IP for reggie connections
git-svn-id: svn://10.0.0.236/trunk@2115 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 18:18:55 +00:00
gagan
fd6863b577 Added nsCachePref for cache preferences. This will have the interface
for libpref or nsPref stuff. Added database support for dbm. General
progress. This is not in the main build as yet.


git-svn-id: svn://10.0.0.236/trunk@2113 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 18:04:34 +00:00
gagan
019a155771 Added nsCachePref for cache preferences. This will have the interface
for libpref or nsPref stuff. General progress. This is not in the main
build as yet.


git-svn-id: svn://10.0.0.236/trunk@2112 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 18:03:50 +00:00
guha
ab5cd02bee Fix Linux optimized build problem reported by
Hani Suleiman <hani@fate.demon.co.uk>

>Building an optimised build under Linux fails unless the FE_Trace() on
>line 143 is wrapped with #ifdef DEBUG


git-svn-id: svn://10.0.0.236/trunk@2110 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 17:34:57 +00:00
kipp
b7133a9963 disabled reflow-mapped-child for now
git-svn-id: svn://10.0.0.236/trunk@2109 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 16:29:20 +00:00
kipp
f80729a530 Not quite functional handling of line state during GetReflowMetrics
git-svn-id: svn://10.0.0.236/trunk@2108 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 16:12:31 +00:00
kipp
ba6ecd8a02 better handle reflow avoidance; factored align children slightly different so that more code is shared between ResizeReflow and IncrementalReflow; fixed more cases where reflow is required
git-svn-id: svn://10.0.0.236/trunk@2107 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 16:12:10 +00:00
kipp
af4fc73183 Added a few more fields to better handle reflow avoidance; factored align children slightly different so that more code is shared between ResizeReflow and IncrementalReflow
git-svn-id: svn://10.0.0.236/trunk@2106 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 16:11:29 +00:00
kipp
7e6b6eb56f Removed temporary content appended hack (it no longer works)
git-svn-id: svn://10.0.0.236/trunk@2105 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 16:10:35 +00:00
spider
d6f1c041a2 Some additional Rendering Implementations (Line/Rect/Arc)
Support for offscreen Pixmap's


git-svn-id: svn://10.0.0.236/trunk@2103 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 08:24:44 +00:00
toshok
fbb307b987 fix the bug where form reset with textarea's would segfault. just cut-n-pasted one line from the text input element's reset method.
git-svn-id: svn://10.0.0.236/trunk@2102 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 07:18:51 +00:00
briano
a329fa209e Added -D_PR_LOCAL_THREADS_ONLY so files outside nsprpub that include _scoos.h will compile.
git-svn-id: svn://10.0.0.236/trunk@2100 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 04:06:00 +00:00
scc
64bca9f3dc Report the project that actually stopped the build.
git-svn-id: svn://10.0.0.236/trunk@2094 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 02:41:11 +00:00
peterl
63031f554c new file
git-svn-id: svn://10.0.0.236/trunk@2091 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 02:34:45 +00:00
peterl
25861753fc Changed GetStyleData to use an enum instead of an nsID
git-svn-id: svn://10.0.0.236/trunk@2090 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 02:34:13 +00:00
rickg
835d063055 filled in the popback function
git-svn-id: svn://10.0.0.236/trunk@2089 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 02:27:34 +00:00
slamm
d65d3e6e3d Fix Mozilla bug #385. Global history file would not get recreated if it was deleted. Thanks to Ronan Waide <waider@cognotec.com> for reporting the problem and developing a patch.
git-svn-id: svn://10.0.0.236/trunk@2087 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 01:39:25 +00:00
rjc
e812d8fbf5 Bug fix: Make sure parent isn't NULL.
git-svn-id: svn://10.0.0.236/trunk@2084 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 01:06:51 +00:00
rjc
7953137eac GetSlotValue() now returns memory which caller must free (if its a string). Remove references to DEBUG_RDF_GetSlotValue_Memory_Needs_Freedom define.
git-svn-id: svn://10.0.0.236/trunk@2082 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 00:57:25 +00:00
spider
970e83bba8 Fixes for making nsAppTest use gfx basics
git-svn-id: svn://10.0.0.236/trunk@2079 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 00:37:02 +00:00
slamm
17f978fb8f Use the winning animation from the Mozilla Logo Contest. Congratulations go to Urs Streidl <urs@gigaperls.org>.
git-svn-id: svn://10.0.0.236/trunk@2072 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 23:33:44 +00:00
spider
ea4ca5d1b9 Add motif to DIRS, commented out for now
git-svn-id: svn://10.0.0.236/trunk@2071 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 23:20:32 +00:00
spider
0866ff0202 Adding NS_NATIVE_WIDGET to get the native widget associated with an nsIWidget.
Windows has a concept of a native window whilst unix has a native widget and
a native window.


git-svn-id: svn://10.0.0.236/trunk@2070 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 23:19:38 +00:00
kipp
a9dcc1b0ed Fixed bug in nsString::Cut code where the sizeof(chartype) was multipled a bit aggresively; I also tuned the routine somewhat as well
git-svn-id: svn://10.0.0.236/trunk@2069 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 23:18:25 +00:00
spider
e80bba2116 Motif Mods
git-svn-id: svn://10.0.0.236/trunk@2068 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 23:18:09 +00:00
spider
eed0288148 Xlib mods
git-svn-id: svn://10.0.0.236/trunk@2067 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 23:17:49 +00:00
scc
1794e6b4c9 Added StopForErrors() and DontStopForErrors(). The former is the default, though logging must be on to allow errors to be noticed.
git-svn-id: svn://10.0.0.236/trunk@2066 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 23:09:53 +00:00
jevering
e5cf6a5951 Broke release build. Fixed.
git-svn-id: svn://10.0.0.236/trunk@2065 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 23:08:12 +00:00
montulli
1ed5ce76dd initial add of cstream library, not yet in build
git-svn-id: svn://10.0.0.236/trunk@2063 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 22:36:31 +00:00
kmcclusk
c294a50d5f Removed windows directory from widget/tests
git-svn-id: svn://10.0.0.236/trunk@2061 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 22:07:17 +00:00
kmcclusk
df29b2b178 Created an AppShell to abstract the event loop. Re-organized widget tests
into scribble and widget subdirectories and separated cross-platform code from
platform specific code


git-svn-id: svn://10.0.0.236/trunk@2060 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 22:02:14 +00:00
kipp
e4dbeae2e8 Disable reflow optimizations for now
git-svn-id: svn://10.0.0.236/trunk@2057 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 21:51:51 +00:00
spider
3edc3aaa94 Add NS_UNIX if __unix is defined
git-svn-id: svn://10.0.0.236/trunk@2056 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 21:40:46 +00:00
troy
18c747aa19 Cleaned up performance
git-svn-id: svn://10.0.0.236/trunk@2055 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 21:40:00 +00:00
spider
46b5aeb9b8 update nsAppTest for unix to work
git-svn-id: svn://10.0.0.236/trunk@2054 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 21:29:18 +00:00
peterl
5a89c809b7 made it build on irix
git-svn-id: svn://10.0.0.236/trunk@2053 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 21:28:36 +00:00
dcone
76471f424e put in the inverse color table routine and did 8 bit alpha
git-svn-id: svn://10.0.0.236/trunk@2052 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 21:12:38 +00:00
spider
48f1bf43c5 Support for so's made of archives
git-svn-id: svn://10.0.0.236/trunk@2050 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 21:02:04 +00:00
spider
a92e35fbe7 Misc Unix stuff
git-svn-id: svn://10.0.0.236/trunk@2049 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 21:01:38 +00:00
peterl
5881217641 added load timing
git-svn-id: svn://10.0.0.236/trunk@2048 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 20:34:54 +00:00
peterl
5673af6984 added rule hash table to speed up style resolution
git-svn-id: svn://10.0.0.236/trunk@2047 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 20:34:17 +00:00
peterl
c31cedc223 collapse double empty contexts
git-svn-id: svn://10.0.0.236/trunk@2046 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 20:33:30 +00:00
peterl
c7440bcf59 added rule count accessor
git-svn-id: svn://10.0.0.236/trunk@2045 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 20:32:57 +00:00
peterl
9d9d3404d3 added enumerate methods
git-svn-id: svn://10.0.0.236/trunk@2044 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 20:31:58 +00:00
robinf
702d26cb8e fixinb header bug in AS help
git-svn-id: svn://10.0.0.236/trunk@2042 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 19:17:14 +00:00
robinf
656ec38f0e fixinb header bug
git-svn-id: svn://10.0.0.236/trunk@2041 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 19:10:12 +00:00
robinf
959244b105 fixinb bug in comment line
git-svn-id: svn://10.0.0.236/trunk@2038 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 19:02:32 +00:00
spider
83c4fc037c Some unix stuff
git-svn-id: svn://10.0.0.236/trunk@2035 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 17:59:52 +00:00
thom
c5eba1ff11 added project file for mac build
git-svn-id: svn://10.0.0.236/trunk@2033 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 17:30:15 +00:00
kipp
d7224c5e89 Added command line args for purify/quantify runs
git-svn-id: svn://10.0.0.236/trunk@2030 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:28:40 +00:00
kipp
87b65c0bca Added rule for MULTICOL
git-svn-id: svn://10.0.0.236/trunk@2029 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:28:19 +00:00
kipp
7517c6c495 Add in will/did reflow calls; add in tracing calls too
git-svn-id: svn://10.0.0.236/trunk@2028 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:28:05 +00:00
kipp
b1a4dc5a81 Use new tracing macros; add in ReflowMappedChild to avoid reflowing children
git-svn-id: svn://10.0.0.236/trunk@2027 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:27:46 +00:00
kipp
fcd752ba90 Use new tracing macros and verify-tree-enable
git-svn-id: svn://10.0.0.236/trunk@2026 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:27:22 +00:00
kipp
d7c6851d21 Added in mDeltaWidth to block reflow state
git-svn-id: svn://10.0.0.236/trunk@2025 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:26:46 +00:00
kipp
e91d496797 Fixed GetReflowMetrics to return something; use new tracing methods and verify-tree-enable; compute delta width for line layout logic
git-svn-id: svn://10.0.0.236/trunk@2024 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:26:34 +00:00
kipp
3f35550560 GetReflowMetrics now updates the reflow state
git-svn-id: svn://10.0.0.236/trunk@2023 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:25:40 +00:00
kipp
88d895e375 Added a minor optimization to avoid memcpy calls that aren't needed
git-svn-id: svn://10.0.0.236/trunk@2022 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:25:16 +00:00
kipp
7d6827867d Use new frame tracing macros
git-svn-id: svn://10.0.0.236/trunk@2021 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:24:54 +00:00
kipp
f074763ff0 Declare tracing macros that use nspr logging and tracing methods that support the macros
git-svn-id: svn://10.0.0.236/trunk@2020 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:24:36 +00:00
kipp
1811ed96e7 Implement new debugging hooks that use nspr logging; also implement tracing methods in nsFrame; use tracing in will/did-reflow hooks
git-svn-id: svn://10.0.0.236/trunk@2019 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:24:13 +00:00
kipp
289b959938 Added some trace messages; fixed bug in PaintChildren that was always painting all children instead of allowing the intersection with the dirty rect to avoid paints
git-svn-id: svn://10.0.0.236/trunk@2018 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:23:37 +00:00
kipp
be2e63322f Added more debugging hooks that use nspr logging
git-svn-id: svn://10.0.0.236/trunk@2017 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:22:15 +00:00
kipp
a84aba4939 Added empty constructor; removed instance count sillyness
git-svn-id: svn://10.0.0.236/trunk@2016 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 16:21:48 +00:00
scc
7b810c81dd First Checked In.
git-svn-id: svn://10.0.0.236/trunk@2015 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 08:12:13 +00:00
rjc
6a0f22ab75 Add support for "Refresh" command across data sources. Also, fix a couple more bugs in HT regarding node count (deletion didn't always update the count correctly.)
git-svn-id: svn://10.0.0.236/trunk@2013 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 06:35:51 +00:00
troy
a558a8350d Added more self-test code
git-svn-id: svn://10.0.0.236/trunk@2012 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 05:29:56 +00:00
troy
b702a4ba14 Implemented RemoveRegion()
git-svn-id: svn://10.0.0.236/trunk@2010 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 05:14:14 +00:00
pinkerton
1dd9e2519e provide a valid context to HT_Launch (appr/rev sdagley).
git-svn-id: svn://10.0.0.236/trunk@2009 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 04:29:48 +00:00
brade
579c9382d7 *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@2008 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 04:06:08 +00:00
rjc
bce056df6f Fix bug with tracking # of grandchildren nodes. (Discovered by pinkerton)
git-svn-id: svn://10.0.0.236/trunk@2007 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 03:43:43 +00:00
mccabe
f491c91092 Removed the escape and unescape functions, as they are now part of the
core engine.  (They've become part of the ECMA spec.)  Fix to (97681).


git-svn-id: svn://10.0.0.236/trunk@2006 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 03:25:41 +00:00
mccabe
f6b9e3b9f1 Removed the escape and unescape functions, as they are now part of the core engine. (They've become part of the ECMA spec.) Fix to (97681).
git-svn-id: svn://10.0.0.236/trunk@2005 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 03:23:07 +00:00
valeski
0d79805d7e fixing a purify UMR as reported by Kipp
git-svn-id: svn://10.0.0.236/trunk@2003 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 02:33:17 +00:00
blythe
ff93a49ca6 The preference DLLs contain COM objects. Their registry keys are set to
have relative paths.  This normally works fine, unless the current working
directory is other than that of the default program directory where the
pref DLLs are normally located.  This could happen by executing the
program from a different directory, or by saving a file to a directory
other than the default program directory.  In order to fix this, we need
to push to the program directory just prior to loading a preference
COM object, and then pop back.


git-svn-id: svn://10.0.0.236/trunk@2002 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 02:15:42 +00:00
rjc
21479d1671 Make Appletalk URLs (at:, afp:) more closely match URL format definition in CyberDog.
git-svn-id: svn://10.0.0.236/trunk@1999 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 01:13:24 +00:00
karnaze
d730d6f71d temp hack to test post submission
git-svn-id: svn://10.0.0.236/trunk@1990 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-20 00:10:42 +00:00
thom
38a3d3a5fc fixed compile errors for mac
git-svn-id: svn://10.0.0.236/trunk@1984 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 23:11:28 +00:00
troy
e456af6993 Changes for removing regions
git-svn-id: svn://10.0.0.236/trunk@1983 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 22:55:40 +00:00
michaelp
a1d8688193 removed rects from region apis. fleshed out windows region implementation.
git-svn-id: svn://10.0.0.236/trunk@1980 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 22:08:46 +00:00
guha
698734b1fa fix mac horkage
git-svn-id: svn://10.0.0.236/trunk@1979 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 22:07:35 +00:00
guha
c9b6a45791 more small fixes
git-svn-id: svn://10.0.0.236/trunk@1974 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 21:01:38 +00:00
rods
c491d51bea initial checkin
git-svn-id: svn://10.0.0.236/trunk@1973 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 20:39:31 +00:00
rods
bf9d48d947 removed xwin directory
git-svn-id: svn://10.0.0.236/trunk@1972 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 20:34:45 +00:00
sar
7493f80280 backing out the whitespace change and implementing a better fix for the line length problem - courtesy of Dan Veditz
git-svn-id: svn://10.0.0.236/trunk@1970 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 20:20:15 +00:00
sar
62142af8ac were up against a 4k POSIX inspired limit on command lines. I've removed white space to bring the command line under the limit. This is a temporary workaround and this needs to be repaired properly.
git-svn-id: svn://10.0.0.236/trunk@1967 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 19:59:38 +00:00
pinkerton
160a8e61dd add comment that this class is obsolete (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@1966 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 19:31:51 +00:00
pinkerton
8d35afb70d Beginnings of appearance manager support. Add AM classes to powerplant and make toolbars use either AM (through CAMSavvyBevelView) or old way if AM not present (for now, this may change). (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@1965 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 19:25:59 +00:00
pinkerton
ce8e90e141 use new HT_Launch api (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@1964 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 19:21:38 +00:00
pinkerton
6c9089dc62 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@1963 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 19:16:51 +00:00
jevering
1a4bf77fe2 Debug Robot work.
git-svn-id: svn://10.0.0.236/trunk@1962 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 19:06:59 +00:00
thom
0679c3495c added worksheet for checking out nglayout from archive
git-svn-id: svn://10.0.0.236/trunk@1961 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 18:41:40 +00:00
thom
10c14c948c files to help build the project
git-svn-id: svn://10.0.0.236/trunk@1960 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 18:37:15 +00:00
cyeh
c35d1d0ae5 update documentation to reflect mozilla as root of the source directory
git-svn-id: svn://10.0.0.236/trunk@1959 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 18:11:30 +00:00
karnaze
45388bf6ed better layout, sizing of select
git-svn-id: svn://10.0.0.236/trunk@1957 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 17:51:21 +00:00
pnunn
15db7e35fe Remove temporary fix to Makefile for alpha linux optimization build of jidctred.c in jpeg module.
-pnunn


git-svn-id: svn://10.0.0.236/trunk@1956 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 17:50:14 +00:00
cyeh
d385affc17 update documentation to reflect mozilla as root of the source diretory
git-svn-id: svn://10.0.0.236/trunk@1955 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 17:34:43 +00:00
brade
835770d74d remove file jdictred.c to fix Alpha Linux build [for pnunn]
git-svn-id: svn://10.0.0.236/trunk@1954 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 17:10:36 +00:00
pnunn
4a557ed622 jidctred.c isn't used and causes build errors on alpha linux. Removed.
git-svn-id: svn://10.0.0.236/trunk@1953 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 17:05:36 +00:00
pnunn
5d9a7159aa jidctred.c is not needed and causes build problems (optimization) on alpha linux.
git-svn-id: svn://10.0.0.236/trunk@1952 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 17:00:46 +00:00
pnunn
a9bcb781ad Take out scaling, for makefile fix for linux optimization build problems on jidctred.c.
git-svn-id: svn://10.0.0.236/trunk@1951 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 16:59:07 +00:00
vidur
138a395379 New files for XPCOM interface generation
git-svn-id: svn://10.0.0.236/trunk@1946 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 15:59:53 +00:00
troy
e7e5cf121d Work in progress on removing a region
git-svn-id: svn://10.0.0.236/trunk@1945 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 15:30:10 +00:00
cmanske
aeec6647c1 Trying to help out the build bustage
git-svn-id: svn://10.0.0.236/trunk@1936 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 06:31:08 +00:00
vidur
dd3b2d1dca Added Core IDL files
git-svn-id: svn://10.0.0.236/trunk@1928 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 05:25:17 +00:00
vidur
606efca8f6 Added XPCOM interface generation
git-svn-id: svn://10.0.0.236/trunk@1926 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 05:21:21 +00:00
davidm
fb3a49b0a8 Reverting out changes which should have landed on the branch
git-svn-id: svn://10.0.0.236/trunk@1923 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 04:06:40 +00:00
montulli
0170278262 fix commercial build
git-svn-id: svn://10.0.0.236/trunk@1913 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 03:37:48 +00:00
montulli
74188eedbb fix commercial build
git-svn-id: svn://10.0.0.236/trunk@1902 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 03:28:35 +00:00
montulli
0f73aed6b6 fix commercial build
git-svn-id: svn://10.0.0.236/trunk@1899 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 03:22:20 +00:00
troy
628ced511a Signed
git-svn-id: svn://10.0.0.236/trunk@1894 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 03:02:39 +00:00
troy
00dc35659a Initial check-in
git-svn-id: svn://10.0.0.236/trunk@1893 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 03:01:30 +00:00
troy
ed866399b2 Revamped space manager internals
git-svn-id: svn://10.0.0.236/trunk@1892 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 03:00:56 +00:00
rickg
0e475bb67c small improvement to deque-iterator interface
git-svn-id: svn://10.0.0.236/trunk@1889 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 01:51:24 +00:00
montulli
f86a872ab2 add pr includes for build
git-svn-id: svn://10.0.0.236/trunk@1887 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 01:46:14 +00:00
davidm
6245cefeb7 Updated from Nova branch to Normandy branch
git-svn-id: svn://10.0.0.236/trunk@1880 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 01:05:08 +00:00
scullin
3ef5c773eb Moving over from xp library to NSPR
git-svn-id: svn://10.0.0.236/trunk@1878 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 00:57:15 +00:00
scullin
f62d3cc534 Moving over from xp library to NSPR. Moved cvactive.h from include to
network/cnvts


git-svn-id: svn://10.0.0.236/trunk@1875 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 00:54:09 +00:00
scullin
debabe5641 Moved cvactive.h from include to network/cnvts
git-svn-id: svn://10.0.0.236/trunk@1872 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 00:38:16 +00:00
peterl
24cf967380 added pseudo-class rule matching
git-svn-id: svn://10.0.0.236/trunk@1870 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 00:09:29 +00:00
peterl
acfcdc2a6b added link state api
git-svn-id: svn://10.0.0.236/trunk@1869 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 00:08:57 +00:00
peterl
8e416a2afc added pseudo-class atoms
git-svn-id: svn://10.0.0.236/trunk@1868 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 00:08:16 +00:00
scullin
d714884f88 Moved cvactive.h from include to network/cnvts
git-svn-id: svn://10.0.0.236/trunk@1866 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 00:07:47 +00:00
kmcclusk
3383117044 Changed listbox to be a nonintegral height under Win32
git-svn-id: svn://10.0.0.236/trunk@1865 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 23:52:20 +00:00
scullin
a630772729 Moved cvactive.h from include to network/cnvts
git-svn-id: svn://10.0.0.236/trunk@1863 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 23:51:09 +00:00
thom
f0392ea33c mac build
git-svn-id: svn://10.0.0.236/trunk@1861 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 22:50:19 +00:00
thom
ddff04c33f Mac checkin
git-svn-id: svn://10.0.0.236/trunk@1860 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 22:47:24 +00:00
thom
dc472ffeb0 Commented out forward class declaration that was choking code warrior
git-svn-id: svn://10.0.0.236/trunk@1859 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 22:45:00 +00:00
thom
6800ec6d38 Mac checkin
git-svn-id: svn://10.0.0.236/trunk@1858 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 22:42:13 +00:00
michaelp
b8b80b4ecc added stub nsRegionWin.cpp
git-svn-id: svn://10.0.0.236/trunk@1857 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 22:24:20 +00:00
atotic
e98e711acf Added new access paths for planned will's netlib modularization checkin
git-svn-id: svn://10.0.0.236/trunk@1856 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 22:10:09 +00:00
toshok
57a8a16052 apparently digital unix's c compiler has a problem with the work 'readonly' (it appears to be a reserved word, as far as that compiler goes). So, I'm changing all occurences of the readonly form element attribute to read_only. Thanks to berkley@cs.wustl.edu (Berkley Shands) for the report and suggested fix.
git-svn-id: svn://10.0.0.236/trunk@1855 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:58:00 +00:00
michaelp
1fd6c53148 killed nsRegion.h. added nsIRegion.h. added SetClipRegion() to rendering context.
modified APIs that had been referring to nsRegion to use nsIRegion.


git-svn-id: svn://10.0.0.236/trunk@1852 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:46:20 +00:00
peterl
73c129482a more style debugging code
git-svn-id: svn://10.0.0.236/trunk@1850 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:12:19 +00:00
peterl
94da62428a added pseudo frame support
git-svn-id: svn://10.0.0.236/trunk@1849 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:11:08 +00:00
peterl
738c42eb75 cleaned up list output
git-svn-id: svn://10.0.0.236/trunk@1848 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:10:44 +00:00
peterl
296429509e pseudo frame support
git-svn-id: svn://10.0.0.236/trunk@1847 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:10:19 +00:00
peterl
f09aae3304 correct case of selectors
skip empty selectors
better pseudo-class support


git-svn-id: svn://10.0.0.236/trunk@1846 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:09:43 +00:00
peterl
9b35736a68 added pseudo element support
git-svn-id: svn://10.0.0.236/trunk@1845 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:07:54 +00:00
peterl
891a4eb5d1 fixed memory leak
fixed uninitialized memory read


git-svn-id: svn://10.0.0.236/trunk@1844 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:07:24 +00:00
peterl
021e20ff2c added pseudo style support
git-svn-id: svn://10.0.0.236/trunk@1843 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:06:33 +00:00
peterl
bae746d31c added pseudo style support
added debug list of context graph


git-svn-id: svn://10.0.0.236/trunk@1842 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:05:52 +00:00
peterl
98569af3d2 added debugging code
git-svn-id: svn://10.0.0.236/trunk@1841 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:04:26 +00:00
peterl
28f4537549 fixed memory leak
git-svn-id: svn://10.0.0.236/trunk@1840 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:03:55 +00:00
peterl
796739f0d7 added pseudo frame style support
git-svn-id: svn://10.0.0.236/trunk@1839 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:03:10 +00:00
peterl
80dd125ad5 added list method
git-svn-id: svn://10.0.0.236/trunk@1838 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 21:02:49 +00:00
nisheeth
7b46e0d71b val was not being initialized properly lo_LayoutBlockSpacer(). Fixed. Thanks
to Kathy Brade (brade@netscape.com) for catching this.


git-svn-id: svn://10.0.0.236/trunk@1835 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 20:44:34 +00:00
brade
796eba9e99 remove #ifdef XP_MAC and unify memory calls/API; reviewed sdagley; approved toshok
git-svn-id: svn://10.0.0.236/trunk@1834 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 20:42:39 +00:00
toshok
8e35d123f9 this change may look like a lot, but it's really only one line. the rest is formatting. at any rate, this fixes the problem where the underlines were drawn at places other than the proper place for links.
git-svn-id: svn://10.0.0.236/trunk@1833 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 20:42:30 +00:00
thom
e6c4ec060c *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@1828 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 19:47:30 +00:00
toshok
6a48818ffb Fix bugzilla entries 134 (javascript crashing setting text in textarea) and 346 (missing & in call to fe_convertToXmString) thanks to waider@waider.ie (Ronan Waide) for the fixes.
git-svn-id: svn://10.0.0.236/trunk@1824 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 18:28:55 +00:00
karnaze
7c7404988e fixed nsInputFile::SizeTo
git-svn-id: svn://10.0.0.236/trunk@1822 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 18:07:01 +00:00
kmcclusk
5106d81117 Added nsTooltipEvent to indicate the index of the tooltip rectangle that is being shown.
Now correctly initializes TOOLINFO structures before using them.


git-svn-id: svn://10.0.0.236/trunk@1819 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 17:55:34 +00:00
kipp
36585827fd Print out state when non-zero
git-svn-id: svn://10.0.0.236/trunk@1816 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 16:53:09 +00:00
kipp
3be7942344 Call WillReflow before reflowing children
git-svn-id: svn://10.0.0.236/trunk@1815 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 16:52:57 +00:00
kipp
8397a26e24 dump out state and next-in-flow/prev-in-flow conditionally
git-svn-id: svn://10.0.0.236/trunk@1814 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 16:52:41 +00:00
kipp
be2171d84f Implement DidReflow to pass it down to children when exiting reflow; dump out state and next-in-flow/prev-in-flow conditionally
git-svn-id: svn://10.0.0.236/trunk@1813 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 16:51:37 +00:00
kipp
09c14b650b Implement DidReflow to pass it down to children when exiting reflow
git-svn-id: svn://10.0.0.236/trunk@1812 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 16:51:17 +00:00
karnaze
c6f7ca1c13 initial support for <input type=file>, combo box use of widget init data for sizing
git-svn-id: svn://10.0.0.236/trunk@1811 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 16:39:42 +00:00
guha
c9368a0466 fix bug in xml glue reported by Henning Behme
of iX Magazine, Germany


git-svn-id: svn://10.0.0.236/trunk@1807 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-17 18:22:29 +00:00
brendan
844e2114c4 Modernize README
git-svn-id: svn://10.0.0.236/trunk@1796 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-16 00:55:35 +00:00
thom
de892d2fc0 mac project for layout
git-svn-id: svn://10.0.0.236/trunk@1784 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 22:24:27 +00:00
thom
884257d7fb mac project for htmlparser
git-svn-id: svn://10.0.0.236/trunk@1783 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 22:23:34 +00:00
thom
749a2f608a *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@1782 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 22:22:34 +00:00
thom
d94aa1f263 gfx is a graphics envionment for nglayout
git-svn-id: svn://10.0.0.236/trunk@1781 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 22:11:03 +00:00
briano
1319f7d9f3 Forgot to make sure the optimization tweak only happens when BUILD_OPT is set. Duh.
git-svn-id: svn://10.0.0.236/trunk@1763 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 19:02:42 +00:00
spence
9433ad818b ifdef bustage
git-svn-id: svn://10.0.0.236/trunk@1760 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 18:54:35 +00:00
briano
82febb3994 Minor tweak for Alpha Linux. On my machine (DECStation 200, 64MB, RH5,
2.0.30), using -O2 (the default) causes the optimizer to dump core,
leaving gcc hanging.  Using -O instead, for just jidctred.c, works fine.
This is hopefully a temporary hack.  Anyone have any long-term solutions?
Approved by pnunn@netscape.com.


git-svn-id: svn://10.0.0.236/trunk@1759 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 18:50:35 +00:00
dario
ae00c83c64 final checkin from Judah
git-svn-id: svn://10.0.0.236/trunk@1758 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 18:49:17 +00:00
jevering
03e1d6d1b3 Dont crash (at least in debug mode) when a stream cannot be opened.
git-svn-id: svn://10.0.0.236/trunk@1756 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 18:16:39 +00:00
rods
b8e2e3379e initial
git-svn-id: svn://10.0.0.236/trunk@1753 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 17:43:42 +00:00
briano
abadd4350e 'Fixed' the warning about the supposed trigraph. a=djw
git-svn-id: svn://10.0.0.236/trunk@1751 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 17:16:49 +00:00
atotic
ccf76ff3ee Removed NSstring.* because of conflicts with raptor, renamed to macstrdlibxetras
git-svn-id: svn://10.0.0.236/trunk@1750 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 16:59:14 +00:00
atotic
1b116c75fd Renamed nsstring.[c|h] to macstdlibextras.[c|h] because of the naming conflict with Raptor (which uses ns prefix exclusively).
git-svn-id: svn://10.0.0.236/trunk@1749 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 16:54:09 +00:00
atotic
6e725d53b2 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@1748 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 16:52:14 +00:00
ramiro
1978d2055d Add support for dropping to toolbox tabs.
git-svn-id: svn://10.0.0.236/trunk@1741 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 14:32:43 +00:00
ramiro
9bc24c9ded Add XfeTabDrawRaised().
git-svn-id: svn://10.0.0.236/trunk@1740 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 14:14:17 +00:00
ramiro
c19d523901 Add XfeToolBarGetFirstItem().
git-svn-id: svn://10.0.0.236/trunk@1739 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 13:30:24 +00:00
ramiro
b7a22d4046 Use a define instead of a hard coded '-1' constant.
git-svn-id: svn://10.0.0.236/trunk@1738 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 11:37:38 +00:00
ramiro
a548db7541 Remove dead code.
git-svn-id: svn://10.0.0.236/trunk@1737 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 11:32:28 +00:00
ramiro
d793c376eb Add icon to indicator if needed.
git-svn-id: svn://10.0.0.236/trunk@1736 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 11:23:24 +00:00
ramiro
9612894836 Add a check for a NULL str before passing it to strcmp().
Otherwise, Linux and possibly other platforms with strict strcmp()
implementations will crash when the plugin list is NULL.  Thanks to
pollmann@netscape.com.


git-svn-id: svn://10.0.0.236/trunk@1735 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 11:21:09 +00:00
ramiro
6c9a7381bc Take out row column assertion. Any manager can be a parent of this widget.
Thanks to Dirk Laessig <d.laessig@tu-bs.de>


git-svn-id: svn://10.0.0.236/trunk@1733 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 10:01:57 +00:00
ramiro
4b689e87cd Dont move dead widgets.
Thanks to Dirk Laessig <d.laessig@tu-bs.de>


git-svn-id: svn://10.0.0.236/trunk@1732 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 10:01:54 +00:00
rpotts
fff42d31c8 Added status arguments to OnStopBinding(...)
git-svn-id: svn://10.0.0.236/trunk@1731 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:46:51 +00:00
rpotts
a8ce21f5fc Fixed IRIX build bustage... Added status arguments to OnStopBinding(...)
git-svn-id: svn://10.0.0.236/trunk@1730 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:46:42 +00:00
rpotts
943c179e9a Fixed OnStopBinding(...) to take status arguments...
git-svn-id: svn://10.0.0.236/trunk@1729 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:42:07 +00:00
rpotts
b0007ddd7f Added exports for nsIBaseStream.h and nsIOutputStream.h
git-svn-id: svn://10.0.0.236/trunk@1728 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:41:21 +00:00
rpotts
51c1ae6c3f Changed to use the nsIBaseStream as a base class...
git-svn-id: svn://10.0.0.236/trunk@1727 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:40:43 +00:00
rpotts
5341d8930c Interface for Output Streams...
git-svn-id: svn://10.0.0.236/trunk@1726 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:40:02 +00:00
rpotts
68365a9056 New interface that all stream interfaces can derive from...
git-svn-id: svn://10.0.0.236/trunk@1725 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:39:37 +00:00
rpotts
32c056bbbd fix for the IRIX build...
git-svn-id: svn://10.0.0.236/trunk@1713 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 08:51:48 +00:00
spence
aa327e5e21 correctly set position for shack elements
git-svn-id: svn://10.0.0.236/trunk@1705 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 01:15:01 +00:00
spence
8d91fa7351 improve shack widget mgmt
git-svn-id: svn://10.0.0.236/trunk@1702 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 00:13:57 +00:00
spence
bf8dba93ab xfe shack changes
git-svn-id: svn://10.0.0.236/trunk@1696 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 23:43:26 +00:00
selmer
5864826a77 Fixed up comments in QuitNavigator re: 112622
git-svn-id: svn://10.0.0.236/trunk@1695 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 23:40:45 +00:00
selmer
349958722e Bug #112622 - change our quit to not broadcast, it was tripping up a java window
git-svn-id: svn://10.0.0.236/trunk@1693 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 23:37:57 +00:00
spider
3a7a283400 Fixes for toplevel shared support
git-svn-id: svn://10.0.0.236/trunk@1687 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 22:53:21 +00:00
spider
6ba088ac61 Allow shared objects to be built of archives on Unix
git-svn-id: svn://10.0.0.236/trunk@1685 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 22:38:21 +00:00
rickg
4e262a1fe0 WIP for push based tokenization
git-svn-id: svn://10.0.0.236/trunk@1683 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 22:19:08 +00:00
rickg
affe63fab7 minor performance tweak for deque
git-svn-id: svn://10.0.0.236/trunk@1682 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 22:18:44 +00:00
jevering
eab4da2c10 Adding visual mode.
git-svn-id: svn://10.0.0.236/trunk@1680 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 22:16:51 +00:00
jevering
e46e399e41 Beginning to add visual mode.
git-svn-id: svn://10.0.0.236/trunk@1679 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 22:16:36 +00:00
dcone
2817e8b60f More composition code, much faster now
git-svn-id: svn://10.0.0.236/trunk@1676 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 21:49:58 +00:00
jevering
18844ec299 Fixed robot walking somewhat.. needs more cleaning.
git-svn-id: svn://10.0.0.236/trunk@1675 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 21:47:33 +00:00
kmcclusk
0e678cc344 Added widget specific init structs
git-svn-id: svn://10.0.0.236/trunk@1671 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 21:34:08 +00:00
spider
64afacb3f9 Allow shared libraries to be created from multiple archives
git-svn-id: svn://10.0.0.236/trunk@1670 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 21:28:02 +00:00
spider
bc5ea70e80 Allow shared libraries to be created based on several archive libraries
git-svn-id: svn://10.0.0.236/trunk@1668 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 21:27:16 +00:00
slamm
08792f1237 Make page proxy hot spot fit the icon.
git-svn-id: svn://10.0.0.236/trunk@1663 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 20:32:03 +00:00
jevering
99360cdcf8 Hooked up debugging robot to viewer shell
git-svn-id: svn://10.0.0.236/trunk@1629 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 18:25:17 +00:00
wtc
3e14d3e49b Merged NSPRPUB_19980508_BRANCH to the main trunk. The 19980508
branch is a temporary branch for us to copy the latest changes
from our internal development tree to the public mozilla tree.


git-svn-id: svn://10.0.0.236/trunk@1624 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 18:09:56 +00:00
jevering
2ac90f63b7 Moved to .\test
git-svn-id: svn://10.0.0.236/trunk@1619 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 17:42:08 +00:00
wtc
0e5fd8fabf In Rhapsody 5.1 (DR2), the C++ compiler is named c++.
git-svn-id: svn://10.0.0.236/trunk@1608 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 17:01:14 +00:00
ramiro
1ceea7a990 TASKBAR define should be MOZ_TASKBAR.
git-svn-id: svn://10.0.0.236/trunk@1602 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 09:18:26 +00:00
kipp
da654e994c nuked
git-svn-id: svn://10.0.0.236/trunk@1600 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 02:46:28 +00:00
spider
71a19f5b61 Fixes for Unix widget so loading
git-svn-id: svn://10.0.0.236/trunk@1597 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 01:48:54 +00:00
spider
8fc73d2700 Fixes to remove ARCHIVE_ONLY and use MKSHLIB
git-svn-id: svn://10.0.0.236/trunk@1596 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 01:44:50 +00:00
jevering
b0cd070d09 used to be the RobotMain but now is the function DebugRobot to be
added to the viewer.


git-svn-id: svn://10.0.0.236/trunk@1592 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 01:08:06 +00:00
jevering
4e7c880297 Pulled the DebugRobot out into separate DLL
Moved the test code in the robot/test directory.


git-svn-id: svn://10.0.0.236/trunk@1591 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 01:05:56 +00:00
spider
936f05f547 Removing Init where passing nsIShellInstance
git-svn-id: svn://10.0.0.236/trunk@1589 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 01:02:14 +00:00
kipp
368de8a159 Fixed up code that wasn't using the nsReflowStatus constants defined in nsIFrame.h
git-svn-id: svn://10.0.0.236/trunk@1588 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 00:49:46 +00:00
kipp
4ba0b9750b Removed some useless code
git-svn-id: svn://10.0.0.236/trunk@1587 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 00:49:11 +00:00
kipp
2a9df998b9 Implement new frame methods and store the current state
git-svn-id: svn://10.0.0.236/trunk@1586 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 00:47:32 +00:00
kipp
5076956d30 Flipped state value of NS_FRAME_COMPLETE with NS_FRAME_NOT_COMPLETE; added new methods WillReflow and DidReflow as well as GetFrameState and SetFrameState
git-svn-id: svn://10.0.0.236/trunk@1585 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 00:47:05 +00:00
spider
5dd62eb2be Unix fixes
git-svn-id: svn://10.0.0.236/trunk@1584 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 00:39:59 +00:00
spider
c5149eee02 Fixes to get UNIX working
git-svn-id: svn://10.0.0.236/trunk@1583 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 00:38:37 +00:00
michaelp
5096e309be added gamma correction of images.
git-svn-id: svn://10.0.0.236/trunk@1582 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 00:27:38 +00:00
rjc
a640989090 HT_Launch() changes.
git-svn-id: svn://10.0.0.236/trunk@1578 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 00:01:43 +00:00
robinf
89fbfc375e replacing corrupted images
git-svn-id: svn://10.0.0.236/trunk@1577 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-14 00:00:17 +00:00
robinf
6285fa084e fixing text so that it tells user how to start AS right away frfom this screen.
git-svn-id: svn://10.0.0.236/trunk@1576 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 23:59:16 +00:00
peterl
b07a7ad406 added HTML CSS style sheet (for STYLE= attributes)
git-svn-id: svn://10.0.0.236/trunk@1575 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 23:43:44 +00:00
peterl
cee84ada85 added style atom
git-svn-id: svn://10.0.0.236/trunk@1574 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 23:42:40 +00:00
peterl
54b5bf170e added HTML CSS style sheet
git-svn-id: svn://10.0.0.236/trunk@1573 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 23:42:18 +00:00
peterl
27702b7e88 renamed getSupportsValue to getISupportsValue
git-svn-id: svn://10.0.0.236/trunk@1572 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 23:42:01 +00:00
mccabe
b8c778ab5e ECMA fix to (117144).
Array.prototype.sort(comparefn) was casting the result of the compare
to an int, which lost when the compare function returned (ecma-valid)
strange double values.  These now get clamped to -1, 0, 1.


git-svn-id: svn://10.0.0.236/trunk@1570 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 23:29:52 +00:00
peterl
9194035028 attribute fix for kostello
git-svn-id: svn://10.0.0.236/trunk@1568 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:41:15 +00:00
peterl
d6449ed8e9 fixed bug in parse declaration block, we now discard empty declarations
tweaked position


git-svn-id: svn://10.0.0.236/trunk@1567 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:40:54 +00:00
peterl
ae5af73b56 fixed position
git-svn-id: svn://10.0.0.236/trunk@1566 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:40:17 +00:00
peterl
4b50ddb390 remove spacing cache invalidate
git-svn-id: svn://10.0.0.236/trunk@1565 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:39:41 +00:00
peterl
6ed543f432 connected spacing calculations to frame
git-svn-id: svn://10.0.0.236/trunk@1564 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:38:54 +00:00
peterl
8a4b477f37 fixed style position values
git-svn-id: svn://10.0.0.236/trunk@1563 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:38:37 +00:00
peterl
47b492ce9f added style size calculation methods
made get style data const


git-svn-id: svn://10.0.0.236/trunk@1562 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:38:09 +00:00
peterl
cdcb865f7e removed cache invalidation methods
git-svn-id: svn://10.0.0.236/trunk@1561 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:35:30 +00:00
spence
264a526b7a fix ifdef bustage
git-svn-id: svn://10.0.0.236/trunk@1559 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:35:20 +00:00
mccabe
a603cb7869 Warning fix - added an (int16) cast to quiet a Windows warning.
git-svn-id: svn://10.0.0.236/trunk@1555 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 22:13:30 +00:00
donm
aeaccc2e80 fixed unix build bustage. LO_BUILTIN requires #define SHACK and lo_ele.h
git-svn-id: svn://10.0.0.236/trunk@1554 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 21:59:20 +00:00
jevering
76d0c4b9da Fixed compilation error by adding appropriate new nsIHTMLContentSink
members to the RobotSink class.


git-svn-id: svn://10.0.0.236/trunk@1551 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 21:45:24 +00:00
gagan
0c234e4c55 progress...
git-svn-id: svn://10.0.0.236/trunk@1550 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 21:38:42 +00:00
pinkerton
5e9b3cc7e3 Removed mention of central personal toolbar manager since each toolbar now talks to HT. (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@1548 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 21:25:39 +00:00
pinkerton
500e90b4e5 removed CPersonalToolbarTable.cp which is no longer needed (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@1547 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 21:25:12 +00:00
pinkerton
00123bba4f rewrite of personal toolbar not to use centralized manager class and talk directly to HT like the selector pane (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@1546 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 21:24:48 +00:00
pinkerton
a17a03f9d8 Fix crash during "view source" where we were double-deleting the urlStruct. (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@1545 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 21:22:56 +00:00
djw
e836bb2f3b Added -gtszapsymbol and -gtsnozapsymbol for manually overriding the
implicit rules. See gtscc -help.


git-svn-id: svn://10.0.0.236/trunk@1538 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 20:49:10 +00:00
sar
340141d12c add util to the include path
git-svn-id: svn://10.0.0.236/trunk@1535 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 20:33:32 +00:00
sar
52755a9a58 adding network to the include paths
git-svn-id: svn://10.0.0.236/trunk@1534 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 20:29:38 +00:00
sar
233a15e916 add softupdt to list of includes
git-svn-id: svn://10.0.0.236/trunk@1530 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 19:39:53 +00:00
peterl
3bf3d61497 fixed pow problem
git-svn-id: svn://10.0.0.236/trunk@1527 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 19:01:55 +00:00
michaelp
a4c9a27432 fixed compiler overload warning on tinderbox.
git-svn-id: svn://10.0.0.236/trunk@1525 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 18:54:18 +00:00
valeski
10660f6423 added cookie filter pref name to the default list
git-svn-id: svn://10.0.0.236/trunk@1524 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 18:40:30 +00:00
sar
00b03cbd6c add mktrace.h to the export lists. It's required by softupdt
git-svn-id: svn://10.0.0.236/trunk@1523 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 18:39:52 +00:00
michaelp
7225f63069 added gamma correction methods to the device context. the windows rendering context now
gamma corrects colors. fixed tablecellframe to call the right nsStyleCoord constructor.


git-svn-id: svn://10.0.0.236/trunk@1521 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 18:15:06 +00:00
jevering
15426a4ead Fixed build problems.
git-svn-id: svn://10.0.0.236/trunk@1519 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 17:55:04 +00:00
sar
58e8c8d316 adding jtools to the include path
git-svn-id: svn://10.0.0.236/trunk@1518 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 17:53:28 +00:00
karnaze
bf8234dd48 more select/option support
git-svn-id: svn://10.0.0.236/trunk@1517 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 17:43:35 +00:00
sar
be8a870be8 add jtools to the include paths
git-svn-id: svn://10.0.0.236/trunk@1516 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 17:33:42 +00:00
troy
7e662b38e2 Changes to space manager implementation.
git-svn-id: svn://10.0.0.236/trunk@1514 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 16:22:44 +00:00
dcone
420248debb speed up of alpha, some small fixes, inter checkin
git-svn-id: svn://10.0.0.236/trunk@1513 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 14:28:16 +00:00
mcafee
a4465638db Using relative paths for compilers & libtool
git-svn-id: svn://10.0.0.236/trunk@1512 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 07:59:54 +00:00
mcafee
3487e45d9d DR2 moved the compilers
git-svn-id: svn://10.0.0.236/trunk@1511 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 06:40:49 +00:00
sar
dcdbb6ae26 add mkutils.h since it wasn't being exported, and it's needed. Also make a formatting change for EXPORTS for readability
git-svn-id: svn://10.0.0.236/trunk@1510 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 05:48:50 +00:00
mcafee
13838a678d Adding support for NEXTSTEP. Fixing broken/missing getcwd() command, falls back to getwd(). a=briano
git-svn-id: svn://10.0.0.236/trunk@1509 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 04:02:37 +00:00
mcafee
25f8e0035c getcwd() doesn't malloc properly, falling back to getwd().
git-svn-id: svn://10.0.0.236/trunk@1508 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 04:00:15 +00:00
mcafee
6eda67228d Attempt to piggy-back build off of the RHAPSODY ifdef. switching to libtool. a=briano
git-svn-id: svn://10.0.0.236/trunk@1507 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 03:58:14 +00:00
michaelp
1f91c084c2 killed temp printf()s.
git-svn-id: svn://10.0.0.236/trunk@1506 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 03:40:01 +00:00
michaelp
808a040fee made form elements scroll smoothly. added apis to widgets to support this.
git-svn-id: svn://10.0.0.236/trunk@1505 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 03:39:08 +00:00
spider
dad0f00a2a Fixes for Private Modules Headers. Allow 'this' modules private headers
to be included on source PATH


git-svn-id: svn://10.0.0.236/trunk@1504 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 00:44:47 +00:00
kipp
e7b5397b7e Fixed coord to be setup properly
git-svn-id: svn://10.0.0.236/trunk@1503 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 00:33:34 +00:00
kipp
c10b69d3ba Fixed ptr compilation bug
git-svn-id: svn://10.0.0.236/trunk@1502 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 00:13:09 +00:00
kipp
40fbd986a8 Removed unused variable
git-svn-id: svn://10.0.0.236/trunk@1501 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 00:12:54 +00:00
kipp
dc0ac433ad Removed unused variable; fixed assingment into error return status
git-svn-id: svn://10.0.0.236/trunk@1500 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 00:12:40 +00:00
kipp
a6a43e031e Cast lineReflowStatus before comparing for negative values!; eliminated unused variables
git-svn-id: svn://10.0.0.236/trunk@1499 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 00:11:51 +00:00
kipp
7f9fab77fd Eliminate anonymous struct (and useless bitfields) to fix irix compilation problem
git-svn-id: svn://10.0.0.236/trunk@1498 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 00:10:35 +00:00
kipp
e695e3478d Export nsIFrameImageLoader too
git-svn-id: svn://10.0.0.236/trunk@1497 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 00:10:06 +00:00
kipp
77740b1433 Fixed vertical alignment bug: lines that contained bottom aligned objects would add in too much height
git-svn-id: svn://10.0.0.236/trunk@1496 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:53:37 +00:00
kipp
4a26cb720b Removed dead code
git-svn-id: svn://10.0.0.236/trunk@1495 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:52:45 +00:00
kipp
5335baf069 Use code in nsHTMLImageLoader to share code and fix image bugs in image buttons; removed some tabs in the source; get image border handled right
git-svn-id: svn://10.0.0.236/trunk@1494 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:52:33 +00:00
kipp
c8feee6b6b Removed special code for mWidth/mHeight handling
git-svn-id: svn://10.0.0.236/trunk@1493 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:51:46 +00:00
kipp
8098bd43a8 Removed mWidth and mHeight; use base class handling of that now
git-svn-id: svn://10.0.0.236/trunk@1492 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:51:30 +00:00
kipp
df00cff097 Removed IMG rule
git-svn-id: svn://10.0.0.236/trunk@1491 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:51:09 +00:00
kipp
8b2fdfef7c Make image borders work when html attribute is defined
git-svn-id: svn://10.0.0.236/trunk@1490 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:50:54 +00:00
kipp
62a3217422 Use nsHTMLImageLoader to share code
git-svn-id: svn://10.0.0.236/trunk@1489 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:50:28 +00:00
kipp
6e90ba8b92 Moved margin code into line layout
git-svn-id: svn://10.0.0.236/trunk@1488 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:49:40 +00:00
kipp
49beda22be Removed left/right margin calc as caller is doing it
git-svn-id: svn://10.0.0.236/trunk@1487 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:48:37 +00:00
kipp
501a8c4114 new
git-svn-id: svn://10.0.0.236/trunk@1486 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:48:11 +00:00
kipp
9f0294cdd7 Added methods to invalidate the caches
git-svn-id: svn://10.0.0.236/trunk@1485 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:47:50 +00:00
scullin
b2f44a3b36 Release mode fix.
git-svn-id: svn://10.0.0.236/trunk@1484 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:32:59 +00:00
spence
eec4cff8d3 shack layout element
git-svn-id: svn://10.0.0.236/trunk@1483 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:22:14 +00:00
spider
095c6349c5 fixes for archive rules
git-svn-id: svn://10.0.0.236/trunk@1482 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:15:00 +00:00
spence
6cd3efd65e handle relayout of shack elements
git-svn-id: svn://10.0.0.236/trunk@1481 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:04:58 +00:00
troy
43a82bdef4 Space manager API change
git-svn-id: svn://10.0.0.236/trunk@1480 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:02:47 +00:00
troy
eb154aa999 Changed API
git-svn-id: svn://10.0.0.236/trunk@1479 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:02:14 +00:00
troy
5d0ec492ca Added new member functions
git-svn-id: svn://10.0.0.236/trunk@1478 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:02:02 +00:00
peterl
1fe962d622 sync to nsStyleSpacing api changes
git-svn-id: svn://10.0.0.236/trunk@1477 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:58:14 +00:00
peterl
ecfff23b8f added proper support for border padding & margin
better support for clip


git-svn-id: svn://10.0.0.236/trunk@1476 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:57:52 +00:00
donm
1bcbbcd707 Export mkutils.h and cache header files.
git-svn-id: svn://10.0.0.236/trunk@1475 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:57:27 +00:00
peterl
59ffeb9079 added clip inherit support
added line-height number support


git-svn-id: svn://10.0.0.236/trunk@1474 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:56:18 +00:00
peterl
f9ecfae273 sync to new spacing apis
git-svn-id: svn://10.0.0.236/trunk@1471 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:28:01 +00:00
peterl
e6ff058617 fixed clip rect handling (auto side support)
git-svn-id: svn://10.0.0.236/trunk@1470 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:26:59 +00:00
peterl
00c2c6f37f added table enums
added clip flags


git-svn-id: svn://10.0.0.236/trunk@1469 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:25:31 +00:00
peterl
93da6a385a added factor unit
added nsStyleSides


git-svn-id: svn://10.0.0.236/trunk@1468 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:24:12 +00:00
peterl
01cc78cc80 merged nsStyleBorder & nsStyleSpacing
changed spacing data to use nsStyleSides
removed virtual methods
added nsStyleTable


git-svn-id: svn://10.0.0.236/trunk@1467 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:23:13 +00:00
peterl
e5373a0d6f Merged nsStyleBorder & nsStyleSpacing
changed spacing values o use nsStyleSides
removed virtual methods


git-svn-id: svn://10.0.0.236/trunk@1466 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:21:03 +00:00
peterl
b7d34bef34 added factor unit type
added nsStyleSides


git-svn-id: svn://10.0.0.236/trunk@1465 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:18:42 +00:00
spence
758cb4eb72 shack elements are tabable
git-svn-id: svn://10.0.0.236/trunk@1464 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 21:57:20 +00:00
spence
0e49124d3b pick up src param for shack elements
git-svn-id: svn://10.0.0.236/trunk@1460 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 21:19:19 +00:00
spence
c5a52db205 doc info relfects shack elements
git-svn-id: svn://10.0.0.236/trunk@1459 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 21:18:46 +00:00
dario
14344a215e idl compiler
git-svn-id: svn://10.0.0.236/trunk@1458 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 20:30:45 +00:00
robinf
9a69c9479f replacing corrupted file; adding plaecholder image for netcenter xscreen
git-svn-id: svn://10.0.0.236/trunk@1457 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 19:38:47 +00:00
gagan
c4789590cd Fixes the Linux build problems. Thanks Ramiro.
git-svn-id: svn://10.0.0.236/trunk@1456 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 19:21:59 +00:00
spence
056043dc1b changes for shack layout element
git-svn-id: svn://10.0.0.236/trunk@1455 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 19:16:46 +00:00
spence
f7128b6ef7 changes for shack layout element
git-svn-id: svn://10.0.0.236/trunk@1454 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 19:10:35 +00:00
spence
b4790ac48d changes for shack layout element
git-svn-id: svn://10.0.0.236/trunk@1453 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 19:03:13 +00:00
spence
0c7af8c730 changes for shack layout element
git-svn-id: svn://10.0.0.236/trunk@1452 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 18:55:51 +00:00
spence
ef8e866fbf changes for shack layout element
git-svn-id: svn://10.0.0.236/trunk@1451 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 18:42:16 +00:00
spence
0b01b981e2 changes for shack layout element
git-svn-id: svn://10.0.0.236/trunk@1450 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 18:33:45 +00:00
karnaze
db91979176 textarea sizing improvement; use nsCSSLayout::GetStyleSize; fix combo box SizeTo
git-svn-id: svn://10.0.0.236/trunk@1449 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 18:28:58 +00:00
spence
5a9fb075fa changes for shack layout element
git-svn-id: svn://10.0.0.236/trunk@1448 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 18:25:24 +00:00
spence
718cd7523e new shack layout element
git-svn-id: svn://10.0.0.236/trunk@1447 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 18:22:49 +00:00
cyeh
654f82a5f5 add mozilla/lib/libnet back to MozillaSourceCommon for NORMANDY_BRANCH
git-svn-id: svn://10.0.0.236/trunk@1446 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 18:03:37 +00:00
cyeh
d86f4cda50 removing old netlib implementation from tip. these files have been moved
to mozilla/network.  refer to those files.


git-svn-id: svn://10.0.0.236/trunk@1445 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 18:03:30 +00:00
brade
9991020037 don't allow image tags to be created without an image source
git-svn-id: svn://10.0.0.236/trunk@1444 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 17:12:02 +00:00
troy
009e2343c6 Removed some temporary code that isn't needed now that content changed
reflow commands aren't generated for the body


git-svn-id: svn://10.0.0.236/trunk@1443 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 04:46:27 +00:00
troy
a1cde81868 Changed enum to conform with coding standards
git-svn-id: svn://10.0.0.236/trunk@1442 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 04:38:23 +00:00
troy
5a839584c7 Change to nsIFrame API
git-svn-id: svn://10.0.0.236/trunk@1441 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 04:17:56 +00:00
montulli
3d17637b71 add <signal.h>
git-svn-id: svn://10.0.0.236/trunk@1440 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 02:28:20 +00:00
selmer
68b64888ae fix bug#116315: don't pass null char into JRI_NewPlatformString
git-svn-id: svn://10.0.0.236/trunk@1439 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 02:03:33 +00:00
kipp
f810b7168d Release image loader during delete frame to break so that images shutdown properly
git-svn-id: svn://10.0.0.236/trunk@1438 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:32:30 +00:00
kipp
7653fb2f79 Added container methods for the singly contained frame
git-svn-id: svn://10.0.0.236/trunk@1437 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:31:22 +00:00
kipp
aeca5d3fb6 Init band data so that zero is returned on failure
git-svn-id: svn://10.0.0.236/trunk@1436 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:30:57 +00:00
kipp
cf3c34edc3 Re-installed the temporary content appended hack
git-svn-id: svn://10.0.0.236/trunk@1435 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:30:40 +00:00
kipp
9da44d2113 Pass on stop image load to the image loader too so that circular references can be broken and memory can get released properly
git-svn-id: svn://10.0.0.236/trunk@1434 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:30:15 +00:00
kipp
d32ff2fb28 Removed unused variables and methods
git-svn-id: svn://10.0.0.236/trunk@1433 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:29:43 +00:00
kipp
41b2b93fa7 Implement stop and abort; stop properly breaks circular link to image request
git-svn-id: svn://10.0.0.236/trunk@1432 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:29:29 +00:00
kipp
6bb8246384 Declare stop and abort methods
git-svn-id: svn://10.0.0.236/trunk@1431 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:28:51 +00:00
kipp
f94faae66b Added stop and abort methods
git-svn-id: svn://10.0.0.236/trunk@1430 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:28:31 +00:00
rickg
e8f3b719cd made comments more complete
git-svn-id: svn://10.0.0.236/trunk@1429 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:11:50 +00:00
rickg
c9a40cc270 updated comments
git-svn-id: svn://10.0.0.236/trunk@1428 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 00:59:32 +00:00
montulli
d18d2837c3 add <signal.h>
git-svn-id: svn://10.0.0.236/trunk@1427 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 00:42:47 +00:00
kipp
f1960f5125 Make url's absolute per the css spec
git-svn-id: svn://10.0.0.236/trunk@1426 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 23:28:47 +00:00
kipp
34091b102f Skip over whitespace properly after url string (it's optional whitespace not mandatory whitespace)
git-svn-id: svn://10.0.0.236/trunk@1425 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 23:28:22 +00:00
rickg
d279bd9b90 fixed numeric entities
git-svn-id: svn://10.0.0.236/trunk@1424 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 23:28:01 +00:00
rickg
08ea7302b4 added IsDigit to string
git-svn-id: svn://10.0.0.236/trunk@1423 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 23:27:35 +00:00
atotic
597bf87774 File case weirdness
git-svn-id: svn://10.0.0.236/trunk@1420 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 23:04:36 +00:00
kipp
ee0932b472 Declare nsIView just in case somebody else doesn't
git-svn-id: svn://10.0.0.236/trunk@1419 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:58:44 +00:00
kipp
29014e986a Use new image loading API's
git-svn-id: svn://10.0.0.236/trunk@1418 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:58:20 +00:00
kipp
aeb7f4e124 Revised image loading API's
git-svn-id: svn://10.0.0.236/trunk@1417 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:57:05 +00:00
kipp
d28087541a Removed image loading code (factored out into nsFrameImageLoader); revised API for image loading
git-svn-id: svn://10.0.0.236/trunk@1416 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:56:58 +00:00
kipp
89aaae1f2d Added nsFrameImageLoader
git-svn-id: svn://10.0.0.236/trunk@1415 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:56:23 +00:00
kipp
07232aab59 Export nsIFrameImageLoader.h
git-svn-id: svn://10.0.0.236/trunk@1414 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:55:54 +00:00
kipp
164321faf9 new
git-svn-id: svn://10.0.0.236/trunk@1413 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:52:40 +00:00
montulli
b1069775d3 add exports to layout and libstyle
git-svn-id: svn://10.0.0.236/trunk@1408 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:11:39 +00:00
montulli
cac7dcf982 add network
git-svn-id: svn://10.0.0.236/trunk@1407 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:09:40 +00:00
montulli
527d9f61ef use mozilla/network now instead of lib/libnet
git-svn-id: svn://10.0.0.236/trunk@1406 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:09:10 +00:00
montulli
9fa204a081 use network dir instead of libnet
git-svn-id: svn://10.0.0.236/trunk@1404 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:07:07 +00:00
montulli
57612be151 add mkgeturl.h
git-svn-id: svn://10.0.0.236/trunk@1403 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:04:57 +00:00
montulli
02058ba996 remove libnet
git-svn-id: svn://10.0.0.236/trunk@1402 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:04:01 +00:00
montulli
d83f821242 add network directory
git-svn-id: svn://10.0.0.236/trunk@1401 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:03:25 +00:00
montulli
4285557751 changes for the new mozilla/network directory.
git-svn-id: svn://10.0.0.236/trunk@1399 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:02:46 +00:00
atotic
fb1313cc77 Netlib modularity changes. montulli's your point man
git-svn-id: svn://10.0.0.236/trunk@1398 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:02:43 +00:00
cyeh
8c0ccec706 new netlib in it's new home and modular too.
git-svn-id: svn://10.0.0.236/trunk@1397 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 22:01:18 +00:00
selmer
791cab04d8 removed extraneous JAVA_DESTPATH definition
git-svn-id: svn://10.0.0.236/trunk@1396 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 21:59:36 +00:00
montulli
b8f16d0f85 add #mkgeturl.h
git-svn-id: svn://10.0.0.236/trunk@1395 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 21:41:26 +00:00
troy
9a3b2e21ef Changed table code to pay attention to the ALIGN attribute
git-svn-id: svn://10.0.0.236/trunk@1394 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 21:31:12 +00:00
troy
70f7b2d8cd Fixed build bustage
git-svn-id: svn://10.0.0.236/trunk@1393 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 21:03:50 +00:00
rpotts
be5c685363 Added support for receiving OnProgress(...) notifications...
git-svn-id: svn://10.0.0.236/trunk@1392 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 20:30:35 +00:00
spence
c603cea888 new layout element for shack objects
git-svn-id: svn://10.0.0.236/trunk@1389 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 19:54:46 +00:00
spider
e97259e58a Final UNIX fixes
git-svn-id: svn://10.0.0.236/trunk@1388 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 19:45:12 +00:00
spider
c8ee4c7bf3 windows fixes
git-svn-id: svn://10.0.0.236/trunk@1387 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 19:34:25 +00:00
spider
f49bd7b89a More UNIX Lib fixes
git-svn-id: svn://10.0.0.236/trunk@1386 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 19:33:23 +00:00
spider
f172c6f0f1 Platform Independe EXTRA_LIBS fixes
git-svn-id: svn://10.0.0.236/trunk@1385 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 19:06:15 +00:00
troy
66c14fdbb1 Wrapped VerifyLines() inside of a NS_DEBUG #define
git-svn-id: svn://10.0.0.236/trunk@1384 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 18:54:15 +00:00
troy
b83e1077b0 More incremental reflow work.
git-svn-id: svn://10.0.0.236/trunk@1383 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 18:38:10 +00:00
spider
750378f65c Add gconfig to build_trex
git-svn-id: svn://10.0.0.236/trunk@1382 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 16:50:16 +00:00
ftang
a989b3e678 Add Armenian XFE support. thanks for Hovik Melikyan from hovik@undp.am
git-svn-id: svn://10.0.0.236/trunk@1381 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 16:49:30 +00:00
spider
8e877f008d Refer to nglayout now
git-svn-id: svn://10.0.0.236/trunk@1380 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 16:32:14 +00:00
spider
7918f08d9d Actually refer to nglayout properly now
git-svn-id: svn://10.0.0.236/trunk@1379 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 16:27:28 +00:00
spider
17aee6decd Refer to nglayout.mk now
git-svn-id: svn://10.0.0.236/trunk@1378 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 16:24:06 +00:00
jwz
dd5ae078e5 red letter edition
git-svn-id: svn://10.0.0.236/trunk@1377 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-10 18:54:17 +00:00
mccabe
afa28896ca (Not part of the mozilla build process.)
Added support in the javascript shell for the #! unix script hack; if
the first line read by the shell (from a file, not interactive) starts
with #, the line is treated as a comment.

This should make
#!/usr/bin/js work...


git-svn-id: svn://10.0.0.236/trunk@1376 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 05:54:12 +00:00
troy
1b3c6fc947 Work in progress on block incremental reflow
git-svn-id: svn://10.0.0.236/trunk@1375 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:52:29 +00:00
kipp
5cb5cb49e5 Use new LoadImage API
git-svn-id: svn://10.0.0.236/trunk@1374 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:23:54 +00:00
kipp
7331ec5631 Removed uneeded code; added a reminder comment
git-svn-id: svn://10.0.0.236/trunk@1373 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:23:41 +00:00
kipp
ea27670082 Cheesy implementation of the reflow lock and content appended
git-svn-id: svn://10.0.0.236/trunk@1372 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:22:41 +00:00
kipp
7dc9190770 Updated to new API
git-svn-id: svn://10.0.0.236/trunk@1371 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:22:14 +00:00
kipp
cdf6691a9d Reworked load image support and provided content changed calls to the shell when image sizes arrive
git-svn-id: svn://10.0.0.236/trunk@1370 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:22:01 +00:00
kipp
522bd8f35e Added enter/exit reflow lock methods
git-svn-id: svn://10.0.0.236/trunk@1369 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:21:34 +00:00
kipp
266494fc93 Revised LoadImage API to use NS_IMETHOD and provide alot more information about the load
git-svn-id: svn://10.0.0.236/trunk@1368 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:21:19 +00:00
kipp
19ce06fe2f Wrap document loads with reflow lock calls
git-svn-id: svn://10.0.0.236/trunk@1367 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:20:54 +00:00
kipp
cf55be8188 Remove useless header file
git-svn-id: svn://10.0.0.236/trunk@1366 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:20:37 +00:00
kipp
23bcab2333 Removed unused class decl
git-svn-id: svn://10.0.0.236/trunk@1365 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 03:20:24 +00:00
racham
4489bdc493 Path for compare.js changed
git-svn-id: svn://10.0.0.236/trunk@1364 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 02:16:33 +00:00
rickg
cb2d8b8eb8 MUCH better support for auto-closing tags.
git-svn-id: svn://10.0.0.236/trunk@1363 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-09 00:42:33 +00:00
scullin
e794b4507e Fix NSPR related breakage.
git-svn-id: svn://10.0.0.236/trunk@1360 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 23:56:08 +00:00
montulli
17459e838c update include path
git-svn-id: svn://10.0.0.236/trunk@1358 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 23:40:53 +00:00
karnaze
8400595193 select/option
git-svn-id: svn://10.0.0.236/trunk@1355 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 23:08:43 +00:00
wtc
8a008e57b5 Added new test files.
git-svn-id: svn://10.0.0.236/trunk@1352 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 23:07:27 +00:00
rickg
683ffd3d1f changed OPTION tag from leaf to container node
git-svn-id: svn://10.0.0.236/trunk@1350 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 22:36:15 +00:00
atotic
fe9c67a957 More build changes, added some missing files
git-svn-id: svn://10.0.0.236/trunk@1349 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 21:42:48 +00:00
atotic
573139f59c #ifdef NET_mail/news functionality with MOZ_MAIL_NEWS.
git-svn-id: svn://10.0.0.236/trunk@1348 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 21:42:26 +00:00
scullin
42f328fc71 Fix depth, and add client directory
git-svn-id: svn://10.0.0.236/trunk@1347 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 21:27:46 +00:00
hyatt
be768f6a5b Making the Aurora tree respond to the divider properties.
git-svn-id: svn://10.0.0.236/trunk@1346 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 21:23:47 +00:00
kipp
9003aba3c1 Fixed irix bustage
git-svn-id: svn://10.0.0.236/trunk@1345 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 21:12:12 +00:00
atotic
ecc83b402a More build changes (renaming the targets)
git-svn-id: svn://10.0.0.236/trunk@1344 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 21:03:19 +00:00
timm
e93ed99ecf fix path routines to append path delimiter
git-svn-id: svn://10.0.0.236/trunk@1343 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 20:20:19 +00:00
timm
8cdfb14c42 fix getFolder to return windows style path
git-svn-id: svn://10.0.0.236/trunk@1342 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 20:19:43 +00:00
kipp
31d88fddf9 nuked
git-svn-id: svn://10.0.0.236/trunk@1341 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 20:19:18 +00:00
kipp
30a587c651 updated
git-svn-id: svn://10.0.0.236/trunk@1340 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 20:18:36 +00:00
kipp
384524a3d9 new
git-svn-id: svn://10.0.0.236/trunk@1339 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 20:18:35 +00:00
karnaze
ab454da4fd more support for textarea, select/option in content sink
git-svn-id: svn://10.0.0.236/trunk@1338 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 20:18:06 +00:00
kipp
053274d5b7 Removed more raptor references
git-svn-id: svn://10.0.0.236/trunk@1337 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 20:10:36 +00:00
kipp
171bc76637 new
git-svn-id: svn://10.0.0.236/trunk@1336 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:58:01 +00:00
kipp
c56ba929aa Fixed pseudo-frame body behavior
git-svn-id: svn://10.0.0.236/trunk@1335 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:43:25 +00:00
timm
b7351b8392 dial string should be in status text, not progress text
git-svn-id: svn://10.0.0.236/trunk@1334 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:28:49 +00:00
timm
a45c483ad7 remove copy of compare.js, since we dont want it in the jar
git-svn-id: svn://10.0.0.236/trunk@1333 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:28:04 +00:00
timm
2156c7d5d7 remove IDs and ARCHIVE tags
git-svn-id: svn://10.0.0.236/trunk@1332 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:27:40 +00:00
timm
4e130f7162 remove IPs and put reggie.netscape.com back
git-svn-id: svn://10.0.0.236/trunk@1331 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:26:43 +00:00
timm
3f3c31c971 erase compare.js as part of make if it exists in this dir
git-svn-id: svn://10.0.0.236/trunk@1330 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:26:11 +00:00
timm
9aa0247b63 added debugging for set1StepMode
git-svn-id: svn://10.0.0.236/trunk@1329 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:25:47 +00:00
timm
b5ac9e9ddf added debugging info for MetadataMode and LocalMode
git-svn-id: svn://10.0.0.236/trunk@1328 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:24:49 +00:00
radha
a58f0b6a8a Checkin for fix 104761. If the target window has a context associated with it, use it.
Fix was originally provided by toshok.


git-svn-id: svn://10.0.0.236/trunk@1327 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:24:28 +00:00
timm
ccb1fc9ade add ASW_DEVMODE
git-svn-id: svn://10.0.0.236/trunk@1326 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:24:15 +00:00
ftang
cb7fffc2df Add Armenain support. Approvaed by WinFE owner, Thanks Hovik Melikyan <hovik@undp.am>
from the net


git-svn-id: svn://10.0.0.236/trunk@1323 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 19:23:48 +00:00
wtc
cbcb32a7d6 Use cc -bundle to build loadable modules on Rhapsody. Thanks to
Matt Watson <mwatson@apple.com> for the patch.


git-svn-id: svn://10.0.0.236/trunk@1322 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:52:44 +00:00
cmanske
0d6028508b Fixed another memory bug in Composer
git-svn-id: svn://10.0.0.236/trunk@1321 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:51:58 +00:00
wtc
dad061f564 The type of the third argument for accept, recvfrom, getsockname, and
getpeername is 'int', not 'size_t'.


git-svn-id: svn://10.0.0.236/trunk@1320 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:50:15 +00:00
wtc
6b251dc0ae Fixed comment.
git-svn-id: svn://10.0.0.236/trunk@1319 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:48:46 +00:00
wtc
06c4a3d9ee Merged patches from Matt Watson <mwatson@apple.com> to make loadable
modules work on Rhapsody.  Still have a few kinks to iron out.


git-svn-id: svn://10.0.0.236/trunk@1318 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:43:58 +00:00
wtc
682e147ebf Matt Watson <mwatson@apple.com> pointed out that it is not safe to
redefine FD_SETSIZE on Rhapsody.


git-svn-id: svn://10.0.0.236/trunk@1317 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:41:51 +00:00
wtc
7e8f7154f4 Added a few function declarations and header inclusions to get rid of
compiler warnings.


git-svn-id: svn://10.0.0.236/trunk@1316 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:37:38 +00:00
wtc
6c9253e597 Merged Rhapsody patches contributed by Matt Watson <mwatson@apple.com>.
git-svn-id: svn://10.0.0.236/trunk@1315 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:35:19 +00:00
rods
9b04324111 added major selection method and data members
git-svn-id: svn://10.0.0.236/trunk@1314 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:33:42 +00:00
wtc
91ebeaa99b Merged patches contributed by Matt Watson <mwatson@apple.com>.
git-svn-id: svn://10.0.0.236/trunk@1313 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 18:32:30 +00:00
michaelp
5f4ea5859a when switching documents, the scrollbars are reset.
git-svn-id: svn://10.0.0.236/trunk@1312 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 17:50:43 +00:00
atotic
dddb703cfd Added an include of shist.h
git-svn-id: svn://10.0.0.236/trunk@1311 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 17:27:49 +00:00
kipp
9748b6eb2b Factored out sizing into ComputeDesiredSize and fixed the size to reflect the size of the content
git-svn-id: svn://10.0.0.236/trunk@1310 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 17:23:06 +00:00
atotic
612c02f3da First Checked In.
git-svn-id: svn://10.0.0.236/trunk@1309 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 17:13:01 +00:00
troy
2e789484b5 Changed container related functions to return NS_ERROR_NOT_IMPLEMENTED
instead of NS_OK


git-svn-id: svn://10.0.0.236/trunk@1308 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 17:02:35 +00:00
troy
a447ffcc90 Moved ContentChanged() logic to nsFrame since it was completely generic and
serves as reasonable default behavior for all frames


git-svn-id: svn://10.0.0.236/trunk@1304 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 16:34:27 +00:00
troy
f8e3f6b0a7 Changed ContentChanged() to generate a reflow command
git-svn-id: svn://10.0.0.236/trunk@1303 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 16:33:07 +00:00
pinkerton
d173dd8ecd free memory allocated (silently!) by GetURLFromFileSpec(). (appr brade).
git-svn-id: svn://10.0.0.236/trunk@1302 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 15:35:42 +00:00
pinkerton
dd2b3e15e2 added "rdf" to access paths so composer can understand drops from HT (appr brade).
git-svn-id: svn://10.0.0.236/trunk@1301 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 15:34:44 +00:00
pinkerton
d9cc5aa3b0 New drag and drop architecture using CURLDragMixin subclasses. Fixed bug where dropping text clipping would drop at old insertion point, not at mouse location. (appr brade).
git-svn-id: svn://10.0.0.236/trunk@1300 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 15:34:07 +00:00
rods
80849d47b2 added Selection methods to nsICodment, nsDocument, nsiSplittableFRame
git-svn-id: svn://10.0.0.236/trunk@1299 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 15:07:41 +00:00
rods
495bdfe1d4 added Edit menu
git-svn-id: svn://10.0.0.236/trunk@1298 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 15:06:41 +00:00
dcone
5b5fdcadb6 put back in optimize
git-svn-id: svn://10.0.0.236/trunk@1297 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 15:05:27 +00:00
rods
8124074533 added mouseEvent struct
git-svn-id: svn://10.0.0.236/trunk@1296 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 14:54:09 +00:00
dcone
332f4c19f3 Some more alpha blending, fixed some bugs and the test app now works
git-svn-id: svn://10.0.0.236/trunk@1295 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 14:24:53 +00:00
mcafee
013d1299c8 Enable dynamic library creation. a,r=briano
git-svn-id: svn://10.0.0.236/trunk@1294 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 08:01:10 +00:00
sdagley
07644fd855 Merging current fix for #86787 and #96213 from 4.x tree. When creating a new window check chrome to see if it should be created zoomable rather than changing it afterwards. Works around WDEF change in MacOS 8 that breaks old hack that would toggle zoom widget after creating window.
git-svn-id: svn://10.0.0.236/trunk@1293 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 06:08:55 +00:00
rjc
b1c2f2652a Small fix... use '\0' instead of NULL.
git-svn-id: svn://10.0.0.236/trunk@1292 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 06:01:30 +00:00
rjc
aacb6b7891 Move all hardcoded RDF strings into allxpstr.
git-svn-id: svn://10.0.0.236/trunk@1291 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 05:48:44 +00:00
rjc
7483ba47fe Move all hardcoded strings into allxpstr. Bug fix from tenthumbs@cybernex.net in isNodeEditable(). HT Properties dialog changes (pretty, now). Better color support.
git-svn-id: svn://10.0.0.236/trunk@1290 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 05:48:14 +00:00
troy
833c505aff Hooked up ContentChanged() to notify the frame
git-svn-id: svn://10.0.0.236/trunk@1289 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 04:59:35 +00:00
troy
80084f86ae Added ContentChanged() member function
git-svn-id: svn://10.0.0.236/trunk@1288 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 04:56:47 +00:00
troy
4c7726d9f7 Added ContentChanged() member function
git-svn-id: svn://10.0.0.236/trunk@1287 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 04:45:37 +00:00
sdagley
e5ef4cb8fc Merging sfraser fix for #115706 from 4.x branch.
git-svn-id: svn://10.0.0.236/trunk@1286 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 03:34:05 +00:00
michaelp
6b1b7b071b added horizontal scrollbar.
git-svn-id: svn://10.0.0.236/trunk@1278 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 01:25:25 +00:00
timm
f2f6958b0e Add in "ARCHIVE=asw.jar" for compare.js
git-svn-id: svn://10.0.0.236/trunk@1277 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 01:17:40 +00:00
cmanske
b6085352b8 Fixed memory crash bug in new Composer table code
git-svn-id: svn://10.0.0.236/trunk@1276 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 01:12:10 +00:00
michaelp
67a0e11240 we now have horizontal scrolling.
git-svn-id: svn://10.0.0.236/trunk@1275 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 01:11:57 +00:00
timm
6a5d8b07ea Not for Preston
git-svn-id: svn://10.0.0.236/trunk@1271 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 00:33:10 +00:00
timm
b763535f3a Registration Server IAS file
git-svn-id: svn://10.0.0.236/trunk@1270 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 00:31:35 +00:00
kipp
e8970aba73 Support width/height ala css
git-svn-id: svn://10.0.0.236/trunk@1269 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 00:16:41 +00:00
kipp
dd47ae8835 Added MapImagePropertiesInto
git-svn-id: svn://10.0.0.236/trunk@1268 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-08 00:16:30 +00:00
robinf
b1735e0810 scrubbed lighthouse and N logos from these images
git-svn-id: svn://10.0.0.236/trunk@1265 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 23:50:36 +00:00
kipp
40a0ee1354 Support css width&height style properties
git-svn-id: svn://10.0.0.236/trunk@1264 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 23:38:51 +00:00
kipp
5bcb630e75 Unsupported border+padding around form elements (except for image - it still works)
git-svn-id: svn://10.0.0.236/trunk@1263 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 23:38:12 +00:00
ftang
0619cd5b32 Add Armenian support. Thanks for Hovik Melikyan <hovik@moon.yerphi.am> for this.
git-svn-id: svn://10.0.0.236/trunk@1262 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 23:12:48 +00:00
michaelp
5dd9734a48 scrolling views are now self-contained. preparations have been made for horizontal scrolling.
git-svn-id: svn://10.0.0.236/trunk@1261 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 23:07:10 +00:00
ftang
52495ca4a4 Add Armenian support. Thanks for Hovik Melikyan <hovik@moon.yerphi.am> for this.
git-svn-id: svn://10.0.0.236/trunk@1259 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 23:03:45 +00:00
ftang
186160708d Add Armenian support. Thanks for Hovik Melikyan <hovik@yerphi.am> (from Armenian)
for this.


git-svn-id: svn://10.0.0.236/trunk@1258 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 23:02:26 +00:00
spider
558248ce6a emove web fully
git-svn-id: svn://10.0.0.236/trunk@1257 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 22:53:28 +00:00
spider
6f3722d906 Fix include from web to shell
git-svn-id: svn://10.0.0.236/trunk@1256 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 22:49:59 +00:00
kipp
220394c0ec Support width & height ala css1
git-svn-id: svn://10.0.0.236/trunk@1250 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 21:50:56 +00:00
kipp
ebf8497eb7 order sid's alphabeticly
git-svn-id: svn://10.0.0.236/trunk@1249 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 21:36:41 +00:00
kipp
83683e9db6 Added GetStyleSize
git-svn-id: svn://10.0.0.236/trunk@1248 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 21:36:16 +00:00
kipp
f3b0df343f Set clip rect if style says to
git-svn-id: svn://10.0.0.236/trunk@1247 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 21:35:03 +00:00
ftang
ba092104d8 add codeset conversion table for ARMSCII-8 Thanks Hovik Melikyan hovik@undp.am
git-svn-id: svn://10.0.0.236/trunk@1246 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 21:28:17 +00:00
toshok
aa0742196b Remove #ifdef's for TEXT_CHUNK_LIMIT, since it's always defined to something.
git-svn-id: svn://10.0.0.236/trunk@1245 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 21:16:02 +00:00
toshok
69c01e024d I know I'm going to get strung up for this, but I just can't read this file without a window that's like 150 columns wide.
git-svn-id: svn://10.0.0.236/trunk@1244 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 21:12:03 +00:00
rickg
73cdf7b056 new contentsink api's for kipp
git-svn-id: svn://10.0.0.236/trunk@1243 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 21:11:07 +00:00
troy
4a9b848ec2 Work in progress
git-svn-id: svn://10.0.0.236/trunk@1242 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 21:10:07 +00:00
scullin
ff4907675c G++ warning fix submitted by Brian Grunkemeyer.
git-svn-id: svn://10.0.0.236/trunk@1241 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 20:50:59 +00:00
toshok
ffbf7864d1 remove huge commented out chunks of code (that have been commented out since time began, it seems.) also added a couple of fairly bogus comments at the beginnings of lo_Push/PopAlignment
git-svn-id: svn://10.0.0.236/trunk@1240 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 20:44:45 +00:00
troy
e1891fa2e0 Started hooking up appended content handler
git-svn-id: svn://10.0.0.236/trunk@1239 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 20:28:16 +00:00
spider
8734855a1d More fixes
git-svn-id: svn://10.0.0.236/trunk@1238 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 20:09:25 +00:00
wtc
dca0a521aa Matt Waston <mwatson@apple.com> taught me what common symbols are
and to compile with -fno-common.


git-svn-id: svn://10.0.0.236/trunk@1237 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 19:19:25 +00:00
spider
26b167fe2b Changes class NSApplicationManager to nsApplicationManager
git-svn-id: svn://10.0.0.236/trunk@1236 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 18:39:40 +00:00
spider
afe6262d35 Adding toplevel trex unix makefile
git-svn-id: svn://10.0.0.236/trunk@1235 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 18:19:43 +00:00
spider
b9c5f0cf67 Unix Shell Implementation stuff
git-svn-id: svn://10.0.0.236/trunk@1234 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 18:18:38 +00:00
michaelp
dea683c9d2 deferred creation of null pen until we actually need to use it.
git-svn-id: svn://10.0.0.236/trunk@1233 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 18:00:48 +00:00
michaelp
a7492ad3ee sped up filled polygons.
git-svn-id: svn://10.0.0.236/trunk@1232 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 17:54:14 +00:00
kipp
87a10a39d9 Support (mostly) border+padding around input form elements
git-svn-id: svn://10.0.0.236/trunk@1231 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 16:13:59 +00:00
kipp
f62d45c7d8 Fixed the dancing form-elements bug by making MoveTo properly account for the views offset from parent
git-svn-id: svn://10.0.0.236/trunk@1230 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 16:13:09 +00:00
wtc
7609a85751 Fixed Bugzilla bug #235: Define the macro _PR_HAVE_SOCKADDR_LEN to
indicate that struct sockaddr_in on BSD/OS has a sa_len field.
The code in unix.c checks this macro.  We acknowledge Bert Driehuis
<driehuis@playbeing.com> for reporting the bug and suggesting a fix.


git-svn-id: svn://10.0.0.236/trunk@1229 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 15:43:43 +00:00
rpotts
6f109ea508 Ignore the return value from NET_PollSockets(...) since it is FALSE when there are file: URLs waiting to be processed...
git-svn-id: svn://10.0.0.236/trunk@1228 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 11:01:48 +00:00
wtc
4bc4288454 Moved Rhapsody's shared library rule from rules.mk to Rhapsody.mk.
git-svn-id: svn://10.0.0.236/trunk@1227 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 07:23:49 +00:00
rickg
a0aa2749b7 WIP: push-based tokenization
git-svn-id: svn://10.0.0.236/trunk@1226 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 07:19:47 +00:00
rpotts
61e75a1a74 Fix up makefile.win to completely remove nsInputStream :-)
git-svn-id: svn://10.0.0.236/trunk@1225 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 07:04:08 +00:00
rpotts
1edf5e97a3 fixed up IStreamListener implementation to take a length in the OnDataAvailable(...) method.
git-svn-id: svn://10.0.0.236/trunk@1224 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 06:53:11 +00:00
rpotts
723cc251cb Removed nsInputStream.cpp since file and resource protocols are now handled by netlib...
git-svn-id: svn://10.0.0.236/trunk@1223 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 06:52:11 +00:00
wtc
987efb9517 Bugzilla bug #218: define HAVE_STRERROR only if it is not yet defined.
Thanks to David Nebinger (dnebinger@synertech.highmark.com) for reporting
the problem and suggesting the fix.


git-svn-id: svn://10.0.0.236/trunk@1221 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 06:38:26 +00:00
wtc
1f68fdef7a Bugzilla bug #265: Use full pathname /usr/ccs/bin/as (as opposed to just
'as') to assemble os_SunOS_ultrasparc.s because we need the -P option
of Solaris 'as' to run cpp and process header file inclusion.  This
way we won't accidentally get GNU 'as', which doesn't understand -P.
We acknowledge Paul Kanz (pkanz@conix.com) for suggesting the fix.


git-svn-id: svn://10.0.0.236/trunk@1220 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 06:29:44 +00:00
troy
bfddc50483 Work on getting floaters working again
git-svn-id: svn://10.0.0.236/trunk@1219 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 05:25:08 +00:00
troy
fb89e3aef1 Made "delete" by "remove" since delete is a reserved JavaScript keyword
git-svn-id: svn://10.0.0.236/trunk@1218 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 05:23:52 +00:00
wtc
7e8f8d4e76 On Alpha Linux, the mmap'd stack needs to be made executable because
setjmp/signal seem to put machine instructions on the stack.  This
fix is contributed by gatgul@voicenet.com (Uncle George).


git-svn-id: svn://10.0.0.236/trunk@1217 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 05:07:25 +00:00
kipp
ee8301ea61 Implemented destroy-lines
git-svn-id: svn://10.0.0.236/trunk@1212 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 03:45:29 +00:00
troy
ed7b88f4e8 Checks whether the next-in-flow should be deleted
git-svn-id: svn://10.0.0.236/trunk@1210 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 02:51:30 +00:00
wtc
5fe72e5298 The stack pointer is the 0th element in the jmp_buf.
git-svn-id: svn://10.0.0.236/trunk@1208 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 01:52:43 +00:00
michaelp
9eacf21021 hey, now the state stack is actually useful. duh.
git-svn-id: svn://10.0.0.236/trunk@1206 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 01:10:20 +00:00
kipp
d75e25fc42 Ported to new CreateFrame/CreateContinuingFrame APIs
git-svn-id: svn://10.0.0.236/trunk@1204 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 00:08:20 +00:00
kipp
99983b9346 Ported to new CreateFrame/CreateContinuingFrame APIs; removed some debris code
git-svn-id: svn://10.0.0.236/trunk@1203 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 00:06:53 +00:00
kipp
aed636929a Updated style sheet
git-svn-id: svn://10.0.0.236/trunk@1202 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 00:06:15 +00:00
kipp
9e181db532 Changed CreateContinuingFrame to take a style context argument to reduce style context creation
git-svn-id: svn://10.0.0.236/trunk@1201 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 00:05:37 +00:00
kipp
b924a98f77 Updated CreateFrame to take a style context argument to reduce style context creation
git-svn-id: svn://10.0.0.236/trunk@1200 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 00:05:13 +00:00
gagan
e810b91676 Add module id to object.
git-svn-id: svn://10.0.0.236/trunk@1199 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 23:24:55 +00:00
gagan
c4342a5a32 Time something using an excursion class.
git-svn-id: svn://10.0.0.236/trunk@1198 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 23:18:38 +00:00
michaelp
226d27c5ad added pens to graphics state. more performance improvements.
git-svn-id: svn://10.0.0.236/trunk@1196 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 22:50:23 +00:00
rpotts
29ece213ae renamed the nsIStreamNotification interface to nsIStreamListener
git-svn-id: svn://10.0.0.236/trunk@1195 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 22:16:02 +00:00
pinkerton
d700ab2088 use new D&D mixins in CURLDragHelper.cp/h to handle drops of url-like things. (rev/appr sdagley, for all the others too...)
git-svn-id: svn://10.0.0.236/trunk@1193 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 21:27:09 +00:00
pinkerton
565e05b5bf use new D&D mixins in CURLDragHelper.cp/h to handle drops of url-like things.
git-svn-id: svn://10.0.0.236/trunk@1192 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 21:26:21 +00:00
rpotts
559b78f09d updated to use the URL->Open(...) method for starting an async url load...
git-svn-id: svn://10.0.0.236/trunk@1191 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 21:20:04 +00:00
gagan
b949d65ee3 Progress.
git-svn-id: svn://10.0.0.236/trunk@1189 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 20:29:20 +00:00
wtc
d67c10164b Define IP_MULTICAST to get the IP multicast macro/struct definitions
in netinet/in.h on SINIX 5.43.  We acknowledge the help of Sanjay
Gupta <gupta@informix.com>.


git-svn-id: svn://10.0.0.236/trunk@1186 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 19:53:26 +00:00
robinf
1db206f872 replacing corrupted images in previews
git-svn-id: svn://10.0.0.236/trunk@1185 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 18:23:32 +00:00
troy
8d64b6f3f2 Fixed build bustage
git-svn-id: svn://10.0.0.236/trunk@1183 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 18:13:58 +00:00
ramiro
17ef3f1e2e Fix build problem reported by avogel@bdm.com (Andy Vogel). The PopupCommand
class defined in 2 different *.cpp files and was confusing thr dgux linker.
Add {Rdf,Editor} prefix to PopupCommand class to avoid ambiguity.


git-svn-id: svn://10.0.0.236/trunk@1182 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 17:49:57 +00:00
ramiro
ef8e0398bd Move the bookmark widgets to their own library. Componetize things a bit.
Should make it easier to completely bypass these widgets if needed - as
will probably be the case for lite browsers and "motifs" that break cause
of them.


git-svn-id: svn://10.0.0.236/trunk@1181 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 17:36:34 +00:00
ramiro
bafb2a76af Add .cvsignore for xfe
git-svn-id: svn://10.0.0.236/trunk@1180 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 16:46:53 +00:00
michaelp
8eaa2f652c added fonts to graphics state stack. general optimizations.
git-svn-id: svn://10.0.0.236/trunk@1179 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 16:42:05 +00:00
troy
0b3ffa2df6 Started adding ContentChanged() notifications
git-svn-id: svn://10.0.0.236/trunk@1178 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 16:28:55 +00:00
troy
c8bc0d3bcc Hooked up DOM insert/replace/delete
git-svn-id: svn://10.0.0.236/trunk@1177 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 16:27:15 +00:00
troy
2c774cd094 Hooked up insert/delete/replace
git-svn-id: svn://10.0.0.236/trunk@1176 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 16:26:06 +00:00
michaelp
bf4e5ec274 added solid brushes to graphics state.
git-svn-id: svn://10.0.0.236/trunk@1175 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 02:26:17 +00:00
briano
f76aa54e4a Attempt to handle the various SINIX versions (that I know of) in a cleaner way.
git-svn-id: svn://10.0.0.236/trunk@1171 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 23:58:14 +00:00
troy
22a5d2831e Frames no longet store the content index-in-parent
git-svn-id: svn://10.0.0.236/trunk@1169 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 23:56:50 +00:00
kmcclusk
a85f449dd0 Added tooltip widget and ScreenToWidget and WidgetToScreen conversion member functions
git-svn-id: svn://10.0.0.236/trunk@1168 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 23:41:16 +00:00
wtc
c76e69b986 Checked in (unfinished) Rhapsody port provided by Chris McAfee and
Chris Toshok (mcafee, toshok@netscape.com).  It is classic NSPR,
local threads only (based on setjmp/longjmp).


git-svn-id: svn://10.0.0.236/trunk@1167 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 23:28:45 +00:00
rickg
7eac5ad111 removed redundate class spec -- fixed a mac problem
git-svn-id: svn://10.0.0.236/trunk@1166 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 22:58:30 +00:00
michaelp
c8b3138e73 when selecting a bitmap into a drawing surface, we now reselect the bitmap
that used to be there when we're done.


git-svn-id: svn://10.0.0.236/trunk@1164 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 22:39:19 +00:00
mlm
e68d6633a8 - Fix for new engine - do not require tag to always be there, as sometimes
the prototype object will be passed in.


git-svn-id: svn://10.0.0.236/trunk@1163 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 22:33:10 +00:00
michaelp
96769227de API cleanup for images and drawing surfaces.
git-svn-id: svn://10.0.0.236/trunk@1161 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 22:11:50 +00:00
montulli
86dbcbf7e1 fix warning
git-svn-id: svn://10.0.0.236/trunk@1160 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 21:41:24 +00:00
montulli
5814fe706a add mkaccess to makefile fix warnings
git-svn-id: svn://10.0.0.236/trunk@1159 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 21:40:39 +00:00
pinkerton
a212449b03 fix for bug #115653 for file sharing (rev scc, appr don).
git-svn-id: svn://10.0.0.236/trunk@1158 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 21:27:12 +00:00
pinkerton
72c1a2dd70 Fix off-by-one error when adding new rows from external rdf containers. (rev scc, appr don)
git-svn-id: svn://10.0.0.236/trunk@1157 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 21:21:43 +00:00
hardts
cb80304b07 added support for MOZ_RAPTOR
git-svn-id: svn://10.0.0.236/trunk@1156 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 21:16:24 +00:00
selmer
c7623e9c1a Creating Java strings: don't include null char in length count
git-svn-id: svn://10.0.0.236/trunk@1151 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 20:35:13 +00:00
rickg
ed863f453a removed nsDefaultTokenHandler.*
git-svn-id: svn://10.0.0.236/trunk@1150 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 20:25:19 +00:00
spider
96958337e4 adding Unix Shell Makefile stuff
git-svn-id: svn://10.0.0.236/trunk@1149 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 20:17:21 +00:00
spider
82ed228fd3 Miscellaneous UNIX fixes and ISupports Interface cleanup in implementations
git-svn-id: svn://10.0.0.236/trunk@1148 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 20:16:13 +00:00
kmcclusk
ee0d950c4d *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@1147 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 19:58:27 +00:00
pinkerton
3d020afdc7 Add LO_LayingOut to fix mac build bustage (appr cyeh).
git-svn-id: svn://10.0.0.236/trunk@1144 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 18:56:21 +00:00
hardts
2e49d986f7 check for null to prevent crash
git-svn-id: svn://10.0.0.236/trunk@1142 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 18:51:19 +00:00
michaelp
ebba598484 cleaned up.
git-svn-id: svn://10.0.0.236/trunk@1140 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 18:34:51 +00:00
montulli
3d43abb2b2 remove annoying asserts
git-svn-id: svn://10.0.0.236/trunk@1139 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 18:32:09 +00:00
spider
963949d6d3 Toplevel Window and Event implementations
git-svn-id: svn://10.0.0.236/trunk@1138 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 18:16:25 +00:00
michaelp
5c52551637 ResizeView() now does the right thing.
git-svn-id: svn://10.0.0.236/trunk@1137 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 18:04:56 +00:00
montulli
484796bcde fix annoying asserts
git-svn-id: svn://10.0.0.236/trunk@1136 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 17:50:26 +00:00
montulli
ebdea24d4c add glhist.h to fix compile warnings
git-svn-id: svn://10.0.0.236/trunk@1135 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 17:45:41 +00:00
michaelp
8796e9dab3 before releasing the timer in the destructor, we Cancel() the timer per vidur's
suggestion.


git-svn-id: svn://10.0.0.236/trunk@1134 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 17:29:08 +00:00
nisheeth
d43383f719 Added a check in LO_RelayoutOnResize() to bail if the document is being
laid out.


git-svn-id: svn://10.0.0.236/trunk@1133 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 17:27:23 +00:00
dcone
888e657348 Composition Work 24 bit complete
git-svn-id: svn://10.0.0.236/trunk@1131 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 14:47:16 +00:00
troy
c6e290213d Work in progress for inserted incremental reflow
git-svn-id: svn://10.0.0.236/trunk@1124 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 04:47:53 +00:00
rjc
cd708b48b7 (Mac only) Appletalk changes to support changes related to RDFT-specified data sources.
git-svn-id: svn://10.0.0.236/trunk@1123 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 02:56:07 +00:00
spider
e8c0760d9b Adding toplevel trex makefile
git-svn-id: svn://10.0.0.236/trunk@1121 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 02:03:57 +00:00
cyeh
f8babf45d0 change reference to "ns" since it refers to an old source root. remove
requirement on -k gmake flag


git-svn-id: svn://10.0.0.236/trunk@1120 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 01:27:49 +00:00
racham
37acf6df7a Minor textual changes associated with set up communicator button
git-svn-id: svn://10.0.0.236/trunk@1119 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 00:51:35 +00:00
spider
f8555ac899 Implement some toplevel windowing functionality
git-svn-id: svn://10.0.0.236/trunk@1118 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 00:50:35 +00:00
gagan
0862eba745 Updated include locations.
git-svn-id: svn://10.0.0.236/trunk@1117 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 00:41:34 +00:00
gagan
f098d37d23 MSDev project file update.
git-svn-id: svn://10.0.0.236/trunk@1116 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 00:40:21 +00:00
gagan
8fd7f0162f RC file.
git-svn-id: svn://10.0.0.236/trunk@1115 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 00:39:07 +00:00
gagan
b23ea7975d Added the test example.
NSPR changes.


git-svn-id: svn://10.0.0.236/trunk@1114 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 00:37:53 +00:00
briano
c4ea4cc289 Handle different SINIX versions properly. Thanks to Sanjay Gupta (gupta@informix.com) for the suggestion.
git-svn-id: svn://10.0.0.236/trunk@1113 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 00:10:34 +00:00
ftang
12a7beca15 fix the broken cp125[12] to/from unicode table I check in last time...
git-svn-id: svn://10.0.0.236/trunk@1112 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 23:44:59 +00:00
rickg
d6f2b8d6cb fixed general closure case
git-svn-id: svn://10.0.0.236/trunk@1111 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 23:36:46 +00:00
scullin
a7f345f764 Added NS_ERROR_FAILURE define provided by Brian Grunkemeyer.
git-svn-id: svn://10.0.0.236/trunk@1110 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 23:30:05 +00:00
scullin
a75e8b6a75 Added tarball rules.
git-svn-id: svn://10.0.0.236/trunk@1109 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 23:24:41 +00:00
spider
d6e3184abb Adding shell as new component on toplevel. Used to be in webshell.
This stuff allows an application to implement an interface instead of
providing the standard main().


git-svn-id: svn://10.0.0.236/trunk@1108 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 23:02:06 +00:00
troy
b470bf2def Fixed my build bustage
git-svn-id: svn://10.0.0.236/trunk@1107 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 22:50:13 +00:00
timm
03f29e9d41 changed "reggie.netscape.com" to be actual IP number to remove dependency
on DNS


git-svn-id: svn://10.0.0.236/trunk@1106 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 22:41:10 +00:00
thom
49acb7a1f2 Moved general Mac defines from Comm_Headers.c to Comm_Defines.h so that raptor can include Comm_Defines.h
git-svn-id: svn://10.0.0.236/trunk@1105 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 22:31:33 +00:00
timm
367c6a4f72 move inpvw5a.htm to a different array index because it was conflicting
with the New Account path


git-svn-id: svn://10.0.0.236/trunk@1104 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 21:29:42 +00:00
troy
c94f8a9104 Implemented DOM document's createTextNode() function, and changed insertBefore()
handler to allow refChild to be null


git-svn-id: svn://10.0.0.236/trunk@1103 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 20:34:37 +00:00
troy
ea789f09b3 Fixed InsertBefore() to allow refChild to be null
git-svn-id: svn://10.0.0.236/trunk@1102 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 20:33:05 +00:00
spider
39bdbd8c87 Removing ApplicationShell interfaces from webshell. Will be moved to toplevel 'shell' in near future.
git-svn-id: svn://10.0.0.236/trunk@1100 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 19:25:58 +00:00
kmcclusk
b36f4e2193 Added support for generating tooltip events
git-svn-id: svn://10.0.0.236/trunk@1099 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 19:25:25 +00:00
troy
d14a6a735d Added ContentInserted handler
git-svn-id: svn://10.0.0.236/trunk@1098 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 18:32:12 +00:00
troy
087c280a87 Work in progress for incremental reflow (insert)
git-svn-id: svn://10.0.0.236/trunk@1097 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 17:54:45 +00:00
troy
88dd3c090e Started hooking up createElement(), and commented out some asserts that
were getting hit


git-svn-id: svn://10.0.0.236/trunk@1096 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 17:54:08 +00:00
michaelp
f9b8d8ed34 made Composite() API in ViewManager work.
git-svn-id: svn://10.0.0.236/trunk@1095 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 17:41:57 +00:00
donm
420925b89b backing out Brian O's change that broke the gromit tree.
git-svn-id: svn://10.0.0.236/trunk@1093 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 17:22:59 +00:00
mcafee
542bc2ac58 Comment about moz-export
git-svn-id: svn://10.0.0.236/trunk@1092 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-04 07:03:58 +00:00
wtc
be97fc9aaa Deleted unused macro defines and commented-out code.
git-svn-id: svn://10.0.0.236/trunk@1089 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 23:22:09 +00:00
wtc
dd57c99a8b In make_file() and parse_file_seq(), when we see a char sequence
like 'C:/', we must make sure that there is exactly one letter
before the ':', so that it is indeed a drive letter.
Without these two fixes, the following two makefiles fail.

----------- Makefile 1 -----------------
all: c:/input c:/output
c:/input c:/output:c:/%put:/tmp
	@echo $@
---------- end of Makefile 1  ----------

Without the fix to make_file(), 'c:/%put:/tmp' would be incorrectly
parsed as a single token.  But it should be parsed as two tokens:
'c:/%put' and '/tmp'.  (This is a static pattern rule.)

---------- Makefile2 ------------------
c:/foobar:/tmp
	@echo $@
-------- end of Makefile2 -------------

Without the fix to parse_file_seq(), 'c:/foobar:/tmp' would be
parsed as one token, and make would complain about missing
separator.


git-svn-id: svn://10.0.0.236/trunk@1088 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 23:05:13 +00:00
ramiro
5a82956398 add missing -lXmu on irix and solaris
git-svn-id: svn://10.0.0.236/trunk@1087 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 12:26:58 +00:00
ramiro
cd82b2ca50 comment out gcc-ism
git-svn-id: svn://10.0.0.236/trunk@1086 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 12:26:08 +00:00
ramiro
76bc3096dd Add comments describing the makefiles. Dont force the initial value of
XFE_{SHARED,STATIC}_LIBS.


git-svn-id: svn://10.0.0.236/trunk@1085 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 12:10:33 +00:00
ramiro
a9ee7f9237 move XfeWidgets tests to their own directory
git-svn-id: svn://10.0.0.236/trunk@1084 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 11:59:23 +00:00
ramiro
8f2f7c9e55 add XmL tests
git-svn-id: svn://10.0.0.236/trunk@1083 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 11:52:01 +00:00
ramiro
f79791ac77 remove ad2c from a hardcoded location
git-svn-id: svn://10.0.0.236/trunk@1082 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 11:49:36 +00:00
ramiro
b15cda5963 add ad2c in a shared location
git-svn-id: svn://10.0.0.236/trunk@1081 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 11:49:07 +00:00
ramiro
65eb7efec8 Simplify the tests Makefil. Move all the defines and rules to a shared
makefile that can be included from different dirs.  Make creating tests in
subdirectories that depend on different libraries a lot easier and cleaner.


git-svn-id: svn://10.0.0.236/trunk@1080 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 11:48:15 +00:00
ramiro
1c87169b99 Update for edit support.
git-svn-id: svn://10.0.0.236/trunk@1079 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 11:47:01 +00:00
ramiro
a5b53e175e Make sure the client can properly link with motif 2.1 and gnu libc2 on
linux.  Also link with libBrokenLocale.so since locale support in
motif 2.1 with GLIBC is currently broken.


git-svn-id: svn://10.0.0.236/trunk@1078 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 06:36:27 +00:00
troy
7fb32b9f33 Added ComputeDesiredRect() to share some common code between DoResizeReflow()
and IncrementalReflow()


git-svn-id: svn://10.0.0.236/trunk@1077 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 04:57:29 +00:00
troy
000dc3a44d Made sure to set previous bottom margin when restoring reflow state
git-svn-id: svn://10.0.0.236/trunk@1075 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 04:37:56 +00:00
troy
0973be9e03 Fixed a problem with mY not being updated properly for a bottom
margin


git-svn-id: svn://10.0.0.236/trunk@1074 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 04:16:13 +00:00
troy
c15cd7b12f Removed ColumnFrame from the build
git-svn-id: svn://10.0.0.236/trunk@1073 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 04:00:37 +00:00
troy
295ea0d708 Changed body to create block pseudo-frame instead of a column pseudo frame,
and hooked up the reflow appended code


git-svn-id: svn://10.0.0.236/trunk@1072 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-03 03:51:48 +00:00
gagan
7cc7463c45 removed a not used file.
git-svn-id: svn://10.0.0.236/trunk@1068 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 02:35:41 +00:00
gagan
9c5d443da8 New modular cache files.
git-svn-id: svn://10.0.0.236/trunk@1067 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 02:29:42 +00:00
rjc
04940af93b More interface support.
git-svn-id: svn://10.0.0.236/trunk@1066 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 02:18:36 +00:00
kipp
51777f1e3b Set ascent/descent information so that vertical alignment works better
git-svn-id: svn://10.0.0.236/trunk@1065 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 02:04:00 +00:00
rjc
4016c14fb8 Better fix for Guha bustage... requires a prototype addition in net.h for NET_GetQuickURL() though. Removed #include "mkutils.h" from glue.h as its a private Netlib header file.
git-svn-id: svn://10.0.0.236/trunk@1062 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 01:28:02 +00:00
hyatt
f97af63ed5 Fixing an icon positioning bug.
git-svn-id: svn://10.0.0.236/trunk@1061 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 01:02:20 +00:00
rjc
a3b19be43f Fix Guha bustage by adding a #include "mkutils.h" in glue.h, adding appropriate include path(s) to libnet, and modifying Navigator.exp to export the NET_GetQuickUrl() function.
git-svn-id: svn://10.0.0.236/trunk@1060 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 01:00:06 +00:00
kipp
2c81902303 BR's are inline and cyan (if they are rendering)
git-svn-id: svn://10.0.0.236/trunk@1059 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:56:55 +00:00
kipp
292cd327b7 Spanked nsBlockFrame: newly rewritten, broken into two pieces (see nsLineLayout.h,.cpp for the line layout code)
git-svn-id: svn://10.0.0.236/trunk@1058 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:56:24 +00:00
kipp
127f91306b Fixed default background repeat bug
git-svn-id: svn://10.0.0.236/trunk@1057 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:55:29 +00:00
kipp
58d03021d1 Stub for WillDeleteNextInFlowFrame; call it during DeleteChildNextInFlows; fixed up ReflowChild spacemanager version to not mess with the availSize when talking to a space manager cognizant child
git-svn-id: svn://10.0.0.236/trunk@1056 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:55:11 +00:00
kipp
fa7caec542 Added WillDeleteNextInFlowFrame to allow for deletion pre-processing by container frames
git-svn-id: svn://10.0.0.236/trunk@1055 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:54:12 +00:00
hyatt
baa5c03f7f Fix to ensure that radio buttons and checkboxes are drawn with the proper background color.
Reviewed by Nisheeth.


git-svn-id: svn://10.0.0.236/trunk@1054 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:43:19 +00:00
hyatt
aa3283f7ca Fix for a crashing bug when the next layout element after a radio button or checkbox
is not text.


git-svn-id: svn://10.0.0.236/trunk@1053 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:42:50 +00:00
kipp
a756b3b6a4 Updated
git-svn-id: svn://10.0.0.236/trunk@1052 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:40:25 +00:00
kipp
de1607afa2 Fixed reference to unix_date
git-svn-id: svn://10.0.0.236/trunk@1051 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:35:17 +00:00
rpotts
95be00f510 Release the URL object to keep purity happy...
git-svn-id: svn://10.0.0.236/trunk@1049 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:01:41 +00:00
radha
d76280625c Fix for bug 107058. Increase the size of the executable name holder in
fe_showConference() from 32 to 1024 so that conference can be loaded
successfully.


git-svn-id: svn://10.0.0.236/trunk@1048 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 23:52:12 +00:00
montulli
51868dddec move bug fix over from lib/libnet
git-svn-id: svn://10.0.0.236/trunk@1047 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 23:30:33 +00:00
radha
0a89ef3908 Bug fix for 83769. Add MOZILLA_HOME/lib to the list of library_paths.
git-svn-id: svn://10.0.0.236/trunk@1046 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 23:27:04 +00:00
montulli
0143762f77 apply fixes from older netlib directory
git-svn-id: svn://10.0.0.236/trunk@1045 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 23:19:50 +00:00
montulli
c5c0900bcc move extcache function to public header
git-svn-id: svn://10.0.0.236/trunk@1044 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 23:19:03 +00:00
karnaze
66562cc5a4 added <input type=image>, fixed bug where multiple submit buttons sent data
git-svn-id: svn://10.0.0.236/trunk@1043 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 23:18:44 +00:00
montulli
96c4c39f1b move memcachefunc to public header
git-svn-id: svn://10.0.0.236/trunk@1041 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 23:16:57 +00:00
montulli
effff2047a fix include statement
git-svn-id: svn://10.0.0.236/trunk@1040 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 23:13:28 +00:00
hyatt
d54ff49f96 Fixing the column headers so that a BG image can be mapped to them. Also making
them respond to FG and BG color parameters.


git-svn-id: svn://10.0.0.236/trunk@1038 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 22:55:07 +00:00
hyatt
a0ecf0e3f2 Making the embedded title strip 256-color friendly and fixing a bug
where it always used white as its foreground color.


git-svn-id: svn://10.0.0.236/trunk@1037 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 22:54:07 +00:00
guha
3450d2ecd5 Use the new netgeturlquick that Gagan has given us
git-svn-id: svn://10.0.0.236/trunk@1034 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 22:42:37 +00:00
kostello
4d778817c3 Cleaned up getting attribute values
git-svn-id: svn://10.0.0.236/trunk@1031 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 21:55:36 +00:00
ftang
4e44f6e2e3 Add mapping for windows-1251 fon
git-svn-id: svn://10.0.0.236/trunk@1030 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 21:41:12 +00:00
ftang
9aa414d6de Check in locale independent form select/button handling change Approvaled by XFE owner
git-svn-id: svn://10.0.0.236/trunk@1029 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 21:40:38 +00:00
kostello
30896a4b70 Made SetStyleContext take the presentation context as a parameter
git-svn-id: svn://10.0.0.236/trunk@1028 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 20:45:15 +00:00
kostello
36357f1dc0 Made SetStyleContext take the presentation context as a parameter
Made DidSetStyleContext virtual, since we need to override the behavior in subclasses
Moved attribute setting logic from nsTableCell to nsTableCellFrame
Table Borders are being drawn again : )
Table Padding is being displayed


git-svn-id: svn://10.0.0.236/trunk@1027 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 20:44:55 +00:00
kostello
7cde78d07b Made SetStyleContext take the presentation context as a parameter
Made DidSetStyleContext virtual, since we need to override the behavior in subclasses


git-svn-id: svn://10.0.0.236/trunk@1026 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 20:43:42 +00:00
kostello
fdf9769d8a * Made SetStyleContext take the presentation context as a parameter
* Made DidSetStyleContext virtual, since we need to override the behavior in subclasses


git-svn-id: svn://10.0.0.236/trunk@1025 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 20:43:02 +00:00
hyatt
d8dec8ac2b Modified version of nathan wykes' history patch.
git-svn-id: svn://10.0.0.236/trunk@1023 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 20:40:25 +00:00
ftang
b8ccf4eb84 Add cyrillic font auto selection for x frontend.
Thanks for Serge Orlov (sorlov@con.mcst.ru) from the net.


git-svn-id: svn://10.0.0.236/trunk@1022 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 20:23:44 +00:00
spider
be13abc9d8 Add more Objects to be registered for the ApplicationShell
git-svn-id: svn://10.0.0.236/trunk@1021 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 20:13:51 +00:00
srinivas
2d0a84dad9 Set up pointers to the stack-pointer/frame-pointer words in the thread's
context structure. Useful for displaying thread stacks in the debugger.


git-svn-id: svn://10.0.0.236/trunk@1020 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 19:47:14 +00:00
srinivas
c7bab903e6 Initialize the outermost stack frame for the thread and setup pointers to the
stack-pointer/frame-pointer words in the thread's context structure.
Useful for displaying thread stacks in the debugger.


git-svn-id: svn://10.0.0.236/trunk@1019 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 19:45:13 +00:00
spider
824671d01d Adding global gmake config - common config for win and unix using gmake
git-svn-id: svn://10.0.0.236/trunk@1018 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 19:32:41 +00:00
dbragg
b0083fce34 Corrected depth after cd-ing into signed directory
git-svn-id: svn://10.0.0.236/trunk@1017 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 19:31:11 +00:00
racham
08b8e55802 Last line reffering to clicking on next button to reach account setup is removed - Bug 90536
git-svn-id: svn://10.0.0.236/trunk@1016 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 19:03:49 +00:00
racham
bebb497e7e Hypertext references modified & newentry Comm Setup - Bug 90536
git-svn-id: svn://10.0.0.236/trunk@1015 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 19:01:26 +00:00
racham
73ac93f943 Account set Shortcut button (double arrow) suppressed
git-svn-id: svn://10.0.0.236/trunk@1014 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 18:59:44 +00:00
racham
461d17e5cb Navigational changes of bugs 110410, 107811, 90536
git-svn-id: svn://10.0.0.236/trunk@1013 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 18:58:30 +00:00
hyatt
d77b9b3e90 Tweaks.
git-svn-id: svn://10.0.0.236/trunk@1012 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 18:58:01 +00:00
hyatt
0e22f337a2 Patch from Jim Ewald to keep Mozilla from crashing when "About Navigator..." is selected.
git-svn-id: svn://10.0.0.236/trunk@1011 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 18:53:04 +00:00
hyatt
5d0689fb40 Fix for a thrown assertion when NavCenter is collapsed.
git-svn-id: svn://10.0.0.236/trunk@1010 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 18:52:28 +00:00
hyatt
0041bd1c5e Making the tree view 256-color friendly. Adding more customizability options. Turned the dividers
between nodes off by default.


git-svn-id: svn://10.0.0.236/trunk@1009 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 18:33:47 +00:00
chouck
b0aa9d97ba Fix for casts inside PR_FREEIF() inspired by <rkl@csc.liv.ac.uk>
git-svn-id: svn://10.0.0.236/trunk@1007 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 17:44:19 +00:00
chouck
8927813180 Minor memory leak
git-svn-id: svn://10.0.0.236/trunk@1006 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 17:41:02 +00:00
spider
f2288f5c9d Fix UNIX build bustage on some systems where tweak_nspr gets appended to TARGET after inclusion of rules.mk, thus breaking nsinstall.
git-svn-id: svn://10.0.0.236/trunk@1003 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 17:11:13 +00:00
spider
3d3f3369ec Fix UNIX breakage when tweak_nspr is appended to TARGET on some systems (like mine)
git-svn-id: svn://10.0.0.236/trunk@1001 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 17:04:22 +00:00
timm
3acc4e4c39 changes for reggie 2 step
git-svn-id: svn://10.0.0.236/trunk@1000 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 10:37:35 +00:00
timm
578096c81b Removed 'Cancel' from ProgressApplet, allow CPGeneratorProgress to restart
git-svn-id: svn://10.0.0.236/trunk@999 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 10:31:14 +00:00
timm
18598552aa Add "RegSource=APL"
git-svn-id: svn://10.0.0.236/trunk@998 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 10:29:56 +00:00
timm
c0a11178ba changes for reggie 2 step
git-svn-id: svn://10.0.0.236/trunk@997 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 10:29:17 +00:00
timm
35a5f94651 new reggie 2 step templates
git-svn-id: svn://10.0.0.236/trunk@996 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 10:28:13 +00:00
timm
2e42d46cc6 new files for reggie 2 step
git-svn-id: svn://10.0.0.236/trunk@995 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 10:25:21 +00:00
mccabe
5332947894 Added #if defined ( SNI ) to a few existing #if tests, for compiling
on SINIX.


git-svn-id: svn://10.0.0.236/trunk@994 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 07:06:12 +00:00
rpotts
6bf27be3b9 nsSelectionRange.h is required by nsISelection.h
git-svn-id: svn://10.0.0.236/trunk@993 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 05:56:08 +00:00
rpotts
82e75d2589 nslayout.h is *all* lower case
git-svn-id: svn://10.0.0.236/trunk@992 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 05:55:11 +00:00
rpotts
ee491f23cc fixed bustage...
git-svn-id: svn://10.0.0.236/trunk@990 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 05:18:07 +00:00
rpotts
0f42d7d2f9 changed to use the new nsIURL support provided by netlib...
git-svn-id: svn://10.0.0.236/trunk@989 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 05:07:49 +00:00
rpotts
9fe6a0963b added netlib to the include path...
git-svn-id: svn://10.0.0.236/trunk@988 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 05:07:25 +00:00
rpotts
46cff9faab added the netlib import library...
git-svn-id: svn://10.0.0.236/trunk@987 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 05:00:44 +00:00
rpotts
a5b0db532d Do not delete the nsIInputStream. Call Release() instead. Reference counting is important!!
git-svn-id: svn://10.0.0.236/trunk@986 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 04:59:28 +00:00
rpotts
780c801dcc added netlib to the include path
git-svn-id: svn://10.0.0.236/trunk@985 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 04:56:26 +00:00
rpotts
f89777dd1d added new module export macro NS_NET
git-svn-id: svn://10.0.0.236/trunk@984 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 04:55:39 +00:00
rpotts
ac18334c10 removed nsURL.cpp from the build...
git-svn-id: svn://10.0.0.236/trunk@983 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 04:55:01 +00:00
rpotts
61406ea472 nsIURL.h and nsURL.cpp have been moved to mozilla\lib\libnet
git-svn-id: svn://10.0.0.236/trunk@982 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 04:53:42 +00:00
rpotts
88e2da5f3f the base module is now required by netlib :-(
git-svn-id: svn://10.0.0.236/trunk@979 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 04:52:51 +00:00
michaelp
4d46f24a23 InsertChild() with a zindex now does the right thing.
RemoveChild() now invalidates the area where the view was.
added NS_RELEASE() cleanup.


git-svn-id: svn://10.0.0.236/trunk@975 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 03:15:31 +00:00
michaelp
632082625a added NS_RELEASE() cleanup.
git-svn-id: svn://10.0.0.236/trunk@974 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 03:14:03 +00:00
michaelp
54953fa08e fixed various shutdown and linked list management bugs.
git-svn-id: svn://10.0.0.236/trunk@973 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 03:13:34 +00:00
michaelp
3a92d6d01c killed erroneous comments.
git-svn-id: svn://10.0.0.236/trunk@972 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 03:11:47 +00:00
michaelp
6053e4f001 added additional cleanup when shutting down the websidget so that the
ViwManager will actually go away.


git-svn-id: svn://10.0.0.236/trunk@971 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 03:11:13 +00:00
michaelp
3ff1be94d8 added missing NS_RELEASE() after calling GetWidget().
git-svn-id: svn://10.0.0.236/trunk@970 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 03:09:53 +00:00
michaelp
3ba2f75f2f added missing NS_RELEASE() after getting a window in the cursor setting code.
git-svn-id: svn://10.0.0.236/trunk@969 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 03:09:07 +00:00
michaelp
75e204180f fixed bug in state management of clip rects.
git-svn-id: svn://10.0.0.236/trunk@968 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 03:08:08 +00:00
montulli
6099321277 fix prototype
git-svn-id: svn://10.0.0.236/trunk@967 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 02:24:39 +00:00
spider
635953eb9a Fix crash if root view is not setup properly during window creation
git-svn-id: svn://10.0.0.236/trunk@966 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 02:18:39 +00:00
briano
f8066a66f9 Eliminated the confusing and pointless OS version macros.
git-svn-id: svn://10.0.0.236/trunk@965 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 02:04:06 +00:00
briano
cc294e1bae Converted the LINUX2_0 and MKLINUX references to just LINUX, and added danda's tweak from the OS/2 branch.
git-svn-id: svn://10.0.0.236/trunk@964 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 01:54:32 +00:00
mccabe
9b313afb01 Another place where error reporting hadn't caught up to 16-bit
character strings; added a js_DeflateString call.  Thanks to gcc 2.8.1
for catching this - it complained about "char format, different type
arg (arg 4)" - which means that it looked in the (printf-style) format
string and checked type against it.  Wow.


git-svn-id: svn://10.0.0.236/trunk@963 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 01:39:51 +00:00
hyatt
4d8ca6df3a Fix for a problem with the system color changing.
git-svn-id: svn://10.0.0.236/trunk@962 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 01:26:08 +00:00
spider
a9f9424d30 Code Cleanup...
git-svn-id: svn://10.0.0.236/trunk@961 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 01:16:44 +00:00
hyatt
97e25edfcc You can now click on the vertical bars to collapse the parent node.
git-svn-id: svn://10.0.0.236/trunk@960 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 00:59:05 +00:00
scullin
1a588fe0ab Added netcache requirement.
git-svn-id: svn://10.0.0.236/trunk@959 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 00:58:36 +00:00
mccabe
eeb3cc74f2 Restoring changes that were backed out because of a one-line error in
prmjtime.c.


git-svn-id: svn://10.0.0.236/trunk@958 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 00:22:06 +00:00
montulli
97038f9345 fix proto
git-svn-id: svn://10.0.0.236/trunk@957 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 00:04:12 +00:00
hyatt
45825818f9 Tree view can now show or hide tree connections (the bars).
git-svn-id: svn://10.0.0.236/trunk@956 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 23:52:37 +00:00
hyatt
736d044cd4 View now properly invalidated when colors/backgrounds/properties change.
git-svn-id: svn://10.0.0.236/trunk@955 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 23:52:20 +00:00
montulli
2b7baab535 Add unix makefiles and make a few include file tweaks for unix compilation
git-svn-id: svn://10.0.0.236/trunk@953 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 23:52:15 +00:00
hyatt
87eaefd3ce Fixed a bug where the navbar was using the tree view's bg image rather than
its own.


git-svn-id: svn://10.0.0.236/trunk@952 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 23:51:59 +00:00
hyatt
7d36db57e4 Patch from Sam Keeny on the net which fixes kiosk mode.
git-svn-id: svn://10.0.0.236/trunk@951 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 23:51:29 +00:00
montulli
c9c3400e81 fix layout .> lay
git-svn-id: svn://10.0.0.236/trunk@948 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 23:45:52 +00:00
montulli
e4b21d25b7 fix makefile
git-svn-id: svn://10.0.0.236/trunk@947 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 23:44:45 +00:00
kipp
ba7de39efe new
git-svn-id: svn://10.0.0.236/trunk@946 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 23:32:32 +00:00
montulli
3196bd8a06 make layout module name be lay instead of layout to be compatible with unix
git-svn-id: svn://10.0.0.236/trunk@945 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 23:30:20 +00:00
hyatt
25acb7bb52 Improvements to the tree control.
(1) Fixed inline editing so that the text field is properly cleared
	(2) Fixed marquee selection so that the first item is selected
	(3) Added the ability to customize column header colors and to
	customize the tree colors.  Can load a background image as well.
	(4) Added dividers
	(5) Removed the bitmap dependency when drawing lines and triggers.
	(6) Changed the way sorting looks.


git-svn-id: svn://10.0.0.236/trunk@944 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:15:42 +00:00
gagan
f2a00a0985 Added NET_GetURLQuick, for retrieving objects from cache before updating
them from the server. Use with caution, possibility of stale objects. See
bug #114363.


git-svn-id: svn://10.0.0.236/trunk@943 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:14:29 +00:00
hyatt
9241e5aa90 Fix for a memory trashing bug that occurred whenever the URL column was shown
in Aurora.  (Symptom was a damaged block on exit.)


git-svn-id: svn://10.0.0.236/trunk@942 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:13:55 +00:00
hyatt
6f53c14cb8 Changes to the outliner base class to cut down resource usage. (Bitmaps don't
have to be loaded by a derived class that knows how to draw its triggers.)


git-svn-id: svn://10.0.0.236/trunk@941 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:13:23 +00:00
hyatt
2304f2a909 Tweaks to get Aurora working with Composer.
git-svn-id: svn://10.0.0.236/trunk@940 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:12:40 +00:00
hyatt
869a60505e Removed the embedded button menu. Added the ability to customize the title bar's
appearance.


git-svn-id: svn://10.0.0.236/trunk@939 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:12:15 +00:00
hyatt
bf7202af7d Fixes to the way custom icons are handled in Aurora.
git-svn-id: svn://10.0.0.236/trunk@938 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:11:34 +00:00
hyatt
14134ff171 Fix for Bug #107284, need to monitor when the animation starts and stops.
git-svn-id: svn://10.0.0.236/trunk@937 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:10:33 +00:00
hyatt
488c5f3343 Fix for Bug#107284, need to monitor when the animation starts and stops.
git-svn-id: svn://10.0.0.236/trunk@936 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:09:21 +00:00
hyatt
2a18679c20 Enabling Aurora in composer.
git-svn-id: svn://10.0.0.236/trunk@934 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:08:44 +00:00
rickg
1beed254e9 minor improvement to backward propagation code
git-svn-id: svn://10.0.0.236/trunk@933 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 22:06:16 +00:00
montulli
b515fc55dd Add netlib in new location.
This is a (mostly) unmodified version of lib/libnet
broken up into functional areas
It should be binary compatible with the lib created by lib/libnet
but is now 10 libs.
The only substantial things changed in the version is the include files


git-svn-id: svn://10.0.0.236/trunk@931 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 20:53:59 +00:00
montulli
c1da74a63a export style header files
git-svn-id: svn://10.0.0.236/trunk@930 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 20:35:16 +00:00
montulli
e26c0b8b5c export layout.h into layout public include directory
git-svn-id: svn://10.0.0.236/trunk@929 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 20:33:35 +00:00
rickg
1253f68df0 got newlines working much better; Kipp still won't be happy, but the, he never is.
git-svn-id: svn://10.0.0.236/trunk@928 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 20:23:07 +00:00
wtc
e9b6d10641 Recognize SINIX-Y, the high-end version of SINIX.
(Patch provided by Sanjay Gupta <gupta@informix.com>.)


git-svn-id: svn://10.0.0.236/trunk@927 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 20:07:51 +00:00
peterl
7f15ff1ab6 update to new value class api
git-svn-id: svn://10.0.0.236/trunk@926 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:57:36 +00:00
peterl
4d90cd509c added new unit types, cleaned up api
git-svn-id: svn://10.0.0.236/trunk@925 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:56:39 +00:00
peterl
f102a97623 updated to new value class api
git-svn-id: svn://10.0.0.236/trunk@924 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:55:51 +00:00
peterl
9de9eff153 removed include
git-svn-id: svn://10.0.0.236/trunk@923 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:53:05 +00:00
peterl
3a74004725 changed api, added new units
git-svn-id: svn://10.0.0.236/trunk@922 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:52:46 +00:00
peterl
02e53b2bb5 changed to nsStylePosition to use nsStyleCoord
git-svn-id: svn://10.0.0.236/trunk@921 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:52:26 +00:00
peterl
c7ab938a26 removed style position value, added cursor auto
git-svn-id: svn://10.0.0.236/trunk@920 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:51:52 +00:00
peterl
7ff699f97c updated api, added new units
git-svn-id: svn://10.0.0.236/trunk@919 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:50:36 +00:00
peterl
e7ae6a57ec changed nsStypePosition to use nsStyleCoord
git-svn-id: svn://10.0.0.236/trunk@918 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:50:18 +00:00
wtc
9858b6150a Various makefile cleanups. On SCO OpenServer, the value of OS_ARCH
is now 'SCOOS' instead of 'SCO_SV'.  Also, we just use the cpp macro 'SCO'
and deleted the macro 'SCO_SV'.
In pr/src/md/unix/Makefile, we do not assemble the ultrasparc assembly
file if we are compiling with gcc.


git-svn-id: svn://10.0.0.236/trunk@917 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:36:53 +00:00
rods
e8df85316f initial
git-svn-id: svn://10.0.0.236/trunk@916 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 19:15:05 +00:00
rods
a31617a2db added selection classes to makefiles and added the selection object and methods to nsDocument and nsIDocument
git-svn-id: svn://10.0.0.236/trunk@913 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 18:21:59 +00:00
buster
10cf7de2c3 fixed method names
git-svn-id: svn://10.0.0.236/trunk@912 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 18:04:16 +00:00
buster
3a3e869ea0 added nsITableLayoutStrategy as the interface for objects that manage
table column balancing.  Implemented in BasicTableLayoutStrategy (HTML4-spec).
nsTableFrame instantiates a strategy depending on the compatibility mode.


git-svn-id: svn://10.0.0.236/trunk@911 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 17:57:09 +00:00
rpotts
68ec6fbca1 moved the include of windows.h inside of an XP_PC ifdef...
git-svn-id: svn://10.0.0.236/trunk@910 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 17:52:15 +00:00
spider
929d758f31 Fix UNIX build bustage
git-svn-id: svn://10.0.0.236/trunk@909 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 16:40:38 +00:00
rods
83895f1ffd turned off selection
git-svn-id: svn://10.0.0.236/trunk@908 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 16:13:01 +00:00
buster
ea4ac0c312 fixed a rounding error, and made tables quiet
git-svn-id: svn://10.0.0.236/trunk@907 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 15:20:23 +00:00
buster
130cc8acf5 at Peters request, I added NS_INT_PIXELS_TO_TWIPS and NS_FLOAT_PIXELS_TO_TWIPS
git-svn-id: svn://10.0.0.236/trunk@906 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 15:11:33 +00:00
hshaw
d15d7a4b72 Back out changes which are breaking builds (at request of mccabe)
git-svn-id: svn://10.0.0.236/trunk@903 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 08:18:42 +00:00
hshaw
db8e901896 Back out changes which are breaking builds (at request of mccabe)
git-svn-id: svn://10.0.0.236/trunk@902 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 08:10:05 +00:00
rickg
ce4b76d61a huge improvements to parser
git-svn-id: svn://10.0.0.236/trunk@901 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 05:56:39 +00:00
rickg
d7a05d60d4 minor tweak to iterator
git-svn-id: svn://10.0.0.236/trunk@900 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 05:55:51 +00:00
warren
4300ed4358 Changes should have been on the branch -- reverted.
git-svn-id: svn://10.0.0.236/trunk@898 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 05:28:19 +00:00
warren
a7bc3044d8 Changes to build with MOZ_OJI (and not MOZ_JAVA).
git-svn-id: svn://10.0.0.236/trunk@897 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 04:27:29 +00:00
mccabe
4747d02fa9 Changed pr[mj]time.c to just return 0 for failure in FormatTime, and
changed jsdate.c to detect failure and default to using toString in
place of toLocaleString whenever FormatTime fails.


git-svn-id: svn://10.0.0.236/trunk@895 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 03:51:26 +00:00
montulli
177e6468b9 fix extension labels
Thanks to: Paul Chek <pchek@ziplink.net> for the fix


git-svn-id: svn://10.0.0.236/trunk@894 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 02:54:34 +00:00
michaelp
228526d605 minor tweaks to UpdateView() in view manager. if you want to invalidate a whole
view, pass in nsnull for the nsRegion param.
viewmanager InsertChild() above/below now does the right thing.
fixed cujo's table thingie.


git-svn-id: svn://10.0.0.236/trunk@893 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 02:41:14 +00:00
sar
d271dff890 Taking out the stuff not relevant to the public tree...
All references to MOZ_JAVAVER deleted (java is included in the MozillaProductWin module)
The other branch tag references have been deleted (dbm is pulled as part of the module, security
    and coreconf have no relevance in the public tree)
pull_all is only defined as pull_client_source_product (ifdef for MOZ_MEDIUM was removed)
pull_security and pull_client were removed
build_ldap was removed


git-svn-id: svn://10.0.0.236/trunk@892 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 02:16:43 +00:00
gagan
dd67cf36ef Fixed the authentication bug #114532 which resulted in an incorrect entry
in the authentication list.


git-svn-id: svn://10.0.0.236/trunk@891 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 01:55:10 +00:00
ramiro
9310bbbb06 Add an extra sanity check on the children argument.
git-svn-id: svn://10.0.0.236/trunk@890 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 01:48:30 +00:00
gagan
c093c6c84e Corrected a misspelled #include. Thanks Sanjay Gupta (gupta@informix.com)
git-svn-id: svn://10.0.0.236/trunk@889 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 01:47:21 +00:00
ramiro
45e962ceae Fix crash on startup in mozilla Personal Toolbar. Make the recursive
children killing function more robust.


git-svn-id: svn://10.0.0.236/trunk@888 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 01:39:28 +00:00
buster
4744264a52 lots of pre-conditions and asserts added
fixed a bug in layout having to do with sizing cells in columns that are spanned into


git-svn-id: svn://10.0.0.236/trunk@887 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 00:27:59 +00:00
mccabe
246b37fa96 Fixes for getting the timezone string fot toString, and for asking for
a localized string from the os for toLocaleString.  The time struct
used to interface to the os time-formatting functions only takes a
16-bit year, so we map to an equivalent year (for getting the timezone
string) or clamp for years outside that range.


git-svn-id: svn://10.0.0.236/trunk@886 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 00:27:43 +00:00
mccabe
e6a6db8cd7 Removed some unused constants.
git-svn-id: svn://10.0.0.236/trunk@885 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 00:14:07 +00:00
mccabe
1912e0d8e7 Removed some unused lines related to jsdate.c.
git-svn-id: svn://10.0.0.236/trunk@884 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 00:11:31 +00:00
ftang
67b6544f6f Fix uTable change suggestion from qupta@informix.com (forwarded by
Wan-Teh Chang)


git-svn-id: svn://10.0.0.236/trunk@883 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 00:02:20 +00:00
michaelp
02194e7102 Arghh ....
git-svn-id: svn://10.0.0.236/trunk@882 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 23:57:32 +00:00
mccabe
6a0e192f5f ECMA-conformance fix to (95045) - added 'enum' and 'debugger' as
reserved words, and changed the versioning check that previously
applied to 'export' to accept any 'ecma' version... which means that
export becomes a keyword for the default version.  Does this mean
we'll need to unreserve all the java keywords?  Not sure we want to do
that...


git-svn-id: svn://10.0.0.236/trunk@881 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 23:57:20 +00:00
mccabe
6c9a40d28d Fixed error message associated with trying to use a keyword as an
identifier; it was only printing the first character of the
identifier, because it expected 8-bit chars, and was being called with
a 16-bit representation of the offending keyword.


git-svn-id: svn://10.0.0.236/trunk@880 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 23:52:40 +00:00
spider
33154649fc Fix yet another build bustage by maio ... windows.h was removed somewhere....
git-svn-id: svn://10.0.0.236/trunk@879 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 23:49:38 +00:00
spider
2d279ab608 Fix build bustage of non-existent header file
git-svn-id: svn://10.0.0.236/trunk@878 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 23:23:40 +00:00
spider
8b28e5c284 Modifications to support new nsIApplicationShell interface
git-svn-id: svn://10.0.0.236/trunk@877 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 22:43:33 +00:00
peterl
db7ba47330 removed unneeded destructors
cleaned up some initial values


git-svn-id: svn://10.0.0.236/trunk@876 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 21:06:15 +00:00
peterl
b0cae37787 added normal value
git-svn-id: svn://10.0.0.236/trunk@875 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 21:05:28 +00:00
peterl
e0d215699f removed unneeded destructors
git-svn-id: svn://10.0.0.236/trunk@874 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 21:04:57 +00:00
rpotts
8b6c6d6ca6 added windows.h since NSPR no longer includes it...
git-svn-id: svn://10.0.0.236/trunk@873 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 20:47:18 +00:00
dcone
308ff813eb Updated nsImageWin and gfx bit test for composite functionality
git-svn-id: svn://10.0.0.236/trunk@872 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 20:28:16 +00:00
rpotts
b174335bfa removed eval(PRBool,...) function since it clashes with the eval(PRInt32,...) version
git-svn-id: svn://10.0.0.236/trunk@871 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 20:10:16 +00:00
rpotts
5c411b7d88 added include of string.h since NSPR no longer includes windows.h which pulled it in...
git-svn-id: svn://10.0.0.236/trunk@870 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 20:04:28 +00:00
rpotts
9650c7aa2b Added windows.h since NSPR no longer includes it...
git-svn-id: svn://10.0.0.236/trunk@869 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 20:01:24 +00:00
kmcclusk
27415284fe Added events for left and right mouse button double clicks
git-svn-id: svn://10.0.0.236/trunk@868 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 19:59:06 +00:00
rpotts
d1ddb05cac added windows.h since it is no longer provided by NSPR
git-svn-id: svn://10.0.0.236/trunk@867 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 19:57:57 +00:00
rpotts
6c30425beb PRBool is now a PRIntn which caused conflicts between member functions mangled on PRInt32 vs PRBool. To fix the build I removed the PRBool versions...
git-svn-id: svn://10.0.0.236/trunk@866 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 19:52:45 +00:00
rpotts
67a5df01f5 added include of windows.h since NSPR no longer pulls it in...
git-svn-id: svn://10.0.0.236/trunk@865 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 19:37:33 +00:00
rpotts
a2f6cdb246 added #include windows.h since NSPR no longer includes it...
git-svn-id: svn://10.0.0.236/trunk@862 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 19:25:27 +00:00
kostello
e8e9dbc69b Fixed Unix Build Error -- nsCoord.h must be case sensitive
git-svn-id: svn://10.0.0.236/trunk@858 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 18:39:30 +00:00
guha
df4c7e0fc5 Remove some files from CVS
(the old xml parser was confusing a lot of people
even though it wasn't being used.)


git-svn-id: svn://10.0.0.236/trunk@855 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 18:00:31 +00:00
karnaze
209c861a0e ifdefed MapAttributesInto
git-svn-id: svn://10.0.0.236/trunk@853 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 17:27:44 +00:00
karnaze
0a07a4bf82 ifdefed style sizing code
git-svn-id: svn://10.0.0.236/trunk@852 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 17:14:24 +00:00
rods
f71616b8fa initial check in
git-svn-id: svn://10.0.0.236/trunk@851 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 17:08:57 +00:00
karnaze
7fe4b14c5d minor cleanup, reinstate css sizing.
git-svn-id: svn://10.0.0.236/trunk@850 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 16:30:55 +00:00
ramiro
9d1d9fed95 The reallyUpdateRoot() call seems to be crashing the browser for some people.
I cannot reproduce the problem yet.  Im working on finding a real solution,
but I dont want the browser to crash on startup on the next mozilla release,
so im commenting it out.


git-svn-id: svn://10.0.0.236/trunk@849 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 14:45:52 +00:00
ramiro
7a0330fe5f Dont update the menu accent if the widget is dead. Fixes core dump in
Mozilla that occurs on filing of bookmarks.


git-svn-id: svn://10.0.0.236/trunk@848 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 11:14:05 +00:00
nisheeth
05287d1e22 - Added #ifdef DOM to layout.h
- Backing out some changes in layout.c that should not have gotten checked in...


git-svn-id: svn://10.0.0.236/trunk@847 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 10:47:20 +00:00
nisheeth
e3b2621102 Added lm_trans.c to Unix makefile...
git-svn-id: svn://10.0.0.236/trunk@846 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 10:45:43 +00:00
nisheeth
a42fcb9ca8 Added layspan.c in mozilla/lib/layout, lm_span.c and lm_trans.c in mozilla/lib/libmocha.
git-svn-id: svn://10.0.0.236/trunk@845 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 10:20:16 +00:00
nisheeth
5db071e76e Touchdown of MARINER_DOM_BRANCH.
git-svn-id: svn://10.0.0.236/trunk@841 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 10:13:27 +00:00
nisheeth
c4bd436721 Touchdown of MARINER_DOM_BRANCH...
git-svn-id: svn://10.0.0.236/trunk@840 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 10:08:50 +00:00
nisheeth
7960424738 Warning fixes. Thanks to Rick Osborne (rick@spacey.net).
git-svn-id: svn://10.0.0.236/trunk@839 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 08:41:05 +00:00
nisheeth
010ada78cf Warning fix. Thanks to tenthumbs@cybernex.net.
git-svn-id: svn://10.0.0.236/trunk@838 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 08:39:56 +00:00
jsw
ad8a2bf568 get the damn function name right
git-svn-id: svn://10.0.0.236/trunk@837 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 08:38:27 +00:00
nisheeth
4dc19bf8d2 Added access path for jscompat.h
git-svn-id: svn://10.0.0.236/trunk@835 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 08:05:20 +00:00
nisheeth
30f99a45f9 Added export of CL_CompositeNow, CL_GetCompositorOffscreenDrawing, CL_SetCompositorOffscreenDrawing and CL_UpdateDocumentRect for XML changes.
git-svn-id: svn://10.0.0.236/trunk@833 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 07:50:37 +00:00
toshok
2ed0b8e3af REQUIRE js
git-svn-id: svn://10.0.0.236/trunk@832 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 07:09:33 +00:00
ftang
02d2f8e308 fix CP1251 viewing problem by using 8859_5 font. We may need to
add better support (decide which font to use  in the init time instead of
compile time) in the future.


git-svn-id: svn://10.0.0.236/trunk@831 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 06:09:25 +00:00
mccabe
85c8006a9f Added some #ifdef JAVA guards to remove compile warnings.
Thanks go to rick@spacey.net (Rick Osborne) for finding these.


git-svn-id: svn://10.0.0.236/trunk@828 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 02:39:43 +00:00
michaelp
c7fe1544fe more cliprect api changes...
git-svn-id: svn://10.0.0.236/trunk@827 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 02:24:07 +00:00
wtc
705b2825f3 Added alpha and x86 binaries and the README file to
buildtools/windows/bin.


git-svn-id: svn://10.0.0.236/trunk@825 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 01:35:56 +00:00
troy
a10eab0307 Changed space manager to return a list of available and unavailable trapezoids
git-svn-id: svn://10.0.0.236/trunk@821 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:58:16 +00:00
pinkerton
241c685bdb also send the bookmark drag flavor so that other applications (dragThing, etc) can get both the url and the title (rev sdagley, appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@820 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:57:11 +00:00
pinkerton
bdde74a642 remove the comment about how we're going to pull the bookmark drag flavor, since we're not. (rev sdagley, appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@819 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:56:31 +00:00
ftang
2b7a3e4a9a Check in additional KOI8-R font registry name. Thanks for
sorlov@con.mcst.ru
from the net


git-svn-id: svn://10.0.0.236/trunk@818 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:56:23 +00:00
ftang
c208a630a8 fix ISO8859-5,7,9 KOI8-R Name entity problem
git-svn-id: svn://10.0.0.236/trunk@813 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:36:25 +00:00
wtc
718a40bb0a ReliantUNIX is renamed SINIX.
git-svn-id: svn://10.0.0.236/trunk@811 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:08:32 +00:00
peterl
9bd123cf4d changed nsStyleText to use nsStyleCoord
git-svn-id: svn://10.0.0.236/trunk@810 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 23:57:01 +00:00
peterl
60016b76aa removed inheritance from style mapping
changed nsStyleText to use nsStyleCoord


git-svn-id: svn://10.0.0.236/trunk@809 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 23:56:28 +00:00
wtc
8d1bc32fbe Got rid of the LINUX1_2 and LINUX2_0 macros. I hope that this will
make building on 2.1.x easier.  In case we need to distinguish between
different versions of Linux, we will try to use feature-based macros
as opposed to version-based macros.
Files changed: Linux.mk, _linux.h, _pth.h, prnetdb.c, and ptthread.c.


git-svn-id: svn://10.0.0.236/trunk@808 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 23:54:29 +00:00
peterl
0645caeec0 added nsStyleCoord
git-svn-id: svn://10.0.0.236/trunk@807 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 23:54:06 +00:00
peterl
0a122c5b8d added subclass hook for style post-processing
git-svn-id: svn://10.0.0.236/trunk@806 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 23:25:07 +00:00
kostello
ac5c637ccd Call to RecalcLayoutData
git-svn-id: svn://10.0.0.236/trunk@805 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 22:44:05 +00:00
wtc
54f4d85fe1 Merged NSPRPUB_19980421_BRANCH to the main trunk.
git-svn-id: svn://10.0.0.236/trunk@803 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 22:43:48 +00:00
kostello
c14bf79c47 Updated table to process cellpadding, cellspacing and background color
attributes


git-svn-id: svn://10.0.0.236/trunk@802 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 22:43:19 +00:00
kostello
d534119b9b Name changed from ResetColumnLayoutData to RecalcColumnLayoutData
git-svn-id: svn://10.0.0.236/trunk@801 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 22:41:25 +00:00
kostello
5c08b8b7ff Added SetTableForChildren to set the children's table instance variable
git-svn-id: svn://10.0.0.236/trunk@800 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 22:40:22 +00:00
kostello
0d5d1cb20d Added MapHTMLBorderStyle, MapBorderMarginPaddingInto
git-svn-id: svn://10.0.0.236/trunk@799 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 22:34:16 +00:00
sdagley
9eb50e034c Added files needed for nisheeth (layprobe.c) and brade (editor.r)
git-svn-id: svn://10.0.0.236/trunk@798 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 22:10:41 +00:00
rjc
02bc22984a Workspace interface customization support.
git-svn-id: svn://10.0.0.236/trunk@797 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 21:51:48 +00:00
nisheeth
1b734a3e51 Added layprobe.c to ns/lib/layout.
git-svn-id: svn://10.0.0.236/trunk@796 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 21:43:22 +00:00
nisheeth
ecabf21450 Adding stubs for the Layout Probe API.
git-svn-id: svn://10.0.0.236/trunk@794 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 21:41:20 +00:00
slamm
1a4fd9ef7d Fix shutdown bug. Set NavCenter to really close, not just hide. This fixes the problem where you are unable to exit after opening NavCenter.
git-svn-id: svn://10.0.0.236/trunk@791 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 21:04:36 +00:00
pinkerton
2f7304b5ed Doh! I removed the wrong icons last time (I removed hilighted instead of selected). Put the right ones back in and take the wrong ones out. (appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@790 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 20:59:06 +00:00
slamm
f65d505ecc Add a few more EDITOR ifdefs
git-svn-id: svn://10.0.0.236/trunk@789 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 20:59:01 +00:00
troy
31fd94622e Added an XXX to CreateFrame() as a reminder that we're resolving the
style context more than once...


git-svn-id: svn://10.0.0.236/trunk@788 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 20:58:46 +00:00
pinkerton
64f42dadfe Fix 2 problems: cells with no data no longer show garbage as tooltip. Cells with separator no longer show tooltip. (rev sdagley, appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@787 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 20:54:44 +00:00
kmcclusk
533b497a4d Fixed textwidget refresh problem.
Added AutoErase method to nsWindow.cpp, nsTextHelper.cpp and nsListBox.cpp


git-svn-id: svn://10.0.0.236/trunk@785 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 19:24:52 +00:00
michaelp
c7d6535311 changed clipping apis so that they take parameters in the same form that
clipping is expressed in layer tags and css-p.
added support for setting transforms in layers (untested and very likely
problematic if scales are applied).
changed event handling and painting apis in views to support inherited
visibility.
all parameters passed into view.Init() are now properly stored in the view.
view opacity apis are now real.


git-svn-id: svn://10.0.0.236/trunk@784 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 19:16:24 +00:00
karnaze
1096b080eb fix submit crash in nsWindow; more form control functionality
git-svn-id: svn://10.0.0.236/trunk@780 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 18:59:38 +00:00
donm
27e88123d1 removing Henrit's jsfile.c and jsfile.h to fix unix build bustage.
git-svn-id: svn://10.0.0.236/trunk@776 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 18:00:54 +00:00
donm
0a9b29052c backing out Henrit's changes to fix build bustage.
git-svn-id: svn://10.0.0.236/trunk@775 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 18:00:00 +00:00
sar
55674ea59e jsfile doesn't compile on unix. Backing out the changes that henrit put it
git-svn-id: svn://10.0.0.236/trunk@773 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 17:57:43 +00:00
sar
1ca149714f reapply henrit's change since we can add it to unix as well.
git-svn-id: svn://10.0.0.236/trunk@771 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 17:23:08 +00:00
donm
d65fb3806c fixing unix build bustage.
git-svn-id: svn://10.0.0.236/trunk@770 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 17:19:14 +00:00
sar
6b83a1438a backing out henrit's changes
git-svn-id: svn://10.0.0.236/trunk@769 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 17:02:22 +00:00
kipp
5e19847a05 Correctly compute width of body frame
git-svn-id: svn://10.0.0.236/trunk@768 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 16:12:54 +00:00
kipp
9c8261c5cf Allow for optional commas between clip rect elements
git-svn-id: svn://10.0.0.236/trunk@767 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 15:24:44 +00:00
kipp
c1f559e678 updated
git-svn-id: svn://10.0.0.236/trunk@766 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 15:24:20 +00:00
henrit
71ce3e732d Adding a first version of the js File object. Developped and (slightly) tested on win32 only.
git-svn-id: svn://10.0.0.236/trunk@765 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 11:36:17 +00:00
jsw
254ef44dce take a wild assed guess at fixing the build
git-svn-id: svn://10.0.0.236/trunk@755 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 09:09:49 +00:00
jsw
41ebd3a6c6 get the name right
git-svn-id: svn://10.0.0.236/trunk@754 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 07:54:14 +00:00
jsw
e9dc89c86a get type correct for socket
git-svn-id: svn://10.0.0.236/trunk@749 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 07:53:25 +00:00
jsw
4e0b870651 move xp_sec to secnav
git-svn-id: svn://10.0.0.236/trunk@748 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 07:48:02 +00:00
mccabe
83d55f638a Added public license header.
git-svn-id: svn://10.0.0.236/trunk@747 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 07:33:09 +00:00
mccabe
a9f37501c2 Propagated some #defines to work with irix 6.3 as well as 6.2.
(HAVE_ALIGNED_DOUBLES)


git-svn-id: svn://10.0.0.236/trunk@746 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 06:35:55 +00:00
mccabe
734ff77d30 Corrected BUILD_OPT oversight where a = instead of a += override the
OPTIMIZER flag in the included config/*.mk file.


git-svn-id: svn://10.0.0.236/trunk@745 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 06:06:09 +00:00
atotic
8f08a459c3 Fixing the -ko flag
git-svn-id: svn://10.0.0.236/trunk@744 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:44:39 +00:00
atotic
fb18d0de3b Fixing the -ko flag
git-svn-id: svn://10.0.0.236/trunk@743 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:23:29 +00:00
atotic
7f02c6b2dc Fixing the -ko flag
git-svn-id: svn://10.0.0.236/trunk@742 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:17:41 +00:00
jsw
02e32f5307 remove xp_md5 and xp_sec
git-svn-id: svn://10.0.0.236/trunk@740 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:17:37 +00:00
jsw
6e09423583 opaque sec info
git-svn-id: svn://10.0.0.236/trunk@739 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:16:06 +00:00
jsw
e9e8e3bfd6 opaque sec info
proxy tunnel changes


git-svn-id: svn://10.0.0.236/trunk@738 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:15:16 +00:00
jsw
52d4826009 move xp_sec to secnav
git-svn-id: svn://10.0.0.236/trunk@737 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:13:41 +00:00
sudu
2aa827f81a Changed libjar to refer to dist
git-svn-id: svn://10.0.0.236/trunk@736 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:09:18 +00:00
sudu
2f1674a804 Build freenav only when NO_SECURITY is set
git-svn-id: svn://10.0.0.236/trunk@735 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:09:15 +00:00
sudu
835f36be2c Cleaned up NO_SECURITY builds and removed references into product area
git-svn-id: svn://10.0.0.236/trunk@734 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 05:09:11 +00:00
atotic
570baa3b07 Fixing the -ko flag
git-svn-id: svn://10.0.0.236/trunk@733 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 04:59:01 +00:00
atotic
3461c2d197 Fixed the rcs flag to -kb
git-svn-id: svn://10.0.0.236/trunk@732 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 04:39:29 +00:00
troy
2e880e58d9 Added mClip and mClipFlags to nsStylePosition
git-svn-id: svn://10.0.0.236/trunk@730 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 03:21:18 +00:00
michaelp
5173d3062e added back code that i killed in the previous checkin, but now it works.
git-svn-id: svn://10.0.0.236/trunk@729 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 02:05:46 +00:00
mccabe
c9d08d5bba Added disambiguating braces to appease gcc 2.8.1 warning.
git-svn-id: svn://10.0.0.236/trunk@728 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 01:22:19 +00:00
ramiro
a42db46a75 Unhardcode the motif lib on x86 linux. Replace /usr/X11R6/lib/libXm.a
with -L/usr/X11R6/lib -lXm.


git-svn-id: svn://10.0.0.236/trunk@727 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 01:22:18 +00:00
rjc
e7285013df Better "autoOpen" support.
git-svn-id: svn://10.0.0.236/trunk@726 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 01:15:49 +00:00
michaelp
c0821d3557 fixed bug i just introduced (by removing code i just added)!
git-svn-id: svn://10.0.0.236/trunk@725 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 01:00:00 +00:00
michaelp
da59bfa4f4 if a view does not have a clip, then we set the clip in the rc to
the bounds for the view.


git-svn-id: svn://10.0.0.236/trunk@724 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 00:42:58 +00:00
ramiro
48ea685689 Add void to baggage prototypes. Fix from derkjan@reli.student.utwente.nl
(Derkjan de Haan) to make mozilla build with egcs.


git-svn-id: svn://10.0.0.236/trunk@723 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 00:28:04 +00:00
michaelp
e0f3643ffe added support for setting clip rects in views.
removed paint_all_kids().
damage rect passed to frames is now properly translated into
coord space of containing view.


git-svn-id: svn://10.0.0.236/trunk@721 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 23:51:57 +00:00
buster
a762e593b2 sped up nsBlockFrame significantly by reducing the number of times we resolve style by almost 50% on initial layout
(percentage savings go way up as the window is resized)


git-svn-id: svn://10.0.0.236/trunk@720 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 22:33:55 +00:00
hshaw
d7a904b7dd Update XFEPRIVDIR to point to ns instead of ns_priv
git-svn-id: svn://10.0.0.236/trunk@719 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:34:30 +00:00
kipp
2344c29ea1 Use PERCENT instead of PCT in style constants; udpated usage of vertical alignment information in nsStyleText
git-svn-id: svn://10.0.0.236/trunk@717 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:26:48 +00:00
kipp
80f69fc4e8 Implement all of the text styles; update to use PERCENT in naming of style constants
git-svn-id: svn://10.0.0.236/trunk@716 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:26:06 +00:00
kipp
1098ed5ee8 Use PERCENT instead of PCT in style constants; implement vertial alignment for length values and percent values
git-svn-id: svn://10.0.0.236/trunk@715 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:24:33 +00:00
kipp
b4ea1954f0 Normalize structure member names
git-svn-id: svn://10.0.0.236/trunk@714 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:24:06 +00:00
kipp
4ebc780037 Use PERCENT style constants instead of PCT
git-svn-id: svn://10.0.0.236/trunk@713 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:22:06 +00:00
kipp
0d60b06b51 Init nsStyleText values using new nsStyleValue
git-svn-id: svn://10.0.0.236/trunk@712 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:21:42 +00:00
scullin
845c8cb874 Post mozilla move raptor.mk
git-svn-id: svn://10.0.0.236/trunk@711 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:20:46 +00:00
kipp
57a438ad02 Cleaned up percent names
git-svn-id: svn://10.0.0.236/trunk@710 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:20:24 +00:00
kipp
81bd8188cf Added nsStyleValue and then updated nsStyleText to use it
git-svn-id: svn://10.0.0.236/trunk@709 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 21:19:45 +00:00
cyeh
a8c8d2732c change top-level module to MozillaSource (remove "Product" from name)
git-svn-id: svn://10.0.0.236/trunk@708 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 20:45:13 +00:00
sar
8c37edda44 making the switch ns->mozilla for dir name
git-svn-id: svn://10.0.0.236/trunk@704 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 19:21:40 +00:00
hshaw
a1b7899688 Add jar to REQUIRES and remove references to lm_crypt.c and lm_pk11.c for security build cleanup
git-svn-id: svn://10.0.0.236/trunk@703 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 19:07:29 +00:00
cyeh
7f04c6580f missed this preflight check
git-svn-id: svn://10.0.0.236/trunk@702 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 18:16:04 +00:00
cyeh
277c009e37 change to new module to pull source with root of "mozilla"
git-svn-id: svn://10.0.0.236/trunk@701 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 18:09:13 +00:00
cyeh
ba9e74f22d committing modules with mozilla as root directory
git-svn-id: svn://10.0.0.236/trunk@700 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 17:51:11 +00:00
cyeh
8c7c6df58e renaming root of the repository to "mozilla"
git-svn-id: svn://10.0.0.236/trunk@699 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 17:29:58 +00:00
rods
5f2720fb90 started adding selection
git-svn-id: svn://10.0.0.236/trunk@698 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 16:44:52 +00:00
kipp
09357d5e45 new
git-svn-id: svn://10.0.0.236/trunk@697 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 15:43:09 +00:00
kipp
90530086bd Removed hack
git-svn-id: svn://10.0.0.236/trunk@696 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 15:39:58 +00:00
cmanske
5e9b1def1f Removed field not needed in table cell data. Removed code not needed for growable array
git-svn-id: svn://10.0.0.236/trunk@695 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 15:04:05 +00:00
cmanske
46aec995e2 More table editing bug fixes. Copy/Paste arbitrary selected cell sets and deleting columns, rows fixed. More resizing bugs fixed.
git-svn-id: svn://10.0.0.236/trunk@694 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 14:37:46 +00:00
cmanske
df94b24da9 Added support to add/remove rows/columns during table creation. Fixed problem with HRULE and other object properties (rt. mouse popup menu)
git-svn-id: svn://10.0.0.236/trunk@691 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 14:36:37 +00:00
troy
db1845c8b5 Added function to set a trapezoid's shape based on a rectangle
git-svn-id: svn://10.0.0.236/trunk@690 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-27 03:35:05 +00:00
brade
b5f254d11d make grippy pane hilites valid
git-svn-id: svn://10.0.0.236/trunk@689 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 22:43:12 +00:00
brade
b8fd8f281f table dialog changes from gbrown; center dlogs over parent window (not main screen)
git-svn-id: svn://10.0.0.236/trunk@687 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 22:40:39 +00:00
brade
eb14822c97 table dialog changes from gbrown
git-svn-id: svn://10.0.0.236/trunk@686 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 22:40:00 +00:00
kipp
94a19a4f91 Get cursor properly
git-svn-id: svn://10.0.0.236/trunk@685 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 03:47:53 +00:00
kipp
d57f23b67d Added in cursor and direction properties
git-svn-id: svn://10.0.0.236/trunk@684 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 03:47:37 +00:00
kipp
72f5772d0f Add in cursors
git-svn-id: svn://10.0.0.236/trunk@683 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 03:47:06 +00:00
kipp
582efa0e7b Always return ibeam cursor for text
git-svn-id: svn://10.0.0.236/trunk@682 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 03:46:51 +00:00
kipp
403b3f8d18 Added inherit for direction style
git-svn-id: svn://10.0.0.236/trunk@681 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 03:46:26 +00:00
kipp
1cc6c90aec Made it build on IRIX
git-svn-id: svn://10.0.0.236/trunk@680 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 03:21:14 +00:00
kipp
51ccce8969 Fixed compiler bugs/warnings
git-svn-id: svn://10.0.0.236/trunk@679 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 03:13:20 +00:00
briano
e11dbeff37 Got rid of a minor redundancy, and added support for 2.1.x kernels.
git-svn-id: svn://10.0.0.236/trunk@678 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 03:07:41 +00:00
kipp
902295a137 Fix porting bugs - made it compile on IRIX
git-svn-id: svn://10.0.0.236/trunk@677 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 02:59:29 +00:00
kipp
5e5e6dffdb Added keywords for cursors and direction
git-svn-id: svn://10.0.0.236/trunk@676 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 02:59:02 +00:00
kipp
d267b76845 Added missing newline
git-svn-id: svn://10.0.0.236/trunk@675 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 02:57:39 +00:00
kipp
797d9351dc Added trailing newline
git-svn-id: svn://10.0.0.236/trunk@674 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-26 02:57:05 +00:00
rickg
7b8d45d8c6 added parse-system debugging hooks
git-svn-id: svn://10.0.0.236/trunk@672 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 23:10:51 +00:00
rickg
8a929464d6 update
git-svn-id: svn://10.0.0.236/trunk@671 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 19:46:11 +00:00
rickg
2c5f8ffeb3 propagation is now online, aren't DTD's cool?
git-svn-id: svn://10.0.0.236/trunk@670 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 19:45:14 +00:00
rickg
d682c47b10 added Append(unichar)
git-svn-id: svn://10.0.0.236/trunk@669 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 19:44:35 +00:00
kipp
1d81050a79 new keywords
git-svn-id: svn://10.0.0.236/trunk@668 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 19:11:20 +00:00
kipp
909bba7724 Port to new nsIDocument API
git-svn-id: svn://10.0.0.236/trunk@666 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:49:06 +00:00
kipp
b87f9199b6 Port to removal of nsStyleMolecule
git-svn-id: svn://10.0.0.236/trunk@665 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:48:48 +00:00
kipp
93894c3b99 Fixed a memory problem; implement align and border properties
git-svn-id: svn://10.0.0.236/trunk@664 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:48:30 +00:00
kipp
e9b3f7100f Port to removal of nsStyleMolecule; add in border support
git-svn-id: svn://10.0.0.236/trunk@663 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:46:55 +00:00
kipp
d7fe529d84 Added in nsCSSDisplay; cleaned up text align; moved float, clear and display out of position and into display
git-svn-id: svn://10.0.0.236/trunk@662 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:45:22 +00:00
kipp
2f03c700ff Implement borders, padding, text-align properties, display, etc. Fixed bug in list inheritance
git-svn-id: svn://10.0.0.236/trunk@661 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:44:55 +00:00
kipp
24bf916e3f Updated to use new style constants
git-svn-id: svn://10.0.0.236/trunk@660 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:44:17 +00:00
kipp
d3e2cf6fab Added support for more properties
git-svn-id: svn://10.0.0.236/trunk@659 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:43:42 +00:00
kipp
d5d817ead1 updated
git-svn-id: svn://10.0.0.236/trunk@658 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:41:41 +00:00
kipp
c4d42de7a5 Stop using nsStyleMolecule; fixed bug that led to missing spaces
git-svn-id: svn://10.0.0.236/trunk@657 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:41:33 +00:00
kipp
cbf4938e33 Fixed up cursor handling; map align parameter
git-svn-id: svn://10.0.0.236/trunk@656 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:40:47 +00:00
kipp
00b1cc85fe Removed nsStyleMolecule decl
git-svn-id: svn://10.0.0.236/trunk@655 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:40:17 +00:00
kipp
3bfe67cad5 Repaired cursor discovery logic to handle A tag oddities
git-svn-id: svn://10.0.0.236/trunk@654 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:40:01 +00:00
kipp
aad54f55e7 new atoms
git-svn-id: svn://10.0.0.236/trunk@653 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:39:16 +00:00
kipp
7c700e8a5b Updated to new style constants
git-svn-id: svn://10.0.0.236/trunk@652 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:37:29 +00:00
kipp
8043537831 Stop building unused tags file
git-svn-id: svn://10.0.0.236/trunk@651 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:34:02 +00:00
kipp
ab8ffb24d3 Implement nsStyleText, nsStyleDisplay; added cursors; removed hack code
git-svn-id: svn://10.0.0.236/trunk@650 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:33:32 +00:00
kipp
efa3b90b0a Tidy up style constants
git-svn-id: svn://10.0.0.236/trunk@649 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:33:11 +00:00
kipp
324c12a6d4 Cleaned up the API
git-svn-id: svn://10.0.0.236/trunk@648 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:32:59 +00:00
kipp
758346d78d Added nsStyleText, nsStyleDisplay; removed nsStyleMolecule and hack code; cleaned up a few others
git-svn-id: svn://10.0.0.236/trunk@647 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:32:11 +00:00
wtc
b92f855655 "gmake clobber" should remove $(OBJDIR) too.
git-svn-id: svn://10.0.0.236/trunk@646 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 16:16:54 +00:00
hshaw
348fba16cb Only compile security stubs if NO_SECURITY turned on
git-svn-id: svn://10.0.0.236/trunk@645 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 11:32:20 +00:00
hshaw
92821a0c0c libjar is not part of public source
git-svn-id: svn://10.0.0.236/trunk@644 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 11:29:10 +00:00
mccabe
3b1a1c03e9 Fix to (115008). ECMA fix - revert to earlier behavior of decompiling
functions created with new Function as "function anonymous (...)".
Now only version 1.2 decompiles to the source for an anonymous
function.


git-svn-id: svn://10.0.0.236/trunk@643 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 08:37:06 +00:00
mccabe
7256cbaad6 Pared down prmjtime.c and prmjtime to just what is needed by jsdate.c
and synchronized them with js/ref/prtime.[ch].


git-svn-id: svn://10.0.0.236/trunk@642 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 07:42:22 +00:00
mccabe
a5b32ac223 Propagate a fix for #ifndef HAVE_LONG_LONG that found its way into src/prmjtime.c but not ref/prtime.c
git-svn-id: svn://10.0.0.236/trunk@641 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 05:26:09 +00:00
mccabe
68bd3eb6a0 Add some braces to quiet dangling-else warnings by gcc 2.8.1.
git-svn-id: svn://10.0.0.236/trunk@640 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 05:24:42 +00:00
mccabe
32987e37ee Call JS_GC instead of js_GC within JS_MaybeGC. Thanks to
A. Hodgkinson <ahodgkin@acorn.co.uk> for finding this (and to chouck
for checking it in to js/ref/jsapi.c.)


git-svn-id: svn://10.0.0.236/trunk@639 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 05:11:41 +00:00
troy
24f6d37f72 Changed IntersectRect() to return an empty rect in the case where the
two source rects don't intersect. Also changed '==' operator to return
TRUE if both rects are empty


git-svn-id: svn://10.0.0.236/trunk@638 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 04:34:52 +00:00
troy
6401d192b2 Added mOverflow to nsStylePosition
git-svn-id: svn://10.0.0.236/trunk@637 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 04:07:18 +00:00
rjc
d405d81272 Vocabulary additions for NavCenter appearance styles
git-svn-id: svn://10.0.0.236/trunk@636 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 02:07:03 +00:00
rjc
e9f23151c7 Add prototypes to remove warnings on Mac.
git-svn-id: svn://10.0.0.236/trunk@632 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 00:07:08 +00:00
kmcclusk
9b1d6078de Added SelectAll member function to nsITextWidget
Fixed Select(start, stop) for nsITextWidget and nsITextAreaWidget
Added NS_MOVE event
Cleanup up nsWindow.cpp by centralizing code to initialize events and dispatch events.


git-svn-id: svn://10.0.0.236/trunk@626 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 23:09:11 +00:00
jband
947dc54830 removing code that is not supposed to be released to the public at this time. This code still lives (for now) under m/src/ns/js/ref/jsd/ on the branch JSFUN13_BRANCH
git-svn-id: svn://10.0.0.236/trunk@625 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 22:59:00 +00:00
slamm
34616e053a Remove some unused code including old-style command handling. Examples of the new command handling can be seen in EditorView.cpp and RDFView.cpp
git-svn-id: svn://10.0.0.236/trunk@624 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 22:33:18 +00:00
karnaze
b4c13f5c3a added text area
git-svn-id: svn://10.0.0.236/trunk@623 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 22:28:41 +00:00
karnaze
5ff624fc06 enabled text area
git-svn-id: svn://10.0.0.236/trunk@622 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 22:27:07 +00:00
slamm
01c0e0c439 Add beginnings of context menu support
git-svn-id: svn://10.0.0.236/trunk@621 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 22:26:55 +00:00
slamm
29da0cfac0 Fix attachments and specify resources to make it look better. The resources can later be moved down to xfe/resources
git-svn-id: svn://10.0.0.236/trunk@620 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 22:26:29 +00:00
slamm
53471fb9cd Minor logic fix.
git-svn-id: svn://10.0.0.236/trunk@619 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 22:23:13 +00:00
briano
f557cd9518 Added support for SCO UnixWare 7, and consolidated all the Linux's.
Thanks to Thorsten Heit (thorsten@wurzelausix.cs.uni-sb.de) for the
Linux suggestion.


git-svn-id: svn://10.0.0.236/trunk@618 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 22:22:42 +00:00
gagan
0883032db0 This is the fix for bug #93760. It has a potential of breaking some server
implementations of decoding the authentication string that involve a user
login string of accentuated characters (for example- éçàöî)


git-svn-id: svn://10.0.0.236/trunk@617 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 22:12:09 +00:00
karnaze
4a95093116 added radio groups, select/option, beter sizing. widgets take creation parms.
git-svn-id: svn://10.0.0.236/trunk@616 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 21:37:30 +00:00
buster
68ef434e82 even better pagination. Tables with small captions can split, and
simple tables with big cells can split the cell (and it's row)


git-svn-id: svn://10.0.0.236/trunk@615 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 20:59:44 +00:00
kipp
4e90f540f3 Put generated source into the right directory
git-svn-id: svn://10.0.0.236/trunk@614 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 19:56:36 +00:00
kipp
248dffec8a updated scripts to work properly
git-svn-id: svn://10.0.0.236/trunk@613 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 19:56:23 +00:00
kipp
5d88cc8f56 added new properties
git-svn-id: svn://10.0.0.236/trunk@612 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 19:56:09 +00:00
kipp
fad74a13ef latest props
git-svn-id: svn://10.0.0.236/trunk@611 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 19:55:53 +00:00
wtc
7675cfc3ec Eliminated compiler warnings. Fixed by Rick Osborne <rick@stacey.net>.
git-svn-id: svn://10.0.0.236/trunk@610 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 19:48:37 +00:00
bjorn
46adef01d2 Protection around ASFILES added, so that gcc runs smoothly.
git-svn-id: svn://10.0.0.236/trunk@609 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 19:02:01 +00:00
troy
200fd1ff3d Added mZIndex to nsStylePosition. Absolutely positioned code now passed
it along to view system


git-svn-id: svn://10.0.0.236/trunk@608 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 18:34:31 +00:00
wtc
7c00209154 Serge Orlov <sorlov@con.mcst.ru> reported that gmake 3.74 on Solaris 2.5
doesn't like the extra tabs in this file.  I don't know why.  It works
for me and everyone else.  But since it doesn't hurt, I deleted the
extra tabs.


git-svn-id: svn://10.0.0.236/trunk@607 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 18:13:13 +00:00
fur
0126732a29 When JS_MaybeGC() has decided to do a garbage collection, really do
it, even when the only assignments have been to local JS variables.
Thanks to ahodgkin@acorn.co.uk for noticing.


git-svn-id: svn://10.0.0.236/trunk@606 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 18:08:04 +00:00
fur
2d2471a609 Eliminate non-ECMA warnings about lack of return value
git-svn-id: svn://10.0.0.236/trunk@605 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 17:56:47 +00:00
rods
d6a4c83eea changed the items are add into the combo box
git-svn-id: svn://10.0.0.236/trunk@604 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 16:21:32 +00:00
guha
c3a48ed6f4 Remove SCook.c from mac project file
git-svn-id: svn://10.0.0.236/trunk@603 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 16:13:20 +00:00
guha
1ee864db9f Fix potential mac problems
git-svn-id: svn://10.0.0.236/trunk@602 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 16:10:38 +00:00
guha
a94e97961d smore cleanup and bug fixes
git-svn-id: svn://10.0.0.236/trunk@601 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 16:04:53 +00:00
ramiro
2a71b7b932 Add preliminary support for editting items in toolbars.
git-svn-id: svn://10.0.0.236/trunk@600 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 12:43:28 +00:00
ramiro
8deebe0777 Cleanup string utils.
git-svn-id: svn://10.0.0.236/trunk@599 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 12:34:16 +00:00
ramiro
102ae1d944 Add one more personal toolbar command: xfeCmdPersonalToolbarItemProperties.
git-svn-id: svn://10.0.0.236/trunk@598 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 11:49:20 +00:00
ramiro
7b66a7d6a2 Add personal toolbar commands.
git-svn-id: svn://10.0.0.236/trunk@597 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 11:44:28 +00:00
ramiro
73f588efeb Cleanup the toggleShowingState() and setShowingState() madness. These
XFE_Component methods can be used instead of various other toggle/hide/show
hacks.


git-svn-id: svn://10.0.0.236/trunk@596 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 11:41:36 +00:00
fur
90ff121ec6 Temporarily disable charSet info so we can compile with JAVA defined
git-svn-id: svn://10.0.0.236/trunk@594 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 07:21:01 +00:00
ramiro
1aec16ab3b Add support ffor dynamic indicators.
git-svn-id: svn://10.0.0.236/trunk@593 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 06:57:18 +00:00
fur
5972508b18 Fix numerous cut-and-paste errors in last checkin
git-svn-id: svn://10.0.0.236/trunk@592 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 06:57:00 +00:00
ramiro
84ec8be55d Add support for dynamic indicators.
git-svn-id: svn://10.0.0.236/trunk@591 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 06:47:37 +00:00
ramiro
a307c5f940 Always insert private components at end of widget list.
git-svn-id: svn://10.0.0.236/trunk@590 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 06:44:28 +00:00
fur
39accdfa4b Temporarily disable charSet info so we can compile
git-svn-id: svn://10.0.0.236/trunk@589 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 06:26:57 +00:00
cyeh
801614bc6f adjust access paths to point to js:src and js:jsj. js:ref was added, and
it had an old nspr1.0 header in it "prcpucfg.h" htat was being picked up for the compile instead of the one in nsprpub


git-svn-id: svn://10.0.0.236/trunk@588 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 04:42:07 +00:00
troy
479019563e Added more position properties and removed some stuff from nsStyleMolecule
git-svn-id: svn://10.0.0.236/trunk@587 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 03:50:38 +00:00
troy
f4f2da86ac Fixed PROP_HEIGHT to use VARIANT_KLP (was using VARIANT_KL)
git-svn-id: svn://10.0.0.236/trunk@586 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 02:43:42 +00:00
rjc
28779ff3a6 Removed unused variables to fix up warnings.
git-svn-id: svn://10.0.0.236/trunk@585 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 02:20:19 +00:00
rjc
48b61872f7 Support for workspace reordering.
git-svn-id: svn://10.0.0.236/trunk@584 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 02:15:22 +00:00
fur
2af8f4a686 (These files not built by any version of Navigator)
Initial check-in:
JSRef is migrating from /m/src JSFUN13_BRANCH to trunk /m/pub repository


git-svn-id: svn://10.0.0.236/trunk@583 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 01:42:37 +00:00
fur
dffbf084ac (This code is not built by any flavor of Navigator)
Initial check-in to mozilla tree: JSRef development is migrating from
JSFUN13_BRANCH of /m/src repository to /m/pub


git-svn-id: svn://10.0.0.236/trunk@582 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 01:35:13 +00:00
fur
425b4f0439 JS1.3 initial check-in
git-svn-id: svn://10.0.0.236/trunk@581 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 01:28:40 +00:00
fur
73e80ec159 Initial checkin of JS1.3. (Minor fix required to accomodate JSAPI behavior changes)
git-svn-id: svn://10.0.0.236/trunk@580 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 00:34:15 +00:00
fur
c7feaa75cf Initial checkin of JavaScript 1.3, migrated from JSFUN13_BRANCH in /m/src repository.
(Minor changes in libmocha required to accomodate JSAPI changes.)


git-svn-id: svn://10.0.0.236/trunk@579 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 00:32:02 +00:00
fur
6e3cdaec31 Initial checkin of JavaScript 1.3, migrated from JSFUN13_BRANCH in /m/src repository
git-svn-id: svn://10.0.0.236/trunk@578 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 00:31:11 +00:00
michaelp
bbe0178263 more scrolling bugs.
git-svn-id: svn://10.0.0.236/trunk@577 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 00:30:21 +00:00
scullin
9aec547ed0 Removed dependency on Motif
git-svn-id: svn://10.0.0.236/trunk@576 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-24 00:17:36 +00:00
dbragg
06063a9d88 Moving asw.jar into appropriate place (not into as_html)
git-svn-id: svn://10.0.0.236/trunk@573 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 23:51:47 +00:00
dbragg
83372571bc Um, like, ns_priv handling is screwy, but for now we need to at least POINT there...
git-svn-id: svn://10.0.0.236/trunk@572 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 23:45:32 +00:00
michaelp
038c0cf76e fixed bug where scollbar itself was scrolled.
git-svn-id: svn://10.0.0.236/trunk@571 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 23:32:59 +00:00
michaelp
b3fff96143 changed SetContainerSize() to ComputeContainerSize().
git-svn-id: svn://10.0.0.236/trunk@570 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 23:21:37 +00:00
dbragg
efb85c5361 for the fun of it
git-svn-id: svn://10.0.0.236/trunk@569 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 23:17:20 +00:00
dbragg
e286be6235 make it work for el don
git-svn-id: svn://10.0.0.236/trunk@568 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 23:16:06 +00:00
dbragg
890a53a1bd OK, maybe this is better?
git-svn-id: svn://10.0.0.236/trunk@567 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 23:06:18 +00:00
buster
7afb5d93bb fixed a nefarious little bug with multiple row spans in the same table
subsequent rows (the ones below the effected rows) were not placed correctly
when the height of the spanning cell became greater than the sum of the heights
of the rows it spanned.


git-svn-id: svn://10.0.0.236/trunk@566 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 22:59:07 +00:00
troy
ff40b5d8f4 More work on absolute positioning
git-svn-id: svn://10.0.0.236/trunk@565 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 22:38:52 +00:00
dbragg
e37a16249d Fixed to use correct targets
git-svn-id: svn://10.0.0.236/trunk@564 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 22:27:55 +00:00
michaelp
0063ce95c6 added AddRef() to GetScrolledView().
git-svn-id: svn://10.0.0.236/trunk@563 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 21:54:47 +00:00
michaelp
8a60a2974e removed debug junk
git-svn-id: svn://10.0.0.236/trunk@562 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 21:52:02 +00:00
michaelp
4b3b78f8e5 view no longer shows a scrollbar when we can't scroll.
added GetScrolledView().


git-svn-id: svn://10.0.0.236/trunk@561 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 21:51:43 +00:00
michaelp
4948a5cacb removed conditional calling of view->SetDimensions() in SizeTo().
git-svn-id: svn://10.0.0.236/trunk@560 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 21:51:03 +00:00
kmcclusk
1c46487c8b Added SetMaxTextLength method to text widget and textarea widget.
git-svn-id: svn://10.0.0.236/trunk@559 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 20:21:24 +00:00
scullin
cc196705ed Build on IRIX and Linux
git-svn-id: svn://10.0.0.236/trunk@558 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 19:55:08 +00:00
scullin
9684a1c1b7 Linux build fixes. Moved test.cpp to nettest.cpp to allow nettest to
build easily under UNIX.


git-svn-id: svn://10.0.0.236/trunk@557 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 19:33:34 +00:00
scullin
5497189f2b Fixed non-virtual destructor, and incorrect stream usages that
gcc didn't like.


git-svn-id: svn://10.0.0.236/trunk@556 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 19:10:35 +00:00
scullin
ae47b469c0 Fix abiguous null test for smart pointers.
git-svn-id: svn://10.0.0.236/trunk@555 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 19:08:21 +00:00
buster
a7ba4f40d7 table header and footer rowgroups placed properly, replicated across continuing tables
some pagination fixes, including a hack to make negative available heights = 1.


git-svn-id: svn://10.0.0.236/trunk@552 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 17:29:07 +00:00
buster
3f1b763ceb fixed a bug where a case during pagination wasn't being tested correctly
git-svn-id: svn://10.0.0.236/trunk@551 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 17:22:46 +00:00
buster
d8ffbf56b4 added style for HTML 4 table elements and TH
git-svn-id: svn://10.0.0.236/trunk@550 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 17:19:21 +00:00
kipp
76327db85c nuked ref to line layout
git-svn-id: svn://10.0.0.236/trunk@549 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 17:09:16 +00:00
kipp
e4a14bb64b link with plc
git-svn-id: svn://10.0.0.236/trunk@548 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 16:51:49 +00:00
kipp
b71515f8f1 Fixed SetTitle API
git-svn-id: svn://10.0.0.236/trunk@547 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 16:51:25 +00:00
kipp
c90ed276b0 define win32_lean_and_mean
git-svn-id: svn://10.0.0.236/trunk@546 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 16:47:42 +00:00
troy
5a581d1cad More CSS position work
git-svn-id: svn://10.0.0.236/trunk@545 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 15:39:48 +00:00
scullin
22e3688402 Unix build patches
git-svn-id: svn://10.0.0.236/trunk@543 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 03:51:20 +00:00
slamm
4c01b12f2a Change NavCenter (aka Aurora) to use the XmLTree instead
of the Outliner class.  This will be cleaner in the end and will give
us an easy way to do dynamic columns.


git-svn-id: svn://10.0.0.236/trunk@542 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 01:29:34 +00:00
slamm
f40ec969bd Add a new horizontalSizePolicy, XmRESIZE_IF_POSSIBLE.
This resizes the columns to make the fit in the available widget width
without scrollbars.  This is made possible by a new function,
SizeColumnsToFit(), which is adapted from Outliner.cpp:applyDelta().
Also add a resource for minColumnWidth.


git-svn-id: svn://10.0.0.236/trunk@541 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 01:29:30 +00:00
slamm
3dff3d7192 Fix print remote to take file argument.
git-svn-id: svn://10.0.0.236/trunk@540 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 01:29:26 +00:00
ftang
fd67065650 Change unicode mapping table to include EURP mapping
git-svn-id: svn://10.0.0.236/trunk@539 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 01:12:20 +00:00
mccabe
6e2b5dfd5c Makefile hacking to make 'gmake js' work in ns/js/src. Abstracted a
few constants, added -ldl for Linux.  Tested on Irix 6.3, SunOs 5.6,
Linux 2.031.


git-svn-id: svn://10.0.0.236/trunk@538 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 00:39:10 +00:00
rickg
2e1b6d50bc final factoring of DTDs, and removal of nsHTMLDTD.*
git-svn-id: svn://10.0.0.236/trunk@537 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 23:56:57 +00:00
ramiro
65743a2139 Move headers from unused to used.
git-svn-id: svn://10.0.0.236/trunk@536 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 23:48:50 +00:00
troy
edc3ab3009 Added nsStylePosition
git-svn-id: svn://10.0.0.236/trunk@535 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 23:29:01 +00:00
troy
88d4749140 Starting to pay attention to CSS positioning properties
git-svn-id: svn://10.0.0.236/trunk@534 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 23:28:39 +00:00
troy
1ebba559f8 Setting up style for CSS positioning
git-svn-id: svn://10.0.0.236/trunk@533 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 23:28:02 +00:00
kipp
db9f98a87f option is a container too
git-svn-id: svn://10.0.0.236/trunk@532 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 23:25:36 +00:00
kipp
f308795f16 Added in support for select/option
git-svn-id: svn://10.0.0.236/trunk@531 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 23:24:43 +00:00
wtc
91e14a02cc Added parentheses around a type cast. Fix provided by Kipp Hickmann
<kipp@netscape.com>.


git-svn-id: svn://10.0.0.236/trunk@530 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 22:39:24 +00:00
kipp
1993f67606 support textarea tag; some support for custom form managers
git-svn-id: svn://10.0.0.236/trunk@529 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 22:12:24 +00:00
kipp
6e00312ecf snapshot
git-svn-id: svn://10.0.0.236/trunk@528 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 22:11:52 +00:00
kipp
9fa973426f Disable noisy blink
git-svn-id: svn://10.0.0.236/trunk@527 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 22:11:21 +00:00
wtc
68e29b395c Fixed build problems on BSD/OS. Some makefiles need to change:
the value of OS_ARCH is changed from BSD_386 to BSD_OS.
In unix.c, we now conditionalize on the macros O_SYNC and O_FSYNC,
as opposed to the platform macros like FREEBSD and BSDI.  We
acknowledge jason@ackley.net for reporting and providing a fix
for this problem.


git-svn-id: svn://10.0.0.236/trunk@526 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 22:10:37 +00:00
kipp
ed2c8297d0 Treat textarea somewhat like title/script/style
git-svn-id: svn://10.0.0.236/trunk@525 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 22:10:27 +00:00
kipp
8626798bbb textarea is not a container
git-svn-id: svn://10.0.0.236/trunk@524 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 22:10:10 +00:00
kipp
3ee4df73f0 Added in TEXTAREA to special tags
git-svn-id: svn://10.0.0.236/trunk@523 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 22:09:46 +00:00
rickg
0e31300630 tweaked the API to be more DTD-like
git-svn-id: svn://10.0.0.236/trunk@517 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 20:22:59 +00:00
rickg
ab6648a9f7 improved newline handling in tables
git-svn-id: svn://10.0.0.236/trunk@516 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 19:46:40 +00:00
rickg
3ef2b1f04d moved nsDeque.* to base\src
git-svn-id: svn://10.0.0.236/trunk@515 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 19:10:39 +00:00
rickg
efaf44175a added DTD and propagation capabilities; dynamic entities, containers, token handlers
git-svn-id: svn://10.0.0.236/trunk@514 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 18:32:49 +00:00
rickg
0c45497a29 added a few new container types
git-svn-id: svn://10.0.0.236/trunk@513 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 18:28:48 +00:00
troy
da88ecd024 Fixed some bustage
git-svn-id: svn://10.0.0.236/trunk@512 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 18:15:48 +00:00
troy
1b67ec5c71 Bumping the revision to 3
git-svn-id: svn://10.0.0.236/trunk@511 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 16:11:12 +00:00
troy
e3d69df234 HackStyleFor no longer sets positionFlags
git-svn-id: svn://10.0.0.236/trunk@510 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 16:07:27 +00:00
troy
112c68d521 Work in progress on absolutely positioned elements
git-svn-id: svn://10.0.0.236/trunk@509 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 16:06:21 +00:00
troy
4fc38901fa Signing
git-svn-id: svn://10.0.0.236/trunk@508 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 16:00:00 +00:00
troy
10ad4051a6 Initial check-in
git-svn-id: svn://10.0.0.236/trunk@507 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 15:59:33 +00:00
troy
45e49986f4 Added support for CSS 'position' property
git-svn-id: svn://10.0.0.236/trunk@506 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 15:46:53 +00:00
troy
21d93f9992 Fixed a problem in SelectorMatches() that was causing id-based selectors
to always match


git-svn-id: svn://10.0.0.236/trunk@505 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 15:43:46 +00:00
peterl
d0badcb54c Switch to nsIPtrs to eliminate leaks (and to test them)
added debug code for ref counts


git-svn-id: svn://10.0.0.236/trunk@502 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:41:10 +00:00
peterl
0415cacfc0 WIP moving margin, border & padding out of nsStyleMolecule
added debug code to track ref counts


git-svn-id: svn://10.0.0.236/trunk@501 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:40:21 +00:00
peterl
877a811055 WIP moving margin, border & padding out of nsStyleMolecule
git-svn-id: svn://10.0.0.236/trunk@500 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:39:35 +00:00
peterl
de9525ad79 Switch to nsIPtr for style context ptrs to eliminate leaks
git-svn-id: svn://10.0.0.236/trunk@499 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:39:00 +00:00
peterl
b38d9c1be1 added ref counting debug code
git-svn-id: svn://10.0.0.236/trunk@498 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:38:31 +00:00
peterl
90b63547ac WIP moving margin, border & padding out of nsStyleMolecule
Switch to nsIPtr for style context ptrs to eliminate leaks


git-svn-id: svn://10.0.0.236/trunk@497 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:37:57 +00:00
peterl
b15ae90fd7 moved border out of nsStyleMolecule
git-svn-id: svn://10.0.0.236/trunk@496 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:36:28 +00:00
peterl
512927bf20 WIP moving border, margin & padding out of nsStyleMolecule
git-svn-id: svn://10.0.0.236/trunk@495 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:33:35 +00:00
peterl
748b39e5a7 made GetStyleContext work with a null pres context
git-svn-id: svn://10.0.0.236/trunk@494 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:32:55 +00:00
peterl
69ef005d1a WIP removing border, margin & padding from nsStyleMolecule
git-svn-id: svn://10.0.0.236/trunk@493 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 06:32:17 +00:00
beard
929fd65dab AllocateMenuID
git-svn-id: svn://10.0.0.236/trunk@490 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 02:18:55 +00:00
beard
c0f4e071af nsPluginInstancePeer::AllocateMenuID
git-svn-id: svn://10.0.0.236/trunk@489 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 02:18:25 +00:00
beard
c95f92b87b FE_AllocateMenuID
git-svn-id: svn://10.0.0.236/trunk@488 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 02:13:46 +00:00
beard
4aae1c1b97 npn_allocateMenuID.
git-svn-id: svn://10.0.0.236/trunk@487 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 02:13:16 +00:00
beard
7b7ebc61c5 SetPositioned now takes a Boolean argument, added ObeyCommand for plugin menus, added menu ID allocation.
git-svn-id: svn://10.0.0.236/trunk@486 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 02:12:12 +00:00
beard
d85affb0f5 Added FE_AllocateMenuID, and CPluginWindow wrapper class for top-level plugin windows.
git-svn-id: svn://10.0.0.236/trunk@485 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 02:10:33 +00:00
beard
4c0050a1e1 Added support for dynamic allocation of menu IDs for plugins.
git-svn-id: svn://10.0.0.236/trunk@484 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 02:08:49 +00:00
beard
5f4e30053f Changes for plugins history.
git-svn-id: svn://10.0.0.236/trunk@483 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 02:07:52 +00:00
gagan
f55d568b04 A mechanism to flush out all authorizations in a session. Added "about:logout"
A-montulli/R-valeski. Thanks to Kit Knox (kit@cn1.connectnet.com)


git-svn-id: svn://10.0.0.236/trunk@482 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 01:03:41 +00:00
scullin
7dfe47d08b NSPR related changes submitted by wtc.
git-svn-id: svn://10.0.0.236/trunk@481 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-22 00:05:08 +00:00
hshaw
3ceac51fd3 Temporary modules to work with mozilla vs ns
git-svn-id: svn://10.0.0.236/trunk@480 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 23:28:37 +00:00
troy
8fa41c7a75 Changed space manager to pass in the frame that's associated with a block
of unavailable space


git-svn-id: svn://10.0.0.236/trunk@479 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 23:06:41 +00:00
sar
e8bbc46ebb type-o DEPT not DEPTH
git-svn-id: svn://10.0.0.236/trunk@478 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 22:07:07 +00:00
sar
7ff412e9dc change MOZ_SRC references to DEPTH
git-svn-id: svn://10.0.0.236/trunk@477 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 21:46:46 +00:00
sar
4292b1f9d5 change MOZ_SRC references to DEPTH
git-svn-id: svn://10.0.0.236/trunk@476 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 21:38:43 +00:00
sar
74864edf0d change MOZ_SRC references to DEPTH
git-svn-id: svn://10.0.0.236/trunk@473 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 21:22:54 +00:00
scullin
23fe55339a Signed.
git-svn-id: svn://10.0.0.236/trunk@471 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 20:11:22 +00:00
scullin
6abe902d24 Added
git-svn-id: svn://10.0.0.236/trunk@470 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 20:10:59 +00:00
ramiro
625f4a1818 Make sure the indicator widget is always at the WidgetList tail.
git-svn-id: svn://10.0.0.236/trunk@468 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 19:11:20 +00:00
scullin
759014f170 Fix release mode bustage.
git-svn-id: svn://10.0.0.236/trunk@466 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 18:25:52 +00:00
ramiro
f0c7de40ac Prevent toolbars from screwing with private XfeManager components.
git-svn-id: svn://10.0.0.236/trunk@465 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 18:14:13 +00:00
scullin
13b5f479b4 Don't hard-code the date.exe path, use unix_date.exe instead.
git-svn-id: svn://10.0.0.236/trunk@464 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 18:04:41 +00:00
ramiro
8e02d65602 Add XfeIsPrivateComponent().
Test whether a widget is a private component of an XfeManager parent.


git-svn-id: svn://10.0.0.236/trunk@463 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 17:57:20 +00:00
wtc
8c58ba330b Merged the makefile changes from Netscape's internal development version
of NSPR to the public ns/nsprpub on mozilla.org.
Removed ns/nsprpub/tools/winsock.lib, which should not have been
released.  This file can be generated from winsock.dll by following
the NSPR build instructions for Windows 3.11 at
http://www.mozilla.org/docs/refList/refNSPR/win16.html.


git-svn-id: svn://10.0.0.236/trunk@458 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 17:21:53 +00:00
valeski
dd762d0835 compiler warning fix (paren inclusion) submitted by dkindred@cmu.edu . approved/rev'd by nisheeth
git-svn-id: svn://10.0.0.236/trunk@457 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 17:17:35 +00:00
buster
396106f433 THEAD and TFOOT tags enabled
git-svn-id: svn://10.0.0.236/trunk@456 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 16:36:46 +00:00
ramiro
3c3218410b New and improved filing of bookmarks to Personal Toolbar.
git-svn-id: svn://10.0.0.236/trunk@455 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 16:18:00 +00:00
ramiro
bfb530894b Move fe_DestroyWidgetTree() to XfeWidgets/MenuUtils.c as
XfeDestroyMenuWidgetTree().  Make it safe for killing private components.


git-svn-id: svn://10.0.0.236/trunk@454 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 15:52:01 +00:00
ramiro
2ed5147535 Make it more paranoid.
git-svn-id: svn://10.0.0.236/trunk@453 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 15:25:45 +00:00
ramiro
5ea1eb2a69 Add XfeDestroyMenuWidgetTree().
git-svn-id: svn://10.0.0.236/trunk@452 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 15:24:01 +00:00
ramiro
2c5d76fa0e Handle bogus input for XfeCascadeGetSubMenu().
git-svn-id: svn://10.0.0.236/trunk@451 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 14:55:16 +00:00
ramiro
b1b68d08bb Add XfeToolBarGetLastItem().
git-svn-id: svn://10.0.0.236/trunk@450 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 13:29:37 +00:00
ramiro
56e18cd222 Removed unused combobox dir and define.
git-svn-id: svn://10.0.0.236/trunk@449 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 12:46:48 +00:00
ramiro
37a40cb9ee Update for indicator support. Dont hardcode button layout.
git-svn-id: svn://10.0.0.236/trunk@448 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 12:41:46 +00:00
ramiro
f14e1d2bd3 Dont hardcode button layout in XfeCreateLoadedToolBar. Update Makefile for
XfeWidgets.mk.


git-svn-id: svn://10.0.0.236/trunk@447 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 12:39:49 +00:00
ramiro
cd17caa7f8 Improve the indicator support.
git-svn-id: svn://10.0.0.236/trunk@446 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 12:38:44 +00:00
timm
449564289e Add "MOZ_INSTALL_DIR" support, change to move asw.jar to as_html directly
git-svn-id: svn://10.0.0.236/trunk@445 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 07:01:03 +00:00
timm
b45b7eeb9d Lots of changes for 2 step
git-svn-id: svn://10.0.0.236/trunk@444 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:59:12 +00:00
timm
bb5f73dcbd Make a package "netscape.asw" from the progress bar applet
git-svn-id: svn://10.0.0.236/trunk@443 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:58:48 +00:00
timm
9b8a2de5b4 Fix to make a "signed" dir as we do with the java plugin
(only way signpages.pl will work with this code, Signtool doesn't work for various reasons)


git-svn-id: svn://10.0.0.236/trunk@442 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:58:06 +00:00
timm
eeae5346cf Added modem monitoring for first step of 2 step
git-svn-id: svn://10.0.0.236/trunk@441 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:57:13 +00:00
timm
a3eab4b272 Lots of changes for 2step
git-svn-id: svn://10.0.0.236/trunk@440 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:56:36 +00:00
timm
b125254b26 Remove TABLE
git-svn-id: svn://10.0.0.236/trunk@439 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:56:11 +00:00
timm
65b41547df Add "RegRoot" entry
git-svn-id: svn://10.0.0.236/trunk@438 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:54:47 +00:00
timm
97b3719301 Changes to match changes on server side
git-svn-id: svn://10.0.0.236/trunk@437 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:53:38 +00:00
hshaw
9d19e3dacb Removed dependency on sun-java/config/rules.mak
git-svn-id: svn://10.0.0.236/trunk@436 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:49:20 +00:00
hshaw
b0d28a5761 Remove dependency on sun-java/config/rules.mak
git-svn-id: svn://10.0.0.236/trunk@435 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:48:41 +00:00
hshaw
b7eca65112 Applet is a private component and hence removed
git-svn-id: svn://10.0.0.236/trunk@434 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:48:15 +00:00
hshaw
cea6b4dbe9 Change JAVA ifdef's to OJI to distinguish between OJI and tightly integrated JAVA
git-svn-id: svn://10.0.0.236/trunk@433 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:47:20 +00:00
hshaw
2c9e7fcfdd Remove dependency on sun-java/config/rules.mak.
git-svn-id: svn://10.0.0.236/trunk@432 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:45:01 +00:00
hshaw
b9599cb12d Move library creation to libs phase, cause jpeg to depend on dist/public vs reaching into sun-java for headers
git-svn-id: svn://10.0.0.236/trunk@431 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:43:56 +00:00
hshaw
5bf2f64c6d Fix problem with dependency checking of AWT11 class files
git-svn-id: svn://10.0.0.236/trunk@430 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:42:48 +00:00
hshaw
d108d8cf64 Add NS_DEPTH to list of macros processed by mantomak
git-svn-id: svn://10.0.0.236/trunk@429 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:41:47 +00:00
hshaw
71d9cfe64d Make -DNO_SECURITY independent of MOZ_LITE/MEDIUM - hshaw/sudu
git-svn-id: svn://10.0.0.236/trunk@427 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 06:40:35 +00:00
brade
a1b5602717 minimize references to CStr255 class; fix some small memory leaks
git-svn-id: svn://10.0.0.236/trunk@426 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 04:47:44 +00:00
troy
227438369f Fixed column's incremental reflow function to properly handle margins
git-svn-id: svn://10.0.0.236/trunk@425 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 04:27:34 +00:00
brade
61d29b0ffe set pensize in drawing cell borders (if empty/zero-border and special selection or selected)
git-svn-id: svn://10.0.0.236/trunk@424 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 03:30:56 +00:00
troy
2658fcef80 Made sure pseudo frames get a top and bottom margin of 0
git-svn-id: svn://10.0.0.236/trunk@423 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 03:16:11 +00:00
ramiro
5d3257bb1d Un hard code /usr/lib/libm.a. Replace with -lm. (Linux)
git-svn-id: svn://10.0.0.236/trunk@421 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 00:52:35 +00:00
ramiro
b70b9be02d Update to 1998.
git-svn-id: svn://10.0.0.236/trunk@420 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 00:51:45 +00:00
peterl
2facdedae8 added spacing and border structs
git-svn-id: svn://10.0.0.236/trunk@419 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 00:02:44 +00:00
troy
e669c44ba0 Changed the space manager interface to return trapezoids instead
of rects


git-svn-id: svn://10.0.0.236/trunk@418 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 23:53:47 +00:00
montulli
164ebfb4a8 update cvpics.c to new streams API
git-svn-id: svn://10.0.0.236/trunk@417 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 22:50:15 +00:00
buster
530ef4a79a table performance and minor bug fixes.
git-svn-id: svn://10.0.0.236/trunk@416 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 22:49:15 +00:00
troy
097598d42c Fixed problem of hitting an assert when encountering an incomplete
frame when reflowing appended children


git-svn-id: svn://10.0.0.236/trunk@415 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 20:24:25 +00:00
troy
bec18bf03a Changed to using continuing frames for runaround of left/right floaters
git-svn-id: svn://10.0.0.236/trunk@414 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 19:56:35 +00:00
troy
d527779823 Changed to get nsIRunaround directly rather than use ReflowChild()
git-svn-id: svn://10.0.0.236/trunk@413 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 19:55:45 +00:00
wtc
99db30744f Eliminated compiler warnings. Fixed by Rick Osborne <rick@spacey.net>.
git-svn-id: svn://10.0.0.236/trunk@412 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 19:04:42 +00:00
wtc
73f5043417 Eliminated compiler warnings. Fixed by Rick Osborne <rick@stacey.net>.
git-svn-id: svn://10.0.0.236/trunk@411 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 18:58:25 +00:00
wtc
fb487199ca Declare PrintUsage() to return void. Fixed by Rick Osborne
<rick@spacey.net>.


git-svn-id: svn://10.0.0.236/trunk@410 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 18:55:32 +00:00
pinkerton
92017a85b5 Remove EstablishPort() override, another remaining vestage of Kelly.
git-svn-id: svn://10.0.0.236/trunk@409 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 16:18:24 +00:00
pinkerton
ef7ae56817 fix build bustage for guha.
git-svn-id: svn://10.0.0.236/trunk@408 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 16:08:47 +00:00
troy
c6bcea0c20 Made it so that continuing frames have a top margin of 0
git-svn-id: svn://10.0.0.236/trunk@407 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 04:37:49 +00:00
guha
c3a08849e5 More Sitemap related fixes
git-svn-id: svn://10.0.0.236/trunk@397 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-20 00:39:11 +00:00
ramiro
e6302e9ad0 Un hardcode XmINDICATOR_DONT_SHOW.
git-svn-id: svn://10.0.0.236/trunk@394 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-19 17:36:48 +00:00
ramiro
fdfce3c6c9 Fix typos.
git-svn-id: svn://10.0.0.236/trunk@393 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-19 16:15:00 +00:00
ramiro
8f728e3aaa Update for new XmNindicatorPosition resource.
git-svn-id: svn://10.0.0.236/trunk@392 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-19 16:14:30 +00:00
ramiro
3c578592a1 Add XmNindicatorPosition resource. For toolbar dropping fedback.
git-svn-id: svn://10.0.0.236/trunk@391 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-19 16:13:54 +00:00
ramiro
2003def889 Add XmNnumPrivateComponents resource.
git-svn-id: svn://10.0.0.236/trunk@390 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-19 16:12:26 +00:00
ramiro
522bc316af Fix a core dump on resizing the toolbox. The problem was a recursive geometry
call into PreferredGeometry().  Fixed by plugin in the trivial geomtry manager
instead of the one that does complicated things.


git-svn-id: svn://10.0.0.236/trunk@389 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-19 11:20:17 +00:00
ramiro
a6efe6a940 Add some geometry debugging assertions and comments.
git-svn-id: svn://10.0.0.236/trunk@388 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-19 11:16:43 +00:00
troy
b16f96084a Commented out the hack that explicitly set the P top margin since that's
now handled using CSS


git-svn-id: svn://10.0.0.236/trunk@381 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-19 05:06:41 +00:00
troy
ba24cf5205 Added code to handle CSS margin properties
git-svn-id: svn://10.0.0.236/trunk@374 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-18 22:16:37 +00:00
troy
a7dc1c48ab Fixed a problem where mLastContentIsComplete wasn't getting set right
for block-level elements


git-svn-id: svn://10.0.0.236/trunk@373 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-18 22:06:05 +00:00
troy
6579aae2d9 Fixed a bug I introduced in the previous checkin
git-svn-id: svn://10.0.0.236/trunk@370 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-18 05:03:04 +00:00
kmcclusk
fc11da3381 Changed SetBorderStyle to work with child windows only
git-svn-id: svn://10.0.0.236/trunk@369 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-18 00:27:48 +00:00
kmcclusk
00ad257db0 Added SetBorderStyle and SetTitle to nsIWidget
git-svn-id: svn://10.0.0.236/trunk@368 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 23:45:07 +00:00
troy
0246c9bb5c Changed IsSplittable to have three return values
git-svn-id: svn://10.0.0.236/trunk@367 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 23:08:20 +00:00
pinkerton
384524dbde Added CAutoCompleteURLEditField from Paul Chen. (rev sdagley, appr sdagely).
git-svn-id: svn://10.0.0.236/trunk@366 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 22:41:56 +00:00
pinkerton
87f5fe1107 Fix 2 const problems for Kathy (rev sdagley, appr sdagely).
git-svn-id: svn://10.0.0.236/trunk@365 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 22:41:09 +00:00
pinkerton
5d0fd32cd3 Remove 200K of icons that are no longer necessary.
git-svn-id: svn://10.0.0.236/trunk@364 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 22:40:52 +00:00
pinkerton
e062313359 When HTML area resizes, show arrow cursor in case it can take a while (like page with big tables).
git-svn-id: svn://10.0.0.236/trunk@363 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 22:40:30 +00:00
pinkerton
d416a91e4b No longer using extra icons for hilighted and disabled state, but drawing them with toolbox transform modes.
git-svn-id: svn://10.0.0.236/trunk@362 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 22:39:57 +00:00
pinkerton
050a3b89b3 change class_id of location bar's edit field to new autocomplete class (rev sdagley, appr sdagely).
git-svn-id: svn://10.0.0.236/trunk@361 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 22:39:12 +00:00
pinkerton
72bb2b261f register Paul's autoURLcompletion stuff. (rev sdagley, appr sdagely).
git-svn-id: svn://10.0.0.236/trunk@360 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 22:39:11 +00:00
pinkerton
35fe2787f3 For guha. Fixes crashes at startup.
git-svn-id: svn://10.0.0.236/trunk@359 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 22:33:56 +00:00
pinkerton
16734fb281 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@358 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 22:28:59 +00:00
cmanske
386e608fa2 Fixed problem with inserting at nIndex=0 in Growable array
git-svn-id: svn://10.0.0.236/trunk@357 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 21:49:18 +00:00
mlm
d6bfc7f264 Oops - back out checkin from wrong tree
git-svn-id: svn://10.0.0.236/trunk@356 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 21:42:16 +00:00
mlm
1eaf5924da Minor nit fixes that I intended to check in before, reviewed by Brendan
git-svn-id: svn://10.0.0.236/trunk@355 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 21:37:22 +00:00
cmanske
ccde004936 Fixed Table Editing bugs in Composer
git-svn-id: svn://10.0.0.236/trunk@351 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 21:34:20 +00:00
cmanske
84fb534d61 Fixed Table Editing bugs in Composer. Thanks to donwulff@iki.fi for finding a bug
git-svn-id: svn://10.0.0.236/trunk@350 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 21:32:18 +00:00
timm
eca6a1294c First Checked In.
git-svn-id: svn://10.0.0.236/trunk@349 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 16:34:18 +00:00
ftang
281414b012 add big5 and gb2312 charset name for free font found at ifcss.org site
git-svn-id: svn://10.0.0.236/trunk@348 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 02:56:00 +00:00
troy
c394172a68 Cleaned up some logic
git-svn-id: svn://10.0.0.236/trunk@347 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 01:47:21 +00:00
troy
fd68898ebd Changed nsIFrame member functions to return a nsresult
git-svn-id: svn://10.0.0.236/trunk@346 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 01:41:24 +00:00
dario
318aac7f83 fixing global object finalization
git-svn-id: svn://10.0.0.236/trunk@345 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 01:35:54 +00:00
dario
63354f30cf fixing js capitalization and finalize methods
git-svn-id: svn://10.0.0.236/trunk@344 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 01:32:07 +00:00
dario
3ea56286d7 changing help menu text
git-svn-id: svn://10.0.0.236/trunk@343 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 01:29:45 +00:00
valeski
514d65e6fd patch from dkindred@cmu.edu. Parenthesis inclusion and a printf formatting snag. rev'd by gagan
git-svn-id: svn://10.0.0.236/trunk@342 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 00:33:25 +00:00
kmcclusk
766b20eb76 Added a tab widget
git-svn-id: svn://10.0.0.236/trunk@341 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 00:16:11 +00:00
wtc
0c00bf793f Ported to Linux/m68k. The patches were kindly provided by
Jes Sorensen <Jes.Sorensen@cern.ch>.


git-svn-id: svn://10.0.0.236/trunk@340 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:56:27 +00:00
pinkerton
edcb247141 Use UGAColorRamp instead of hardcoding colors. Added a lot of code for supporting drag feedback on the selector bar to indicate where new workspaces will be created. (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@339 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:29:00 +00:00
pinkerton
c309d9ed0e API changes and lots of work to try to get translucent dragging to work (still commented out, though). Did fix the solid gray drag areas to just be the outlines, though. (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@338 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:28:09 +00:00
pinkerton
65efea39cc API change in CIconTextSuite to use string instead of cstring. Also using UGAColorRamp instead of hardcoding colors. (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@337 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:27:13 +00:00
pinkerton
2b3958dd0a API change in CIconTextSuite to use string not cstring (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@336 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:26:44 +00:00
pinkerton
903b7549bd Fix 2 places where I was assuming the NavCenter was present when it wasn't. (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@335 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:26:12 +00:00
buster
369b61da86 removed noisy debug
git-svn-id: svn://10.0.0.236/trunk@334 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:25:09 +00:00
peterl
c868a04e01 added a style hack to get P align attributes to work again
git-svn-id: svn://10.0.0.236/trunk@333 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:21:45 +00:00
buster
b4bffd274b simple tables now paginate nicely. Some more complex tables
also paginate ok, though resizing in paginated mode doesn't work yet.
Captions still don't work.


git-svn-id: svn://10.0.0.236/trunk@332 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:21:32 +00:00
pinkerton
59899fad1d checked "merge into output" on non-debug targets for XMLPPCLib. (appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@331 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:18:33 +00:00
ftang
ce3851c572 Add cp1258 tables
git-svn-id: svn://10.0.0.236/trunk@330 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 21:57:10 +00:00
peterl
4ddb399190 clear web widget container before releasing it (fix leak)
git-svn-id: svn://10.0.0.236/trunk@329 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 21:51:59 +00:00
peterl
636d9f383e fix leaks
git-svn-id: svn://10.0.0.236/trunk@328 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 21:51:16 +00:00
peterl
f8e6ce5273 fix memory leaks
git-svn-id: svn://10.0.0.236/trunk@327 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 21:49:49 +00:00
peterl
c795eadf55 changed SetContentSink to do proper ref counting
git-svn-id: svn://10.0.0.236/trunk@326 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 21:48:02 +00:00
peterl
08c59feb52 fixed memory leaks in nsAutoString
git-svn-id: svn://10.0.0.236/trunk@325 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 21:47:17 +00:00
guha
5d714270af Fix sitemap bug reported by Pinkerton
git-svn-id: svn://10.0.0.236/trunk@324 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 21:29:27 +00:00
kostello
16a3417e18 Clean up (we were leaking the DocLoader -- dooh!)
git-svn-id: svn://10.0.0.236/trunk@323 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 21:23:48 +00:00
vidur
8c69e2b149 Fixed compiler warnings. Patch submitted by Rick Osborne (rick@spacey.net)
git-svn-id: svn://10.0.0.236/trunk@322 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 21:23:25 +00:00
kostello
d6e1df986c Added nsDocLoader and hooked it into the viewer's winmain.
If the MOZ_PURIFY_TEST environment variable is set, then when the
viewer is launched and all the test documents will be loaded.
After the test documents are loaded, the application will exit.


git-svn-id: svn://10.0.0.236/trunk@321 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 19:42:34 +00:00
pinkerton
e88b873b54 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@320 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 18:33:56 +00:00
rickg
04533b2f38 added 'marker-style' entities and fixed a few bugs
git-svn-id: svn://10.0.0.236/trunk@319 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 08:18:15 +00:00
rickg
b38724544f added runtime 'marker-style' entities and fixed a few bugs.
git-svn-id: svn://10.0.0.236/trunk@318 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 07:22:40 +00:00
briano
8b0c46947a Fixed the Emacs tags rules to recognize C++ sources as well. Thanks to Todd Larason (jtl@molehill.org).
git-svn-id: svn://10.0.0.236/trunk@317 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 23:56:45 +00:00
briano
2344b982ad Fixed the npglue.c screwup. Should've been npglue.cpp.
git-svn-id: svn://10.0.0.236/trunk@315 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 22:07:20 +00:00
kipp
f8027d3868 Added missing env doc
git-svn-id: svn://10.0.0.236/trunk@314 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 21:45:48 +00:00
michaelp
5449c08895 added docs.
git-svn-id: svn://10.0.0.236/trunk@313 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 20:25:02 +00:00
vidur
d168eb1a45 Documented timer interface
git-svn-id: svn://10.0.0.236/trunk@311 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 19:38:03 +00:00
vidur
732113b4c9 Documenting image library interfaces
git-svn-id: svn://10.0.0.236/trunk@310 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 19:37:44 +00:00
kostello
db8adf9761 Made the demo documents a little prettier
git-svn-id: svn://10.0.0.236/trunk@309 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 19:23:17 +00:00
blythe
19993640ed Fix some compile warnings. Thanks to Rick Osborne (rick@spacey.net)
git-svn-id: svn://10.0.0.236/trunk@308 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 18:59:47 +00:00
dario
7d9b7da232 doc
git-svn-id: svn://10.0.0.236/trunk@307 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 18:55:21 +00:00
kipp
0459378421 new
git-svn-id: svn://10.0.0.236/trunk@306 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 18:27:12 +00:00
kipp
caf6541a1a Updated tarball rules
git-svn-id: svn://10.0.0.236/trunk@305 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 18:14:33 +00:00
rickg
5205f5daea improved documentation in headers
git-svn-id: svn://10.0.0.236/trunk@304 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 17:27:56 +00:00
ramiro
5ef979d313 Add a makefile that actualy works. Update tree4.c for slamm's
XmLTreeDeleteChildren() improvement.
Coded by slamm@netscape.com.


git-svn-id: svn://10.0.0.236/trunk@303 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 09:19:34 +00:00
ramiro
647799ff41 Fix problem in grid delete callback. It didn't set the row or column
position.  Plus, it updated the row/column count before making the callback,
so you could no longer access the userData with XtVaGetValues.

Also add XmLTreeDeleteChildren() to XmLTree.

This code written by Steve Lamm <slamm@netscape.com> and reviewed by
ramiro.


git-svn-id: svn://10.0.0.236/trunk@302 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 09:15:00 +00:00
ramiro
290d1ac464 fix name in comment
git-svn-id: svn://10.0.0.236/trunk@301 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 09:10:25 +00:00
ramiro
b20667bef6 first checked in
git-svn-id: svn://10.0.0.236/trunk@300 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 09:09:52 +00:00
ramiro
3c4997aaed Use DLL_SUFFIX from ns/config instead of random hack.
git-svn-id: svn://10.0.0.236/trunk@299 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 09:08:25 +00:00
rpotts
492f37556e Added netlib to the list of public directories to doc++
git-svn-id: svn://10.0.0.236/trunk@298 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 07:59:46 +00:00
nisheeth
2db6cf3ed9 Fix for text overflowing inside nested tables. Fix for background colors not
being inherited properly inside tables.


git-svn-id: svn://10.0.0.236/trunk@296 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 05:28:39 +00:00
nisheeth
6d0478a85d Fix for nested comments. Thanks to Jan Kroken (jankr@nntp.ifi.uio.no) for the
patch.


git-svn-id: svn://10.0.0.236/trunk@295 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 04:13:55 +00:00
nisheeth
e31dc91228 LO_UnlockLayout() was being called multiple times in LO_Reflow().
Thanks to Nicholas A. Ambrose (nicka@interdyn.com) for the patch.


git-svn-id: svn://10.0.0.236/trunk@294 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 04:01:00 +00:00
nisheeth
d5f9edd671 Documentation patch. Thanks to Pete Bevin (moose@bestiary.com) for submitting
it.


git-svn-id: svn://10.0.0.236/trunk@293 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 03:54:08 +00:00
ramiro
be8f9bec65 Remove unuised XfeToolBoxForm*() hackery. Chrome widget does all the
magic now.


git-svn-id: svn://10.0.0.236/trunk@292 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 02:08:30 +00:00
ramiro
5bc5ea684f The Great Chrome Rewrite of 1998. Use a chrome manager instead of
doAttachments().  Fixes numerous toolbox bugs and completely simplifies
the way xfe does chrome.  Reviewed by slamm.


git-svn-id: svn://10.0.0.236/trunk@291 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 02:06:22 +00:00
wtc
eab23cb735 In ConvertUnixPathToMacPath, removed the checks that disallow path names
that begin with /bin, /dev, and /etc.  These directories don't have
any special meaning on the Mac and should be allowed.  Thanks to
Mike Pinkerton <pinkerton@netscape.com> for reporting this bug and
providing the fix.


git-svn-id: svn://10.0.0.236/trunk@290 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 01:28:33 +00:00
kipp
b0d9aab4a8 fixed a few typos in the raptor rules
git-svn-id: svn://10.0.0.236/trunk@289 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 01:07:46 +00:00
kipp
75823b0beb Added raptor modules
git-svn-id: svn://10.0.0.236/trunk@288 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 01:05:29 +00:00
wtc
869c2f44aa Ported to HP-UX 9. We acknowledge Richard K. Lloyd <rkl@csc.liv.ac.uk>
for his help.

Files changed: HP-UX.mk, pr/src/Makefile, hpux.c, unix.c, and uxproces.c.
HP-UX.mk: Compare $(basename $(OS_RELEASE)) with A.09 to cover all HP-UX
9 revisions.  Define _PR_NEED_H_ERRNO for HP-UX 9.


git-svn-id: svn://10.0.0.236/trunk@287 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 01:02:00 +00:00
troy
8dd8213152 Removed previous hack, because the real problem with nsHTMLTokens.h was
discovered and fixed


git-svn-id: svn://10.0.0.236/trunk@286 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 00:35:41 +00:00
troy
ce68d1535f Moved inline code for CCommentToken::GetClassName to the .cpp file. This
makes doc++ happy


git-svn-id: svn://10.0.0.236/trunk@285 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 00:33:06 +00:00
pinkerton
5e2a2aeefa First Checked In.
git-svn-id: svn://10.0.0.236/trunk@284 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 00:06:11 +00:00
pinkerton
056ec80331 Draw correctly when in a scroller. Fixed to use local coords correctly and set image size (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@283 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 00:05:39 +00:00
pinkerton
4c5fa0d90e Added CScrollerWithArrows.cp (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@282 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 00:04:52 +00:00
pinkerton
fe25a89339 Added CStandardFlexTable and CScrollerWithArrows CTYPs. (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@281 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 00:04:02 +00:00
pinkerton
a8e2a2dbf5 removed CTYP and CPPB's for CStandardFlexTable because it is no longer just a mail/news thing. It has been moved over to Mozilla_Custom_CPPBs. (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@280 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 00:03:33 +00:00
pinkerton
5409f24638 NavCenter selector view now a subview of a custom scroller (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@279 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 00:02:39 +00:00
pinkerton
0e3304d6b5 added registration of new CScrollerWithArrows classes. (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@278 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 00:01:56 +00:00
scullin
cab6b9f131 Put stuff back in that kipp callously destroyed, including our legal
documents.


git-svn-id: svn://10.0.0.236/trunk@277 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 23:50:51 +00:00
troy
7bc10ed2cf Changed doc_raptor to rm nsHTMLTokens.h before running doc++, because that
file is confusing doc++


git-svn-id: svn://10.0.0.236/trunk@276 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 23:27:31 +00:00
kmcclusk
7e317fe3f6 Added doc++ comments to ns/widget/src/windows
git-svn-id: svn://10.0.0.236/trunk@275 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 23:20:49 +00:00
briano
cf0953bd14 Minor addition of some platform-specific PATH info, and some rewording.
git-svn-id: svn://10.0.0.236/trunk@274 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 22:48:20 +00:00
michaelp
7d5df72783 fixed clip region state popping bug.
git-svn-id: svn://10.0.0.236/trunk@273 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 22:42:24 +00:00
dcone
ce477682f7 Added documentation
git-svn-id: svn://10.0.0.236/trunk@272 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 22:20:32 +00:00
kipp
853c1a68c6 one more cleanup of the tarball rules
git-svn-id: svn://10.0.0.236/trunk@271 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:54:00 +00:00
michaelp
c0608bc4dd fixed bug where we would double paint any frame that had a view.
git-svn-id: svn://10.0.0.236/trunk@270 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:49:29 +00:00
buster
cd9cbaa5c4 documentation changes
git-svn-id: svn://10.0.0.236/trunk@269 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:45:28 +00:00
kipp
3f101446d4 Updated tarball rules
git-svn-id: svn://10.0.0.236/trunk@268 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:44:21 +00:00
kipp
2b7a6addfa Updated tarball rules
git-svn-id: svn://10.0.0.236/trunk@267 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:43:59 +00:00
kipp
99f7bd2235 Updated tarball rules
git-svn-id: svn://10.0.0.236/trunk@266 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:43:16 +00:00
kipp
dd8cc4de86 snapshot for win95 test
git-svn-id: svn://10.0.0.236/trunk@265 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:38:20 +00:00
danm
8dbba5c5ae clear main frame's tab focus during layout only if laying out the active context r=blythe,hyatt
git-svn-id: svn://10.0.0.236/trunk@264 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:34:47 +00:00
kmcclusk
1d0febb8ee Made comments DOC++ compatible
git-svn-id: svn://10.0.0.236/trunk@263 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:33:43 +00:00
rods
cf4be90a5b fixed comments
git-svn-id: svn://10.0.0.236/trunk@262 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 20:59:07 +00:00
ftang
a8e7fd2214 Fix bug for FrontPage generated Chinese/Korean pages could not be view by non native system
git-svn-id: svn://10.0.0.236/trunk@261 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 20:49:47 +00:00
kmcclusk
dc0e16b2e8 Modified comments
git-svn-id: svn://10.0.0.236/trunk@260 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 20:49:25 +00:00
ftang
f014fcdab8 Fix bug for FrontPage generated Chinese/Korean page could not be view
on Non Native system


git-svn-id: svn://10.0.0.236/trunk@259 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 20:48:29 +00:00
rods
b376400ee3 fixed comment
git-svn-id: svn://10.0.0.236/trunk@258 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 20:48:14 +00:00
ftang
0afc16de94 Fix CP1250 and CP1253. Thanks Tomas Brodsky <brodsky@cfar.umd.edu> from the net
git-svn-id: svn://10.0.0.236/trunk@257 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 20:42:55 +00:00
dcone
2e165099a3 Added documentation
git-svn-id: svn://10.0.0.236/trunk@256 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 19:56:15 +00:00
rods
7481ae875e fixed comments
git-svn-id: svn://10.0.0.236/trunk@253 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 19:26:42 +00:00
ftang
c0235d8f5f fix feCharSetInfoArray warnning. Thanks djm@indirect.com (Dan McGuirk) from the net
git-svn-id: svn://10.0.0.236/trunk@252 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 19:24:53 +00:00
montulli
07e82980fa bump revision number
git-svn-id: svn://10.0.0.236/trunk@251 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 19:13:11 +00:00
montulli
7532eec4e9 bump rev number
git-svn-id: svn://10.0.0.236/trunk@250 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 19:12:57 +00:00
dario
8c0f85c945 fixing text to be proper terminated
git-svn-id: svn://10.0.0.236/trunk@249 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 19:05:09 +00:00
dario
2cd60a4c27 fixing the js console
git-svn-id: svn://10.0.0.236/trunk@248 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 19:04:25 +00:00
dario
ec37b06fe8 few fixes
git-svn-id: svn://10.0.0.236/trunk@247 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 19:03:54 +00:00
scullin
1436a8c063 Pulls LICENSE and LEGAL, now.
git-svn-id: svn://10.0.0.236/trunk@246 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 19:02:09 +00:00
montulli
f599ffb5d4 initial add of files for additional pics functionality
git-svn-id: svn://10.0.0.236/trunk@245 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 18:48:28 +00:00
ramiro
3466e08171 Mark the hardcoded geometry as HACKERY. We sill fix this later. Its
important that we get the new chrome mechanism out soon.


git-svn-id: svn://10.0.0.236/trunk@244 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 18:26:31 +00:00
dario
62a353f3c9 signing
git-svn-id: svn://10.0.0.236/trunk@243 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 18:24:53 +00:00
dario
406f1e60f7 adding NPL
git-svn-id: svn://10.0.0.236/trunk@242 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 18:16:23 +00:00
dario
85b6df8b9b another js example
git-svn-id: svn://10.0.0.236/trunk@241 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 18:14:55 +00:00
scullin
05329aa11d Pull XP_COM branch of libpref instead of trunk to match UNIX makefile.
git-svn-id: svn://10.0.0.236/trunk@240 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 17:48:47 +00:00
hardts
365c35265b added doc_raptor to makefile
git-svn-id: svn://10.0.0.236/trunk@239 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 17:29:44 +00:00
ramiro
8e3d8ad789 Make the frame shell dimensions something reasonable for the time being.
git-svn-id: svn://10.0.0.236/trunk@238 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 17:01:41 +00:00
karnaze
5e791d5a8a added doc++ comments
git-svn-id: svn://10.0.0.236/trunk@237 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 16:53:16 +00:00
slamm
492a2f3cbf Allocate memory for the url window target because we free it later. Fix from Dan McGuirk <djm@indirect.com>. a=ramiro.
git-svn-id: svn://10.0.0.236/trunk@236 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 16:49:20 +00:00
ramiro
68c20c6807 Update REQUIRES to properly include Microline and XfeWidgets.
git-svn-id: svn://10.0.0.236/trunk@235 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 15:03:50 +00:00
ramiro
2df2135816 Request geometry request when geom flag gets set in the ConstraintSetValues
operation.


git-svn-id: svn://10.0.0.236/trunk@234 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 14:59:44 +00:00
ramiro
e84b770526 XfeChrome is now a used widget.
git-svn-id: svn://10.0.0.236/trunk@233 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 14:58:51 +00:00
ramiro
b67236dcde Add a blurb for previous checkin.
git-svn-id: svn://10.0.0.236/trunk@232 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 14:45:39 +00:00
ramiro
006183c1ef Layout children/components on geometry management.
git-svn-id: svn://10.0.0.236/trunk@231 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 14:43:52 +00:00
ramiro
7a4cf23d4b Implement PreferredGeometry(). Add a good GeometryManager().
git-svn-id: svn://10.0.0.236/trunk@230 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 14:43:12 +00:00
ramiro
8b793bfe7c Add _XfeLiberalGeometryManager() and _XfeMakeGeometryRequest().
git-svn-id: svn://10.0.0.236/trunk@229 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 10:49:34 +00:00
scullin
c10fecc3bc clobber -> clobber_all
git-svn-id: svn://10.0.0.236/trunk@228 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 05:56:38 +00:00
scullin
8434312c2a Fix pref pull
git-svn-id: svn://10.0.0.236/trunk@227 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 02:57:21 +00:00
selmer
7ccd35ae17 Reworked to defeat LiveConnect unsatisfied link error
git-svn-id: svn://10.0.0.236/trunk@226 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 02:51:39 +00:00
scullin
b51bdc3146 Added standalone image lib define, mirrors one in config.mak. Approved
by briano.


git-svn-id: svn://10.0.0.236/trunk@225 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 02:01:29 +00:00
scullin
2c442cc28e IRIX build fixes.
git-svn-id: svn://10.0.0.236/trunk@224 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:58:11 +00:00
scullin
3300083588 Signed.
git-svn-id: svn://10.0.0.236/trunk@222 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:49:52 +00:00
scullin
054293fc6d UNIX version of raptor.mak
git-svn-id: svn://10.0.0.236/trunk@221 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:49:20 +00:00
rjc
31b9249a6d Appletalk is Mac only.
git-svn-id: svn://10.0.0.236/trunk@220 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:31:02 +00:00
rjc
886a1806eb (Mac) Appletalk data source.
git-svn-id: svn://10.0.0.236/trunk@219 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:26:35 +00:00
rjc
77014e9638 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@218 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:24:59 +00:00
rjc
f2d7ac5a6b Fix bugs with makeNewID().
git-svn-id: svn://10.0.0.236/trunk@217 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:24:06 +00:00
wtc
97add7e185 Deleted the unused variable 'count' in _PR_MD_INTERVAL_PER_SEC(). We
acknowledge Rick Osborne <rick@spacey.net> for reporting this problem
and suggesting a fix.


git-svn-id: svn://10.0.0.236/trunk@216 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:06:32 +00:00
kmcclusk
aeb4450f82 Added/Improved header file comments
git-svn-id: svn://10.0.0.236/trunk@215 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 00:31:59 +00:00
briano
ac0ed0fba1 Added support for M68k Linux. Thanks to Jes Sorensen (Jes.Sorensen@cern.ch) for the patch.
git-svn-id: svn://10.0.0.236/trunk@214 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 00:26:45 +00:00
briano
50d7e27245 Changed 'MACLINUX' back to 'MKLINUX' so the MkLinux builds will work.
Added support for M68k Linux.  Thanks to Jes Sorensen (Jes.Sorensen@cern.ch) for the patch.


git-svn-id: svn://10.0.0.236/trunk@213 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 00:24:56 +00:00
briano
2ab50be569 Changed the 'MACLINUX' macro reference to 'MKLINUX'. Again.
git-svn-id: svn://10.0.0.236/trunk@212 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 00:15:11 +00:00
relliott
69177801f3 Bumping revision number to 3.0
git-svn-id: svn://10.0.0.236/trunk@211 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 00:04:23 +00:00
briano
1a367fdb4e Changed the 'MACLINUX' macro reference to 'MKLINUX'.
git-svn-id: svn://10.0.0.236/trunk@210 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 00:00:42 +00:00
ftang
55366425af (This is for the previous checkin) Fix warnning. Thanks tenthumbs@cybernex.net
git-svn-id: svn://10.0.0.236/trunk@209 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 00:00:06 +00:00
ftang
ff934ff85d Fix one warning. Thanks for
git-svn-id: svn://10.0.0.236/trunk@208 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 23:58:48 +00:00
briano
08aac7ea86 Changed the 'MACLINUX' macro reference to 'MKLINUX'. Again.
git-svn-id: svn://10.0.0.236/trunk@207 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 23:56:35 +00:00
relliott
767fcda0dd First release of universal localization program kits
git-svn-id: svn://10.0.0.236/trunk@206 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 23:32:42 +00:00
cyeh
442958e53d add the README directory to all platforms by adding it to MozillaCommon
git-svn-id: svn://10.0.0.236/trunk@205 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 23:26:12 +00:00
cyeh
605596111c First Checked In.
git-svn-id: svn://10.0.0.236/trunk@204 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 23:10:06 +00:00
cyeh
da3e5b6210 adding build documentation to tree
git-svn-id: svn://10.0.0.236/trunk@203 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 23:08:30 +00:00
pinkerton
91dd9f2a06 Draw menu separators in tree with icon, but no text (used to have text that said "<Separator>" and no icon). (rev sdagley, appr sdagley).
git-svn-id: svn://10.0.0.236/trunk@202 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:55:56 +00:00
wtc
c0ff862b36 Got rid of compiler warnings. We acknowledge the help of Nathan
Torkington <gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@201 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:55:27 +00:00
pinkerton
0f2d6fead4 Fix for dragging toolbar over the finder and releasing mouse, which before would crash the Finder. (rev sdagley, appr sdagley)
git-svn-id: svn://10.0.0.236/trunk@200 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:54:57 +00:00
wtc
95bc804e1c Got rid of compiler warnings. We acknoweldge the help of Nathan
Torkington <gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@199 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:49:10 +00:00
wtc
0846173c2b localtime_r is declared on Solaris only if _REENTRANT is defined.
git-svn-id: svn://10.0.0.236/trunk@198 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:48:07 +00:00
wtc
faee9ac904 Got rid of compiler warnings. We acknowledge the help of Nathan
Torkington <gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@197 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:46:48 +00:00
cyeh
a925c92350 checking in sources to customized version of gmake
git-svn-id: svn://10.0.0.236/trunk@196 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:35:47 +00:00
cyeh
ee9cb51517 adding source to shmsdos
git-svn-id: svn://10.0.0.236/trunk@195 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:30:34 +00:00
cyeh
ca95fefb7a adding in source for uname
git-svn-id: svn://10.0.0.236/trunk@194 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:29:30 +00:00
wtc
3bf56ac245 Fixed printf format mismatch problems. We acknowledge the help of
Nathan Torkington <gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@193 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:26:32 +00:00
kipp
e92090ec86 made more robust by cd'ing into the correct top level dir before each build rule
git-svn-id: svn://10.0.0.236/trunk@192 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:25:36 +00:00
wtc
d701ff30a1 In PR_GetSpecialFD, cast the PRSpecialFD variable 'osfd' to int
because some compilers make the enum PRSpecialFD an unsigned int
type and complain that 'osfd' is always >= PR_StandardInput, which
has the value 0.


git-svn-id: svn://10.0.0.236/trunk@191 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:25:13 +00:00
wtc
213ccbabb3 Added function declarations to eliminate compiler warnings.
git-svn-id: svn://10.0.0.236/trunk@190 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:22:43 +00:00
wtc
81662fa460 Added declaration of _MD_YIELD.
git-svn-id: svn://10.0.0.236/trunk@189 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:21:00 +00:00
wtc
e34d99abe7 Fixed compiler warnings, mostly by adding function declarations.
git-svn-id: svn://10.0.0.236/trunk@188 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:19:51 +00:00
wtc
cad5ce2d27 Fixed compiler warnings, mostly undeclared functions. We acknoweldge
the help of Nathan Torkington <gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@187 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:04:19 +00:00
wtc
bc812c4978 Fixed printf format mismatches. Fixed are provided by Nathan Torkington
<gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@186 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:02:11 +00:00
wtc
6be980a494 Fixed compiler warnings, mostly in printf format mismatches. Most of
the fixes are supplied by Nathan Torkington <gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@185 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 22:00:47 +00:00
hshaw
99904c2c02 Remainder of softupdt has been checked into the pub tree. Add the modules references back
git-svn-id: svn://10.0.0.236/trunk@184 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:57:19 +00:00
wtc
dd0343d6f1 Removed the -Wno-format compiler switch. We do want to get printf
format mismatch warnings.


git-svn-id: svn://10.0.0.236/trunk@180 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:44:55 +00:00
wtc
84996761f9 Do not build pr/tests by default. This shortens the default build
time.  Also, use 'rm -r -f' instead of 'rm -rf' because the 'rm'
command of tcsh.exe on Win32 does not understand clustered command
line options.


git-svn-id: svn://10.0.0.236/trunk@179 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:40:18 +00:00
kipp
18cc12f1cc signed
git-svn-id: svn://10.0.0.236/trunk@178 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:32:58 +00:00
kipp
5cc8a4677b Removed woofer
git-svn-id: svn://10.0.0.236/trunk@177 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:27:25 +00:00
kipp
f2f1dac566 nuked
git-svn-id: svn://10.0.0.236/trunk@176 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:27:12 +00:00
kipp
67a9893806 pubbed
git-svn-id: svn://10.0.0.236/trunk@175 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:23:46 +00:00
hshaw
dec4926da0 bump rev to 3.1
git-svn-id: svn://10.0.0.236/trunk@173 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:12:08 +00:00
kipp
3974563c5e another makefile tweak
git-svn-id: svn://10.0.0.236/trunk@172 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:08:14 +00:00
hshaw
ecfecf7a81 Free the lizard
git-svn-id: svn://10.0.0.236/trunk@171 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 21:07:10 +00:00
kipp
68ac3f39fe Repaired build problems w/ layout/base dependencies
git-svn-id: svn://10.0.0.236/trunk@170 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 20:56:42 +00:00
kipp
b821fd8fd2 more files to pull
git-svn-id: svn://10.0.0.236/trunk@168 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 20:50:21 +00:00
kipp
e742fdad6c bug fixed
git-svn-id: svn://10.0.0.236/trunk@167 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 20:39:27 +00:00
kipp
fb1503758e moved to pub
git-svn-id: svn://10.0.0.236/trunk@165 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 20:24:54 +00:00
cyeh
964e345ac3 Add ns/cmd/dialup to Mac and Windows
git-svn-id: svn://10.0.0.236/trunk@164 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 19:18:52 +00:00
guha
3c72e5a9cd Fix the problem with sitemaps going away on page
transition


git-svn-id: svn://10.0.0.236/trunk@163 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 02:00:34 +00:00
ramiro
2e963b1145 Make the local file system browser work on unix. The 'file:///' url
prefix was missing.
Thanks to Dan McGuirk <djm@indirect.com>.


git-svn-id: svn://10.0.0.236/trunk@162 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 01:38:17 +00:00
ramiro
e6edb16eff Add editor back to the preferences and fix the editor startup problem.
Thanks to Dan McGuirk <djm@indirect.com>


git-svn-id: svn://10.0.0.236/trunk@161 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 01:30:26 +00:00
guha
bb88621ddd Sitemap bugfixes.
git-svn-id: svn://10.0.0.236/trunk@147 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-10 21:00:30 +00:00
wtc
3b8b53b99f Declare _MD_EarlyInit() to eliminate 'undeclared function' compiler warning.
Contributed by Nat <gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@138 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 19:50:19 +00:00
wtc
be7a3234b7 Fixed 'unused variable' warning for the variable 'nfds' in select()
on local-threads-only platforms.  This is pointed out by many people,
including Nat <gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@137 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 19:44:46 +00:00
wtc
e5a65835ea Fixed 'unused variable' compiler warning in prsocket.c. This is pointed
out by many people, including Nat <gnat@frii.com>.


git-svn-id: svn://10.0.0.236/trunk@136 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 19:41:13 +00:00
selmer
d3c93b9f3f Add dialup to free source
git-svn-id: svn://10.0.0.236/trunk@131 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 04:22:42 +00:00
selmer
b4b851f192 add the ascii files
git-svn-id: svn://10.0.0.236/trunk@130 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 04:11:30 +00:00
selmer
91d277d401 add ascii files
git-svn-id: svn://10.0.0.236/trunk@129 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 04:07:52 +00:00
selmer
c630e46deb Add binaries with -kb
git-svn-id: svn://10.0.0.236/trunk@128 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 03:54:33 +00:00
ramiro
bafa1dd826 Dont change the cursor to a watch when space-ing through a document.
thanks to Darrell Kindred <dkindred@cmu.edu>
reviewed by djw@netscape.com.


git-svn-id: svn://10.0.0.236/trunk@127 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 02:41:49 +00:00
cyeh
4d77375663 fix windows bustage removing libcnv compression.
git-svn-id: svn://10.0.0.236/trunk@126 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 02:02:37 +00:00
ramiro
8b6045b383 make sure XmNlist gets defined
git-svn-id: svn://10.0.0.236/trunk@125 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 01:47:59 +00:00
cyeh
b11c803590 change log, with proper . extension
git-svn-id: svn://10.0.0.236/trunk@124 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 01:18:48 +00:00
cyeh
1653020b32 change name to have .html extension
git-svn-id: svn://10.0.0.236/trunk@123 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 01:12:31 +00:00
cyeh
67c2ebfd7c add ns/CHANGELOG (history of changes to the repository to default build)
git-svn-id: svn://10.0.0.236/trunk@122 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 00:39:10 +00:00
cyeh
ff6653b3bb Remove for legal reasons.
git-svn-id: svn://10.0.0.236/trunk@120 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 00:33:14 +00:00
valeski
a885ac9a54 various null checks, fixes 107730, rev'd by malmer
git-svn-id: svn://10.0.0.236/trunk@117 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 00:07:08 +00:00
montulli
8612e7e168 fix really small pics bug by calling Illegal_to_underscore
Rev: gagan


git-svn-id: svn://10.0.0.236/trunk@109 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 21:23:19 +00:00
pinkerton
644f0dd2e1 Added public DoInlineEditing() (rev sdagley, appr don)
git-svn-id: svn://10.0.0.236/trunk@108 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 20:30:13 +00:00
pinkerton
213e41d92d added public DoInlineEdit for the node edit HT event and made RefreshCellRange public (it was protected, but is public in LTreeView). (rev sdagley, appr don)
git-svn-id: svn://10.0.0.236/trunk@107 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 20:29:54 +00:00
pinkerton
e942eae6ca Redid workspace selection/shelf notification to fix some bugs. Also now responds to HT's node edit event, though it is still commented out because of redraw problems. Added a slew of comments to make the class (and the messaging scheme) understandable and point out where redraw bugs are. (rev sdagley, appr don)
git-svn-id: svn://10.0.0.236/trunk@106 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 20:29:18 +00:00
pinkerton
9abf2be0fa now an LBroadcaster to tell the title area about a change to the current workspace so the name is always correct. (rev sdagley, appr don)
git-svn-id: svn://10.0.0.236/trunk@105 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 20:27:48 +00:00
pinkerton
57f4e78bd7 Now current with rewrite of FE/HT messages for opening/closing shelf and setting current workspace. (rev sdagley, appr don)
git-svn-id: svn://10.0.0.236/trunk@104 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 20:27:24 +00:00
pinkerton
ceef1596f7 The LCaption in the title area was not correctly bound to the left and the right so it did not grow when the window grew. (rev sdagley, appr don)
git-svn-id: svn://10.0.0.236/trunk@103 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 20:26:26 +00:00
pinkerton
1bb93b42df Added a stack-based class for setting/restoring the HT event notification mask (rev sdagley, appr don)
git-svn-id: svn://10.0.0.236/trunk@102 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 20:25:51 +00:00
guha
3dbdfee941 2.1 vs 3.1 lossage
git-svn-id: svn://10.0.0.236/trunk@100 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 05:34:52 +00:00
guha
2e7ea0fb68 makefile.win fix
git-svn-id: svn://10.0.0.236/trunk@99 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 05:06:33 +00:00
cyeh
df6db40c05 Add ns/modules/xml to MozillaAll. per dp. approved donm, ltabb.
git-svn-id: svn://10.0.0.236/trunk@98 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 04:59:56 +00:00
guha
17bf49c7a3 Spankage for new XML to build on Mac
git-svn-id: svn://10.0.0.236/trunk@97 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 04:48:26 +00:00
guha
107906a9eb Fix Mac bustage by adding required casts
git-svn-id: svn://10.0.0.236/trunk@96 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 04:44:28 +00:00
397 changed files with 49274 additions and 144743 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,123 +0,0 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef STDAFX_PCH
#define STDAFX_PCH
#define OEMRESOURCE
#if defined(DEBUG_blythe)
// Set up a flag specific to WFE developers in the client
#define DEBUG_WFE
#endif
/* Very windows specific includes.
*/
/* MFC, KFC, RUN DMC, whatever */
#include <afxwin.h>
#include <afxext.h>
#include <afxpriv.h>
#include <afxole.h>
#include <afxdisp.h>
#include <afxodlgs.h>
#ifdef _WIN32
#include <afxcmn.h>
#endif
/* More XP than anything */
#include "xp.h"
#include "fe_proto.h"
#include "fe_rgn.h"
#include "libi18n.h"
#include "xlate.h"
#include "ntypes.h"
#ifdef EDITOR
#include "edttypes.h"
#endif
#include "xpassert.h"
#include "lo_ele.h"
#include "layers.h"
/* Standard C includes */
#ifndef _WIN32
#include <dos.h>
#endif
#include <malloc.h>
#include <direct.h>
#include <stdarg.h>
#include <time.h>
#include <io.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
#ifdef DEBUG
#include <assert.h>
#endif
/* Very windows specific includes.
*/
/* WFE needs a layout file */
extern "C" {
#include "layout.h"
}
/* Some common defines. */
#ifndef _AFXDLL
#define new DEBUG_NEW
#endif
/* All front end forward declarations needed to compile. */
#include "forward.h"
/* Front end Casting macros. */
#include "cast.h"
/* General purpose utilities. */
#include "feutil.h"
/* afxData/sysInfo */
#include "sysinfo.h"
/* Some defines we like everywhere. */
#include "resource.h"
#include "defaults.h"
/* The application include and
* Commonly used, rarely changed headers */
#include "ncapiurl.h"
#include "genedit.h"
#include "genframe.h"
#include "genview.h"
#include "gendoc.h"
#include "intlwin.h"
#include "mozilla.h"
#include "cxwin.h"
#include "winproto.h"
#ifdef DEBUG
#ifdef assert
#undef assert
#endif
#define assert(x) ASSERT(x)
#endif
#endif /* STDAFX_PCH */

View File

@@ -1,664 +0,0 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _AB_COM_H_
#define _AB_COM_H_
#include "xp_core.h"
#include "msgcom.h"
#include "abdefn.h"
#include "dirprefs.h"
#ifdef XP_CPLUSPLUS
class AB_Pane;
class AB_ContainerPane;
class AB_ContainerInfo;
class AB_MailingListPane;
class AB_PersonPane;
#else
typedef struct AB_Pane AB_Pane;
typedef struct AB_ContainerPane AB_ContainerPane;
typedef struct AB_ContainerInfo AB_ContainerInfo;
typedef struct AB_MailingListPane AB_MailingListPane;
typedef struct AB_PersonPane AB_PersonPane;
#endif
XP_BEGIN_PROTOS
#define AB_API extern "C"
#if defined(XP_MAC)
#define FE_IMPLEMENTS_SHOW_PROPERTY_SHEET
#endif
const ABID AB_ABIDUNKNOWN = 0; /* Find a better home for this somewhere! */
/* new errors added by mscott for the 2 pane AB UI. I will eventually name this enumerated type AB_Error */
enum
{
AB_SUCCESS = 0,
AB_FAILURE,
AB_INVALID_PANE,
AB_INVALID_CONTAINER,
AB_INVALID_ATTRIBUTE,
AB_OUT_OF_MEMORY
};
/* these are the types of possible containers */
typedef enum
{
AB_LDAPContainer,
AB_MListContainer, /* a mailing list */
AB_PABContainer /* a personal AB */
} AB_ContainerType;
/* AB_ContainerAttributes define the types of information FEs can ask the BE about
a AB_ContainerInfo in the ABContainerPane. */
typedef enum
{
attribContainerType, /* mailing list? LDAP directory? PAB? */
attribName, /* the name for the container */
attribNumChildren, /* how many child containers does this container have? */
attribDepth, /* container depth in the overall hierarchy. 0 == root ctr, 1 == one level below a root container, etc. */
attribContainerInfo /* FEs might want to get the container Info * for a line in the container pane */
} AB_ContainerAttribute;
typedef struct AB_ContainerAttribValue
{
AB_ContainerAttribute attrib; /* used to determine value of the union */
union{
char * string;
int32 number; /* used by numchildren & depth */
AB_ContainerType containerType;
AB_ContainerInfo * container;
} u;
} AB_ContainerAttribValue;
typedef enum
{
AB_Drag_Not_Allowed = 0x00000000,
AB_Require_Copy = 0x00000001,
AB_Require_Move = 0x00000002,
AB_Default_Drag = 0xFFFFFFFF
} AB_DragEffect;
typedef enum
{
AB_attribUnknown = 0, /* unrecognized attribute */
AB_attribEntryType, /* mailing list or person entry */
AB_attribEntryID,
AB_attribFullName,
AB_attribNickName,
AB_attribGivenName, /* all of the following are person entry specific */
AB_attribMiddleName,
AB_attribFamilyName,
AB_attribCompanyName,
AB_attribLocality,
AB_attribRegion,
AB_attribEmailAddress,
AB_attribInfo,
AB_attribHTMLMail,
AB_attribExpandedName,
AB_attribTitle,
AB_attribPOAddress,
AB_attribStreetAddress,
AB_attribZipCode,
AB_attribCountry,
AB_attribWorkPhone,
AB_attribFaxPhone,
AB_attribHomePhone,
AB_attribDistName,
AB_attribSecurity,
AB_attribCoolAddress,
AB_attribUseServer,
AB_attribPager,
AB_attribCellularPhone,
AB_attribDisplayName,
AB_attribWinCSID, /* character set id */
AB_attribOther /* any attrib with this value or higher is always a string type (our dyanmic attributes) */
} AB_AttribID;
/* WARNING!!! WILL BE PHASING THIS STRUCTURE OUT!!!! */
typedef struct AB_EntryAttributeItem{
AB_AttribID id;
char * description; /* resource string specifying a user-readable descript for the attrib i.e. "First Name" */
XP_Bool sortable; /* is this attribute sortable? (may help FEs display the column if they know if it can be sorted or not */
}AB_EntryAttributeItem;
typedef enum{
AB_MailingList = 0,
AB_Person
} AB_EntryType;
typedef struct AB_AttributeValue
{
AB_AttribID attrib; /* we need this to know how to read the union */
union{
char * string;
XP_Bool boolValue;
AB_EntryType entryType; /* mailing list or person entry */
int16 shortValue; /* use for server type or WinCSID field */
} u;
} AB_AttributeValue;
/* New Column ID structure used to abstract the columns in the AB_Pane used by the FEs from the attributes thos columns actually
represent. */
typedef enum{
AB_ColumnID0 = 0,
AB_ColumnID1,
AB_ColumnID2,
AB_ColumnID3,
AB_ColumnID4,
AB_ColumnID5,
AB_ColumnID6,
AB_NumberOfColumns /* make sure this is always the last one!! */
} AB_ColumnID;
typedef struct AB_ColumnInfo{
AB_AttribID attribID; /* the attrib ID this column is displaying */
char * displayString; /* column display string */
XP_Bool sortable; /* is this column attribute sortable? i.e. phone number is not! */
} AB_ColumnInfo;
/**********************************************************************************************
FE Call back functions. We'll show the types here...NOTE: FEs must now register their call back
functions through these APIs so the back end knows which return to use.
*********************************************************************************************/
/* FEs must register this function with the appropriate pane, it is called by the back end in
response to the following commands: AB_PropertiesCmd, AB_AddUserCmd, AB_AddMailingListCmd */
/* typedef int AB_ShowPropertySheetForEntryFunc (MSG_Pane * pane, AB_EntryType entryType); */
typedef int AB_ShowPropertySheetForEntryFunc (MSG_Pane * pane, MWContext * context);
int AB_SetShowPropertySheetForEntryFunc(
MSG_Pane * abPane,
AB_ShowPropertySheetForEntryFunc * func);
/* BE sets the type for the DIR_Server and hands it to the FEs to be displayed & filled out in a
pane. It is called by the back end in response to the following commands: AB_PropertiesCmd,
AB_NewLDAPDirectory, AB_NewAddressBook. */
typedef int AB_ShowPropertySheetForDirFunc(DIR_Server * server, MWContext * context, XP_Bool newDirectory /* is it a new directory? */);
int AB_SetShowPropertySheetForDirFunc(
MSG_Pane * abcPane, /* container pane */
AB_ShowPropertySheetForDirFunc * func);
/***************************************************************************************
DON'T USE THIS FUNCTION!!!! THIS WILL BE PHASING OUT!!!!!! #mscott 01/21/98
This is a callback into the FE instructing them to bring up a person entry pane or a
mailing list pane. The back end has already created the pane. A type is included to let the FE
determine if the pane is a mailing list or person entry pane. In addition, in the case of a mailing list
pane, the FE must still initialize the mailing list pane before it can be used
***************************************************************************************/
#ifdef FE_IMPLEMENTS_SHOW_PROPERTY_SHEET
extern int FE_ShowPropertySheetForAB2(
MSG_Pane * pane, /* BE created mailing list or person entry pane */
AB_EntryType entryType); /* mailing list or person entry */
#endif
/***************************************************************************************
None pane-specific APIs. These function work on many panes
***************************************************************************************/
int AB_ClosePane(MSG_Pane * pane);
/****************************************************************************************
Address Book Pane General APIs - creating, initializing, closing, changing containers,
searching, etc.
*****************************************************************************************/
int AB_CreateABPane(
MSG_Pane ** abPane,
MWContext * context,
MSG_Master * master);
int AB_InitializeABPane(
MSG_Pane * abPane,
AB_ContainerInfo * abContainer);
/* to change the container the abPane is currently displaying */
int AB_ChangeABContainer(
MSG_Pane * abPane,
AB_ContainerInfo * container); /* the new containerInfo to display */
int AB_GetEntryIndex(
MSG_Pane * abPane,
ABID id, /* entry id in the database */
MSG_ViewIndex * index); /* FE allocated, BE fills with index */
int AB_GetABIDForIndex(
MSG_Pane * abPane,
MSG_ViewIndex index,
ABID * id); /* FE allocated. BE fills with the id you want */
int AB_SearchDirectoryAB2(
MSG_Pane * abPane,
char * searchString);
int AB_LDAPSearchResultsAB2(
MSG_Pane * abPane,
MSG_ViewIndex index,
int32 num);
int AB_FinishSearchAB2(MSG_Pane * abPane);
int AB_CommandAB2(
MSG_Pane * srcPane, /* NOTE: this can be a ABpane or an ABContainerPane!!! you can delete containers & entries */
AB_CommandType command, /* delete or mailto are the only currently supported commands */
MSG_ViewIndex * indices,
int32 numIndices);
int AB_CommandStatusAB2(
MSG_Pane * srcPane, /* NOTE: Can be an ABPane or an ABContainerPane!! */
AB_CommandType command,
MSG_ViewIndex * indices,
int32 numIndices,
XP_Bool * selectable_p,
MSG_COMMAND_CHECK_STATE * selected_p,
const char ** displayString,
XP_Bool * plural_p);
/* still need to add registering and unregistering compose windows */
/****************************************************************************************
AB_ContainerInfo General APIs - adding users and a sender. Doesn't require a pane.
*****************************************************************************************/
int AB_AddUserAB2(
AB_ContainerInfo * abContainer, /* the container to add the person to */
AB_AttributeValue * values, /* FE defined array of attribute values for the new user. FE must free this array */
uint16 numItems,
ABID * entryID); /* BE returns the ABID for this new user */
int AB_AddUserWithUIAB2(
AB_ContainerInfo * abContainer,
AB_AttributeValue * values,
uint16 numItems,
XP_Bool lastOneToAdd);
int AB_AddSenderAB2(
AB_ContainerInfo * abContainer,
char * author,
char * url);
/****************************************************************************************
Drag and Drop Related APIs - vcards, ab lines, containers, etc.
*****************************************************************************************/
int AB_DragEntriesIntoContainer(
MSG_Pane * srcPane, /* could be an ABPane or ABCPane */
const MSG_ViewIndex * srcIndices, /* indices of items to be dragged */
int32 numIndices,
AB_ContainerInfo * destContainer,
AB_DragEffect request); /* copy or move? */
/* FE's should call this function to determine if the drag & drop they want to perform is
valid or not. I would recommend calling it before the FE actually performs the drag & drop call */
AB_DragEffect AB_DragEntriesIntoContainerStatus(
MSG_Pane * abPane,
const MSG_ViewIndex * indices,
int32 numIndices,
AB_ContainerInfo * destContainer,
AB_DragEffect request); /* do you want to do a move? a copy? default drag? */
/****************************************************************************************
Importing and Exporting - ABs from files, vcards...
*****************************************************************************************/
typedef enum
{
AB_Filename, /* char * in import and export APIs contain an FE allocated/freed filename */
AB_PromptForFileName, /* prompt for file name on import or export */
AB_Vcard,
AB_CommaList, /* comma separated list of email addresses */
AB_RawData /* we don't know what it is, will try to extract email addresses */
} AB_ImportExportType;
int AB_ImportData(
AB_ContainerInfo * destContainer,
const char * buffer, /* could be a filename or NULL (if type = prompt for filename) or a block of data to be imported */
int32 bufSize, /* how big is the buffer? */
AB_ImportExportType dataType); /* valid types: All */
/* returns TRUE if the container accepts imports of the data type and FALSE otherwise */
XP_Bool AB_ImportDataStatus(
AB_ContainerInfo * destContainer,
AB_ImportExportType dataType);
/* exporting always occurs to a file unless the data type is vcard. Only valid export data types are: vcard,
filename, prompt for filename */
int AB_ExportData(
AB_ContainerInfo * srcContainer,
char ** buffer, /* filename or NULL. Or if type = Vcard, the BE allocated vcard. FE responosible for freeing it?? */
int32 * bufSize, /* ignored unless VCard is data type in which case FE allocates, BE fills */
AB_ImportExportType dataType); /* valid types: filename, prompt for filename, vcard */
/****************************************************************************************
ABContainer Pane --> Creation, Loading, getting line data for each container.
*****************************************************************************************/
int AB_CreateContainerPane(
MSG_Pane ** abContainerPane, /* BE will pass back ptr to pane through this */
MWContext * context,
MSG_Master * master);
int AB_InitializeContainerPane(MSG_Pane * abContainerPane);
/* this will return MSG_VIEWINDEXNONE if the container info is not in the pane */
MSG_ViewIndex AB_GetIndexForContainer(
MSG_Pane * abContainerPane,
AB_ContainerInfo * container); /* container you want the index for */
/* this will return NULL if the index is invalid */
AB_ContainerInfo * AB_GetContainerForIndex(
MSG_Pane * abContainerPane,
const MSG_ViewIndex index);
/* the following set of APIs support getting/setting container pane line data out such as the container's
name, type, etc. We are going to try a particular discipline for memory management of AB_ContainerAttribValues.
For APIs which get an attribute value, the BE will actually allocate the struct. To free the space, the FE should
call AB_FreeContainerAttribValue. For any API which sets an attribute value, the FE is responsible for allocating and
de-allocating the data. */
int AB_GetContainerAttributeForPane(
MSG_Pane * abContainerPane,
MSG_ViewIndex index, /* index of container you want information for */
AB_ContainerAttribute attrib, /* attribute FE wants to know */
AB_ContainerAttribValue ** value); /* BE allocates struct. FE should call AB_FreeContainerAttribValue to free space when done */
int AB_SetContainerAttributeForPane(
MSG_Pane * abContainerPane,
MSG_ViewIndex index,
AB_ContainerAttribValue * value); /* FE handles all memory allocation! */
int AB_GetContainerAttribute(
AB_ContainerInfo * ctr,
AB_ContainerAttribute attrib,
AB_ContainerAttribValue ** value); /* BE allocates struct. FE should call AB_FreeContainerAttribValue to free space when donee */
int AB_SetContainerAttribute(
AB_ContainerInfo * ctr,
AB_ContainerAttribValue * value); /* FE handles all memory allocateion / deallocation! */
int AB_GetContainerAttributes(
AB_ContainerInfo * ctr,
AB_ContainerAttribute * attribsArray,
AB_ContainerAttribValue ** valuesArray,
uint16 * numItems);
int AB_SetContainerAttributes(
AB_ContainerInfo * ctr,
AB_ContainerAttribValue * valuesArray,
uint16 numItems);
/* getting and setting multiple container attributes on a per container pane basis */
int AB_GetContainerAttributesForPane(
MSG_Pane * abContainerPane,
MSG_ViewIndex index,
AB_ContainerAttribute * attribsArray,
AB_ContainerAttribValue ** valuesArray,
uint16 * numItems);
int AB_SetContainerAttributesForPane(
MSG_Pane * abContainerPane,
MSG_ViewIndex index,
AB_ContainerAttribValue * valuesArray,
uint16 numItems);
int AB_FreeContainerAttribValue(AB_ContainerAttribValue * value); /* BE will free the attribute value */
int AB_FreeContainerAttribValues(AB_ContainerAttribValue * valuesArray, uint16 numItems);
XP_Bool AB_IsStringContainerAttribValue(AB_ContainerAttribValue * value); /* use this to determine if your attrib is a string attrib */
/* Use the following two functions to build the combo box in the Address Window of all the root level containers.
You first ask for the number of root level (PABs and LDAP directories). Use this number to allocate an array of
AB_ContainerInfo ptrs. Give this array to the back end and we will fill it. FE can destroy array when done with it.
FE shoud NOT be deleting the individual AB_ContainerInfo ptrs. */
int AB_GetNumRootContainers(
MSG_Pane * abContainerPane,
int32 * numRootContainers);
int AB_GetOrderedRootContainers(
MSG_Pane * abContainerPane,
AB_ContainerInfo ** ctrArray, /* FE Allocated & Freed */
int32 * numCtrs); /* in - # of elements in ctrArray. out - BE fills with # root containers stored in ctrArray */
/* sometimes you want to get a handle on the DIR_Sever for a particular container. Both return NULL if for some
reason there wasn't a DIR_Server. If the container is a mailing list, returns DIR_Server of the PAB the list is in.
NOTE: If you modify any of the DIR_Server properties, you should call AB_UpdateDIRServerForContainer to make sure that the container
(and hence any pane views on the container) are updated */
DIR_Server * AB_GetDirServerForContainer(AB_ContainerInfo * container);
/* Please don't call this function. It is going away!!! Use AB_UpdateDirServerForContainerPane instead!! */
int AB_UpdateDIRServerForContainer(AB_ContainerInfo * container);
/* will create a new container in the container pane if the directory does not already exist. Otherwise updates the
directory's container in the pane */
int AB_UpdateDIRServerForContainerPane(
MSG_Pane * abContainerPane,
DIR_Server * directory);
/*******************************************************************************************************************
Old Column Header APIs. These will be phased out!!! Please don't use them
******************************************************************************************************************/
int AB_GetNumEntryAttributesForContainer(
AB_ContainerInfo * container,
uint16 * numItems); /* BE will fill this integer with the number of available attributes for the container */
int AB_GetEntryAttributesForContainer(
AB_ContainerInfo * container,
AB_EntryAttributeItem * items, /* FE allocated array which BE fills with values */
uint16 * maxItems); /* FE passes in # elements allocated in array. BE returns # elements filled in array */
/********************************************************************************************************************
Our New Column Header APIs. We'll be phasing out AB_GetNumEntryAttributesForContainer and AB_GetEntryAttributesForContainer
********************************************************************************************************************/
AB_ColumnInfo * AB_GetColumnInfo(
AB_ContainerInfo * container,
AB_ColumnID columnID);
int AB_GetNumColumnsForContainer(AB_ContainerInfo * container);
int AB_GetColumnAttribIDs(
AB_ContainerInfo * container,
AB_AttribID * attribIDs, /* FE allocated array of attribs. BE fills with values */
int * numAttribs); /* FE passes in # elements allocated in array. BE returns # elements filled */
int AB_FreeColumnInfo(AB_ColumnInfo * columnInfo);
/****************************************************************************************
AB Pane List Data -> how to get ab pane line attributes such as name, address, phone, etc.
*****************************************************************************************/
/* to actually get an entry attribute */
int AB_GetEntryAttributeForPane(
MSG_Pane * abPane,
MSG_ViewIndex index,
AB_AttribID attrib, /* what attribute do you want? */
AB_AttributeValue ** valueArray); /* BE handles memory allocation. FE must call AB_FreeEntryAttributeValue when done */
int AB_GetEntryAttribute(
AB_ContainerInfo * container,
ABID entryid, /* an identifier or key used to name the object in the container */
AB_AttribID attrib, /* attribute type the FE wants to know */
AB_AttributeValue ** valueArray); /* BE handles memory allocation. FE must call AB_FreeEntryAttributeValue when done */
int AB_SetEntryAttribute(
AB_ContainerInfo * container,
ABID entryid, /* an identifier or key used to name the object in the container */
AB_AttributeValue * value); /* FE handles all memory allocation */
int AB_SetEntryAttributeForPane(
MSG_Pane * abPane,
MSG_ViewIndex index,
AB_AttributeValue * value); /* FE handles all memory allocation */
/* we also allow you to set entry attributes in batch by passing in an array of attribute values */
int AB_SetEntryAttributes(
AB_ContainerInfo * container,
ABID entryID,
AB_AttributeValue * valuesArray, /* FE allocated array of attribute values to set */
uint16 numItems); /* FE passes in # items in array */
int AB_SetEntryAttributesForPane(
MSG_Pane * abPane,
MSG_ViewIndex index,
AB_AttributeValue * valuesArray,
uint16 numItems);
int AB_GetEntryAttributes(
AB_ContainerInfo * container,
ABID entryID,
AB_AttribID * attribs, /* FE allocated array of attribs that you want */
AB_AttributeValue ** values, /* BE allocates & fills an array of values for the input array of attribs */
uint16 * numItems); /* IN: size of attribs array. OUT: # of values in value array */
int AB_GetEntryAttributesForPane(
MSG_Pane * abPane,
MSG_ViewIndex index,
AB_AttribID * attribs, /* FE allocated array of attribs that you want */
AB_AttributeValue ** values,
uint16 * numItems);
/* Memory allocation APIs for setting/getting entry attribute values */
int AB_FreeEntryAttributeValue(AB_AttributeValue * value /* pointer to a value */);
int AB_FreeEntryAttributeValues(AB_AttributeValue * values /* array of values */, uint16 numItems);
int AB_CopyEntryAttributeValue(
AB_AttributeValue * srcValue, /* already allocated attribute value you want to copy from */
AB_AttributeValue * destValue); /* already allocated attribute value you want to copy into */
XP_Bool AB_IsStringEntryAttributeValue(AB_AttributeValue * value);
/****************************************************************************************
Sorting
*****************************************************************************************/
/* sorting by first name is a global setting. It is set per abPane and does not change
when you load a new container into the abPane */
XP_Bool AB_GetSortByFirstNameAB2(MSG_Pane * abPane); /* is the pane sorting by first name? */
void AB_SortByFirstNameAB2(
MSG_Pane * abPane,
XP_Bool sortByFirstName); /* true for sort by first, false for last first */
/* Insert our sort by column stuff here */
int AB_SortByAttribute(
MSG_Pane * abPane,
AB_AttribID id, /* attribute we want to sort by */
XP_Bool sortAscending);
int AB_GetPaneSortedByAB2(
MSG_Pane * abPane,
AB_AttribID * attribID); /* BE fills with the attribute we are sorting by */
XP_Bool AB_GetPaneSortedAscendingAB2(MSG_Pane * abPane);
/*****************************************************************************************
APIs for the Mailing List Pane. In addition to these, the mailing list pane responds to
previous AB APIs such as AB_Close, MSG_GetNumLines().
****************************************************************************************/
int AB_InitializeMailingListPaneAB2(MSG_Pane * mailingListPane);
AB_ContainerInfo * AB_GetContainerForMailingList(MSG_Pane * mailingListPane);
/* this could return ABID = 0 for a new entry that is not in the database */
ABID AB_GetABIDForMailingListIndex(
MSG_Pane * mailingListPane,
const MSG_ViewIndex index);
MSG_ViewIndex AB_GetMailingListIndexForABID(
MSG_Pane * mailingListPane,
ABID entryID); /* this function could return MSG_VIEWINDEXNONE if entryID = 0 or not in list */
/* Use these two APIs to get Mailing List ENTRY attributes (i.e. people or other mailing list attributes in this mailing list) */
int AB_SetMailingListEntryAttributes(
MSG_Pane * pane,
const MSG_ViewIndex index,
AB_AttributeValue * valuesArray, /* FE allocated array of attribute values you want to set */
uint16 numItems);
int AB_GetMailingListEntryAttributes(
MSG_Pane * mailingListPane,
const MSG_ViewIndex index,
AB_AttribID * attribs, /* FE allocated & freed array of attribs you want */
AB_AttributeValue ** values, /* BE allocates & fills values for the input array of attribs */
uint16 * numItems); /* FE provides # attribs in array. BE fills with # values returned in values */
/* Use these two APIs to Set and Get the Mailing List properties. */
int AB_GetMailingListAttributes(
MSG_Pane * mailingListPane,
AB_AttribID * attribs, /* FE allocated array of attribs */
AB_AttributeValue ** values, /* BE allocates & fills values. FE must call a free to the back end */
uint16 * numItems);
int AB_SetMailingListAttributes(
MSG_Pane * mailingListPane,
AB_AttributeValue * valuesArray, /* FE allocated array of attribute values you want to set */
uint16 numItems);
/*******************************************************************************************
APIs for the person entry pane aka the person property sheets. The person entry pane is created
by the back end and given to the front end in the call FE_ShowPropertySheetFor. In the current
incarnation, person atributes are set and retrieved through the person entry pane and NOT through
the AB_ContainerInfo the person is in. If you "cheat" and go through the container directly, you may
not be getting the correct information. When the person entry pane is committed, the changes are pushed
back into the container. During the commit process, if it is a new person then a new entry is made in the
database.
********************************************************************************************/
AB_ContainerInfo * AB_GetContainerForPerson(MSG_Pane * personPane);
ABID AB_GetABIDForPerson(MSG_Pane * personPane); /* could return 0 if new user */
/* get and set the person attributes here */
int AB_SetPersonEntryAttributes(
MSG_Pane * personPane,
AB_AttributeValue * valuesArray,
uint16 numItems);
int AB_GetPersonEntryAttributes(
MSG_Pane * personPane,
AB_AttribID * attribs, /* FE allocted & freed array of attribs they want */
AB_AttributeValue ** values, /* BE allocates & fills values */
uint16 * numItems); /* in - FE provides # of attribs. out - BE fills with # values */
int AB_CommitChanges(MSG_Pane * pane); /* commits changes to a mailing list pane or a person entry pane! */
XP_END_PROTOS
#endif /* _AB_COM_H */

View File

@@ -1,200 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _ABDefn_H_
#define _ABDefn_H_
/* max lengths for address book fields */
const int kMaxFullNameLength = 256; /* common name */
const int kMaxNameLength = 64; /* given, middle, family */
const int kMaxCompanyLength = 128; /* company name */
const int kMaxLocalityLength = 128; /* city */
const int kMaxRegionLength = 128; /* state */
const int kMaxCountryLength = 128; /* state */
const int kMaxEmailAddressLength = 256;
const int kMaxInfo = 1024;
const int kMaxTitle = 64;
const int kMaxAddress = 128;
const int kMaxZipCode = 40;
const int kMaxPhone = 32;
const int32 kMaxDN = 32768;
const int kMaxCoolAddress = 256;
const int kMaxAddressEntry = 1000;
const short kDefaultDLS = 0;
const short kSpecificDLS = 1;
const short kHostOrIPAddress = 2;
typedef uint32 ABID;
/* This structure represents a single line in the address book pane
*/
typedef struct AB_EntryLineTag
{
ABID entryType; /* type of entry either person or list */
char fullname[256];
char emailAddress[256];
char companyName[128];
char nickname[64];
char locality[128];
char workPhone[32];
#ifdef XP_CPLUSPLUS
public:
void Initialize();
#endif
} AB_EntryLine;
typedef struct PersonEntryTag {
char * pNickName;
char * pGivenName;
char * pMiddleName;
char * pFamilyName;
char * pCompanyName;
char * pLocality;
char * pRegion;
char * pEmailAddress;
char * pInfo;
XP_Bool HTMLmail;
char * pTitle;
char * pPOAddress;
char * pAddress;
char * pZipCode;
char * pCountry;
char * pWorkPhone;
char * pFaxPhone;
char * pHomePhone;
char * pDistName;
short Security;
char * pCoolAddress;
short UseServer;
int16 WinCSID;
#ifdef XP_CPLUSPLUS
public:
void Initialize();
void CleanUp();
#endif
} PersonEntry;
typedef struct MailingListEntryTag {
char * pFullName;
char * pNickName;
char * pInfo;
char * pDistName;
int16 WinCSID;
#ifdef XP_CPLUSPLUS
public:
void Initialize();
void CleanUp();
#endif
} MailingListEntry;
const ABID ABTypeAll = 35;
const ABID ABTypePerson = 36;
const ABID ABTypeList = 37;
const unsigned long ABTypeEntry = 0x70634944; /* ASCII - 'pcID' */
const unsigned long ABFullName = 0x636E2020; /* ASCII - 'cn ' */
const unsigned long ABNickname = 0x6E69636B; /* ASCII - 'nick' */
const unsigned long ABEmailAddress = 0x6D61696C; /* ASCII - 'mail' */
const unsigned long ABLocality = 0x6C6F6320; /* ASCII - 'loc ' */
const unsigned long ABCompany = 0x6F726720; /* ASCII - 'org ' */
/* defines for vcard support */
#define vCardClipboardFormat "+//ISBN 1-887687-00-9::versit::PDI//vCard"
#define vCardMimeFormat "text/x-vcard"
typedef enum
{
/* FILE MENU
=========
*/
AB_NewMessageCmd, /* Send a new message to the selected entries */
AB_ImportCmd, /* import a file into the address book */
AB_SaveCmd, /* export to a file */
AB_CloseCmd, /* close the address book window */
AB_NewAddressBook, /* Create a new personal address book */
AB_NewLDAPDirectory, /* Create a new LDAP directory */
/* EDIT MENU
=========
*/
AB_UndoCmd, /* Undoes the last operation. */
AB_RedoCmd, /* Redoes the last undone operation. */
AB_DeleteCmd, /* Causes the given entries to be
deleted. */
AB_DeleteAllCmd, /* Causes all occurrences of the given entries to be deleted. */
AB_LDAPSearchCmd, /* Perform an LDAP search */
/* VIEW/SORT MENUS
===============
*/
AB_SortByTypeCmd, /* Sort alphabetized by type. */
AB_SortByFullNameCmd, /* Sort alphabetizedby full name. */
AB_SortByLocality, /* Sort by state */
AB_SortByNickname, /* Sort by nickname */
AB_SortByEmailAddress, /* Sort by email address */
AB_SortByCompanyName, /* Sort by email address */
AB_SortAscending, /* Sort current column ascending */
AB_SortDescending, /* Sort current column descending */
/* these are the new sort command IDs added for the 2 pane AB. Use these instead of the previous ones...*/
AB_SortByColumnID0,
AB_SortByColumnID1,
AB_SortByColumnID2,
AB_SortByColumnID3,
AB_SortByColumnID4,
AB_SortByColumnID5,
AB_SortByColumnID6,
/* ITEM MENU
============
*/
AB_AddUserCmd, /* Add a user to the address book */
AB_AddMailingListCmd, /* Add a mailing list to the address book */
AB_PropertiesCmd, /* Get the properties of an entry */
AB_CallCmd, /* Call the entry using CallPoint */
AB_ImportLdapEntriesCmd, /* Add a user to the AB from an LDAP directory */
/* Mailing List Pane Specific Commands!!! */
AB_InsertLineCmd, /* Insert a blank entry line into the mailing list pane */
AB_ReplaceLineCmd /* Replace the entry in the mailing list pane with a blank entry */
} AB_CommandType;
#endif

View File

@@ -1,449 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _AddrBook_H_
#define _AddrBook_H_
#include "xp_core.h"
#include "msgcom.h"
#include "abdefn.h"
#include "dirprefs.h"
#ifdef XP_CPLUSPLUS
class MLPane;
class ABPane;
class AddressPane;
class ABook;
#else
typedef struct MLPane MLPane;
typedef struct ABPane ABPane;
typedef struct AddressPane AddressPane;
typedef struct ABook ABook;
#endif
XP_BEGIN_PROTOS
#define AB_kGromitDbFileName "da5id.nab"
#define AB_CONFIG_USE_GROMIT_FILE_FORMAT 1
/****************************************************************************/
/* Get the address book .*/
/****************************************************************************/
ABook* FE_GetAddressBook(MSG_Pane* pane);
/****************************************************************************/
/* This is a callback into the FE to bring up a modal property sheet */
/* for modifying an existing entry or creating a new one from a */
/* person structure. If entryId != MSG_MESSAGEIDNONE then it is the */
/* entryID of the entry to modify. Each FE should Return TRUE if the user */
/* hit ok return FALSE if they hit cancel and return -1 if there was a */
/* problem creating the window or something */
/****************************************************************************/
int FE_ShowPropertySheetFor (MWContext* context, ABID entryID,
PersonEntry* pPerson);
/****************************************************************************/
/* Return whether or not to attach the users */
/* vcard to outgoing messages */
/****************************************************************************/
XP_Bool AB_AttachUsersvCard(void);
/****************************************************************************/
/* Convert the address book error code to .*/
/****************************************************************************/
int AB_ConvertABErrToMKErr(uint32 err);
/****************************************************************************/
/* Create and initialize the address book pane which is the a view on an */
/* address book. It will provide a sorted list of all the address book */
/* entries ids . This is intended to be used in a two step */
/* process of create and then initialize */
/****************************************************************************/
int AB_InitAddressBookPane(ABPane** ppABookPane,
DIR_Server* dir,
ABook* pABook,
MWContext* context,
MSG_Master* master,
unsigned long sortBy,
XP_Bool sortForward);
/****************************************************************************/
/* Create the address book pane which is the a view on an */
/* address book. */
/****************************************************************************/
int AB_CreateAddressBookPane(ABPane** ppABookPane,
MWContext* context,
MSG_Master* master);
/****************************************************************************/
/* Initialize the address book pane which is the a view on an */
/* address book. It will provide a sorted list of all the address book */
/* entries ids .*/
/****************************************************************************/
int AB_InitializeAddressBookPane(ABPane* ppABookPane,
DIR_Server* dir,
ABook* pABook,
unsigned long sortBy,
XP_Bool sortForward);
/****************************************************************************/
/* Close the address book pane. Called when the view on an address book */
/* is being closed */
/****************************************************************************/
int AB_CloseAddressBookPane(ABPane** ppABookPane);
/****************************************************************************/
/* Create and initialize a mailing list pane which is the a view on an */
/* mailing list. It will provide a sorted view of all the entries in a */
/* mailing list. This is intended to be used in as a one one step process */
/****************************************************************************/
int AB_InitMailingListPane(MLPane** ppABookPane,
ABID* listID,
DIR_Server* dir,
ABook* pABook,
MWContext* context,
MSG_Master* master,
unsigned long sortBy,
XP_Bool sortForward);
/****************************************************************************/
/* Create a mailing list pane which is the a view on an */
/* mailing list. This is intended to be used in a two step */
/* process of create and then initialize */
/****************************************************************************/
int AB_CreateMailingListPane(MLPane** ppABookPane,
MWContext* context,
MSG_Master* master);
/****************************************************************************/
/* Initialize a mailing list pane which is the a view on an */
/* mailing list. It will provide a sorted view of all the entries in a */
/* mailing list.*/
/****************************************************************************/
int AB_InitializeMailingListPane(MLPane* pABookPane,
ABID* listID,
DIR_Server* dir,
ABook* pABook);
/****************************************************************************/
/* Close the mailing list pane. Called when the view on an mailing list */
/* is being closed */
/****************************************************************************/
int AB_CloseMailingListPane(MLPane** ppMLPane);
/****************************************************************************/
/* Register a compose window with the address book */
/* The composition pane should do this everytime it opens */
/* so that name completion can take place */
/****************************************************************************/
int AB_RegisterComposeWindow(ABook* pABook, DIR_Server* directory);
/****************************************************************************/
/* Unregister a compose window with the address book */
/* The composition pane should do this when it is getting closed */
/****************************************************************************/
int AB_UnregisterComposeWindow(ABook* pABook, DIR_Server* directory);
/****************************************************************************/
/* Change the Current directory */
/****************************************************************************/
int AB_ChangeDirectory(ABPane* pABookPane, DIR_Server* directory);
/****************************************************************************/
/* Begin a search on the LDAP directory */
/****************************************************************************/
int AB_SearchDirectory(ABPane* pABookPane, char* searchString);
/****************************************************************************/
/* Process LDAP search results*/
/****************************************************************************/
int AB_LDAPSearchResults(ABPane* pABookPane, MSG_ViewIndex index, int32 num);
/****************************************************************************/
/* Finish an LDAP search */
/****************************************************************************/
int AB_FinishSearch(ABPane* pABookPane, MWContext* context);
/****************************************************************************/
/* Create and initialize the address book database */
/****************************************************************************/
int AB_InitAddressBook(DIR_Server* directory, ABook** ppABook);
/****************************************************************************/
/* Create and initialize the address book database */
/* upgrading the old html address book if we need to*/
/****************************************************************************/
int AB_InitializeAddressBook(DIR_Server* directory, ABook** ppABook,
const char * pOldHTMLBook);
/****************************************************************************/
/* Close the address book database */
/****************************************************************************/
int AB_CloseAddressBook(ABook** ppABook);
/****************************************************************************/
/* Add a person entry to the database */
/****************************************************************************/
int AB_AddUser(DIR_Server* dir, ABook* pABook, PersonEntry* pPerson,
ABID* entryID);
int AB_AddUserWithUI (MWContext *context, PersonEntry *person,
DIR_Server *pab, XP_Bool lastOneToAdd);
/****************************************************************************/
/* Add an entry to the database from a url*/
/****************************************************************************/
int AB_AddSenderToAddBook(ABook* pABook, MWContext* context, char* author,
char* url);
/****************************************************************************/
/* Add a mailing list to the database */
/****************************************************************************/
int AB_AddMailingList(DIR_Server* dir, ABook* pABook,
MailingListEntry* pABList, ABID* entryID);
/****************************************************************************/
/* Perform a command on the selected indices */
/* Right now this will only work on delete and mail to */
/****************************************************************************/
int AB_Command (ABPane* pane, AB_CommandType command,
MSG_ViewIndex* indices, int32 numindices);
/****************************************************************************/
/* Before the front end displays any menu (each time), it should call this */
/* function for each command on that menu to determine how it should be */
/* displayed. */
/****************************************************************************/
int AB_CommandStatus (ABPane* pane,
AB_CommandType command,
MSG_ViewIndex* indices, int32 numindices,
XP_Bool *selectable_p,
MSG_COMMAND_CHECK_STATE *selected_p,
const char **display_string,
XP_Bool *plural_p);
/****************************************************************************/
/* Get and Set how full names are constructed for people entries */
/* first last or last first */
/****************************************************************************/
XP_Bool AB_GetSortByFirstName(ABook* pABook);
void AB_SetSortByFirstName(ABook* pABook, XP_Bool sortby);
/****************************************************************************/
/* Import Export various formats that will prompt for filename */
/****************************************************************************/
int AB_ImportFromFile(ABPane* pABookPane, MWContext* context);
int AB_ExportToFile(ABPane* pABookPane, MWContext* context);
/****************************************************************************/
/* This is only used right now for drop/paste of a vcard */
/****************************************************************************/
int AB_ImportFromVcard(AddressPane* pABookPane, const char* pVcard);
/****************************************************************************/
/* This is only used right now for drop of a vcard */
/* It it a helper function that can be called by the FE to */
/* convert a vcard to an valid rfc822 address that can be used */
/* in the address widget of the compose window */
/****************************************************************************/
int AB_ConvertVCardsToExpandedName(ABook* pABook, const char* vCardString,
XP_List ** ppEntries, int32 * numEntries);
/****************************************************************************/
/* Import Export various formats that wont do any prompting */
/* This is needed for the command line interface and automatic upgrading */
/****************************************************************************/
int AB_ImportFromFileNamed(ABook* pABook, char* filename);
int AB_ExportToFileNamed(ABook* pABook, char* filename);
/****************************************************************************/
/* This function is only called from the backend. */
/* It is used to process the addbook url that is only used in mimevcrd.c */
/* It probably will never be called by an FE */
/****************************************************************************/
int AB_ImportFromVcardURL(ABook* pABook, MWContext* context, const char* pVcard);
/****************************************************************************/
/* This will create a buffer with a vcard in it. It is used for constructing */
/* a buffer that can be used in drag/drop or copy to the clipboard */
/****************************************************************************/
int AB_ExportToVCard(ABook* pABook, DIR_Server* dir, ABID entryID,
char** ppVcard);
int AB_ExportToVCardFromPerson(ABook* pABook, PersonEntry* pPerson,
char** ppVcard);
/****************************************************************************/
/* This will create a temp file for a vcard. This function is only called */
/* from the backend compose window for constructing a vcard attachment */
/* It probably will never be called by an FE */
/****************************************************************************/
int AB_ExportToVCardTempFile(ABook* pABook, DIR_Server* dir, ABID entryID,
char** filename);
/****************************************************************************/
/* Operations on panes/view */
/****************************************************************************/
/****************************************************************************/
/* Get the unique database id at a particular pane index */
/****************************************************************************/
ABID AB_GetEntryIDAt(AddressPane* pABookPane, uint32 index);
uint32 AB_GetIndexOfEntryID (AddressPane* pABookPane, ABID entryID);
int AB_GetEntryLine (ABPane * pABookPane, uint32 index,
AB_EntryLine * pEntryLine);
/****************************************************************************/
/* Get info about how a pane is sorted */
/****************************************************************************/
XP_Bool AB_GetPaneSortedAscending(ABPane * pABookPane);
ABID AB_GetPaneSortedBy(ABPane * pABookPane);
/****************************************************************************/
/* Get number of entries */
/* For the address book you can ask for ALL, people, or mailing lists */
/* For mailing list panes you will only be returned ALL */
/****************************************************************************/
int AB_GetEntryCount(DIR_Server* dir, ABook* pABook, uint32* count,
ABID etype, ABID listID);
/****************************************************************************/
/* Modify information for an entry (person or mailing list) */
/****************************************************************************/
int AB_ModifyUser(DIR_Server* dir, ABook* pABook, ABID entryID, PersonEntry* pPerson);
int AB_ModifyMailingList(DIR_Server* dir, ABook* pABook, ABID entryID,
MailingListEntry* pEntry);
/****************************************************************************/
/* Modify information for a mailing list that has been modified */
/* but not committed in a mailing list pane */
/****************************************************************************/
int AB_ModifyMailingListAndEntries(MLPane* pMLPane, MailingListEntry* pABList);
/****************************************************************************/
/* Modify information for a mailing list that has been modified */
/* but not committed in a mailing list pane. Some of the error checking */
/* that was perfomed in add/replace in a mailing list had to be moved to */
/* here. The fe's should be calling this function instead of the one above */
/****************************************************************************/
int AB_ModifyMailingListAndEntriesWithChecks(MLPane* pMLPane, MailingListEntry* pList,
MSG_ViewIndex *index, MSG_ViewIndex begIndex);
/****************************************************************************/
/* Get information for every entry (person or mailing list) */
/****************************************************************************/
int AB_GetType(DIR_Server* dir, ABook* pABook, ABID entryID, ABID* type);
int AB_GetFullName(DIR_Server* dir, ABook* pABook, ABID entryID, char* pname);
int AB_GetNickname(DIR_Server* dir, ABook* pABook, ABID entryID, char* pname);
/****************************************************************************/
/* Get information for every person entry */
/****************************************************************************/
int AB_GetGivenName(DIR_Server* dir, ABook* pABook, ABID entryID, char* pname);
int AB_GetMiddleName(DIR_Server* dir, ABook* pABook, ABID entryID, char* pname);
int AB_GetFamilyName(DIR_Server* dir, ABook* pABook, ABID entryID, char* pname);
int AB_GetCompanyName(DIR_Server* dir, ABook* pABook, ABID entryID, char* pname);
int AB_GetLocality(DIR_Server* dir, ABook* pABook, ABID entryID, char* pname);
int AB_GetRegion(DIR_Server* dir, ABook* pABook, ABID entryID, char* pname);
int AB_GetEmailAddress(DIR_Server* dir, ABook* pABook, ABID entryID, char* paddress);
int AB_GetInfo(DIR_Server* dir, ABook* pABook, ABID entryID, char* pinfo);
int AB_GetHTMLMail(DIR_Server* dir, ABook* pABook, ABID entryID, XP_Bool* pHTML);
int AB_GetExpandedName(DIR_Server* dir, ABook* pABook, ABID entryID, char** pname);
int AB_GetTitle(DIR_Server* dir, ABook* pABook, ABID entryID, char* ptitle);
int AB_GetPOAddress(DIR_Server* dir, ABook* pABook, ABID entryID, char* ppoaddress);
int AB_GetStreetAddress(DIR_Server* dir, ABook* pABook, ABID entryID, char* pstreet);
int AB_GetZipCode(DIR_Server* dir, ABook* pABook, ABID entryID, char* pzip);
int AB_GetCountry(DIR_Server* dir, ABook* pABook, ABID entryID, char* pcountry);
int AB_GetWorkPhone(DIR_Server* dir, ABook* pABook, ABID entryID, char* pphone);
int AB_GetFaxPhone(DIR_Server* dir, ABook* pABook, ABID entryID, char* pphone);
int AB_GetHomePhone(DIR_Server* dir, ABook* pABook, ABID entryID, char* pphone);
int AB_GetDistName(DIR_Server* dir, ABook* pABook, ABID entryID, char* pname);
int AB_GetSecurity(DIR_Server* dir, ABook* pABook, ABID entryID, short* security);
int AB_GetCoolAddress(DIR_Server* dir, ABook* pABook, ABID entryID, char* paddress);
int AB_GetUseServer(DIR_Server* dir, ABook* pABook, ABID entryID, short* use);
int AB_GetEntryIDForPerson(DIR_Server* dir, ABook* pABook, ABID* entryID,
PersonEntry* pPerson);
/****************************************************************************/
/* Add/Remove entries for a mailing list */
/****************************************************************************/
int AB_GetEntryCountInMailingList(MLPane* pMLPane, uint32* count);
int AB_AddIDToMailingListAt(MLPane* pMLPane, ABID entryID, MSG_ViewIndex index);
int AB_RemoveIDFromMailingListAt(MLPane* pMLPane, MSG_ViewIndex index);
int AB_ReplaceIDInMailingListAt(MLPane* pMLPane, ABID entryID, MSG_ViewIndex index);
int AB_AddPersonToMailingListAt(MLPane* pMLPane, PersonEntry* person,
MSG_ViewIndex index, ABID* entryID);
/****************************************************************************/
/* Find index to first entry in a pane that matches the typedown */
/****************************************************************************/
int AB_GetIndexMatchingTypedown(ABPane* pABookPane,
MSG_ViewIndex* index, const char* aValue, MSG_ViewIndex startIndex);
/****************************************************************************/
/* Return the id of the name/nickname entries that match a string. If we */
/* find a nickname that uniquely matches then return otherwise check the */
/* full name field. */
/****************************************************************************/
int AB_GetIDForNameCompletion(ABook* pABook, DIR_Server* dir, ABID* entryID,
ABID* field, const char* aValue);
/****************************************************************************/
/* Return a string of expanded addresses from the address book */
/****************************************************************************/
char* AB_ExpandHeaderString(ABook* pABook, const char* addresses,
XP_Bool expandfull);
/****************************************************************************/
/* Return the ids of mailing lists that a entry is a member of */
/* This was mentioned at one time as a requirement in the ui but it may */
/* go away */
/****************************************************************************/
int AB_GetMailingListsContainingID(ABook* pABook, MSG_ViewIndex* plist,
ABID entryID);
/****************************************************************************/
/* This should not be called by any of the fes. I placed it here so it */
/* could be called in the backend by other functions such as those in libmsg */
/* This allows for an increase in performance when adding a bunch of entries */
/* to the database */
/****************************************************************************/
int AB_SetIsImporting(ABook* pABook, XP_Bool isImporting);
/****************************************************************************/
/* This should not be called by any of the fes. I placed it here so it */
/* could be called in the backend by other functions in libmsg */
/* This will set the wantsHTML boolean to be set for all address book */
/* entries with that match the name and email address. */
/****************************************************************************/
int AB_SetHTMLForPerson(DIR_Server* dir, ABook* pABook, PersonEntry* pPerson);
/****************************************************************************/
/* This should not be called by any of the fes. I placed it here so it */
/* could be called in the backend by other functions in libmsg */
/* This will break a name apart into first name and last name. */
/* Be sure and set the WinCSID in the person structure */
/****************************************************************************/
int AB_BreakApartFirstName (ABook* pABook, PersonEntry* pPerson);
XP_END_PROTOS
#endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,700 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef BKMKS_H
#define BKMKS_H
#include "xp_mcom.h"
#include "ntypes.h"
XP_BEGIN_PROTOS
#define BM_LAST_CELL 0xFFFF /* See BMFE_RefreshCells */
typedef time_t BM_Date;
typedef enum {
BM_Cmd_Invalid, /* XFE in particular likes to have an invalid
ID code as one of the entries here...*/
BM_Cmd_Open, /* Open a new bookmark file. */
BM_Cmd_ImportBookmarks, /* Import entries from another bookmark
file. */
BM_Cmd_SaveAs, /* Save these bookmarks into another file. */
BM_Cmd_Close, /* Close the bookmarks window. (NYI ###) */
BM_Cmd_Undo, /* Undo the last command. */
BM_Cmd_Redo, /* Redo the last undone command. */
BM_Cmd_Cut, /* Cut the selected bookmarks. */
BM_Cmd_Copy, /* Copy the selected bookmarks. */
BM_Cmd_Paste, /* Paste in the most recent cut/copy. */
BM_Cmd_Delete, /* Delete the selected bookmarks without
affecting the clipboard. */
BM_Cmd_SelectAllBookmarks, /* Select every bookmark in the window. */
BM_Cmd_Find, /* Find a string. */
BM_Cmd_FindAgain, /* Find the same string again. */
BM_Cmd_BookmarkProps, /* Bring up the properties window. */
BM_Cmd_GotoBookmark, /* Load the selected bookmark in a browser
window. */
/* Sort the bookmarks. NYI### */
BM_Cmd_Sort_Name,
BM_Cmd_Sort_Name_Asc,
BM_Cmd_Sort_Address,
BM_Cmd_Sort_Address_Asc,
BM_Cmd_Sort_AddDate,
BM_Cmd_Sort_AddDate_Asc,
BM_Cmd_Sort_LastVisit,
BM_Cmd_Sort_LastVisit_Asc,
BM_Cmd_Sort_Natural,
BM_Cmd_InsertBookmark, /* Insert a new bookmark (or a new address if
in addressbook). */
BM_Cmd_InsertHeader, /* Insert a new header. */
BM_Cmd_InsertSeparator, /* Insert a separator. */
BM_Cmd_MakeAlias, /* Make an alias of this bookmark. */
BM_Cmd_SetAddHeader, /* Make the current header be the one where new
bookmarks are added. */
BM_Cmd_SetMenuHeader /* Make the current header be the one which the
pulldown menu is created from. */
} BM_CommandType;
#define BM_Cmd_SortBookmarks BM_Cmd_Sort_Name
typedef enum
{
BM_Sort_NONE = -1,
BM_Sort_Name,
BM_Sort_Name_Asc,
BM_Sort_Address,
BM_Sort_Address_Asc,
BM_Sort_AddDate,
BM_Sort_AddDate_Asc,
BM_Sort_LastVisit,
BM_Sort_LastVisit_Asc,
BM_Sort_Natural
} BM_SortType;
/* The various types of bookmark entries (as returned by BM_GetType). */
typedef uint16 BM_Type;
#define BM_TYPE_HEADER 0x0001
#define BM_TYPE_URL 0x0002
#define BM_TYPE_ADDRESS 0x0004
#define BM_TYPE_SEPARATOR 0x0008
#define BM_TYPE_ALIAS 0x0010
/* This represents one line in the bookmarks window -- a URL, a
separater, an addressbook entry, a header, etc. It's also already
defined in ntypes.h, and some compilers bitch and moan about seeing it
twice, so I've commented it out here. */
/* typedef struct BM_Entry_struct BM_Entry; */
/* information for the find dialog */
typedef struct BM_FindInfo {
char* textToFind;
XP_Bool checkNickname; /* Meaningful only in addressbook */
XP_Bool checkName;
XP_Bool checkLocation;
XP_Bool checkDescription;
XP_Bool matchCase;
XP_Bool matchWholeWord;
BM_Entry* lastEntry;
} BM_FindInfo;
struct BM_Entry_Focus {
BM_Entry* saveFocus;
XP_Bool foundSelection;
};
extern XP_Bool BM_IsHeader(BM_Entry* entry);
extern XP_Bool BM_IsUrl(BM_Entry* entry);
extern XP_Bool BM_IsAddress(BM_Entry* entry);
extern XP_Bool BM_IsSeparator(BM_Entry* entry);
extern XP_Bool BM_IsAlias(BM_Entry* entry);
extern XP_Bool BM_IsFolded(BM_Entry* entry);
extern XP_Bool BM_IsSelected(BM_Entry* entry);
/* Returns the state of whether this is a "changed URL"; that is, a URL whose
contents have apparently changed since we last visited it. */
#define BM_CHANGED_YES 1
#define BM_CHANGED_NO 0
#define BM_CHANGED_UNKNOWN -1
extern int32 BM_GetChangedState(BM_Entry* entry);
/* Get/Set the header that is to be the root of the pulldown menu. */
extern BM_Entry* BM_GetMenuHeader(MWContext* context);
extern void BM_SetMenuHeader(MWContext* context, BM_Entry* entry);
/* Get/Set the header that is to be the container of new items added from
browser windows. */
extern BM_Entry* BM_GetAddHeader(MWContext* context);
extern void BM_SetAddHeader(MWContext* context, BM_Entry* entry);
typedef void (*EntryFunc)(MWContext* context, BM_Entry* entry, void* closure);
/* Executes the given function on every single entry in the bookmark file. */
extern void BM_EachEntryDo(MWContext* context, EntryFunc func, void* closure);
/* Executes the given function for every entry that is selected. */
extern void BM_EachSelectedEntryDo(MWContext* context, EntryFunc func,
void* closure);
/* Executes the given function for every entry that is selected and is not a
descendent of a header that is not folded or selected. */
extern void BM_EachProperSelectedEntryDo(MWContext* context, EntryFunc func,
void* closure, struct BM_Entry_Focus* bmFocus);
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Front end stubs -- each FE needs to implement these. */
/* Refresh each cell between and including first and last in the bookmarks
widget (if now is TRUE, the FE is expected to redraw them BEFORE returning,
otherwise the FE can simply invalidate them and wait for the redraw to
happen). If BM_LAST_CELL is passed in as last, then it means paint from
the first to the end. */
extern void BMFE_RefreshCells(MWContext* context, int32 first, int32 last,
XP_Bool now);
/* Resize the widget to accomodate "visibleCount" number of entries vertically
and the width of widest entry the actual widget should NOT change size, just
the size of the scrollable area under it */
extern void BMFE_SyncDisplay(MWContext* context);
/* measure the item and assign the width and height required to draw it into
the widget into width and height. This is used only by BM_WidestEntry(); if
you don't need that call, you can just make this an empty stub. */
extern void BMFE_MeasureEntry(MWContext* context, BM_Entry* entry,
uint32* width, uint32* height);
/* Save the given bucket o' bits as the clipboard. This same bucket needs to
be returned later if BMFE_GetClipContents() is called. */
extern void BMFE_SetClipContents(MWContext* context, void* buffer,
int32 length);
/* return the clipboard contents */
extern void* BMFE_GetClipContents(MWContext* context, int32* length);
/* Copy the selected items from a history window to the clipboard (as bookmarks) */
extern char *BM_ClipCopyHistorySelection( void *pHistCsr, uint32 *pSelections, int iCount, int *pSize, XP_Bool bLongFormat );
/* Insert the block into the list */
extern void BM_DropBlockL( MWContext *pContext, char *pData, BM_Entry *firstSelected );
/* Create the bookmarks property window. If one already exists, just bring it
to the front. This will always be immediately followed by a call to
BMFE_EditItem(). */
extern void BMFE_OpenBookmarksWindow(MWContext* context);
/* Edit the given item in the bookmarks property window. If there is no
bookmarks property window currently, then the FE should ignore this call.
If the bookmarks property window is currently displaying some other entry,
then it should save any changes made to that entry (by calling BM_SetName,
etc.) before loading up this entry. */
extern void BMFE_EditItem(MWContext* context, BM_Entry* entry);
/* The given entry is no longer valid (i.e., the user just deleted it). So,
the given pointer is about to become invalid, and the FE should remove any
references to it it may have. In particular, if it is the one being edited
in the bookmarks property window, then the FE should clear that window. */
extern void BMFE_EntryGoingAway(MWContext* context, BM_Entry* entry);
/* The user has requested to view the given url. Show it to him in, using some
appropriate context. Url may be targeted to a different window */
extern void BMFE_GotoBookmark(MWContext* context,
const char* url, const char* target);
/* Create the find dialog, and fill it in as specified in the given
structure. When the user hits the "Find" button in the dialog, call
BM_DoFindBookmark. */
extern void* BMFE_OpenFindWindow(MWContext* context, BM_FindInfo* findInfo);
/* Make sure that the given entry is visible. */
extern void BMFE_ScrollIntoView(MWContext* context, BM_Entry* entry);
/* The list of bookmarks has changed somehow, so any "bookmarks" menu needs to
be recreated. This should be a cheap call, just setting a flag in the FE so
that it knows to recreate the menu later (like, when the user tries to view
it). Recreating it immediately would be bad, because this can get called
much more often than is reasonable. */
extern void BMFE_BookmarkMenuInvalid(MWContext* context);
/* We're in the process of doing a What's Changed operation. The What's
Changed window should update to display the URL, the percentage (calculate
as done*100/total), and the total estimated time (given here as a
pre-formatted string). The What's Changed window should end up looking
something like this:
Checking <URL>... (<13> left)
{===================== } (progress bar)
Estimated time remaining: <2 hours 13 minutes>
(Remaining time depends on the sites selected and
the network traffic).
[ Cancel ]
It's up to the FE to notice the first time this is called and change its
window to display the info instead of the initial What's Changed screen.
If the user ever hits Cancel (or does something equivilant, like destroys
the window), the FE must call BM_CancelWhatsChanged(). */
extern void BMFE_UpdateWhatsChanged(MWContext* context,
const char* url, /* If NULL, just display
"Checking..." */
int32 done, int32 total,
const char* totaltime);
/* We've finished processing What's Changed. The What's Changed window should
change to display the summary of what happened. It should look something
like this:
Done checking <157> Bookmarks.
<134> documents were reached.
<27> documents have changed and are marked in blue.
[ OK ]
When the user clicks on the OK, the FE should just take down the window.
(It doesn't matter if the FE calls BM_CancelWhatsChanged(); it will be a
no-op in this situtation.) */
extern void BMFE_FinishedWhatsChanged(MWContext* context, int32 totalchecked,
int32 numreached, int32 numchanged);
#ifdef XP_WIN
/* The current bookmarks file is about to change */
extern void BMFE_ChangingBookmarksFile(void);
/* The current bookmarks file has been changed */
extern void BMFE_ChangedBookmarksFile(void);
#endif
#ifdef XP_UNIX
/* Use these to know when to allow refresh */
extern void BMFE_StartBatch(MWContext* context);
extern void BMFE_EndBatch(MWContext* context);
#endif
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Initialize a new bookmarks context. (returns negative on failure) */
extern int BM_InitializeBookmarksContext(MWContext* context);
/* Prepare to destroy a bookmarks context. Will save any changes that have
been made. */
extern void BM_CleanupBookmarksContext(MWContext* context);
/* Set some FE data to associate with a bookmarks context. */
extern void BM_SetFEData(MWContext* context, void* data);
/* Get the FE data previously associated with a context. */
extern void* BM_GetFEData(MWContext* context);
/* Create a new url entry. */
extern BM_Entry* BM_NewUrl(const char* name, const char* address,
const char* content_type, BM_Date last_visit);
/* Create a new header. */
extern BM_Entry* BM_NewHeader(const char* name);
/* Create a copy of an existing bookmark. If the bookmark is a folder
it will also contain a copy of all of the bookmarks in the folder.*/
extern BM_Entry* BM_CopyBookmark(MWContext* context, BM_Entry* original);
/* Frees an entry. This should never be called unless you are sure the entry
has not been added to some header, and is not the object of some alias. In
other words, be sure nothing could possibly have a pointer to this it.
If the object is a header, this will also free all of its descendents. */
extern void BM_FreeEntry(MWContext* context, BM_Entry* entry);
/* Get the type of this bookmark. (Returns one of the BM_TYPE_* values.) */
extern BM_Type BM_GetType(BM_Entry* entry);
extern char* BM_GetName(BM_Entry* entry);
extern char* BM_GetAddress(BM_Entry* entry);
extern char* BM_GetTarget(BM_Entry* entry, XP_Bool recurse);
extern char* BM_GetDescription(BM_Entry* entry);
extern char* BM_GetNickName(BM_Entry* entry); /* Only meaningful in address
book. */
/* Get the full name and address of the given entry (which must be an
address book entry or header). Result is returned in a newly allocated
string; free it with XP_FREE() when through. */
extern char* BM_GetFullAddress(MWContext* context, BM_Entry* entry);
/* These return prettily formated info about the bookmark. They each
return the result in a staticly allocated string, so if you call the
same function twice the results get stomped. */
extern char* BM_PrettyLastVisitedDate(BM_Entry* entry);
extern char* BM_PrettyAddedOnDate(BM_Entry* entry);
extern char* BM_PrettyAliasCount(MWContext* context, BM_Entry* entry);
/* Get the root node of a context. */
extern BM_Entry* BM_GetRoot(MWContext* context);
/* Given a node, return the first of its children (if any). */
extern BM_Entry* BM_GetChildren(BM_Entry* entry);
/* Given a node, return the next node that has the same parent (if any). */
extern BM_Entry* BM_GetNext(BM_Entry* entry);
/* Given a node, returns its parent (or NULL if this is the root) */
extern BM_Entry* BM_GetParent(BM_Entry* entry);
/* Does this node have a sibling somewhere below it? */
extern XP_Bool BM_HasNext(BM_Entry* entry);
/* Does this node have a sibling somewhere above it? Note that there is *not*
an API to actually get that sibling, as this is not a simple call. However,
determing the existance of such a child is easy, and that's what Windows
needs to paint its pipes. */
extern XP_Bool BM_HasPrev(BM_Entry* entry);
/* Routines to change the name/address/description of an entry. These routines
will take care of updating the display as necessary. */
extern void BM_SetName(MWContext* context, BM_Entry* entry,
const char* newName);
extern void BM_SetAddress(MWContext* context, BM_Entry* entry,
const char* newAddress);
extern void BM_SetTarget(MWContext* context, BM_Entry* entry,
const char* newTarget);
extern void BM_SetDescription(MWContext* context, BM_Entry* entry,
const char* newDesc);
/* Only meaningful in addressbook (on an address or header or alias to same) */
extern XP_Bool BM_SetNickName(MWContext* context, BM_Entry* entry,
const char* newName);
/* The user just hit "Cancel" on the properties window, which was editing
the given item. This gives the bookmarks code a chance to delete the
item if it was just newly created. */
extern void BM_CancelEdit(MWContext* context, BM_Entry* entry);
/* fold or unfold the header according to "fold" and all its subfolders if
foldAll is TRUE */
extern void BM_FoldHeader(MWContext* context, BM_Entry* entry, XP_Bool fold,
XP_Bool refresh, XP_Bool foldAll);
/* clear all the selection flags, and cause a redisplay if refresh is set. */
extern void BM_ClearAllSelection(MWContext* context, XP_Bool refresh);
/* Clear all the child selections of the passes header and redisplay if refresh
is set. */
extern void BM_ClearAllChildSelection(MWContext* context, BM_Entry* at,
XP_Bool refresh);
/* Select everything. */
extern void BM_SelectAll(MWContext* context, XP_Bool refresh);
/* selects the item, call BMFE_Refresh on it if "refresh" and calls
BM_ClearSelection first if extend is FALSE */
extern void BM_SelectItem(MWContext* context, BM_Entry* item, XP_Bool refresh,
XP_Bool extend, XP_Bool select);
/* Adds a range of bookmarks to the current selection. To be called by the FE
when the user Shift-Clicks in the window. This will unselect everything and
then select a range of bookmarks, from the last bookmark that was selected
with BM_SelectItem to the one given here. */
extern void BM_SelectRangeTo(MWContext* context, BM_Entry* item);
/* toggles the selected state of the item, call BMFE_Refresh on it if "refresh"
and calls BM_ClearSelection if extend is FALSE */
extern void BM_ToggleItem(MWContext* context, BM_Entry* item, XP_Bool refresh,
XP_Bool extend );
/* returns the first selected entry */
extern BM_Entry* BM_FirstSelectedItem(MWContext* context);
extern BM_Date BM_GetLastVisited(BM_Entry *);
extern BM_Date BM_GetAdditionDate(BM_Entry *);
/* return the number of bookmarks */
extern int32 BM_GetCount(MWContext* context);
/* return the number of visible bookmarks */
extern int32 BM_GetVisibleCount(MWContext* context);
/* returns an integer index of the item in the list */
extern int32 BM_GetIndex(MWContext* context, BM_Entry* item);
/* returns an integer index of the item in the list and does not pay attention
to the is_folded value */
extern int32 BM_GetUnfoldedIndex(MWContext* context, BM_Entry* item);
/* returns the object associated with the index returned by BM_GetIndex() */
extern BM_Entry* BM_AtIndex(MWContext* context, int32 index);
/* returns the object associated with the index returned by
BM_GetUnfoldedIndex() */
extern BM_Entry* BM_AtUnfoldedIndex(MWContext* context, int32 index);
/* returns an integer depth of the item in the list starting
at zero */
extern int32 BM_GetDepth(MWContext* context, BM_Entry* item);
/* Execute a find operation according to the data in the given structure. This
will cause the appropriate entry to be selected and made visible. */
extern void BM_DoFindBookmark(MWContext* context, BM_FindInfo* findInfo);
/* For addressbook only: find and return the entry (if any) for the e-mail
address within the given mailto: url. (used by libmsg) */
extern BM_Entry* BM_FindAddress(MWContext* context, const char* mailtourl);
/* For addressbook only: edit the entry for the e-mail address within the
given mailto: url, creating the entry if necessary. (used by libmsg) */
extern void BM_EditAddress(MWContext* context, const char* mailtourl);
/* For addressbook only: if the given list of addresses includes a nickname
from the addresses, then return a new string with the addresses expanded.
If expandfull is True, then all mailing list entries are expanded too,
otherwise, mailing list entries are only expanded to include their name.
(used by libmsg). */
extern char* BM_ExpandHeaderString(MWContext* context, const char* value,
XP_Bool expandfull);
/* Checks every bookmark context for a url and updates the last accessed
time. (For use by global history code; FE's probably don't need this.) */
extern void BM_UpdateBookmarksTime(URL_Struct* URL_s, BM_Date cur_time);
/* returns TRUE if the second argument is a direct descendent of the first
argument, returns FALSE otherwise */
extern XP_Bool BM_IsDescendent(MWContext* context, BM_Entry* parent,
BM_Entry* possible_child);
/* The front end can use this call to determine what the indentation depth is
needed to display all the icons in the bookmarks. The XFE uses this to
dynamically resize the icon column. In true C style, the number returned is
actually one bigger than the biggest depth the FE will ever get. */
extern int BM_GetMaxDepth(MWContext* context);
/* This is called during a drag operation. The user is dragging some bookmarks
and is currently pointing at the given line. (If under is True, then the
user is really pointing between the given line and the next line.) This
returns TRUE if the FE should draw a box around the given line, and FALSE if
it should underline it. */
extern XP_Bool BM_IsDragEffectBox(MWContext* context, int line, XP_Bool under);
/* Actually do a drop in a drag-n-drop reordering operation. The arguments are
the same as BM_IsDragEffectBox(); the selected items will be moved. */
extern void BM_DoDrop(MWContext* ctnx, int line, XP_Bool under);
/* find and return the widest visible entry in the bookmarks tree. This makes
sense only if your FE has defined a meaningful BMFE_MeasureEntry(). */
extern BM_Entry* BM_WidestEntry(MWContext* context);
/* insert an item after another item in the bm if the insert_after item is NULL
or not found the item will be inserted at the end of the list */
extern void BM_InsertItemAfter(MWContext* context, BM_Entry* insert_after,
BM_Entry* insertee);
/* insert an item in a header if "insert_after" is a Header type, or after the
item if "insert after" is not a header type. if the insert_after item is
NULL or not found the item will be inserted at the end of the bm */
extern void BM_InsertItemInHeaderOrAfterItem(MWContext* context,
BM_Entry* insert_after,
BM_Entry* insertee );
/* Cause the given item to be inserted at the end of the given header. The
header passed in here is usually BM_GetAddHeader(). */
extern void BM_AppendToHeader(MWContext* context, BM_Entry* header,
BM_Entry* entry);
extern void BM_PrependChildToHeader(MWContext* context, BM_Entry* parent, BM_Entry* child);
/* Removes the given item from bookmarks without deleting it*/
extern void BM_RemoveChildFromHeader(MWContext* context, BM_Entry* parent, BM_Entry* child);
/* Cause the given bookmark to be displayed in a browser window somewhere.
The given item must be an URL (BM_IsUrl must return TRUE). */
extern void BM_GotoBookmark(MWContext* context, BM_Entry* item);
/* Reads the hostlist from disk, what else? Pass in the bm filename and a
relative URL which represents the original location of the html file. If
you are reading the default bm you should pass in a file URL of the form
file://localhost/PATH */
extern void BM_ReadBookmarksFromDisk(MWContext* context, const char* filename,
const char* relative_url);
/* saves the bm to a file. If the given filename is NULL, then save it back to
where it was loaded from and only if changes have been made. Returns
negative on failure. */
extern int32 BM_SaveBookmarks(MWContext* context, const char* filename);
/* Returns the filename that the bookmarks are saved in. */
extern const char* BM_GetFileName(MWContext* context);
/* read in a new bookmarks file (esp for LI use). */
extern void BM_Open_File(MWContext* context, char* newFile);
/* ability to set the modified to true or false (esp for LI use). */
extern void BM_SetModified(MWContext* context, XP_Bool mod);
/* Whether the file will be written when Save is called. */
extern XP_Bool BM_Modified(MWContext* context);
/* Convert a number of selections in a bm list into a block of memory that the
user can use for cut and paste operations */
extern char* BM_ConvertSelectionsToBlock(MWContext* context,
XP_Bool bLongFormat,
int32* lTotalLen);
/* Take a block of memory and insert the bm items it represents into the
current bm */
extern void BM_InsertBlockAt(MWContext* context, char* pOriginalBlock,
BM_Entry* addTo, XP_Bool bLongFormat,
int32 lTotalLen);
/* select all aliases for an entry */
extern void BM_SelectAliases(MWContext* context, BM_Entry* forEntry );
/* Count how many aliases there are to the given entry. */
extern int32 BM_CountAliases(MWContext* context, BM_Entry* forEntry);
/* Make an alias for each of the currently selected entries. */
extern void BM_MakeAliases(MWContext* context);
/* Returns the real item that an alias points to. The given entry must be an
alias (BM_IsAlias must return TRUE on it). */
extern BM_Entry* BM_GetAliasOriginal(BM_Entry*);
/* Start a What's Changed operation. Before calling this routine, it's up to
the FE to present a dialog like this when What's Changed starts:
Look for documents that have changed on:
(o) All bookmarks
( ) Selected bookmarks
[ Start Checking ] [ Cancel ]
Then the FE calls this routine when the user clicks Start Checking. The FE
will immediately get called via BMFE_UpdateWhatsChanged(), and the FE should
change the dialog box's appearance to match. */
extern int BM_StartWhatsChanged(MWContext* context,
XP_Bool do_only_selected);
/* Cancel a running What's Changed operation. */
extern int BM_CancelWhatsChanged(MWContext* context);
/* Returns whether the given command can be executed right now. Should be
used to decide whether to disable a menu item for this command. */
extern XP_Bool BM_FindCommandStatus(MWContext* context,
BM_CommandType command);
/* Execute the given command. */
extern void BM_ObeyCommand(MWContext* context, BM_CommandType command );
/* Clean up the undo queue */
void BM_ResetUndo(MWContext * context);
XP_END_PROTOS
#endif /* BMLIST_H */

View File

@@ -1,159 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* Copyright (c) 1991, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Berkeley Software Design, Inc.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)cdefs.h 8.7 (Berkeley) 1/21/94
*/
#ifndef _CDEFS_H_
#define _CDEFS_H_
#ifdef __BEGIN_DECLS
#undef __BEGIN_DECLS
#endif
#ifdef __END_DECLS
#undef __END_DECLS
#endif
#if defined(__cplusplus)
#define __BEGIN_DECLS extern "C" {
#define __END_DECLS }
#else
#define __BEGIN_DECLS
#define __END_DECLS
#endif
/*
* The __CONCAT macro is used to concatenate parts of symbol names, e.g.
* with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
* The __CONCAT macro is a bit tricky -- make sure you don't put spaces
* in between its arguments. __CONCAT can also concatenate double-quoted
* strings produced by the __STRING macro, but this only works with ANSI C.
*/
#undef __P
#undef __CONCAT
#undef __STRING
#if defined(__STDC__) || defined(__cplusplus) || defined(_WINDOWS) || defined(XP_OS2)
#define __P(protos) protos /* full-blown ANSI C */
#define __CONCAT(x,y) x ## y
#define __STRING(x) #x
#define __const const /* define reserved names to standard */
#define __signed signed
#define __volatile volatile
#ifndef _WINDOWS
#if defined(__cplusplus)
#define __inline inline /* convert to C++ keyword */
#else
#ifndef __GNUC__
#define __inline /* delete GCC keyword */
#endif /* !__GNUC__ */
#endif /* !__cplusplus */
#endif /* !_WINDOWS */
#else /* !(__STDC__ || __cplusplus) */
#define __P(protos) () /* traditional C preprocessor */
#define __CONCAT(x,y) x/**/y
#define __STRING(x) "x"
#ifndef __GNUC__
#define __const /* delete pseudo-ANSI C keywords */
#define __inline
#define __signed
#define __volatile
/*
* In non-ANSI C environments, new programs will want ANSI-only C keywords
* deleted from the program and old programs will want them left alone.
* When using a compiler other than gcc, programs using the ANSI C keywords
* inline, signed etc. as normal identifiers should define -DNO_ANSI_KEYWORDS.
* When using "gcc -traditional", we assume that this is the intent; if
* __GNUC__ is defined but __STDC__ is not, we leave the new keywords alone.
*/
#ifndef NO_ANSI_KEYWORDS
#define inline /* delete ANSI C keywords */
#define signed
#define volatile
#endif
#endif /* !__GNUC__ */
#endif /* !(__STDC__ || __cplusplus) */
/*
* GCC1 and some versions of GCC2 declare dead (non-returning) and
* pure (no side effects) functions using "volatile" and "const";
* unfortunately, these then cause warnings under "-ansi -pedantic".
* GCC2 uses a new, peculiar __attribute__((attrs)) style. All of
* these work for GNU C++ (modulo a slight glitch in the C++ grammar
* in the distribution version of 2.5.5).
*/
#if !defined(__GNUC__) || __GNUC__ < 2 || __GNUC_MINOR__ < 5
#define __attribute__(x) /* delete __attribute__ if non-gcc or gcc1 */
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
#define __dead __volatile
#define __pure __const
#endif
#endif
/* Delete pseudo-keywords wherever they are not available or needed. */
#ifndef __dead
#define __dead
#define __pure
#endif
#ifdef AIXV3
/* Wont compile without const. Need a cleaner way to handle this. */
#ifdef const
#undef const
#endif
#endif
#endif /* !_CDEFS_H_ */

View File

@@ -1,76 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef __cgi_h_
#define __cgi_h_
/*
** CGI assist library. Portability layer for writing correctly behaving
** CGI programs.
*/
#include "ds.h"
XP_BEGIN_PROTOS
/*
** Read in the input, generating a single long string out of it. CGI
** programs normally get the value of various forms elements as input.
*/
extern char *CGI_GatherInput(FILE *in);
/*
** Given a null terminated string, compress it in place, converting
** "funny characters" into their ascii equivalent. Maps "+" to space and
** %xx to the binary version of xx, where xx is a pair of hex digits.
*/
extern void CGI_CompressString(char *s);
/*
** Convert a string into an argument vector. This seperates the incoming
** string into pieces, and calls CGI_CompressString to compress the
** pieces. This allocates memory for the return value only.
*/
extern char **CGI_ConvertStringToArgVec(char *string, int *argcp);
/*
** Look for the variable called "name" in the argv. Return a pointer to
** the value portion of the variable if found, zero otherwise. this does
** not malloc memory.
*/
extern char *CGI_GetVariable(char *name, int argc, char **argv);
/* Return non-zero if the variable string is not empty */
#define CGI_IsEmpty(var) (!(var) || ((var)[0] == 0))
/*
** Return true if the server that started the cgi running is using
** security (https).
*/
extern DSBool CGI_IsSecureServer(void);
/*
** Concatenate strings to produce a single string.
*/
extern char *CGI_Cat(char *, ...);
/* Escape a string, cgi style */
char *CGI_Escape(char *in);
XP_END_PROTOS
#endif /* __cgi_h_ */

View File

@@ -1,59 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* This file should be included after xp_mcom.h
*
* All definitions for intermodule communications in the Netscape
* client should be contained in this file
*/
#ifndef _CLIENT_H_
#define _CLIENT_H_
#define NEW_FE_CONTEXT_FUNCS
/* include header files needed for prototypes/etc */
#include "xp_mcom.h"
#include "ntypes.h" /* typedefs for commonly used Netscape data structures */
#include "fe_proto.h" /* all the standard FE functions */
#include "proto.h" /* library functions */
/* global data structures */
#include "structs.h"
#include "merrors.h"
#ifndef XP_MAC /* don't include everything in the world */
/* --------------------------------------------------------------------- */
/* include other bits of the Netscape client library */
#include "lo_ele.h" /* Layout structures */
#include "net.h"
#include "gui.h"
#include "shist.h"
#include "hotlist.h"
#include "glhist.h"
#include "mime.h"
#endif /* !XP_MAC */
#endif /* _CLIENT_H_ */

View File

@@ -1,220 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* csid.h */
#ifndef _CSID_H_
#define _CSID_H_
/* Codeset type */
#define SINGLEBYTE 0x0000 /* 0000 0000 0000 0000 = 0 */
#define MULTIBYTE 0x0100 /* 0000 0001 0000 0000 = 256 */
#define STATEFUL 0x0200 /* 0000 0010 0000 0000 = 512 */
#define WIDECHAR 0x0300 /* 0000 0011 0000 0000 = 768 */
#define CODESET_MASK 0x0F00 /* 0000 1111 0000 0000 = 3840 */
/*
* Check for double byte encodings
* (should distinguish 2 byte from true multibyte)
*/
#define IS_16BIT_ENCODING(x) (((x)&CODESET_MASK) == MULTIBYTE)
/* line-break on spaces */
#define CS_SPACE 0x0400 /* 0000 0100 0000 0000 = 1024 */
/* Auto Detect Mode */
#define CS_AUTO 0x0800 /* 0000 1000 0000 0000 = 2048 */
/* Code Set IDs */
/* CS_DEFAULT: used if no charset param in header */
/* CS_UNKNOWN: used for unrecognized charset */
/* type id */
#define CS_DEFAULT (SINGLEBYTE | 0) /* 0 */
#define CS_ASCII (SINGLEBYTE | 1) /* 1 */
#define CS_LATIN1 (SINGLEBYTE | 2) /* 2 */
#define CS_JIS (STATEFUL | 3) /* 515 */
#define CS_SJIS (MULTIBYTE | 4) /* 260 */
#define CS_EUCJP (MULTIBYTE | 5) /* 261 */
#define CS_JIS_AUTO (CS_AUTO|STATEFUL | 3) /* 2563 */
#define CS_SJIS_AUTO (CS_AUTO|MULTIBYTE | 4) /* 2308 */
#define CS_EUCJP_AUTO (CS_AUTO|MULTIBYTE | 5) /* 2309 */
#define CS_MAC_ROMAN (SINGLEBYTE | 6) /* 6 */
#define CS_BIG5 (MULTIBYTE | 7) /* 263 */
#define CS_GB_8BIT (MULTIBYTE | 8) /* 264 */
#define CS_CNS_8BIT (MULTIBYTE | 9) /* 265 */
#define CS_LATIN2 (SINGLEBYTE | 10) /* 10 */
#define CS_MAC_CE (SINGLEBYTE | 11) /* 11 */
#define CS_KSC_8BIT (MULTIBYTE|CS_SPACE | 12) /* 1292 */
#define CS_KSC_8BIT_AUTO (CS_AUTO | MULTIBYTE|CS_SPACE | 12)
#define CS_2022_KR (STATEFUL | 13) /* 525 */
#define CS_8859_3 (SINGLEBYTE | 14) /* 14 */
#define CS_8859_4 (SINGLEBYTE | 15) /* 15 */
#define CS_8859_5 (SINGLEBYTE | 16) /* 16 ISO Cyrillic */
#define CS_8859_6 (SINGLEBYTE | 17) /* 17 ISO Arabic */
#define CS_8859_7 (SINGLEBYTE | 18) /* 18 ISO Greek */
#define CS_8859_8 (SINGLEBYTE | 19) /* 19 ISO Hebrew */
#define CS_8859_9 (SINGLEBYTE | 20) /* 20 */
#define CS_SYMBOL (SINGLEBYTE | 21) /* 21 */
#define CS_DINGBATS (SINGLEBYTE | 22) /* 22 */
#define CS_DECTECH (SINGLEBYTE | 23) /* 23 */
#define CS_CNS11643_1 (MULTIBYTE | 24) /* 280 */
#define CS_CNS11643_2 (MULTIBYTE | 25) /* 281 */
#define CS_JISX0208 (MULTIBYTE | 26) /* 282 */
#define CS_JISX0201 (SINGLEBYTE | 27) /* 27 */
#define CS_KSC5601 (MULTIBYTE | 28) /* 284 */
#define CS_TIS620 (SINGLEBYTE | 29) /* 29 */
#define CS_JISX0212 (MULTIBYTE | 30) /* 286 */
#define CS_GB2312 (MULTIBYTE | 31) /* 287 */
#define CS_UCS2 (WIDECHAR | 32) /* 810 */
#define CS_UCS4 (WIDECHAR | 33) /* 811 */
#define CS_UTF8 (MULTIBYTE | 34) /* 290 */
#define CS_UTF7 (STATEFUL | 35) /* 35 */
#define CS_NPC (MULTIBYTE | 36) /* 292 */
#define CS_X_BIG5 (MULTIBYTE | 37) /* 293 */
#define CS_USRDEF2 (SINGLEBYTE | 38) /* 38 */
#define CS_KOI8_R (SINGLEBYTE | 39) /* 39 */
#define CS_MAC_CYRILLIC (SINGLEBYTE | 40) /* 40 */
#define CS_CP_1251 (SINGLEBYTE | 41) /* 41 CP1251 Windows Cyrillic */
#define CS_MAC_GREEK (SINGLEBYTE | 42) /* 42 */
/* CS_CP_1253 should be deleted, we should use CS_8859_7 instead */
#define CS_CP_1253 (SINGLEBYTE | 43) /* 43 CP1253 Windows Greek */
#define CS_CP_1250 (SINGLEBYTE | 44) /* 44 CP1250 Windows C. Europe */
/* CS_CP_1254 should be deleted, we should use CS_8859_9 instead */
#define CS_CP_1254 (SINGLEBYTE | 45) /* 45 CP1254 Windows Turkish */
#define CS_MAC_TURKISH (SINGLEBYTE | 46) /* 46 */
#define CS_GB2312_11 (MULTIBYTE | 47) /* 303 */
#define CS_JISX0208_11 (MULTIBYTE | 48) /* 304 */
#define CS_KSC5601_11 (MULTIBYTE | 49) /* 305 */
#define CS_CNS11643_1110 (MULTIBYTE | 50) /* 306 */
#define CS_UCS2_SWAP (WIDECHAR | 51) /* 819 */
#define CS_IMAP4_UTF7 (STATEFUL | 52) /* 564 */
#define CS_CP_850 (SINGLEBYTE | 53) /* 53 PC Latin 1 */
#define CS_CP_852 (SINGLEBYTE | 54) /* 54 PC Latin 2 */
#define CS_CP_855 (SINGLEBYTE | 55) /* 55 PC Cyrillic */
#define CS_CP_857 (SINGLEBYTE | 56) /* 56 PC Turkish */
#define CS_CP_862 (SINGLEBYTE | 57) /* 57 PC Hebrew */
#define CS_CP_864 (SINGLEBYTE | 58) /* 58 PC Arabic */
#define CS_CP_866 (SINGLEBYTE | 59) /* 59 PC Russian */
#define CS_CP_874 (SINGLEBYTE | 60) /* 60 PC Thai */
#define CS_CP_1257 (SINGLEBYTE | 61) /* 61 Windows Baltic */
#define CS_CP_1258 (SINGLEBYTE | 62) /* 62 Windows Vietnamese */
#define INTL_CHAR_SET_MAX 63 /* must be highest + 1 */
#define CS_USER_DEFINED_ENCODING (SINGLEBYTE | 254) /* 254 */
#define CS_UNKNOWN (SINGLEBYTE | 255) /* 255 */
#define IS_UTF8_CSID(x) (((x)&0xFF)== (CS_UTF8&0xFF))
#define IS_UNICODE_CSID(x) \
( (((x)&0xFF)== (CS_UCS2&0xFF)) \
|| (((x)&0xFF)== (CS_UTF8&0xFF)) \
|| (((x)&0xFF)== (CS_UTF7&0xFF)) )
/* The trigger is passing the parameter to
PA_FetchParamValue() to satisfy its signature */
#ifdef XP_MAC
#define CS_FE_ASCII CS_MAC_ROMAN
#else
#define CS_FE_ASCII CS_LATIN1
#endif
/* Codeset # sorted by number */
#if 0
0 CS_DEFAULT 0
1 CS_ASCII 1
2 CS_LATIN1 2
6 CS_MAC_ROMAN 6
10 CS_LATIN2 10
11 CS_MAC_CE 11
14 CS_8859_3 14
15 CS_8859_4 15
16 CS_8859_5 16
17 CS_8859_6 17
18 CS_8859_7 18
19 CS_8859_8 19
20 CS_8859_9 20
21 CS_SYMBOL 21
22 CS_DINGBATS 22
23 CS_DECTECH 23
27 CS_JISX0201 27
29 CS_TIS620 29
35 CS_UTF7 35
38 CS_USRDEF2 38
39 CS_KOI8_R 39
40 CS_MAC_CYRILLIC 40
41 CS_CP_1251 41
42 CS_MAC_GREEK 42
43 CS_CP_1253 43
44 CS_CP_1250 44
45 CS_CP_1254 45
46 CS_MAC_TURKISH 46
53 CS_CP_850 53
54 CS_CP_852 54
55 CS_CP_855 55
56 CS_CP_857 56
57 CS_CP_862 57
58 CS_CP_864 58
59 CS_CP_866 59
59 CS_CP_874 60
60 CS_CP_1257 61
61 CS_CP_1258 62
62 INTL_CHAR_SET_MAX 63
254 CS_USER_DEFINED_ENCODING 254
255 CS_UNKNOWN 255
260 CS_SJIS 260
261 CS_EUCJP 261
263 CS_BIG5 263
264 CS_GB_8BIT 264
265 CS_CNS_8BIT 265
280 CS_CNS11643_1 280
281 CS_CNS11643_2 281
282 CS_JISX0208 282
284 CS_KSC5601 284
286 CS_JISX0212 286
287 CS_GB2312 287
290 CS_UTF8 290
292 CS_NPC 292
293 CS_X_BIG5 293
303 CS_GB2312_11 303
304 CS_JISX0208_11 304
305 CS_KSC5601_11 305
306 CS_CNS11643_1110 306
515 CS_JIS 515
525 CS_2022_KR 525
564 CS_IMAP4_UTF7 564
810 CS_UCS2 810
811 CS_UCS4 811
819 CS_UCS2_SWAP 819
1292 CS_KSC_8BIT 1292
2308 CS_SJIS_AUTO 2308
2309 CS_EUCJP_AUTO 2309
2563 CS_JIS_AUTO 2563
#endif
#endif /* _CSID_H_ */

View File

@@ -1,36 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* the context function table
*
* This was typedef'd to ContextFuncs in structs.h
*/
#ifndef _ContextFunctions_
#define _ContextFunctions_
#include "il_types.h"
#include "cl_types.h"
#include "xp_obs.h"
struct _ContextFuncs {
#define MAKE_FE_FUNCS_STRUCT
#include "mk_cx_fn.h"
};
#endif /* _ContextFunctions_ */

View File

@@ -1,41 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef CV_ACTIVE
#define CV_ACTIVE
#include "net.h"
/* define a constant to be passed to CV_MakeMultipleDocumentStream
* as the data_object to signify that it should return
* MK_END_OF_MULTIPART_MESSAGE when it gets to the end
* of the multipart instead of waiting for the complete
* function to be called
*/
#define CVACTIVE_SIGNAL_AT_END_OF_MULTIPART 999
XP_BEGIN_PROTOS
extern NET_StreamClass *
CV_MakeMultipleDocumentStream (int format_out,
void *data_object,
URL_Struct *URL_s,
MWContext *window_id);
XP_END_PROTOS
#endif /* CV_ACTIVE */

View File

@@ -1,223 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _DIRPREFS_H_
#define _DIRPREFS_H_
#define kCurrentListVersion 1
/* DIR_Server.dirType */
typedef enum
{
LDAPDirectory,
HTMLDirectory,
PABDirectory
} DirectoryType;
typedef enum
{
cn,
givenname,
sn,
mail,
telephonenumber,
o,
ou,
l,
street,
auth,
custom1,
custom2,
custom3,
custom4,
custom5
} DIR_AttributeId;
typedef struct _DIR_ReplicationInfo DIR_ReplicationInfo;
typedef struct DIR_Server
{
char *description; /* human readable name */
char *serverName; /* network host name */
char *searchBase; /* DN suffix to search at */
char *fileName; /* XP path name of local DB */
char *prefId; /* name of this server's tree in JS prefs */
int port; /* network port number */
int maxHits; /* maximum number of hits to return */
XP_Bool isSecure; /* use SSL? */
XP_Bool saveResults;
XP_Bool efficientWildcards; /* server can match substrings */
char *lastSearchString; /* required if saving results */
DirectoryType dirType;
uint32 flags;
/* site-configurable attributes and filters */
XP_List *customFilters;
XP_List *customAttributes;
char *tokenSeps;
XP_Bool stopFiltersOnHit;
XP_Bool isOffline;
/* site-configurable list of attributes whose values are DNs */
char **dnAttributes;
int dnAttributesCount;
/* site-configurable list of attributes we shouldn't display in HTML */
char **suppressedAttributes;
int suppressedAttributesCount;
/* site-configurable list of attributes for the Basic Search dialog */
DIR_AttributeId *basicSearchAttributes;
int basicSearchAttributesCount;
/* site-configurable URL to open LDAP results */
char *customDisplayUrl;
/* authentication fields */
XP_Bool enableAuth; /* Use DN and password when binding? */
XP_Bool savePassword; /* Remember the DN and password we gave? */
char *authDn; /* DN to give to authenticate as */
char *password; /* Password for the DN */
/* replication fields */
DIR_ReplicationInfo *replInfo;
} DIR_Server;
XP_BEGIN_PROTOS
/* Return the list of directory servers
* each front end hangs on to the list
*/
XP_List * FE_GetDirServers(void);
/* Since the strings in DIR_Server are allocated, we have bottleneck
* routines to help with memory mgmt
*/
int DIR_CopyServer (DIR_Server *in, DIR_Server **out);
int DIR_DeleteServer (DIR_Server *);
int DIR_InitServer (DIR_Server *);
int DIR_ValidateServer (DIR_Server *);
XP_Bool DIR_AreServersSame (DIR_Server *first, DIR_Server *second);
int DIR_DeleteServerList(XP_List *wholeList);
int DIR_GetLdapServers (XP_List *wholeList, XP_List *subList);
int DIR_ReorderLdapServers (XP_List *wholeList);
/* These two routines should be called to initialize and save
* directory preferences from the XP Java Script preferences
*/
int DIR_GetServerPreferences (XP_List **list, const char* pabFile);
int DIR_SaveServerPreferences (XP_List *wholeList);
/* This routine will clean up files for deleted directories */
int DIR_CleanUpServerPreferences(XP_List *deletedList);
#if 1
/* Returns a pointer into the list (not allocated, so don't free) */
int DIR_GetPersonalAddressBook (XP_List *wholeList, DIR_Server **pab);
int DIR_GetComposeNameCompletionAddressBook (XP_List *wholeList, DIR_Server **cab);
#else
/* Returns an allocated list of all personal address books, excluding
* LDAP directories, replicated directories, and CABs
*/
XP_List *DIR_GetPersonalAddressBooks (XP_List *wholeList);
XP_List *DIR_GetAddressBooksForCompletion (XP_List *wholeList);
#endif
void DIR_GetServerFileName(char** filename, const char* leafName);
void DIR_SetServerFileName(DIR_Server* pServer, const char* leafName);
/* APIs for site-configurability of LDAP attribute names and
* search filter behavior.
*
* Strings are NOT allocated, and arrays are NULL-terminated
*/
const char *DIR_GetAttributeName (DIR_Server *server, DIR_AttributeId id);
const char **DIR_GetAttributeStrings (DIR_Server *server, DIR_AttributeId id);
const char *DIR_GetFirstAttributeString (DIR_Server *server, DIR_AttributeId id);
const char *DIR_GetFilterString (DIR_Server *server);
const char *DIR_GetTokenSeparators (DIR_Server *server);
XP_Bool DIR_RepeatFilterForTokens (DIR_Server *server, const char *filter);
XP_Bool DIR_SubstStarsForSpaces (DIR_Server *server, const char *filter);
XP_Bool DIR_UseCustomAttribute (DIR_Server *server, DIR_AttributeId id);
XP_Bool DIR_IsDnAttribute (DIR_Server *s, const char *attr);
XP_Bool DIR_IsAttributeExcludedFromHtml (DIR_Server *s, const char *attr);
int DIR_AttributeNameToId (const char *attrName, DIR_AttributeId *id);
/* APIs for authentication */
void DIR_SetAuthDN (DIR_Server *s, const char *dn);
void DIR_SetPassword (DIR_Server *s, const char *password);
/* APIs for unescaping LDAP special chars */
char *DIR_Unescape (const char *src, XP_Bool makeHtml);
XP_Bool DIR_IsEscapedAttribute (DIR_Server *s, const char *attrib);
/* APIs for replication */
int DIR_ValidateRootDSE (DIR_Server *s, int32 gen, int32 first, int32 last);
/* API for building a URL */
char *DIR_BuildUrl (DIR_Server *s, const char *dn, XP_Bool forAddToAB);
/* Flags manipulation */
#define DIR_AUTO_COMPLETE_ENABLED 0x00000001
#define DIR_ENABLE_AUTH 0x00000002
#define DIR_SAVE_PASSWORD 0x00000004
#define DIR_UTF8_DISABLED 0x00000008 /* not used by the FEs */
#define DIR_IS_SECURE 0x00000010
#define DIR_SAVE_RESULTS 0x00000020 /* not used by the FEs */
#define DIR_EFFICIENT_WILDCARDS 0x00000040 /* not used by the FEs */
#define DIR_LDAPV3_SUPPORTED 0x00000080 /* not used by the FEs */
#define DIR_LDAPV3_NOT_SUPPORTED 0x00000100 /* not used by the FEs */
#define DIR_VIRTUAL_LISTBOX_SUPPORTED 0x00000200 /* not used by the FEs */
#define DIR_VIRTUAL_LISTBOX_NOT_SUPPORTED 0x00000400 /* not used by the FEs */
void DIR_SetAutoCompleteEnabled (XP_List *list, DIR_Server *server, XP_Bool onOrOff);
XP_Bool DIR_TestFlag (DIR_Server *server, uint32 flag);
void DIR_SetFlag (DIR_Server *server, uint32 flag);
void DIR_ClearFlag (DIR_Server *server, uint32 flag);
void DIR_ForceFlag (DIR_Server *server, uint32 flag, XP_Bool forceOnOrOff);
char *DIR_ConvertToServerCharSet (DIR_Server *s, char *src, int16 srcCsid);
char *DIR_ConvertFromServerCharSet (DIR_Server *s, char *src, int16 dstCsid);
#ifdef MOZ_LDAP
/* Does the LDAP client lib work for SSL */
#include "ldap.h"
int DIR_SetupSecureConnection (LDAP *ld);
#endif /* MOZ_LDAP */
XP_END_PROTOS
#endif /* dirprefs.h */

View File

@@ -1,267 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef __DS_h_
#define __DS_h_
#ifdef XP_WIN32
#include <windows.h>
#endif /* XP_WIN32 */
#ifdef XP_OS2
#define INCL_WIN
#define INCL_GPI
#define TID OS2TID /* global rename in OS2 H's! */
#include <os2.h>
#undef TID /* and restore */
#endif
#include "xp_mcom.h"
XP_BEGIN_PROTOS
/* Typedefs */
typedef struct DSArrayStr DSArray;
typedef struct DSLinkStr DSLink;
typedef struct DSListStr DSList;
typedef struct DSArenaStr DSArena;
#define DS_MIN(a,b) ((a)<(b)?(a):(b))
#define DS_MAX(a,b) ((a)>(b)?(a):(b))
/*
** Your basic boolean. Done as an enum to cause compiler warnings when a
** boolean procedure doesn't return the right value.
** LISA SEZ: Please do not use this; use PRBool instead. Eventually
** (as soon as I can "make it so") DSBool is going away in favor of PRBool.
*/
typedef enum DSBoolEnum {
DSTrue = 1,
DSFalse = 0
} DSBool;
/*
** A status code. Status's are used by procedures that return status
** values. Again the motivation is so that a compiler can generate
** warnings when return values are wrong. Correct testing of status codes:
**
** DSStatus rv;
** rv = some_function (some_argument);
** if (rv != DSSuccess)
** do_an_error_thing();
**
*/
typedef enum DSStatusEnum {
DSWouldBlock = -2,
DSFailure = -1,
DSSuccess = 0
} DSStatus;
/*
** A comparison code. Used for procedures that return comparision
** values. Again the motivation is so that a compiler can generate
** warnings when return values are wrong.
*/
typedef enum DSComparisonEnum {
DSLessThan = -1,
DSEqual = 0,
DSGreaterThan = 1
} DSComparison;
typedef void (*DSElementFreeFunc)(void *e1, DSBool freeit);
typedef int (*DSElementCompareFunc)(void *e1, void *e2);
/************************************************************************/
/*
** Simple variable length array of pointers. The array keeps a NULL
** pointer at the end of the array.
*/
struct DSArrayStr {
void **things;
DSElementFreeFunc freeElement;
};
extern DSArray *DS_CreateArray(int slots);
extern DSStatus DS_GrowArray(DSArray *da, int slots);
extern void DS_SetArrayMethods(DSArray *da, DSElementFreeFunc free);
extern void DS_DestroyArray(DSArray *da, DSBool freeit);
extern void DS_Sort(DSArray *da, DSElementCompareFunc compare);
extern int DS_Elements(DSArray *da);
extern DSStatus DS_AddElement(DSArray *da, void *element);
extern void DS_RemoveElement(DSArray *da, void *element);
/************************************************************************/
/*
** Circular linked list. Each link contains a pointer to the object that
** is actually in the list.
*/
struct DSLinkStr {
DSLink *next;
DSLink *prev;
void *thing;
};
struct DSListStr {
DSLink link;
};
#define DS_InitList(lst) \
{ \
(lst)->link.next = &(lst)->link; \
(lst)->link.prev = &(lst)->link; \
(lst)->link.thing = 0; \
}
#define DS_ListEmpty(lst) \
((lst)->link.next == &(lst)->link)
#define DS_ListHead(lst) \
((lst)->link.next)
#define DS_ListTail(lst) \
((lst)->link.prev)
#define DS_ListIterDone(lst,lnk) \
((lnk) == &(lst)->link)
#define DS_AppendLink(lst,lnk) \
{ \
(lnk)->next = &(lst)->link; \
(lnk)->prev = (lst)->link.prev; \
(lst)->link.prev->next = (lnk); \
(lst)->link.prev = (lnk); \
}
#define DS_InsertLink(lst,lnk) \
{ \
(lnk)->next = (lst)->link.next; \
(lnk)->prev = &(lst)->link; \
(lst)->link.next->prev = (lnk); \
(lst)->link.next = (lnk); \
}
#define DS_RemoveLink(lnk) \
{ \
(lnk)->next->prev = (lnk)->prev; \
(lnk)->prev->next = (lnk)->next; \
(lnk)->next = 0; \
(lnk)->prev = 0; \
}
extern DSLink *DS_NewLink(void *thing);
extern DSLink *DS_FindLink(DSList *lst, void *thing);
extern void DS_DestroyLink(DSLink *lnk, DSBool freeit);
/************************************************************************/
/*
** Memory manager
*/
/*
** at one time XP_Block was a float* to force clients to cast things
** before use. Now DSBlock is defined since that will be most convenient
** for almost all uses.
*/
typedef unsigned char *DSBlock;
/*
** Allocate some memory. Always allocates at least one byte of memory.
*/
extern void *DS_Alloc(size_t bytes);
/*
** Reallocate some memory, growing or shrinking the memory.
*/
extern void *DS_Realloc(void *oldptr, size_t bytes);
/*
** Allocate and then zero some memory. Always allocates at least one byte
** of memory.
*/
extern void *DS_Zalloc(size_t bytes);
/*
** Allocate a block of memory. Always allocates at least one byte of
** memory.
*/
extern DSBlock DS_AllocBlock(size_t bytes);
/*
** Reallocate a block of memory, growing or shrinking the memory block.
*/
extern DSBlock DS_ReallocBlock(DSBlock block, size_t newBytes);
/*
** Free a block of memory. Safe to use on null pointers.
*/
extern void DS_FreeBlock(DSBlock block);
/*
** Free a chunk of memory. Safe to use on null pointers.
*/
extern void DS_Free(void *ptr);
/*
** Zero and then free a chunk of memory. Safe to use on null pointers.
*/
extern void DS_Zfree(void *ptr, size_t bytes);
/*
* Low cost Malloc Arenas.
*
* The chunks are a linked list.
* The beginning of each chunk is a pointer to the next chunk.
*/
struct DSArenaStr {
unsigned long chunkSize; /* size of each chunk */
unsigned int refCount; /* reference count */
void ** firstChunk; /* pointer to first chunk */
void ** lastChunk; /* pointer to last chunk */
void * pLast; /* last item allocated */
void * pCur; /* beginning of free area */
void * pCurEnd; /* end of free area in current chunk */
};
/* make a new arena */
extern DSArena *
DS_NewArena(unsigned long chunkSize);
/* destroy an arena, and free all memory associated with it */
extern void
DS_FreeArena(DSArena *arena, DSBool zero);
/* malloc a chunk of data from the arena */
extern void *
DS_ArenaAlloc(DSArena *arena, unsigned long size);
/* malloc a chunk of data from the arena, zero filling it */
extern void *
DS_ArenaZalloc(DSArena *arena, unsigned long size);
/* change the size of an object, works best if it was the last object
* allocated
*/
extern void *
DS_ArenaGrow(DSArena *arena, void *pOld, unsigned long oldsize,
unsigned long newsize);
XP_END_PROTOS
#endif /* __DS_h_ */

View File

@@ -1,33 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef __DS_ERR_h_
#define __DS_ERR_h_
#define DS_ERROR_BASE (-0x1000)
#define DS_ERROR_LIMIT (DS_ERROR_BASE + 1000)
#define IS_DS_ERROR(code) \
(((code) >= DS_ERROR_BASE) && ((code) < DS_ERROR_LIMIT))
/*
** DS library error codes
*/
#define DS_ERROR_OUT_OF_MEMORY (DS_ERROR_BASE + 0)
#endif /* __DS_ERR_h_ */

File diff suppressed because it is too large Load Diff

View File

@@ -1,653 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* File defines external editor types.
*
* These types are remapped internally to the editor.
*/
#ifndef _edt_types_h_
#define _edt_types_h_
#ifndef EDITOR_TYPES
#define ED_Element void
#define ED_Buffer void
#define ED_TagCursor void
#define ED_BitArray void
#endif
#include "xp_core.h"
/* Number of "Netscape Colors" All are in
* Color cube
*/
#define MAX_NS_COLORS 70
typedef int32 ED_BufferOffset;
/*
* Handle to Internal structure used for maintaining links.
*/
typedef struct ED_Link* ED_LinkId;
#define ED_LINK_ID_NONE 0
/* this id is passed to FE_GetImageData.. when it returns, we know to pass
* the call to EDT_SetImageData
*/
#define ED_IMAGE_LOAD_HACK_ID -10
typedef enum {
ED_ELEMENT_NONE, /* Not returned from EDT_GetCurrentElement, needed to have a "not known" value */
ED_ELEMENT_SELECTION, /* a selection instead of a single element */
ED_ELEMENT_TEXT,
ED_ELEMENT_IMAGE,
ED_ELEMENT_HRULE,
ED_ELEMENT_UNKNOWN_TAG,
ED_ELEMENT_TARGET,
ED_ELEMENT_TABLE, /* Keep these at the end so we can use type >= ED_ELEMENT_TABLE to test for any of them */
ED_ELEMENT_CELL,
ED_ELEMENT_ROW, /* May not need these. Currently returning ED_ELEMENT_CELL instead */
ED_ELEMENT_COL
} ED_ElementType;
typedef enum {
ED_CARET_BEFORE = 0,
ED_CARET_AFTER = 1
} ED_CaretObjectPosition;
#define TF_NONE 0
#define TF_BOLD 1
#define TF_ITALIC 2
#define TF_FIXED 4
#define TF_SUPER 8
#define TF_SUB 0x10
#define TF_STRIKEOUT 0x20
#define TF_BLINK 0x40
#define TF_FONT_COLOR 0x80 /* set if font has color */
#define TF_FONT_SIZE 0x100 /* set if font has size */
#define TF_HREF 0x200
#define TF_SERVER 0x400
#define TF_SCRIPT 0x800
#define TF_STYLE 0x1000
#define TF_UNDERLINE 0x2000
#define TF_FONT_FACE 0x4000
#define TF_NOBREAK 0x8000
#define TF_SPELL 0x10000
#define TF_INLINEINPUT 0x20000
#define TF_INLINEINPUTTHICK 0x40000
#define TF_INLINEINPUTDOTTED 0x80000
#define TF_FONT_WEIGHT 0x100000
#define TF_FONT_POINT_SIZE 0x200000
typedef int32 ED_TextFormat; /* Prefered type for the editor text format. */
typedef ED_TextFormat ED_ETextFormat; /* Alias for old code. Remove when possible. */
/* Similar to ED_TextFormat. Used when multiple cells are represented in EDT_TableCellData */
#define CF_NONE 0
#define CF_ALIGN 1
#define CF_VALIGN 2
#define CF_COLSPAN 4
#define CF_ROWSPAN 8
#define CF_HEADER 0x10
#define CF_NOWRAP 0x20
#define CF_WIDTH 0x40
#define CF_HEIGHT 0x80
#define CF_BACK_COLOR 0x100
#define CF_BACK_IMAGE 0x200
#define CF_BACK_NOSAVE 0x400
#define CF_EXTRA_HTML 0x800
typedef int32 ED_CellFormat; /* Prefered type for the editor cell format. */
/*
* The names here are confusing, and have a historical basis that is
* lost in the mists of time. The trouble is that the "ED_ALIGN_CENTER"
* tag is really "abscenter", while the ED_ALIGN_ABSCENTER tag is
* really "center". (and the same for the TOP and BOTTOM tags.)
*
* Someday, if we have a lot of spare time we could switch the names.
*/
/* CLM: Swapped bottom and center tags -- should match latest extensions now?
* Note: BASELINE is not written out (this is default display mode)
*/
typedef enum {
ED_ALIGN_DEFAULT = -1,
ED_ALIGN_CENTER = 0, /* abscenter */
ED_ALIGN_LEFT = 1, /* left */
ED_ALIGN_RIGHT = 2, /* right */
ED_ALIGN_TOP = 3, /* texttop */
ED_ALIGN_BOTTOM = 4, /* absbottom */
ED_ALIGN_BASELINE = 5, /* baseline */
ED_ALIGN_ABSCENTER = 6, /* center */
ED_ALIGN_ABSBOTTOM = 7, /* bottom */
ED_ALIGN_ABSTOP = 8 /* top */
} ED_Alignment;
/*------------------- TABLE SIZING AND SELECTION --------------------*/
/* SizeStyle defines */
#define ED_SIZE_NONE 0
#define ED_SIZE_TOP 0x0001
#define ED_SIZE_RIGHT 0x0002
#define ED_SIZE_BOTTOM 0x0004
#define ED_SIZE_LEFT 0x0008
#define ED_SIZE_ADD_ROWS 0x0010
#define ED_SIZE_ADD_COLS 0x0020
/* Hotspot at corners */
#define ED_SIZE_TOP_RIGHT (ED_SIZE_TOP | ED_SIZE_RIGHT)
#define ED_SIZE_BOTTOM_RIGHT (ED_SIZE_BOTTOM | ED_SIZE_RIGHT)
#define ED_SIZE_TOP_LEFT (ED_SIZE_TOP | ED_SIZE_LEFT)
#define ED_SIZE_BOTTOM_LEFT (ED_SIZE_BOTTOM | ED_SIZE_LEFT)
typedef intn ED_SizeStyle;
typedef enum { /* Return value for EDT_GetTableHitRegion) */
ED_HIT_NONE,
ED_HIT_SEL_TABLE, /* Upper left corner */
ED_HIT_SEL_COL, /* Near top table border */
ED_HIT_SEL_ROW, /* Near left table border */
ED_HIT_SEL_CELL, /* Near top cell border */
ED_HIT_SEL_ALL_CELLS, /* Upper left corner when Ctrl is pressed */
ED_HIT_SIZE_TABLE_WIDTH, /* Near right table border */
ED_HIT_SIZE_TABLE_HEIGHT, /* Near bottom table border */
ED_HIT_SIZE_COL, /* Near right border of a cell and between columns */
ED_HIT_SIZE_ROW, /* Near bottom border of a cell and between columns */
ED_HIT_ADD_ROWS, /* Lower left corner */
ED_HIT_ADD_COLS, /* Lower right corner */
ED_HIT_DRAG_TABLE, /* Near bottom border and between rows when table or cell is already selected */
ED_HIT_CHANGE_COLSPAN, /* Near Right border of cell having COLSPAN (Not used yet) */
ED_HIT_CHANGE_ROWSPAN /* Bottom edge of cell having ROWSPAN (Not used yet) */
} ED_HitType;
typedef enum { /* Return types for EDT_GetTableDragDropRegion */
ED_DROP_NONE, /* Don't allow drop - when pasting wouldn't change anything */
ED_DROP_NORMAL, /* No special table behavior - do the same as any HTML drop */
ED_DROP_INSERT_BEFORE, /* Between columns - near left border of cell when source = column */
ED_DROP_INSERT_AFTER, /* Between columns - near right border of cell when source = column */
ED_DROP_INSERT_ABOVE, /* Between rows - near top border of cell when source = row */
ED_DROP_INSERT_BELOW, /* Between rows - near bottom border of cell when source = row */
ED_DROP_REPLACE_CELL, /* Inside cell - when we want to replace cell contents */
ED_DROP_APPEND_CONTENTS /* Inside cell - when we append to existing contents */
} ED_DropType;
struct _EDT_DragTableData {
ED_HitType iSourceType; /* One of the ED_HIT_SEL_... enums */
ED_DropType iDropType; /* One of above enum values */
LO_Element *pFirstSelectedCell; /* First cell in source being dragged */
LO_Element *pDragOverCell; /* Cell being dragged over */
intn iRows; /* Number of rows */
intn iColumns; /* and columns in selection */
int32 X; /* Location to place highlighting or make caret */
int32 Y; /* to show where to drop cells */
int32 iWidth;
int32 iHeight;
};
typedef struct _EDT_DragTableData EDT_DragTableData;
typedef enum { /* Return values from EDT_GetMergeCellsType */
ED_MERGE_NONE,
ED_MERGE_NEXT_CELL,
ED_MERGE_SELECTED_CELLS
} ED_MergeType;
/* Used with EDT_ChangeTableSelection to tell if we should move
* to next Cell, Row, or Columns along with changing the selected cells
*/
typedef enum {
ED_MOVE_NONE,
ED_MOVE_PREV,
ED_MOVE_NEXT
} ED_MoveSelType;
/*--------------------------- HREF --------------------------------*/
struct _EDT_HREFData {
char *pURL;
char *pExtra;
};
typedef struct _EDT_HREFData EDT_HREFData;
/*--------------------------- Image --------------------------------*/
struct _EDT_ImageData {
XP_Bool bIsMap;
/* char *pUseMap; created with XP_ALLOC() Now in pExtra, hardts */
ED_Alignment align;
char *pSrc;
char *pLowSrc;
char *pName;
char *pAlt;
int32 iWidth;
int32 iHeight;
XP_Bool bWidthPercent; /* Range: 1 - 100 if TRUE, else = pixels (default) */
XP_Bool bHeightPercent;
int32 iHSpace;
int32 iVSpace;
int32 iBorder;
/* Added hardts */
XP_Bool bNoSave;
/* Added by CLM: */
int32 iOriginalWidth; /* Width and Height we got on initial loading */
int32 iOriginalHeight;
EDT_HREFData *pHREFData;
char *pExtra;
};
typedef struct _EDT_ImageData EDT_ImageData;
/*--------------------------- Target --------------------------------*/
struct _EDT_TargetData {
char *pName;
char *pExtra;
};
typedef struct _EDT_TargetData EDT_TargetData;
/*--------------------------- Character --------------------------------*/
#define ED_FONT_POINT_SIZE_DEFAULT 0
#define ED_FONT_POINT_SIZE_MIN 1
#define ED_FONT_POINT_SIZE_MAX 1000
#define ED_FONT_WEIGHT_MIN 100
#define ED_FONT_WEIGHT_NORMAL 400
#define ED_FONT_WEIGHT_BOLD 700
#define ED_FONT_WEIGHT_MAX 900
enum {
ED_FONT_VARIABLE,
ED_FONT_FIXED,
ED_FONT_LOCAL
};
struct _EDT_CharacterData {
ED_TextFormat mask; /* bits to set or get */
ED_TextFormat values; /* values of the bits in the mask */
LO_Color *pColor; /* color if mask bit is set */
int32 iSize; /* size if mask bit is set */
EDT_HREFData *pHREFData; /* href if mask bit is set */
ED_LinkId linkId; /* internal use only */
char* pFontFace; /* FontFace name */
int16 iWeight; /* font weight range = 100-900, 400=Normal, 700=Bold*/
int16 iPointSize; /* not sure what default is! Use 0 to mean "default" */
};
typedef struct _EDT_CharacterData EDT_CharacterData;
/*--------------------------- Horizonal Rule --------------------------------*/
struct _EDT_HorizRuleData {
ED_Alignment align; /* only allows left and right alignment */
int32 size; /* value 1 to 100 indicates line thickness */
int32 iWidth; /* CM: default = 100% */
XP_Bool bWidthPercent; /* Range: 1 - 100 if TRUE(default), else = pixels */
XP_Bool bNoShade;
char *pExtra;
};
typedef struct _EDT_HorizRuleData EDT_HorizRuleData;
/*--------------------------- ContainerData --------------------------------*/
struct _EDT_ContainerData {
ED_Alignment align; /* only allows left and right alignment */
char *pExtra;
};
typedef struct _EDT_ContainerData EDT_ContainerData;
/*--------------------------- TableData --------------------------------*/
struct _EDT_TableData {
ED_Alignment align; /* ED_ALIGN_LEFT, ED_ALIGN_ABSCENTER, ED_ALIGN_RIGHT */
ED_Alignment malign; /* margin alignment: ED_ALIGN_DEFAULT, ED_ALIGN_LEFT, ED_ALIGN_RIGHT */
XP_Bool bUseCols; /* TRUE means COLS= will be output, which speeds up layout in 4.0 */
int32 iRows;
int32 iColumns;
XP_Bool bBorderWidthDefined;
int32 iBorderWidth;
int32 iCellSpacing;
int32 iCellPadding;
int32 iInterCellSpace;
XP_Bool bWidthDefined;
XP_Bool bWidthPercent;
int32 iWidth;
int32 iWidthPixels;
XP_Bool bHeightDefined;
XP_Bool bHeightPercent;
int32 iHeight;
int32 iHeightPixels;
LO_Color *pColorBackground; /* null in the default case */
char *pBackgroundImage; /* null in the default case */
XP_Bool bBackgroundNoSave;
char *pExtra;
};
typedef struct _EDT_TableData EDT_TableData;
/* iTableMode param for SetTableMode() */
#define ED_TABLE_PERCENT 0x0001 /* Convert table and all cells to use % of parent width */
#define ED_TABLE_PIXELS 0x0002 /* Convert table and all cells to use absolute pixels */
#define ED_TABLE_USE_CELL_WIDTH 0x0004 /* Set WIDTH param for all cells (facilitates table resizing) */
#define ED_TABLE_NO_CELL_WIDTH 0x0008 /* Remove WIDTH param for all cells */
#define ED_TABLE_USE_COLS 0x0010 /* Set COLS param for table (use only 1st row for column widths) */
#define ED_TABLE_NO_COLS 0x0020 /* Remove COLS param for table (all cell widths used) */
/*--------------------------- TableCaptionData --------------------------------*/
struct _EDT_TableCaptionData {
ED_Alignment align;
char *pExtra;
};
typedef struct _EDT_TableCaptionData EDT_TableCaptionData;
/*--------------------------- TableRowData --------------------------------*/
struct _EDT_TableRowData {
ED_Alignment align;
ED_Alignment valign;
LO_Color *pColorBackground; /* null in the default case */
char *pBackgroundImage; /* null in the default case */
XP_Bool bBackgroundNoSave;
char *pExtra;
};
typedef struct _EDT_TableRowData EDT_TableRowData;
/*--------------------------- TableCellData --------------------------------*/
struct _EDT_TableCellData {
ED_CellFormat mask; /* bits to tell us what we know for all cells */
ED_HitType iSelectionType; /* Either: ED_HIT_SEL_CELL, ED_HIT_SEL_COL, ED_HIT_SEL_ROW, or ED_HIT_NONE */
intn iSelectedCount; /* Number of cells selected. Usually >= 1 */
ED_Alignment align;
ED_Alignment valign;
int32 iColSpan;
int32 iRowSpan;
XP_Bool bHeader; /* TRUE == th, FALSE == td */
XP_Bool bNoWrap;
int32 X;
int32 Y;
intn iRow;
XP_Bool bWidthDefined;
XP_Bool bWidthPercent;
int32 iWidth;
int32 iWidthPixels;
XP_Bool bHeightDefined;
XP_Bool bHeightPercent;
int32 iHeight;
int32 iHeightPixels;
LO_Color *pColorBackground; /* null in the default case */
char *pBackgroundImage; /* null in the default case */
XP_Bool bBackgroundNoSave;
char *pExtra;
};
typedef struct _EDT_TableCellData EDT_TableCellData;
/*--------------------------- LayerData --------------------------------*/
struct _EDT_LayerData {
char *pExtra;
};
typedef struct _EDT_LayerData EDT_LayerData;
/*--------------------------- DivisionData --------------------------------*/
struct _EDT_DivisionData {
ED_Alignment align;
char *pExtra;
};
typedef struct _EDT_DivisionData EDT_DivisionData;
/*--------------------------- Page Properties --------------------------------*/
struct _EDT_MetaData {
XP_Bool bHttpEquiv; /* true, http-equiv="fdsfds", false name="fdsfds" */
char *pName; /* http-equiv's or name's value */
char *pContent;
};
typedef struct _EDT_MetaData EDT_MetaData;
struct _EDT_PageData {
LO_Color *pColorBackground; /* null in the default case */
LO_Color *pColorLink;
LO_Color *pColorText;
LO_Color *pColorFollowedLink;
LO_Color *pColorActiveLink;
char *pBackgroundImage;
XP_Bool bBackgroundNoSave;
char *pFontDefURL; /* For Web Fonts. */
XP_Bool bFontDefNoSave;
char *pTitle;
XP_Bool bKeepImagesWithDoc;
};
typedef struct _EDT_PageData EDT_PageData;
typedef enum {
ED_COLOR_BACKGROUND,
ED_COLOR_LINK,
ED_COLOR_TEXT,
ED_COLOR_FOLLOWED_LINK
} ED_EColor;
/*
* CLM: Java and PlugIn data structures
*/
struct _EDT_ParamData {
char *pName;
char *pValue;
};
typedef struct _EDT_ParamData EDT_ParamData;
typedef int32 EDT_ParamID;
struct _EDT_PlugInData {
EDT_ParamID ParamID; /* Identifies which Param list is associated */
char *pSrc;
XP_Bool bHidden;
ED_Alignment align;
int32 iWidth;
int32 iHeight;
XP_Bool bWidthPercent; /* Range: 1 - 100 if TRUE, else = pixels default) */
XP_Bool bHeightPercent;
XP_Bool bForegroundPalette; /* PC systems only. For controling 256-color palette wars */
int32 iHSpace;
int32 iVSpace;
int32 iBorder;
};
typedef struct _EDT_PlugInData EDT_PlugInData;
struct _EDT_JavaData {
EDT_ParamID ParamID;
char *pCode;
char *pCodebase;
char *pName;
ED_Alignment align;
char *pSrc;
int32 iWidth;
int32 iHeight;
XP_Bool bWidthPercent; /* Range: 1 - 100 if TRUE, else = pixels default) */
XP_Bool bHeightPercent;
int32 iHSpace;
int32 iVSpace;
int32 iBorder;
};
typedef struct _EDT_JavaData EDT_JavaData;
/* CLM: Error codes for file writing
* Return 0 if no error
*/
typedef enum {
ED_ERROR_NONE,
ED_ERROR_READ_ONLY, /* File is marked read-only */
ED_ERROR_BLOCKED, /* Can't write at this time, edit buffer blocked */
ED_ERROR_BAD_URL, /* URL was not a "file:" type or no string */
ED_ERROR_FILE_OPEN,
ED_ERROR_FILE_WRITE,
ED_ERROR_CREATE_BAKNAME,
ED_ERROR_DELETE_BAKFILE,
ED_ERROR_FILE_RENAME_TO_BAK,
ED_ERROR_CANCEL,
ED_ERROR_FILE_EXISTS, /* We really didn't save -- file existed and no overwrite */
ED_ERROR_SRC_NOT_FOUND,
ED_ERROR_FILE_READ,
/* The following are used internally by the editor and will not be passed to the front end. */
ED_ERROR_PUBLISHING, /* When netlib encounters an error http or ftp publishing. */
ED_ERROR_TAPEFS_COMPLETION /* The tape file system for saving encountered an error when
the Complete() method was called. E.g. an error sending a
mail message. */
} ED_FileError;
typedef enum {
ED_TAG_OK,
ED_TAG_UNOPENED,
ED_TAG_UNCLOSED,
ED_TAG_UNTERMINATED_STRING,
ED_TAG_PREMATURE_CLOSE,
ED_TAG_TAGNAME_EXPECTED
} ED_TagValidateResult;
typedef enum {
ED_LIST_TYPE_DEFAULT,
ED_LIST_TYPE_DIGIT,
ED_LIST_TYPE_BIG_ROMAN,
ED_LIST_TYPE_SMALL_ROMAN,
ED_LIST_TYPE_BIG_LETTERS,
ED_LIST_TYPE_SMALL_LETTERS,
ED_LIST_TYPE_CIRCLE,
ED_LIST_TYPE_SQUARE,
ED_LIST_TYPE_DISC,
ED_LIST_TYPE_CITE /* For Mail Quoting */
} ED_ListType;
struct _EDT_ListData {
/* This should be TagType, but there are problems with the include file dependencies. */
int8 iTagType; /* P_UNUM_LIST, P_NUM_LIST, P_BLOCKQUOTE, */
/* P_DIRECTOR, P_MENU, P_DESC_LIST */
XP_Bool bCompact;
ED_ListType eType;
int32 iStart; /* automatically maps, start is one */
char *pBaseURL; /* If an ED_LIST_TYPE_CITE, this is the URL from the enclosing <BASE> tag.
Don't expose this to users because not actually written out in the HTML. */
char *pExtra;
};
typedef struct _EDT_ListData EDT_ListData;
typedef enum {
ED_BREAK_NORMAL, /* just break the line, ignore images */
ED_BREAK_LEFT, /* break so it passes the image on the left */
ED_BREAK_RIGHT, /* break past the right image */
ED_BREAK_BOTH /* break past both images */
} ED_BreakType;
typedef enum {
ED_SAVE_OVERWRITE_THIS,
ED_SAVE_OVERWRITE_ALL,
ED_SAVE_DONT_OVERWRITE_THIS,
ED_SAVE_DONT_OVERWRITE_ALL,
ED_SAVE_CANCEL
} ED_SaveOption;
/* After saving, what to do with the editor buffer. */
typedef enum {
ED_FINISHED_GOTO_NEW, /* Point the editor to the location of the
newly saved document. */
ED_FINISHED_REVERT_BUFFER, /* Revert the buffer to the state before
the save operation began. */
ED_FINISHED_SAVE_DRAFT, /* Like ED_FINISHED_REVERT_BUFFER, except clears the dirty flag
on success. */
ED_FINISHED_MAIL_SEND /* If we succeed we're going to throw the buffer
away, so don't revert it. If failure, revert the buffer.
Used for mail compose, we don't
want the editor to start any operation that
causes problems when libmsg destroys the editor
context. */
} ED_SaveFinishedOption;
/* For FE_SaveDialogCreate */
typedef enum {
ED_SAVE_DLG_SAVE_LOCAL, /* "saving files to local disk" */
ED_SAVE_DLG_PUBLISH, /* "uploading files to remote server" */
ED_SAVE_DLG_PREPARE_PUBLISH /* "preparing files to publish" */
} ED_SaveDialogType;
typedef int32 EDT_ClipboardResult;
#define EDT_COP_OK 0
#define EDT_COP_DOCUMENT_BUSY 1
#define EDT_COP_SELECTION_EMPTY 2
#define EDT_COP_SELECTION_CROSSES_TABLE_DATA_CELL 3
/* For the result EDT_COP_CLIPBOARD_BAD the XP code has already
* given the user an error dialog. So FE code should not
* give an additional error dialog. (Only occurs on
* paste and paste-like operations.)
*/
#define EDT_COP_CLIPBOARD_BAD 4
#ifdef FIND_REPLACE
#define ED_FIND_FIND_ALL_WORDS 1 /* used to enumerate all words in a */
/* buffer */
#define ED_FIND_MATCH_CASE 2 /* default is to ignore case */
#define ED_FIND_REPLACE 4 /* call back the replace routine */
#define ED_FIND_WHOLE_BUFFER 8 /* start search from the top */
#define ED_FIND_REVERSE 0x10 /* reverse search from this point */
typedef intn ED_FindFlags;
typedef void (*EDT_PFReplaceFunc)( void *pMWContext,
char *pFoundWord,
char **pReplaceWord );
struct _EDT_FindAndReplaceData {
char* pSearchString;
ED_FindFlags fflags;
EDT_PFReplaceFunc pfReplace;
};
typedef struct _EDT_FindAndReplaceData EDT_FindAndReplaceData;
#endif /* FIND_REPLACE */
/* Callback function for image encoder */
typedef int32 EDT_ImageEncoderReference;
typedef unsigned char EDT_ImageEncoderStatus;
#define ED_IMAGE_ENCODER_OK 0
#define ED_IMAGE_ENCODER_USER_CANCELED 1
#define ED_IMAGE_ENCODER_EXCEPTION 2
typedef void (*EDT_ImageEncoderCallbackFn)(EDT_ImageEncoderStatus status, void* hook);
#endif

File diff suppressed because it is too large Load Diff

View File

@@ -1,133 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* Region-related definitions and prototypes */
#ifndef _FE_RGN_H_
#define _FE_RGN_H_
#ifdef LAYERS
#include "xp_core.h"
#include "xp_rect.h"
/******************Definitions and Types************/
/* For Windows only: Should we use the MFC CRgn class for region stuff? */
#ifdef XP_WIN
#undef FE_RGN_USE_MFC
#endif /* XP_WIN */
#ifdef XP_WIN
#ifdef FE_RGN_USE_MFC
#define FE_GetMDRegion(rgn) ((CRgn *)rgn)
#else
/*
* Note that the resultant CRgn * does not have to be
* explicitly deleted. It is considered a temporary object
* by the MFC and is deleted the next time we have idle
* time in the event loop.
*/
#define FE_GetMDRegion(rgn) ((HRGN)rgn)
#endif /* FE_RGN_USE_MFC */
#elif defined(XP_UNIX)
#define FE_GetMDRegion(rgn) ((Region)rgn)
#elif defined(XP_MAC)
#define FE_GetMDRegion(rgn) ((RgnHandle)rgn)
#else
#define FE_GetMDRegion(rgn) (rgn)
#endif /* XP_WIN */
#ifdef XP_WIN
#define FE_MAX_REGION_COORDINATE 0x7FFFFFFF
#else
#define FE_MAX_REGION_COORDINATE 0x7FFF
#endif
/* Setting the clip region to this effectively unsets the clip */
#define FE_NULL_REGION NULL
#define FE_CLEAR_REGION(region) \
do {FE_SubtractRegion((region), (region), (region)); } while (0)
/* Function called by FE_ForEachRectInRegion */
typedef void (*FE_RectInRegionFunc)(void *closure, XP_Rect *rect);
/*******************Prototypes**********************/
XP_BEGIN_PROTOS
extern FE_Region FE_CreateRegion(void);
/* Creates a region from a rectangle. Returns */
/* NULL if region can't be created. */
extern FE_Region FE_CreateRectRegion(XP_Rect *rect);
/* Destroys region. */
extern void FE_DestroyRegion(FE_Region region);
/* Makes a copy of a region. If dst is NULL, creates a new region */
extern FE_Region FE_CopyRegion(FE_Region src, FE_Region dst);
/* Set an existing region to a rectangle */
extern FE_Region FE_SetRectRegion(FE_Region region, XP_Rect *rect);
/* dst = src1 intersect sr2 */
/* dst can be one of src1 or src2 */
extern void FE_IntersectRegion(FE_Region src1, FE_Region src2, FE_Region dst);
/* dst = src1 union src2 */
/* dst can be one of src1 or src2 */
extern void FE_UnionRegion(FE_Region src1, FE_Region src2, FE_Region dst);
/* dst = src1 - src2 */
/* dst can be one of src1 or src2 */
extern void FE_SubtractRegion(FE_Region src1, FE_Region src2, FE_Region dst);
/* Returns TRUE if the region contains no pixels */
extern XP_Bool FE_IsEmptyRegion(FE_Region region);
/* Returns the bounding rectangle of the region */
extern void FE_GetRegionBoundingBox(FE_Region region, XP_Rect *bbox);
/* TRUE if rgn1 == rgn2 */
extern XP_Bool FE_IsEqualRegion(FE_Region rgn1, FE_Region rgn2);
/* Moves a region by the specified offsets */
extern void FE_OffsetRegion(FE_Region region, int32 xOffset, int32 yOffset);
/* Is any part of the rectangle in the specified region */
extern XP_Bool FE_RectInRegion(FE_Region region, XP_Rect *rect);
/* For each rectangle that makes up this region, call the func */
extern void FE_ForEachRectInRegion(FE_Region region,
FE_RectInRegionFunc func,
void * closure);
#ifdef DEBUG
extern void FE_HighlightRect(void *context, XP_Rect *rect, int how_much);
extern void FE_HighlightRegion(void *context, FE_Region region, int how_much);
#endif /* DEBUG */
XP_END_PROTOS
#endif /* LAYERS */
#endif /* _FE_RGN_H_ */

View File

@@ -1,222 +0,0 @@
/*--------------------------------------------------------------------
* fullsoft.h
*
* Created: 10/15/97
* Author: Matt Kendall
*
* Copyright (C) 1997-98, Full Circle Software, Inc., All Rights Reserved
*
* Full Circle "Spiral" Application API Definition
* - mkk 1/19/98 renamed from "spiral.h" to "fullsoft.h"
*
*--------------------------------------------------------------------*/
#if !defined(__FULLSOFT_H)
#define __FULLSOFT_H
/* define NO_FC_API to disable all calls to the Full Circle library */
/* define FC_TRACE to enable the Full Circle TRACE macro */
/* define FC_ASSERT to enable the Full Circle ASSERT macro */
/* define FC_TRACE_PARAM to enable the Full Circle TRACE_PARAM macro */
/* define FC_ASSERT_PARAM to enable the Full Circle TRACE_PARAM macro */
#if !defined(FAR)
#define FAR
#endif /* !FAR */
#if !defined(FCAPI)
#define FCAPI
#endif /* defined FCAPI */
typedef const char FAR * FC_KEY ;
typedef const char FAR * FC_TRIGGER ;
typedef unsigned long FC_DATE ;
typedef unsigned long FC_UINT32 ;
typedef void FAR * FC_PVOID ;
typedef const char FAR * FC_STRING ;
typedef void FAR * FC_CONTEXT ;
#define FC_CONTEXT_NONE ((FC_CONTEXT) -1)
typedef enum {
FC_DATA_TYPE_BINARY,
FC_DATA_TYPE_STRING,
FC_DATA_TYPE_INTEGER,
FC_DATA_TYPE_DATE,
FC_DATA_TYPE_COUNTER
} FC_DATA_TYPE ;
typedef enum {
FC_ERROR_OK = 0,
FC_ERROR_CANT_INITIALIZE,
FC_ERROR_NOT_INITIALIZED,
FC_ERROR_ALREADY_INITIALIZED,
FC_ERROR_FAILED,
FC_ERROR_OUT_OF_MEMORY,
FC_ERROR_INVALID_PARAMETER
} FC_ERROR ;
#if defined(__cplusplus)
extern "C" {
#endif /* __cplusplus */
/* define NO_FC_API to disable all calls to the Full Circle library */
#if !defined(NO_FC_API)
FC_ERROR FCAPI
FCInitialize( void ) ;
FC_ERROR FCAPI
FCCreateKey(
FC_KEY key,
FC_DATA_TYPE type,
FC_UINT32 first_count,
FC_UINT32 last_count,
FC_UINT32 max_element_size) ;
FC_ERROR FCAPI
FCCreatePersistentKey(
FC_KEY key,
FC_DATA_TYPE type,
FC_UINT32 first_count,
FC_UINT32 last_count,
FC_UINT32 max_element_size) ;
FC_ERROR FCAPI
FCAddDataToKey(
FC_KEY key,
FC_PVOID buffer,
FC_UINT32 data_length) ;
FC_ERROR FCAPI
FCAddIntToKey(
FC_KEY key,
FC_UINT32 data) ;
FC_ERROR FCAPI
FCAddStringToKey(
FC_KEY key,
FC_STRING string) ;
FC_ERROR FCAPI
FCAddDateToKey(
FC_KEY key,
FC_DATE date) ;
FC_ERROR FCAPI
FCSetCounter(
FC_KEY key,
FC_UINT32 value) ;
FC_ERROR FCAPI
FCIncrementCounter(
FC_KEY key,
FC_UINT32 value) ;
FC_ERROR FCAPI
FCRegisterMemory(
FC_KEY key,
FC_DATA_TYPE type,
FC_PVOID buffer,
FC_UINT32 length,
FC_UINT32 dereference_count,
FC_CONTEXT context) ;
FC_ERROR FCAPI
FCUnregisterMemory( FC_CONTEXT context ) ;
FC_ERROR FCAPI
FCTrigger( FC_TRIGGER trigger ) ;
void FCAPI
FCTrace(FC_STRING fmt, ... ) ;
void FCAPI
FCAssert() ;
void FCAPI
FCTraceParam(
FC_UINT32 track,
FC_UINT32 level,
FC_STRING fmt,
... ) ;
void FCAPI
FCAssertParam(
FC_UINT32 track,
FC_UINT32 level ) ;
#if defined(FC_ASSERT)
#if defined(ASSERT)
#undef ASSERT
#endif /* defined ASSERT */
#define ASSERT(a) { if( !(a) ) FCAssert() ; }
#endif /* FC_ASSERT */
#if defined(FC_TRACE)
#if defined(TRACE)
#undef TRACE
#endif /* defined TRACE */
#define TRACE FCTrace
#endif /* FC_TRACE */
#if defined(FC_ASSERT_PARAM)
#if defined(ASSERT_PARAM)
#undef ASSERT_PARAM
#endif /* defined ASSERT_PARAM */
#define ASSERT_PARAM(a,b,c) { if ( !(c) ) FCAssertParam(a,b) ; }
#endif /* FC_ASSERT_PARAM */
#if defined(FC_TRACE_PARAM)
#if defined(TRACE_PARAM)
#undef TRACE_PARAM
#endif /* defined TRACE_PARAM */
#define TRACE_PARAM FCTraceParam
#endif /* FC_TRACE_PARAM */
#else /* NO_FC_API */
#define FCInitialize() FC_ERROR_OK
#define FCCreateKey(a,b,c,d,e) FC_ERROR_OK
#define FCCreatePersistentKey(a,b,c,d,e) FC_ERROR_OK
#define FCAddDataToKey(a,b,c) FC_ERROR_OK
#define FCAddIntToKey(a,b) FC_ERROR_OK
#define FCAddStringToKey(a,b) FC_ERROR_OK
#define FCAddDateToKey(a,b) FC_ERROR_OK
#define FCRegisterMemory(a,b,c,d,e,f) FC_ERROR_OK
#define FCUnregisterMemory(a) FC_ERROR_OK
#define FCTrigger(a) FC_ERROR_OK
#define FCSetCounter(a,b) FC_ERROR_OK
#define FCIncrementCounter(a,b) FC_ERROR_OK
#if defined(FC_ASSERT)
#define ASSERT(f) ((void)0)
#endif /* FC_ASSERT */
#if defined(FC_TRACE)
void FCAPI FCTrace(FC_STRING fmt,...) ;
#define TRACE 1 ? (void)0 : FCTrace
#endif /* FC_TRACE */
#if defined(FC_ASSERT_PARAM)
#define ASSERT_PARAM(a,b,c) ((void)0)
#endif /* FC_ASSERT_PARAM */
#if defined(FC_TRACE_PARAM)
void FCAPI FCTraceParam(
FC_UINT32 track,
FC_UINT32 level,
FC_STRING fmt,
... ) ;
#define TRACE_PARAM 1 ? (void) 0 : FCTraceParam
#endif /* FC_TRACE_PARAM */
#endif /* NO_FC_API */
#if defined(__cplusplus)
}
#endif /* __cplusplus */
#endif /* __FULLSOFT_H */

View File

@@ -1,231 +0,0 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
//
// Warning: This is a C++ file.
//
//
// This implements cross platform Growable arrays of Pointers.
//
#ifndef _GARRAY_H_
#define _GARRAY_H_
//
// On Unix (well at least Solaris) we are having troubles with
// templates, so hey, we won't use them...djw.
//
// On Mac we are having troubles as well, so add me to the list.
// Now, why even have templates?...jar
//
#if ! ( defined(XP_WIN16) || defined(XP_UNIX) || defined(XP_MAC) )
#define TEMPLATE_SUPPORT 1
#endif
class CXP_GrowableArray {
protected:
void **m_pData;
int m_iSize;
int m_iAllocSize;
int NewSize( int iMinSize){
int iNewSize = MAX( m_iAllocSize,16) ;
while( iNewSize < iMinSize ){
iNewSize = iNewSize+iNewSize;
}
return iNewSize;
}
//
// this is the routine that does the actual work. Should be in
// its own file.
//
void GuaranteeSize(int iSize){
if(m_iAllocSize <= iSize){
int iNewSize = NewSize( iSize );
if( m_iAllocSize ){
void ** pNewData = new void*[iNewSize];
XP_BCOPY( m_pData, pNewData, m_iAllocSize * sizeof(void*) );
delete [] m_pData;
m_pData = pNewData;
}
else{
m_pData = new void*[iNewSize];
}
m_iAllocSize = iNewSize;
}
}
public:
CXP_GrowableArray(int iStartSize=0): m_pData(0),m_iSize(0),m_iAllocSize(0){
if( iStartSize ){
GuaranteeSize( iStartSize );
}
};
~CXP_GrowableArray(){ delete [] m_pData; }
int Size(){ return m_iSize; }
void SetSize( int iSize ){
GuaranteeSize( iSize );
m_iSize = iSize;
}
void* operator[](int nIndex) const { return m_pData[nIndex]; }
void*& operator[](int nIndex){ return m_pData[nIndex]; }
int Add(void* newElement){
GuaranteeSize(m_iSize+1);
m_pData[m_iSize] = newElement;
/* Return index to last item in list */
return m_iSize++;
}
int Delete( int nIndex ){
if( nIndex < m_iSize )
{
for( int i = nIndex; i < m_iSize-1; i++ )
{
/* Suffle remaining pointers down */
m_pData[nIndex] = m_pData[nIndex+1];
}
m_iSize--;
}
/* Return index to last item in list */
return (m_iSize-1);
}
int Delete( void* element ){
for( int i = 0; i < m_iSize; i++ )
{
if( m_pData[i] == element )
{
return Delete(i);
}
}
return (m_iSize-1);
}
int Find( void* element ){
for( int i = 0; i < m_iSize; i++ )
{
if( m_pData[i] == element )
{
return i;
}
}
return -1;
}
void Empty(){
m_iSize = 0;
}
};
class CXP_PtrStack : public CXP_GrowableArray{
public:
int m_iTop;
CXP_PtrStack(): m_iTop(-1){}
Bool IsEmpty(){ return m_iTop == -1; }
void Push( void* t ){
if( ++m_iTop >= Size() ) {
Add( t );
}
else {
(*this)[m_iTop] = t;
}
}
void* Top(){ return (*this)[m_iTop]; }
void* Pop(){ return (*this)[m_iTop--];}
void Reset(){ m_iTop = -1; }
int StackSize() { return m_iTop + 1; }
};
#ifdef TEMPLATE_SUPPORT
template<class PTRTYPE>
class TXP_GrowableArray: public CXP_GrowableArray {
public:
PTRTYPE operator[](int nIndex) const { return (PTRTYPE)(int32)m_pData[nIndex]; }
PTRTYPE& operator[](int nIndex){ return *(PTRTYPE*)&m_pData[nIndex]; }
int Add(PTRTYPE newElement){ return CXP_GrowableArray::Add( (void*) newElement ); }
};
#define Declare_GrowableArray(NAME,PTRTYPE) \
typedef TXP_GrowableArray<PTRTYPE> TXP_GrowableArray_##NAME;
#else
#define Declare_GrowableArray(NAME,PTRTYPE) \
class TXP_GrowableArray_##NAME: public CXP_GrowableArray { \
public: \
PTRTYPE operator[](int nIndex) const { return (PTRTYPE)(int32)m_pData[nIndex]; }\
PTRTYPE& operator[](int nIndex){ return *(PTRTYPE*)&m_pData[nIndex]; } \
int Add(PTRTYPE newElement){ return CXP_GrowableArray::Add( (void*) newElement ); } \
}; \
#endif
//
// PtrStack Imlementation
//
#ifdef TEMPLATE_SUPPORT
template<class PTRTYPE>
class TXP_PtrStack : public TXP_GrowableArray<PTRTYPE> {
public:
int m_iTop;
TXP_PtrStack(): m_iTop(-1){}
Bool IsEmpty(){ return m_iTop == -1; }
void Push( PTRTYPE t ){
if( ++m_iTop >= Size() ) {
Add( t );
}
else {
(*this)[m_iTop] = t;
}
}
PTRTYPE Top(){ return (*this)[m_iTop]; }
PTRTYPE Pop(){ return (*this)[m_iTop--];}
void Reset(){ m_iTop = -1; }
int StackSize(){ return m_iTop + 1; }
};
#define Declare_PtrStack(NAME,PTRTYPE) \
typedef TXP_PtrStack<PTRTYPE> TXP_PtrStack_##NAME;
#else // No template support
#define Declare_PtrStack(NAME, PTRTYPE) \
class TXP_PtrStack_##NAME : public CXP_PtrStack { \
public: \
void Push( PTRTYPE t ){ CXP_PtrStack::Push((void*)(int32)t); } \
PTRTYPE Top(){ return (PTRTYPE)(int32)CXP_PtrStack::Top(); } \
PTRTYPE Pop(){ return (PTRTYPE)(int32)CXP_PtrStack::Pop(); } \
PTRTYPE operator[](int nIndex) const { return (PTRTYPE)(int32)m_pData[nIndex]; }\
PTRTYPE& operator[](int nIndex){ return *(PTRTYPE*)&m_pData[nIndex]; } \
int Add(PTRTYPE newElement){ return CXP_GrowableArray::Add( (void*)(int32)newElement ); } \
}; \
#endif
#endif

View File

@@ -1,188 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef GLHIST_H
#define GLHIST_H
#include "ntypes.h"
typedef enum gh_SortColumn
{
eGH_NoSort = -1,
eGH_NameSort,
eGH_LocationSort,
eGH_FirstDateSort,
eGH_LastDateSort,
eGH_VisitCountSort
}gh_SortColumn;
typedef struct _gh_HistEntry
{
char * address;
time_t last_accessed;
time_t first_accessed;
int32 iCount;
int32 iFlags;
char * pszName;
}gh_HistEntry;
typedef struct _gh_HistEntryData
{
time_t last_accessed;
time_t first_accessed;
int32 iCount;
int32 iFlags;
char * pszName;
}gh_HistEntryData;
typedef enum gh_FilterOp
{
eGH_FOEquals,
eGH_FOEqualsNot,
eGH_FOGreater,
eGH_FOGreaterEqual,
eGH_FOLess,
eGH_FOLessEqual,
eGH_FOHas,
eGH_FOHasNot
}gh_FilterOp;
typedef enum gh_FilterLogOp
{
eGH_FLOAnd,
eGH_FLOOr
}gh_FilterLogOp;
typedef struct _gh_FilterCondition
{
enum gh_SortColumn enCol;
enum gh_FilterOp enOp;
union
{
char * pszTest;
int32 iTest;
} tests;
}gh_FilterCondition;
typedef struct _gh_Filter
{
int32 iNumConditions;
gh_FilterCondition * pConditions;
gh_FilterLogOp * enOps;
}gh_Filter;
typedef struct _gh_NotifyMsg
{
int32 iNotifyMsg;
char * pszKey;
void * pUserData;
} gh_NotifyMsg;
typedef void * GHHANDLE;
typedef void * GHURHANDLE;
#define GH_NOTIFY_UPDATE 1
#define GH_NOTIFY_DELETE 2
#ifdef XP_WIN
typedef int (__cdecl *GHISTORY_NOTIFYPROC)( gh_NotifyMsg *pMsg );
#else
typedef int (*GHISTORY_NOTIFYPROC)( gh_NotifyMsg *pMsg );
#endif
XP_BEGIN_PROTOS
/* if the url was found in the global history then the then number of seconds since
* the last access is returned. if the url is not found -1 is returned
*/
extern int GH_CheckGlobalHistory(char * url);
/* add or update the url in the global history
*/
extern void GH_UpdateGlobalHistory(URL_Struct * URL_s);
/* save the global history to a file and remove the list from memory
*/
/*extern void GH_CleanupGlobalHistory(void);*/
/* save the global history to a file and remove the list from memory
*/
extern void GH_SaveGlobalHistory(void);
/* free the global history list
*/
extern void GH_FreeGlobalHistory(void);
/* clear the entire global history list
*/
extern void GH_ClearGlobalHistory(void);
#if defined(XP_MAC) || defined(XP_UNIX)
/* set the maximum time for an object in the Global history in
* number of seconds
*/
extern void GH_SetGlobalHistoryTimeout(int32 timeout_interval);
#endif
/* start global history tracking
*/
extern void GH_InitGlobalHistory(void);
/* create an HTML stream and push a bunch of HTML about
* the global history
*
* returns -1
*/
extern int NET_DisplayGlobalHistoryInfoAsHTML( MWContext *context, URL_Struct *URL_s, int format_out );
/*
// Context/Handle based functions to retrieve a pseudo cursor on the
// Global History list (using a specified sort/index).
*/
extern GHHANDLE GH_GetContext( enum gh_SortColumn enGHSort,
gh_Filter * pFilter,
GHISTORY_NOTIFYPROC pfNotifyProc,
GHURHANDLE hUR,
void * pUserData );
extern void GH_ReleaseContext( GHHANDLE pContext, Bool bReleaseUR );
extern gh_HistEntry * GH_GetRecord( GHHANDLE pContext, uint32 uRow );
extern void GH_DeleteRecord( GHHANDLE pContext, uint32 uRow, Bool bGroup );
extern uint32 GH_GetNumRecords( GHHANDLE pContext );
extern gh_SortColumn GH_GetSortField( GHHANDLE pContext );
extern int GH_UpdateURLTitle( URL_Struct *pUrl, char *pszTitle, Bool bFrameCell );
extern int32 GH_GetRecordNum( GHHANDLE pContext, char *pszLocation );
extern int GH_GetMRUPage( char *pszURL, int iMaxLen );
extern void GH_FileSaveAsHTML( GHHANDLE pContext, MWContext *pMWContext );
extern GHURHANDLE GH_GetURContext( GHHANDLE pContext );
extern void GH_SupportUndoRedo( GHHANDLE pContext );
extern void GH_Undo( GHHANDLE pContext );
extern void GH_Redo( GHHANDLE pContext );
extern Bool GH_CanUndo( GHHANDLE pContext );
extern Bool GH_CanRedo( GHHANDLE pContext );
/* AutoComplete stuff */
enum autoCompStatus {foundDone, notFoundDone, stillSearching, dontCallOnIdle};
extern enum autoCompStatus urlMatch(const char *criteria, char **result, Bool freshStart, Bool scroll);
extern void NET_RegisterEnableUrlMatchCallback(void);
XP_END_PROTOS
#endif /* GLHIST_H */

View File

@@ -1,64 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _GUI_H_
#define _GUI_H_
/* These are defined in libnet/mkhttp.c.
XP_AppName The name of the client program - usually "Netscape", but
possibly something else for bundled versions, like the
MCI client.
XP_AppCodeName The name sent at the HTTP vendor ID string; regardless of
the value of XP_AppName, this must be "Mozilla" or
everything will break.
XP_AppVersion The version number of the client as a string. This is the
string sent along with the vendor ID string, so it should be
of the form "1.1N (Windows)" or "1.1N (X11; SunOS 4.1.3)".
XP_AppLanguage The language of the navigator client. Usually a two-letter
code (EN, FR) but could be a 5-letter code for translations
where a sub-language designation is appropriate (FR_CA)
XP_AppPlatform The compiled flavor of the navigator (as opposed to what
it may actually be running on).
*/
XP_BEGIN_PROTOS
#if defined(XP_WIN) || defined(XP_OS2)
extern char *XP_AppName, *XP_AppCodeName, *XP_AppVersion;
extern char *XP_AppLanguage, *XP_AppPlatform;
#else
extern const char *XP_AppName, *XP_AppCodeName, *XP_AppVersion;
extern const char *XP_AppLanguage, *XP_AppPlatform;
#endif
XP_END_PROTOS
/* this define is needed for error message efficiency
*
* please don't comment it out for UNIX - LJM
*/
/* this is constant across languages - do NOT localize it */
#define XP_CANONICAL_CLIENT_NAME "Netscape"
/* name of the program */
/* XP_LOCAL_CLIENT_NAME was never used consistently: use XP_AppName instead. */
#endif /* _GUI_H_ */

View File

@@ -1,250 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef HOTLIST_H
#define HOTLIST_H
#include "xp_mcom.h"
#include "ntypes.h"
XP_BEGIN_PROTOS
typedef enum HOT_Type {
HOT_URLType, HOT_HeaderType, HOT_SeparatorType } HOT_Type;
typedef struct HotlistStruct_ {
HOT_Type type;
Bool is_folded; /* if it's a header is it folded? */
XP_List *children; /* a list of children, only headers have these */
char *name; /* a title */
char *address; /* the URL address */
char *description; /* random text */
time_t last_visit;
time_t addition_date;
char *content_type;
struct HotlistStruct_ *parent; /* My hotlist parent */
XP_List *lParent; /* The XP_List object that points to my parent or NULL */
} HotlistStruct;
/* tell the hotlist code that the hotlist has been modified
* so that it gets saved the next time SaveHotlist is called
*/
extern void HOT_SetModified(void);
/* changes a entry to a header type from a non header type
* and vice versa. If the object was a header and
* has children, the children will be blown away. (very bad)
*/
extern void HOT_ChangeEntryType(HotlistStruct * entry, HOT_Type new_type);
/* Fold or unfold a hotlist header
*
* set the Boolean to True to fold the list and
* False to unfold
*/
extern void HOT_FoldHeader(HotlistStruct * item, Bool fold);
/* checks the hotlist for a url and updates the last accessed
* time
*/
extern void HOT_UpdateHotlistTime(URL_Struct *URL_s, time_t cur_time);
/* Performs regular expression match on hotlist name and address
* fields. Returns the found object, or NULL if not
* found.
*
* start_obj specifies the object to start searching
* on. The start_num object WILL NOT be searched but all those
* after it will be.
* To search the whole list give NULL as start_obj.
*
* If headers became unfolded because of the search then redisplay_all
* will be set to TRUE
*/
extern HotlistStruct * HOT_SearchHotlist(char * search_string,
HotlistStruct * start_obj,
Bool * redisplay_all);
/* returns TRUE if the second argument is a direct
* descendent of the first argument.
*
* returns FALSE otherwise
*/
extern Bool HOT_IsDescendent(HotlistStruct *parent, HotlistStruct *possible_child);
/* Reads the hostlist from disk, what else?
*
* pass in the hotlist filename and a relative URL which represents
* the original location of the html file. If you are reading the
* default hotlist you should pass in a file URL of the form
* file://localhost/PATH
*
*/
extern void HOT_ReadHotlistFromDisk (char * filename, char * relative_url);
/* returns an integer index of the item in the list
*/
extern int HOT_GetIndex(HotlistStruct * item);
/* returns an integer index of the item in the list
* and does not pay attention to the is_folded value
*/
extern int HOT_GetUnfoldedIndex(HotlistStruct * item);
/* returns the object associated with the index returned by
* HOT_GetIndex()
*/
extern HotlistStruct * HOT_IndexOf(int index);
/* returns the object associated with the index returned by
* HOT_GetUnfoldedIndex()
*/
extern HotlistStruct * HOT_UnfoldedIndexOf(int index);
/* returns an integer depth of the item in the list starting at zero
*/
extern int HOT_GetDepth(HotlistStruct * item);
/* return a pointer to the main hotlist list
*
* returns NULL if nothing has ever been
* added to the hotlist
*/
extern XP_List * HOT_GetHotlistList(void);
/* saves the hotlist to a configuration file
*/
extern int HOT_SaveHotlist (char * filename);
/* Free's the entire hotlist
*/
extern void HOT_FreeHotlist (void);
/* create a hotlist entry struct and fill it in with
* the passed in data
*
* returns NULL on out of memory error.
*/
extern HotlistStruct *
HOT_CreateEntry(HOT_Type type,
const char *name,
const char *address,
const char *content_type,
time_t last_visit);
/* free's a hotlist entry
*/
extern void HOT_FreeEntry(HotlistStruct * entry);
/* create a completely new copy of the entry passed in
*/
extern HotlistStruct * HOT_CopyEntry(HotlistStruct * entry);
/* insert an item before another item in the hotlist
*
* if the insert_before item is NULL or not found the item
* will be inserted at the begining of the list
*/
extern void HOT_InsertItemBefore(HotlistStruct * insert_before, HotlistStruct * insertee);
/* insert an item after another item in the hotlist
*
* if the insert_after item is NULL or not found the item
* will be inserted at the end of the list
*/
extern void HOT_InsertItemAfter(HotlistStruct * insert_after, HotlistStruct * insertee);
/* insert an item in a header if "insert_after" is a
* Header type, or after the item if "insert after" is
* not a header type.
*
* if the insert_after item is NULL or not found the item
* will be inserted at the end of the hotlist
*/
extern void
HOT_InsertItemInHeaderOrAfterItem(HotlistStruct * insert_after,
HotlistStruct * insertee);
/* remove an item from the hotlist and free's it
*
* returns TRUE on success, FALSE if not found
*/
extern Bool HOT_RemoveItem(HotlistStruct * old_item);
/* remove an item from the hotlist and doesn't free it
*
* returns TRUE on success, FALSE if not found
*/
extern Bool HOT_RemoveItemFromList(HotlistStruct * old_item);
/* move an item up in the list
*/
extern void HOT_MoveObjectUp(HotlistStruct * item);
/* move an item down in the list
*/
extern void HOT_MoveObjectDown(HotlistStruct * item);
/* returns True if the object can be moved Up
* False if the object cannot be moved Up or if
* it cannot be found in the list
*/
extern Bool HOT_ObjectCanGoUp(HotlistStruct * item);
/* returns True if the object can be moved down
* False if the object cannot be moved down or if
* it cannot be found in the list
*/
extern Bool HOT_ObjectCanGoDown(HotlistStruct * item);
/* Whether the file will be written when Save is called. */
extern Bool HOT_Modified(void);
/*
* Gets the top node of the hotlist
*/
extern HotlistStruct*
HOT_GetHotlist (void);
/*
* Convert a number of selections in a hotlist list into a block of
* memory that the user can use for cut and paste operations
*/
extern char *
HOT_ConvertSelectionsToBlock(HotlistStruct ** list,
int iCount,
int bLongFormat,
int32 * lTotalLen);
/*
* Take a block of memory and insert the hotlist items it represents into
* the current hotlist
*/
extern void
HOT_InsertBlockAt(char * pOriginalBlock,
HotlistStruct * item,
int bLongFormat,
int32 lTotalLen);
XP_END_PROTOS
#endif /* HOTLIST_H */

View File

@@ -1,480 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef __imap__
#define __imap__
#include "structs.h"
#include "msgcom.h"
/* used for communication between libmsg and libnet */
#define kNoFlags 0x00 /* RFC flags */
#define kMarked 0x01
#define kUnmarked 0x02
#define kNoinferiors 0x04
#define kNoselect 0x08
#define kImapTrash 0x10 /* Navigator flag */
#define kJustExpunged 0x20 /* This update is a post expunge url update. */
#define kPersonalMailbox 0x40 /* this mailbox is in the personal namespace */
#define kPublicMailbox 0x80 /* this mailbox is in the public namespace */
#define kOtherUsersMailbox 0x100 /* this mailbox is in the other users' namespace */
/* flags for individual messages */
/* currently the ui only offers \Seen and \Flagged */
#define kNoImapMsgFlag 0x0000
#define kImapMsgSeenFlag 0x0001
#define kImapMsgAnsweredFlag 0x0002
#define kImapMsgFlaggedFlag 0x0004
#define kImapMsgDeletedFlag 0x0008
#define kImapMsgDraftFlag 0x0010
#define kImapMsgRecentFlag 0x0020
#define kImapMsgForwardedFlag 0x0040 /* Not always supported, check mailbox folder */
#define kImapMsgMDNSentFlag 0x0080 /* Not always supported. check mailbox folder */
#define kImapMsgSupportUserFlag 0x8000 /* This seems to be the most cost effective way of
* piggying back the server support user flag
* info.
*/
typedef enum {
kPersonalNamespace = 0,
kOtherUsersNamespace,
kPublicNamespace,
kDefaultNamespace,
kUnknownNamespace
} EIMAPNamespaceType;
typedef int32 imap_uid;
#ifdef XP_CPLUSPLUS
class TImapFlagAndUidState;
#else
typedef struct TImapFlagAndUidState TImapFlagAndUidState;
#endif
/* forward declaration */
typedef void ImapActiveEntry;
/* url used to signify that filtering is complete so
we can tell the fe that the inbox thread pane is
loaded */
#define kImapFilteringCompleteURL "Mailbox://?filteringcomplete"
/* url used to signify that online/offline synch is complete */
#define kImapOnOffSynchCompleteURL "Mailbox://?onoffsynchcomplete"
/* if a url creator does not know the hierarchySeparator, use this */
#define kOnlineHierarchySeparatorUnknown ' '
struct mailbox_spec {
int32 folder_UIDVALIDITY;
int32 number_of_messages;
int32 number_of_unseen_messages;
int32 number_of_recent_messages;
uint32 box_flags;
char *allocatedPathName;
char hierarchySeparator;
const char *hostName;
TNavigatorImapConnection *connection;
TImapFlagAndUidState *flagState;
XP_Bool folderSelected;
XP_Bool discoveredFromLsub;
const char *smtpPostAddress;
};
typedef struct mailbox_spec mailbox_spec;
enum EIMAPSubscriptionUpgradeState {
kEverythingDone,
kBringUpSubscribeUI
};
enum ImapOnlineCopyState {
kInProgress,
kSuccessfulCopy,
kFailedCopy,
kSuccessfulDelete,
kFailedDelete,
kReadyForAppendData,
kFailedAppend
};
struct folder_rename_struct {
char *fOldName;
char *fNewName;
};
typedef struct folder_rename_struct folder_rename_struct;
/* this file defines the syntax of the imap4 url's and offers functions
that create url strings. If the functions do not offer enough
functionality then let kevin know before you starting creating strings
from scratch. */
#include "xp_mcom.h"
XP_BEGIN_PROTOS
/* need mailbox status urls to get the number of message and the
number of unread messages */
/* Selecting a mailbox */
/* imap4://HOST?select?MAILBOXPATH */
char *CreateImapMailboxSelectUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator,
const char *undoDeleteIdentifierList);
/* lite select, used to verify UIDVALIDITY while going on/offline */
char *CreateImapMailboxLITESelectUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator);
/* expunge, used in traditional imap delete model */
char *CreateImapMailboxExpungeUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator);
/* Creating a mailbox */
/* imap4://HOST?create?MAILBOXPATH */
char *CreateImapMailboxCreateUrl(const char *imapHost, const char *mailbox, char hierarchySeparator);
/* discover the children of this mailbox */
char *CreateImapChildDiscoveryUrl(const char *imapHost, const char *mailbox, char hierarchySeparator);
/* discover the n-th level children of this mailbox */
char *CreateImapLevelChildDiscoveryUrl(const char *imapHost, const char *mailbox, char hierarchySeparator, int n);
/* discover the mailboxes of this account */
char *CreateImapAllMailboxDiscoveryUrl(const char *imapHost);
/* discover the mailboxes of this account, and the subscribed mailboxes */
char *CreateImapAllAndSubscribedMailboxDiscoveryUrl(const char *imapHost);
/* deleting a mailbox */
/* imap4://HOST?delete?MAILBOXPATH */
char *CreateImapMailboxDeleteUrl(const char *imapHost, const char *mailbox, char hierarchySeparator);
/* renaming a mailbox */
/* imap4://HOST?rename?OLDNAME?NEWNAME */
char *CreateImapMailboxRenameLeafUrl(const char *imapHost,
const char *oldBoxPathName,
char hierarchySeparator,
const char *newBoxLeafName);
/* renaming a mailbox, moving hierarchy */
/* imap4://HOST?movefolderhierarchy?OLDNAME?NEWNAME */
/* oldBoxPathName is the old name of the child folder */
/* destinationBoxPathName is the name of the new parent */
char *CreateImapMailboxMoveFolderHierarchyUrl(const char *imapHost,
const char *oldBoxPathName,
char oldHierarchySeparator,
const char *destinationBoxPathName,
char newHierarchySeparator);
/* listing available mailboxes */
/* imap4://HOST?list */
char *CreateImapListUrl(const char *imapHost,
const char *mailbox,
const char hierarchySeparator);
/* biff */
char *CreateImapBiffUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator,
uint32 uidHighWater);
/* fetching RFC822 messages */
/* imap4://HOST?fetch?<UID/SEQUENCE>?MAILBOXPATH?x */
/* 'x' is the message UID or sequence number list */
/* will set the 'SEEN' flag */
char *CreateImapMessageFetchUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator,
const char *messageIdentifierList,
XP_Bool messageIdsAreUID);
/* fetching the headers of RFC822 messages */
/* imap4://HOST?header?<UID/SEQUENCE>?MAILBOXPATH?x */
/* 'x' is the message UID or sequence number list */
/* will not affect the 'SEEN' flag */
char *CreateImapMessageHeaderUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator,
const char *messageIdentifierList,
XP_Bool messageIdsAreUID);
/* search an online mailbox */
/* imap4://HOST?search?<UID/SEQUENCE>?MAILBOXPATH?SEARCHSTRING */
char *CreateImapSearchUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator,
const char *searchString,
XP_Bool messageIdsAreUID);
/* delete messages */
/* imap4://HOST?deletemsg?<UID/SEQUENCE>?MAILBOXPATH?x */
/* 'x' is the message UID or sequence number list */
char *CreateImapDeleteMessageUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator,
const char *messageIds,
XP_Bool idsAreUids);
/* delete all messages */
/* imap4://HOST?deleteallmsgs?MAILBOXPATH */
char *CreateImapDeleteAllMessagesUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator);
/* store +flags url */
/* imap4://HOST?store+flags?<UID/SEQUENCE>?MAILBOXPATH?x?f */
/* 'x' is the message UID or sequence number list */
/* 'f' is the byte of flags */
char *CreateImapAddMessageFlagsUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator,
const char *messageIds,
imapMessageFlagsType flags,
XP_Bool idsAreUids);
/* store -flags url */
/* imap4://HOST?store-flags?<UID/SEQUENCE>?MAILBOXPATH?x?f */
/* 'x' is the message UID or sequence number list */
/* 'f' is the byte of flags */
char *CreateImapSubtractMessageFlagsUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator,
const char *messageIds,
imapMessageFlagsType flags,
XP_Bool idsAreUids);
/* set flags url, make the flags match */
char *CreateImapSetMessageFlagsUrl(const char *imapHost,
const char *mailbox,
char hierarchySeparator,
const char *messageIds,
imapMessageFlagsType flags,
XP_Bool idsAreUids);
/* copy messages from one online box to another */
/* imap4://HOST?onlineCopy?<UID/SEQUENCE>?
SOURCEMAILBOXPATH?x?DESTINATIONMAILBOXPATH */
/* 'x' is the message UID or sequence number list */
char *CreateImapOnlineCopyUrl(const char *imapHost,
const char *sourceMailbox,
char sourceHierarchySeparator,
const char *messageIds,
const char *destinationMailbox,
char destinationHierarchySeparator,
XP_Bool idsAreUids,
XP_Bool isMove); /* cause delete after copy */
/* copy a message from an online box to an offline box */
/* imap4://HOST?ontooffCopy?SOURCEMAILBOXPATH?number=x?
DESTINATIONMAILBOXPATH */
/* 'x' is the message sequence number */
char *CreateImapOnToOfflineCopyUrl( const char *imapHost,
const char *sourceMailbox,
char sourceHierarchySeparator,
const char *messageIds,
const char *destinationMailbox,
XP_Bool idsAreUids,
XP_Bool isMove); /* cause delete after copy */
/* copy messages from an offline box to an online box */
/* imap4://HOST?offtoonCopy?DESTINATIONMAILBOXPATH */
/* the number of messages and their sizes are negotiated later */
char *CreateImapOffToOnlineCopyUrl(const char *imapHost,
const char *destinationMailbox,
char destinationHierarchySeparator);
/* Subscribe to a mailbox on the given IMAP host */
char *CreateIMAPSubscribeMailboxURL(const char *imapHost, const char *mailboxName);
/* Unsubscribe from a mailbox on the given IMAP host */
char *CreateIMAPUnsubscribeMailboxURL(const char *imapHost, const char *mailboxName);
/* get mail account rul */
/* imap4://HOST?NETSCAPE */
char *CreateImapManageMailAccountUrl(const char *imapHost);
/* append message from file */
/* imap4://HOST?appendmsgfromfile?MSGFILEPATH?DESTINATIONMAILBOXPATH */
char *CreateImapAppendMessageFromFileUrl(const char *imapHost,
const char *destinationMailboxPath,
const char hierarchySeparator,
XP_Bool isDraft);
/* refresh the ACL for a folder */
char *CreateIMAPRefreshACLForFolderURL(const char *imapHost, const char *mailbox);
/* refresh the ACL for all folders on given host*/
char *CreateIMAPRefreshACLForAllFoldersURL(const char *imapHost);
/* Run the auto-upgrade to IMAP Subscription */
char *CreateIMAPUpgradeToSubscriptionURL(const char *imapHost, XP_Bool subscribeToAll);
NET_StreamClass *CreateIMAPDownloadMessageStream(ImapActiveEntry *ce, uint32 msgSize);
void UpdateIMAPMailboxInfo(mailbox_spec *adoptedBoxSpec, MWContext *currentContext);
#define kUidUnknown -1
int32 GetUIDValidityForSpecifiedImapFolder(const char *hostName, const char *canonicalimapName, MWContext *currentContext);
enum EMailboxDiscoverStatus {
eContinue,
eContinueNew,
eListMyChildren,
eNewServerDirectory,
eCancelled };
enum EMailboxDiscoverStatus DiscoverIMAPMailbox(mailbox_spec *adoptedBoxSpec, MSG_Master *master, MWContext *currentContext);
void ReportSuccessOfOnlineCopy(MWContext *currentContext, enum ImapOnlineCopyState copyState);
void ReportSuccessOfOnlineDelete(MWContext *currentContext, const char *mailboxName);
void ReportFailureOfOnlineCreate(MWContext *currentContext, const char *mailboxName);
void ReportSuccessOfOnlineRename(MWContext *currentContext, folder_rename_struct *names);
void ReportMailboxDiscoveryDone(MWContext *currentContext, URL_Struct *URL_s);
void ReportSuccessOfChildMailboxDiscovery(MWContext *currentContext);
void NotifyHeaderFetchCompleted(MWContext *currentContext, TNavigatorImapConnection *imapConnection);
void ReportLiteSelectUIDVALIDITY(MSG_Pane *receivingPane, uint32 UIDVALIDITY);
typedef void (UploadCompleteFunctionPointer)(void*);
void BeginMessageUpload(MWContext *currentContext,
PRFileDesc *ioSocket,
UploadCompleteFunctionPointer *completeFunction,
void *completionFunctionArgument);
void IMAP_DoNotDownLoadAnyMessageHeadersForMailboxSelect(TNavigatorImapConnection *connection);
void IMAP_DownLoadMessagesForMailboxSelect(TNavigatorImapConnection *connection,
uint32 *messageKeys, /* uint32* is adopted */
uint32 numberOfKeys);
void IMAP_DownLoadMessageBodieForMailboxSelect(TNavigatorImapConnection *connection,
uint32 *messageKeys, /* uint32* is adopted */
uint32 numberOfKeys);
void IMAP_BodyIdMonitor(TNavigatorImapConnection *connection, XP_Bool enter);
const char *IMAP_GetCurrentConnectionUrl(TNavigatorImapConnection *connection);
void IMAP_UploadAppendMessageSize(TNavigatorImapConnection *connection, uint32 msgSize, imapMessageFlagsType flags);
void IMAP_ResetAnyCachedConnectionInfo();
XP_Bool IMAP_CheckNewMail(TNavigatorImapConnection *connection);
XP_Bool IMAP_NewMailDetected(TNavigatorImapConnection *connection);
TImapFlagAndUidState *IMAP_CreateFlagState(int numberOfMessages);
void IMAP_DeleteFlagState(TImapFlagAndUidState *state);
int IMAP_GetFlagStateNumberOfMessages(TImapFlagAndUidState *state);
imap_uid IMAP_GetUidOfMessage(int zeroBasedIndex, TImapFlagAndUidState *state);
imapMessageFlagsType IMAP_GetMessageFlags(int zeroBasedIndex, TImapFlagAndUidState *state);
imapMessageFlagsType IMAP_GetMessageFlagsFromUID(imap_uid uid, XP_Bool *foundIt, TImapFlagAndUidState *state);
void IMAP_TerminateConnection (TNavigatorImapConnection *connection);
char *IMAP_CreateOnlineSourceFolderNameFromUrl(const char *url);
void IMAP_FreeBoxSpec(mailbox_spec *victim);
const char *IMAP_GetPassword();
void IMAP_SetPassword(const char *password);
/* called once only by MSG_InitMsgLib */
void IMAP_StartupImap();
/* called once only by MSG_ShutdownMsgLib */
void IMAP_ShutdownImap();
/* used to prevent recursive listing of mailboxes during discovery */
int64 IMAP_GetTimeStampOfNonPipelinedList();
/* returns TRUE if either we have a password or we were preAuth'd by SSL certs */
XP_Bool IMAP_HaveWeBeenAuthenticated();
/* used by libmsg when creating an imap message display stream */
int IMAP_InitializeImapFeData (ImapActiveEntry * ce);
MSG_Pane *IMAP_GetActiveEntryPane(ImapActiveEntry * ce);
NET_StreamClass *IMAP_CreateDisplayStream(ImapActiveEntry * ce, XP_Bool clearCacheBit, uint32 msgSize);
/* used by libmsg when a new message is loaded to interrupt the load of the previous message */
void IMAP_PseudoInterruptFetch(MWContext *context);
void IMAP_URLFinished(URL_Struct *URL_s);
XP_Bool IMAP_HostHasACLCapability(const char *hostName);
/**** IMAP Host stuff - used for communication between MSG_IMAPHost (in libmsg) and TImapHostInfo (in libnet) ****/
/* obsolete? */
/*void IMAP_SetNamespacesFromPrefs(const char *hostName, char *personalDir, char *publicDir, char *otherUsersDir);*/
/* Sets the preference of whether or not we should always explicitly LIST the INBOX for given host */
void IMAP_SetShouldAlwaysListInboxForHost(const char *hostName, XP_Bool shouldList);
/* Gets the number of namespaces in use for a given host */
int IMAP_GetNumberOfNamespacesForHost(const char *hostName);
/* Sets the currently-used default personal namespace for a given host. Used for updating from libnet when
we get a NAMESPACE response. */
void MSG_SetNamespacePrefixes(MSG_Master *master, const char *hostName, EIMAPNamespaceType type, const char *prefix);
/* Check to see if we need upgrade to IMAP subscription */
extern XP_Bool MSG_ShouldUpgradeToIMAPSubscription(MSG_Master *mast);
extern void MSG_ReportSuccessOfUpgradeToIMAPSubscription(MWContext *context, enum EIMAPSubscriptionUpgradeState *state);
/* Adds a set of ACL rights for the given folder on the given host for the given user. If userName is NULL, it means
the currently authenticated user (i.e. my rights). */
extern void MSG_AddFolderRightsForUser(MSG_Master *master, const char *hostName, const char*mailboxName, const char *userName, const char *rights);
/* Clears all ACL rights for the given folder on the given host for all users. */
extern void MSG_ClearFolderRightsForFolder(MSG_Master *master, const char *hostName, const char *mailboxName);
/* Refreshes the icon / flags for a given folder, based on new ACL rights */
extern void MSG_RefreshFolderRightsViewForFolder(MSG_Master *master, const char *hostName, const char *mailboxName);
extern XP_Bool MSG_GetFolderNeedsSubscribing(MSG_FolderInfo *folder);
/* Returns TRUE if this folder needs an auto-refresh of the ACL (on a folder open, for example) */
extern XP_Bool MSG_GetFolderNeedsACLListed(MSG_FolderInfo *folder);
/* Returns TRUE if this folder has NEVER (ever) had an ACL retrieved for it */
extern XP_Bool MSG_IsFolderACLInitialized(MSG_Master *master, const char *folderName, const char *hostName);
extern char *IMAP_SerializeNamespaces(char **prefixes, int len);
extern int IMAP_UnserializeNamespaces(const char *str, char **prefixes, int len);
XP_END_PROTOS
#endif

View File

@@ -1,369 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* intl_csi.h */
#ifndef INTL_CSI_H
#define INTL_CSI_H
/*
Using the i18n Character-Set-Information (CSI) accessor functions:
1) include the header file
#include "intl_csi.h"
2) get the i18n CSI object (generally from MWContext)
INTL_CharSetInfo csi = LO_GetDocumentCharacterSetInfo(context);
3) access (read/set) the data element
int16 doc_csid = INTL_GetCSIDocCSID(csi);
INTL_SetCSIDocCSID(csi, new_doc_csid);
int16 win_csid = INTL_GetCSIWinCSID(csi);
INTL_SetCSIWinCSID(csi, new_win_csid);
char *mime_name = INTL_GetCSIMimeCharset(csi);
INTL_SetCSIMimeCharset(csi, new_mime_charset);
int16 relayout_flag = INTL_GetCSIRelayoutFlag(csi);
INTL_SetCSIRelayoutFlag(csi, new_relayout_flag);
*/
XP_BEGIN_PROTOS
#include "ntypes.h"
#include "libi18n.h"
/**
* Cookie for INTL_CSIInfo.
*
* This is a Magic Cookie to validate the pointer to INTL_CSIInfo in MWContext.
*
*/
#define INTL_TAG 0x494E544C
/**@name Character Set Information (CSI) */
/*@{*/
/**
* Allocate a new charset info object, and clear it with zeroes.
*
* @return The new charset info object
* @see INTL_CSIInitialize, INTL_CSIDestroy
*/
PUBLIC INTL_CharSetInfo INTL_CSICreate(void);
/**
* Frees the given charset info object.
*
* @param obj Specifies the charset info object
* @see INTL_CSICreate
*/
PUBLIC void INTL_CSIDestroy(
INTL_CharSetInfo obj
);
/**
* Sets all the charset info object fields to initial values.
*
* The override, HTTP, HTML META, document and window charset IDs are all set
* to CS_DEFAULT. The MIME charset is set to NULL. The relayout flag is set
* to METACHARSET_NONE.
*
* @param obj Specifies the charset info object
* @see INTL_CSIInitialize
*/
PUBLIC void INTL_CSIReset(
INTL_CharSetInfo obj
);
/**
* Initializes the charset info object.
*
* <UL>
* <LI>
* If the given is_metacharset_reload argument is FALSE, INTL_CSIReset is
* called, passing the given charset info object.
*
* <LI>
* If the given is_metacharset_reload argument is TRUE, the charset info
* object's relayout flag is set to METACHARSET_RELAYOUTDONE.
*
* <LI>
* Otherwise, if the override charset ID is previously set in this object,
* it is set in the document charset ID field.
*
* <LI>
* Otherwise, if the given HTTP charset is known, it is set in the HTTP
* charset field.
*
* <LI>
* Otherwise, the document charset ID field is set to the given
* defaultDocCharSetID, unless the type is mail/news, in which case CS_DEFAULT
* is used. This is because the META charset in mail/news is sometimes wrong.
*
* <LI>
* Finally, the window charset ID is set, based on the document charset ID.
* </UL>
*
* @param obj Specifies the charset info object
* @param is_metacharset_reload TRUE if it is currently reloading because
* the layout code found HTML META charset.
* FALSE otherwise.
* @param http_charset Specifies the charset name if it is presented in
* HTTP Content-Type header
* @param type Specifies the context type
* @param defaultDocCharSetID Specifies the default document charset ID.
* @see
*/
PUBLIC void INTL_CSIInitialize(
INTL_CharSetInfo obj,
XP_Bool is_metacharset_reload,
char *http_charset,
int type,
uint16 defaultDocCharSetID
);
/**
* Sets HTML META charset info in the given charset info object.
*
* <UL>
* <LI>
* If the given charset is unknown, this function returns.
*
* <LI>
* If the given context type is mail or news, this function returns,
* since mail/news sometimes has wrong HTML META charsets.
*
* <LI>
* If the relayout flag is set to something other than METACHARSET_NONE, this
* function returns, to avoid setting the META charset more than once.
*
* <LI>
* Otherwise, the HTML META charset field is set, and the relayout flag is
* set to METACHARSET_HASCHARSET.
* If the previous document charset was known,
* and was different from the new META charset, the relayout flag is set to
* METACHARSET_REQUESTRELAYOUT.
* The window charset ID is also checked against the new one.
* If they are different, the relayout flag is set to
* METACHARSET_REQUESTRELAYOUT.
* </UL>
*
* @param obj Specifies the charset info object
* @param charset_tag Specifies the HTML META charset
* @param type Specifies the context type
* @see INTL_GetCSIMetaDocCSID, INTL_GetCSIRelayoutFlag
*/
PUBLIC void INTL_CSIReportMetaCharsetTag(
INTL_CharSetInfo obj,
char *charset_tag,
int type
);
/**
* Returns the context's charset info object.
*
* @param context Specifies the context
* @return The context's charset info object
* @see INTL_CSICreate
*/
PUBLIC INTL_CharSetInfo LO_GetDocumentCharacterSetInfo(
MWContext *context
);
/**
* Returns the document charset ID of the given charset info object.
*
* @param obj Specifies the charset info object
* @return The document charset ID
* @see INTL_SetCSIDocCSID
*/
PUBLIC int16 INTL_GetCSIDocCSID(
INTL_CharSetInfo obj
);
/**
* Sets the document charset ID field of the given charset info object.
*
* The document charset ID field is only set if the higher precedence fields
* (override, HTTP and META) are all set to CS_DEFAULT.
*
* @param obj Specifies the charset info object
* @param docCharSetID Specifies the document charset ID
* @see INTL_GetCSIDocCSID
*/
PUBLIC void INTL_SetCSIDocCSID(
INTL_CharSetInfo obj,
int16 docCharSetID
);
/**
* Returns the override document charset ID of the given charset info object.
*
* @param obj Specifies the charset info object
* @return The override document charset ID
* @see INTL_SetCSIOverrideDocCSID
*/
PUBLIC int16 INTL_GetCSIOverrideDocCSID(
INTL_CharSetInfo obj
);
/**
* Sets the override document charset ID of the given charset info object.
*
* @param obj Specifies the charset info object
* @param overrideDocCharSetID Specifies the override document charset ID
* @see INTL_GetCSIOverrideDocCSID
*/
PUBLIC void INTL_SetCSIOverrideDocCSID(
INTL_CharSetInfo obj,
int16 overrideDocCharSetID
);
/**
* Returns the HTML META document charset ID of the given charset info object.
*
* @param obj Specifies the charset info object
* @return The HTML META document charset ID
* @see INTL_SetCSIMetaDocCSID
*/
PUBLIC int16 INTL_GetCSIMetaDocCSID(
INTL_CharSetInfo obj
);
/**
* Sets the HTML META document charset ID of the given charset info object.
*
* The HTML META document charset ID field is only set if the higher precedence
* fields (override and HTTP) are all set to CS_DEFAULT.
*
* @param obj Specifies the charset info object
* @param metaCharSetID Specifies the HTML META document charset ID
* @see INTL_GetCSIMetaDocCSID
*/
PUBLIC void INTL_SetCSIMetaDocCSID(
INTL_CharSetInfo obj,
int16 metaCharSetID
);
/**
* Returns the HTTP document charset ID of the given charset info object.
*
* @param obj Specifies the charset info object
* @return The HTTP document charset ID
* @see INTL_SetCSIHTTPDocCSID
*/
PUBLIC int16 INTL_GetCSIHTTPDocCSID(
INTL_CharSetInfo obj
);
/**
* Sets the HTTP document charset ID of the given charset info object.
*
* The HTTP document charset ID field is only set if the higher precedence
* field (override) is set to CS_DEFAULT.
*
* @param obj Specifies the charset info object
* @param httpDocCharSetID Specifies the HTTP document charset ID
* @see INTL_GetCSIHTTPDocCSID
*/
PUBLIC void INTL_SetCSIHTTPDocCSID(
INTL_CharSetInfo obj,
int16 httpDocCharSetID
);
/**
* Returns the window charset ID of the given charset info object.
*
* @param obj Specifies the charset info object
* @return The window charset ID
* @see INTL_SetCSIWinCSID
*/
PUBLIC int16 INTL_GetCSIWinCSID(
INTL_CharSetInfo obj
);
/**
* Sets the window charset ID field of the given charset info object.
*
* @param obj Specifies the charset info object
* @param winCharSetID Specifies the window charset ID
* @see INTL_GetCSIWinCSID
*/
PUBLIC void INTL_SetCSIWinCSID(
INTL_CharSetInfo obj,
int16 winCharSetID
);
/**
* Returns the MIME charset field of the given charset info object.
*
* @param obj Specifies the charset info object
* @return The MIME charset
* @see INTL_SetCSIMimeCharset
*/
PUBLIC char *INTL_GetCSIMimeCharset(
INTL_CharSetInfo obj
);
/**
* Sets the MIME charset field of the given charset info object.
*
* If the charset info object already contains a pointer to a MIME charset,
* that charset is freed. Then the given charset is copied, and the copy is
* converted to lower case. The copy is then set in the MIME charset field.
*
* @param obj Specifies the charset info object
* @param mime_charset Specifies the MIME charset
* @see INTL_GetCSIMimeCharset
*/
PUBLIC void INTL_SetCSIMimeCharset(
INTL_CharSetInfo obj,
char *mime_charset
);
/**
* Returns the relayout field of the given charset info object.
*
* @param obj Specifies the charset info object
* @return The relayout field
* @see INTL_SetCSIRelayoutFlag
*/
PUBLIC int16 INTL_GetCSIRelayoutFlag(
INTL_CharSetInfo obj
);
/**
* Sets the relayout field of the given charset info object.
*
* @param obj Specifies the charset info object
* @param relayout Specifies the relayout field
* @see INTL_GetCSIRelayoutFlag
*/
PUBLIC void INTL_SetCSIRelayoutFlag(
INTL_CharSetInfo obj,
int16 relayout
);
/*@}*/
XP_END_PROTOS
#endif /* INTL_CSI_H */

View File

@@ -1,176 +0,0 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef ITAPEFS_H
#define ITAPEFS_H
#ifdef EDITOR
//
// Abstract output file stream.
//
class IStreamOut {
public:
IStreamOut();
virtual ~IStreamOut();
virtual void Write( char *pBuffer, int32 iCount )=0;
// NOTICE: the implementation is not pure. There is a default
// implementation that implements this function interms of
// 'Write'.
virtual int Printf( char * pFormat, ... );
enum EOutStreamStatus {
EOS_NoError,
EOS_DeviceFull,
EOS_FileError
};
virtual EOutStreamStatus Status(){ return EOS_NoError; }
// implemented in terms of the interface.
void WriteInt( int32 i ){ Write( (char*)&i, sizeof( int32 ) ); }
void WriteZString( char* pString);
void WritePartialZString( char* pString, int32 start, int32 end);
private:
char* stream_buffer; // used to implement Printf
};
//-----------------------------------------------------------------------
// Abstract File System
//-----------------------------------------------------------------------
typedef void
EDT_ITapeFileSystemComplete( XP_Bool bSuccess, void *pArg );
class ITapeFileSystem {
PRBool m_FirstBinary; // is the first file really binary, not text?
public:
ITapeFileSystem() { m_FirstBinary = PR_FALSE; }
// ITapeFileSystem::File, ITapeFileSystem::Publish, or
// ITapeFileSystem::MailSend,
enum {File,Publish,MailSend};
virtual intn GetType() = 0;
// This function is called before anything else. It tells the file
// system the base url for the URLs added in AddFile().
// An actual file, not a directory.
virtual void SetSourceBaseURL( char* pURL )=0;
// DESCRIPTION:
//
// Add a name to the file system. It is up to the file system to localize
// the name. For example, I could add 'http://home.netsacpe.com/
// and the file system might decide that it should be called 'index.html'
// if the file system were DOS, the url might be converted to INDEX.HTML
//
// pMIMEType may be NULL. In this case if the tape file system needs the
// MIME type, it must figure it out by itself.
//
// RETURNS: index of the file (0 based), OR
// ITapeFileSystem::Error if an error adding name, OR
// ITapeFileSystem::SourceDestSame if adding
// this name would result in the source and destination being the same, and thus
// no point in copying the file.
//
// The first file added must be the root HTML document. (It is ok for the root
// document to have the same source and dest URL).
//
virtual intn AddFile( char* pURL, char *pMIMEType, int16 iCharSetID)=0;
// Return the number of files added to the file system.
virtual intn GetNumFiles()=0;
// Returns the absolute version of the URL given in AddFile(), using the
// URL given in SetSourceBaseURL() as the base.
// Allocated with XP_STRDUP().
virtual char* GetSourceURL(intn iFileIndex)=0;
// Return the absolute destination of the HTML doc if meaningful, else return
// NULL. Almost the same as "GetDestPathURL()+GetDestURL(0)" except that this call
// will work before file 0 has been added to the file system.
virtual char* GetDestAbsURL()=0;
// Gets the name of the RELATIVE url to place in the file. String is
// allocated with XP_STRDUP();
//
virtual char* GetDestURL( intn iFileIndex )=0;
// Return the path URL associated with the ITapeFilesystem or NULL if there is none.
// If NULL is returned, all URLs returned by GetDestURL() must be absolute.
//
// i.e. for a file or remote HTTP based ITapeFileSystem, this is the directory where the images are
// stored. For a MHTML ITapeFileSystem this is NULL.
//
// String is allocated with XP_STRDUP().
virtual char* GetDestPathURL() = 0;
//
// Returns the name to display when saving the file, can be the same as
// GetURLName. String is allocated with XP_STRDUP();
//
virtual char* GetHumanName( intn iFileIndex )=0;
enum {
Error = -1, SourceDestSame = -2
};
// Does the file referenced by iFileIndex already exist?
// E.g. for the MHTML version, this will always return FALSE.
virtual XP_Bool FileExists(intn iFileIndex) = 0;
// Will we be creating a new non-temporary file on the local machine.
// Used to update SiteManager.
virtual XP_Bool IsLocalPersistentFile(intn iFileIndex) = 0;
// ### mwelch Added so that multipart/related message saver can properly construct
// messages using quoted/forwarded part data.
// Tell the tape file system the mime type of a particular part.
// Calling this overrides any previously determined mime type for this part.
virtual void CopyURLInfo(intn iFileIndex, const URL_Struct *pURL) = 0;
//
// Opens the output stream. Returns a stream that can be written to or NULL if error. All
// 'AddFile's occur before the first OpenStream.
// Do not delete the returned stream, just call CloseStream() when done.
//
virtual IStreamOut *OpenStream( intn iFileIndex )=0;
virtual void CloseStream( intn iFileIndex )=0;
// Called on completion, TRUE if completed successfully, FALSE if it failed.
// The caller should not reference the ITapeFileSystem after calling Complete().
// Caller does not free up memory for ITapeFileSystem, Complete() causes file system to delete itself.
//
// The tape file system will call pfComplete with pArg and with whether the ITapeFileSystem
// completed successfully. Note: the ITapeFileSystem may call pfComplete() with TRUE even if
// ITapeFileSystem::Complete() was given FALSE.
// pfComplete may be NULL. Call to pfComplete may be synchronous or asynchronous.
//
// The ITapeFileSystem will call pfComplete(success,pArg) before deleting itself. I.e. the ITapeFileSystem is still valid
// when it calls pfComplete().
virtual void Complete( Bool bSuccess, EDT_ITapeFileSystemComplete *pfComplete, void *pArg )=0;
inline PRBool IsFirstBinary(void) { return m_FirstBinary; }
inline void SetFirstBinary(void) { m_FirstBinary = PR_TRUE; }
inline void ResetFirstBinary(void) { m_FirstBinary = PR_FALSE; }
};
#endif // EDITOR
#endif

View File

@@ -1,139 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* libc_r.h -- macros, defines, etc. to make using reentrant libc calls */
/* a bit easier. This was initially done for AIX pthreads, */
/* but should be usable for anyone... */
/* Most of these use locally defined space instead of static library space. */
/* Because of this, we use the _INIT_R to declare/allocate space (stack), */
/* and the plain routines to actually do it..._WARNING_: avoid allocating */
/* memory wherever possible. Memory allocation is fairly expensive, at */
/* least on AIX...use arrays instead (which allocate from the stack.) */
/* I know the names are a bit strange, but I wanted to be fairly certain */
/* that we didn't have any namespace corruption...in general, the inits are */
/* R_<name>_INIT_R(), and the actual calls are R_<name>_R(). */
#ifndef _LIBC_R_H
#define _LIBC_R_H
/************/
/* strtok */
/************/
#define R_STRTOK_INIT_R() \
char *r_strtok_r=NULL
#define R_STRTOK_R(return,source,delim) \
return=strtok_r(source,delim,&r_strtok_r)
#define R_STRTOK_NORET_R(source,delim) \
strtok_r(source,delim,&r_strtok_r)
/**************/
/* strerror */
/**************/
#define R_MAX_STRERROR_LEN_R 8192 /* Straight from limits.h */
#define R_STRERROR_INIT_R() \
char r_strerror_r[R_MAX_STRERROR_LEN_R]
#define R_STRERROR_R(val) \
strerror_r(val,r_strerror_r,R_MAX_STRERROR_LEN_R)
/*****************/
/* time things */
/*****************/
#define R_ASCTIME_INIT_R() \
char r_asctime_r[26]
#define R_ASCTIME_R(val) \
asctime_r(val,r_asctime_r)
#define R_CTIME_INIT_R() \
char r_ctime_r[26]
#define R_CTIME_R(val) \
ctime_r(val,r_ctime_r)
#define R_GMTIME_INIT_R() \
struct tm r_gmtime_r
#define R_GMTIME_R(time) \
gmtime_r(time,&r_gmtime_r)
#define R_LOCALTIME_INIT_R() \
struct tm r_localtime_r
#define R_LOCALTIME_R(val) \
localtime_r(val,&r_localtime_r)
/***********/
/* crypt */
/***********/
#include <crypt.h>
#define R_CRYPT_INIT_R() \
CRYPTD r_cryptd_r; \
bzero(&r_cryptd_r,sizeof(CRYPTD))
#define R_CRYPT_R(pass,salt) \
crypt_r(pass,salt,&r_cryptd_r)
/**************/
/* pw stuff */
/**************/
#define R_MAX_PW_LEN_R 1024
/* The following must be after the last declaration, but */
/* before the first bit of code... */
#define R_GETPWNAM_INIT_R(pw_ptr) \
struct passwd r_getpwnam_pw_r; \
char r_getpwnam_line_r[R_MAX_PW_LEN_R]; \
pw_ptr = &r_getpwnam_pw_r
#define R_GETPWNAM_R(name) \
getpwnam_r(name,&r_getpwnam_pw_r,r_getpwnam_line_r,R_MAX_PW_LEN_R)
/*******************/
/* gethost stuff */
/*******************/
#define R_GETHOSTBYADDR_INIT_R() \
struct hostent r_gethostbyaddr_r; \
struct hostent_data r_gethostbyaddr_data_r
#define R_GETHOSTBYADDR_R(addr,len,type,xptr_ent) \
bzero(&r_gethostbyaddr_r,sizeof(struct hostent)); \
bzero(&r_gethostbyaddr_data_r,sizeof(struct hostent_data)); \
xptr_ent = &r_gethostbyaddr_r; \
if (gethostbyaddr_r(addr,len,type, \
&r_gethostbyaddr_r,&r_gethostbyaddr_data_r) == -1) { \
xptr_ent = NULL; \
}
#define R_GETHOSTBYNAME_INIT_R() \
struct hostent r_gethostbyname_r; \
struct hostent_data r_gethostbyname_data_r
#define R_GETHOSTBYNAME_R(name,xptr_ent) \
bzero(&r_gethostbyname_r,sizeof(struct hostent)); \
bzero(&r_gethostbyname_data_r,sizeof(struct hostent_data)); \
xptr_ent = &r_gethostbyname_r; \
if (gethostbyname_r(name, \
&r_gethostbyname_r,&r_gethostbyname_data_r) == -1) { \
xptr_ent = NULL; \
}
#endif /* _LIBC_R_H */

View File

@@ -1,209 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
//"libcnv.h"
#ifndef _LIBCNV_H
#define _LIBCNV_H
#ifndef _IMAGE_CONVERT
#error _IMAGE_CONVERT SYMBOL NEEDED BEFORE INCLUSION
#endif /*_IMAGE_CONVERT*/
#ifndef __cplusplus
typedef unsigned char BYTE;
typedef uint32 DWORD;
#endif
#include "xp_core.h"/*defines of int32 ect*/
#include "xp_file.h"
#include "xp_mem.h"/*XP_HUGE*/
#define MAXIMAGEPATHLEN 255
typedef enum
{
CONV_CANCEL,
CONV_OK,
CONVERR_INVALIDSOURCE,
CONVERR_INVALIDDEST,
CONVERR_INVALIDFILEHEADER,
CONVERR_INVALIDIMAGEHEADER,
CONVERR_INVALIDBITDEPTH,
CONVERR_INVALIDCOLORMAP,
CONVERR_BADREAD,
CONVERR_OUTOFMEMORY,
CONVERR_JPEGERROR,
CONVERR_COMPRESSED,
CONVERR_BADPLANES,
CONVERR_BADWRITE,
CONVERR_INVALIDPARAMS,
CONVERR_UNKNOWN,
NUM_CONVERR
}CONVERT_IMAGERESULT;
typedef BYTE * CONVERT_IMG_ROW;
typedef CONVERT_IMG_ROW * CONVERT_IMG_ARRAY;
typedef enum
{
conv_unknown,
conv_png,
conv_jpeg,
conv_bmp,
conv_pict,
conv_xpm,
conv_rgb,
conv_plugin
}convimgenum;
typedef struct tagCONVERT_IMG_STREAM
{
XP_HUGE_CHAR_PTR m_mem;
FILE *m_file;/*used only with type 0 -must allready be opened for read or write does not use current index ect.*/
int16 m_type;/*0=CONVERT_FILE 1=CONVERT_MEMORY*/
DWORD m_streamsize;/* 0== unlimited */
DWORD m_currentindex;
}CONVERT_IMG_STREAM;
/*Sent in a BITMAP structure*/
#define CONVERT_MEMORY 1
#define CONVERT_FILE 0
typedef struct tagCONVERT_IMGCONTEXT CONVERT_IMGCONTEXT;
typedef struct tagCONVERT_IMG_INFO CONVERT_IMG_INFO;
typedef CONVERT_IMAGERESULT (*CONVERT_DIALOGIMAGECALLBACK)(CONVERT_IMGCONTEXT *input,
CONVERT_IMGCONTEXT *outputarray,
CONVERT_IMG_INFO *imginfo,
int16 numoutput,
CONVERT_IMG_ARRAY imagearray);
typedef CONVERT_IMAGERESULT (*CONVERT_COMPLETECALLBACK)(CONVERT_IMGCONTEXT *outputarray,int16 p_numoutputs,void *hook);
typedef void (*CONVERT_BUFFERCALLBACK)(void *);/*j_common_ptr);*/
typedef struct tagCONVERT_CALLBACKS
{
CONVERT_DIALOGIMAGECALLBACK m_dialogimagecallback;
CONVERT_BUFFERCALLBACK m_displaybuffercallback;
CONVERT_COMPLETECALLBACK m_completecallback;
}CONVERT_CALLBACKS;
typedef struct tagCONVERT_IMGCONTEXT
{
convimgenum m_imagetype;
CONVERT_IMG_STREAM m_stream;/*used with m_streamtype 1,2*/
int16 m_quality;
char m_filename[MAXIMAGEPATHLEN];/*will not be used to open FILE *. used for output. maybe in future will open file?*/
CONVERT_CALLBACKS m_callbacks;
#ifdef XP_OS2
XP_OS2_ARG(void *m_parentwindow);/*used for callbacks to bring up dialog boxes. void * = CWnd *for Windows*/
#else
XP_WIN_ARG(void *m_parentwindow);/*used for callbacks to bring up dialog boxes. void * = CWnd *for Windows*/
#endif
void *m_pMWContext;//used for callbacks to insert the image. and for plugins
}CONVERT_IMGCONTEXT;
typedef struct tagCONVERT_IMG_INFO
{
BYTE *m_colormap;
int16 m_numcolorentries;
uint16 m_X_density;
uint16 m_Y_density;
int16 m_density_unit;
int16 m_in_color_space;
int16 m_input_components;
int16 m_data_precision;
int16 m_image_width;/*pixel width*/
int16 m_image_height;/*pixel_height*/
int16 m_bitsperpixel;
int16 m_row_width;/*width in bytes*/
int16 m_stride; /*row_width-(pixel_width*bpp)/8 */
DWORD m_image_size; /*informational purposes*/
}CONVERT_IMG_INFO;
#ifdef __cplusplus
extern "C"
{
#endif
/****************************/
/*API CALLS AND DECLARATIONS*/
/****************************/
/*converts input to p_numoutput many outputs*/
/*p_outpuffilenames must be a PREALLOCATED array of char *s at least p_numoutputs char *s these pointers will
point to output filenames that YOU will be responsible to destroy!
you may pass in null for p_outputfilenames and it wil*/
CONVERT_IMAGERESULT convert_stream2image(CONVERT_IMGCONTEXT p_input,CONVERT_IMG_INFO *p_imageinfo,int16 p_numoutputs,char **p_outputfilenames);
/*quantize_pixels will change the imagearray to have only maxcolors distinct values*/
CONVERT_IMAGERESULT convert_quantize_pixels(CONVERT_IMG_ARRAY imagearray,int16 imagewidth,int16 imageheight,int16 maxcolorvalue);
/*given a imagecontext, it will tell you if it is a png,bmp,gif ect*/
convimgenum select_file_type (CONVERT_IMGCONTEXT * p_input);
/****************************/
/*END API CALLS AND DECLARATIONS*/
/****************************/
/****************************/
/*STREAM DECLARATIONS*/
/****************************/
/*CONV_IMG_FREAD taken from JPEG libraries for independence from common header file*/
#define CONV_IMG_FREAD(file,buf,sizeofbuf) \
((size_t) fread((void *) (buf), (size_t) 1, (size_t) (sizeofbuf), (file)))
#define ReadOK(file,buffer,len) (CONV_IMG_FREAD(file,buffer,len) == ((size_t) (len)))
int16 read_mem_stream(CONVERT_IMG_STREAM *p_stream,void *p_dest,uint16 p_bytecount);
BYTE read_mem_stream_byte(CONVERT_IMG_STREAM *p_stream);
int16 read_param(CONVERT_IMG_STREAM *p_input,void *p_dest,uint16 p_bytecount);
BYTE read_param_byte(CONVERT_IMG_STREAM *p_input);
/****************************/
/*END STREAM DECLARATIONS*/
/****************************/
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -1,748 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* Header file for event passing between the mozilla thread and
* the mocha thread
*/
#ifndef libevent_h___
#define libevent_h___
#include "libmocha.h"
#include "prtypes.h"
#ifndef NSPR20
#include "prevent.h"
#else
#include "plevent.h"
#endif
#include "shist.h"
#include "fe_proto.h"
#include "lo_ele.h"
NSPR_BEGIN_EXTERN_C
extern PREventQueue * mozilla_event_queue;
/*
* XXX - should we use the same event values as layer events?
*/
/* Event bits stored in the low end of decoder->event_mask. */
#define EVENT_MOUSEDOWN 0x00000001
#define EVENT_MOUSEUP 0x00000002
#define EVENT_MOUSEOVER 0x00000004 /* user is mousing over a link */
#define EVENT_MOUSEOUT 0x00000008 /* user is mousing out of a link */
#define EVENT_MOUSEMOVE 0x00000010
#define EVENT_MOUSEDRAG 0x00000020
#define EVENT_CLICK 0x00000040 /* input element click in progress */
#define EVENT_DBLCLICK 0x00000080
#define EVENT_KEYDOWN 0x00000100
#define EVENT_KEYUP 0x00000200
#define EVENT_KEYPRESS 0x00000400
#define EVENT_DRAGDROP 0x00000800 /* not yet implemented */
#define EVENT_FOCUS 0x00001000 /* input focus event in progress */
#define EVENT_BLUR 0x00002000 /* loss of focus event in progress */
#define EVENT_SELECT 0x00004000 /* input field selection in progress */
#define EVENT_CHANGE 0x00008000 /* field value change in progress */
#define EVENT_RESET 0x00010000 /* form submit in progress */
#define EVENT_SUBMIT 0x00020000 /* form submit in progress */
#define EVENT_SCROLL 0x00040000 /* window is being scrolled */
#define EVENT_LOAD 0x00080000 /* layout parsed a loaded document */
#define EVENT_UNLOAD 0x00100000
#define EVENT_XFER_DONE 0x00200000 /* document has loaded */
#define EVENT_ABORT 0x00400000
#define EVENT_ERROR 0x00800000
#define EVENT_LOCATE 0x01000000
#define EVENT_MOVE 0x02000000
#define EVENT_RESIZE 0x04000000
#define EVENT_FORWARD 0x08000000
#define EVENT_HELP 0x10000000 /* for handling of help events */
#define EVENT_BACK 0x20000000
/* #define EVENT_PRINT 0x20000000 *//* To be removed per joki */
#define STATUS_STOP 0x00000001 /* stop processing */
#define STATUS_IGNORE 0x00000002 /* no new messages */
#define EVENT_ALT_MASK 0x00000001
#define EVENT_CONTROL_MASK 0x00000002
#define EVENT_SHIFT_MASK 0x00000004
#define EVENT_META_MASK 0x00000008
#define ARGTYPE_NULL 0x00000001
#define ARGTYPE_INT32 0x00000002
#define ARGTYPE_BOOL 0x00000004
#define ARGTYPE_STRING 0x00000008
#define SIZE_MAX 0x00000001
#define SIZE_MIN 0X00000002
/*
* When the event has been processed by the backend, there will be
* a front-end callback that gets called. If the event processed
* successfully, the callback will be passed EVENT_OK. If the
* event wasn't successful (i.e. the user canceled it) the return
* status will be EVENT_CANCEL. If something radical happened
* and the front-end should do nothing (i.e. mocha changed the
* underlying context) the status will be EVENT_PANIC and the
* front end should treat the context and element passed to the
* exit routine as bogus
*/
typedef enum {
EVENT_OK,
EVENT_CANCEL,
EVENT_PANIC
} ETEventStatus;
/*
* When a given event gets processed we may need to tell the front
* end about it so that they can update the UI / continue the
* operation. The context, lo_element, lType and whatever
* field are all supplied by the original ET_SendEvent() call.
* See ET_SendEvent() for a description of the values for
* the status parameter
*/
typedef void
(*ETClosureFunc)(MWContext * pContext, LO_Element * lo_element,
int32 lType, void * whatever, ETEventStatus status);
/*
* Someone has initiated a call to LM_EvaluateBuffer(). This function
* gets called back with the result
*/
typedef void
(*ETEvalAckFunc)(void * data, char * result_string, size_t result_length,
char * wysiwyg_url, char * base_href, Bool valid);
/*
* This function is called back after a layer's state has been restored
* in a resize_relayout.
*/
typedef void
(*ETRestoreAckFunc)(void * data, LO_BlockInitializeStruct *param);
/*
* Typedef for a function taking a void pointer and
* returning nothing
*/
typedef void
(*ETVoidPtrFunc)(void * data);
/*
* Typedef for a function taking a void pointer and
* returning a bool
*/
typedef PRBool
(*ETBoolPtrFunc)(void * data);
/*
* Typedef for a function taking a void pointer and
* returning a int32
*/
typedef int32
(*ETIntPtrFunc)(void * data);
/*
* Typedef for a function taking a void pointer and
* returning a char *
*/
typedef char *
(*ETStringPtrFunc)(void * data);
/*
* Struct for passing JS typed variable info through C interface calls
*/
typedef union ArgVal {
int32 intArg;
XP_Bool boolArg;
char * stringArg;
} ArgVal;
typedef struct {
uint8 type; /* arg type as defined at top of file */
ArgVal value;
} JSCompArg;
/*
* Typedef for a function used to verify installed components and
* get back components utility functions.
*/
typedef PRBool
(*ETVerifyComponentFunc)(void **active_callback, void **startup_callback);
/*
* Generic function for JS setting values with native calls.
*/
typedef void
(*ETCompPropSetterFunc)(char *name, void *value);
/*
* Generic function for JS getting values from native calls.
*/
typedef void*
(*ETCompPropGetterFunc)(char *name);
/*
* Generic function for JS calling native methods.
*/
typedef void*
(*ETCompMethodFunc)(int32 argc, JSCompArg *argv);
/* --------------------------------------------------------------------------
* Common prologue for talking between the mocha thread and the mozilla
* thread
*/
typedef struct {
PREvent event; /* the PREvent structure */
MWContext* context; /* context */
int32 doc_id; /* doc id of context when event launched */
PRPackedBool handle_eagerly;
} ETEvent;
/*
* Struct to send back from front end in order to get additional
* event information without having to initialize event object
* until necessary. Yow, there is a lot of junk in here now
* can we make a union out of some of these or are they always
* needed?
*/
typedef struct {
ETEvent ce;
MochaDecoder * decoder;
JSObject * object;
int32 type;
int32 layer_id;
int32 id;
LO_Element * lo_element;
ETClosureFunc fnClosure; /* event sender closure */
void * whatever; /* anything other state */
int32 x,y;
int32 docx,docy;
int32 screenx,screeny;
uint32 which;
uint32 modifiers;
void * data;
uint32 dataSize;
PRPackedBool saved;
PRPackedBool event_handled;
} JSEvent;
/*
* Tell the backend about a new event.
* The event is placed onto an event queue, it is not processed
* immediately. If the event is the type that can be cancelled
* by the backend (i.e. a button click or a submit) the front
* end must wait until the callback routine gets called before
* continuing with the operation. The ETEventStatus will be
* EVENT_OK if the operation is to continue or EVENT_CANCEL
* if it got cancelled.
*
* The processing of the event may cause the document to change
* or even the whole window to close. In those cases the callback
* will still get called in case there is any front-end cleanup
* to do but the ETEventStatus will be set to EVENT_PANIC
*
*/
extern JSBool
ET_SendEvent(MWContext * pContext, LO_Element *pElement, JSEvent *pEvent,
ETClosureFunc fnClosure, void * whatever);
/*
* Tell the backend about a new document load event. We need a
* closure so that libparse/layout knows when its safe to discard
* the old document when they were waiting for onunload events to
* finish processing
*/
extern void
ET_SendLoadEvent(MWContext * pContext, int32 type, ETVoidPtrFunc fnClosure,
NET_StreamClass *stream, int32 layer_id, Bool resize_reload);
/*
* Tell the backend about a new image event. Async. No closure
*/
extern void
ET_SendImageEvent(MWContext * pContext, LO_ImageStruct *image_data,
LM_ImageEvent event);
/*
* Send an interrupt event to the current context
* Remove all pending events for the event queue of the given context.
*/
extern void
ET_InterruptContext(MWContext * pContext);
extern JSBool
ET_ContinueProcessing(MWContext * pContext);
/*
* Tell mocha to destroy the given context's data. The callback
* function gets called when mocha is done with all of its data
* that was associated with the context
*/
extern void
ET_RemoveWindowContext(MWContext * context, ETVoidPtrFunc fn,
void * data);
typedef struct {
uint len, line_no;
char * scope_to;
void * data;
JSVersion version;
JSPrincipals * principals;
JSBool want_result;
JSBool unicode;
} ETEvalStuff;
/*
* Evaluate the mocha code in the given buffer
*/
extern void
ET_EvaluateBuffer(MWContext * context, char * buffer, uint buflen,
uint line_no, char * scope_to, JSBool want_result,
ETEvalAckFunc fn, void * data,
JSVersion ver, struct JSPrincipals *);
extern void
ET_EvaluateScript(MWContext * context, char * buffer, ETEvalStuff * stuff,
ETEvalAckFunc fn);
/*
* Ask Mocha to reflect the given object into JavaScript
*/
extern void
ET_ReflectObject(MWContext * pContext, void * lo_ele, void * tag,
int32 layer_id, uint index, ReflectedObject type);
void
ET_ReflectFormElement(MWContext * pContext, void * form,
LO_FormElementStruct * form_element, PA_Tag * tag);
extern void
ET_ReflectWindow(MWContext * pContext,
PA_Block onLoad, PA_Block onUnload,
PA_Block onFocus, PA_Block onBlur, PA_Block onHelp,
PA_Block onMouseOver, PA_Block onMouseOut, PA_Block onDragDrop,
PA_Block onMove, PA_Block onResize,
PA_Block id, char *all,
Bool bDelete, int newline_count);
/*
* Tell mocha we are processing a form
*/
extern void
ET_SetActiveForm(MWContext * pContext, struct lo_FormData_struct * loElement);
/*
* Tell mocha which layer we are processing
*/
void
ET_SetActiveLayer(MWContext * pContext, int32 layer_id);
/*
** Tell mocha where to send its output
*/
extern void
ET_ClearDecoderStream(MWContext * context, NET_StreamClass * old_stream);
extern void
ET_SetDecoderStream(MWContext * context, NET_StreamClass *stream,
URL_Struct *url_struct, JSBool free_stream_on_close);
/*
** Remember the current nesting URL in the MochaDecoder
*/
extern void
ET_SetNestingUrl(MWContext * context, char * szUrl);
/*
** Remember the current language version in the MochaDecoder
*/
extern void
ET_SetVersion(MWContext * context, JSVersion version);
/*
* Tell mocha to trash the current document. around and around...
*/
extern void
ET_ReleaseDocument(MWContext * pContext, JSBool resize_reload);
/*
* Tell mocha to trash the layer's document.
*/
extern void
ET_DestroyLayer(MWContext * pContext, JSObject *layer_obj);
extern void
ET_MochaStreamComplete(MWContext * context, void * buf, int len,
char * content_type, Bool isUnicode);
extern void
ET_MochaStreamAbort(MWContext * context, int status);
/*
* Called when a layer's contents are changing and we want to create
* a new layer document.
*/
extern void
ET_NewLayerDocument(MWContext *pContext, int32 layer_id);
extern void
ET_DocWriteAck(MWContext *pContext, int status);
extern void
ET_RegisterComponent(char *name, void *active_callback, void *startup_callback);
extern void
ET_RegisterComponentProp(char *comp, char *name, uint8 retType, void *setter,
void *getter);
extern void
ET_RegisterComponentMethod(char *comp, char *name, uint8 retType, void *method,
int32 argc);
/* =============================================================== */
/*
* This event can be sent to both the mozilla thread and the moacha thread
*/
typedef struct {
ETEvent ce;
TimeoutCallbackFunction fnCallback;
void* pClosure;
uint32 ulTime;
void* pTimerId;
} MozillaEvent_Timeout;
/* =============================================================== */
/*
* Busy loop waiting for events to come along
*/
extern void PR_CALLBACK
lm_wait_for_events(void *);
/*
* global mocha event queues. It would be nice to not have these
* exported this globally
*/
extern PREventQueue *lm_InterpretQueue;
extern PREventQueue *lm_PriorityQueue;
/*
* Ways to send events to the front end
*/
extern JSBool
ET_PostMessageBox(MWContext* context, char* szMessage,
JSBool bConfirm);
extern void
ET_PostProgress(MWContext* context, const char* szMessage);
/* --- timeout routines --- */
/*
* Set (or clear) a timeout to go off. The timeout will go off in the
* mozilla thread so we will use the routine ET_FireTimeoutCallBack()
* to get back into our thread to actually run the closure
*/
extern void *
ET_PostSetTimeout(TimeoutCallbackFunction fnCallback,
void * pClosure, uint32 ulTime, int32 doc_id);
extern void
ET_PostClearTimeout(void * stuff);
extern void
ET_FireTimeoutCallBack(void *);
/* --- end of timeout routines --- */
extern void
ET_PostDestroyWindow(MWContext * context);
extern void
ET_PostManipulateForm(MWContext * context, LO_Element * pForm, int32 action);
extern void
ET_PostClearView(MWContext * context);
extern void
ET_PostFreeImageElement(MWContext * context, void * stuff);
extern void
ET_PostFreeImageContext(MWContext *context, IL_GroupContext *img_cx);
extern void
ET_PostFreeAnonImages(MWContext *context, IL_GroupContext *img_cx);
extern void
ET_PostDisplayImage(MWContext *, int, LO_ImageStruct *);
extern void
ET_PostGetUrl(MWContext *, URL_Struct * pUrl);
extern char *
ET_PostPrompt(MWContext* context, const char* szMessage,
const char * szDefault);
extern MWContext *
ET_PostNewWindow(MWContext* context, URL_Struct * pUrl,
char * szName, Chrome * pChrome);
extern void
ET_PostUpdateChrome(MWContext* context, Chrome * pChrome);
extern void
ET_PostQueryChrome(MWContext* context, Chrome * pChrome);
extern void
ET_PostGetScreenSize(MWContext* context, int32 *pX, int32 *pY);
extern void
ET_PostGetAvailScreenRect(MWContext* context, int32 *pX, int32 *pY,
int32 *pLeft, int32 *pTop);
extern void
ET_PostGetColorDepth(MWContext* context, int32 *pPixel, int32 *pPallette);
extern char *
ET_PostGetSelectedText(MWContext* context);
extern void
ET_PostScrollDocTo(MWContext* context, int loc, int32 x, int32 y);
extern void
ET_PostScrollDocBy(MWContext* context, int loc, int32 x, int32 y);
extern void
ET_PostBackCommand(MWContext* context);
extern void
ET_PostForwardCommand(MWContext* context);
extern void
ET_PostHomeCommand(MWContext* context);
extern JSBool
ET_PostFindCommand(MWContext* context, char * szName, JSBool matchCase,
JSBool searchBackward);
extern void
ET_PostPrintCommand(MWContext* context);
extern void
ET_PostOpenFileCommand(MWContext* context);
extern void
ET_MakeHTMLAlert(MWContext * context, const char * szString);
/* respond to events sent to the mocha thread by the mozilla thread */
extern void
ET_PostJsEventAck(MWContext* context, LO_Element * pEle, int type,
ETClosureFunc fnClosure, void * pStuff,
ETEventStatus status);
extern void
ET_PostEvalAck(MWContext * context, int doc_id, void * data,
char * str, size_t len, char * wysiwyg_url,
char * base_href, Bool valid, ETEvalAckFunc fn);
extern void
ET_PostRestoreAck(void *data, LO_BlockInitializeStruct *param,
ETRestoreAckFunc fn);
/* netlib events */
extern char *
ET_net_GetCookie(MWContext* context, int32 doc_id);
extern char *
ET_net_SetCookieString(MWContext* context, char * szCookie, int32 doc_id);
extern NET_StreamClass *
ET_net_CacheConverter(FO_Present_Types format, void * obj,
URL_Struct *pUrl, MWContext * pContext);
extern void
ET_net_FindURLInCache(URL_Struct * pUrl, MWContext * pContext);
extern NET_StreamClass *
ET_net_StreamBuilder(FO_Present_Types format, URL_Struct *pUrl,
MWContext * pContext);
/* layout events */
extern void
ET_lo_ResetForm(MWContext * pContext, LO_Element * ele);
void
ET_fe_SubmitInputElement(MWContext * pContext, LO_Element * ele);
/*
* Synchronously shove the given text down the parser's processing
* queue. If the currently loaded document is not equal to
* doc_id, this message should be ignored since it arrived too
* late for the intended document
*/
extern int
ET_lo_DoDocWrite(JSContext *cx, MWContext * context, NET_StreamClass * stream,
char * str, size_t len, int32 doc_id);
extern void
ET_il_GetImage(const char * str, MWContext * pContext, IL_GroupContext *img_cx,
LO_ImageStruct * image_data, NET_ReloadMethod how);
extern void
ET_il_SetGroupObserver(MWContext * pContext, IL_GroupContext *pImgCX, void *pDpyCX,
JSBool bAddObserver);
extern void
ET_InterruptImgCX(MWContext * pContext);
/*
* Tell layout to trash the current document.
*/
extern void
ET_lo_DiscardDocument(MWContext * pContext);
/*
* Tell layout to prepare a layer for writing.
*/
extern Bool
ET_lo_PrepareLayerForWriting(MWContext *context, int32 layer_id,
const char *referer);
/*
* Return a copy of the current history element. Caller must free
*/
extern History_entry *
ET_shist_GetCurrent(MWContext * pContext);
/*
* Return the current security status.
*/
extern int
ET_GetSecurityStatus(MWContext * pContext);
/*
* Make sure Mocha/Java glue is ready. Returns the same return code as
* LM_InitMoja.
*/
extern int
ET_InitMoja(MWContext * pContext);
/*
* Pack up toys and go home
*/
extern void
ET_FinishMocha(void);
/*
* Used to call a stream completion function in the mozilla
* thread
*/
extern void
ET_moz_CallFunction(ETVoidPtrFunc fn, void * data);
extern void
ET_moz_CallFunctionAsync(ETVoidPtrFunc fn, void * data);
extern PRBool
ET_moz_CallFunctionBool(ETBoolPtrFunc fn, void * data);
extern int32
ET_moz_CallFunctionInt(ETIntPtrFunc fn, void * data);
extern char *
ET_moz_CallFunctionString(ETStringPtrFunc fn, void * data);
extern void
ET_moz_CallAsyncAndSubEventLoop(ETVoidPtrFunc fn, void *data,
MWContext *context);
extern void
ET_moz_Abort(MKStreamAbortFunc fn, void * data, int status);
extern void
ET_moz_SetMochaWriteStream(MochaDecoder * decoder);
extern NET_StreamClass *
ET_moz_DocCacheConverter(MWContext * context, URL_Struct * pUrl,
char * wysiwyg_url, int32 layer_id);
extern PRBool
ET_moz_VerifyComponentFunction(ETVerifyComponentFunc fn, ETBoolPtrFunc *pActive_callback,
ETVoidPtrFunc *pStartup_callback);
extern void
ET_moz_CompSetterFunction(ETCompPropSetterFunc fn, char *name, void *data);
extern void *
ET_moz_CompGetterFunction(ETCompPropGetterFunc fn, char *name);
extern void *
ET_moz_CompMethodFunction(ETCompMethodFunc fn, int32 argc, JSCompArg *argv);
typedef enum {
CL_Move,
CL_MoveX,
CL_MoveY,
CL_Offset,
CL_Resize,
CL_SetBboxWidth,
CL_SetBboxHeight,
CL_SetBboxTop,
CL_SetBboxLeft,
CL_SetBboxBottom,
CL_SetBboxRight,
CL_SetHidden,
CL_MoveInZ,
CL_SetSrc,
CL_SetSrcWidth,
CL_SetZ,
CL_SetBgColor,
CL_SetBackdrop
} ETLayerOp;
extern int
ET_TweakLayer(MWContext * context, CL_Layer * layer, int32 x, int32 y,
void *param_ptr, int32 param_val, ETLayerOp op,
const char *referer, int32 doc_id);
extern void
ET_RestoreLayerState(MWContext *context, int32 layer_id,
LO_BlockInitializeStruct *param, ETRestoreAckFunc fn,
void *data);
extern int32
ET_npl_RefreshPluginList(MWContext* context, XP_Bool refreshInstances);
extern JSBool
ET_HandlePref(JSContext * cx, uint argc, jsval * argv, jsval * rval);
extern void
ET_SetPluginWindow(MWContext * pContext, void * app);
NSPR_END_EXTERN_C
#endif /* libevent_h___ */

File diff suppressed because it is too large Load Diff

View File

@@ -1,538 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* libmime.h --- external interface to libmime.a
Created: Jamie Zawinski <jwz@netscape.com>, 15-May-96.
*/
#ifndef _LIBMIME_H_
#define _LIBMIME_H_
#include "xp.h"
#ifndef MOZILLA_30
# define MIME_DRAFTS
#endif
/* Opaque object describing a block of message headers, and a couple of
routines for extracting data from one.
*/
typedef struct MimeHeaders
{
char *all_headers; /* A char* of the entire header section. */
int32 all_headers_fp; /* The length (it is not NULL-terminated.) */
int32 all_headers_size; /* The size of the allocated block. */
XP_Bool done_p; /* Whether we've read the end-of-headers marker
(the terminating blank line.) */
char **heads; /* An array of length n_headers which points
to the beginning of each distinct header:
just after the newline which terminated
the previous one. This is to speed search.
This is not initialized until all the
headers have been read.
*/
int32 heads_size; /* The length (and consequently, how many
distinct headers are in here.) */
char *obuffer; /* This buffer is used for output. */
int32 obuffer_size;
int32 obuffer_fp;
char *munged_subject; /* What a hack. This is a place to write down
the subject header, after it's been
charset-ified and stuff. Remembered so that
we can later use it to generate the
<TITLE> tag. */
} MimeHeaders;
typedef struct MimeDisplayOptions MimeDisplayOptions;
typedef struct MimeParseStateObject MimeParseStateObject;
#ifndef MOZILLA_30
typedef struct MSG_AttachmentData MSG_AttachmentData;
#endif
XP_BEGIN_PROTOS
/* Given the name of a header, returns the contents of that header as
a newly-allocated string (which the caller must free.) If the header
is not present, or has no contents, NULL is returned.
If `strip_p' is TRUE, then the data returned will be the first token
of the header; else it will be the full text of the header. (This is
useful for getting just "text/plain" from "text/plain; name=foo".)
If `all_p' is FALSE, then the first header encountered is used, and
any subsequent headers of the same name are ignored. If TRUE, then
all headers of the same name are appended together (this is useful
for gathering up all CC headers into one, for example.)
*/
extern char *MimeHeaders_get(MimeHeaders *hdrs,
const char *header_name,
XP_Bool strip_p,
XP_Bool all_p);
/* Given a header of the form of the MIME "Content-" headers, extracts a
named parameter from it, if it exists. For example,
MimeHeaders_get_parameter("text/plain; charset=us-ascii", "charset")
would return "us-ascii".
Returns NULL if there is no match, or if there is an allocation failure.
*/
extern char *MimeHeaders_get_parameter (const char *header_value,
const char *parm_name);
extern MimeHeaders *MimeHeaders_copy (MimeHeaders *srcHeaders);
extern void MimeHeaders_free (MimeHeaders *hdrs);
/* Some defines for various standard header field names.
*/
#define HEADER_BCC "BCC"
#define HEADER_CC "CC"
#define HEADER_CONTENT_BASE "Content-Base"
#define HEADER_CONTENT_DESCRIPTION "Content-Description"
#define HEADER_CONTENT_DISPOSITION "Content-Disposition"
#define HEADER_CONTENT_ENCODING "Content-Encoding"
#define HEADER_CONTENT_LENGTH "Content-Length"
#define HEADER_CONTENT_NAME "Content-Name"
#define HEADER_CONTENT_TRANSFER_ENCODING "Content-Transfer-Encoding"
#define HEADER_CONTENT_TYPE "Content-Type"
#define HEADER_DATE "Date"
#define HEADER_DISTRIBUTION "Distribution"
#define HEADER_FCC "FCC"
#define HEADER_FOLLOWUP_TO "Followup-To"
#define HEADER_FROM "From"
#define HEADER_LINES "Lines"
#define HEADER_MESSAGE_ID "Message-ID"
#define HEADER_MIME_VERSION "MIME-Version"
#define HEADER_NEWSGROUPS "Newsgroups"
#define HEADER_ORGANIZATION "Organization"
#define HEADER_REFERENCES "References"
#define HEADER_REPLY_TO "Reply-To"
#define HEADER_RESENT_COMMENTS "Resent-Comments"
#define HEADER_RESENT_DATE "Resent-Date"
#define HEADER_RESENT_FROM "Resent-From"
#define HEADER_RESENT_MESSAGE_ID "Resent-Message-ID"
#define HEADER_RESENT_SENDER "Resent-Sender"
#define HEADER_RESENT_TO "Resent-To"
#define HEADER_RESENT_CC "Resent-CC"
#define HEADER_SENDER "Sender"
#define HEADER_SUBJECT "Subject"
#define HEADER_TO "To"
#define HEADER_X_MAILER "X-Mailer"
#define HEADER_X_NEWSREADER "X-Newsreader"
#define HEADER_X_POSTING_SOFTWARE "X-Posting-Software"
#define HEADER_X_MOZILLA_STATUS "X-Mozilla-Status"
#define HEADER_X_MOZILLA_NEWSHOST "X-Mozilla-News-Host"
#define HEADER_X_MOZILLA_DRAFT_INFO "X-Mozilla-Draft-Info"
#define HEADER_X_UIDL "X-UIDL"
#define HEADER_XREF "XREF"
#define HEADER_X_SUN_CHARSET "X-Sun-Charset"
#define HEADER_X_SUN_CONTENT_LENGTH "X-Sun-Content-Length"
#define HEADER_X_SUN_CONTENT_LINES "X-Sun-Content-Lines"
#define HEADER_X_SUN_DATA_DESCRIPTION "X-Sun-Data-Description"
#define HEADER_X_SUN_DATA_NAME "X-Sun-Data-Name"
#define HEADER_X_SUN_DATA_TYPE "X-Sun-Data-Type"
#define HEADER_X_SUN_ENCODING_INFO "X-Sun-Encoding-Info"
#define HEADER_X_PRIORITY "X-Priority"
#define HEADER_PARM_BOUNDARY "BOUNDARY"
#define HEADER_PARM_FILENAME "FILENAME"
#define HEADER_PARM_NAME "NAME"
#define HEADER_PARM_TYPE "TYPE"
typedef enum {
MimeHeadersAll, /* Show all headers */
MimeHeadersSome, /* Show all "interesting" headers */
MimeHeadersSomeNoRef, /* Same, but suppress the `References' header
(for when we're printing this message.) */
MimeHeadersMicro, /* Show a one-line header summary */
MimeHeadersMicroPlus, /* Same, but show the full recipient list as
well (To, CC, etc.) */
MimeHeadersCitation /* A one-line summary geared toward use in a
reply citation ("So-and-so wrote:") */
} MimeHeadersState;
/* The signature for various callbacks in the MimeDisplayOptions structure.
*/
typedef char *(*MimeHTMLGeneratorFunction) (const char *data, void *closure,
MimeHeaders *headers);
struct MimeDisplayOptions
{
const char *url; /* Base URL for the document. This string should
be freed by the caller, after the parser
completes (possibly at the same time as the
MimeDisplayOptions itself.) */
#ifndef MOZILLA_30
MSG_Pane* pane; /* The libmsg pane object that corresponds to
what we're showing. This is used by very
little... */
#endif /* !MOZILLA_30 */
MimeHeadersState headers; /* How headers should be displayed. */
XP_Bool fancy_headers_p; /* Whether to do clever formatting of headers
using tables, instead of spaces. */
#ifndef MOZILLA_30
XP_Bool output_vcard_buttons_p; /* Whether to output the buttons */
/* on vcards. */
#endif /* !MOZILLA_30 */
XP_Bool fancy_links_p; /* Whether to insert fancy links, so you can
do things like click on an email address to
add it to your address book. Something you
don't want to do while printing. */
XP_Bool variable_width_plaintext_p; /* Whether text/plain messages should
be in variable width, or fixed. */
XP_Bool wrap_long_lines_p; /* Whether to wrap long lines in text/plain
messages. */
XP_Bool rot13_p; /* Whether text/plain parts should be rotated
Set by "?rot13=true" */
XP_Bool no_inline_p; /* Whether inline display of attachments should
be suppressed. Set by "?inline=false" */
char *part_to_load; /* The particular part of the multipart which
we are extracting. Set by "?part=3.2.4" */
XP_Bool write_html_p; /* Whether the output should be HTML, or raw. */
XP_Bool decrypt_p; /* Whether all traces of encryption should be
eradicated -- this is only meaningful when
write_html_p is FALSE; we set this when
attaching a message for forwarding, since
forwarding someone else a message that wasn't
encrypted for them doesn't work. We have to
decrypt it before sending it.
*/
#ifndef MOZILLA_30
XP_Bool nice_html_only_p; /* If TRUE, then we only should write html if
it's pretty HTML (stuff that we're willing
to get shipped out in mail messages). If we
can't generate nice stuff for some part,
then don't say anything at all. */
XP_Bool dont_touch_citations_p; /* If TRUE, then we should leave citations
alone in plaintext parts. If FALSE, then
go ahead and tweak the fonts according
to preferences. */
#endif /* !MOZILLA_30 */
char *default_charset; /* If this is non-NULL, then it is the charset to
assume when no other one is specified via a
`charset' parameter.
*/
char *override_charset; /* If this is non-NULL, then we will assume that
all data is in this charset, regardless of what
the `charset' parameter of that part says.
This overrides `default_charset' as well.
(This is to cope with the fact that, in the
real world, many messages are mislabelled with
the wrong charset.)
*/
/* =======================================================================
Stream-related callbacks; for these functions, the `closure' argument
is what is found in `options->stream_closure'. (One possible exception
is for output_fn; see "output_closure" below.)
*/
void *stream_closure;
/* For setting up the display stream, so that the MIME parser can inform
the caller of the type of the data it will be getting. */
int (*output_init_fn) (const char *type,
const char *charset,
const char *name,
const char *x_mac_type,
const char *x_mac_creator,
void *stream_closure);
/* How the MIME parser feeds its output (HTML or raw) back to the caller. */
int (*output_fn) (char *buf, int32 size, void *closure);
/* Closure to pass to the above output_fn. If NULL, then the
stream_closure is used. */
void *output_closure;
/* A callback used to encapsulate an HTML section and to reset the
HTML parser to its default state at the end of a section.
start_p indicates whether this is being called just before the
start or immediately after the end of the encapsulated HTML.
layer_encapsulate_p indicates whether or not to put special
ILAYER container tags around the HTML -- Also, when start_p is
FALSE, this function should close off any tags we've left open,
reset the font size and face, etc. This may be called multiple
times -- in particular, it will be called at the end of each
message part which might contain human-generated (and thus
arbitrarily buggy) markup. The `abort_p' argument specifies
whether it's ok for data to be discarded.
*/
int (*set_html_state_fn) (void *stream_closure,
XP_Bool layer_encapsulate_p,
XP_Bool start_p,
XP_Bool abort_p);
/* A hook for the caller to perform charset-conversion before HTML is
returned. Each set of characters which originated in a mail message
(body or headers) will be run through this filter before being converted
into HTML. (This should return bytes which may appear in an HTML file,
ie, we must be able to scan through the string to search for "<" and
turn it in to "&lt;", and so on.)
`input' is a non-NULL-terminated string of a single line from the message.
`input_length' is how long it is.
`input_charset' is a string representing the charset of this string (as
specified by MIME headers.)
`output_charset' is the charset to which conversion is desired.
`output_ret' is where a newly-malloced string is returned. It may be
NULL if no translation is needed.
`output_size_ret' is how long the returned string is (it need not be
NULL-terminated.).
*/
int (*charset_conversion_fn) (const char *input_line, int32 input_length,
const char *input_charset,
const char *output_charset,
char **output_ret, int32 *output_size_ret,
void *stream_closure);
/* A hook for the caller to perform both charset-conversion and decoding of
MIME-2 header fields (using RFC-1522 encoding.) Arguments and returned
values are as for `charset_conversion_fn'.
*/
int (*rfc1522_conversion_fn) (const char *input_line, int32 input_length,
const char *input_charset,
const char *output_charset,
char **output_ret, int32 *output_size_ret,
void *stream_closure);
/* A hook for the caller to translate a time string into a prettier or more
compact or localized form. */
char *(*reformat_date_fn) (const char *old_date, void *stream_closure);
/* A hook for the caller to turn a file name into a content-type. */
char *(*file_type_fn) (const char *filename, void *stream_closure);
/* A hook for the caller to turn a content-type into descriptive text. */
char *(*type_description_fn) (const char *content_type,void *stream_closure);
/* A hook for the caller to turn a content-type into an image icon. */
char *(*type_icon_name_fn) (const char *content_type, void *stream_closure);
/* A hook by which the user may be prompted for a password by the security
library. (This is really of type `SECKEYGetPasswordKey'; see sec.h.) */
void *(*passwd_prompt_fn)(void *arg1, void *arg2);
void *passwd_prompt_fn_arg;
/* =======================================================================
Various callbacks; for all of these functions, the `closure' argument
is what is found in `html_closure'.
*/
void *html_closure;
/* For emitting some HTML before the start of the outermost message
(this is called before any HTML is written to layout.) */
MimeHTMLGeneratorFunction generate_header_html_fn;
/* For emitting some HTML after the outermost header block, but before
the body of the first message. */
MimeHTMLGeneratorFunction generate_post_header_html_fn;
/* For emitting some HTML at the very end (this is called after libmime
has written everything it's going to write.) */
MimeHTMLGeneratorFunction generate_footer_html_fn;
/* For turning a message ID into a loadable URL. */
MimeHTMLGeneratorFunction generate_reference_url_fn;
/* For turning a mail address into a mailto URL. */
MimeHTMLGeneratorFunction generate_mailto_url_fn;
/* For turning a newsgroup name into a news URL. */
MimeHTMLGeneratorFunction generate_news_url_fn;
/* =======================================================================
Callbacks to handle the backend-specific inlined image display
(internal-external-reconnect junk.) For `image_begin', the `closure'
argument is what is found in `stream_closure'; but for all of the
others, the `closure' argument is the data that `image_begin' returned.
*/
/* Begins processing an embedded image; the URL and content_type are of the
image itself. */
void *(*image_begin) (const char *image_url, const char *content_type,
void *stream_closure);
/* Stop processing an image. */
void (*image_end) (void *image_closure, int status);
/* Dump some raw image data down the stream. */
int (*image_write_buffer) (char *buf, int32 size, void *image_closure);
/* What HTML should be dumped out for this image. */
char *(*make_image_html) (void *image_closure);
/* =======================================================================
Other random opaque state.
*/
MimeParseStateObject *state; /* Some state used by libmime internals;
initialize this to 0 and leave it alone.
*/
#ifdef MIME_DRAFTS
/* =======================================================================
Mail Draft hooks -- 09-19-1996
*/
XP_Bool decompose_file_p; /* are we decomposing a mime msg
into separate files */
XP_Bool done_parsing_outer_headers; /* are we done parsing the outer message
headers; this is really useful when
we have multiple Message/RFC822
headers */
XP_Bool is_multipart_msg; /* are we decomposing a multipart
message */
int decompose_init_count; /* used for non multipart message only
*/
XP_Bool signed_p; /* to tell draft this is a signed
message */
/* Callback to gather the outer most headers so we could use the
information to initialize the addressing/subject/newsgroups fields
for the composition window. */
int (*decompose_headers_info_fn) (void *closure,
MimeHeaders *headers);
/* Callbacks to create temporary files for drafts attachments. */
int (*decompose_file_init_fn) (void *stream_closure,
MimeHeaders *headers );
int (*decompose_file_output_fn) (char *buf, int32 size,
void *stream_closure);
int (*decompose_file_close_fn) (void *stream_closure);
#endif /* MIME_DRAFTS */
int32 attachment_icon_layer_id; /* Hackhackhack. This is zero if we have
not yet emitted the attachment layer
stuff. If we have, then this is the
id number for that layer, which is a
unique random number every time, to keep
evil people from writing javascript code
to hack it. */
};
/* Mozilla-specific interfaces
*/
/* Given a URL, this might return a better suggested name to save it as.
When you have a URL, you can sometimes get a suggested name from
URL_s->content_name, but if you're saving a URL to disk before the
URL_Struct has been filled in by netlib, you don't have that yet.
So if you're about to prompt for a file name *before* you call FE_GetURL
with a format_out of FO_SAVE_AS, call this function first to see if it
can offer you advice about what the suggested name for that URL should be.
(This works by looking in a cache of recently-displayed MIME objects, and
seeing if this URL matches. If it does, the remembered content-name will
be used.)
*/
extern char *MimeGuessURLContentName(MWContext *context, const char *url);
/* Given a URL, return the content type for the mime part, if the passed context
recently parsed a message containing the part specified by the URL.
This is used to figure out if we need to open the url in a browser window,
or if we're just going to do a save as, anyay.
*/
extern char *MimeGetURLContentType(MWContext *context, const char *url);
/* Determines whether the given context is currently showing a text/html
message. (Used by libmsg to determine if replys should bring up the
text/html editor. */
extern XP_Bool MimeShowingTextHtml(MWContext* context);
/* Yeech, hack... Determine the URL to use to save just the HTML part of the
currently-displayed message to disk. If the current message doesn't have
a text/html part, returns NULL. Otherwise, the caller must free the
returned string using XP_FREE(). */
extern char* MimeGetHtmlPartURL(MWContext* context);
/* Return how many attachments are in the currently-displayed message. */
extern int MimeGetAttachmentCount(MWContext* context);
/* Returns what attachments are being viewed in the currently-displayed
message. The returned data must be free'd using
MimeFreeAttachmentList(). */
extern int MimeGetAttachmentList(MWContext* context,
MSG_AttachmentData** data);
extern void MimeFreeAttachmentList(MSG_AttachmentData* data);
/* Call this when destroying a context; this frees up some memory.
*/
extern void MimeDestroyContextData(MWContext *context);
/* After a message has been fully displayed (the document has finished
loading) FEs call this with a Mail or News window to determine how
the "security" toolbar button should be rendered.
The first two values are whether it was an encrypted and/or signed
message; the second two are whether it was *valid*.
*/
extern void MIME_GetMessageCryptoState(MWContext *context,
XP_Bool *signed_return,
XP_Bool *encrypted_return,
XP_Bool *signed_ok_return,
XP_Bool *encrypted_ok_return);
#ifndef MOZILLA_30
/* Used only by libnet, this indicates that the user bonked on the "show me
details about attachments" button. */
extern int MIME_DisplayAttachmentPane(MWContext* context);
#endif /* MOZILLA_30 */
XP_END_PROTOS
#endif /* _LIBMIME_H_ */

View File

@@ -1,543 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* Header file for Mocha in the Navigator (libmocha).
*/
#ifndef libmocha_h___
#define libmocha_h___
#include "ntypes.h"
#include "il_types.h"
#include "prtypes.h"
#include "plhash.h"
#include "prthread.h"
#include "jsapi.h"
/* enable JavaScript Debugger support */
#if defined (_WIN32) || defined(XP_UNIX) || defined(powerc) || defined(__powerc) || defined(XP_OS2)
#ifdef JAVA
#define JSDEBUGGER 1
#endif
#endif
NSPR_BEGIN_EXTERN_C
typedef struct JSTimeout JSTimeout;
typedef struct JSPrincipalsList JSPrincipalsList;
typedef struct JSNestingUrl JSNestingUrl;
/*
* There exists one MochaDecoder per top-level MWContext that decodes Mocha,
* either from an HTML page or from a "mocha:[expr]" URL.
*/
typedef struct MochaDecoder {
int32 forw_count; /* forward reference count */
int32 back_count; /* back (up the tree) count */
JSContext *js_context;
MWContext *window_context;
JSObject *window_object;
NET_StreamClass *stream;
int32 stream_owner; /* id of layer that's loading the stream */
URL_Struct *url_struct;
JSTimeout *timeouts;
JSTimeout *saved_timeouts;
uint16 signature_ordinal;
PRPackedBool replace_location;
PRPackedBool resize_reload;
PRPackedBool load_event_sent;
PRPackedBool visited;
PRPackedBool writing_input;
PRPackedBool free_stream_on_close;
PRPackedBool in_window_quota;
PRPackedBool called_win_close;
PRPackedBool principals_compromised;
const char *source_url;
JSNestingUrl *nesting_url;
uint32 error_count;
uint32 event_mask;
int32 active_layer_id;
uint32 active_form_id;
uint32 event_bit;
int32 doc_id;
/*
* Class prototype objects, in alphabetical order. Must be CLEARed (set
* to null) in LM_PutMochaDecoder, HELD (GC roots added) in lm_NewWindow,
* and DROPped (removed as GC roots) in lm_DestroyWindow.
* XXXbe clean up, clear via bzero, using a sub-structure.
*/
JSObject *anchor_prototype;
JSObject *bar_prototype;
JSObject *document_prototype;
JSObject *event_prototype;
JSObject *event_capturer_prototype;
JSObject *event_receiver_prototype;
JSObject *form_prototype;
JSObject *image_prototype;
JSObject *input_prototype;
JSObject *layer_prototype;
JSObject *option_prototype;
JSObject *rect_prototype;
JSObject *url_prototype;
/*
* Window sub-objects. These must also follow the CLEAR/HOLD/DROP
* protocol mentioned above.
*/
JSObject *document;
JSObject *history;
JSObject *location;
JSObject *navigator;
JSObject *components;
JSObject *screen;
JSObject *hardware;
JSObject *crypto;
JSObject *pkcs11;
/*
* Ad-hoc GC roots.
*/
JSObject *event_receiver;
JSObject *opener;
JSVersion firstVersion; /* First JS script tag version. */
/*
* Security info for all of this decoder's scripts, except those
* contained in layers.
*/
JSPrincipals *principals;
JSPrincipalsList*early_access_list;
IL_GroupContext *image_context; /* Image context for anonymous images */
/*
* Table that maintains an id to JS object mapping for reflected
* elements. This is used during resize to reestablish the connection
* between layout elements and their corresponding JS object.
* Form elements are special, since they can't use the same keying
*/
PRHashTable *id_to_object_map;
} MochaDecoder;
/*
* Number of buckets for the id-to-object hash table.
*/
#define LM_ID_TO_OBJ_MAP_SIZE 20
#define LM_FORM_ELEMENT_MAP_SIZE 10
/*
* Types of objects reflected into Mocha
*/
typedef enum {
LM_APPLETS = 0,
LM_FORMS,
LM_LINKS,
LM_NAMEDANCHORS,
LM_EMBEDS,
LM_IMAGES,
LM_FORMELEMENTS,
LM_LAYERS
} ReflectedObject;
/*
* Generates an id-to-object mapping key from the ReflectedObject
* type, the containing layer id and the id of the object itself.
* The key is 4 bits type, 14 bits layer_id and 14 bits id.
*/
#define LM_GET_MAPPING_KEY(obj_type, layer_id, id) \
(void *)(((((uint32)obj_type) << 28) & 0xF0000000UL) | \
((((uint32)layer_id) << 14) & 0x0FFFC000UL) | \
(((uint32)id) & 0x00003FFFUL))
/*
* Public, well-known string constants.
*/
extern char js_language_name[]; /* "JavaScript" */
extern char js_content_type[]; /* "application/x-javascript" */
/*
* Initialize and finalize Mocha-in-the-client.
*/
extern void LM_InitMocha(void);
extern void LM_FinishMocha(void);
/*
* Force mocha on in the given context, even if the user pref is set to
* disable mocha.
*/
extern void LM_ForceJSEnabled(MWContext *cx);
/*
* Initialize and finalize Mocha-Java connection
*/
#define LM_MOJA_UNINITIALIZED 0
#define LM_MOJA_OK 1
#define LM_MOJA_JAVA_FAILED 2
#define LM_MOJA_OUT_OF_MEMORY 3
extern int LM_InitMoja(void);
extern void LM_FinishMoja(void);
extern int LM_IsMojaInitialized(void);
/*
* Enter or leave the big mocha lock. Any thread which wants to
* preserve JavaScript run-to-completion semantics must bracket
* JavaScript evaluation with these calls.
*/
typedef void
(PR_CALLBACK *JSLockReleaseFunc)(void * data);
extern void PR_CALLBACK LM_LockJS(void);
extern void PR_CALLBACK LM_UnlockJS(void);
extern JSBool PR_CALLBACK LM_AttemptLockJS(JSLockReleaseFunc fn, void * data);
extern JSBool PR_CALLBACK LM_ClearAttemptLockJS(JSLockReleaseFunc fn, void * data);
extern PRBool PR_CALLBACK
LM_HandOffJSLock(PRThread * oldOwner, PRThread *newOwner);
/*
* For interruption purposes we will sometimes need to know the
* context who is holding the JS lock
*/
extern void LM_JSLockSetContext(MWContext * context);
extern MWContext * LM_JSLockGetContext(void);
/*
* Enable/disable for Mocha-in-the-client.
*/
#define LM_SwitchMocha(toggle) LM_SetMochaEnabled(toggle)
extern JSBool
LM_GetMochaEnabled(void);
/*
* Get (create if necessary) a MochaDecoder for context, adding a reference
* to its window_object. Put drops the reference, destroying window_object
* when the count reaches zero. These functions should only be called in
* the mocha thread or while holding the JS-lock
*/
extern MochaDecoder *
LM_GetMochaDecoder(MWContext *context);
extern void
LM_PutMochaDecoder(MochaDecoder *decoder);
/*
* Get the source URL for script being loaded by document. This URL will be
* the document's URL for inline script, or the SRC= URL for included script.
* The returned pointer is safe only within the extent of the function that
* calls LM_GetSourceURL().
*/
extern const char *
LM_GetSourceURL(MochaDecoder *decoder);
/*
* Set the current layer and hence the current scope for script evaluation.
*/
extern void
LM_SetActiveLayer(MWContext * context, int32 layer_id);
/*
* Get the current layer and hence the current scope for script evaluation.
*/
extern int32
LM_GetActiveLayer(MWContext * context);
/*
* Evaluate the contents of a SCRIPT tag. You can specify the JSObject
* to use as the base scope. Pass NULL to use the default window_object
*/
extern JSBool
LM_EvaluateBuffer(MochaDecoder *decoder, void *base, size_t length,
uint lineno, char * scope_to, struct JSPrincipals *principals,
JSBool unicode, jsval *result);
/*
* Evaluate an expression entity in an HTML attribute (WIDTH="&{height/2};").
* Returns null on error, otherwise a pointer to the malloc'd string result.
* The caller is responsible for freeing the string result.
*/
extern char *
LM_EvaluateAttribute(MWContext *context, char *expr, uint lineno);
/*
* Remove any MochaDecoder window_context pointer to an MWContext that's
* being destroyed.
*/
extern void
LM_RemoveWindowContext(MWContext *context, History_entry * he);
extern void
LM_DropSavedWindow(MWContext *context, void *window);
/*
* Set and clear the HTML stream and URL for the MochaDecoder
* associated with the given context
*/
extern JSBool
LM_SetDecoderStream(MWContext * context, NET_StreamClass *stream,
URL_Struct *url_struct, JSBool free_stream_on_close);
/*
* Start caching HTML or plain text generated by document.write() where the
* script is running on mc, the document is being generated into decoder's
* window, and url_struct tells about the generator.
*/
extern NET_StreamClass *
LM_WysiwygCacheConverter(MWContext *context, URL_Struct *url_struct,
const char * wysiwyg_url, const char * base_href);
/*
* Skip over the "wysiwyg://docid/" in url_string and return a pointer to the
* real URL hidden after the prefix. If url_string is not of "wysiwyg:" type,
* just return url_string. Never returns null.
*/
extern const char *
LM_StripWysiwygURLPrefix(const char *url_string);
/*
* This function works only on "wysiwyg:" type URLs -- don't call it unless
* you know that NET_URL_Type(url_string) is WYSIWYG_TYPE_URL. It'll return
* null if url_string seems too short, or if it can't find the third slash.
*/
extern const char *
LM_SkipWysiwygURLPrefix(const char *url_string);
/*
* Return a pointer to a malloc'd string of the form "<BASE HREF=...>" where
* the "..." URL is the directory of cx's origin URL. Such a base URL is the
* default base for relative URLs in generated HTML.
*/
extern char *
LM_GetBaseHrefTag(JSContext *cx, JSPrincipals *principals);
/*
* XXX Make these public LO_... typedefs in lo_ele.h/ntypes.h?
*/
struct lo_FormData_struct;
struct lo_NameList_struct;
extern struct lo_FormData_struct *
LO_GetFormDataByID(MWContext *context, int32 layer_id, intn form_id);
extern uint
LO_EnumerateForms(MWContext *context, int32 layer_id);
extern struct LO_ImageStruct_struct *
LO_GetImageByIndex(MWContext *context, int32 layer_id, intn image_id);
extern uint
LO_EnumerateImages(MWContext *context, int32 layer_id);
/*
* Reflect display layers into Mocha.
*/
extern JSObject *
LM_ReflectLayer(MWContext *context, int32 layer_id, int32 parent_layer_id,
PA_Tag *tag);
extern LO_FormElementStruct *
LO_GetFormElementByIndex(struct lo_FormData_struct *form_data, int32 index);
extern uint
LO_EnumerateFormElements(MWContext *context,
struct lo_FormData_struct *form_data);
/*
* Layout helper function to find a named anchor by its index in the
* document.anchors[] array.
*/
extern struct lo_NameList_struct *
LO_GetNamedAnchorByIndex(MWContext *context, int32 layer_id, uint index);
extern uint
LO_EnumerateNamedAnchors(MWContext *context, int32 layer_id);
/*
* Layout Mocha helper function to find an HREF Anchor by its index in the
* document.links[] array.
*/
extern LO_AnchorData *
LO_GetLinkByIndex(MWContext *context, int32 layer_id, uint index);
extern uint
LO_EnumerateLinks(MWContext *context, int32 layer_id);
extern LO_JavaAppStruct *
LO_GetAppletByIndex(MWContext *context, int32 layer_id, uint index);
extern uint
LO_EnumerateApplets(MWContext *context, int32 layer_id);
extern LO_EmbedStruct *
LO_GetEmbedByIndex(MWContext *context, int32 layer_id, uint index);
extern uint
LO_EnumerateEmbeds(MWContext *context, int32 layer_id);
/*
* Get and set a color attribute in the current document state.
*/
extern void
LO_GetDocumentColor(MWContext *context, int type, LO_Color *color);
extern void
LO_SetDocumentColor(MWContext *context, int type, LO_Color *color);
/*
* Layout function to reallocate the lo_FormElementOptionData array pointed at
* by lo_FormElementSelectData's options member to include space for the number
* of options given by selectData->option_cnt.
*/
extern XP_Bool
LO_ResizeSelectOptions(lo_FormElementSelectData *selectData);
/*
* Discard the current document and all its subsidiary objects.
*/
extern void
LM_ReleaseDocument(MWContext *context, JSBool resize_reload);
/*
* Search if a the event is being captured in the frame hierarchy.
*/
extern XP_Bool
LM_EventCaptureCheck(MWContext *context, uint32 current_event);
/*
* Scroll a window to the given point.
*/
extern void LM_SendOnScroll(MWContext *context, int32 x, int32 y);
/*
* Display a help topic.
*/
extern void LM_SendOnHelp(MWContext *context);
/*
* Send a load or abort event for an image to a callback.
*/
typedef enum LM_ImageEvent {
LM_IMGUNBLOCK = 0,
LM_IMGLOAD = 1,
LM_IMGABORT = 2,
LM_IMGERROR = 3,
LM_LASTEVENT = 3
} LM_ImageEvent;
extern void
LM_ProcessImageEvent(MWContext *context, LO_ImageStruct *image_data,
LM_ImageEvent event);
/* This should be called when a named anchor is located. */
extern JSBool
LM_SendOnLocate(MWContext *context, struct lo_NameList_struct *name_rec);
extern JSObject *
LM_ReflectApplet(MWContext *context, LO_JavaAppStruct *applet_data,
PA_Tag * tag, int32 layer_id, uint index);
extern JSObject *
LM_ReflectEmbed(MWContext *context, LO_EmbedStruct *lo_embed,
PA_Tag * tag, int32 layer_id, uint index);
struct lo_FormData_struct;
struct lo_NameList_struct;
extern JSObject *
LM_ReflectForm(MWContext *context, struct lo_FormData_struct *form_data,
PA_Tag * tag, int32 layer_id, uint index);
extern JSObject *
LM_ReflectFormElement(MWContext *context, int32 layer_id, int32 form_id,
int32 element_id, PA_Tag * tag);
extern JSObject *
LM_ReflectLink(MWContext *context, LO_AnchorData *anchor_data, PA_Tag * tag,
int32 layer_id, uint index);
extern JSObject *
LM_ReflectNamedAnchor(MWContext *context, struct lo_NameList_struct *name_rec,
PA_Tag * tag, int32 layer_id, uint index);
extern JSObject *
LM_ReflectImage(MWContext *context, LO_ImageStruct *image_data,
PA_Tag * tag, int32 layer_id, uint index);
extern JSBool
LM_CanDoJS(MWContext *context);
extern JSBool
LM_IsActive(MWContext *context);
/*
* Security.
*/
extern JSPrincipals *
LM_NewJSPrincipals(URL_Struct *archive, char *name, const char *codebase);
extern char *
LM_ExtractFromPrincipalsArchive(JSPrincipals *principals, char *name,
uint *length);
extern JSBool
LM_SetUntransformedSource(JSPrincipals *principals, char *original,
char *transformed);
extern JSPrincipals * PR_CALLBACK
LM_GetJSPrincipalsFromJavaCaller(JSContext *cx, int callerDepth);
/*
* LM_RegisterPrincipals will verify and register a set of principals
* in the decoder, modifying decoder->principals in the process. It
* returns the modified decoder.
*
* The "name" parameter may be NULL if "principals" was created with a name.
*/
extern JSPrincipals *
LM_RegisterPrincipals(MochaDecoder *decoder, JSPrincipals *principals,
char *name, char *src);
/*
* JavaScript Debugger support
*/
#ifdef JSDEBUGGER
extern NET_StreamClass*
LM_StreamBuilder( int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *mwcontext );
extern JSBool
LM_GetJSDebugActive(void);
extern void
LM_JamSourceIntoJSDebug( const char *filename,
const char *str,
int32 len,
MWContext *mwcontext );
#endif
NSPR_END_EXTERN_C
#endif /* libmocha_h___ */

View File

@@ -1,29 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*-----------------------------------------------------------------------------
Collection of all the public libnet functions
-----------------------------------------------------------------------------*/
#ifndef _libnet_
#define _libnet_
#include "mkutils.h"
#include "mkstream.h"
#include "mkgeturl.h"
#endif /* _libnet_ */

View File

@@ -1,35 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* libstyle.h --- Exported style sheet routines */
#ifndef __LIBSTYLE_H_
#define __LIBSTYLE_H_
#include "xp_core.h"
#include "libmocha.h"
XP_BEGIN_PROTOS
extern JSBool
JSS_ResolveDocName(JSContext *mc, MWContext *context, JSObject *obj, jsval id);
XP_END_PROTOS
#endif /* __LIBSTYLE_H_ */

File diff suppressed because it is too large Load Diff

View File

@@ -1,93 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
** Mac_Convert_Stream.h
** --------------------
**
** The header file for the constructing functions of apple file
** encode/decode stream.
**
** 27sep95 mym created.
*/
#ifndef M_CVStrm_h
#define M_CVStrm_h
XP_BEGIN_PROTOS
PUBLIC NET_StreamClass *
fe_MakeBinHexEncodeStream (int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *window_id,
char* dst_filename);
PUBLIC NET_StreamClass *
fe_MakeBinHexDecodeStream (int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *window_id );
PUBLIC NET_StreamClass *
fe_MakeAppleDoubleDecodeStream (int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *window_id,
XP_Bool write_as_binhex,
char *dst_filename);
PUBLIC NET_StreamClass *
fe_MakeAppleSingleDecodeStream (int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *window_id,
XP_Bool write_as_binhex,
char *dst_filename);
#ifdef XP_MAC
PUBLIC NET_StreamClass *
fe_MakeAppleDoubleEncodeStream (int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *window_id,
char* src_filename,
char* dst_filename,
char* separator);
XP_Bool isMacFile(char* filename);
#endif
PUBLIC NET_StreamClass *
fe_MakeAppleDoubleDecodeStream_1 (int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *window_id);
PUBLIC NET_StreamClass *
fe_MakeAppleSingleDecodeStream_1 (int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *window_id);
XP_END_PROTOS
#endif

View File

@@ -1,56 +0,0 @@
#!gmake
#
# The contents of this file are subject to the Netscape Public License
# Version 1.0 (the "NPL"); you may not use this file except in
# compliance with the NPL. You may obtain a copy of the NPL at
# http://www.mozilla.org/NPL/
#
# Software distributed under the NPL is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
# for the specific language governing rights and limitations under the
# NPL.
#
# The Initial Developer of this code under the NPL is Netscape
# Communications Corporation. Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All Rights
# Reserved.
#//------------------------------------------------------------------------
#//
#// Makefile to install NSPR/INCLUDE header files into the distribution
#// directory.
#//
#//------------------------------------------------------------------------
#//------------------------------------------------------------------------
#//
#// Specify the depth of the current directory relative to the
#// root of NS
#//
#//------------------------------------------------------------------------
DEPTH = ..
#//------------------------------------------------------------------------
#//
#// Specify any "command" targets. (ie. DIRS, INSTALL_FILES, ...)
#// (these must come before the common makefiles are included)
#//
#// DIRS - There is a subdirectory to process
#// INSTALL_FILES - Files to be installed in the distribution area
#//
#//------------------------------------------------------------------------
#INSTALL_FILE_LIST=*.h
#INSTALL_DIR=$(XPDIST)\public\coreincl
#//------------------------------------------------------------------------
#//
#// Include the common makefile rules
#//
#//------------------------------------------------------------------------
include <$(DEPTH)/config/rules.mak>
#export:: INSTALL_FILES

View File

@@ -1,443 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*-
* Copyright (c) 1990, 1993, 1994
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)db.h 8.7 (Berkeley) 6/16/94
*/
#ifndef _DB_H_
#define _DB_H_
#include "prtypes.h"
#ifdef __sgi
#define BYTE_ORDER BIG_ENDIAN
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax, all NT risc */
#define __BIT_TYPES_DEFINED__
#endif
#ifdef __sun
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax, all NT risc */
#ifndef SVR4
/* compat.h is only in 4.1.3 machines. - dp */
#include <compat.h>
#endif
/* XXX - dp
* Need to find a general way of defining endian-ness in SunOS 5.3
* SunOS 5.4 defines _BIG_ENDIAN and _LITTLE_ENDIAN
* SunOS 5.3 does nothing like this.
*/
#ifndef BYTE_ORDER
#if defined(_BIG_ENDIAN)
#define BYTE_ORDER BIG_ENDIAN
#elif defined(_LITTLE_ENDIAN)
#define BYTE_ORDER LITTLE_ENDIAN
#elif !defined(SVR4)
/* 4.1.3 is always BIG_ENDIAN as it was released only on sparc platforms. */
#define BYTE_ORDER BIG_ENDIAN
#elif !defined(vax) && !defined(ntohl) && !defined(lint) && !defined(i386)
/* 5.3 big endian. Copied this above line from sys/byteorder.h */
/* Now we are in a 5.3 SunOS rather non 5.4 or above SunOS */
#define BYTE_ORDER BIG_ENDIAN
#else
#define BYTE_ORDER LITTLE_ENDIAN
#endif
#endif /* !BYTE_ORDER */
#endif /* __sun */
#ifdef __linux
# include <endian.h>
# ifndef BYTE_ORDER
# define BYTE_ORDER __BYTE_ORDER
# define BIG_ENDIAN __BIG_ENDIAN
# define LITTLE_ENDIAN __LITTLE_ENDIAN
# endif
#endif /* __linux */
#if defined(SCO) || defined(UNIXWARE) || defined(SNI) || defined(NCR) || defined(NEC)
#include <sys/types.h>
#include <sys/byteorder.h>
#endif
#ifdef SCO
#include <sys/bitypes.h>
#define MAXPATHLEN 1024
#endif
#ifdef SNI
#define BYTE_ORDER BIG_ENDIAN
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234
#endif
#ifdef NCR
#include <sys/endian.h>
#endif
#ifdef macintosh
#include <unix.h>
#endif
#ifndef macintosh
#include <fcntl.h>
#endif
#if defined(_WINDOWS) || defined(XP_OS2)
#include <stdio.h>
#include <io.h>
#include <limits.h>
#ifndef XP_OS2
#define MAXPATHLEN 1024
#else
#include "os2file.h" /* includes dirent.h */
#endif
#define EFTYPE EINVAL /* POSIX 1003.1 format errno. */
#ifndef STDERR_FILENO
#define STDIN_FILENO 0 /* ANSI C #defines */
#define STDOUT_FILENO 1
#define STDERR_FILENO 2
#endif
#ifndef O_ACCMODE /* POSIX 1003.1 access mode mask. */
#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR)
#endif
#ifdef BYTE_ORDER
#undef BYTE_ORDER
#endif
#define BYTE_ORDER LITTLE_ENDIAN
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax, all NT risc */
#define BIG_ENDIAN 4321
#endif
#if defined(_WINDOWS) && !defined(_WIN32)
/* 16 bit windows defines */
#define MAX_PAGE_NUMBER 0xffffffff /* >= # of pages in a file */
#endif
#ifdef macintosh
#include <stdio.h>
#include "xp_mcom.h"
#ifndef NSPR20
#include "prmacos.h"
#endif
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234
#define BYTE_ORDER BIG_ENDIAN
#define O_ACCMODE 3 /* Mask for file access modes */
#define EFTYPE 2000
XP_BEGIN_PROTOS
int mkstemp(const char *path);
XP_END_PROTOS
#endif /* MACINTOSH */
#if defined(XP_OS2)
#include <xp_mcom.h>
#include <pros2os.h>
XP_BEGIN_PROTOS
int mkstemp(char *path);
XP_END_PROTOS
#endif
#ifndef macintosh
#include <sys/types.h>
#endif
#if !defined(_WINDOWS) && !defined(macintosh) && !defined(XP_OS2)
#include <sys/stat.h>
#include <errno.h>
#endif
#include "cdefs.h"
#ifndef _WINDOWS /* included above to prevent spurious warnings chouck 12-Sep-95 */
#include <limits.h>
#endif
#ifndef MIN
#define MIN(x, y) (((x) < (y)) ? (x) : (y))
#endif
#ifndef MAX
#define MAX(x, y) (((x) > (y)) ? (x) : (y))
#endif
#define RET_ERROR -1 /* Return values. */
#define RET_SUCCESS 0
#define RET_SPECIAL 1
#if defined(__386BSD__) || defined(SCO)
#define __BIT_TYPES_DEFINED__
#endif
#define MAX_PAGE_NUMBER 0xffffffff /* >= # of pages in a file */
#ifndef __sgi
typedef uint32 pgno_t;
#endif
#define MAX_PAGE_OFFSET 65535 /* >= # of bytes in a page */
typedef uint16 indx_t;
#define MAX_REC_NUMBER 0xffffffff /* >= # of records in a tree */
typedef uint32 recno_t;
/* define EFTYPE since most don't */
#ifndef EFTYPE
#define EFTYPE EINVAL /* POSIX 1003.1 format errno. */
#endif
/* Key/data structure -- a Data-Base Thang. */
typedef struct {
void *data; /* data */
size_t size; /* data length */
} DBT;
/* Routine flags. */
#define R_CURSOR 1 /* del, put, seq */
#define __R_UNUSED 2 /* UNUSED */
#define R_FIRST 3 /* seq */
#define R_IAFTER 4 /* put (RECNO) */
#define R_IBEFORE 5 /* put (RECNO) */
#define R_LAST 6 /* seq (BTREE, RECNO) */
#define R_NEXT 7 /* seq */
#define R_NOOVERWRITE 8 /* put */
#define R_PREV 9 /* seq (BTREE, RECNO) */
#define R_SETCURSOR 10 /* put (RECNO) */
#define R_RECNOSYNC 11 /* sync (RECNO) */
typedef enum { DB_BTREE, DB_HASH, DB_RECNO } DBTYPE;
typedef enum { LockOutDatabase, UnlockDatabase } DBLockFlagEnum;
/*
* !!!
* The following flags are included in the dbopen(3) call as part of the
* open(2) flags. In order to avoid conflicts with the open flags, start
* at the top of the 16 or 32-bit number space and work our way down. If
* the open flags were significantly expanded in the future, it could be
* a problem. Wish I'd left another flags word in the dbopen call.
*
* !!!
* None of this stuff is implemented yet. The only reason that it's here
* is so that the access methods can skip copying the key/data pair when
* the DB_LOCK flag isn't set.
*/
#if UINT_MAX > 65535
#define DB_LOCK 0x20000000 /* Do locking. */
#define DB_SHMEM 0x40000000 /* Use shared memory. */
#define DB_TXN 0x80000000 /* Do transactions. */
#else
#define DB_LOCK 0x2000 /* Do locking. */
#define DB_SHMEM 0x4000 /* Use shared memory. */
#define DB_TXN 0x8000 /* Do transactions. */
#endif
/* Access method description structure. */
typedef struct __db {
DBTYPE type; /* Underlying db type. */
int (*close) (struct __db *);
int (*del) (const struct __db *, const DBT *, uint);
int (*get) (const struct __db *, const DBT *, DBT *, uint);
int (*put) (const struct __db *, DBT *, const DBT *, uint);
int (*seq) (const struct __db *, DBT *, DBT *, uint);
int (*sync) (const struct __db *, uint);
void *internal; /* Access method private. */
int (*fd) (const struct __db *);
} DB;
#define BTREEMAGIC 0x053162
#define BTREEVERSION 3
/* Structure used to pass parameters to the btree routines. */
typedef struct {
#define R_DUP 0x01 /* duplicate keys */
uint32 flags;
uint cachesize; /* bytes to cache */
int maxkeypage; /* maximum keys per page */
int minkeypage; /* minimum keys per page */
uint psize; /* page size */
int (*compare) /* comparison function */
(const DBT *, const DBT *);
size_t (*prefix) /* prefix function */
(const DBT *, const DBT *);
int lorder; /* byte order */
} BTREEINFO;
#define HASHMAGIC 0x061561
#define HASHVERSION 2
/* Structure used to pass parameters to the hashing routines. */
typedef struct {
uint bsize; /* bucket size */
uint ffactor; /* fill factor */
uint nelem; /* number of elements */
uint cachesize; /* bytes to cache */
uint32 /* hash function */
(*hash) (const void *, size_t);
int lorder; /* byte order */
} HASHINFO;
/* Structure used to pass parameters to the record routines. */
typedef struct {
#define R_FIXEDLEN 0x01 /* fixed-length records */
#define R_NOKEY 0x02 /* key not required */
#define R_SNAPSHOT 0x04 /* snapshot the input */
uint32 flags;
uint cachesize; /* bytes to cache */
uint psize; /* page size */
int lorder; /* byte order */
size_t reclen; /* record length (fixed-length records) */
uint8 bval; /* delimiting byte (variable-length records */
char *bfname; /* btree file name */
} RECNOINFO;
/* #ifdef __DBINTERFACE_PRIVATE */
/*
* Little endian <==> big endian 32-bit swap macros.
* M_32_SWAP swap a memory location
* P_32_SWAP swap a referenced memory location
* P_32_COPY swap from one location to another
*/
#define M_32_SWAP(a) { \
uint32 _tmp = a; \
((char *)&a)[0] = ((char *)&_tmp)[3]; \
((char *)&a)[1] = ((char *)&_tmp)[2]; \
((char *)&a)[2] = ((char *)&_tmp)[1]; \
((char *)&a)[3] = ((char *)&_tmp)[0]; \
}
#define P_32_SWAP(a) { \
uint32 _tmp = *(uint32 *)a; \
((char *)a)[0] = ((char *)&_tmp)[3]; \
((char *)a)[1] = ((char *)&_tmp)[2]; \
((char *)a)[2] = ((char *)&_tmp)[1]; \
((char *)a)[3] = ((char *)&_tmp)[0]; \
}
#define P_32_COPY(a, b) { \
((char *)&(b))[0] = ((char *)&(a))[3]; \
((char *)&(b))[1] = ((char *)&(a))[2]; \
((char *)&(b))[2] = ((char *)&(a))[1]; \
((char *)&(b))[3] = ((char *)&(a))[0]; \
}
/*
* Little endian <==> big endian 16-bit swap macros.
* M_16_SWAP swap a memory location
* P_16_SWAP swap a referenced memory location
* P_16_COPY swap from one location to another
*/
#define M_16_SWAP(a) { \
uint16 _tmp = a; \
((char *)&a)[0] = ((char *)&_tmp)[1]; \
((char *)&a)[1] = ((char *)&_tmp)[0]; \
}
#define P_16_SWAP(a) { \
uint16 _tmp = *(uint16 *)a; \
((char *)a)[0] = ((char *)&_tmp)[1]; \
((char *)a)[1] = ((char *)&_tmp)[0]; \
}
#define P_16_COPY(a, b) { \
((char *)&(b))[0] = ((char *)&(a))[1]; \
((char *)&(b))[1] = ((char *)&(a))[0]; \
}
/* #endif */
__BEGIN_DECLS
DB *dbopen (const char *, int, int, DBTYPE, const void *);
/* set or unset a global lock flag to disable the
* opening of any DBM file
*/
void dbSetOrClearDBLock(DBLockFlagEnum type);
/* #ifdef __DBINTERFACE_PRIVATE */
DB *__bt_open (const char *, int, int, const BTREEINFO *, int);
DB *__hash_open (const char *, int, int, const HASHINFO *, int);
DB *__rec_open (const char *, int, int, const RECNOINFO *, int);
void __dbpanic (DB *dbp);
/* #endif */
__END_DECLS
#if defined(linux) && !defined(MACLINUX)
/*
* Why you would want to override the system defines?
*/
#if BYTE_ORDER != LITTLE_ENDIAN
#define BYTE_ORDER LITTLE_ENDIAN
#endif
#endif
#if defined(__hpux) || defined(__hppa)
#define BYTE_ORDER BIG_ENDIAN
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax, all NT risc */
#endif
#if defined(AIXV3)
/* BYTE_ORDER, LITTLE_ENDIAN, BIG_ENDIAN are all defined here */
#include <sys/machine.h>
#endif
#ifdef __alpha
#include <endian.h>
#endif
#endif /* !_DB_H_ */

View File

@@ -1,94 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)ndbm.h 8.1 (Berkeley) 6/2/93
*/
#ifndef _NDBM_H_
#define _NDBM_H_
#include "mcom_db.h"
/* Map dbm interface onto db(3). */
#define DBM_RDONLY O_RDONLY
/* Flags to dbm_store(). */
#define DBM_INSERT 0
#define DBM_REPLACE 1
/*
* The db(3) support for ndbm(3) always appends this suffix to the
* file name to avoid overwriting the user's original database.
*/
#define DBM_SUFFIX ".db"
typedef struct {
char *dptr;
int dsize;
} datum;
typedef DB DBM;
#define dbm_pagfno(a) DBM_PAGFNO_NOT_AVAILABLE
__BEGIN_DECLS
void dbm_close (DBM *);
int dbm_delete (DBM *, datum);
datum dbm_fetch (DBM *, datum);
datum dbm_firstkey (DBM *);
long dbm_forder (DBM *, datum);
datum dbm_nextkey (DBM *);
DBM *dbm_open (const char *, int, int);
int dbm_store (DBM *, datum, datum, int);
int dbm_dirfno (DBM *);
__END_DECLS
#endif /* !_NDBM_H_ */

View File

@@ -1,115 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef MIME_H
#define MIME_H
#include "ntypes.h"
#include "mimeenc.h"
XP_BEGIN_PROTOS
extern PUBLIC const char *FE_UsersOrganization(void);
/* Returns the appropriate contents of a From: field of a mail message
originating from the current user. This calls FE_UsersFullName()
and FE_UsersMailAddress() and correctly munges the values, using
MSG_MakeFullAddress()
A new string is returned, which you must free when you're done with it.
*/
extern PUBLIC char *MIME_MakeFromField (void);
extern PUBLIC void MISC_ValidateSignature (MWContext *context,
const char *sig);
/* This does a very rough sanity-check on the return email address specified
in preferences, and pops up a dialog and returns negative if there is
something obviously wrong. MSG_ComposeMessage() calls this, and won't
let messages be composed until the problem is corrected. The FEs should
call this after preferences have been edited as well.
The address should be just the email address, not including the real name.
*/
extern PUBLIC int MISC_ValidateReturnAddress (MWContext *context,
const char *addr);
/* Convert a block of text to the MIME quoted-printable encoding.
Returns a new string and its size, or NULL if it couldn't allocate.
*/
extern PUBLIC void MIME_EncodeQuotedPrintableString(const unsigned char *input,
uint32 input_size,
unsigned char **output,
uint32 *output_size);
/* Convert a block of text to the MIME base64 encoding.
Returns a new string and its size, or NULL if it couldn't allocate.
*/
extern PUBLIC void MIME_EncodeBase64String(const unsigned char *input,
uint32 input_size,
unsigned char **output,
uint32 *output_size);
/* build a mailto: url address given a to field
*
* returns a malloc'd string
*/
extern char *
MIME_BuildMailtoURLAddress(const char * to);
/* build a news: url address to post to, given a partial news-post
* URL and the newsgroups line
*
* returns a malloc'd string
*/
extern char *
MIME_BuildNewspostURLAddress(const char *partial_newspost_url,
const char *newsgroups);
/* If the argument is true, we use quoted-printable encoding on mail and
news messages which have 8bit characters in them. Otherwise, we assume
that the mail and news transport will not strip the eighth bit (a bad
assumption.) */
extern void MIME_ConformToStandard (XP_Bool conform_p);
/* Generate headers for a form post to a mailto: URL.
This lets the URL specify additional headers, but is careful to
ignore headers which would be dangerous. It may modify the URL
(because of CC) so a new URL to actually post to is returned.
*/
extern int MIME_GenerateMailtoFormPostHeaders (const char *old_post_url,
const char *referer,
char **new_post_url_return,
char **headers_return);
extern NET_StreamClass *
NET_MimeMakePartialEncodingConverterStream (int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *window_id,
NET_StreamClass *next_stream);
extern int MIME_HasAttachments(MWContext *context);
XP_END_PROTOS
#endif /* mime.h */

View File

@@ -1,85 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* mimeenc.c --- MIME encoders and decoders, version 2 (see mimei.h)
Created: Jamie Zawinski <jwz@netscape.com>, 15-May-96.
*/
#ifndef _MIMEENC_H_
#define _MIMEENC_H_
#include "xp.h"
/* This file defines interfaces to generic implementations of Base64,
Quoted-Printable, and UU decoders; and of Base64 and Quoted-Printable
encoders.
*/
/* Opaque objects used by the encoder/decoder to store state. */
typedef struct MimeDecoderData MimeDecoderData;
typedef struct MimeEncoderData MimeEncoderData;
XP_BEGIN_PROTOS
/* functions for creating that opaque data.
*/
MimeDecoderData *MimeB64DecoderInit(int (*output_fn) (const char *buf,
int32 size,
void *closure),
void *closure);
MimeDecoderData *MimeQPDecoderInit (int (*output_fn) (const char *buf,
int32 size,
void *closure),
void *closure);
MimeDecoderData *MimeUUDecoderInit (int (*output_fn) (const char *buf,
int32 size,
void *closure),
void *closure);
MimeEncoderData *MimeB64EncoderInit(int (*output_fn) (const char *buf,
int32 size,
void *closure),
void *closure);
MimeEncoderData *MimeQPEncoderInit (int (*output_fn) (const char *buf,
int32 size,
void *closure),
void *closure);
MimeEncoderData *MimeUUEncoderInit (char *filename,
int (*output_fn) (const char *buf,
int32 size,
void *closure),
void *closure);
/* Push data through the encoder/decoder, causing the above-provided write_fn
to be called with encoded/decoded data. */
int MimeDecoderWrite (MimeDecoderData *data, const char *buffer, int32 size);
int MimeEncoderWrite (MimeEncoderData *data, const char *buffer, int32 size);
/* When you're done encoding/decoding, call this to free the data. If
abort_p is FALSE, then calling this may cause the write_fn to be called
one last time (as the last buffered data is flushed out.)
*/
int MimeDecoderDestroy(MimeDecoderData *data, XP_Bool abort_p);
int MimeEncoderDestroy(MimeEncoderData *data, XP_Bool abort_p);
XP_END_PROTOS
#endif /* _MIMEENC_H_ */

View File

@@ -1,123 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*******************************************************************************
* Mini Component Object Model
******************************************************************************/
#ifndef MINICOM_H
#define MINICOM_H
#ifdef __cplusplus
extern "C" {
#endif
/******************************************************************************/
#if defined(XP_PC) && !defined(XP_OS2)
#if defined(_WIN32)
#include "objbase.h"
#else
#include <windows.h>
#include "compobj.h"
#endif
#else /* !XP_PC or XP_OS2*/
#if defined(XP_OS2)
#define TID OS2TID /* global rename in OS2 H's! */
#include <os2.h>
#undef TID /* and restore */
#endif
typedef struct _GUID {
long Data1;
short Data2;
short Data3;
char Data4[8];
} GUID;
typedef GUID IID;
typedef GUID CLSID;
typedef IID* REFIID;
typedef GUID* REFGUID;
typedef CLSID* REFCLSID;
#ifdef __cplusplus
#define EXTERN_C extern "C"
#else
#define EXTERN_C
#endif /* cplusplus */
#ifndef INITGUID
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \
EXTERN_C const GUID name
#else
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \
EXTERN_C const GUID name \
= { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } }
#endif /* INITGUID */
#endif /* !XP_PC or XP_OS2*/
#define JRI_DEFINE_GUID(name, l, w1, w2) \
DEFINE_GUID(name, l, w1, w2, \
0xbb, 0x58, 0x00, 0x80, 0x5f, 0x74, 0x03, 0x79)
typedef long
(*MCOM_QueryInterface_t)(void* self, REFIID id, void* *result);
typedef long
(*MCOM_AddRef_t)(void* self);
typedef long
(*MCOM_Release_t)(void* self);
#if !defined(XP_PC) || defined(XP_OS2)
typedef struct IUnknown {
MCOM_QueryInterface_t QueryInterface;
MCOM_AddRef_t AddRef;
MCOM_Release_t Release;
} IUnknown;
#define IUnknown_QueryInterface(self, interfaceID, resultingInterface) \
(((*((IUnknown**)self))->QueryInterface)(self, interfaceID, resultingInterface))
#define IUnknown_AddRef(self) \
(((*((IUnknown**)self))->AddRef)(self))
#define IUnknown_Release(self) \
(((*((IUnknown**)self))->Release)(self))
#endif /* !XP_PC or XP_OS2*/
typedef long
(*MCOM_CreateInstance_t)(void* self, IUnknown* outer, REFIID interfaceID,
void** newInstance);
typedef long
(*MCOM_LockServer_t)(void* self, int doLock);
/******************************************************************************/
#ifdef __cplusplus
}
#endif
#endif /* MINICOM_H */
/******************************************************************************/

View File

@@ -1,149 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
** This file is Michael Toy's fault. If you hate it or have troubles figuring
** it out, you should bother him about it.
**
** This file generates both the fields of the front end structure, and the
** fe specific prototypes for your front end implementations, AND the
** the code to fill in the structure in your context initilization code
**
** To use it:
**
** #define MAKE_FE_FUNCS_STRUCT
** #include "mk_cx_fn.h"
** This will generate the field definitions for the structure.
**
** #define MAKE_FE_FUNCS_PREFIX(func) prefix_##func
** #define MAKE_FE_FUNCS_ASSIGN cx->
** #include "mk_cx_fn.h"
** Substitute your naming prefix for "prefix" (e.g XFE)
** This will generate the assignment statements to fill in the structure,
** the definition of MAKE_FE_FUNCS_ASSIGN will be the left hand side of the
** assignment statement.
**
** #define MAKE_FE_FUNCS_PREFIX(func) prefix_##func
** #define MAKE_FE_FUNCS_EXTERN
** #include "mk_cx_fn.h"
** This will generate the prototypes for all your front end functions.
*/
#if defined(MAKE_FE_FUNCS_TYPES)
#define FE_DEFINE(func, returns, args) typedef returns (*MAKE_FE_TYPES_PREFIX(func)) args;
#elif defined(MAKE_FE_FUNCS_STRUCT)
#define FE_DEFINE(func, returns, args) returns (*func) args;
#elif defined(MAKE_FE_FUNCS_EXTERN)
#define FE_DEFINE(func, returns, args) extern returns MAKE_FE_FUNCS_PREFIX(func) args;
#elif defined(MAKE_FE_FUNCS_ASSIGN)
#define FE_DEFINE(func, returns, args) MAKE_FE_FUNCS_ASSIGN func = MAKE_FE_FUNCS_PREFIX(func);
#elif !defined(FE_DEFINE)
You;Should;Read;The;Header;For;This;File;Before;Including;Error;Error;Error;
#endif
FE_DEFINE(CreateNewDocWindow, MWContext*, (MWContext * calling_context,URL_Struct * URL))
FE_DEFINE(LayoutNewDocument, void, (MWContext *context, URL_Struct *url_struct, int32 *iWidth, int32 *iHeight, int32 *mWidth, int32 *mHeight))
FE_DEFINE(SetDocTitle,void, (MWContext * context, char * title))
FE_DEFINE(FinishedLayout,void, (MWContext *context))
FE_DEFINE(TranslateISOText,char *, (MWContext * context, int charset, char *ISO_Text))
FE_DEFINE(GetTextInfo,int, (MWContext * context, LO_TextStruct *text, LO_TextInfo *text_info))
#ifdef XP_MAC
FE_DEFINE(MeasureText,int, (MWContext * context, LO_TextStruct *text, short *charLocs))
#endif
FE_DEFINE(GetEmbedSize,void, (MWContext * context, LO_EmbedStruct *embed_struct, NET_ReloadMethod force_reload))
FE_DEFINE(GetJavaAppSize,void, (MWContext * context, LO_JavaAppStruct *java_struct, NET_ReloadMethod force_reload))
FE_DEFINE(GetFormElementInfo,void, (MWContext * context, LO_FormElementStruct * form_element))
FE_DEFINE(GetFormElementValue,void, (MWContext * context, LO_FormElementStruct * form_element, XP_Bool hide))
FE_DEFINE(ResetFormElement,void, (MWContext * context, LO_FormElementStruct * form_element))
FE_DEFINE(SetFormElementToggle,void, (MWContext * context, LO_FormElementStruct * form_element, XP_Bool toggle))
FE_DEFINE(FreeEmbedElement,void, (MWContext *context, LO_EmbedStruct *))
FE_DEFINE(CreateEmbedWindow, void, (MWContext *context, NPEmbeddedApp *app))
FE_DEFINE(SaveEmbedWindow, void, (MWContext *context, NPEmbeddedApp *app))
FE_DEFINE(RestoreEmbedWindow, void, (MWContext *context, NPEmbeddedApp *app))
FE_DEFINE(DestroyEmbedWindow, void, (MWContext *context, NPEmbeddedApp *app))
FE_DEFINE(FreeJavaAppElement,void, (MWContext *context, struct LJAppletData *appletData))
FE_DEFINE(HideJavaAppElement,void, (MWContext *context, struct LJAppletData *))
FE_DEFINE(FreeEdgeElement,void, (MWContext *context, LO_EdgeStruct *))
FE_DEFINE(FormTextIsSubmit,void, (MWContext * context, LO_FormElementStruct * form_element))
FE_DEFINE(DisplaySubtext,void, (MWContext * context, int iLocation, LO_TextStruct *text, int32 start_pos, int32 end_pos, XP_Bool need_bg))
FE_DEFINE(DisplayText,void, (MWContext * context, int iLocation, LO_TextStruct *text, XP_Bool need_bg))
FE_DEFINE(DisplayEmbed,void, (MWContext * context, int iLocation ,LO_EmbedStruct *embed_struct))
FE_DEFINE(DisplayJavaApp,void, (MWContext * context, int iLocation ,LO_JavaAppStruct *java_struct))
FE_DEFINE(DisplayEdge,void, (MWContext * context, int iLocation ,LO_EdgeStruct *edge_struct))
FE_DEFINE(DisplayTable,void, (MWContext * context, int iLocation ,LO_TableStruct *table_struct))
FE_DEFINE(DisplayCell,void, (MWContext * context, int iLocation ,LO_CellStruct *cell_struct))
#ifdef XP_MAC
FE_DEFINE(InvalidateEntireTableOrCell,void, (MWContext * context, LO_Element *element))
FE_DEFINE(DisplayAddRowOrColBorder,void, (MWContext * context, XP_Rect* r ,XP_Bool bErase))
#endif
FE_DEFINE(DisplaySubDoc,void, (MWContext * context, int iLocation ,LO_SubDocStruct *subdoc_struct))
FE_DEFINE(DisplayLineFeed,void, (MWContext * context, int iLocation , LO_LinefeedStruct *line_feed, XP_Bool need_bg))
FE_DEFINE(DisplayHR,void, (MWContext * context, int iLocation , LO_HorizRuleStruct *HR_struct))
FE_DEFINE(DisplayBullet,void, (MWContext *context, int iLocation, LO_BullettStruct *bullet))
FE_DEFINE(DisplayFormElement,void, (MWContext * context, int iLocation, LO_FormElementStruct * form_element))
FE_DEFINE(DisplayBorder,void, (MWContext *context, int iLocation, int x, int y, int width, int height, int bw, LO_Color *color, LO_LineStyle style))
#ifdef XP_MAC
FE_DEFINE(UpdateEnableStates,void, (MWContext *context))
#endif
FE_DEFINE(DisplayFeedback,void, (MWContext *context, int iLocation, LO_Element *element))
FE_DEFINE(ClearView,void, (MWContext * context, int which))
FE_DEFINE(SetDocDimension,void, (MWContext *context, int iLocation, int32 iWidth, int32 iLength))
FE_DEFINE(SetDocPosition,void, (MWContext *context, int iLocation, int32 iX, int32 iY))
FE_DEFINE(GetDocPosition,void, (MWContext *context, int iLocation, int32 *iX, int32 *iY))
FE_DEFINE(BeginPreSection,void, (MWContext *context))
FE_DEFINE(EndPreSection,void, (MWContext *context))
FE_DEFINE(SetProgressBarPercent,void, (MWContext *context, int32 percent))
FE_DEFINE(SetBackgroundColor,void, (MWContext *context, uint8 red, uint8 green, uint8 blue))
FE_DEFINE(Progress, void, (MWContext * cx, const char *msg))
FE_DEFINE(Alert, void, (MWContext * cx, const char *msg))
FE_DEFINE(SetCallNetlibAllTheTime, void, (MWContext * win_id))
FE_DEFINE(ClearCallNetlibAllTheTime, void, (MWContext * win_id))
FE_DEFINE(GraphProgressInit, void, (MWContext *context, URL_Struct *URL_s, int32 content_length))
FE_DEFINE(GraphProgressDestroy, void, (MWContext *context, URL_Struct *URL_s, int32 content_length, int32 total_bytes_read))
FE_DEFINE(GraphProgress, void, (MWContext *context, URL_Struct *URL_s, int32 bytes_received, int32 bytes_since_last_time, int32 content_length))
FE_DEFINE(UseFancyFTP, XP_Bool, (MWContext * window_id))
FE_DEFINE(UseFancyNewsgroupListing, XP_Bool, (MWContext *window_id))
FE_DEFINE(FileSortMethod, int, (MWContext * window_id))
FE_DEFINE(ShowAllNewsArticles, XP_Bool, (MWContext *window_id))
FE_DEFINE(Confirm, XP_Bool,(MWContext * context, const char * Msg))
FE_DEFINE(Prompt,char*,(MWContext * context, const char * Msg, const char * dflt))
FE_DEFINE(PromptWithCaption,char*,(MWContext * context, const char *caption, const char * Msg, const char * dflt))
FE_DEFINE(PromptUsernameAndPassword, XP_Bool, (MWContext *,const char *,char **, char **))
FE_DEFINE(PromptPassword,char*,(MWContext * context, const char * Msg))
FE_DEFINE(EnableClicking,void,(MWContext*))
FE_DEFINE(AllConnectionsComplete,void,(MWContext * context))
#ifdef XP_OS2 /* performance */
FE_DEFINE(GetMaxWidth,int, (MWContext * context, LO_TextStruct *text))
#endif
#ifdef LAYERS
FE_DEFINE(EraseBackground, void, (MWContext *, int, int32, int32, uint32, uint32, LO_Color *))
FE_DEFINE(SetDrawable, void, (MWContext *, CL_Drawable *))
FE_DEFINE(GetTextFrame, void, (MWContext *, LO_TextStruct *, int32, int32, XP_Rect *))
#ifdef XP_MAC
FE_DEFINE(GetDefaultBackgroundColor, void, (MWContext* context, LO_Color* color))
#endif
#endif
/* these functions are to allow dealyed native window applet creation and transparent applet */
FE_DEFINE(HandleClippingView, void, (MWContext *pContext, struct LJAppletData *appletD, int x, int y, int width, int height))
FE_DEFINE(DrawJavaApp, void, (MWContext *pContext, int iLocation, LO_JavaAppStruct *pJava))
#undef FE_DEFINE
#undef MAKE_FE_FUNCS_PREFIX
#undef MAKE_FE_FUNCS_ASSIGN
#undef MAKE_FE_FUNCS_EXTERN
#undef MAKE_FE_FUNCS_STRUCT

View File

@@ -1,219 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* foobar Public API for mail (and news?) filters */
#ifndef MSG_RULE_H
#define MSG_RULE_H
/*
Terminology - Filter - either a Rule (defined with GUI) or a (Java) Script
Rule -
*/
#include "msg_srch.h"
typedef enum
{
FilterError_Success = 0, /* no error */
FilterError_First = SearchError_Last + 1, /* no functions return this; just for bookkeeping */
FilterError_NotImplemented, /* coming soon */
FilterError_OutOfMemory, /* out of memory */
FilterError_FileError, /* error reading or writing the rules file */
FilterError_InvalidVersion, /* invalid filter file version */
FilterError_InvalidIndex, /* Invalid filter index */
FilterError_InvalidMotion, /* invalid filter move motion */
FilterError_InvalidFilterType, /* method doesn't accept this filter type */
FilterError_NullPointer, /* a required pointer parameter was null */
FilterError_NotRule, /* tried to get rule for non-rule filter */
FilterError_NotScript, /* tried to get a script name for a non-script filter */
FilterError_InvalidAction, /* invalid action */
FilterError_SearchError, /* error in search code */
FilterError_Last /* no functions return this; just for bookkeeping */
} MSG_FilterError;
typedef enum
{
acNone, /* uninitialized state */
acMoveToFolder,
acChangePriority,
acDelete,
acMarkRead,
acKillThread,
acWatchThread
} MSG_RuleActionType;
typedef enum
{
filterInboxRule = 0x1,
filterInboxJavaScript = 0x2,
filterInbox = 0x3,
filterNewsRule = 0x4,
filterNewsJavaScript = 0x8,
filterNews=0xb,
filterAll=0xf
} MSG_FilterType;
typedef enum
{
filterUp,
filterDown
} MSG_FilterMotion;
typedef int32 MSG_FilterIndex;
/* opaque struct defs - defined in libmsg/pmsgfilt.h */
#ifdef XP_CPLUSPLUS
struct MSG_Filter;
struct MSG_Rule;
struct MSG_RuleAction;
struct MSG_FilterList;
#else
typedef struct MSG_FilterList MSG_FilterList;
typedef struct MSG_Filter MSG_Filter;
typedef struct MSG_Rule MSG_Rule;
typedef struct MSG_RuleAction MSG_RuleAction;
#endif
XP_BEGIN_PROTOS
/* Front ends call MSG_OpenFilterList to get a handle to a FilterList, of existing MSG_Filter *.
These are manipulated by the front ends as a result of user interaction
with dialog boxes. To apply the new list, fe's call MSG_CloseFilterList.
For example, if the user brings up the rule management UI, deletes a rule,
and presses OK, the front end calls MSG_RemoveFilterListAt, and
then MSG_CloseFilterList.
*/
MSG_FilterError MSG_OpenFilterList(MSG_Master *master, MSG_FilterType type, MSG_FilterList **filterList);
MSG_FilterError MSG_OpenFolderFilterList(MSG_Pane *pane, MSG_FolderInfo *folder, MSG_FilterType type, MSG_FilterList **filterList);
MSG_FilterError MSG_CloseFilterList(MSG_FilterList *filterList);
MSG_FilterError MSG_SaveFilterList(MSG_FilterList *filterList); /* save without deleting */
MSG_FilterError MSG_CancelFilterList(MSG_FilterList *filterList);
MSG_FolderInfo *MSG_GetFolderInfoForFilterList(MSG_FilterList *filterList);
MSG_FilterError MSG_GetFilterCount(MSG_FilterList *filterList, int32 *pCount);
MSG_FilterError MSG_GetFilterAt(MSG_FilterList *filterList,
MSG_FilterIndex filterIndex, MSG_Filter **filter);
/* these methods don't delete filters - they just change the list. FE still must
call MSG_DestroyFilter to delete a filter.
*/
MSG_FilterError MSG_SetFilterAt(MSG_FilterList *filterList,
MSG_FilterIndex filterIndex, MSG_Filter *filter);
MSG_FilterError MSG_RemoveFilterAt(MSG_FilterList *filterList,
MSG_FilterIndex filterIndex);
MSG_FilterError MSG_MoveFilterAt(MSG_FilterList *filterList,
MSG_FilterIndex filterIndex, MSG_FilterMotion motion);
MSG_FilterError MSG_InsertFilterAt(MSG_FilterList *filterList,
MSG_FilterIndex filterIndex, MSG_Filter *filter);
MSG_FilterError MSG_EnableLogging(MSG_FilterList *filterList, XP_Bool enable);
XP_Bool MSG_IsLoggingEnabled(MSG_FilterList *filterList);
/* In general, any data gotten with MSG_*Get is good until the owning object
is deleted, or the data is replaced with a MSG_*Set call. For example, the name
returned in MSG_GetFilterName is valid until either the filter is destroyed,
or MSG_SetFilterName is called on the same filter.
*/
MSG_FilterError MSG_CreateFilter (MSG_FilterType type, char *name, MSG_Filter **result);
MSG_FilterError MSG_DestroyFilter(MSG_Filter *filter);
MSG_FilterError MSG_GetFilterType(MSG_Filter *, MSG_FilterType *filterType);
MSG_FilterError MSG_EnableFilter(MSG_Filter *, XP_Bool enable);
MSG_FilterError MSG_IsFilterEnabled(MSG_Filter *, XP_Bool *enabled);
MSG_FilterError MSG_GetFilterRule(MSG_Filter *, MSG_Rule ** result);
MSG_FilterError MSG_GetFilterName(MSG_Filter *, char **name);
MSG_FilterError MSG_SetFilterName(MSG_Filter *, const char *name);
MSG_FilterError MSG_GetFilterDesc(MSG_Filter *, char **description);
MSG_FilterError MSG_SetFilterDesc(MSG_Filter*, const char *description);
MSG_FilterError MSG_GetFilterScript(MSG_Filter *, char **name);
MSG_FilterError MSG_SetFilterScript(MSG_Filter *, const char *name);
MSG_FilterError MSG_RuleAddTerm(MSG_Rule *,
MSG_SearchAttribute attrib, /* attribute for this term */
MSG_SearchOperator op, /* operator e.g. opContains */
MSG_SearchValue *value, /* value e.g. "Dogbert" */
XP_Bool BooleanAND, /* TRUE if AND is the boolean operator. FALSE if OR is the boolean operators */
char * arbitraryHeader); /* arbitrary header specified by user. ignored unless attrib = attribOtherHeader */
MSG_FilterError MSG_RuleGetNumTerms(MSG_Rule *, int32 *numTerms);
MSG_FilterError MSG_RuleGetTerm(MSG_Rule *, int32 termIndex,
MSG_SearchAttribute *attrib, /* attribute for this term */
MSG_SearchOperator *op, /* operator e.g. opContains */
MSG_SearchValue *value, /* value e.g. "Dogbert" */
XP_Bool *BooleanAnd, /* TRUE if AND is the boolean operator. FALSE if OR is the boolean operator */
char ** arbitraryHeader); /* arbitrary header specified by user. ignore unless attrib = attribOtherHeader */
MSG_FilterError MSG_RuleSetScope(MSG_Rule *, MSG_ScopeTerm *scope);
MSG_FilterError MSG_RuleGetScope(MSG_Rule *, MSG_ScopeTerm **scope);
/* if type is acChangePriority, value is a pointer to priority.
If type is acMoveToFolder, value is pointer to folder name.
Otherwise, value is ignored.
*/
MSG_FilterError MSG_RuleSetAction(MSG_Rule *, MSG_RuleActionType type, void *value);
MSG_FilterError MSG_RuleGetAction(MSG_Rule *, MSG_RuleActionType *type, void **value);
/* help FEs manage menu choices in Filter dialog box */
/* Use this to help build menus in the filter dialogs. See APIs below */
typedef struct MSG_RuleMenuItem
{
int16 attrib;
char name[32];
} MSG_RuleMenuItem;
MSG_FilterError MSG_GetRuleActionMenuItems (
MSG_FilterType type, /* type of filter */
MSG_RuleMenuItem *items, /* array of caller-allocated structs */
uint16 *maxItems); /* in- max array size; out- num returned */
MSG_FilterError MSG_GetFilterWidgetForAction( MSG_RuleActionType action,
MSG_SearchValueWidget *widget );
MSG_SearchError MSG_GetValuesForAction( MSG_RuleActionType action,
MSG_SearchMenuItem *items,
uint16 *maxItems);
void MSG_ViewFilterLog(MSG_Pane *pane);
/*
** Adding/editting javascript filters.
**
** The FE calls one of the below functions, along with a callback and some closure
** data. This callback is invoked when the user clicks OK in the JS filter dialog.
** If CANCEL is pressed, the callback is not invoked.
**
** If the user called MSG_EditJSFilter, the filter_index parameter of the callback
** is the same one passed in. If the user called MSG_NewJSFilter, the filter_index
** parameter is -1.
**
** The filter_changed parameter is TRUE if the user modified any of the fields of
** the javascript filter, and FALSE otherwise.
*/
typedef void (*JSFilterCallback)(void* arg, MSG_FilterIndex filter_index, XP_Bool filter_changed);
void MSG_EditJSFilter(MWContext *context, MSG_FilterList *filter_list,
MSG_FilterIndex filter_index,
JSFilterCallback cb, void *arg);
void MSG_NewJSFilter(MWContext *context, MSG_FilterList *filter_list,
MSG_FilterType filter_type, JSFilterCallback cb, void *arg);
XP_END_PROTOS
#endif

View File

@@ -1,447 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* Public API for searching mail, news, and LDAP
* pieces of this API are also used by filter rules and address book
*
*/
#ifndef _MSG_SRCH_H
#define _MSG_SRCH_H
#include "msgcom.h" /* for MSG_PRIORITY, MessageKey */
#include "dirprefs.h" /* for DIR_AttributeId */
#define FE_IMPLEMENTS_BOOLEAN_OR
#define B3_SEARCH_API
typedef enum
{
SearchError_First, /* no functions return this; just for bookkeeping */
SearchError_Success, /* no error */
SearchError_NotImplemented, /* coming soon */
SearchError_OutOfMemory, /* can't allocate required memory */
SearchError_NullPointer, /* a req'd pointer parameter was null */
SearchError_ScopeAgreement, /* attr or op not supp in this scope */
SearchError_ListTooSmall, /* menu item array not big enough */
SearchError_ResultSetEmpty, /* search done, no matches found */
SearchError_ResultSetTooBig, /* too many matches to get them all */
SearchError_InvalidAttribute, /* specified attrib not in enum */
SearchError_InvalidScope, /* specified scope not in enum */
SearchError_InvalidOperator, /* specified op not in enum */
SearchError_InvalidSearchTerm, /* cookie for search term is bogus */
SearchError_InvalidScopeTerm, /* cookie for scope term is bogus */
SearchError_InvalidResultElement, /* cookie for result element is bogus */
SearchError_InvalidPane, /* context probably bogus */
SearchError_InvalidStream, /* in strm bad (too short? bad magic?) */
SearchError_InvalidFolder, /* given folderInfo isn't searchable */
SearchError_InvalidIndex, /* the passed index is invalid */
SearchError_HostNotFound, /* couldn't connect to server */
SearchError_Timeout, /* network didn't respond */
SearchError_DBOpenFailed, /* couldn't open off-line msg db */
SearchError_NotAMatch, /* used internally for term eval */
SearchError_ScopeDone, /* used internally for scope list eval */
SearchError_Unknown, /* some random error */
SearchError_Last /* no functions return this; just for bookkeeping */
} MSG_SearchError;
typedef enum
{
scopeMailFolder,
scopeNewsgroup,
scopeLdapDirectory,
scopeOfflineNewsgroup,
scopeAllSearchableGroups
} MSG_ScopeAttribute;
/* NB: If you add elements to this enum, add only to the end, since
* RULES.DAT stores enum values persistently
*/
typedef enum
{
attribSender = 0, /* mail and news */
attribSubject,
attribBody,
attribDate,
attribPriority, /* mail only */
attribMsgStatus,
attribTo,
attribCC,
attribToOrCC,
attribCommonName, /* LDAP only */
attrib822Address,
attribPhoneNumber,
attribOrganization,
attribOrgUnit,
attribLocality,
attribStreetAddress,
attribSize,
attribAnyText, /* any header or body */
attribKeywords,
attribDistinguishedName, /* LDAP result elem only */
attribObjectClass,
attribJpegFile,
attribLocation, /* result list only */
attribMessageKey, /* message result elems */
attribAgeInDays, /* for purging old news articles */
attribGivenName, /* for sorting LDAP results */
attribSurname,
attribFolderInfo, /* for "view thread context" from result */
attribCustom1, /* custom LDAP attributes */
attribCustom2,
attribCustom3,
attribCustom4,
attribCustom5,
attribMessageId,
attribOtherHeader, /* for mail and news. MUST ALWAYS BE LAST attribute since we can have an arbitrary # of these...*/
kNumAttributes /* must be last attribute */
} MSG_SearchAttribute;
/* NB: If you add elements to this enum, add only to the end, since
* RULES.DAT stores enum values persistently
*/
typedef enum
{
opContains = 0, /* for text attributes */
opDoesntContain,
opIs, /* is and isn't also apply to some non-text attrs */
opIsnt,
opIsEmpty,
opIsBefore, /* for date attributes */
opIsAfter,
opIsHigherThan, /* for priority. opIs also applies */
opIsLowerThan,
opBeginsWith,
opEndsWith,
opSoundsLike, /* for LDAP phoenetic matching */
opLdapDwim, /* Do What I Mean for simple search */
opIsGreaterThan,
opIsLessThan,
kNumOperators /* must be last operator */
} MSG_SearchOperator;
/* FEs use this to help build the search dialog box */
typedef enum
{
widgetText,
widgetDate,
widgetMenu,
widgetInt, /* added to account for age in days which requires an integer field */
widgetNone
} MSG_SearchValueWidget;
/* Use this to specify the value of a search term */
typedef struct MSG_SearchValue
{
MSG_SearchAttribute attribute;
union
{
char *string;
MSG_PRIORITY priority;
time_t date;
uint32 msgStatus; /* see MSG_FLAG in msgcom.h */
uint32 size;
MessageKey key;
uint32 age; /* in days */
MSG_FolderInfo *folder;
} u;
} MSG_SearchValue;
/* Use this to help build menus in the search dialog. See APIs below */
#define kSearchMenuLength 64
typedef struct MSG_SearchMenuItem
{
int16 attrib;
char name[kSearchMenuLength];
XP_Bool isEnabled;
} MSG_SearchMenuItem;
#ifdef XP_CPLUSPLUS
struct MSG_ScopeTerm;
struct MSG_ResultElement;
struct DIR_Server;
#else
#include "dirprefs.h"
typedef struct MSG_ScopeTerm MSG_ScopeTerm;
typedef struct MSG_ResultElement MSG_ResultElement;
#endif
XP_BEGIN_PROTOS
/* manage lifetime of internal search memory */
MSG_SearchError MSG_SearchAlloc (MSG_Pane *); /* alloc memory in context */
MSG_SearchError MSG_SearchFree (MSG_Pane *); /* free memory in context */
MSG_SearchError MSG_AddSearchTerm (
MSG_Pane *searchPane, /* ptr to pane to add criteria */
MSG_SearchAttribute attrib, /* attribute for this term */
MSG_SearchOperator op, /* operator e.g. opContains */
MSG_SearchValue *value, /* value e.g. "Dogbert" */
XP_Bool BooleanAND, /* set to true if associated boolean operator is AND */
char * arbitraryHeader); /* user defined arbitrary header. ignored unless attrib = attribOtherHeader */
/* It's generally not necessary for the FE to read the list of terms after
* the list has been built. However, in our Basic/Advanced LDAP search dialogs
* the FE is supposed to remember the criteria, and since that information is
* lying around in the backend anyway, we'll just make it available to the FE
*/
MSG_SearchError MSG_CountSearchTerms (
MSG_Pane *searchPane,
int *numTerms);
MSG_SearchError MSG_GetNthSearchTerm (
MSG_Pane *searchPane,
int whichTerm,
MSG_SearchAttribute *attrib,
MSG_SearchOperator *op,
MSG_SearchValue *value);
MSG_SearchError MSG_CountSearchScopes (
MSG_Pane *searchPane,
int *numScopes);
MSG_SearchError MSG_GetNthSearchScope (
MSG_Pane *searchPane,
int which,
MSG_ScopeAttribute *scopeId,
void **scope);
/* add a scope (e.g. a mail folder) to the search */
MSG_SearchError MSG_AddScopeTerm (
MSG_Pane *searchPane, /* ptr to pane to add search scope */
MSG_ScopeAttribute attrib, /* what kind of scope term is this */
MSG_FolderInfo *folder); /* which folder to search */
/* special cases for LDAP since LDAP isn't really a folderInfo */
MSG_SearchError MSG_AddLdapScope (
MSG_Pane *searchPane,
DIR_Server *server);
MSG_SearchError MSG_AddAllLdapScopes (
MSG_Pane *searchPane,
XP_List *dirServerList);
/* Call this function everytime the scope changes! It informs the FE if
the current scope support custom header use. FEs should not display the
custom header dialog if custom headers are not supported */
XP_Bool MSG_ScopeUsesCustomHeaders(
MSG_Master * master,
MSG_ScopeAttribute scope,
void * selection, /* could be a folder or server based on scope */
XP_Bool forFilters); /* is this a filter we are talking about? */
XP_Bool MSG_IsStringAttribute( /* use this to determine if your attribute is a string attrib */
MSG_SearchAttribute);
/* add all scopes of a given type to the search */
MSG_SearchError MSG_AddAllScopes (
MSG_Pane *searchPane, /* ptr to pane to add scopes */
MSG_Master *master, /* mail or news scopes */
MSG_ScopeAttribute attrib); /* what kind of scopes to add */
/* begin execution of the search */
MSG_SearchError MSG_Search (
MSG_Pane *searchPane); /* So we know how to work async */
/* manage elements in list of search hits */
MSG_SearchError MSG_GetResultElement (
MSG_Pane *searchPane, /* ptr to pane containing results */
MSG_ViewIndex idx, /* zero-based index of result to get */
MSG_ResultElement **result); /* filled in resultElement. NOT allocated */
MSG_SearchError MSG_GetResultAttribute (
MSG_ResultElement *elem, /* which result elem to get value for */
MSG_SearchAttribute attrib, /* which attribute to get value for */
MSG_SearchValue **result); /* filled in value */
MSG_SearchError MSG_OpenResultElement (
MSG_ResultElement *elem, /* which result elem to open */
void *window); /* MSG_Pane* for mail/news, contxt for LDAP */
MWContextType MSG_GetResultElementType (
MSG_ResultElement *elem); /* context type needed for this elem */
MWContext *MSG_IsResultElementOpen (
MSG_ResultElement *elem); /* current context if open, NULL if not */
MSG_SearchError MSG_SortResultList (
MSG_Pane *searchPane, /* ptr to pane containing results */
MSG_SearchAttribute sortKey, /* which attribute is the sort key */
XP_Bool descending); /* T- sort descending, F- sort ascending */
MSG_SearchError MSG_DestroySearchValue (
MSG_SearchValue *value); /* free struct and heap-based struct elems */
MSG_SearchError MSG_ModifyLdapResult (
MSG_ResultElement *elem, /* which result element to modify */
MSG_SearchValue *val); /* new value to stuff in */
MSG_SearchError MSG_AddLdapResultsToAddressBook(
MSG_Pane *searchPane, /* ptr to pane containing results */
MSG_ViewIndex *indices, /* selection array */
int count); /* size of array */
MSG_SearchError MSG_ComposeFromLdapResults(
MSG_Pane *searchPane, /* ptr to pane containing results */
MSG_ViewIndex *indices, /* selection array */
int count); /* size of array */
/* help FEs manage menu selections in Search dialog box */
MSG_SearchError MSG_GetSearchWidgetForAttribute (
MSG_SearchAttribute attrib, /* which attr to get UI widget type for */
MSG_SearchValueWidget *widget); /* what kind of UI widget specifies attr */
/* For referring to DIR_Servers and MSG_FolderInfos polymorphically */
typedef struct MSG_ScopeUnion
{
MSG_ScopeAttribute *attribute;
union
{
DIR_Server *server;
MSG_FolderInfo *folder;
} u;
} MSG_ScopeUnion;
/* always call this routine b4 calling MSG_GetAttributesForSearchScopes to
determine how many elements your MSG_SearchMenuItem array needs to be */
MSG_SearchError MSG_GetNumAttributesForSearchScopes(
MSG_Master *master,
MSG_ScopeAttribute scope,
void ** selArray, /* selected items for LCD calculation */
uint16 selCount, /* number of selected items */
uint16 *numItems); /* out - number of attribute items for scope */
MSG_SearchError MSG_GetAttributesForSearchScopes (
MSG_Master *master,
MSG_ScopeAttribute scope,
void **selArray, /* selected items for LCD calculation */
uint16 selCount, /* number of selected items */
MSG_SearchMenuItem *items, /* array of caller-allocated structs */
uint16 *maxItems); /* in- max array size; out- num returned */
MSG_SearchError MSG_GetOperatorsForSearchScopes (
MSG_Master *master,
MSG_ScopeAttribute scope,
void **selArray, /* selected items for LCD calculation */
uint16 selCount, /* number of selected items */
MSG_SearchAttribute attrib, /* return available ops for this attrib */
MSG_SearchMenuItem *items, /* array of caller-allocated structs */
uint16 *maxItems); /* in- max array size; out- num returned */
MSG_SearchError MSG_GetScopeMenuForSearchMessages (
MSG_Master *master,
MSG_FolderInfo **selArray,
uint16 selCount,
MSG_SearchMenuItem *items,
uint16 *maxItems);
/* always call this routine b4 calling MSG_GetAttributesForFilterScopes to
determine how many elements your MSG_SearchMenuItem array needs to be */
MSG_SearchError MSG_GetNumAttributesForFilterScopes(
MSG_Master *master,
MSG_ScopeAttribute scope,
void ** selArray, /* selected items for LCD calculation */
uint16 selCount, /* number of selected items */
uint16 *numItems); /* out - number of attribute items for scope */
MSG_SearchError MSG_GetAttributesForFilterScopes (
MSG_Master *master,
MSG_ScopeAttribute scope,
void **selArray, /* selected items for LCD calculation */
uint16 selCount, /* number of selected items */
MSG_SearchMenuItem *items, /* array of caller-allocated structs */
uint16 *maxItems); /* in- max array size; out- num returned */
MSG_SearchError MSG_GetOperatorsForFilterScopes (
MSG_Master *master,
MSG_ScopeAttribute scope,
void **selArray, /* selected items for LCD calculation */
uint16 selCount, /* number of selected items */
MSG_SearchAttribute attrib, /* return available ops for this attrib */
MSG_SearchMenuItem *items, /* array of caller-allocated structs */
uint16 *maxItems); /* in- max array size; out- num returned */
/*****************************************************************************
These two functions have been added to the search APIs to help support Arbitrary
Headers. In particular, the FEs need to be able to grab a semaphore when they
create an edit headers dialog (we only want to allow 1 dialog to be open at a time).
AcquireEditHeadersSemaphore returns TRUE if the FE successfully acquired the semaphore
and FALSE if someone else acquired it. ReleaseEditHeaderSemaphore returns TRUE if you
were the original holder of the semaphore and the semaphore was released. FALSE if you
were not the original holder
**********************************************************************************/
XP_Bool MSG_AcquireEditHeadersSemaphore (MSG_Master * master, void * holder);
XP_Bool MSG_ReleaseEditHeadersSemaphore (MSG_Master * master, void * holder);
MSG_SearchError MSG_SearchAttribToDirAttrib (
MSG_SearchAttribute searchAttrib,
DIR_AttributeId *dirAttrib);
MSG_SearchError MSG_GetBasicLdapSearchAttributes (
DIR_Server *server,
MSG_SearchMenuItem *items,
int *maxItems);
/* maybe these belong in msgcom.h? */
void MSG_GetPriorityName (MSG_PRIORITY priority, char *name, uint16 max);
void MSG_GetUntranslatedPriorityName (MSG_PRIORITY priority,
char *name, uint16 max);
void MSG_GetStatusName (uint32 status, char *name, uint16 max);
MSG_PRIORITY MSG_GetPriorityFromString(const char *priority);
/* support for profile searching in Dredd */
MSG_SearchError MSG_SaveProfileStatus (MSG_Pane *searchPane, XP_Bool *enabled);
MSG_SearchError MSG_SaveProfile (MSG_Pane *searchPane, const char *profileName);
/* support for searching all Dredd groups + all subscribed groups */
MSG_SearchError MSG_AddAllSearchableGroupsStatus(MSG_Pane *searchPane, XP_Bool *enabled);
/* support for opening a search result in its thread pane context */
XP_Bool MSG_GoToFolderStatus (MSG_Pane *searchPane,
MSG_ViewIndex *indices,
int32 numIndices);
/* used between libnet and libmsg to allow searching for characters which
* are otherwise significant in news: URLs
*/
extern char *MSG_EscapeSearchUrl (const char *value);
extern char *MSG_UnEscapeSearchUrl (const char *value);
/* This is how "search:" of different mail/news folder types works */
extern int MSG_ProcessSearch (MWContext *context);
extern int MSG_InterruptSearch (MWContext *context);
XP_END_PROTOS
#endif /* _MSG_SRCH_H */

File diff suppressed because it is too large Load Diff

View File

@@ -1,80 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
** msgmapi.h -- implements XP mail/news support for the Microsoft Mail API (MAPI)
**
*/
#ifndef _MSGMAPI_H
#define _MSGMAPI_H
#ifdef XP_WIN
#include "msgcom.h"
#include "abcom.h"
// rhp - to fix the problem caused by MSFT...grrrrr...
#ifndef MAPI_OLE // Because MSFT doesn't do this for us :-(
#include <mapi.h> // for MAPI specific types...
#endif
#ifdef XP_CPLUSPLUS
class MSG_MapiListContext;
#else
typedef struct MSG_MapiListContext MSG_MapiListContext;
#endif
XP_BEGIN_PROTOS
MessageKey MSG_GetFirstKeyInFolder (MSG_FolderInfo *folder, MSG_MapiListContext **cookie);
MessageKey MSG_GetNextKeyInFolder (MSG_MapiListContext *cookie);
XP_Bool MSG_GetMapiMessageById (MSG_FolderInfo *folder, MessageKey key, lpMapiMessage *message);
XP_Bool MSG_MarkMapiMessageRead (MSG_FolderInfo *folder, MessageKey key, XP_Bool read);
void MSG_FreeMapiMessage (lpMapiMessage msg);
/* Address Book Specific APIs to support MAPI calls for MAPIDetails and MAPIResolveName */
int AB_MAPI_ResolveName(
char * string,
AB_ContainerInfo ** ctr, /* caller allocates ptr to ctr, BE fills. Caller must close the ctr when done */
ABID * id);
/* Caller must free the character strings returned by these functions using XP_FREE */
char * AB_MAPI_GetEmailAddress(AB_ContainerInfo * ctr,ABID id);
char * AB_MAPI_GetFullName(AB_ContainerInfo * ctr, ABID id);
char * AB_MAPI_ConvertToDescription(AB_ContainerInfo * ctr);
AB_ContainerInfo * AB_MAPI_ConvertToContainer(char * description);
int AB_MAPI_CreatePropertySheetPane(
MWContext * context,
MSG_Master * master,
AB_ContainerInfo * ctr,
ABID id,
MSG_Pane ** personPane); /* BE fills the ptr with a person pane */
void AB_MAPI_CloseContainer(AB_ContainerInfo ** ctr);
XP_END_PROTOS
#endif /* XP_WIN */
#endif /* _MSGMAPI_H */

View File

@@ -1,491 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* msgnet.h --- prototypes for API's between libmsg and libnet.
*/
#ifndef _MSGNET_H_
#define _MSGNET_H_
#include "msgcom.h"
XP_BEGIN_PROTOS
/* so libnet can mark expired articles as read. */
extern int MSG_MarkMessageKeyRead (MSG_Pane *pane, MessageKey key, const char *xref);
/* record imap message flags in the db of the current pane (message or thread panes) */
extern void MSG_RecordImapMessageFlags(MSG_Pane* pane,
MessageKey msgKey,
imapMessageFlagsType flags);
/* notify libmsg of deleted messages */
extern void MSG_ImapMsgsDeleted(MSG_Pane *urlPane,
const char *onlineMailboxName,
XP_Bool deleteAllMsgs,
const char *doomedKeyString);
/* called to setup state before a copy download */
extern void MSG_StartImapMessageToOfflineFolderDownload(MWContext* context);
/* notify libmsg that inbox filtering is complete */
extern void MSG_ImapInboxFilteringComplete(MSG_Pane *urlPane);
/* notify libmsg that the online/offline synch is complete */
extern void MSG_ImapOnOffLineSynchComplete(MSG_Pane *urlPane);
/* notify libmsg that an imap folder load was interrupted */
extern void MSG_InterruptImapFolderLoad(MSG_Pane *urlPane, const char *hostName, const char *onlineFolderPath);
/* find a reference or NULL to the specified imap folder */
extern MSG_FolderInfo* MSG_FindImapFolder(MSG_Pane *urlPane, const char *hostName, const char *onlineFolderPath);
/* If there is a cached connection, for this folder, uncache it and return it */
extern TNavigatorImapConnection* MSG_UnCacheImapConnection(MSG_Master* master, const char *host, const char *folderName);
/* Cache this connection and return TRUE if there is not one there already, else false */
extern XP_Bool MSG_TryToCacheImapConnection(MSG_Master* master, const char *host, const char *folderName, TNavigatorImapConnection *connection);
extern void MSG_SetIMAPMessageUID (MessageKey key,
void *state);
extern const char *MSG_GetMessageIdFromState (void *state);
extern XP_Bool MSG_IsSaveDraftDeliveryState (void *state);
extern void MSG_SetUserAuthenticated (MSG_Master* master, XP_Bool bAuthenticated);
extern XP_Bool MSG_IsUserAuthenticated (MSG_Master* master);
extern void MSG_SetMailAccountURL(MSG_Master* master, const char *urlString);
extern const char *MSG_GetMailAccountURL(MSG_Master* master);
extern void MSG_SetNewsgroupUsername(MSG_Pane* pane, const char *username);
extern const char *MSG_GetNewsgroupUsername(MSG_Pane *pane);
extern void MSG_SetNewsgroupPassword(MSG_Pane* pane, const char *password);
extern const char *MSG_GetNewsgroupPassword(MSG_Pane *pane);
extern const char* MSG_GetPopHost(MSG_Prefs* prefs);
extern XP_Bool MSG_GetUseSSLForIMAP4(MSG_Pane *pane);
extern int32 MSG_GetIMAPSSLPort(MSG_Pane *pane);
/* called from libnet to clean up state from mailbox:copymessages */
extern void MSG_MessageCopyIsCompleted (struct MessageCopyInfo**);
/* called from libnet to determine if the current copy is finished */
extern XP_Bool MSG_IsMessageCopyFinished(struct MessageCopyInfo*);
/* called from mailbox and url libnet modules */
extern
int MSG_BeginCopyingMessages(MWContext *context);
extern
int MSG_FinishCopyingMessages(MWContext *context);
extern const char *MSG_GetIMAPHostUsername(MSG_Master *master, const char *hostName);
extern const char *MSG_GetIMAPHostPassword(MSG_Master *master, const char *hostName);
extern void MSG_SetIMAPHostPassword(MSG_Master *master, const char *hostName, const char *password);
extern int MSG_GetIMAPHostIsUsingSubscription(MSG_Master *master, const char *hostName, XP_Bool *usingSubscription);
extern XP_Bool MSG_GetIMAPHostDeleteIsMoveToTrash(MSG_Master *master, const char *hostName);
extern int IMAP_AddIMAPHost(const char *hostName, XP_Bool usingSubscription, XP_Bool overrideNamespaces,
const char *personalNamespacePrefix, const char *publicNamespacePrefixes, const char *otherUsersNamespacePrefixes);
typedef enum
{ MSG_NotRunning = 0x00000000
, MSG_RunningOnline = 0x00000001
, MSG_RunningOffline = 0x00000002
} MSG_RunningState;
extern MSG_FolderInfo *MSG_SetFolderRunningIMAPUrl(MSG_Pane *urlPane, const char *hostName, const char *onlineFolderPath, MSG_RunningState runningState);
extern void MSG_IMAPUrlFinished(MSG_FolderInfo *folder, URL_Struct *URL_s);
/* ===========================================================================
OFFLINE IMAP
===========================================================================
*/
extern uint32 MSG_GetImapMessageFlags(MSG_Pane *urlPane,
const char *hostName,
const char *onlineBoxName,
uint32 key);
extern void MSG_StartOfflineImapRetrieval(MSG_Pane *urlPane,
const char *hostName,
const char *onlineBoxName,
uint32 key,
void **offLineRetrievalData);
extern uint32 MSG_GetOfflineMessageSize(void *offLineRetrievalData);
extern int MSG_ProcessOfflineImap(void *offLineRetrievalData, char *socketBuffer, uint32 read_size);
extern int MSG_InterruptOfflineImap(void *offLineRetrievalData);
extern void MSG_GetNextURL(MSG_Pane *pane);
/* Returns the original pane that a progress pane was associated with. If
the given pane is not a progresspane, returns NULL. */
extern MSG_Pane* MSG_GetParentPane(MSG_Pane* progresspane);
/* do an imap biff of the imap inbox */
extern void MSG_ImapBiff(MWContext* context, MSG_Prefs* prefs);
/* The NNTP module of netlib calls these to feed XOVER data to the message
library, in response to a news:group.name URL having been opened.
If MSG_FinishXOVER() returns a message ID, that message will be loaded
next (used for selecting the first unread message in a group after
listing that group.)
The "out" arguments are (if non-NULL) a file descriptor to write the XOVER
line to, followed by a "\n". This is used by the XOVER-caching code.
*/
extern int MSG_InitXOVER (MSG_Pane* pane,
MSG_NewsHost* host,
const char* group_name,
uint32 first_msg, uint32 last_msg,
uint32 oldest_msg, uint32 youngest_msg,
void **data);
extern int MSG_ProcessXOVER (MSG_Pane* pane, char *line, void **data);
extern int MSG_ProcessNonXOVER (MSG_Pane* pane, char *line, void **data);
extern int MSG_FinishXOVER (MSG_Pane* pane, void **data, int status);
/* In case of XOVER failed due to the authentication process, we need to
do some clean up. So that we could have a fresh start once we pass the
authentication check.
*/
extern int MSG_ResetXOVER (MSG_Pane* pane, void **data);
/* These calls are used by libnet to determine which articles it ought to
get in a big newsgroup. */
extern int
MSG_GetRangeOfArtsToDownload(MSG_Pane* pane, void** data, MSG_NewsHost* host,
const char* group_name,
int32 first_possible, /* Oldest article available
from newsserver*/
int32 last_possible, /* Newest article available
from newsserver*/
int32 maxextra,
int32* first,
int32* last);
extern int
MSG_AddToKnownArticles(MSG_Pane *pane, MSG_NewsHost* host,
const char* groupname, int32 first, int32 last);
extern int MSG_InitAddArticleKeyToGroup(MSG_Pane *pane, MSG_NewsHost* host,
const char* groupName, void **parseState);
extern int MSG_AddArticleKeyToGroup(void *parse_state, int32 first);
extern int MSG_FinishAddArticleKeyToGroup(MSG_Pane *pane, void **parse_state);
/* After displaying a list of newsgroups, we need the NNTP module to go and
run "GROUP" commands for the ones for which we don't know the unread
article count. This function returns a count of how many groups we think
we're going to need this for (so we can display progress in a reasonable
way).
*/
extern int32 MSG_GetNewsRCCount(MSG_Pane* pane, MSG_NewsHost* host);
/* Gets the name of the next group that we want to get article counts for.
The caller must free the given name using XP_FREE().
MSG_DisplaySubscribedGroup() should get called with this group before
this call happens again. */
extern char* MSG_GetNewsRCGroup(MSG_Pane* pane, MSG_NewsHost* host);
/* In response to a "news://host/" URL; this is called once for each group
that was returned by MSG_GetNewsRCGroup(), after the NNTP GROUP command has
been run. It's also called whenever we actually visit the group (the user
clicks on the newsgroup line), in case the data has changed since the
initial passthrough. The "nowvisiting" parameter is TRUE in the latter
case, FALSE otherwise. */
extern int MSG_DisplaySubscribedGroup(MSG_Pane* pane,
MSG_NewsHost* host,
const char *group,
int32 oldest_message,
int32 youngest_message,
int32 total_messages,
XP_Bool nowvisiting);
/* In response to an NNTP GROUP command, the server said the group doesn't exist */
extern int MSG_GroupNotFound(MSG_Pane* pane,
MSG_NewsHost* host,
const char *group,
XP_Bool opening);
/* In response to a "news://host/?newgroups" URL, to ask the server for a
list of recently-added newsgroups. Similar to MSG_DisplaySubscribedGroup,
except that in this case, the group is not already in the list. */
extern int MSG_DisplayNewNewsGroup (MWContext *context,
MSG_NewsHost* host, const char *group_name,
int32 oldest_message,
int32 youngest_message);
/* News servers work better if you ask for message numbers instead of IDs.
So, the NNTP module asks us what the group and number of an ID is with
this. If we don't know, we return 0 for both. If the pane is not a
thead or message pane, this routine will fail.
*/
extern void MSG_NewsGroupAndNumberOfID (MSG_Pane *pane,
const char *message_id,
const char **group_return,
uint32 *message_number_return);
/* This routine is used by netlib to see if we have this article off-line
It might be combined with the above routine, but I'm not sure if this
is the way we're ultimately going to do this.
*/
extern XP_Bool MSG_IsOfflineArticle (MSG_Pane *pane,
const char *message_id,
const char **group_return,
uint32 *message_number_return);
extern int MSG_StartOfflineRetrieval(MSG_Pane *pane,
const char *group,
uint32 message_number,
void **offlineState);
extern int MSG_ProcessOfflineNews(void *offlineState, char *outputBuffer, int outputBufSize);
extern int MSG_InterruptOfflineNews(void *offlineState);
/* libnet callbacks for Dredd NNTP extensions */
extern void MSG_SupportsNewsExtensions (MSG_NewsHost *host, XP_Bool supports);
extern void MSG_AddNewsExtension (MSG_NewsHost *host, const char *ext);
extern XP_Bool MSG_QueryNewsExtension (MSG_NewsHost *host, const char *ext);
extern XP_Bool MSG_NeedsNewsExtension (MSG_NewsHost *host, const char *ext);
extern void MSG_AddSearchableGroup (MSG_NewsHost *host, const char *group);
extern void MSG_AddSearchableHeader (MSG_NewsHost *host, const char *header);
extern int MSG_AddProfileGroup (MSG_Pane *pane,
MSG_NewsHost* host,
const char *groupName);
extern int MSG_AddPrettyName(MSG_NewsHost* host,
const char *groupName, const char *prettyName);
extern int MSG_SetXActiveFlags(MSG_Pane *pane, char *groupName,
int32 firstPossibleArt,
int32 lastPossibleArt,
char *flags);
extern int MSG_AddSubscribedGroup (MSG_Pane *pane, const char *groupUrl);
extern void MSG_AddPropertyForGet (MSG_NewsHost *host, const char *property,
const char *value);
/* libnet calls this if it got an error 441 back from the newsserver. That
error almost certainly means that the newsserver already has a message
with the same message id. If this routine returns TRUE, then we were
pretty much expecting that error code, because we know we tried twice to
post the same message, and we can just ignore it. */
extern XP_Bool MSG_IsDuplicatePost(MSG_Pane* comppane);
/* libnet uses this on an error condition to tell libmsg to generate a new
message-id for the given composition. */
extern void MSG_ClearCompositionMessageID(MSG_Pane* comppane);
/* libnet uses this to determine the message-id for the given composition (so
it can test if this message was already posted.) */
extern const char* MSG_GetCompositionMessageID(MSG_Pane* comppane);
/* The "news:" and "mailbox:" protocol handlers call this when a message is
displayed, so that we can use the contents of the headers when composing
replies.
*/
extern void
MSG_ActivateReplyOptions(MSG_Pane* messagepane, MimeHeaders *headers);
/* Tell the subscribe pane about a new newsgroup we noticed. */
extern int
MSG_AddNewNewsGroup(MSG_Pane* pane, MSG_NewsHost* host,
const char* groupname, int32 oldest, int32 youngest,
const char *flag, XP_Bool bXactiveFlags);
/* tell the host info database that we're going to need to get the extra info
for this new newsgroup
*/
extern int MSG_SetGroupNeedsExtraInfo(MSG_NewsHost *host,
const char* groupname, XP_Bool needsExtra);
/* returns the name of the first group which needs extra info */
extern char *MSG_GetFirstGroupNeedingExtraInfo(MSG_NewsHost *host);
/* Find out from libmsg when we last checked for new newsgroups (so we know
what date to give the "newgroups" command.) */
extern time_t
MSG_NewsgroupsLastUpdatedTime(MSG_NewsHost* host);
/* The "mailbox:" protocol module uses these routines to invoke the mailbox
parser in libmsg.
*/
extern int MSG_BeginOpenFolderSock (MSG_Pane* pane,
const char *folder_name,
const char *message_id, int32 msgnum,
void **folder_ptr);
extern int MSG_FinishOpenFolderSock (MSG_Pane* pane,
const char *folder_name,
const char *message_id, int32 msgnum,
void **folder_ptr);
extern void MSG_CloseFolderSock (MSG_Pane* pane, const char *folder_name,
const char *message_id, int32 msgnum,
void *folder_ptr);
extern int MSG_OpenMessageSock (MSG_Pane* messagepane, const char *folder_name,
const char *msg_id, int32 msgnum,
void *folder_ptr, void **message_ptr,
int32 *content_length);
extern int MSG_ReadMessageSock (MSG_Pane* messagepane, const char *folder_name,
void *message_ptr, const char *message_id,
int32 msgnum, char *buffer, int32 buffer_size);
extern void MSG_CloseMessageSock (MSG_Pane* messagepane,
const char *folder_name,
const char *message_id, int32 msgnum,
void *message_ptr);
extern void MSG_PrepareToIncUIDL(MSG_Pane* messagepane, URL_Struct* url,
const char* uidl);
/* This is how "mailbox:?empty-trash" works
*/
extern int MSG_BeginEmptyTrash(MSG_Pane* folderpane, URL_Struct* url,
void** closure);
extern int MSG_FinishEmptyTrash(MSG_Pane* folderpane, URL_Struct* url,
void* closure);
extern int MSG_CloseEmptyTrashSock(MSG_Pane* folderpane, URL_Struct* url,
void* closure);
/* This is how "mailbox:?compress-folder" and
"mailbox:/foo/baz/nsmail/inbox?compress-folder" works. */
extern int MSG_BeginCompressFolder(MSG_Pane* pane, URL_Struct* url,
const char* foldername, void** closure);
extern int MSG_FinishCompressFolder(MSG_Pane* pane, URL_Struct* url,
const char* foldername, void* closure);
extern int MSG_CloseCompressFolderSock(MSG_Pane* pane, URL_Struct* url,
void* closure);
/* This is how "mailbox:?deliver-queued" works
*/
extern int MSG_BeginDeliverQueued(MSG_Pane* pane, URL_Struct* url,
void** closure);
extern int MSG_FinishDeliverQueued(MSG_Pane* pane, URL_Struct* url,
void* closure);
extern int MSG_CloseDeliverQueuedSock(MSG_Pane* pane, URL_Struct* url,
void* closure);
/* This is how "mailbox:?background" works */
extern int MSG_ProcessBackground(URL_Struct* urlstruct);
/* libnet --> libmsg glue for newsgroup searching */
extern void MSG_AddNewsXpatHit (MWContext *context, uint32 artNum);
extern void MSG_AddNewsSearchHit (MWContext *context, const char *resultLine);
/* libnet --> libmsg glue for imap mail folder searching */
extern void MSG_AddImapSearchHit (MWContext *context, const char *resultLine);
/* The POP3 protocol module uses these routines to hand us new messages.
*/
extern XP_Bool MSG_BeginMailDelivery (MSG_Pane* folderpane);
extern void MSG_AbortMailDelivery (MSG_Pane* folderpane);
extern void MSG_EndMailDelivery (MSG_Pane* folderpane);
extern void *MSG_IncorporateBegin (MSG_Pane* folderpane,
FO_Present_Types format_out,
char *pop3_uidl,
URL_Struct *url,
uint32 flags);
extern int MSG_IncorporateWrite (MSG_Pane* folderpane, void *closure,
const char *block, int32 length);
extern int MSG_IncorporateComplete(MSG_Pane* folderpane, void *closure);
extern int MSG_IncorporateAbort (MSG_Pane* folderpane, void *closure,
int status);
extern void MSG_ClearSenderAuthedFlag(MSG_Pane* folderpane, void *closure);
/* This is how the netlib registers the converters relevant to MIME message
display and composition.
*/
void MSG_RegisterConverters (void);
extern void
MSG_StartMessageDelivery (MSG_Pane *pane,
void *fe_data,
MSG_CompositionFields *fields,
XP_Bool digest_p,
XP_Bool dont_deliver_p,
const char *attachment1_type,
const char *attachment1_body,
uint32 attachment1_body_length,
const struct MSG_AttachmentData *attachments,
void *mimeRelatedPart, /* only used in compose pane */
void (*message_delivery_done_callback)
(MWContext *context,
void *fe_data,
int status,
const char *error_message));
/* When a message which has the `partial' bit set, meaning we only downloaded
the first 20 lines because it was huge, this function will be called to
return some HTML to tack onto the end of the message to explain that it
is truncated, and provide a clickable link which will download the whole
message.
*/
extern char *MSG_GeneratePartialMessageBlurb (MSG_Pane* messagepane,
URL_Struct *url, void *closure,
MimeHeaders *headers);
extern int MSG_GetUrlQueueSize (const char *url, MWContext *context);
extern XP_Bool MSG_RequestForReturnReceipt(MSG_Pane* pane);
extern XP_Bool MSG_SendingMDNInProgress(MSG_Pane* pane);
extern uint32 MSG_GetIMAPMessageSizeFromDB(MSG_Pane *masterPane, const char *hostName, char *folderName, char *id, XP_Bool idIsUid);
extern void MSG_RefreshFoldersForUpdatedIMAPHosts(MWContext *context);
extern XP_Bool MSG_MailCheck(MWContext *context, MSG_Prefs *prefs);
extern void MSG_Pop3MailCheck(MWContext *context);
extern int NET_parse_news_url (const char *url,
char **host_and_portP,
XP_Bool *securepP,
char **groupP,
char **message_idP,
char **command_specific_dataP);
extern char *MSG_GetArbitraryHeadersForHost(MSG_Master *master, const char *hostName);
XP_END_PROTOS
#endif

View File

@@ -1,45 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* msgtypes.h --- types for the mail/news reader module.
*/
#ifndef _MSGTYPES_H_
#define _MSGTYPES_H_
/* This file defines types that are used by libmsg. Actually, it's rather
underpopulated right now; much more should be moved here from msgcom.h. */
/* Instances of MSG_Pane are used to represent the various panes in the user
interfaces. The FolderPanes and MessagePanes must have a context associated
with them, but the ThreadPane generally does not. MSG_Pane is deliberately
an opaque type; FE's can't manipulate them except via the calls defined
here. */
#ifdef XP_CPLUSPLUS
class MSG_Pane;
#else
typedef struct MSG_Pane MSG_Pane;
#endif
#endif /* _MSGTYPES_H_ */

View File

@@ -1,250 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*-
* Copyright (c) 1991, 1993
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)compat.h 8.13 (Berkeley) 2/21/94
*/
#ifndef _COMPAT_H_
#define _COMPAT_H_
#include <sys/types.h>
/*
* If your system doesn't typedef u_long, u_short, or u_char, change
* the 0 to a 1.
*/
/*DSR041497 - these are defined in pmwsock.h, so only need for DOUGSOCK*/
#ifdef XP_OS2_DOUGSOCK
typedef unsigned char u_char; /* 4.[34]BSD names. */
typedef unsigned int u_int;
typedef unsigned long u_long;
typedef unsigned short u_short;
#endif
/* If your system doesn't typedef size_t, change the 0 to a 1. */
#if 0
typedef unsigned int size_t; /* POSIX, 4.[34]BSD names. */
#endif
/* If your system doesn't typedef ssize_t, change the 0 to a 1. */
#if 0
typedef int ssize_t; /* POSIX names. */
#endif
/*
* If your system doesn't have the POSIX type for a signal mask,
* change the 0 to a 1.
*/
#if 0 /* POSIX 1003.1 signal mask type. */
typedef unsigned int sigset_t;
#endif
/*
* If your system's vsprintf returns a char *, not an int,
* change the 0 to a 1.
*/
#if defined (__sun) && !defined(SVR4) /* SUNOS */
#define VSPRINTF_CHARSTAR
#endif
/*
* If you don't have POSIX 1003.1 signals, the signal code surrounding the
* temporary file creation is intended to block all of the possible signals
* long enough to create the file and unlink it. All of this stuff is
* intended to use old-style BSD calls to fake POSIX 1003.1 calls.
*/
#ifdef NO_POSIX_SIGNALS
#define sigemptyset(set) (*(set) = 0)
#define sigfillset(set) (*(set) = ~(sigset_t)0, 0)
#define sigaddset(set,signo) (*(set) |= sigmask(signo), 0)
#define sigdelset(set,signo) (*(set) &= ~sigmask(signo), 0)
#define sigismember(set,signo) ((*(set) & sigmask(signo)) != 0)
#define SIG_BLOCK 1
#define SIG_UNBLOCK 2
#define SIG_SETMASK 3
static int __sigtemp; /* For the use of sigprocmask */
/* Repeated test of oset != NULL is to avoid "*0". */
#define sigprocmask(how, set, oset) \
((__sigtemp = \
(((how) == SIG_BLOCK) ? \
sigblock(0) | *(set) : \
(((how) == SIG_UNBLOCK) ? \
sigblock(0) & ~(*(set)) : \
((how) == SIG_SETMASK ? \
*(set) : sigblock(0))))), \
((oset) ? (*(oset ? oset : set) = sigsetmask(__sigtemp)) : \
sigsetmask(__sigtemp)), 0)
#endif
/*
* If your system doesn't have an include file with the appropriate
* byte order set, make sure you specify the correct one.
*/
#ifndef BYTE_ORDER
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax */
#define BIG_ENDIAN 4321 /* MSB first: 68000, ibm, net */
#define BYTE_ORDER BIG_ENDIAN /* Set for your system. */
#endif
#if defined(SYSV) || defined(SYSTEM5) || defined(__sun)
#define index(a, b) strchr(a, b)
#define rindex(a, b) strrchr(a, b)
#define bzero(a, b) memset(a, 0, b)
#define bcmp(a, b, n) memcmp(a, b, n)
#define bcopy(a, b, n) memmove(b, a, n)
#endif
#if defined(BSD) || defined(BSD4_3)
#define strchr(a, b) index(a, b)
#define strrchr(a, b) rindex(a, b)
#define memcmp(a, b, n) bcmp(a, b, n)
#define memmove(a, b, n) bcopy(b, a, n)
#endif
/*
* 32-bit machine. The db routines are theoretically independent of
* the size of u_shorts and u_longs, but I don't know that anyone has
* ever actually tried it. At a minimum, change the following #define's
* if you are trying to compile on a different type of system.
*/
#ifndef USHRT_MAX
#define USHRT_MAX 0xFFFF
#define ULONG_MAX 0xFFFFFFFF
#endif
#ifndef O_ACCMODE /* POSIX 1003.1 access mode mask. */
#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR)
#endif
#ifndef _POSIX2_RE_DUP_MAX /* POSIX 1003.2 RE limit. */
#define _POSIX2_RE_DUP_MAX 255
#endif
/*
* If you can't provide lock values in the open(2) call. Note, this
* allows races to happen.
*/
#ifndef O_EXLOCK /* 4.4BSD extension. */
#define O_EXLOCK 0
#endif
#ifndef O_SHLOCK /* 4.4BSD extension. */
#define O_SHLOCK 0
#endif
#ifndef EFTYPE
#define EFTYPE EINVAL /* POSIX 1003.1 format errno. */
#endif
#ifndef WCOREDUMP /* 4.4BSD extension */
#define WCOREDUMP(a) 0
#endif
#ifndef STDERR_FILENO
#define STDIN_FILENO 0 /* ANSI C #defines */
#define STDOUT_FILENO 1
#define STDERR_FILENO 2
#endif
#ifndef SEEK_END
#define SEEK_SET 0 /* POSIX 1003.1 seek values */
#define SEEK_CUR 1
#define SEEK_END 2
#endif
#ifndef _POSIX_VDISABLE /* POSIX 1003.1 disabling char. */
#define _POSIX_VDISABLE 0 /* Some systems used 0. */
#endif
#ifndef TCSASOFT /* 4.4BSD extension. */
#define TCSASOFT 0
#endif
#ifndef _POSIX2_RE_DUP_MAX /* POSIX 1003.2 values. */
#define _POSIX2_RE_DUP_MAX 255
#endif
#ifndef NULL /* ANSI C #defines NULL everywhere. */
#define NULL 0
#endif
#ifndef MAX /* Usually found in <sys/param.h>. */
#define MAX(_a,_b) ((_a)<(_b)?(_b):(_a))
#endif
#ifndef MIN /* Usually found in <sys/param.h>. */
#define MIN(_a,_b) ((_a)<(_b)?(_a):(_b))
#endif
/* Default file permissions. */
#ifndef DEFFILEMODE /* 4.4BSD extension. */
#define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)
#endif
#ifndef __sun
#ifndef S_ISDIR /* POSIX 1003.1 file type tests. */
#define S_ISDIR(m) ((m & 0170000) == 0040000) /* directory */
#define S_ISCHR(m) ((m & 0170000) == 0020000) /* char special */
#define S_ISBLK(m) ((m & 0170000) == 0060000) /* block special */
#define S_ISREG(m) ((m & 0170000) == 0100000) /* regular file */
#define S_ISFIFO(m) ((m & 0170000) == 0010000) /* fifo */
#endif
#ifndef S_ISLNK /* BSD POSIX 1003.1 extensions */
#define S_ISLNK(m) ((m & 0170000) == 0120000) /* symbolic link */
#define S_ISSOCK(m) ((m & 0170000) == 0140000) /* socket */
#endif
#endif /* __sun */
/* The type of a va_list. */
#ifndef _BSD_VA_LIST_ /* 4.4BSD #define. */
#define _BSD_VA_LIST_ char *
#endif
#endif /* !_COMPAT_H_ */

File diff suppressed because it is too large Load Diff

View File

@@ -1,133 +0,0 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* np.h $Revision: 3.1 $
* Prototypes for functions exported by libplugin and called by the FEs or other XP libs.
* Prototypes for functions exported by the FEs and called by libplugin are in nppg.h.
*/
#ifndef _NP_H
#define _NP_H
#include "lo_ele.h"
#include "npapi.h"
#include "net.h"
#ifdef XP_UNIX
/* Aaagh. npapi.h include Xlib.h. Bool is being #defined by Xlib and
we are typedeffing it in the navigator. */
#ifdef Bool
#undef Bool
#endif /* Bool */
#endif
typedef enum { NP_Untyped = 0, NP_OLE, NP_Plugin } NPAppType;
typedef enum { NP_FullPage = 1, NP_Embedded } NPPageType;
typedef void* NPReference;
#define NPRefFromStart ((NPReference)NULL)
/* it's lame that this is supposed to support more than plugins but
it has plugin specific junk (wdata) in it -jg */
struct _NPEmbeddedApp {
struct _NPEmbeddedApp *next;
NPAppType type;
void *fe_data;
void *np_data;
NPWindow *wdata;
NPPageType pagePluginType;
};
/* Uncomment this to enable ANTHRAX. .c files affected: npglue.c, layembed.c, layobj.c */
/* amusil 1.8.98 */
/* #define ANTHRAX */
XP_BEGIN_PROTOS
extern void NPL_Init(void);
extern void NPL_Shutdown(void);
extern void NPL_RegisterDefaultConverters(void);
extern NPError NPL_RegisterPluginFile(const char* pluginname, const char* filename,
const char* description, void* pd);
extern NPError NPL_RegisterPluginType(NPMIMEType type, const char *extentstring,
const char* description, void* fileType, void* pd, XP_Bool enabled);
extern NPError NPL_RefreshPluginList(XP_Bool reloadPages);
extern NPBool NPL_IteratePluginFiles(NPReference* ref, char** name, char** filename, char** description);
extern NPBool NPL_IteratePluginTypes(NPReference* ref, NPReference plugin, NPMIMEType* type,
char*** extents, char** description, void** fileType);
extern char** NPL_FindPluginsForType(const char* typeToFind);
extern char* NPL_FindPluginEnabledForType(const char* typeToFind);
extern NPError NPL_EnablePlugin(NPMIMEType type,
const char* pluginname,
XP_Bool enabled);
extern NPError NPL_EnablePluginType(NPMIMEType type, void* pdesc, XP_Bool enabled);
extern NPError NPL_DisablePlugin(NPMIMEType type);
extern NPEmbeddedApp* NPL_EmbedCreate(MWContext *context, LO_EmbedStruct *embed_struct);
extern NPError NPL_EmbedStart(MWContext* cx, LO_EmbedStruct* embed_struct, NPEmbeddedApp* app);
extern void NPL_EmbedSize(NPEmbeddedApp *app);
/* ~~av the following is used in CGenericDoc::FreeEmbedElement */
extern int32 NPL_GetEmbedReferenceCount(NPEmbeddedApp *app);
extern void NPL_EmbedDelete(MWContext *context, LO_EmbedStruct *embed_struct);
extern XP_Bool NPL_IsLiveConnected(LO_EmbedStruct *embed);
extern int NPL_HandleEvent(NPEmbeddedApp *app, void *event, void* window); /* window may be NULL */
extern void NPL_Print(NPEmbeddedApp *app, void *printData);
extern void NPL_SamePage(MWContext *context);
extern void NPL_SameElement(LO_EmbedStruct *embed);
extern void NPL_DeleteSessionData(MWContext* context, void* sessionData);
extern XP_Bool NPL_HandleURL(MWContext *pContext, FO_Present_Types iFormatOut, URL_Struct *pURL,
Net_GetUrlExitFunc *pExitFunc);
#ifndef XP_MAC
extern void NPL_DisplayPluginsAsHTML(FO_Present_Types format_out, URL_Struct *urls, MWContext *cx);
#endif
extern void NPL_PreparePrint(MWContext* context, SHIST_SavedData* savedData);
extern NET_StreamClass* NPL_NewEmbedStream(FO_Present_Types format_out, void *type, URL_Struct *urls, MWContext *cx);
extern NET_StreamClass* NPL_NewPresentStream(FO_Present_Types format_out, void *type, URL_Struct *urls, MWContext *cx);
extern unsigned int NPL_WriteReady(NET_StreamClass *stream);
extern int NPL_Write(NET_StreamClass *stream, const unsigned char *str, int32 len);
extern void NPL_Complete(NET_StreamClass *stream);
extern void NPL_Abort(NET_StreamClass *stream, int status);
extern XP_Bool NPL_IsEmbedWindowed(NPEmbeddedApp *app);
extern void NPL_URLExit(URL_Struct *urls, int status, MWContext *cx);
#ifdef ANTHRAX
extern char** NPL_FindAppletsForType(const char* typeToFind);
extern char* NPL_FindAppletEnabledForMimetype(const char* mimetype);
extern NPError NPL_RegisterAppletType(NPMIMEType type);
#endif /* ANTHRAX */
PR_EXTERN(void) NPL_SetPluginWindow(void *data);
XP_END_PROTOS
#endif /* _NP_H */

View File

@@ -1,575 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* npapi.h $Revision: 3.1.10.1 $
* Netscape client plug-in API spec
*/
#ifndef _NPAPI_H_
#define _NPAPI_H_
#ifdef __OS2__
#pragma pack(1)
#endif
#if defined(JAVA)
#include "jri.h" /* Java Runtime Interface */
#endif
#if defined (__OS2__ ) || defined (OS2)
# ifndef XP_OS2
# define XP_OS2 1
# endif /* XP_OS2 */
#endif /* __OS2__ */
#ifdef _WINDOWS
# ifndef XP_WIN
# define XP_WIN 1
# endif /* XP_WIN */
#endif /* _WINDOWS */
#ifdef __MWERKS__
# define _declspec __declspec
# ifdef macintosh
# ifndef XP_MAC
# define XP_MAC 1
# endif /* XP_MAC */
# endif /* macintosh */
# ifdef __INTEL__
# undef NULL
# ifndef XP_WIN
# define XP_WIN 1
# endif /* __INTEL__ */
# endif /* XP_PC */
#endif /* __MWERKS__ */
#ifdef XP_MAC
#include <Quickdraw.h>
#include <Events.h>
#endif
#ifdef XP_UNIX
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#endif
/*----------------------------------------------------------------------*/
/* Plugin Version Constants */
/*----------------------------------------------------------------------*/
#define NP_VERSION_MAJOR 0
#define NP_VERSION_MINOR 12
/* The OS/2 version of Netscape uses RC_DATA to define the
mime types, file extentions, etc that are required.
Use a vertical bar to seperate types, end types with \0.
FileVersion and ProductVersion are 32bit ints, all other
entries are strings the MUST be terminated wwith a \0.
AN EXAMPLE:
RCDATA NP_INFO_ProductVersion { 1,0,0,1,}
RCDATA NP_INFO_MIMEType { "video/x-video|",
"video/x-flick\0" }
RCDATA NP_INFO_FileExtents { "avi|",
"flc\0" }
RCDATA NP_INFO_FileOpenName{ "MMOS2 video player(*.avi)|",
"MMOS2 Flc/Fli player(*.flc)\0" }
RCDATA NP_INFO_FileVersion { 1,0,0,1 }
RCDATA NP_INFO_CompanyName { "Netscape Communications\0" }
RCDATA NP_INFO_FileDescription { "NPAVI32 Extension DLL\0"
RCDATA NP_INFO_InternalName { "NPAVI32\0" )
RCDATA NP_INFO_LegalCopyright { "Copyright Netscape Communications \251 1996\0"
RCDATA NP_INFO_OriginalFilename { "NVAPI32.DLL" }
RCDATA NP_INFO_ProductName { "NPAVI32 Dynamic Link Library\0" }
*/
/* RC_DATA types for version info - required */
#define NP_INFO_ProductVersion 1
#define NP_INFO_MIMEType 2
#define NP_INFO_FileOpenName 3
#define NP_INFO_FileExtents 4
/* RC_DATA types for version info - used if found */
#define NP_INFO_FileDescription 5
#define NP_INFO_ProductName 6
/* RC_DATA types for version info - optional */
#define NP_INFO_CompanyName 7
#define NP_INFO_FileVersion 8
#define NP_INFO_InternalName 9
#define NP_INFO_LegalCopyright 10
#define NP_INFO_OriginalFilename 11
#ifndef RC_INVOKED
/*----------------------------------------------------------------------*/
/* Definition of Basic Types */
/*----------------------------------------------------------------------*/
#ifndef _UINT16
typedef unsigned short uint16;
#endif
#ifndef _UINT32
#if defined(__alpha)
typedef unsigned int uint32;
#else /* __alpha */
typedef unsigned long uint32;
#endif /* __alpha */
#endif
#ifndef _INT16
typedef short int16;
#endif
#ifndef _INT32
#if defined(__alpha)
typedef int int32;
#else /* __alpha */
typedef long int32;
#endif /* __alpha */
#endif
#ifndef FALSE
#define FALSE (0)
#endif
#ifndef TRUE
#define TRUE (1)
#endif
#ifndef NULL
#define NULL (0L)
#endif
typedef unsigned char NPBool;
typedef int16 NPError;
typedef int16 NPReason;
typedef char* NPMIMEType;
/*----------------------------------------------------------------------*/
/* Structures and definitions */
/*----------------------------------------------------------------------*/
#ifdef XP_MAC
#pragma options align=mac68k
#endif
/*
* NPP is a plug-in's opaque instance handle
*/
typedef struct _NPP
{
void* pdata; /* plug-in private data */
void* ndata; /* netscape private data */
} NPP_t;
typedef NPP_t* NPP;
typedef struct _NPStream
{
void* pdata; /* plug-in private data */
void* ndata; /* netscape private data */
const char* url;
uint32 end;
uint32 lastmodified;
void* notifyData;
} NPStream;
typedef struct _NPByteRange
{
int32 offset; /* negative offset means from the end */
uint32 length;
struct _NPByteRange* next;
} NPByteRange;
typedef struct _NPSavedData
{
int32 len;
void* buf;
} NPSavedData;
typedef struct _NPRect
{
uint16 top;
uint16 left;
uint16 bottom;
uint16 right;
} NPRect;
typedef struct _NPSize
{
int32 width;
int32 height;
} NPSize;
#ifdef XP_UNIX
/*
* Unix specific structures and definitions
*/
/*
* Callback Structures.
*
* These are used to pass additional platform specific information.
*/
enum {
NP_SETWINDOW = 1,
NP_PRINT
};
typedef struct
{
int32 type;
} NPAnyCallbackStruct;
typedef struct
{
int32 type;
Display* display;
Visual* visual;
Colormap colormap;
unsigned int depth;
} NPSetWindowCallbackStruct;
typedef struct
{
int32 type;
FILE* fp;
} NPPrintCallbackStruct;
#endif /* XP_UNIX */
/*
* List of variable names for which NPP_GetValue shall be implemented
*/
typedef enum {
NPPVpluginNameString = 1,
NPPVpluginDescriptionString,
NPPVpluginWindowBool,
NPPVpluginTransparentBool,
NPPVjavaClass,
NPPVpluginWindowSize
} NPPVariable;
/*
* List of variable names for which NPN_GetValue is implemented by Mozilla
*/
typedef enum {
NPNVxDisplay = 1,
NPNVxtAppContext,
NPNVnetscapeWindow,
NPNVjavascriptEnabledBool,
NPNVasdEnabledBool,
NPNVisOfflineBool
} NPNVariable;
/*
* The type of a NPWindow - it specifies the type of the data structure
* returned in the window field.
*/
typedef enum {
NPWindowTypeWindow = 1,
NPWindowTypeDrawable
} NPWindowType;
typedef struct _NPWindow
{
void* window; /* Platform specific window handle */
/* OS/2: x - Position of bottom left corner */
/* OS/2: y - relative to visible netscape window */
uint32 x; /* Position of top left corner relative */
uint32 y; /* to a netscape page. */
uint32 width; /* Maximum window size */
uint32 height;
NPRect clipRect; /* Clipping rectangle in port coordinates */
/* Used by MAC only. */
#ifdef XP_UNIX
void * ws_info; /* Platform-dependent additonal data */
#endif /* XP_UNIX */
NPWindowType type; /* Is this a window or a drawable? */
} NPWindow;
typedef struct _NPFullPrint
{
NPBool pluginPrinted; /* Set TRUE if plugin handled fullscreen */
/* printing */
NPBool printOne; /* TRUE if plugin should print one copy */
/* to default printer */
void* platformPrint; /* Platform-specific printing info */
} NPFullPrint;
typedef struct _NPEmbedPrint
{
NPWindow window;
void* platformPrint; /* Platform-specific printing info */
} NPEmbedPrint;
typedef struct _NPPrint
{
uint16 mode; /* NP_FULL or NP_EMBED */
union
{
NPFullPrint fullPrint; /* if mode is NP_FULL */
NPEmbedPrint embedPrint; /* if mode is NP_EMBED */
} print;
} NPPrint;
#ifdef XP_MAC
typedef EventRecord NPEvent;
#elif defined(XP_WIN)
typedef struct _NPEvent
{
uint16 event;
uint32 wParam;
uint32 lParam;
} NPEvent;
#elif defined(XP_OS2)
typedef struct _NPEvent
{
uint32 event;
uint32 wParam;
uint32 lParam;
} NPEvent;
#elif defined (XP_UNIX)
typedef XEvent NPEvent;
#else
typedef void* NPEvent;
#endif /* XP_MAC */
#ifdef XP_MAC
typedef RgnHandle NPRegion;
#elif defined(XP_WIN)
typedef HRGN NPRegion;
#elif defined(XP_UNIX)
typedef Region NPRegion;
#else
typedef void *NPRegion;
#endif /* XP_MAC */
#ifdef XP_MAC
/*
* Mac-specific structures and definitions.
*/
typedef struct NP_Port
{
CGrafPtr port; /* Grafport */
int32 portx; /* position inside the topmost window */
int32 porty;
} NP_Port;
/*
* Non-standard event types that can be passed to HandleEvent
*/
#define getFocusEvent (osEvt + 16)
#define loseFocusEvent (osEvt + 17)
#define adjustCursorEvent (osEvt + 18)
#endif /* XP_MAC */
/*
* Values for mode passed to NPP_New:
*/
#define NP_EMBED 1
#define NP_FULL 2
/*
* Values for stream type passed to NPP_NewStream:
*/
#define NP_NORMAL 1
#define NP_SEEK 2
#define NP_ASFILE 3
#define NP_ASFILEONLY 4
#define NP_MAXREADY (((unsigned)(~0)<<1)>>1)
#ifdef XP_MAC
#pragma options align=reset
#endif
/*----------------------------------------------------------------------*/
/* Error and Reason Code definitions */
/*----------------------------------------------------------------------*/
/*
* Values of type NPError:
*/
#define NPERR_BASE 0
#define NPERR_NO_ERROR (NPERR_BASE + 0)
#define NPERR_GENERIC_ERROR (NPERR_BASE + 1)
#define NPERR_INVALID_INSTANCE_ERROR (NPERR_BASE + 2)
#define NPERR_INVALID_FUNCTABLE_ERROR (NPERR_BASE + 3)
#define NPERR_MODULE_LOAD_FAILED_ERROR (NPERR_BASE + 4)
#define NPERR_OUT_OF_MEMORY_ERROR (NPERR_BASE + 5)
#define NPERR_INVALID_PLUGIN_ERROR (NPERR_BASE + 6)
#define NPERR_INVALID_PLUGIN_DIR_ERROR (NPERR_BASE + 7)
#define NPERR_INCOMPATIBLE_VERSION_ERROR (NPERR_BASE + 8)
#define NPERR_INVALID_PARAM (NPERR_BASE + 9)
#define NPERR_INVALID_URL (NPERR_BASE + 10)
#define NPERR_FILE_NOT_FOUND (NPERR_BASE + 11)
#define NPERR_NO_DATA (NPERR_BASE + 12)
#define NPERR_STREAM_NOT_SEEKABLE (NPERR_BASE + 13)
/*
* Values of type NPReason:
*/
#define NPRES_BASE 0
#define NPRES_DONE (NPRES_BASE + 0)
#define NPRES_NETWORK_ERR (NPRES_BASE + 1)
#define NPRES_USER_BREAK (NPRES_BASE + 2)
/*
* Don't use these obsolete error codes any more.
*/
#define NP_NOERR NP_NOERR_is_obsolete_use_NPERR_NO_ERROR
#define NP_EINVAL NP_EINVAL_is_obsolete_use_NPERR_GENERIC_ERROR
#define NP_EABORT NP_EABORT_is_obsolete_use_NPRES_USER_BREAK
/*
* Version feature information
*/
#define NPVERS_HAS_STREAMOUTPUT 8
#define NPVERS_HAS_NOTIFICATION 9
#define NPVERS_HAS_LIVECONNECT 9
#define NPVERS_WIN16_HAS_LIVECONNECT 9
#define NPVERS_68K_HAS_LIVECONNECT 11
#define NPVERS_HAS_WINDOWLESS 11
/*----------------------------------------------------------------------*/
/* Function Prototypes */
/*----------------------------------------------------------------------*/
#if defined(_WINDOWS) && !defined(WIN32)
#define NP_LOADDS _loadds
#else
#if defined(__OS2__)
#define NP_LOADDS _System
#else
#define NP_LOADDS
#endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
/*
* NPP_* functions are provided by the plugin and called by the navigator.
*/
#ifdef XP_UNIX
char* NPP_GetMIMEDescription(void);
#endif /* XP_UNIX */
NPError NP_LOADDS NPP_Initialize(void);
void NP_LOADDS NPP_Shutdown(void);
NPError NP_LOADDS NPP_New(NPMIMEType pluginType, NPP instance,
uint16 mode, int16 argc, char* argn[],
char* argv[], NPSavedData* saved);
NPError NP_LOADDS NPP_Destroy(NPP instance, NPSavedData** save);
NPError NP_LOADDS NPP_SetWindow(NPP instance, NPWindow* window);
NPError NP_LOADDS NPP_NewStream(NPP instance, NPMIMEType type,
NPStream* stream, NPBool seekable,
uint16* stype);
NPError NP_LOADDS NPP_DestroyStream(NPP instance, NPStream* stream,
NPReason reason);
int32 NP_LOADDS NPP_WriteReady(NPP instance, NPStream* stream);
int32 NP_LOADDS NPP_Write(NPP instance, NPStream* stream, int32 offset,
int32 len, void* buffer);
void NP_LOADDS NPP_StreamAsFile(NPP instance, NPStream* stream,
const char* fname);
void NP_LOADDS NPP_Print(NPP instance, NPPrint* platformPrint);
int16 NP_LOADDS NPP_HandleEvent(NPP instance, void* event);
void NP_LOADDS NPP_URLNotify(NPP instance, const char* url,
NPReason reason, void* notifyData);
#if defined(JAVA)
jref NP_LOADDS NPP_GetJavaClass(void);
#endif
NPError NP_LOADDS NPP_GetValue(void *instance, NPPVariable variable,
void *value);
NPError NP_LOADDS NPP_SetValue(void *instance, NPNVariable variable,
void *value);
/*
* NPN_* functions are provided by the navigator and called by the plugin.
*/
void NP_LOADDS NPN_Version(int* plugin_major, int* plugin_minor,
int* netscape_major, int* netscape_minor);
NPError NP_LOADDS NPN_GetURLNotify(NPP instance, const char* url,
const char* target, void* notifyData);
NPError NP_LOADDS NPN_GetURL(NPP instance, const char* url,
const char* target);
NPError NP_LOADDS NPN_PostURLNotify(NPP instance, const char* url,
const char* target, uint32 len,
const char* buf, NPBool file,
void* notifyData);
NPError NP_LOADDS NPN_PostURL(NPP instance, const char* url,
const char* target, uint32 len,
const char* buf, NPBool file);
NPError NP_LOADDS NPN_RequestRead(NPStream* stream, NPByteRange* rangeList);
NPError NP_LOADDS NPN_NewStream(NPP instance, NPMIMEType type,
const char* target, NPStream** stream);
int32 NP_LOADDS NPN_Write(NPP instance, NPStream* stream, int32 len,
void* buffer);
NPError NP_LOADDS NPN_DestroyStream(NPP instance, NPStream* stream,
NPReason reason);
void NP_LOADDS NPN_Status(NPP instance, const char* message);
const char* NP_LOADDS NPN_UserAgent(NPP instance);
void* NP_LOADDS NPN_MemAlloc(uint32 size);
void NP_LOADDS NPN_MemFree(void* ptr);
uint32 NP_LOADDS NPN_MemFlush(uint32 size);
void NP_LOADDS NPN_ReloadPlugins(NPBool reloadPages);
#if defined(JAVA)
JRIEnv* NP_LOADDS NPN_GetJavaEnv(void);
jref NP_LOADDS NPN_GetJavaPeer(NPP instance);
#endif
NPError NP_LOADDS NPN_GetValue(NPP instance, NPNVariable variable,
void *value);
NPError NP_LOADDS NPN_SetValue(NPP instance, NPPVariable variable,
void *value);
void NP_LOADDS NPN_InvalidateRect(NPP instance, NPRect *invalidRect);
void NP_LOADDS NPN_InvalidateRegion(NPP instance, NPRegion invalidRegion);
void NP_LOADDS NPN_ForceRedraw(NPP instance);
#ifdef __cplusplus
} /* end extern "C" */
#endif
#endif /* RC_INVOKED */
#ifdef __OS2__
#pragma pack()
#endif
#endif /* _NPAPI_H_ */

View File

@@ -1,52 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* npassoc.h $Revision: 3.1 $
* xp filetype associations
*/
#ifndef _NPASSOC_H
#define _NPASSOC_H
#include "xp_core.h"
typedef struct _NPFileTypeAssoc {
char* type; /* a MIME type */
char* description; /* Intelligible description */
char** extentlist; /* a NULL-terminated list of file extensions */
char* extentstring; /* the same extensions, as a single string */
void* fileType; /* platform-specific file selector magic */
struct _NPFileTypeAssoc* pNext;
} NPFileTypeAssoc;
XP_BEGIN_PROTOS
extern NPFileTypeAssoc* NPL_NewFileAssociation(const char *type, const char *extensions,
const char *description, void *fileType);
extern void* NPL_DeleteFileAssociation(NPFileTypeAssoc *fassoc);
extern void NPL_RegisterFileAssociation(NPFileTypeAssoc *fassoc);
extern NPFileTypeAssoc* NPL_RemoveFileAssociation(NPFileTypeAssoc *fassoc);
extern NPFileTypeAssoc* NPL_GetFileAssociation(const char *type);
XP_END_PROTOS
#endif /* _NPASSOC_H */

View File

@@ -1,54 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef nspr_locks_h___
#define nspr_locks_h___
/* many people in libnet [mkautocf.c ...] (and possibly others) get
* NSPR20 for free by including nslocks.h. To minimize changes during
* the javaectomy effort, we are including this file (where previously
* it was only included if java was included.
*/
#include "prmon.h"
#ifdef NSPR20
#ifdef XP_MAC
#include "prpriv.h" /* for MonitorEntryCount */
#else
#include "private/prpriv.h"
#endif
#endif /* NSPR20 */
#if defined(JAVA)
XP_BEGIN_PROTOS
extern PRMonitor* libnet_asyncIO;
XP_END_PROTOS
#define LIBNET_LOCK() PR_EnterMonitor(libnet_asyncIO)
#define LIBNET_UNLOCK() PR_ExitMonitor(libnet_asyncIO)
#define LIBNET_IS_LOCKED() PR_InMonitor(libnet_asyncIO)
#else /* !JAVA */
#define LIBNET_LOCK()
#define LIBNET_UNLOCK()
#define LIBNET_IS_LOCKED() 1
#endif /* JAVA */
#endif /* nspr_locks_h___ */

View File

@@ -1,120 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/**********************************************************************
* ntOS.h - functionality used bt NT Operating System
*
**********************************************************************/
#ifndef _ntos_h
#define _ntos_h
#ifdef __cplusplus
extern "C" { /* Assume C declarations for C++ */
#endif /* __cplusplus */
/* prototypes for info.c */
typedef enum {
OS_WIN95,
OS_WINNT,
OS_WIN32S,
OS_UNKNOWN
} OS_TYPE;
typedef enum {
PROCESSOR_I386,
PROCESSOR_ALPHA,
PROCESSOR_MIPS,
PROCESSOR_PPC,
PROCESSOR_UNKNOWN
} PROCESSOR_TYPE;
OS_TYPE INFO_GetOperatingSystem ();
DWORD INFO_GetOperatingSystemMajorVersion ();
DWORD INFO_GetOperatingSystemMinorVersion ();
void OS_GetComputerName (LPTSTR computerName, int nComputerNameLength );
PROCESSOR_TYPE OS_GetProcessor ();
/* prototypes for path.c */
DWORD WINAPI PATH_RemoveRelative ( char * path );
DWORD WINAPI PATH_ConvertNtSlashesToUnix( LPCTSTR lpszNtPath, LPSTR lpszUnixPath );
/* prototypes for registry.c */
BOOL REG_CheckIfKeyExists( HKEY hKey, LPCTSTR registryKey );
BOOL REG_CreateKey( HKEY hKey, LPCTSTR registryKey );
BOOL REG_DeleteKey( HKEY hKey, LPCTSTR registryKey );
BOOL
REG_GetRegistryParameter(
HKEY hKey,
LPCTSTR registryKey,
LPTSTR QueryValueName,
LPDWORD ValueType,
LPBYTE ValueBuffer,
LPDWORD ValueBufferSize
);
BOOL
REG_SetRegistryParameter(
HKEY hKey,
LPCTSTR registryKey,
LPTSTR valueName,
DWORD valueType,
LPCTSTR ValueString,
DWORD valueStringLength
);
BOOL
REG_GetSubKeysInfo(
HKEY hKey,
LPCTSTR registryKey,
LPDWORD lpdwNumberOfSubKeys,
LPDWORD lpdwMaxSubKeyLength
);
BOOL
REG_GetSubKey( HKEY hKey,
LPCTSTR registryKey,
DWORD nSubKeyIndex,
LPTSTR registrySubKeyBuffer,
DWORD subKeyBufferSize
);
/* prototypes for service.c */
#define SERVRET_ERROR 0
#define SERVRET_INSTALLED 1
#define SERVRET_STARTING 2
#define SERVRET_STARTED 3
#define SERVRET_STOPPING 4
#define SERVRET_REMOVED 5
DWORD SERVICE_GetNTServiceStatus(LPCTSTR serviceName, LPDWORD lpLastError );
DWORD SERVICE_InstallNTService(LPCTSTR serviceName, LPCTSTR serviceExe );
DWORD SERVICE_RemoveNTService(LPCTSTR serviceName);
DWORD SERVICE_StartNTService(LPCTSTR serviceName);
DWORD SERVICE_StopNTService(LPCTSTR serviceName);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif

View File

@@ -1,201 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _NetscapeTypes_
#define _NetscapeTypes_
#include "xp_core.h"
/*
netlib
*/
typedef int FO_Present_Types;
typedef struct URL_Struct_ URL_Struct;
typedef struct _NET_StreamClass NET_StreamClass;
/*
* libi18n
*/
typedef struct OpaqueCCCDataObject *CCCDataObject;
typedef struct OpaqueINTL_CharSetInfo *INTL_CharSetInfo;
/* How to refill when there's a cache miss */
typedef enum NET_ReloadMethod
{
NET_DONT_RELOAD, /* use the cache */
NET_RESIZE_RELOAD, /* use the cache -- special for resizing */
NET_NORMAL_RELOAD, /* use IMS gets for reload */
NET_SUPER_RELOAD, /* retransfer everything */
NET_CACHE_ONLY_RELOAD /* Don't do anything if we miss in the cache.
(For the image library) */
} NET_ReloadMethod;
/*
plugins
*/
typedef struct _NPEmbeddedApp NPEmbeddedApp;
/*
history
*/
typedef struct _History_entry History_entry;
typedef struct History_ History;
/*
bookmarks (so shist.h doesn't have to include all of bkmks.h.)
Note, BM_Entry_struct is defined in bkmks.c. Not good practice
since this hides dependency info about the struct i.e., if you
change the struct, clients of the struct in other source files
will not indirectly recompile.
*/
typedef struct BM_Entry_struct BM_Entry;
/*
parser
*/
typedef struct _PA_Functions PA_Functions;
typedef struct PA_Tag_struct PA_Tag;
/*
layout
*/
typedef union LO_Element_struct LO_Element;
typedef struct LO_AnchorData_struct LO_AnchorData;
typedef struct LO_Color_struct LO_Color;
typedef struct LO_TextAttr_struct LO_TextAttr;
typedef struct LO_TextInfo_struct LO_TextInfo;
typedef struct LO_TextStruct_struct LO_TextStruct;
typedef struct LO_ImageAttr_struct LO_ImageAttr;
typedef struct LO_ImageStruct_struct LO_ImageStruct;
typedef struct LO_SubDocStruct_struct LO_SubDocStruct;
typedef struct LO_EmbedStruct_struct LO_EmbedStruct;
typedef struct LO_JavaAppStruct_struct LO_JavaAppStruct;
typedef struct LO_EdgeStruct_struct LO_EdgeStruct;
typedef struct LO_ObjectStruct_struct LO_ObjectStruct;
typedef union LO_FormElementData_struct LO_FormElementData;
typedef struct lo_FormElementOptionData_struct lo_FormElementOptionData;
typedef struct lo_FormElementSelectData_struct lo_FormElementSelectData;
typedef struct lo_FormElementTextData_struct lo_FormElementTextData;
typedef struct lo_FormElementTextareaData_struct lo_FormElementTextareaData;
typedef struct lo_FormElementMinimalData_struct lo_FormElementMinimalData;
typedef struct lo_FormElementToggleData_struct lo_FormElementToggleData;
typedef struct lo_FormElementObjectData_struct lo_FormElementObjectData;
typedef struct lo_FormElementKeygenData_struct lo_FormElementKeygenData;
typedef struct LO_Any_struct LO_Any;
typedef struct LO_FormSubmitData_struct LO_FormSubmitData;
typedef struct LO_FormElementStruct_struct LO_FormElementStruct;
typedef struct LO_LinefeedStruct_struct LO_LinefeedStruct;
typedef struct LO_HorizRuleStruct_struct LO_HorizRuleStruct;
typedef struct LO_BulletStruct_struct LO_BulletStruct;
/* was misspelled as LO_BullettStruct */
#define LO_BullettStruct LO_BulletStruct
typedef struct LO_TableStruct_struct LO_TableStruct;
typedef struct LO_CellStruct_struct LO_CellStruct;
typedef struct LO_Position_struct LO_Position;
typedef struct LO_Selection_struct LO_Selection;
typedef struct LO_HitLineResult_struct LO_HitLineResult;
typedef struct LO_HitElementResult_struct LO_HitElementResult;
typedef union LO_HitResult_struct LO_HitResult;
/* Line style parameter for displaying borders */
typedef enum {
LO_SOLID,
LO_DASH,
LO_BEVEL
} LO_LineStyle;
/*#ifndef NO_TAB_NAVIGATION */
typedef struct LO_tabFocus_struct LO_TabFocusData;
/* NO_TAB_NAVIGATION */
/*
XLation
*/
typedef struct PrintInfo_ PrintInfo;
typedef struct PrintSetup_ PrintSetup;
/*
mother of data structures
*/
typedef struct MWContext_ MWContext;
/*
Chrome structure
*/
typedef struct _Chrome Chrome;
/*
Editor
*/
#include "edttypes.h"
typedef enum
{
MWContextAny = -1, /* Used as a noopt when searching for a context of a particular type */
MWContextBrowser, /* A web browser window */
MWContextMail, /* A mail reader window */
MWContextNews, /* A news reader window */
MWContextMailMsg, /* A window to display a mail msg */
MWContextNewsMsg, /* A window to display a news msg */
MWContextMessageComposition, /* A news-or-mail message editing window */
MWContextSaveToDisk, /* The placeholder window for a download */
MWContextText, /* non-window context for text conversion */
MWContextPostScript, /* non-window context for PS conversion */
MWContextBiff, /* non-window context for background mail
notification */
MWContextJava, /* non-window context for Java */
MWContextBookmarks, /* Context for the bookmarks */
MWContextAddressBook, /* Context for the addressbook */
MWContextOleNetwork, /* non-window context for the OLE network1 object */
MWContextPrint, /* non-window context for printing */
MWContextDialog, /* non-browsing dialogs. view-source/security */
MWContextMetaFile, /* non-window context for Windows metafile support */
MWContextEditor, /* An Editor Window */
MWContextSearch, /* a window for modeless search dialog */
MWContextSearchLdap, /* a window for modeless LDAP search dialog */
MWContextHTMLHelp, /* HTML Help context to load map files */
MWContextMailFilters, /* Mail filters context */
MWContextHistory, /* A history window */
MWContextMailNewsProgress, /* a progress pane for mail/news URLs */
MWContextPane, /* Misc browser pane/window in weird parts of
* the UI, such as the navigation center */
MWContextRDFSlave, /* Slave context for RDF network loads */
MWContextProgressModule, /* Progress module (PW_ functions) */
MWContextIcon /* Context for loading images as icons */
} MWContextType;
#define MAIL_NEWS_TYPE(x) ( \
((x) == MWContextMail) || \
((x) == MWContextNews) || \
((x) == MWContextMailMsg) || \
((x) == MWContextNewsMsg) )
struct LJAppletData;
#endif /* _NetscapeTypes_ */

View File

@@ -1,73 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* ---------------------------------------------------------------------------
Stuff to fake unix file I/O on os2 boxes
------------------------------------------------------------------------*/
#ifndef OS2FILE_H
#define OS2FILE_H
#if defined(XP_OS2)
/* 32-bit stuff here */
#define INCL_DOSPROCESS
#define INCL_DOS
#define INCL_DOSERRORS
#define INCL_DOSFILEMGR
#define INCL_DOSMODULEMGR
#define INCL_PM
#define INCL_WIN
#define INCL_WINATOM
#define INCL_GPI
#define TID OS2TID /* global rename in OS2 H's! */
#include <os2.h>
#undef TID /* and restore */
/*DAK these are empty.. #include <windef.h> */
/*DAK these are empty.. #include <winbase.h>*/
#include <stdlib.h>
#include <sys\types.h>
#include <sys\stat.h>
#include "dirent.h"
/*DSR020697 - now using dirent.h for DIR...*/
#define _ST_FSTYPSZ 16
typedef unsigned long mode_t;
typedef long uid_t;
typedef long gid_t;
#ifndef XP_OS2
typedef long off_t;
#endif
typedef unsigned long nlink_t;
typedef struct timestruc {
time_t tv_sec; /* seconds */
long tv_nsec; /* and nanoseconds */
} timestruc_t;
/*DSR020697 - now using dirent.h for dirent, S_ISDIR...*/
#endif /* XP_OS2 */
#define CONST const
#endif /* OS2FILE_H */

View File

@@ -1,68 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* New file created by IBM-VPB050196 */
#ifndef _OS2SOCK_H
#define _OS2SOCK_H
#if !defined(RC_INVOKED)
#include "mcom_db.h"
#endif
/*DSR050297 - this is based on types.h in the TCP/IP headers... */
/*I'm not including types.h because that causes all sorts of damage... */
#define MAXHOSTNAMELEN 120
#if defined(XP_OS2_DOUGSOCK)
#ifndef BSD_SELECT
#error you need BSD_SELECT defined in your command line for all files
#endif
#include <nerrno.h>
#include <sys\socket.h>
#include <sys\select.h>
#include <sys\time.h>
#include <sys\ioctl.h>
#include <netdb.h>
#include <utils.h>
#else
/*DSR072196 - replaced many files with pmwsock.h...*/
#include <pmwsock.h>
#ifndef IP_MULTICAST_IF
#define IP_MULTICAST_IF 2 /* set/get IP multicast interface*/
#define IP_MULTICAST_TTL 3 /* set/get IP multicast timetolive*/
#define IP_MULTICAST_LOOP 4 /* set/get IP multicast loopback */
#define IP_ADD_MEMBERSHIP 5 /* add an IP group membership */
#define IP_DROP_MEMBERSHIP 6 /* drop an IP group membership */
#define IP_DEFAULT_MULTICAST_TTL 1 /* normally limit m'casts to 1 hop */
#define IP_DEFAULT_MULTICAST_LOOP 1 /* normally hear sends if a member */
#define IP_MAX_MEMBERSHIPS 20 /* per socket; must fit in one mbuf*/
/*
* Argument structure for IP_ADD_MEMBERSHIP and IP_DROP_MEMBERSHIP.
*/
struct ip_mreq {
struct in_addr imr_multiaddr; /* IP multicast address of group */
struct in_addr imr_interface; /* local IP address of interface */
};
#endif
#endif
#endif

View File

@@ -1,66 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef PICS_H
#define PICS_H
typedef struct {
char *service;
XP_Bool generic;
char *fur; /* means 'for' */
XP_List *ratings;
} PICS_RatingsStruct;
typedef struct {
char *name;
double value;
} PICS_RatingValue;
typedef enum {
PICS_RATINGS_PASSED,
PICS_RATINGS_FAILED,
PICS_NO_RATINGS
} PICS_PassFailReturnVal;
void PICS_FreeRatingsStruct(PICS_RatingsStruct *rs);
/* return NULL or ratings struct */
PICS_RatingsStruct * PICS_ParsePICSLable(char * label);
/* returns TRUE if page should be censored
* FALSE if page is allowed to be shown
*/
PICS_PassFailReturnVal PICS_CompareToUserSettings(PICS_RatingsStruct *rs, char *cur_page_url);
XP_Bool PICS_IsPICSEnabledByUser(void);
XP_Bool PICS_AreRatingsRequired(void);
/* returns a URL string from a RatingsStruct
* that includes the service URL and rating info
*/
char * PICS_RStoURL(PICS_RatingsStruct *rs, char *cur_page_url);
void PICS_Init(MWContext *context);
XP_Bool PICS_CanUserEnableAdditionalJavaCapabilities(void);
XP_Bool PICS_CheckForValidTreeRating(char *url_address);
#endif /* PICS_H */

View File

@@ -1,26 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* Prefetching H file */
#ifndef PREFETCH_H
#define PREFETCH_H
extern void PRE_AddToList(MWContext* context, char* url, double value);
extern void PRE_Fetch(MWContext* context);
extern void PRE_Enable(XP_Bool enabled);
#endif /* PREFETCH_H */

View File

@@ -1,420 +0,0 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* This file should contain prototypes of all public functions for all
modules in the client library.
This file will be included automatically when source includes "client.h".
By the time this file is included, all global typedefs have been executed.
*/
/* make sure we only include this once */
#ifndef _PROTO_H_
#define _PROTO_H_
#include "ntypes.h"
#include "lo_ele.h"
#ifndef NSPR20
#if defined(__sun)
# include "sunos4.h"
#endif /* __sun */
#endif /* NSPR20 */
XP_BEGIN_PROTOS
/* put your prototypes here..... */
/* --------------------------------------------------------------------------
* Parser stuff
*/
extern intn PA_ParserInit(PA_Functions *);
extern NET_StreamClass *PA_BeginParseMDL(FO_Present_Types, void *,
URL_Struct *, MWContext *);
extern intn PA_ParseBlock(NET_StreamClass *, const char *, int);
extern void PA_MDLComplete(NET_StreamClass *);
extern void PA_MDLAbort(NET_StreamClass *, int);
extern Bool PA_HasMocha(PA_Tag *tag);
extern PA_Tag * PA_CloneMDLTag(PA_Tag * src);
extern intn PA_ParseStringToTags(MWContext *, char *, int32, void *);
extern const char *PA_TagString(int32);
extern int32 PA_TagIndex(char *);
/* --------------------------------------------------------------------------
* Layout stuff
*/
/*#ifndef NO_TAB_NAVIGATION */
extern Bool LO_isTabableElement(MWContext *context, LO_TabFocusData *pCurrentFocus );
extern Bool LO_isTabableFormElement( LO_FormElementStruct * next_ele );
extern Bool LO_isFormElementNeedTextTabFocus( LO_FormElementStruct *pElement );
extern LO_Element * LO_getFirstLastElement(MWContext *context, int wantFirst );
extern Bool LO_getNextTabableElement( MWContext *context, LO_TabFocusData *currentFocus, int forward );
/* NO_TAB_NAVIGATION */
extern LO_FormElementStruct *
LO_ReturnNextFormElement(MWContext *context,
LO_FormElementStruct *current_element);
extern LO_FormElementStruct *
LO_ReturnPrevFormElement(MWContext *context,
LO_FormElementStruct *current_element);
/* NO_TAB_NAVIGATION,
LO_ReturnNextFormElementInTabGroup() is used to tab through form elements.
Since the winfe now has TAB_NAVIGATION, it is not used any more.
If mac and Unix don't use it either, it can be removed.
*/
extern LO_FormElementStruct *
LO_ReturnNextFormElementInTabGroup(MWContext *context,
LO_FormElementStruct *current_element,
XP_Bool go_backwards);
extern intn LO_ProcessTag(void *, PA_Tag *, intn);
extern void LO_RefreshArea(MWContext *context, int32 left, int32 top,
uint32 width, uint32 height);
extern Bool LO_CheckForUnload(MWContext *context);
#ifdef LAYERS
extern void LO_MoveLayer(CL_Layer *layer, int32 x, int32 y);
extern int32 LO_GetLayerXOffset(CL_Layer *layer);
extern int32 LO_GetLayerYOffset(CL_Layer *layer);
extern int32 LO_GetLayerWrapWidth(CL_Layer *layer);
extern int32 LO_GetLayerScrollWidth(CL_Layer *layer);
extern int32 LO_GetLayerScrollHeight(CL_Layer *layer);
extern void LO_SetLayerScrollWidth(CL_Layer *layer, uint32 width);
extern void LO_SetLayerScrollHeight(CL_Layer *layer, uint32 height);
extern void LO_SetLayerBbox(CL_Layer *layer, XP_Rect *bbox);
extern void LO_SetLayerBgColor(CL_Layer *layer, LO_Color *color);
extern LO_Color * LO_GetLayerBgColor(CL_Layer *layer);
extern void LO_SetLayerBackdropURL(CL_Layer *layer, const char *url);
extern const char *LO_GetLayerBackdropURL(CL_Layer *layer);
extern LO_ImageStruct *LO_GetLayerBackdropImage(CL_Layer *layer);
extern void LO_SetImageURL(MWContext *context, IL_GroupContext *mocha_img_cx,
LO_ImageStruct *image, const char *url,
NET_ReloadMethod reload_policy);
extern void LO_SetDocBgColor(MWContext *context, LO_Color *rgb);
extern void
lo_SetLayerClipExpansionPolicy(CL_Layer *layer, int policy);
extern int
lo_GetLayerClipExpansionPolicy(CL_Layer *layer);
#ifdef JAVA
/* Java Applet layer code */
extern void LO_SetJavaAppTransparent(LO_JavaAppStruct *javaData);
#endif
extern void LO_SetEmbedType(LO_EmbedStruct *embed, PRBool is_windowed);
extern void LO_SetEmbedSize( MWContext *context, LO_EmbedStruct *embed, int32 width, int32 height );
#ifdef JAVA
extern void LO_SetJavaAppTransparent(LO_JavaAppStruct *javaData);
#endif
extern void *LO_GetLayerMochaObjectFromId(MWContext *context, int32 layer_id);
extern void *LO_GetLayerMochaObjectFromLayer(MWContext *context,
CL_Layer *layer);
extern void LO_SetLayerMochaObject(MWContext *context, int32 layer_id,
void *mocha_object);
extern CL_Layer *LO_GetLayerFromId(MWContext *context, int32 layer_id);
extern int32 LO_GetIdFromLayer(MWContext *context, CL_Layer *layer);
extern int32 LO_GetNumberOfLayers(MWContext *context);
#endif
extern NET_ReloadMethod LO_GetReloadMethod(MWContext *context);
#ifdef LAYERS
extern LO_Element *LO_XYToElement(MWContext *, int32, int32, CL_Layer *);
extern LO_Element *LO_XYToNearestElement(MWContext *, int32, int32,
CL_Layer *);
#else
extern LO_Element *LO_XYToElement(MWContext *, int32, int32);
extern LO_Element *LO_XYToNearestElement(MWContext *, int32, int32);
#endif /* LAYERS */
extern void LO_MoveGridEdge(MWContext *context, LO_EdgeStruct *edge,
int32 x, int32 y);
extern void LO_SetImageInfo(MWContext *context, int32 ele_id,
int32 width, int32 height);
extern void LO_SetForceLoadImage(char *url, XP_Bool all_images);
extern void LO_SetUserOverride(Bool override);
extern void LO_SetDefaultBackdrop(char *url);
extern void LO_SetDefaultColor(intn type, uint8 red, uint8 green, uint8 blue);
extern Bool LO_ParseRGB(char *rgb, uint8 *red, uint8 *green, uint8 *blue);
extern Bool LO_ParseStyleSheetRGB(char *rgb, uint8 *red, uint8 *green, uint8 *blue);
extern void LO_ClearBackdropBlock(MWContext *context,
LO_ImageStruct *image, Bool fg_ok);
extern void LO_ClearEmbedBlock(MWContext *context, LO_EmbedStruct *embed);
extern Bool LO_BlockedOnImage(MWContext *, LO_ImageStruct *image);
extern void LO_CloseAllTags(MWContext *);
extern void LO_DiscardDocument(MWContext *);
extern LO_FormSubmitData *LO_SubmitForm(MWContext *context,
LO_FormElementStruct *form_element);
extern LO_FormSubmitData *LO_SubmitImageForm(MWContext *context,
LO_ImageStruct *image, int32 x, int32 y);
extern void LO_ResetForm(MWContext *context,
LO_FormElementStruct *form_element);
extern LO_FormElementStruct *
LO_FormRadioSet(MWContext *context, LO_FormElementStruct *form_element);
extern void LO_SaveFormData(MWContext *context);
extern void LO_CloneFormData(SHIST_SavedData *, MWContext *context,
URL_Struct *url_struct);
extern void LO_HighlightAnchor(MWContext *context, LO_Element *element,Bool on);
#ifdef OLD_POS_HIST
extern void LO_SetDocumentPosition(MWContext *context, int32 x, int32 y);
#endif /* OLD_POS_HIST */
extern void LO_SetDocumentDimensions(MWContext *context,
int32 width, int32 height);
#ifdef LAYERS
extern void LO_StartSelection(MWContext *context, int32 x, int32 y,
CL_Layer *layer);
#else
extern void LO_StartSelection(MWContext *context, int32 x, int32 y);
#endif /* LAYERS */
typedef enum {
SMALL_BM_ICON,
LARGE_BM_ICON
} BMIconType;
extern char * LO_GetBookmarkIconURLForPage(MWContext *context, BMIconType type);
/* Re-layout layout elements on resize without destroying them and reloading page
from scratch */
extern void LO_RelayoutOnResize(MWContext *context, int32 width, int32 height, int32 leftMargin, int32 topMargin);
/* Re-layout layout elements when one changes size. */
extern void LO_RelayoutFromElement(MWContext *context, LO_Element *element);
extern void LO_ExtendSelection(MWContext *context, int32 x, int32 y);
extern void LO_EndSelection(MWContext *context);
extern void LO_ClearSelection(MWContext *context);
extern XP_Block LO_GetSelectionText(MWContext *context);
extern Bool LO_FindText(MWContext *context, char *text,
LO_Element **start_ele_loc, int32 *start_position,
LO_Element **end_ele_loc, int32 *end_position,
Bool use_case, Bool forward);
extern Bool LO_FindGridText(MWContext *context, MWContext **ret_context,
char *text,
LO_Element **start_ele_loc, int32 *start_position,
LO_Element **end_ele_loc, int32 *end_position,
Bool use_case, Bool forward);
extern Bool LO_SelectAll(MWContext *context);
extern void LO_SelectText(MWContext *context, LO_Element *start,int32 start_pos,
LO_Element *end, int32 end_pos, int32 *x, int32 *y);
extern void LO_RefreshAnchors(MWContext *context);
extern Bool LO_HaveSelection(MWContext *context);
extern void LO_GetSelectionEndpoints(MWContext *context,
LO_Element **start, LO_Element **end, int32 *start_pos, int32 *end_pos, CL_Layer **sel_layer);
extern void LO_FreeSubmitData(LO_FormSubmitData *submit_data);
extern void LO_FreeDocumentFormListData(MWContext *context, void *form_data);
extern void LO_FreeDocumentEmbedListData(MWContext *context, void *embed_data);
extern void LO_FreeDocumentGridData(MWContext *context, void *grid_data);
extern void LO_FreeDocumentAppletData(MWContext *context, void *applet_data);
extern void LO_RedoFormElements(MWContext *context);
extern void LO_InvalidateFontData(MWContext *context);
extern void LO_GetDocumentMargins(MWContext *context,
int32 *margin_width, int32 *margin_height);
extern Bool LO_HasBGImage(MWContext *context);
extern Bool LO_LocateNamedAnchor(MWContext *context, URL_Struct *url_struct,
int32 *xpos, int32 *ypos);
extern int32 LO_EmptyRecyclingBin(MWContext *context);
extern LO_AnchorData *LO_MapXYToAreaAnchor(MWContext *context,
LO_ImageStruct *image, int32 x, int32 y);
extern intn LO_DocumentInfo(MWContext *context, NET_StreamClass *stream);
extern intn LO_ChangeFontSize(intn size, char *size_str);
extern double LO_GetScalingFactor(int32 scaler);
extern int16 LO_WindowWidthInFixedChars(MWContext *context);
extern void LO_CleanupGridHistory(MWContext *context);
extern void LO_UpdateGridHistory(MWContext *context);
extern Bool LO_BackInGrid(MWContext *context);
extern Bool LO_ForwardInGrid(MWContext *context);
extern Bool LO_GridCanGoForward(MWContext *context);
extern Bool LO_GridCanGoBackward(MWContext *context);
#ifdef LAYERS
extern Bool LO_Click( MWContext *context, int32 x, int32 y,
Bool requireCaret, CL_Layer *layer );
extern void LO_Hit(MWContext *context, int32 x, int32 y,
Bool requireCaret, LO_HitResult *result, CL_Layer *layer);
#else
extern Bool LO_Click( MWContext *context, int32 x, int32 y, Bool requireCaret );
extern void LO_Hit(MWContext *context, int32 x, int32 y,
Bool requireCaret, LO_HitResult *result);
#endif /* LAYERS */
extern int32 LO_TextElementWidth(MWContext *context, LO_TextStruct *text_ele, int charOffset);
extern void LO_AddEmbedData(MWContext* context, LO_EmbedStruct* embed, void* data);
extern void LO_CopySavedEmbedData(MWContext* context, SHIST_SavedData* newdata);
extern NET_StreamClass* LO_NewObjectStream(FO_Present_Types format_out, void* type,
URL_Struct* urls, MWContext* context);
extern void LO_CreateReblockTag(MWContext* context, LO_Element* element);
extern void LO_LockLayout(void);
extern void LO_UnlockLayout(void);
extern Bool LO_VerifyUnlockedLayout();
extern void LO_NetlibComplete(MWContext * context);
extern void LO_UpdateTextData(lo_FormElementTextData * textData, const char * text);
#ifdef EDITOR
/* --------------------------------------------------------------------------
* Layout stuff specific to the editor
*/
#ifdef LAYERS
extern void LO_PositionCaret( MWContext *context, int32 x, int32 y,
CL_Layer *layer);
extern void LO_DoubleClick( MWContext *context, int32 x, int32 y,
CL_Layer *layer );
#else
extern void LO_PositionCaret( MWContext *context, int32 x, int32 y );
extern void LO_DoubleClick( MWContext *context, int32 x, int32 y );
#endif /* LAYERS */
void LO_PositionCaretBounded(MWContext *context, int32 x, int32 y,
int32 minY, int32 maxY );
extern ED_Buffer* LO_GetEDBuffer( MWContext *context);
extern void LO_GetEffectiveCoordinates( MWContext *pContext, LO_Element *pElement, int32 position,
int32* pX, int32* pY, int32* pWidth, int32* pHeight );
extern void LO_UpDown( MWContext *pContext, LO_Element *pElement, int32 position, int32 iDesiredX, Bool bSelect, Bool bForward );
extern Bool LO_PreviousPosition( MWContext *pContext,LO_Element *pElement, intn iOffset,
ED_Element **ppEdElement, intn* pOffset);
extern Bool LO_NextPosition( MWContext *pContext,LO_Element *pElement, intn iOffset,
ED_Element **ppEdElement, intn* pOffset);
extern Bool LO_NavigateChunk( MWContext *pContext, intn chunkType, Bool bSelect, Bool bForward );
extern Bool LO_ComputeNewPosition( MWContext *context, intn chunkType,
Bool bSelect, Bool bDeselecting, Bool bForward,
LO_Element** pElement, int32* pPosition );
extern LO_Element* LO_BeginOfLine( MWContext *pContext, LO_Element *pElement );
extern LO_Element* LO_EndOfLine( MWContext *pContext, LO_Element *pElement);
extern LO_Element* LO_FirstElementOnLine( MWContext *pContext,
int32 x, int32 y, int32 *pLineNum);
#ifdef LAYERS
extern void LO_StartSelectionFromElement( MWContext *context, LO_Element *eptr,
int32 new_pos, CL_Layer *layer );
#else
extern void LO_StartSelectionFromElement( MWContext *context, LO_Element *eptr,
int32 new_pos );
#endif /* LAYERS */
extern void LO_ExtendSelectionFromElement( MWContext *context, LO_Element *eptr,
int32 position, Bool bFromStart );
extern Bool LO_SelectElement( MWContext *context, LO_Element *eptr,
int32 position, Bool bFromStart );
extern void LO_SelectRegion( MWContext *context, LO_Element *begin,
int32 beginPosition, LO_Element *end, int32 endPosition,
Bool fromStart, Bool forward );
extern Bool LO_IsSelected( MWContext *context );
extern Bool LO_IsSelectionStarted( MWContext *context );
extern void LO_GetSelectionEndPoints( MWContext *context,
LO_Element **ppStart, intn *pStartOffset, LO_Element **ppEnd,
intn *pEndOffset, Bool *pbFromStart, Bool *pbSingleElementSelection );
extern void LO_GetSelectionNewPoint( MWContext *context,
LO_Element **ppNew, intn *pNewOffset);
extern LO_Element* LO_PreviousEditableElement( LO_Element *pElement );
extern LO_Element* LO_NextEditableElement( LO_Element *pElement );
extern LO_ImageStruct* LO_NewImageElement( MWContext* context );
extern void LO_SetBackgroundImage( MWContext *context, char *pUrl );
extern void LO_RefetchWindowDimensions( MWContext *pContext );
extern void LO_Relayout( MWContext *context, ED_TagCursor *pCursor,
int32 iLine, int iStartEditOffset, XP_Bool bDisplayTables );
#endif /*EDITOR*/
extern void LO_SetBaseURL( MWContext *pContext, char *pURL );
extern char* LO_GetBaseURL( MWContext *pContext );
#if 0
extern Bool LO_Click( MWContext *context, int32 x, int32 y, Bool requireCaret );
extern void LO_Hit(MWContext *context, int32 x, int32 y, Bool requireCaret, LO_HitResult *result);
#endif
#ifdef LAYERS
extern void LO_SelectObject( MWContext *context, int32 x, int32 y,
CL_Layer *layer );
#else
extern void LO_SelectObject( MWContext *context, int32 x, int32 y );
#endif /* LAYERS */
#ifdef LAYERS
extern LO_LayerType LO_GetLayerType(CL_Layer *layer);
extern Bool LO_PrepareLayerForWriting(MWContext *context, int32 layer_id,
const char *referer, int32 width);
extern Bool LO_SetLayerSrc(MWContext *context, int32 layer_id, char *str,
const char *referer, int32 width);
extern int32 LO_CreateNewLayer(MWContext *context, int32 wrap_width, int32 parent_layer_id);
#endif /* LAYERS */
#ifdef XP_UNIX
extern void LO_DisplayFormElement(LO_FormElementStruct *form);
#endif /* XP_UNIX */
/* Allows front ends to test for empty cell.
* Used in Composer to display "zero width border"
* in cells that layout would normally not display
*/
XP_Bool LO_IsEmptyCell(LO_CellStruct *cell);
#ifdef DOM
/* Returns true if the layout element is enclosed
in <SPAN> </SPAN> */
Bool LO_IsWithinSpan( LO_Element *ele );
#endif
/*
* This is probably the wrong place to add this, but tough,
* this stuff shouldn't have to exist anyways.
*/
extern void XP_InitializeContext(MWContext *context);
extern MWContext *XP_NewContext(void);
extern void XP_DeleteContext(MWContext *context);
extern XP_List *XP_GetGlobalContextList(void);
extern void XP_AddContextToList(MWContext *context);
extern Bool XP_IsContextInList(MWContext *context);
extern void XP_RemoveContextFromList(MWContext *context);
extern MWContext *XP_GetNonGridContext(MWContext *context);
extern Bool XP_IsChildContext(MWContext* parent, MWContext* child);
extern MWContext *XP_FindNamedContextInList(MWContext * context, char *name);
extern MWContext *XP_FindContextOfType(MWContext *, MWContextType);
extern MWContext *XP_FindSomeContext(void);
extern Bool XP_FindNamedAnchor(MWContext * context, URL_Struct * url,
int32 *xpos, int32 *ypos);
extern void XP_RefreshAnchors(void);
extern void XP_InterruptContext(MWContext * context);
extern Bool XP_IsContextBusy(MWContext * context);
extern Bool XP_IsContextStoppable(MWContext * context);
extern void XP_UpdateParentContext(MWContext * context);
extern int XP_GetSecurityStatus(MWContext *pContext);
extern int XP_ContextCount(MWContextType cxType, XP_Bool bTopLevel);
XP_END_PROTOS
# endif /* _PROTO_H_ */

View File

@@ -1,99 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef PWCACAPI_H
#define PWCACAPI_H
/* contains a null terminated array of name and value stings
*
* end index of name should always be equal to the end index of value
*
*/
typedef struct _PCNameValuePair PCNameValuePair;
typedef struct _PCNameValueArray PCNameValueArray;
typedef void PCDataInterpretFunc (
char *module,
char *key,
char *data, int32 data_size,
char *type_buffer, int32 type_buffer_size,
char *url_buffer, int32 url_buffer_size,
char *username_buffer, int32 username_buffer_size,
char *password_buffer, int32 password_buffer_size);
/* returns 0 on success -1 on error
*/
extern int PC_RegisterDataInterpretFunc(char *module,
PCDataInterpretFunc *func);
extern int PC_PromptUsernameAndPassword(MWContext *context,
char *prompt,
char **username,
char **password,
XP_Bool *remember_password,
XP_Bool is_secure);
extern char *PC_PromptPassword(MWContext *context,
char *prompt,
XP_Bool *remember_password,
XP_Bool is_secure);
extern char *PC_Prompt(MWContext *context,
char *prompt,
char *deft,
XP_Bool *remember,
XP_Bool is_secure);
void PC_FreeNameValueArray(PCNameValueArray *array);
PCNameValueArray * PC_NewNameValueArray();
uint32 PC_ArraySize(PCNameValueArray *array);
char * PC_FindInNameValueArray(PCNameValueArray *array, char *name);
int PC_DeleteNameFromNameValueArray(PCNameValueArray *array, char *name);
void PC_EnumerateNameValueArray(PCNameValueArray *array, char **name, char **value, XP_Bool beginning);
int PC_AddToNameValueArray(PCNameValueArray *array, char *name, char *value);
void PC_CheckForStoredPasswordData(char *module, char *key, char **data, int32 *len);
int PC_DeleteStoredPassword(char *module, char *key);
PCNameValueArray * PC_CheckForStoredPasswordArray(char *module, char *key);
int PC_StoreSerializedPassword(char *module, char *key, char *data, int32 len);
int PC_StorePasswordNameValueArray(char *module, char *key, PCNameValueArray *array);
void PC_SerializeNameValueArray(PCNameValueArray *array, char **data, int32 *len);
PCNameValueArray * PC_CharToNameValueArray(char *data, int32 len);
/*, returns status
*/
int PC_DisplayPasswordCacheAsHTML(URL_Struct *URL_s,
FO_Present_Types format_out,
MWContext *context);
void PC_Shutdown();
#endif /* PWCACAPI_H */

View File

@@ -1,101 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _RESDEF_H_
#define _RESDEF_H_
#include "xp_core.h"
#define RES_OFFSET 7000
#ifndef RESOURCE_STR
#ifdef WANT_ENUM_STRING_IDS
#define RES_START
#if defined(XP_WIN) && _MSC_VER == 1100
/* VC50 has a bug, where large enumerations cause an
* internal compiler error. Do some hack here to fix without
* breaking the other platforms.
*/
#define BEGIN_STR(arg)
#define ResDef(name,id,msg) enum { name=id };
#define END_STR(arg)
#else /* XP_WIN _MSC_VER */
#define BEGIN_STR(arg) enum {
#define ResDef(name,id,msg) name=id,
#if defined(XP_WIN)
#define END_STR(arg) };
#else
#define END_STR(arg) arg=0 };
#endif
#endif /* XP_WIN _MSC_VER */
#else /* WANT_ENUM_STRING_IDS */
#define RES_START
#define BEGIN_STR(arg)
#ifdef XP_WIN16
/* Get these ints out of DGROUP (/Gt3 compiler switch)
* so we can increase the stack size
*/
#define ResDef(name,id,msg) int __far name = (id);
#else
#define ResDef(name,id,msg) int name = (id);
#endif
#define END_STR(arg)
#endif /* WANT_ENUM_STRING_IDS */
#else /* RESOURCE_STR, the definition here is for building resources */
#if defined(XP_WIN) || defined(XP_OS2)
#ifndef MOZILLA_CLIENT
#define RES_START
#define BEGIN_STR(arg) static char * (arg) (int16 i) { switch (i) {
#define ResDef(name,id,msg) case (id)+RES_OFFSET: return (msg);
#define END_STR(arg) } return NULL; }
#else /* MOZILLA_CLIENT */
#define RES_START STRINGTABLE DISCARDABLE
#define BEGIN_STR(arg) BEGIN
#define ResDef(name,id,msg) id+RES_OFFSET msg
#define END_STR(arg) END
#endif /* not MOZILLA_CLIENT */
#elif defined(XP_MAC)
/* Do nothing -- leave ResDef() to be perl'ized via MPW */
#define ResDef(name,id,msg) ResDef(name,id,msg)
#elif defined(XP_UNIX)
#ifdef RESOURCE_STR_X
#define RES_START
#define BEGIN_STR(arg) static char *(arg)(void) {
#define ResDef(name,id,msg) output((id)+RES_OFFSET, (msg));
#define END_STR(arg) }
#else
#define RES_START
#define BEGIN_STR(arg) static char *(arg)(int16 i) { switch (i) {
#define ResDef(name,id,msg) case (id)+RES_OFFSET: return (msg);
#define END_STR(arg) } return NULL; }
#endif /* RESOURCE_STR_X */
#endif /* XP_WIN */
#endif /* RESOURCE_STR */
#endif /* _RESDEF_H_ */

View File

@@ -1,163 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef SHIST_H
#define SHIST_H
#include "xp_list.h"
#include "ntypes.h"
#include "hotlist.h"
/* see shistele.h for the structure definitions. :(
*/
/* --------------------------------------------------------------------------
* Session history module routines
*/
struct MWContext_;
struct URL_Struct_;
#define HIST_NEW_OBJECT 0
#define HIST_MOVE_FORWARD 1
#define HIST_MOVE_BACK 2
/* Max length of the URL when title is unknown */
#define HIST_MAX_URL_LEN 30
XP_BEGIN_PROTOS
/* Front-End Specialized Functions */
extern void SHIST_InitSession(struct MWContext_ * ctxt);
extern void SHIST_EndSession(MWContext * ctxt);
/* copys all the session data from the old context into the
* new context. Does not effect data in old_context session history
*
* if new_context has not had SHIST_InitSession called for it
* it will be called to initalize it.
*/
extern void
SHIST_CopySession(MWContext * new_context, MWContext * old_context);
/* make a new copy of the given history entry */
extern History_entry * SHIST_CloneEntry(History_entry * old_entry);
/*
* someone (like another thread) needs to keep this entry around for
* a while, increase the reference count so it doesn't disappear
* on us. Return the held reference to entry. Tolerate NULL entry.
*/
extern History_entry * SHIST_HoldEntry(History_entry * entry);
#define SHIST_DropEntry SHIST_FreeHistoryEntry
/* these update position and buttons! */
extern void SHIST_AddDocument(struct MWContext_ * ctxt, History_entry * entry);
extern History_entry * SHIST_GetPrevious(struct MWContext_ * ctxt);
extern History_entry * SHIST_GetNext(struct MWContext_ * ctxt);
/* convenience functions */
extern char* SHIST_StripProtocol ( char* inURL ) ;
extern History_entry * SHIST_CreateHistoryEntry (struct URL_Struct_ * URL_s, char * title);
extern URL_Struct * SHIST_CreateURLStructFromHistoryEntry(struct MWContext_ * ctxt,
History_entry * entry);
extern URL_Struct * SHIST_CreateWysiwygURLStruct(struct MWContext_ * ctxt,
History_entry * entry);
extern BM_Entry* SHIST_CreateHotlistStructFromHistoryEntry(History_entry * h);
extern void SHIST_FreeHistoryEntry (MWContext * ctxt, History_entry * entry);
/* Standard History Functions */
extern int SHIST_CanGoBack(MWContext * ctxt);
extern int SHIST_CanGoForward(MWContext * ctxt);
extern History_entry * SHIST_GetEntry(History * hist, int entry_number);
extern History_entry * SHIST_GetCurrent(History * hist);
extern XP_List * SHIST_GetList(MWContext * ctxt);
/* Functions to handle Page Services functionality */
extern int SHIST_CurrentHandlesPageServices(MWContext * ctxt);
extern char * SHIST_GetCurrentPageServicesURL(MWContext * ctxt);
/* sets the current doc pointer to the index specified in the call
*
* entry numbering begins at one.
*/
extern void SHIST_SetCurrent(History * hist, int entry_number);
/* set the title of the current document
*
* TODO: All FEs should use the XP_WIN version asap.
*/
#if defined(XP_WIN) || defined(XP_MAC) || defined(XP_OS2)
extern void SHIST_SetTitleOfCurrentDoc(MWContext * context);
#else
extern void SHIST_SetTitleOfCurrentDoc(History * hist, char * title);
#endif
/* set the layout specific form data neccessary to recreate the user settable
* entries within a form
*/
PUBLIC void
SHIST_SetCurrentDocFormListData(MWContext * context, void * form_data);
/* set the layout-plugin specific embed data neccessary to recreate the
* last session state within the embedded object.
*/
PUBLIC void
SHIST_SetCurrentDocEmbedListData(MWContext * context, void * embed_data);
/* set the layout grid data neccessary to recreate the
* grid when revisited through history.
*/
PUBLIC void
SHIST_SetCurrentDocGridData(MWContext * context, void * grid_data);
/* set the window object for a grid being resized.
*/
PUBLIC void
SHIST_SetCurrentDocWindowData(MWContext * context, void * window_data);
/* set the layout applet data neccessary to recreate the
* applet when revisited through history.
*/
PUBLIC void
SHIST_SetCurrentDocAppletData(MWContext * context, void * applet_data);
/* set the position of the current document
*/
extern void SHIST_SetPositionOfCurrentDoc(History * hist, int32 position_tag);
/* gets an index associated with the entry
*
* entry numbering begins at one.
*
* zero is returned if object not found
*/
extern int SHIST_GetIndex(History * hist, History_entry * entry);
/* return the n'th object
*/
extern History_entry * SHIST_GetObjectNum(History * hist, int n);
XP_END_PROTOS
#endif /* SHIST_H */

View File

@@ -1,129 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef SHISTELE_H
#define SHISTELE_H
#include "xp_list.h"
/*
** This structure holds pointer so all saved data in the history. It is
** also used by URL_Structs and is ultimately fed to layout.
**
** Warning: Don't change the names of the fields because they're used by
** macros.
*/
typedef struct SHIST_SavedData {
void* FormList; /* layout data to recreate forms */
void* EmbedList; /* layout data to recreate embeds and applets */
void* Grid; /* layout data to recreate grids */
#ifdef MOCHA
void* Window; /* window object for grid being resized */
/* XXX none of this would be necessary if frameset docs were reparsed */
void* OnLoad; /* JavaScript onload event handler source */
void* OnUnload; /* JavaScript onunload event handler source */
void* OnFocus; /* JavaScript onfocus event handler source */
void* OnBlur; /* JavaScript onblur event handler source */
void* OnHelp; /* JavaScript onhelp event handler source */
void* OnMouseOver; /* JavaScript onmouseover event handler source */
void* OnMouseOut; /* JavaScript onmouseout event handler source */
void* OnDragDrop; /* JavaScript ondragdrop event handler source */
void* OnMove; /* JavaScript onmove event handler source */
void* OnResize; /* JavaScript onresize event handler source */
void* style_stack; /* JSSS style stack info */
#endif
} SHIST_SavedData;
/*
This structure encapsulates all of the information needed for the
session history. It should contain stuff like a list of all of the
documents in the current history and a pointer to where the currently
viewed document sits in the chain.
WARNING!! Some slots of this structure are shared with URL_Struct and
net_CacheObject. If you add a slot, decide whether it needs to be
shared as well.
*/
struct _History_entry {
char * title; /* title for this entry */
char * address; /* URL address string */
char * content_name; /* Server-provided "real name", used for
default file name when saving. */
int method; /* method of acessing URL */
char * referer; /* What document points to this url */
char * post_data; /* post data */
int32 post_data_size; /* post data size */
Bool post_data_is_file; /* is the post data a filename? */
char * post_headers; /* content type for posted data */
int32 position_tag; /* layout specific data for determining
* where in the document the user was
*/
time_t last_modified; /* time of last modification */
time_t last_access; /* time of last access */
int history_num; /* special hack to add navigation */
SHIST_SavedData savedData; /* layout data */
PRPackedBool
is_binary, /* is this a binary object pretending
* to be HTML?
*/
is_active, /* is it an active stream? */
is_netsite, /* did it come from netsite? */
replace; /* did it come from netsite? */
int transport_method; /* network, disk cache, memory cache */
uint32 refresh; /* refresh interval */
char *refresh_url; /* URL to refresh */
char *wysiwyg_url; /* URL for WYSIWYG printing/saving */
/* Security information */
int security_on; /* is security on? */
/* Security info on a connection is opaque */
unsigned char *sec_info;
/* Unique identifier */
int32 unique_id;
int32 ref_count;
/* Page services*/
char *page_services_url; /* If it supports services, what link is used */
/* HTTP_11 support*/
char *etag; /* Unique entity tag */
char *origin_url; /* original referrer of javascript: URL */
};
#define SHIST_CAME_FROM_NETWORK 0
#define SHIST_CAME_FROM_DISK_CACHE 1
#define SHIST_CAME_FROM_MEMORY_CACHE 2
struct History_ {
XP_List * list_ptr; /* pointer to linked list */
int cur_doc; /* an index into the list that points to the current document */
History_entry *cur_doc_ptr; /* a ptr to the current doc entry */
int32 num_entries; /* size of the history list */
int32 max_entries; /* maximum size of list; -1 == no limit */
};
#endif /* SHISTELE_H */

View File

@@ -1,70 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* shr_str.h
* ---------
*
* Error codes that are shared by more than one module of
* Netscape Navigator. This file is probably a temporary
* workaround until we can get a more sophisticated sharing
* mechanism in place.
*
* Codes are represented as fixed numbers, not offsets off
* of a base, to avoid namespace collision.
*
*/
#ifndef SHR_STR_H
#define SHR_STR_H
#define MK_OUT_OF_MEMORY -207
#define MK_UNABLE_TO_OPEN_FILE -223
#define MK_DISK_FULL -250
#define MK_UNABLE_TO_OPEN_TMP_FILE -253
#define MK_MIME_NO_RECIPIENTS -267
#define MK_NNTP_SERVER_NOT_CONFIGURED -307
#define MK_UNABLE_TO_DELETE_FILE -327
#define MK_MSG_DELIV_MAIL 15412
#define MK_MSG_DELIV_NEWS 15414
#define MK_MSG_SAVE_AS 15483
#define MK_MSG_NO_HEADERS 15528
#define MK_MSG_MIME_MAC_FILE 15530
#define MK_MSG_CANT_OPEN 15540
#define XP_MSG_UNKNOWN 15572
#define XP_EDIT_NEW_DOC_NAME 15629
#define XP_ALERT_TITLE_STRING -7956
#define XP_SEC_SHOWCERT -7963
#define XP_SEC_SHOWORDER -7962
#ifdef XP_WIN
/* for Winsock defined error codes */
#include "winsock.h"
#define XP_ERRNO_ECONNREFUSED WSAECONNREFUSED
#define XP_ERRNO_EIO WSAECONNREFUSED
#define XP_ERRNO_EISCONN WSAEISCONN
#define XP_ERRNO_EWOULDBLOCK EWOULDBLOCK
#endif /* XP_WIN */
#endif

View File

@@ -1,199 +0,0 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* *
*
*
***************************************************************************
* spellchk.h
* Public header file for the Spell Checker library.
****************************************************************************/
#ifndef _SPELLCHK_H_
#define _SPELLCHK_H_
/* In WIN16 DLL exported functions require __loadds keywords for the DS
* register to be set to the DLL's data-segment value and restored on return
* from the function.
*/
#ifdef WINDOWS
#define SCAPI __loadds
#elif defined(WIN32)
#define SCAPI __cdecl
#else
#define SCAPI
#endif
#ifdef MAC
#include <Files.h>
#endif
/* Language and Dialect codes. */
#define L_AFRIKAANS 101
#define L_CATALAN 102
#define L_CZECH 103
#define L_DANISH 104
#define L_DUTCH 105
#define L_ENGLISH 106
#define L_FINNISH 107
#define L_FRENCH 108
#define L_GERMAN 109
#define L_GREEK 110
#define L_HUNGARIAN 111
#define L_ITALIAN 112
#define L_NORWEGIAN 113
#define L_POLISH 114
#define L_PORTUGUESE 115
#define L_RUSSIAN 116
#define L_SPANISH 117
#define L_SWEDISH 118
#define D_DEFAULT 0xFFFF
#define D_AUS_ENGLISH 0x1001
#define D_US_ENGLISH 0x1010
#define D_UK_ENGLISH 0x1100
#define D_DOPPEL 0x2001 /* German */
#define D_SCHARFES 0x2010
#define D_BRAZILIAN 0x4001 /* Portuguese */
#define D_EUROPEAN 0x4010
#define D_BOKMAL 0x8001 /* Norwegian */
#define D_NYNORSK 0x8010
/* ISpellChecker - This class specifies the interface to the Spell Checker. A client
* application instatiates a spell checker object using the exported function SC_Create().
* The client application then performs spell checking using the member functions of this
* class. The spell checker object is destroyed by using the exported function SC_Destroy().
*/
class ISpellChecker
{
public:
/* Needs to be called by the client app once before calling any other functions.
* Return: 0 = success, non-zero = error
*/
#ifdef MAC
virtual int SCAPI Initialize(int LangCode, int DialectCode,
FSSpec *DbPath, FSSpec *PersonalDbFile) = 0;
#else
virtual int SCAPI Initialize(int LangCode, int DialectCode,
const char *DbPath, const char *PersonalDbFile) = 0;
#endif
/* Functions to set and get the current language and dialect settings.
* Returns: 0 = success, non-zero = failure
*/
virtual int SCAPI SetCurrentLanguage(int LangCode, int DialectCode) = 0;
virtual int SCAPI GetCurrentLanguage(int &LangCode, int &DialectCode) = 0;
/* Get the list of dictionaries available */
virtual int SCAPI GetNumOfDictionaries() = 0;
/* Get the language and dialect id for an available dictionary.
* Index = 0-based index into the list of available dictionaries.
* Returns: 0 = success, non-zero = failure.
*/
virtual int SCAPI GetDictionaryLanguage(int Index, int &LangCode, int &DialectCode) = 0;
/* Called by the client application to initialize a buffer for spell checking.
* It returns immediately without parsing the buffer. The client controls parsing of
* the buffer by calling GetNextMisspelledWord() and SetNewBuf().
* Return: 0 = success, non-zero = error
*/
virtual int SCAPI SetBuf(const char *pBuf) = 0;
/* Initialize a buffer with selection */
virtual int SCAPI SetBuf(const char *pBuf, unsigned long SelStart, unsigned long SelEnd) = 0;
/* Replace the current mispelled word with a new word */
virtual int SCAPI ReplaceMisspelledWord(const char *NewWord, int AllInstances) = 0;
/* Get the size of the current buffer */
virtual unsigned long SCAPI GetBufSize() = 0;
/* Copy the current buffer */
virtual int SCAPI GetBuf(char *pBuf, unsigned long BufSize) = 0;
/* Called by the client application to parse the buffer and return the next misspelled
* word in the buffer.
* Return: 0 = found a misspelled word.
* *Offset = Offset of the word from the beginning of the buffer
* *Len = Length of the word
* non-zero = no more misspelled word
*/
virtual int SCAPI GetNextMisspelledWord(unsigned long &Offset, unsigned long &Len) = 0;
/* The orginal buffer was changed by the client.
* ReparseFromStart = 1 - reparse the new buffer from the beginning
* = 0 - parse from the last offset into the original buffer
*/
virtual void SCAPI SetNewBuf(const char *pBuf, int ReparseFromStart) = 0;
/* Called by the client application to spell check a work.
* Return: 1 = valid word, 0 = not in dictionary
*/
virtual int SCAPI CheckWord(const char *pWord) = 0;
/* Get the number of possible alternatives found in the dictionary for the input word. */
virtual int SCAPI GetNumAlternatives(const char *pWord) = 0;
/* Get an alternative string. The "Index" is zero based.
* Return: 0 = success, -1 = error(bad Index),
* +ve value = BufSize too small, size needed
*/
virtual int SCAPI GetAlternative(int Index, char *pBuf, unsigned int BufSize) = 0;
/* The following functions interact with the personal database */
/* Add a word to the personal dictionary */
virtual int SCAPI AddWordToPersonalDictionary(const char *pWord) = 0;
/* Remove a word from the personal dictionary */
virtual int SCAPI RemoveWordFromPersonalDictionary(const char *pWord) = 0;
/* Ignore all references to a word in the current session */
virtual int SCAPI IgnoreWord(const char *pWord) = 0;
/* GetFirstPersonalDictionaryWord & GetNextPersonalDictionaryWord
* These functions retrieve words in the personal dictionary
* Returns: 0 = success, pBuf contains the next word
* -1 = no more words
* +ve = required buffer size. Size passed is too small.
*/
virtual int SCAPI GetFirstPersonalDictionaryWord(char *pBuf, int BufSize) = 0;
virtual int SCAPI GetNextPersonalDictionaryWord(char *pBuf, int BufSize) = 0;
/* Resets the contents of the personal dictionary */
virtual int SCAPI ResetPersonalDictionary() = 0;
/* destructor */
virtual ~ISpellChecker() {};
};
/* Exported library functions to create and destroy ISpellChecker objects. */
extern "C"
{
ISpellChecker * SCAPI SC_Create();
void SCAPI SC_Destroy(ISpellChecker *pSpellChecker);
}
#endif

View File

@@ -1,457 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* This file is included by client.h
*
* It can be included by hand after mcom.h
*
* All intermodule data structures (i.e. MWContext, etc) should be included
* in this file
*/
#ifndef _STRUCTS_H_
#define _STRUCTS_H_
#include "ntypes.h"
#include "xp_mcom.h"
#include "il_types.h"
#include "lo_ele.h"
#include "shistele.h"
#include "edttypes.h"
#ifdef JAVA
#include "prlong.h"
#include "prclist.h"
#endif /* JAVA */
/* ------------------------------------------------------------------------ */
/* ============= Typedefs for the global context structure ================ */
/* will come out of the ctxtfunc.h file eventually
*/
typedef struct _ContextFuncs ContextFuncs;
/*
* This stuff is front end specific. Add whatever you need.
*/
#if defined(OSF1) && defined(__cplusplus)
struct fe_ContextData;
#endif
#if defined(XP_MAC) && defined(__cplusplus)
class NetscapeContext;
class CHyperView;
class CNSContext;
class CHTMLView;
#endif
#if ( defined(XP_WIN) || defined(XP_OS2) ) && defined(__cplusplus)
class CAbstractCX;
class CEditView;
class CSaveProgress;
#endif
typedef struct FEstruct_ {
#ifndef MOZILLA_CLIENT
void * generic_data;
#elif defined(XP_WIN) || defined(XP_OS2)
#ifdef __cplusplus
CAbstractCX *cx;
#else
void *cx;
#endif
#elif defined(XP_TEXT)
int doc_cols;
int doc_lines;
int cur_top_line;
int num_anchors;
int cur_anchor;
#elif defined(XP_UNIX)
struct fe_ContextData *data;
#elif defined(XP_MAC)
#ifdef __cplusplus
class NetscapeContext* realContext;
class CHyperView* view;
class CNSContext* newContext;
class CHTMLView* newView;
#else
void* realContext;
void* view;
void* newContext;
void* newView;
#endif
/*
** These members are only used by the EDITOR... However, if they
** are removed for non-editor builds the MWContext structure
** becomes skewed for java (and the rest of DIST)...
*/
#ifdef __cplusplus
class CEditView* editview;
class CSaveProgress* savedialog;
#else
void* editview;
void* savedialog;
#endif
#endif
} FEstruct;
#define FEUNITS_X(x,context) ((int32) ((MWContext *)context)->convertPixX * (x))
#define FEUNITS_Y(y,context) ((int32) ((MWContext *)context)->convertPixY * (y))
struct MessageCopyInfo;
/*
This is a generic context structure. There should be one context
per document window. The context will allow assorted modules to
pull out things like the URL of the current document as well as
giving them a place to hand their window specific stuff.
*/
#if defined (OSF1)
/* Forward declaration to make compiler happy on OSF1 */
struct MSG_SearchFrame;
#ifdef XP_CPLUSPLUS
class MSG_IMAPFolderInfoMail;
class MSG_Master;
class MSG_Pane;
class TImapServerState;
#endif
#endif
struct MWContext_ {
MWContextType type;
char *url; /* URL of current document */
char * name; /* name of this context */
History hist; /* Info needed for the window history module */
FEstruct fe; /* Front end specific stuff */
PRPackedBool fancyFTP; /* use fancy ftp ? */
PRPackedBool fancyNews; /* use fancy news ? */
PRPackedBool intrupt; /* the user just interrupted things */
PRPackedBool graphProgress; /* should the user get visual feedback */
PRPackedBool waitingMode; /* Has a transfer been initiated? Once a */
/* transfer is started, the user cannot select another */
/* anchor until either the transfer is aborted, has */
/* started to layout, or has been recognized as a */
/* separate document handled through an external stream/viewer */
PRPackedBool reSize; /* the user wants to resize the window once the */
/* current transfer is over */
int fileSort; /* file sorting method */
char * save_as_name; /* name to save current file as */
char * title; /* title (if supplied) of current document */
Bool is_grid_cell; /* Is this a grid cell */
struct MWContext_ *grid_parent; /* pointer to parent of grid cell */
XP_List * grid_children; /* grid children of this context */
int convertPixX; /* convert from pixels to fe-specific coords */
int convertPixY; /* convert from pixels to fe-specific coords */
ContextFuncs * funcs; /* function table of display routines */
PrintSetup *prSetup; /* Info about print job */
PrintInfo *prInfo; /* State information for printing process */
/* XXXM12N Stuff for the new, modular Image Library. *********************/
IL_GroupContext *img_cx; /* Created by Front Ends. Passed into Image
Library function calls. */
IL_ColorSpace *color_space; /* Colorspace information for images. This
should become a part of the FE's display
context when MWContext goes away. */
IL_IRGB *transparent_pixel; /* Background color to be passed into
IL_GetImage. Set by Front Ends (?) */
/*************************************************************************/
int32 images; /* # of distinct images on this page */
/* ! do not use these ! */
/* ! these are going away soon ! */
/* instead see intl_csi.h for the i18n accessor functions */
int16 do_not_use_win_csid; /* code set ID of current window */
int16 do_not_use_doc_csid; /* code set ID of current document */
int16 do_not_use_relayout; /* tell conversion to treat relayout case */
char *do_not_use_mime_charset; /* MIME charset from URL */
struct MSG_CompositionFrame *msg_cframe; /* ditto. */
struct MSG_SearchFrame *msg_searchFrame; /*state for search, for search contexts*/
struct MSG_BiffFrame *biff_frame; /* Biff info for this context, if any. */
struct BM_Frame *bmframe; /* Bookmarks info for this context, if any. */
/* for now, add IMAP mail stuff here */
#ifdef XP_CPLUSPLUS
class MSG_IMAPFolderInfoMail *currentIMAPfolder;
class MSG_Pane *imapURLPane; /* used when updated folders */
class MSG_Master *mailMaster;
class TNavigatorImapConnection *imapConnection;
#else
struct MSG_IMAPFolderInfoMail *currentIMAPfolder;
struct MSG_Pane *imapURLPane; /* used when updated folders */
struct MSG_Master *mailMaster;
struct TNavigatorImapConnection *imapConnection;
#endif
/* for now, add message copy info stuff here */
struct MessageCopyInfo *msgCopyInfo;
NPEmbeddedApp *pluginList; /* plugins on this page */
void *pluginReconnect; /* yet another full screen hack */
struct MimeDisplayData *mime_data; /* opaque data used by MIME message
parser (not Mail/News specific,
since MIME objects can show up
in Browser windows too.) */
/* Also overloaded by progress module to hold private crap! */
#ifdef MOCHA
struct JSContext *mocha_context; /* opaque handle to Mocha state */
uint32 event_bit; /* sum of all event capturing objects */
XP_Bool js_drag_enabled; /* indicates JS drag enabled */
int8 js_dragging; /* indicates which button has JS drag in process */
XP_List * js_dependent_list; /* lifetime-linked children of this context */
MWContext *js_parent;
int32 js_timeouts_pending; /* Number of pending JavaScript timeouts */
#endif
XP_Bool restricted_target; /* TRUE if window is off-limits for opening links into
from mail or other window-grabbing functions.*/
NPEmbeddedApp *pEmbeddedApp; /* yet another full screen hack */
char * defaultStatus; /* What string to show in the status area
whenever there's nothing better to show.
FE's should implement FE_Progress so that
if it is passed NULL or "" it will instead
display this string. libmsg changes this
string all the time for mail and news
contexts. */
#ifdef LAYERS
CL_Compositor *compositor; /* The compositor associated with this context */
XP_Bool blink_hidden; /* State of blink layers */
void *blink_timeout; /* Timeout used for blink hiding/unhiding */
#endif /* LAYERS */
int32 doc_id; /* unique identifier for generated documents */
int32 context_id; /* unique identifier for context */
void *pHelpInfo; /* pointer to additional help information;
see ns/lib/libnet/mkhelp.c [EA] */
#ifdef JAVA
/* See ns/sun-java/netscape/net/netStubs.c for the next 2 items: */
/*
** This mysterious list is used in two ways: (1) If you're a real
** window context, it's a list of all dummy java contexts that were
** created for java's network connections. (2) If you're a dummy java
** context, it's where you're linked into the list of connections for
** the real context:
*/
PRCList javaContexts;
/*
** Second, if you're a dummy java context, you'll need a pointer to
** the stream data so that you can shut down the netlib connection:
*/
struct nsn_JavaStreamData* javaContextStreamData;
/*
** Stuff for GraphProgress. See lj_embed.c
*/
Bool displayingMeteors;
int64 timeOfFirstMeteorShower;
int16 numberOfSimultaneousShowers;
#endif /* JAVA */
/*
** Put the editor stuff at the end so that people can still use the
** the Java DLL from the 2.0 dist build with Navigator Gold.
*/
PRPackedBool is_editor; /* differentiates between Editor and Browser modes */
PRPackedBool is_new_document; /* quick access to new doc state (unsaved-no file yet)*/
PRPackedBool display_paragraph_marks; /* True if we should display paragraph and hard-return symbols. */
PRPackedBool display_table_borders; /* True if we should display dotted lines around tables with invisible borders. */
PRPackedBool edit_view_source_hack;
PRPackedBool edit_loading_url; /* Hack to let us run the net while in a modal dialog */
PRPackedBool edit_saving_url; /* " */
PRPackedBool edit_has_backup; /* Editor has made a session backup */
PRPackedBool bIsComposeWindow; /* Editor is a compose window */
/*
* Webfonts that were loaded by this context
*/
void *webfontsList;
/* web font stuff */
/* On Windows, they are initialized to 0 in cxdc.cpp */
int16 WebFontDownLoadCount; /* # of download for this doc( one download can have multiple fonts) */
int16 MissedFontFace; /* have we missed any font? */
/* number of pixels per point-size */
double XpixelsPerPoint;
double YpixelsPerPoint;
Bool bJavaScriptCalling;
/* Allow JavaScript in certain internally generated contexts even
* when the "enable javascript" pref is turned off.
* This flag will also be inherited by child grid cells.
*/
PRPackedBool forceJSEnabled;
/* For increase and decrease font */
double fontScalingPercentage;
int INTL_tag; /* used to tell that we have a valid INTL_CSIInfo */
INTL_CharSetInfo INTL_CSIInfo; /* new home of private i18n data */
/* the current tab focused data */
LO_TabFocusData *tab_focus_data;
void *ncast_channel_context;
};
/* This tells libmime.a whether it has the mime_data slot in MWContext
(which should always be true eventually, but having this #define here
makes life easier for me today.) -- jwz */
#define HAVE_MIME_DATA_SLOT
/* this is avialible even in non GOLD builds. */
#define EDT_IS_EDITOR(context) (context != NULL && context->is_editor)
#define EDT_DISPLAY_PARAGRAPH_MARKS(context) (context && context->is_editor && context->display_paragraph_marks)
#define EDT_DISPLAY_TABLE_BORDERS(context) (context && context->is_editor && context->display_table_borders)
#define EDT_RELAYOUT_FLAG (0x2)
#define EDT_IN_RELAYOUT(context) (context != NULL && ((context->is_editor & EDT_RELAYOUT_FLAG) != 0))
#ifdef JAVA
/*
** This macro is used to recover the MWContext* from the javaContexts
** list pointer:
*/
#define MWCONTEXT_PTR(context) \
((MWContext*) ((char*) (context) - offsetof(MWContext,javaContexts)))
#endif /* JAVA */
/* ------------------------------------------------------------------------ */
/* ====================== NASTY UGLY SHORT TERM HACKS ===================== */
#define XP_CONTEXTID(ctxt) ((ctxt)->context_id)
#define XP_DOCID(ctxt) ((ctxt)->doc_id)
#define XP_SET_DOCID(ctxt, id) ((ctxt)->doc_id = (id))
/* ------------------------------------------------------------------------ */
/* ============= Typedefs for the parser module structures ================ */
/*
* I *think* (but am unsure) that these should be forked off into a
* parser specific client level include file
*
*/
typedef int8 TagType;
struct PA_Tag_struct {
TagType type;
PRPackedBool is_end;
uint16 newline_count;
#if defined(XP_WIN) || defined(XP_OS2)
union { /* use an anonymous union for debugging purposes*/
PA_Block data;
char* data_str;
};
#else
PA_Block data;
#endif
int32 data_len;
int32 true_len;
void *lo_data;
struct PA_Tag_struct *next;
ED_Element *edit_element;
};
#define PA_HAS_PDATA( tag ) (tag->pVoid != 0 )
#ifdef XP_UNIX
typedef char *PAAllocate (intn byte_cnt);
typedef void PAFree (char *ptr);
#else
typedef void *PAAllocate (unsigned int byte_cnt);
typedef void PAFree (void *ptr);
#endif
typedef intn PA_OutputFunction (void *data_object, PA_Tag *tags, intn status);
struct _PA_Functions {
PAAllocate *mem_allocate;
PAFree *mem_free;
PA_OutputFunction *PA_ParsedTag;
};
typedef struct PA_InitData_struct {
PA_OutputFunction *output_func;
} PA_InitData;
/* Structure that defines the characteristics of a new window.
* Each entry should be structured so that 0 should be the
* default normal value. Currently all 0 values
* bring up a chromeless MWContextBrowser type window of
* arbitrary size.
*/
struct _Chrome {
MWContextType type; /* Must be set to the correct type you want,
* if doesn't exist, define one!!!
*/
Bool show_button_bar; /* TRUE to display button bar */
Bool show_url_bar; /* TRUE to show URL entry area */
Bool show_directory_buttons; /* TRUE to show directory buttons */
Bool show_bottom_status_bar; /* TRUE to show bottom status bar */
Bool show_menu; /* TRUE to show menu bar */
Bool show_security_bar; /* TRUE to show security bar */
Bool hide_title_bar; /* TRUE to hide title bar and window controls */
int32 w_hint, h_hint; /* hints for width and height */
int32 outw_hint, outh_hint; /* hints for outer window width and height */
int32 l_hint, t_hint; /* hints for left and top window positioning */
Bool topmost; /* TRUE for window alwaysOnTop */
Bool bottommost; /* TRUE for 'desktop' window */
Bool z_lock; /* TRUE for window which cannot move within z-order */
Bool is_modal; /* TRUE to make window be modal */
Bool show_scrollbar; /* TRUE to show scrollbars on window */
Bool location_is_chrome; /* TRUE if top or left is specified */
Bool allow_resize; /* TRUE to allow resize of windows */
Bool allow_close; /* TRUE to allow window to be closed */
Bool copy_history; /* TRUE to copy history of prototype context*/
Bool dependent; /* TRUE if this window is to be closed with its parent*/
Bool disable_commands; /* TRUE if user has set hot-keys / menus off */
Bool restricted_target; /* TRUE if window is off-limits for opening links into
from mail or other window-grabbing functions.*/
void (* close_callback)(void *close_arg); /* called on window close */
void *close_arg; /* passed to close_callback */
};
#endif /* _STRUCTS_H_ */

View File

@@ -1,126 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
undo.h --- creating and maintaining an undo list.
Created: Terry Weissman <terry@netscape.com>, 9-Sept-95.
*/
#ifndef _UNDO_H_
#define _UNDO_H_
typedef struct UndoState UndoState;
XP_BEGIN_PROTOS
/* Create a new undo state. (Returns NULL if no memory available). State will
be saved to execute up to "maxdepth" undos in a row.*/
extern UndoState* UNDO_Create(int maxdepth);
/* Throw away the undo state. */
extern void UNDO_Destroy(UndoState* state);
/* Throw away all the queued events in the undo state. If we are in the middle
of a batch (there are outstanding calls to UNDO_StartBatch()), then future
events in the batch are also thrown away. */
extern void UNDO_DiscardAll(UndoState* state);
/* Mark the beginning of a bunch of actions that should be undone as one user
action. Should always be matched by a later call to UNDO_EndBatch().
These calls can nest. They fail only if running out of memory, in which
case they will call UNDO_DiscardAll(). */
/* Note you can use the tag arguments to associate a batch of events with
some user defined tag e.g., a name or object identifying the batch of events */
extern int UNDO_StartBatch(UndoState* state);
extern int UNDO_EndBatch(UndoState* state, void (*freetag)(void*), void* tag);
/* Returns TRUE if undoing will do something (i.e., the menu item for "Undo"
should be selectable). */
extern XP_Bool UNDO_CanUndo(UndoState* state);
/* Returns TRUE if redoing will do something (i.e., the menu item for "Redo"
should be selectable). */
extern XP_Bool UNDO_CanRedo(UndoState* state);
/* Actually do an undo. Should only be called if UNDO_CanUndo returned TRUE.
May not be called if there are any pending calls to UNDO_StartBatch. */
extern int UNDO_DoUndo(UndoState* state);
/* Actually do an redo. Should only be called if UNDO_CanRedo returned TRUE.
May not be called if there are any pending calls to UNDO_StartBatch. */
extern int UNDO_DoRedo(UndoState* state);
/* Log an event. The "undoit" function is to be called with the closure to
undo an event that just happened. It returns a success code; if negative,
the code will be propagated up to the call to UNDO_DoUndo and UNDO_DoRedo,
and UNDO_DiscardAll will be called. Note that the undoit function almost
always ends up calling UNDO_LogEvent again, to log the function to undo thie
undoing of this action. If you get my drift.
The "freeit" function is called when the undo library decides it will never
ever call undoit function. It is called with the closure to free storage
used by the closure.
If this fails (we ran out of memory), then it will return a negative failure
code, and call UNDO_DiscardAll() and the freeit func. */
/* Note you can use the tag arguments to associate the event with
some user defined tag e.g., a name or object identifying the event. */
#ifdef XP_OS2
typedef int (*PNSLUFN)(void *);
typedef void (*PNSLFFN)(void *);
extern int UNDO_LogEvent(UndoState* state, PNSLUFN undoit,
PNSLFFN freeit, void* closure,
PNSLFFN freetag, void* tag);
#else
extern int UNDO_LogEvent(UndoState* state, int (*undoit)(void*),
void (*freeit)(void*), void* closure,
void (*freetag)(void*), void* tag);
#endif
/* Retrieve the undo/redo tag from the top of the corresponding stack. The
tag is the "thing" YOU assigned during either an UNDO_EndBatch() or
UNDO_LogEvent call. You most likely use the tag to identify the event[s]
that can be undone/redone.
e.g., Label the Edit|Undo menu item with, say, Edit|Undo Delete. */
extern void *UNDO_PeekUndoTag(UndoState* state);
extern void *UNDO_PeekRedoTag(UndoState* state);
XP_END_PROTOS
#endif /* !_UNDO_H_ */

View File

@@ -1,71 +0,0 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* dns.h --- portable nonblocking DNS for Unix
* Created: Jamie Zawinski <jwz@netscape.com>, 19-Dec-96.
*/
#ifndef __UNIX_DNS_H__
#define __UNIX_DNS_H__
/* Kick off an async DNS lookup;
The returned value is an id representing this transaction;
the result_callback will be run (in the main process) when we
have a result. Returns negative if something went wrong.
If `status' is negative,`result' is an error message.
If `status' is positive, `result' is a 4-character string of
the IP address.
If `status' is 0, then the lookup was prematurely aborted
via a call to DNS_AbortHostLookup().
*/
extern int DNS_AsyncLookupHost(const char *name,
int (*result_callback) (void *id,
void *closure,
int status,
const char *result),
void *closure,
void **id_return);
/* Prematurely give up on the given host-lookup transaction.
The `id' is what was returned by DNS_AsyncLookupHost.
This causes the result_callback to be called with a negative
status.
*/
extern int DNS_AbortHostLookup(void *id);
/* Call this from main() to initialize the async DNS library.
Returns a file descriptor that should be selected for, or
negative if something went wrong. Pass it the argc/argv
that your `main' was called with (it needs these pointers
in order to give its forked subprocesses sensible names.)
*/
extern int DNS_SpawnProcess(int argc, char **argv);
/* The main select() loop of your program should call this when the fd
that was returned by DNS_SpawnProcess comes active. This may cause
some of the result_callback functions to run.
If this returns negative, then a fatal error has happened, and you
should close `fd' and not select() for it again. Call gethostbyname()
in the foreground or something.
*/
extern int DNS_ServiceProcess(int fd);
#endif /* __UNIX_DNS_H__ */

View File

@@ -1,76 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/***************************************************************************
(C) Copyright 1996 Apple Computer, Inc., AT&T Corp., International
Business Machines Corporation and Siemens Rolm Communications Inc.
For purposes of this license notice, the term Licensors shall mean,
collectively, Apple Computer, Inc., AT&T Corp., International
Business Machines Corporation and Siemens Rolm Communications Inc.
The term Licensor shall mean any of the Licensors.
Subject to acceptance of the following conditions, permission is hereby
granted by Licensors without the need for written agreement and without
license or royalty fees, to use, copy, modify and distribute this
software for any purpose.
The above copyright notice and the following four paragraphs must be
reproduced in all copies of this software and any software including
this software.
THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS AND NO LICENSOR SHALL HAVE
ANY OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS OR
MODIFICATIONS.
IN NO EVENT SHALL ANY LICENSOR BE LIABLE TO ANY PARTY FOR DIRECT,
INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES OR LOST PROFITS ARISING OUT
OF THE USE OF THIS SOFTWARE EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
EACH LICENSOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY OF NONINFRINGEMENT OR THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.
The software is provided with RESTRICTED RIGHTS. Use, duplication, or
disclosure by the government are subject to restrictions set forth in
DFARS 252.227-7013 or 48 CFR 52.227-19, as applicable.
***************************************************************************/
#ifndef __VCC_H__
#define __VCC_H__ 1
XP_BEGIN_PROTOS
#include "vobject.h"
VObject* Parse_MIME(const char *input, unsigned long len);
VObject* Parse_MIME_FromFile(XP_File file);
VObject* Parse_MIME_FromFileName(char* fname);
typedef void (*MimeErrorHandler)(char *);
void registerMimeErrorHandler(MimeErrorHandler);
XP_END_PROTOS
#endif /* __VCC_H__ */

View File

@@ -1,424 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/***************************************************************************
(C) Copyright 1996 Apple Computer, Inc., AT&T Corp., International
Business Machines Corporation and Siemens Rolm Communications Inc.
For purposes of this license notice, the term Licensors shall mean,
collectively, Apple Computer, Inc., AT&T Corp., International
Business Machines Corporation and Siemens Rolm Communications Inc.
The term Licensor shall mean any of the Licensors.
Subject to acceptance of the following conditions, permission is hereby
granted by Licensors without the need for written agreement and without
license or royalty fees, to use, copy, modify and distribute this
software for any purpose.
The above copyright notice and the following four paragraphs must be
reproduced in all copies of this software and any software including
this software.
THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS AND NO LICENSOR SHALL HAVE
ANY OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS OR
MODIFICATIONS.
IN NO EVENT SHALL ANY LICENSOR BE LIABLE TO ANY PARTY FOR DIRECT,
INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES OR LOST PROFITS ARISING OUT
OF THE USE OF THIS SOFTWARE EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
EACH LICENSOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY OF NONINFRINGEMENT OR THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.
The software is provided with RESTRICTED RIGHTS. Use, duplication, or
disclosure by the government are subject to restrictions set forth in
DFARS 252.227-7013 or 48 CFR 52.227-19, as applicable.
***************************************************************************/
/*
The vCard/vCalendar C interface is implemented in the set
of files as follows:
vcc.y, yacc source, and vcc.c, the yacc output you will use
implements the core parser
vobject.c implements an API that insulates the caller from
the parser and changes in the vCard/vCalendar BNF
port.h defines compilation environment dependent stuff
vcc.h and vobject.h are header files for their .c counterparts
vcaltmp.h and vcaltmp.c implement vCalendar "macro" functions
which you may find useful.
test.c is a standalone test driver that exercises some of
the features of the APIs provided. Invoke test.exe on a
VCARD/VCALENDAR input text file and you will see the pretty
print output of the internal representation (this pretty print
output should give you a good idea of how the internal
representation looks like -- there is one such output in the
following too). Also, a file with the .out suffix is generated
to show that the internal representation can be written back
in the original text format.
For more information on this API see the readme.txt file
which accompanied this distribution.
Also visit:
http://www.versit.com
http://www.ralden.com
*/
#ifndef __VOBJECT_H__
#define __VOBJECT_H__ 1
#include "xp.h"
#include "xp_file.h"
/*
Unfortunately, on the Mac (and possibly other platforms) with our current, out-dated
libraries (Plauger), |wchar_t| is defined incorrectly, which breaks vcards.
We can't fix Plauger because it doesn't come with source. Later, when we
upgrade to MSL, we can make this evil hack go away. In the mean time,
vcards are not allowed to use the (incorrectly defined) |wchar_t| type. Instead,
they will use an appropriately defined local type |vwchar_t|.
*/
#ifdef XP_MAC
typedef uint16 vwchar_t;
#else
typedef wchar_t vwchar_t;
#endif
XP_BEGIN_PROTOS
#define VC7bitProp "7bit"
#define VC8bitProp "8bit"
#define VCAAlarmProp "aalarm"
#define VCAdditionalNamesProp "addn"
#define VCAdrProp "adr"
#define VCAgentProp "agent"
#define VCAIFFProp "aiff"
#define VCAOLProp "aol"
#define VCAppleLinkProp "applelink"
#define VCAttachProp "attach"
#define VCAttendeeProp "attendee"
#define VCATTMailProp "attmail"
#define VCAudioContentProp "audiocontent"
#define VCAVIProp "avi"
#define VCBase64Prop "base64"
#define VCBBSProp "bbs"
#define VCBirthDateProp "bday"
#define VCBMPProp "bmp"
#define VCBodyProp "body"
#define VCBusinessRoleProp "role"
#define VCCalProp "vcalendar"
#define VCCaptionProp "cap"
#define VCCardProp "vcard"
#define VCCarProp "car"
#define VCCategoriesProp "categories"
#define VCCellularProp "cell"
#define VCCGMProp "cgm"
#define VCCharSetProp "cs"
#define VCCIDProp "cid"
#define VCCISProp "cis"
#define VCCityProp "l"
#define VCClassProp "class"
#define VCCommentProp "note"
#define VCCompletedProp "completed"
#define VCContentIDProp "content-id"
#define VCCountryNameProp "c"
#define VCDAlarmProp "dalarm"
#define VCDataSizeProp "datasize"
#define VCDayLightProp "daylight"
#define VCDCreatedProp "dcreated"
#define VCDeliveryLabelProp "label"
#define VCDescriptionProp "description"
#define VCDIBProp "dib"
#define VCDisplayStringProp "displaystring"
#define VCDomesticProp "dom"
#define VCDTendProp "dtend"
#define VCDTstartProp "dtstart"
#define VCDueProp "due"
#define VCEmailAddressProp "email"
#define VCEncodingProp "encoding"
#define VCEndProp "end"
#define VCEventProp "vevent"
#define VCEWorldProp "eworld"
#define VCExNumProp "exnum"
#define VCExpDateProp "exdate"
#define VCExpectProp "expect"
#define VCExtAddressProp "ext add"
#define VCFamilyNameProp "f"
#define VCFaxProp "fax"
#define VCFullNameProp "fn"
#define VCGeoProp "geo"
#define VCGeoLocationProp "geo"
#define VCGIFProp "gif"
#define VCGivenNameProp "g"
#define VCGroupingProp "grouping"
#define VCHomeProp "home"
#define VCIBMMailProp "ibmmail"
#define VCInlineProp "inline"
#define VCInternationalProp "intl"
#define VCInternetProp "internet"
#define VCISDNProp "isdn"
#define VCJPEGProp "jpeg"
#define VCLanguageProp "lang"
#define VCLastModifiedProp "last-modified"
#define VCLastRevisedProp "rev"
#define VCLocationProp "location"
#define VCLogoProp "logo"
#define VCMailerProp "mailer"
#define VCMAlarmProp "malarm"
#define VCMCIMailProp "mcimail"
#define VCMessageProp "msg"
#define VCMETProp "met"
#define VCModemProp "modem"
#define VCMPEG2Prop "mpeg2"
#define VCMPEGProp "mpeg"
#define VCMSNProp "msn"
#define VCNamePrefixesProp "npre"
#define VCNameProp "n"
#define VCNameSuffixesProp "nsuf"
#define VCNoteProp "note"
#define VCOrgNameProp "orgname"
#define VCOrgProp "org"
#define VCOrgUnit2Prop "oun2"
#define VCOrgUnit3Prop "oun3"
#define VCOrgUnit4Prop "oun4"
#define VCOrgUnitProp "oun"
#define VCPagerProp "pager"
#define VCPAlarmProp "palarm"
#define VCParcelProp "parcel"
#define VCPartProp "part"
#define VCPCMProp "pcm"
#define VCPDFProp "pdf"
#define VCPGPProp "pgp"
#define VCPhotoProp "photo"
#define VCPICTProp "pict"
#define VCPMBProp "pmb"
#define VCPostalBoxProp "box"
#define VCPostalCodeProp "pc"
#define VCPostalProp "postal"
#define VCPowerShareProp "powershare"
#define VCPreferredProp "pref"
#define VCPriorityProp "priority"
#define VCProcedureNameProp "procedurename"
#define VCProdIdProp "prodid"
#define VCProdigyProp "prodigy"
#define VCPronunciationProp "sound"
#define VCPSProp "ps"
#define VCPublicKeyProp "key"
#define VCQPProp "qp"
#define VCQuickTimeProp "qtime"
#define VCQuotedPrintableProp "quoted-printable"
#define VCRDateProp "rdate"
#define VCRegionProp "r"
#define VCRelatedToProp "related-to"
#define VCRepeatCountProp "repeatcount"
#define VCResourcesProp "resources"
#define VCRNumProp "rnum"
#define VCRoleProp "role"
#define VCRRuleProp "rrule"
#define VCRSVPProp "rsvp"
#define VCRunTimeProp "runtime"
#define VCSequenceProp "sequence"
#define VCSnoozeTimeProp "snoozetime"
#define VCStartProp "start"
#define VCStatusProp "status"
#define VCStreetAddressProp "street"
#define VCSubTypeProp "subtype"
#define VCSummaryProp "summary"
#define VCTelephoneProp "tel"
#define VCTIFFProp "tiff"
#define VCTimeZoneProp "tz"
#define VCTitleProp "title"
#define VCTLXProp "tlx"
#define VCTodoProp "vtodo"
#define VCTranspProp "transp"
#define VCUniqueStringProp "uid"
#define VCURLProp "url"
#define VCURLValueProp "urlval"
#define VCValueProp "value"
#define VCVersionProp "version"
#define VCVideoProp "video"
#define VCVoiceProp "voice"
#define VCWAVEProp "wave"
#define VCWMFProp "wmf"
#define VCWorkProp "work"
#define VCX400Prop "x400"
#define VCX509Prop "x509"
#define VCXRuleProp "xrule"
#define VCCooltalk "x-mozilla-cpt"
#define VCCooltalkAddress "x-moxilla-cpadr"
#define VCUseServer "x-mozilla-cpsrv"
#define VCUseHTML "x-mozilla-html"
/* return type of vObjectValueType: */
#define VCVT_NOVALUE 0
/* if the VObject has no value associated with it. */
#define VCVT_STRINGZ 1
/* if the VObject has value set by setVObjectStringZValue. */
#define VCVT_USTRINGZ 2
/* if the VObject has value set by setVObjectUStringZValue. */
#define VCVT_UINT 3
/* if the VObject has value set by setVObjectIntegerValue. */
#define VCVT_ULONG 4
/* if the VObject has value set by setVObjectLongValue. */
#define VCVT_RAW 5
/* if the VObject has value set by setVObjectAnyValue. */
#define VCVT_VOBJECT 6
/* if the VObject has value set by setVObjectVObjectValue. */
#define NAME_OF(o) o->id
#define VALUE_TYPE(o) o->valType
#define STRINGZ_VALUE_OF(o) o->val.strs
#define USTRINGZ_VALUE_OF(o) o->val.ustrs
#define INTEGER_VALUE_OF(o) o->val.i
#define LONG_VALUE_OF(o) o->val.l
#define ANY_VALUE_OF(o) o->val.any
#define VOBJECT_VALUE_OF(o) o->val.vobj
typedef struct VObject VObject;
typedef union ValueItem {
const char *strs;
const vwchar_t *ustrs;
unsigned int i;
unsigned long l;
void *any;
VObject *vobj;
} ValueItem;
struct VObject {
VObject *next;
const char *id;
VObject *prop;
unsigned short valType;
ValueItem val;
};
typedef struct StrItem StrItem;
struct StrItem {
StrItem *next;
const char *s;
unsigned int refCnt;
};
typedef struct OFile {
XP_File fp;
char *s;
int len;
int limit;
int alloc:1;
int fail:1;
} OFile;
typedef struct VObjectIterator {
VObject* start;
VObject* next;
} VObjectIterator;
VObject* newVObject(const char *id);
void deleteVObject(VObject *p);
char* dupStr(const char *s, unsigned int size);
void deleteStr(const char *p);
void unUseStr(const char *s);
void setVObjectName(VObject *o, const char* id);
void setVObjectStringZValue(VObject *o, const char *s);
void setVObjectStringZValue_(VObject *o, const char *s);
void setVObjectUStringZValue(VObject *o, const vwchar_t *s);
void setVObjectUStringZValue_(VObject *o, const vwchar_t *s);
void setVObjectIntegerValue(VObject *o, unsigned int i);
void setVObjectLongValue(VObject *o, unsigned long l);
void setVObjectAnyValue(VObject *o, void *t);
VObject* setValueWithSize(VObject *prop, void *val, unsigned int size);
VObject* setValueWithSize_(VObject *prop, void *val, unsigned int size);
const char* vObjectName(VObject *o);
const char* vObjectStringZValue(VObject *o);
const vwchar_t* vObjectUStringZValue(VObject *o);
unsigned int vObjectIntegerValue(VObject *o);
unsigned long vObjectLongValue(VObject *o);
void* vObjectAnyValue(VObject *o);
VObject* vObjectVObjectValue(VObject *o);
void setVObjectVObjectValue(VObject *o, VObject *p);
VObject* addVObjectProp(VObject *o, VObject *p);
VObject* addProp(VObject *o, const char *id);
VObject* addProp_(VObject *o, const char *id);
VObject* addPropValue(VObject *o, const char *p, const char *v);
VObject* addPropSizedValue_(VObject *o, const char *p, const char *v, unsigned int size);
VObject* addPropSizedValue(VObject *o, const char *p, const char *v, unsigned int size);
VObject* addGroup(VObject *o, const char *g);
void addList(VObject **o, VObject *p);
VObject* isAPropertyOf(VObject *o, const char *id);
VObject* nextVObjectInList(VObject *o);
void initPropIterator(VObjectIterator *i, VObject *o);
int moreIteration(VObjectIterator *i);
VObject* nextVObject(VObjectIterator *i);
extern void printVObject(XP_File fp,VObject *o);
void printVObject_(XP_File fp, VObject *o, int level);
extern void writeVObject(XP_File fp, VObject *o);
void writeVObject_(OFile *fp, VObject *o, XP_Bool expandSpaces);
char* writeMemVObject(char *s, int *len, VObject *o);
char* writeMemVObjects(char *s, int *len, VObject *list, XP_Bool expandSpaces);
const char* lookupStr(const char *s);
void cleanStrTbl();
void cleanVObject(VObject *o);
void cleanVObjects(VObject *list);
const char* lookupProp(const char* str);
const char* lookupProp_(const char* str);
vwchar_t* fakeUnicode(const char *ps, int *bytes);
int uStrLen(const vwchar_t *u);
char* fakeCString(const vwchar_t *u);
void printVObjectToFile(char *fname,VObject *o);
void printVObjectsToFile(char *fname,VObject *list);
void writeVObjectToFile(char *fname, VObject *o);
void writeVObjectsToFile(char *fname, VObject *list);
#define MAXPROPNAMESIZE 256
#define MAXMOZPROPNAMESIZE 16
XP_END_PROTOS
#endif /* __VOBJECT_H__ */

View File

@@ -1,117 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* ---------------------------------------------------------------------------
Stuff to fake unix file I/O on windows boxes
------------------------------------------------------------------------*/
#ifndef WINFILE_H
#define WINFILE_H
#ifdef _WINDOWS
#if defined(XP_WIN32) || defined(_WIN32)
/* 32-bit stuff here */
#include <windows.h>
#include <stdlib.h>
#include <sys\types.h>
#include <sys\stat.h>
typedef struct DIR_Struct {
void * directoryPtr;
WIN32_FIND_DATA data;
} DIR;
#define _ST_FSTYPSZ 16
#ifndef __BORLANDC__
typedef unsigned long mode_t;
typedef long uid_t;
typedef long gid_t;
typedef long off_t;
typedef unsigned long nlink_t;
#endif
typedef struct timestruc {
time_t tv_sec; /* seconds */
long tv_nsec; /* and nanoseconds */
} timestruc_t;
struct dirent { /* data from readdir() */
ino_t d_ino; /* inode number of entry */
off_t d_off; /* offset of disk direntory entry */
unsigned short d_reclen; /* length of this record */
char d_name[_MAX_FNAME]; /* name of file */
};
#ifndef __BORLANDC__
#define S_ISDIR(s) ((s) & _S_IFDIR)
#endif
#else /* _WIN32 */
/* 16-bit windows stuff */
#include <sys\types.h>
#include <sys\stat.h>
#include <dos.h>
/* Getting cocky to support multiple file systems */
typedef struct dirStruct_tag {
struct _find_t file_data;
char c_checkdrive;
} dirStruct;
typedef struct DIR_Struct {
void * directoryPtr;
dirStruct data;
} DIR;
#define _ST_FSTYPSZ 16
typedef unsigned long mode_t;
typedef long uid_t;
typedef long gid_t;
typedef long off_t;
typedef unsigned long nlink_t;
typedef struct timestruc {
time_t tv_sec; /* seconds */
long tv_nsec; /* and nanoseconds */
} timestruc_t;
struct dirent { /* data from readdir() */
ino_t d_ino; /* inode number of entry */
off_t d_off; /* offset of disk direntory entry */
unsigned short d_reclen; /* length of this record */
#ifdef XP_WIN32
char d_name[_MAX_FNAME]; /* name of file */
#else
char d_name[20]; /* name of file */
#endif
};
#define S_ISDIR(s) ((s) & _S_IFDIR)
#endif /* 16-bit windows */
#define CONST const
#endif /* _WINDOWS */
#endif /* WINFILE_H */

View File

@@ -1,179 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
** External points of interest for the translation library
*/
#ifndef XLATE_H
#define XLATE_H
typedef void (*XL_CompletionRoutine)(PrintSetup*);
typedef void* XL_TextTranslation;
typedef void* XL_PostscriptTranslation;
XP_BEGIN_PROTOS
extern void XL_InitializePrintSetup(PrintSetup *p);
extern void XL_InitializeTextSetup(PrintSetup *p);
extern void XL_TranslatePostscript(MWContext*, URL_Struct *u,
SHIST_SavedData *sd, PrintSetup*p);
extern XL_TextTranslation
XL_TranslateText(MWContext *, URL_Struct *u, PrintSetup*p);
extern void XL_GetTextImage(LO_ImageStruct *image);
extern void
XL_DisplayTextImage(MWContext *cx, int iLocation, LO_ImageStruct *img);
extern XP_Bool XP_CheckElementSpan(MWContext*, int top, int height);
extern void XP_InitializePrintInfo(MWContext *);
extern void XP_CleanupPrintInfo(MWContext *);
extern void XP_DrawForPrint(MWContext *, int );
extern void XP_LayoutForPrint(MWContext *cx, int32 doc_height);
XP_END_PROTOS
typedef struct LineRecord_struct LineRecord;
/*
** PAGE coordinates are 720/inch, layout happens in this space
** POINT coordinates are 72/inch, the printer wants these
*/
#define INCH_TO_PAGE(f) ((int) (.5 + (f)*720))
#define PAGE_TO_POINT_I(f) ((int) ((f) / 10.0))
#define PAGE_TO_POINT_F(f) ((f) / 10.0)
#define POINT_TO_PAGE(p) ((p)*10)
/*
** Used to pass info into text and/or postscript translation
*/
struct PrintSetup_ {
int top; /* Margins (PostScript Only) */
int bottom;
int left;
int right;
int width; /* Paper size, # of cols for text xlate */
int height;
char* header;
char* footer;
int *sizes;
XP_Bool reverse; /* Output order */
XP_Bool color; /* Image output */
XP_Bool deep_color; /* 24 bit color output */
XP_Bool landscape; /* Rotated output */
XP_Bool underline; /* underline links */
XP_Bool scale_images; /* Scale unsized images which are too big */
XP_Bool scale_pre; /* do the pre-scaling thing */
float dpi; /* dpi for externally sized items */
float rules; /* Scale factor for rulers */
int n_up; /* cool page combining */
int bigger; /* Used to init sizes if sizesin NULL */
char* prefix; /* For text xlate, prepended to each line */
char* eol; /* For text translation, line terminator */
char* bullet; /* What char to use for bullets */
struct URL_Struct_ *url; /* url of doc being translated */
XP_File out; /* Where to send the output */
char *filename; /* output file name, if any */
XL_CompletionRoutine completion; /* Called when translation finished */
void* carg; /* Data saved for completion routine */
int status; /* Status of URL on completion */
/* "other" font is typically East Asian */
char *otherFontName; /* name of "other" PostScript font */
int16 otherFontCharSetID; /* charset ID of "other" font */
int otherFontWidth; /* width of "other" font (square) */
int otherFontAscent; /* Ascent of "other" font (square) */
MWContext *cx; /* original context, if available */
};
#define XL_LOADING_PHASE 1
#define XL_LAYOUT_PHASE 2
#define XL_DRAW_PHASE 3
typedef struct page_breaks {
int32 y_top;
int32 y_break;
} PageBreaks;
/*
** Used to store state needed while translation is in progress
*/
struct PrintInfo_ {
/*
** BEGIN SPECIAL
** If using the table print code, the following fields must
** be properly set up.
*/
int32 page_height; /* Size of printable area on page */
int32 page_width; /* Size of printable area on page */
int32 page_break; /* Current page bottom */
int32 page_topy; /* Current page top */
int phase;
/*
** CONTINUE SPECIAL
** The table print code maintains these
*/
PageBreaks *pages; /* Contains extents of each page */
int pt_size; /* Size of above table */
int n_pages; /* # of valid entries in above table */
/*
** END SPECIAL
*/
/*
** AAAOOOGAH
**
** These are used to cache values from the originating context's
** function table
*/
void (*scnatt)(MWContext*); /* SetCallNetlibAllTheTime */
void (*ccnatt)(MWContext*); /* CLearCallNetlibAllTheTime */
char* doc_title; /* best guess at title */
int32 doc_width; /* Total document width */
int32 doc_height; /* Total document height */
#ifdef LATER
float scale; /* for shrinking pre areas */
int32 pre_start; /* First y of current pre section */
int32 pre_end; /* Last y of current pre section */
XP_List *interesting; /* List of pre's about which I care */
XP_Bool in_pre; /* True when inside a <pre> section */
#endif
/*
** These fields are used only by the text translator
*/
char *line; /* Pointer to data for the current line */
XP_Bool in_table; /* True when caching lines in a table */
XP_Bool first_line_p; /* true when the first line has not yet been
output - this is a kludge for the mail
citation code. */
int table_top, /* Size of the table being cached */
table_bottom;
LineRecord *saved_lines; /* cached lines for tables */
int last_y; /* Used to track blank lines */
};
#endif /* XLATE_H */

View File

@@ -1,43 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
xp.h
This file is left around for backwards compatability. Nothing new should
be added to this file. Rather, add it to the client specific section or
the cross-platform specific area depending on what is appropriate.
-------------------------------------------------------------------------*/
#ifndef _XP_H_
#define _XP_H_
#include "xp_mcom.h"
#include "client.h"
#ifdef HEAPAGENT
#define MEM_DEBUG 1
#define DEFINE_NEW_MACRO 1
#include <heapagnt.h>
#endif /* HEAPAGENT */
#endif /* !_XP_H_ */

View File

@@ -1,315 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*-----------------------------------------------------------------------------
xp_core.h
Cross-Platform Core Types
-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
Platform-specific defines
XP_WIN XP_IS_WIN XP_WIN_ARG(X)
XP_MAC XP_IS_MAC XP_MAC_ARG(X)
XP_UNIX XP_IS_UNIX XP_UNIX_ARG(X)
XP_CPLUSPLUS XP_IS_CPLUSPLUS
XP_OS2 XP_IS_OS2 XP_OS2_ARG(X) IBM-LTB added these
defined iff always defined defined to nothing
on that platform as 0 or 1 or X
Also Bool, Int32, Int16, Int, Uint32, Uint16, Uint, and nil
And TRUE, FALSE, ON, OFF, YES, NO
-----------------------------------------------------------------------------*/
#ifdef NSPR20
#include "prtypes.h" /* for intn, etc. */
#ifdef XP_MAC
#include "prosdep.h"
#else
#include "md/prosdep.h"
#endif
#include "prlog.h"
#endif /* NSPR20 */
#ifndef _XP_Core_
#define _XP_Core_
/* which system are we on, get the base macro defined */
#if defined(macintosh) || defined(__MWERKS__) || defined(applec)
#ifndef macintosh
#define macintosh 1
#endif
#endif
#if defined(__unix) || defined(unix) || defined(UNIX) || defined(XP_UNIX)
#ifndef unix
#define unix 1
#endif
#endif
#if !defined(macintosh) && !defined(_WINDOWS) && !defined(unix)
/* #error xp library can't determine system type */
#endif
/* flush out all the system macros */
#ifdef macintosh
# ifndef XP_MAC
# define XP_MAC 1
# endif
# define XP_IS_MAC 1
# define XP_MAC_ARG(x) x
#else
# define XP_IS_MAC 0
# define XP_MAC_ARG(x)
#endif
#ifdef _WINDOWS
# ifndef XP_WIN
# define XP_WIN
# endif
# define XP_IS_WIN 1
# define XP_WIN_ARG(x) x
#if defined(_WIN32) || defined(WIN32)
# ifndef XP_WIN32
# define XP_WIN32
# endif
#else
# ifndef XP_WIN16
# define XP_WIN16
# endif
#endif
#else
# define XP_IS_WIN 0
# define XP_WIN_ARG(x)
#endif
#ifdef unix
# ifndef XP_UNIX
# define XP_UNIX
# endif
# define XP_IS_UNIX 1
# define XP_UNIX_ARG(x) x
#else
# define XP_IS_UNIX 0
# define XP_UNIX_ARG(x)
#endif
/* IBM-LTB Setup system macros for OS/2 */
#if defined (__OS2__)
# ifndef XP_OS2
# define XP_OS2
# endif
# define XP_IS_OS2 1
# define XP_OS2_ARG(x) x
#else
# define XP_IS_OS2 0
# define XP_OS2_ARG(x)
#endif
/* what language do we have? */
#if defined(__cplusplus)
# define XP_CPLUSPLUS
# define XP_IS_CPLUSPLUS 1
#else
# define XP_IS_CPLUSPLUS 0
#endif
#if defined(DEBUG) || !defined(XP_CPLUSPLUS)
#define XP_REQUIRES_FUNCTIONS
#endif
/*
language macros
If C++ code includes a prototype for a function *compiled* in C, it needs to be
wrapped in extern "C" for the linking to work properly. On the Mac, all code is
being compiled in C++ so this isn't necessary, and Unix compiles it all in C. So
only Windows actually will make use of the defined macros.
*/
#if defined(XP_CPLUSPLUS)
# define XP_BEGIN_PROTOS extern "C" {
# define XP_END_PROTOS }
#else
# define XP_BEGIN_PROTOS
# define XP_END_PROTOS
#endif
/* simple common types */
#if defined(XP_WIN) || defined(XP_OS2)
#ifndef RESOURCE_STR
#include "prtypes.h"
#endif /* RESOURCE_STR */
#else /* XP_WIN */
#include "prtypes.h"
#endif /* XP_WIN */
#ifdef XP_MAC
#include <Types.h>
#if __option(bool)
typedef bool BOOL;
typedef bool Bool;
typedef bool XP_Bool;
#else
typedef char BOOL;
typedef char Bool;
typedef char XP_Bool;
#endif
#elif defined(XP_WIN)
typedef int Bool;
typedef int XP_Bool;
#elif defined(XP_OS2) && !defined(RC_INVOKED)
#include "prosdep.h"
typedef unsigned long Bool;
typedef unsigned long XP_Bool;
#else
/* XP_UNIX: X11/Xlib.h "define"s Bool to be int. This is really lame
* (that's what typedef is for losers). So.. in lieu of a #undef Bool
* here (Xlib still needs ints for Bool-typed parameters) people have
* been #undef-ing Bool before including this file.
* Can we just #undef Bool here? <mailto:mcafee> (help from djw, converse)
*/
typedef char Bool;
typedef char XP_Bool;
#endif
#if defined(XP_WIN)
#ifndef BOOL
#define BOOL Bool
#endif
#define MIN(a, b) min((a), (b))
#endif
#if defined(XP_OS2)
#ifndef MIN
#define MIN(a, b) min((a), (b))
#endif
#endif
#if defined(XP_UNIX) && !defined(MIN)
#define MIN(a,b) (((a)<(b))?(a):(b))
#endif
#ifndef FALSE
#define FALSE 0
#endif
/* disable the TRUE redefinition warning
* TRUE is defined by windows.h in the MSVC
* development environment, and creates a
* nasty warning for every file. The only
* way to turn it off is to disable all
* macro redefinition warnings or to not
* define TRUE here
*/
#if !defined(TRUE) && !defined(XP_WIN)
#define TRUE !FALSE
#endif
#define YES 1
#define NO 0
#define ON 1
#define OFF 0
#ifndef nil
#define nil 0
#endif
#ifndef NULL
#define NULL 0
#endif
#ifndef TRACEMSG
#ifdef DEBUG
#define TRACEMSG(msg) do { if(MKLib_trace_flag) XP_Trace msg; } while (0)
#else
#define TRACEMSG(msg)
#endif /* DEBUG */
#endif /* TRACEMSG */
#define _INT16
#define _UINT16
#define _INT32
#define _UINT32
#ifndef NSPR20
typedef int intn;
#endif /* NSPR20 */
/* function classifications */
#define PUBLIC
#define MODULE_PRIVATE
#if defined(XP_UNIX) && defined(PRIVATE)
#undef PRIVATE
#endif
#define PRIVATE static
/* common typedefs */
typedef struct _XP_List XP_List;
/* standard system headers */
#if !defined(RC_INVOKED)
#include <assert.h>
#include <ctype.h>
#ifdef __sgi
# include <float.h>
# include <sys/bsd_types.h>
#endif
#ifdef XP_UNIX
#include <stdarg.h>
#endif
#include <limits.h>
#include <locale.h>
#if defined(XP_WIN) && defined(XP_CPLUSPLUS) && defined(_MSC_VER) && _MSC_VER >= 1020
/* math.h under MSVC 4.2 needs C++ linkage when C++. */
extern "C++" {
#include <math.h>
}
#elif (defined(__hpux) || defined(SCO)) && defined(__cplusplus)
extern "C++" {
#include <math.h>
}
#else
#include <math.h>
#endif
#ifdef XP_OS2
/*DSR021097 - on OS/2 we have conflicts over jmp_buf & HW_THREADS */
#ifdef SW_THREADS
#include <setjmp.h>
#endif
#else /*!XP_OS2*/
#include <setjmp.h>
#endif
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#endif
#endif /* _XP_Core_ */

View File

@@ -1,56 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*-----------------------------------------------------------------------------
XPUtil.h
Cross-Platform Debugging
These routines are NOT for handling expected error conditions! They are
for detecting *program logic* errors. Error conditions (such as running
out of memory) cannot be predicted at compile-time and must be handled
gracefully at run-time.
-----------------------------------------------------------------------------*/
#ifndef _XPDebug_
#define _XPDebug_
#include "xp_core.h"
#include "xpassert.h"
#include "xp_trace.h"
/*-----------------------------------------------------------------------------
DEBUG (macro)
-----------------------------------------------------------------------------*/
#ifdef DEBUG
/*
* MSVC seems to have a problem with Debug as an int (it was probably
* previously defined as a macro).
*/
#ifdef __cplusplus
#ifndef Debug
#define Debug 1
#endif
#else
extern int Debug;
#endif
#else
#define Debug 0
#endif
#endif /* _XPDebug_ */

View File

@@ -1,53 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef __XP_ERROR_h_
#define __XP_ERROR_h_
#include "xp_core.h"
#include <errno.h>
XP_BEGIN_PROTOS
extern int xp_errno;
/*
** Return the most recent set error code.
*/
#ifdef XP_WIN
#define XP_GetError() xp_errno
#else
#define XP_GetError() xp_errno
#endif
/*
** Set the error code
*/
#ifdef DEBUG
extern void XP_SetError(int value);
#else
#define XP_SetError(v) xp_errno = (v)
#endif
XP_END_PROTOS
#endif /* __XP_ERROR_h_ */

View File

@@ -1,518 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _XP_File_
#define _XP_File_
#define XP_FILE_NATIVE_PATH char *
#define XP_FILE_URL_PATH char*
/*-----------------------------------------------------------------------------
XP_File.h
Cross-Platform File API
XP_File INTERFACE IS A COMMONLY MISUNDERSTOOD API.PLEASE READ THESE
DOCS BEFORE USING THE API. The API is not self-documenting in any way,
and broken in many.
XP_File mimics the stdio file interface (fopen, fread & friends...).
The main difference is that to specify a file location, XP_File
uses a name in combination with an enum XP_FileType instead of full path.
For example :
stdio: fopen(filename, permissions)
maps to xp_file: XP_FileOpen (name, XP_FileType type, XP_FilePerm permissions);
Meaning of the name argument depends on the XP_FileType it is used with.
For example:
A) XP_FileOpen(name, xpURL)
name is the URL path to the file (/Drive/file.html)
B) XP_FileOpen(name, xpCache)
name is the partial path from cache directory (expands to cache-directory/name)
C) XP_FileOpen(name, xpTemporary)
name is the partial path from temporary directory (expands to cache-directory/name)
Corollary: YOU CANNOT MIX AND MATCH NAMES AND TYPES
For example:
newTempFile = XP_TempName(name, xpTemporary);
file = XP_FileOpen(newTempFile, xpURL, "r+w"); // BAD!, you've just mixed xpURL and xpTemporary
This is a very common error. It might work on some platforms, but it'll break others.
FILE NAME MADNESS
There are 3 basic ways to specify a file in the XP_File interface:
TheXP_FileSpec
char* - XP_FileType pair: used in most XP_File calls. the meaning of the name
depends on the enum. Common ones are:
XP_FileType / name means:
xpTemporary partial path relative to temporary directory
xpURL full path in the standard URL format (file://)
xpGlobalHistory name is ignored.
XP_FILE_NATIVE_PATH
char * used in platform-specific code, platform-specific full path
Windows: "C:\Windows\regedit.exe"
X: "/h/users/atotic/home.html"
Mac: "Macintosh HD:System Folder:System"
XP_FILE_URL_PATH used in cross-platform code, when you need to manipulate the full path.
It is a full path in the standard URL format: (file://<path>, but just the <path> part)
XP_FILE_NATIVE_PATH and XP_FILE_URL_PATH are often confused
To convert between these types:
Conversion: TheXP_FileSpec -> XP_FILE_NATIVE_PATH
Call: WH_FileName(name, type)
Example: WH_FileName("myName", xpTemporary) -> "/u/tmp/myName" on Unix
-> "C:\tmp\myName" on Windows
-> "Mac HD:Temporary folder:myName" on Mac
Conversion: XP_FILE_NATIVE_PATH -> XP_FILE_URL_PATH
Call: XP_PlatformFileToURL(name)
Example: Windows: XP_PlatformFileToURL("C:\tmp\myName") -> "C|/tmp/myName"
Unix: XP_PlatformFileToURL(/u/tmp/myName") -> "/u/tmp/myName"
Mac: XP_PlatformFileToURL("Mac HD:Temporary folder:myName") -> "Mac%20HD/Temporary%20folder/myName"
You cannot convert anything into arbitrary TheXP_FileSpec, but you can use the XP_FILE_URL_PATH
in combination with xpURL enum.
Example: XP_FileOpen("C|/tmp/myName", xpURL) works
COMMONLY USED CALLS NOT IN STDIO:
WH_FileName(name, XP_FileType) - maps TheXP_FileSpec pair to XP_FILE_NATIVE_PATH.
Use it when you need access to full paths in platform-specific code. For example:
For example:
cacheName = XP_FileName("", xpCacheFAT);
fopen(cacheName);
EXTENSIONS TO STDIO API:
- XP_FileRename also moves files accross file systems (copy + delete)
MISC API NOTES:
The names of most of the calls are derived by prepending stdio call name
with XP_File. (open -> XP_FileOpen, opendir -> XP_FileOpenDir). But warren
was fixing up some bugs near the end of 3.0, and in his infinite wisdom renamed
a few of them to WH_ instead of XP_. So, XP_FileName became WH_FileName. WH_ stands
for Warren Harris. Whatever...
Calls are not documented well. Most of the docs are in this header file. You
can usually get a hint about what the call should do by looking up the man
pages of the equivalent stdio call.
OLD DOCS (May mislead you, read at your peril!):
Macintosh file system is not organized in the same hierarchy as UNIX and PC
':' is a separator character instead of '/', '~', '/../' constructs do not
work. Basically, you cannot easily open a file using a pathname.
Because different types of files need to be stored in different
directories, the XP_FileOpen API takes a file type and file name as an
argument. Semantics of how file is opened vary with type.
"Personal" files are stored in the user's "home" directory (~ on unix,
launch point or system folder on Mac, dunno about Windows). File names
may be ignored since there's no reason for multiple personal files.
"Temporary" files are stored in /tmp or the equivalent
"URL" is the only type that allows access to anywhere on the disk
File Type File name Semantics
xpURL url part after file:/// Platform specific
without #aklsdf
xpGlobalHistory - Opens personal global history
xpKeyChain - Opens personal key chain
xpUserPrefs - Opens personal prefs file
xpJSMailFilters - Opens personal js mail filters
xpJSHTMLFilters - Opens personal js HTML filters
xpCache name without path Opens a cache file
xpExtCache Fully qualified path Opens an external cache file
xpTemporary local filename Opens a temporary file
xpNewsrc - Opens a .newsrc file
xpSignature - Opens a .signature file
xpCertDB - Opens cert DB
xpCertDBNameIDX - Opens cert name index
xpKeyDB - Opens key DB
xpSignedAppletDB - Signed applets DB filename
xpJSCookieFilters - Opens personal js cookie filters
-----------------------------------------------------------------------------*/
#ifdef XP_UNIX
# include <dirent.h>
# include <sys/stat.h>
#endif /* XP_UNIX */
#ifdef XP_MAC
# ifndef _UNIX
# include <unix.h>
# endif
# include <Types.h>
# include <Files.h>
#endif /* XP_MAC */
#ifdef XP_WIN
# include "winfile.h"
#endif /* XP_WIN */
#ifdef XP_OS2
# include "dirent.h"
# include "sys/stat.h"
#endif /* XP_OS2 */
/*-----------------------------------------------------------------------------
Types - NOT prototypes
Protoypes go further down.
-----------------------------------------------------------------------------*/
typedef enum XP_FileType {
xpAddrBookNew,
xpAddrBook,
xpUserPrefs,
xpKeyChain,
xpGlobalHistory,
xpGlobalHistoryList,
xpHotlist,
xpTemporary,
xpURL,
xpCache,
xpSARCache, /* larubbio location independent cache */
xpMimeTypes,
xpCacheFAT,
xpSARCacheIndex, /* larubbio location independent cache */
xpNewsRC,
xpSNewsRC,
xpTemporaryNewsRC,
xpNewsgroups,
xpSNewsgroups,
xpNewsHostDatabase,
xpHTTPCookie,
xpProxyConfig,
xpSocksConfig,
xpSignature,
xpNewsrcFileMap,
xpFileToPost,
xpMailFolder,
xpMailFolderSummary,
xpJSMailFilters,
xpJSHTMLFilters,
xpMailSort, /* File that specifies which mail folders
to file which messages. */
xpNewsSort,
xpMailFilterLog, /* log files for mail/news filters */
xpNewsFilterLog,
xpMailPopState,
xpMailSubdirectory,
xpBookmarks,
xpCertDB,
xpCertDBNameIDX,
xpKeyDB,
xpSecModuleDB,
xpExtCache,
xpExtCacheIndex, /* index of external indexes */
xpRegistry,
xpXoverCache, /* Cache of XOVER files. This
filename always takes the form
"hostname/groupname" (except for calls
to XP_MakeDirectory, where it is just
"hostname").*/
xpEditColorScheme, /* ifdef EDITOR Families of "good" color combinations */
xpJPEGFile, /* used for pictures in LDAP directory */
xpVCardFile, /* used for versit vCards */
xpLDIFFile, /* used for LDIF (LDAP Interchange format files */
xpImapRootDirectory,
xpImapServerDirectory,
xpHTMLAddressBook, /* old (HTML) address book */
xpSignedAppletDB, /* filename of signed applets DB */
xpCryptoPolicy, /* Export Policy control file */
xpFolderCache, /* for caching mail/news folder info */
xpPKCS12File, /* used for PKCS 12 certificate transport */
xpJSCookieFilters, /* Opens personal js cookie filters */
xpLIClientDB,
xpLIPrefs
} XP_FileType;
#define XP_FILE_READ "r"
#define XP_FILE_READ_BIN "rb"
#define XP_FILE_WRITE "w"
#define XP_FILE_WRITE_BIN "wb"
#define XP_FILE_APPEND "a"
#define XP_FILE_APPEND_BIN "ab"
#define XP_FILE_UPDATE "r+"
#define XP_FILE_TRUNCATE "w+"
#ifdef SUNOS4
/* XXX SunOS4 hack -- make this universal by using r+b and w+b */
#define XP_FILE_UPDATE_BIN "r+"
#define XP_FILE_TRUNCATE_BIN "w+"
#else
#define XP_FILE_UPDATE_BIN "rb+"
#define XP_FILE_TRUNCATE_BIN "wb+"
#endif
#ifdef __BORLANDC__
#define _stat stat
#endif
#ifdef XP_MAC
#define XP_STAT_READONLY( statinfo ) (0)
#else
#define XP_STAT_READONLY( statinfo ) ((statinfo.st_mode & S_IWRITE) == 0)
#endif
typedef FILE * XP_File;
typedef char * XP_FilePerm;
#ifdef XP_WIN
typedef struct _stat XP_StatStruct;
#endif
#if defined(XP_OS2)
typedef struct stat XP_StatStruct;
#endif
#ifdef XP_UNIX
typedef struct stat XP_StatStruct;
#endif
#if defined (XP_MAC)
typedef struct stat XP_StatStruct;
#endif
#if defined(XP_UNIX) || defined(XP_WIN) || defined(XP_OS2)
typedef DIR * XP_Dir;
typedef struct dirent XP_DirEntryStruct;
#endif
#ifdef XP_MAC
/* Mac has non-stdio definitions of XP_Dir and XP_DirEntryStruct */
typedef struct macdstat {
char d_name[300];
} XP_DirEntryStruct;
typedef struct dirstruct {
XP_DirEntryStruct dirent;
FSSpec dirSpecs;
short index; /* Index for looping in XP_OpenDir */
XP_FileType type;
} *XP_Dir;
#endif /* XP_MAC */
/*-----------------------------------------------------------------------------
Prototypes
-----------------------------------------------------------------------------*/
XP_BEGIN_PROTOS
/*
* Given TheXP_FileSpec returns XP_FILE_NATIVE_PATH.
* See docs on top for more info
*/
PUBLIC XP_FILE_NATIVE_PATH WH_FileName (const char *name, XP_FileType type);
/*
* Given XP_FILE_URL_PATH, returns XP_FILE_NATIVE_PATH
* See docs on top for more info
*/
PUBLIC XP_FILE_NATIVE_PATH WH_FilePlatformName(const char * name);
/*
* Given XP_FILE_NATIVE_PATH, returns XP_FILE_URL_PATH
* See docs on top for more info
*/
PUBLIC XP_FILE_URL_PATH XP_PlatformFileToURL (const XP_FILE_NATIVE_PATH platformName);
/* takes a portion of a local path and returns an allocated portion
* of an XP path. This function was initially created to translate
* imap server folder names to xp names.
*/
PUBLIC char *XP_PlatformPartialPathToXPPartialPath (const char *platformPath);
/* Returns a pathname of a file suitable for use as temporary storage
* Warning: you can only use the returned pathname in other XP_File calls
* with the same enum.
*/
extern char * WH_TempName(XP_FileType type, const char * prefix);
/* Returns the path to the temp directory. */
extern char* XP_TempDirName(void);
/* Various other wrappers for stdio.h
*/
extern XP_File XP_FileOpen (const char* name, XP_FileType type,
const XP_FilePerm permissions);
extern int XP_Stat(const char * name, XP_StatStruct * outStat,
XP_FileType type);
extern XP_Dir XP_OpenDir(const char * name, XP_FileType type);
extern void XP_CloseDir(XP_Dir dir);
extern XP_DirEntryStruct *XP_ReadDir(XP_Dir dir);
extern int XP_FileRename(const char * from, XP_FileType fromtype,
const char * to, XP_FileType totype);
extern int XP_FileRemove(const char * name, XP_FileType type);
extern int XP_MakeDirectory(const char* name, XP_FileType type);
/* XP_MakeDirectoryR recursively creates all the directories needed */
extern int XP_MakeDirectoryR(const char* name, XP_FileType type);
extern int XP_RemoveDirectory(const char *name, XP_FileType type);
extern int XP_RemoveDirectoryRecursive(const char *name, XP_FileType type);
/* Truncate a file to be a given length. It is important (especially on the
Mac) to make sure not to ever call this if you have the file opened. */
extern int XP_FileTruncate(const char* name, XP_FileType type, int32 length);
extern int XP_FileWrite (const void* source, int32 count, XP_File file);
extern char * XP_FileReadLine(char * dest, int32 bufferSize, XP_File file);
extern long XP_FileTell( XP_File file );
extern int XP_FileFlush( XP_File file );
extern int XP_FileClose(XP_File file);
/* Defines */
#define XP_Fileno fileno
#define XP_FileSeek(file,offset,whence) fseek ((file), (offset), (whence))
#define XP_FileRead(dest,count,file) fread ((dest), 1, (count), (file))
#define XP_FileTell(file) ftell(file)
#define XP_FileFlush(file) fflush(file)
/* varargs make it impossible to do any other way */
#define XP_FilePrintf fprintf
/* XP_GetNewsRCFiles returns a null terminated array of pointers to malloc'd
* filename's. Each filename represents a different newsrc file.
*
* return only the filename since the path is not needed or wanted.
*
* Netlib is expecting a string of the form:
* [s]newsrc-host.name.domain[:port]
*
* examples:
* newsrc-news.mcom.com
* snewsrc-flop.mcom.com
* newsrc-news.mcom.com:118
* snewsrc-flop.mcom.com:1191
*
* the port number is optional and should only be
* there when different from the default.
* the "s" in front of newsrc signifies that
* security is to be used.
*
* return NULL on critical error or no files
*/
extern char ** XP_GetNewsRCFiles(void);
/* #ifdef EDITOR */
/* If pszLocalName is not NULL, we return the full pathname
* in local platform syntax. Caller must free this string.
* Returns TRUE if file already exists
* Windows version implemented in winfe\fegui.cpp
*/
extern Bool XP_ConvertUrlToLocalFile(const char * szURL, char **pszLocalName);
/* Construct a temporary filename in same directory as supplied "file:///" type URL
* Used as write destination for saving edited document
* User must free string.
* Windows version implemented in winfe\fegui.cpp
*/
extern char * XP_BackupFileName( const char * szURL );
extern XP_Bool XP_FileIsFullPath(const char * name);
extern XP_Bool XP_FileNameContainsBadChars(const char *name);
#ifdef XP_MAC
/* XP_FileNumberOfFilesInDirectory returns the number of files in the specified
* directory
*/
extern int XP_FileNumberOfFilesInDirectory(const char * dir_name, XP_FileType type);
#endif /* XP_MAC */
XP_END_PROTOS
#if defined(XP_UNIX) || defined(XP_WIN) || defined(XP_OS2)
/* Unix and Windows preferences communicate with the netlib through these
global variables. Netlib does "something sensible" if they are NULL.
*/
extern char *FE_SARCacheDir;
extern char *FE_UserNewsHost;
extern char *FE_UserNewsRC;
extern char *FE_TempDir;
extern char *FE_CacheDir;
extern char *FE_DownloadDir;
extern char *FE_GlobalHist;
#endif /* XP_UNIX || XP_WIN */
/* Each of the three patforms seem to have subtly different opinions
about which functions should be aliases for their stdio counterparts,
and which should be real functions.
Note that on the platform in question, these #defines will override
the prototypes above.
*/
#if defined(XP_UNIX) || defined(XP_WIN) || defined(XP_OS2)
# define XP_FileReadLine(destBuffer, bufferSize, file) \
fgets(destBuffer, bufferSize, file)
#endif /* XP_UNIX || XP_WIN */
#if defined(XP_UNIX) || defined(XP_OS2)
# define XP_ReadDir(DirPtr) readdir((DirPtr))
# define XP_CloseDir(DirPtr) closedir((DirPtr))
#endif /* XP_UNIX */
#if defined(XP_MAC) || defined(XP_WIN) || defined(XP_OS2)
/* #### Note! This defn is dangerous because `count' is evaluated twice! */
# define XP_FileWrite(source, count, file) \
fwrite((void*)(source), 1, \
(size_t) ((count) == -1 ? strlen((char*)source) : (count)), \
(file))
# define XP_FileClose(file) fclose ((file))
#endif /* XP_MAC || XP_WIN */
#endif /* _XP_File_ */

View File

@@ -1,154 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _XP_HASH_
#define _XP_HASH_
#include "xp_list.h"
XP_BEGIN_PROTOS
typedef uint32 (*XP_HashingFunction) (const void *ele);
/* A hash compare function is like strcmp - it should return negative, zero,
or positive depending on the ordering and equality of its arguments.
*/
typedef int (*XP_HashCompFunction) (const void *ele1, const void *ele2);
/* get hash number from a string */
extern uint32 XP_StringHash (const void *xv);
/* Phong's linear congruential hash */
extern uint32 XP_StringHash2 (const char *ubuf);
/* Hash Tables.
*/
typedef struct xp_HashTable *XP_HashTable; /* opaque */
typedef XP_Bool (*XP_HashTableMapper) (XP_HashTable table,
const void *key, void *value,
void *closure);
/* Create a new, empty hash table object.
SIZE should be your best guess at how many items will go into this
table; if SIZE is too small, that's ok, but there will be a small
performance hit. The size need not be prime.
*/
extern XP_HashTable XP_HashTableNew (uint32 size,
XP_HashingFunction hash_fn,
XP_HashCompFunction compare_fn);
/* Clear and free the hash table.
*/
extern void XP_HashTableDestroy (XP_HashTable table);
/* Remove all entries from the hash table.
*/
extern void XP_Clrhash (XP_HashTable table);
/* Add an association between KEY and VALUE to the hash table.
An existing association will be replaced.
(Note that 0 is a legal value.)
This can only fail if we run out of memory.
*/
extern int XP_Puthash (XP_HashTable table, const void *key, void *value);
/* Remove the for KEY in the table, if it exists.
Returns FALSE if the key wasn't in the table.
*/
extern XP_Bool XP_Remhash (XP_HashTable table, const void *key);
/* Looks up KEY in the table and returns the corresponding value.
If KEY is not in the table, `default_value' will be returned instead.
(This is necessary since 0 is a valid value with which a key can be
associated.)
*/
extern void *XP_Gethash (XP_HashTable table, const void *key,
void *default_value);
/* Apply a function to each pair of elements in the hash table.
If that function returns FALSE, then the mapping stops prematurely.
The mapping function may call XP_Remhash() on the *current* key, but
not on any other key in this table. It also may not clear or destroy
the table.
*/
extern void XP_Maphash (XP_HashTable table, XP_HashTableMapper mapper,
void *closure);
/* Apply a function to each pair of elements in the hash table.
After calling the function, that pair will be removed from the table.
If the function returns FALSE, then the mapping stops prematurely.
Any items which were not mapped over will still remain in the table,
but those items which were mapped over will have been freed.
This could also be done by having the mapper function unconditionally
call XP_Remhash(), but using this function will be slightly more efficient.
*/
extern void XP_MapRemhash (XP_HashTable table, XP_HashTableMapper mapper,
void *closure);
/* ===========================================================================
Hash Lists, which aren't really hash tables.
*/
#define XP_HASH_DUPLICATE_OBJECT -99
typedef struct _XP_HashList {
XP_List **list;
int size;
XP_HashingFunction hash_func;
XP_HashCompFunction comp_func;
} XP_HashList;
/* create a hash list
*/
extern XP_HashList *
XP_HashListNew (int size, XP_HashingFunction hash_func, XP_HashCompFunction comp_func);
/* free a hash list
*/
extern void
XP_HashListDestroy (XP_HashList * hash_struct);
/* add an element to a hash list
*
* returns positive on success and negative on failure
*
* ERROR return codes
*
* XP_HASH_DUPLICATE_OBJECT
*/
extern int
XP_HashListAddObject (XP_HashList * hash_struct, void * new_ele);
/* finds an object by name in the hash list
*/
extern void *
XP_HashListFindObject (XP_HashList * hash_struct, void * ele);
/* removes an object by name from the hash list
* and returns the object if found
*/
extern void *
XP_HashListRemoveObject (XP_HashList * hash_struct, void * ele);
XP_END_PROTOS
#endif /* _XP_HASH_ */

View File

@@ -1,263 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* xp_help.h *
/*
* *
* Revision history: *
* Author: Edwin Aoki *
* Extensive Revision: Kevin Driscoll 3/19/97 *
* Updated ONLY Mail/News entries: Kevin Driscoll 3/21/97 *
* Updated to add discussion IDs: Kevin Driscoll 4/22/97 *
* Added missing/modified IDs: Gina Cariga 4/22/97 *
* Added offline & help_edit_dict IDs: Kevin Driscoll 4/28/97 *
* Added 2 HELP_HTML_MAIL IDs: Kevin Driscoll 4/29/97 *
* Fixed 5 wrong component names in helpIDs: Kevin Driscoll 5/7/97*
* Fixed 1 and added 1 ID: Kevin Driscoll 5/9/97 *
* Corrected 7 helpside IDs as per Melton: Kevin Driscoll 5/12/97 *
* Added 1 new ID for conference: Kevin Driscoll 5/12/97 *
* Corrected 2 IDs for offine download: Kevin Driscoll 5/21/97 *
*******************************************************************/
#ifndef XP_HELP_H
#define XP_HELP_H
/* The main entry point into help for most folks. This function takes a string
which represents the component and topic name for a Communicator help topic.
It prepends the netscape vendor to create a fully-qualified topic name. If
an MWContext which represents the current window is available, pass that in,
otherwise, specify NULL and NetHelp will locate an appropriate context to use.
In either event, XP_NetHelp then calls NET_LoadNetHelpTopic, below. */
extern void
XP_NetHelp(MWContext *pContext, const char *topic);
/* Called by FEs to load a fully-qualified topic. This function is implemented in
libnet/mkhelp.c, but it's extracted here so unrelated FE parts don't have
to include mkhelp.h */
extern void
NET_LoadNetHelpTopic(MWContext *pContext, const char *topic);
/* These defines correspond to help tags that can be passed to
XP_NetHelp, above, to invoke nethelp. */
/* Main product help */
#define HELP_COMMUNICATOR "home:start_here"
/* Address Book Dialogs */
#define HELP_ADDRESS_BOOK "messengr:ADDRESS_BOOK"
#define HELP_ADD_LIST_MAILING_LIST "messengr:ADD_LIST_MAILING_LIST"
#define HELP_ADD_USER_NETSCAPE_COOLTALK "messengr:ADD_USER_NETSCAPE_COOLTALK"
#define HELP_ADD_USER_PROPS "messengr:ADD_USER_PROPERTIES"
#define HELP_ADD_USER_SECURITY "messengr:ADD_USER_SECURITY"
#define HELP_ADD_USER_CONTACT "messengr:ADD_USER_CONTACT"
#define HELP_ADD_USER_NETSCAPE_COOLTALK "messengr:ADD_USER_NETSCAPE_COOLTALK"
#define HELP_LDAP_SERVER_PROPS "messengr:LDAP_SERVER_PROPERTIES"
#define HELP_EDIT_USER_CALLPOINT "messengr:ADD_USER_NETSCAPE_COOLTALK"
#define HELP_EDIT_USER_CONTACT "messengr:ADD_USER_CONTACT"
#define HELP_EDIT_USER "messengr:ADD_USER_PROPERTIES"
#define HELP_EDIT_USER_SECURITY "messengr:EDIT_USER_SECURITY"
#define HELP_MAIL_LIST_PROPS "messengr:ADD_LIST_MAILING_LIST"
#define HELP_SEARCH_MAILNEWS "messengr:SEARCH_MAILNEWS"
#define HELP_SEARCH_LDAP "messengr:SEARCH_LDAP"
#define HELP_SELECT_ADDRESSES "messengr:SELECT_ADDRESSES"
#define HELP_SEARCH_ADDRESS_BOOKS "messengr:SEARCH_ADDRESS_BOOKS"
/* Bookmark Dialogs */
#define HELP_BOOKMARK_PROPERTIES "navigatr:BOOKMARK_PROPERTIES"
#define HELP_FIND_IN_BOOKMARKS "navigatr:FIND_IN_BOOKMARKS"
/* Browser Dialogs */
#define HELP_OPEN_PAGE "navigatr:OPEN_PAGE"
#define HELP_SEARCH_HISTORY_LIST "navigatr:SEARCH_HISTORY_LIST"
/* Conference Dialogs */
#define HELP_ADD_TO_SENDLIST "confernc:ADD_TO_SENDLIST"
#define HELP_CANVAS_SIZE "confernc:CANVAS_SIZE"
#define HELP_CHAT_FILE_SAVE "confernc:CHAT_FILE_SAVE"
#define HELP_COLLAB_BROWSER "confernc:COLLAB_BROWSER"
#define HELP_CHAT_ABOUT "confernc:CONF_CHAT_ABOUT"
#define HELP_CHAT_EDITLOG "confernc:CONF_CHAT_EDITLOG"
#define HELP_CHAT_EDITPAD "confernc:CONF_CHAT_EDITPAD"
#define HELP_CONF_FILEX "confernc:CONF_FILEX_ABOUT"
#define HELP_CONF_FILERCV "confernc:CONF_FILEX_FILERCV"
#define HELP_CONF_FILESND "confernc:CONF_FILEX_FILESND"
#define HELP_CONF_WB_ABOUT "confernc:CONF_WB_ABOUT"
#define HELP_DIRECT_CALL "confernc:DIRECT_CALL"
#define HELP_FILE_INCLUDE "confernc:FILE_INCLUDE"
#define HELP_FILE_OPEN "confernc:FILE_OPEN"
#define HELP_PROPS_AUDIO "confernc:PROPERTIES_AUDIO"
#define HELP_PROPS_AUDIO_ADVANCED "confernc:PROPERTIES_AUDIO_ADVANCED"
#define HELP_PROPS_BUSINESS_CARD "confernc:PROPERTIES_BUSINESS_CARD"
#define HELP_PROPS_CALL "confernc:PROPERTIES_CALL"
#define HELP_PROPS_SPEED_DIAL "confernc:PROPERTIES_SPEED_DIAL"
#define HELP_RECORD_VOICEMAIL "confernc:RECORD_VOICEMAIL"
#define HELP_SEND_VOICEMAIL "confernc:SEND_VOICEMAIL"
#define HELP_WB_FILE_SAVE "confernc:WB_FILE_SAVE"
/* Editor Dialogs */
#define HELP_DOC_PROPS_ADVANCED "composer:DOCUMENT_PROPERTIES_ADVANCED"
#define HELP_DOC_PROPS_APPEARANCE "composer:DOCUMENT_PROPERTIES_APPEARANCE"
#define HELP_DOC_PROPS_GENERAL "composer:DOCUMENT_PROPERTIES_GENERAL"
#define HELP_HTML_TAG "composer:HTML_TAG"
#define HELP_NEW_TABLE_PROPS "composer:NEW_TABLE_PROPERTIES"
#define HELP_PROPS_CHARACTER "composer:PROPERTIES_CHARACTER"
#define HELP_PROPS_HRULE "composer:PROPERTIES_HRULE"
#define HELP_PROPS_IMAGE "composer:PROPERTIES_IMAGE"
#define HELP_PROPS_IMAGE_ALT "composer:PROPERTIES_IMAGE_ALT"
#define HELP_PROPS_LINK "composer:PROPERTIES_LINK"
#define HELP_PROPS_PARAGRAPH "composer:PROPERTIES_PARAGRAPH"
#define HELP_PROPS_TARGET "composer:PROPERTIES_TARGET"
#define HELP_PUBLISH_FILES "composer:PUBLISH_FILES"
#define HELP_TABLE_PROPS_CELL "composer:TABLE_PROPERTIES_CELL"
#define HELP_TABLE_PROPS_ROW "composer:TABLE_PROPERTIES_ROW"
#define HELP_TABLE_PROPS_TABLE "composer:TABLE_PROPERTIES_TABLE"
#define HELP_SPELL_CHECK "composer:SPELL_CHECK"
#define HELP_IMAGE_CONVERSION "composer:IMAGE_CONVERSION"
#define HELP_EXTRA_HTML "composer:EXTRA_HTML"
#define HELP_COLOR_PICKER "composer:COLOR_PICKER"
/* Mail Dialogs */
#define HELP_FILTER_RULES "messengr:FILTER_RULES"
#define HELP_MAIL_FILTERS "messengr:MAIL_FILTERS"
#define HELP_MAIL_FOLDER_PROPS_GENERAL "messengr:MAIL_FOLDER_PROPERTIES_GENERAL"
#define HELP_MAIL_FOLDER "messengr:MAIL_FOLDER"
#define HELP_MAIL_NEWS_WIZARD "messengr:MAIL_NEWS_WIZARD"
#define HELP_MESSAGE_LIST_WINDOW "messengr:MESSAGE_LIST_WINDOW"
#define HELP_MAIL_MESSAGE_WINDOW "messengr:MAIL_MESSAGE_WINDOW"
#define HELP_HTML_MAIL_QUESTION "messengr:HTML_MAIL_QUESTION"
#define HELP_HTML_MAIL_QUESTION_RECIPIENT "messengr:HTML_MAIL_QUESTION_RECIPIENT"
/* Main Preferences: Appearance */
#define HELP_PREFS_APPEARANCE "navigatr:PREFERENCES_APPEARANCE"
#define HELP_PREFS_APPEARANCE_FONTS "navigatr:PREFERENCES_APPEARANCE_FONTS"
#define HELP_PREFS_APPEARANCE_COLORS "navigatr:PREFERENCES_APPEARANCE_COLORS"
/* Main Preferences: Browser */
#define HELP_PREFS_BROWSER "navigatr:PREFERENCES_NAVIGATOR"
#define HELP_PREFS_BROWSER_LANGUAGES "navigatr:PREFERENCES_NAVIGATOR_LANGUAGES"
#define HELP_PREFS_BROWSER_APPLICATIONS "navigatr:PREFERENCES_NAVIGATOR_APPLICATIONS"
/* Main Preferences: Mail and Groups */
#define HELP_PREFS_MAILNEWS_MAIN_PANE "messengr:PREFERENCES_MAILNEWS_MAIN_PANE"
#define HELP_PREFS_MAILNEWS_IDENTITY "messengr:PREFERENCES_MAILNEWS_IDENTITY"
#define HELP_PREFS_MAILNEWS_MESSAGES "messengr:PREFERENCES_MAILNEWS_MESSAGES"
#define HELP_PREFS_MAILNEWS_MAILSERVER "messengr:PREFERENCES_MAILNEWS_MAILSERVER"
#define HELP_PREFS_MAILNEWS_GROUPSERVER "messengr:PREFERENCES_MAILNEWS_GROUPSERVER"
#define HELP_PREFS_MAILNEWS_DIRECTORY "messengr:PREFERENCES_MAILNEWS_DIRECTORY"
#define HELP_MAILNEWS_EDIT_CARD "messengr:MAILNEWS_EDIT_CARD"
#define HELP_MAILNEWS_EDIT_CARD_NAME_TAB "messengr:ADD_USER_PROPERTIES"
#define HELP_MAILNEWS_EDIT_CARD_CONTACT_TAB "messengr:ADD_USER_CONTACT"
#define HELP_MAILNEWS_EDIT_CARD_CONFERENCE_CARD "messengr:ADD_USER_NETSCAPE_COOLTALK"
/* Main Preferences: LI */
#define HELP_PREFS_LI_LOGIN "navigatr:PREFERENCES_NAVIGATOR"
#define HELP_PREFS_LI_SERVER "navigatr:PREFERENCES_NAVIGATOR_LANGUAGES"
#define HELP_PREFS_LI_FILES "navigatr:PREFERENCES_NAVIGATOR_APPLICATIONS"
#ifndef MOZ_MAIL_NEWS
#define HELP_PREFS_IDENTITY "navigatr:PREFERENCES_IDENTITY"
#endif /* MOZ_MAIL_NEWS */
/* Main Preferences: Composer */
#ifdef XP_MAC
#define HELP_PREFS_COMPOSER "composer:PREFERENCES_EDITOR_GENERAL"
#define HELP_PREFS_COMPOSER_PUBLISHING "composer:PREFERENCES_EDITOR_PUBLISH"
#else
#define HELP_PREFS_COMPOSER "messengr:PREFERENCES_COMPOSER"
#define HELP_PREFS_COMPOSER_PUBLISHING "messengr:PREFERENCES_COMPOSER_PUBLISHING"
#endif
/* Main Preferences: Offline */
#define HELP_PREFS_OFFLINE "navigatr:PREFERENCES_OFFLINE"
#define HELP_PREFS_OFFLINE_GROUPS "navigatr:PREFERENCES_OFFLINE_GROUPS"
/* Main Preferences: Advanced */
#define HELP_PREFS_ADVANCED "navigatr:PREFERENCES_ADVANCED"
#define HELP_PREFS_ADVANCED_CACHE "navigatr:PREFERENCES_ADVANCED_CACHE"
#define HELP_PREFS_ADVANCED_PROXIES "navigatr:PREFERENCES_ADVANCED_PROXIES"
#define HELP_PREFS_ADVANCED_DISK_SPACE "navigatr:PREFERENCES_ADVANCED_DISK_SPACE"
/* Main Preferences: Conference */
#define HELP_CONF_PREFS_PROPS_CALL "home:PROPERTIES_CALL"
#define HELP_CONF_PREFS_PROPS_AUDIO "home:PROPERTIES_AUDIO"
#define HELP_CONF_PREFS_PROPS_BUSINESS_CARD "home:PROPERTIES_BUSINESS_CARD"
/* Editor Preferences */
#define HELP_EDIT_PREFS_EDITOR_APPEARANCE "composer:PREFERENCES_EDITOR_APPEARANCE"
#define HELP_EDIT_PREFS_EDITOR_GENERAL "composer:PREFERENCES_EDITOR_GENERAL"
#define HELP_EDIT_PREFS_EDITOR_PUBLISH "composer:PREFERENCES_EDITOR_PUBLISH"
#define HELP_EDIT_DICTIONARY "composer:EDIT_DICTIONARY"
/* Security Preferences */
#define HELP_SEC_PREFS_SEC_GENERAL "home:PREFERENCES_SECURITY_GENERAL"
#define HELP_SEC_PREFS_SEC_PASSWORDS "home:PREFERENCES_SECURITY_PASSWORDS"
#define HELP_SEC_PREFS_SEC_PERSONAL_CERTIFICATES "home:PREFERENCES_SECURITY_PERSONAL_CERTIFICATES"
#define HELP_SEC_PREFS_SEC_SITE_CERTIFICATES "home:PREFERENCES_SECURITY_SITE_CERTIFICATES"
/* Security Advisor Dialogs */
#define HELP_SEC_PASS "home:SECURITY_ADVISOR_PASSWORDS"
#define HELP_SEC_PCERT "home:SECURITY_ADVISOR_PERSONAL_CERTIFICATES"
#define HELP_SEC_ADV "home:SECURITY_ADVISOR_SECURITY_ADVISOR"
#define HELP_SEC_SCERT "home:SECURITY_ADVISOR_SITE_CERTIFICATES"
/* Discussion Dialogs */
#define HELP_NEWS_DISCUSION_GENERAL "collabra:NEWS_DISCUSSION_GENERAL"
#define HELP_NEWS_DISCUSION_DOWNLOAD "collabra:NEWS_DISCUSSION_DOWNLOAD"
#define HELP_NEWS_DISCUSION_DISKSPACE "collabra:NEWS_DISCUSSION_DISKSPACE"
#define HELP_NEWS_NEW_GROUP_SERVER "collabra:NEWS_NEW_GROUP_SERVER"
#define HELP_NEWS_ADD_DIRECTORY_SERVER "collabra:NEWS_ADD_DIRECTORY_SERVER"
#define HELP_NEWS_DIRECTORY_SERVER_PROPERTY "collabra:NEWS_DIRECTORY_SERVER_PROPERTY"
#define HELP_DISCUSSION_HOST_PROPERTIES "collabra:DISCUSSION_HOST_PROPERTIES"
#define HELP_SUBSCRIBE_SEARCH "collabra:SUBSCRIBE_SEARCH"
#define HELP_SUBSCRIBE_LIST_NEW "collabra:SUBSCRIBE_LIST_NEW"
#define HELP_SUBSCRIBE_LIST_ALL "collabra:SUBSCRIBE_LIST_ALL"
#define HELP_ADD_SERVER "collabra:ADD_SERVER"
#define HELP_OFFLINE_DOWNLOAD "collabra:NEWS_DISCUSSION_DOWNLOAD_OFFLINE"
#define HELP_OFFLINE_DISCUSSION_GROUPS "collabra:NEWS_DISCUSSION_GROUPS"
#endif

View File

@@ -1,81 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef XPLIST_H
#define XPLIST_H
#include "xp_core.h"
/* generic list structure
*/
struct _XP_List {
void * object;
struct _XP_List * next;
struct _XP_List * prev;
};
XP_BEGIN_PROTOS
extern XP_List * XP_ListNew (void);
extern void XP_ListDestroy (XP_List *list);
extern void XP_ListAddObject (XP_List *list, void *newObject);
extern void XP_ListAddObjectToEnd (XP_List *list, void *newObject);
extern void XP_ListInsertObject (XP_List *list, void *insert_before, void *newObject);
extern void XP_ListInsertObjectAfter (XP_List *list, void *insert_after, void *newObject);
/* returns the list node of the specified object if it was
* in the list
*/
extern XP_List * XP_ListFindObject (XP_List *list, void * obj);
extern Bool XP_ListRemoveObject (XP_List *list, void *oldObject);
extern void * XP_ListRemoveTopObject (XP_List *list);
extern void * XP_ListPeekTopObject (XP_List *list);
extern void * XP_ListRemoveEndObject (XP_List *list);
#define XP_ListIsEmpty(list) (list ? list->next == NULL : TRUE)
extern int XP_ListCount (XP_List *list);
#define XP_ListTopObject(list) (list && list->next ? list->next->object : NULL)
extern void * XP_ListGetEndObject (XP_List *list);
extern void * XP_ListGetObjectNum (XP_List *list, int num);
extern int XP_ListGetNumFromObject (XP_List *list, void * object);
/* move the top object to the bottom of the list
* this function is useful for reordering the list
* so that a round robin ordering can occur
*/
extern void XP_ListMoveTopToBottom (XP_List *list);
XP_END_PROTOS
/* traverse the list in order
*
* make a copy of the list pointer and point it at the list object head.
* the first call the XP_ListNextObject will return the first object
* and increment the copy of the list pointer. Subsequent calls
* will continue to increment the copy of the list pointer and return
* objects
*/
#define XP_ListNextObject(list) \
(list && ((list = list->next)!=0) ? list->object : NULL)
#endif /* XPLIST_H */

View File

@@ -1,196 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* This file should be the first Mcom file included
*
* All cross-platform definitions, regardless of project, should be
* contained in this file or its includes
*/
#ifndef _MCOM_H_
#define _MCOM_H_
#include "xp_core.h"
#include "xp_mem.h"
#include "xp_debug.h"
#include "xp_str.h"
#include "xp_list.h"
/* platform-specific types */
/* include header files needed for prototypes/etc */
#include "xp_file.h"
XP_BEGIN_PROTOS
/* XXX where should this kind of junk go? */
unsigned char *XP_WordWrap(int charset, unsigned char *string, int maxColumn,
int checkQuoting);
XP_END_PROTOS
/* --------------------------------------------------------------------- */
/*
Define the hooks for cross-platform string + memory functions
*/
#ifdef DEBUG
XP_BEGIN_PROTOS
extern char * NOT_NULL (const char *x);
XP_END_PROTOS
#else
# define NOT_NULL(X) X
#endif
#include <string.h>
#define XP_STRLEN(s) strlen(NOT_NULL(s))
#define XP_STRCMP(a, b) strcmp(NOT_NULL(a), NOT_NULL(b))
#define XP_STRNCMP(a, b, n) strncmp(NOT_NULL(a), NOT_NULL(b), (n))
#define XP_STRCPY(d, s) strcpy(NOT_NULL(d), NOT_NULL(s))
#define XP_STRCHR strchr
#define XP_STRRCHR strrchr
#define XP_STRTOK strtok
#define XP_STRCAT strcat
#define XP_STRNCAT strncat
#define XP_STRSTR strstr
#define XP_STRTOUL strtoul
/* XP_FILENAMECMP compares two filenames, treating case differences
appropriately for this OS. */
#if defined(XP_WIN) || defined(XP_OS2)
#define XP_FILENAMECMP stricmp
#else
#define XP_FILENAMECMP XP_STRCMP
#endif
#if !defined(XP_WIN) && !defined(XP_OS2)
/* strdup is not an ANSI function */
XP_BEGIN_PROTOS
extern char * strdup (const char * s);
XP_END_PROTOS
#endif
#include <memory.h>
#define XP_STRDUP(s) strdup((s))
#define XP_MEMCPY(d, s, n) memcpy((d), (s), (n))
/* NOTE: XP_MEMMOVE gurantees that overlaps will be properly handled */
#if defined( __sun) && !defined(__svr4__)
#define XP_MEMMOVE(Dest,Src,Len) bcopy((Src),(Dest),(Len))
#else
#define XP_MEMMOVE(Dest,Src,Len) memmove((Dest),(Src),(Len))
#endif /* __sun */
#define XP_MEMSET memset
#define XP_SPRINTF sprintf
/* should I really include this here or what? */
#ifdef XP_MAC
#include "prprf.h"
#else
#include "prprf.h"
#endif
#define XP_SAFE_SPRINTF PR_snprintf
#define XP_MEMCMP memcmp
#define XP_VSPRINTF vsprintf
#define XP_IS_SPACE(VAL) \
(((((intn)(VAL)) & 0x7f) == ((intn)(VAL))) && isspace((intn)(VAL)) )
#define XP_IS_CNTRL(i) ((((unsigned int) (i)) > 0x7f) ? (int) 0 : iscntrl(i))
#define XP_IS_DIGIT(i) ((((unsigned int) (i)) > 0x7f) ? (int) 0 : isdigit(i))
#if defined(XP_WIN) || defined(XP_OS2)
#define XP_IS_ALPHA(VAL) (isascii((int)(VAL)) && isalpha((int)(VAL)))
#else
#define XP_IS_ALPHA(VAL) ((((unsigned int) (VAL)) > 0x7f) ? FALSE : isalpha((int)(VAL)))
#endif
#define XP_ATOI(PTR) (atoi((PTR)))
/* NOTE: XP_BCOPY gurantees that overlaps will be properly handled */
#ifdef XP_WIN16
XP_BEGIN_PROTOS
extern void WIN16_bcopy(char *, char *, unsigned long);
XP_END_PROTOS
#define XP_BCOPY(PTR_FROM, PTR_TO, LEN) \
(WIN16_bcopy((char *) (PTR_FROM), (char *)(PTR_TO), (LEN)))
#else
#define XP_BCOPY(Src,Dest,Len) XP_MEMMOVE((Dest),(Src),(Len))
#endif
#define XP_BZERO(a,b) memset(a,0,b)
#ifdef XP_WIN
#define XP_RANDOM rand
#define XP_SRANDOM(seed) srand((seed))
#endif
#ifdef XP_OS2
#define XP_RANDOM rand
#define XP_SRANDOM(seed) srand((seed))
#endif
#ifdef XP_MAC
#define XP_RANDOM rand
#define XP_SRANDOM(seed) srand((seed))
#endif
#ifdef XP_UNIX
#if !defined(XP_RANDOM) || !defined(XP_SRANDOM) /* defined in both xp_mcom.h and xp_str.h */
#if defined(UNIXWARE) || defined(_INCLUDE_HPUX_SOURCE) || (defined(__sun) && defined(__svr4__)) || defined(SNI) || defined(NCR)
#define XP_RANDOM rand
#define XP_SRANDOM(seed) srand((seed))
#else
#define XP_RANDOM random
#define XP_SRANDOM(seed) srandom((seed))
#endif
#endif
#endif
#ifdef XP_MAC
XP_BEGIN_PROTOS
extern time_t GetTimeMac();
extern time_t Mactime(time_t *timer);
extern struct tm *Macgmtime(const time_t *timer);
extern time_t Macmktime (struct tm *timeptr);
extern char * Macctime(const time_t *);
extern struct tm *Maclocaltime(const time_t *);
XP_END_PROTOS
#define XP_TIME() GetTimeMac()
#define time(t) Mactime(t)
#define gmtime(t) Macgmtime(t)
#define mktime(t) Macmktime(t)
#define ctime(t) Macctime(t)
#define localtime(t) Maclocaltime(t)
#define UNIXMINUSMACTIME 2082844800UL
#else
#define XP_TIME() time(0)
#endif
#endif /* _MCOM_H_ */

View File

@@ -1,293 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*-----------------------------------------------------------------------------
XPMem.h
Cross-Platform Memory API
-----------------------------------------------------------------------------*/
#ifndef _XP_MEM_
#define _XP_MEM_
#include "xp_core.h"
#ifdef XP_MAC
#include "FlushAllocator.h"
#endif
#ifdef XP_WIN16
#include <malloc.h>
#endif
/* global free routine */
#define XP_FREEIF(obj) do { if(obj) { XP_FREE(obj); obj = 0; }} while(0)
/*-----------------------------------------------------------------------------
Allocating Structures
-----------------------------------------------------------------------------*/
#ifndef XP_MAC
#define XP_NEW( x ) (x*)malloc( sizeof( x ) )
#define XP_DELETE( p ) free( p )
#else /* XP_MAC */
#define XP_NEW( s ) ((s*)Flush_Allocate( sizeof(s), FALSE ) )
#define XP_DELETE( p ) Flush_Free( p )
#endif /* XP_MAC */
/*-----------------------------------------------------------------------------
Mallocs
NOTE: this uses the same malloc as the structure allocator so it is
ok and safe to use XP_DELETE or XP_FREE interchangeably!
-----------------------------------------------------------------------------*/
#ifdef XP_MAC
#define XP_ALLOC( s ) Flush_Allocate( s, FALSE )
#define XP_FREE( p ) Flush_Free( p )
#define XP_REALLOC( p , s ) Flush_Reallocate( p, s )
#define XP_CALLOC( n, s ) Flush_Allocate( (n)*(s), TRUE )
#define XP_NEW_ZAP( t ) ((t*)Flush_Allocate( sizeof(t), TRUE ) )
#else /* !XP_MAC */
/* normal win and unix */
#ifdef XP_WIN16
XP_BEGIN_PROTOS
extern void * WIN16_realloc(void * ptr, unsigned long size);
extern void * WIN16_malloc(unsigned long size);
XP_END_PROTOS
#define XP_REALLOC(ptr, size) WIN16_realloc(ptr, size)
#define XP_ALLOC(size) WIN16_malloc(size)
#else
#if defined(DEBUG) && defined(MOZILLA_CLIENT)
/* Check that we never allocate anything greater than 64K. If we ever tried,
Win16 would choke, and we'd like to find out about it on some other platform
(like, one where we have a working debugger). */
/* This code used to call abort. Unfortunately, on Windows, abort() doesn't
* go to the debugger. Instead, it silently quits the program.
* So use XP_ASSERT(FALSE) instead.
*/
#define XP_CHECK_ALLOC_SIZE(size) ((size) <= 0xFFFF ? size : (XP_ASSERT(FALSE), (size)))
#else
#define XP_CHECK_ALLOC_SIZE(size) size
#endif
#define XP_REALLOC(ptr, size) realloc(ptr, XP_CHECK_ALLOC_SIZE(size))
#define XP_ALLOC(size) malloc(XP_CHECK_ALLOC_SIZE(size))
#endif
#ifdef DEBUG
#define XP_CALLOC(num, sz) (((num)*(sz))<64000 ? calloc((num),(sz)) : (XP_ASSERT(FALSE), calloc((num),(sz))))
#else
#define XP_CALLOC(num, sz) calloc((num), (sz))
#endif
#define XP_FREE(ptr) free(ptr)
#define XP_NEW_ZAP(TYPE) ( (TYPE*) calloc (1, sizeof (TYPE) ) )
#endif /* !XP_MAC */
/* --------------------------------------------------------------------------
16-bit windows requires space allocated bigger than 32K to be of
type huge. For example:
int HUGE * foo = halloc(100000);
-----------------------------------------------------------------------------*/
/* There's no huge realloc because win16 doesn't have a hrealloc,
* and there's no API to discover the original buffer's size.
*/
#ifdef XP_WIN16
#define XP_HUGE __huge
#define XP_HUGE_ALLOC(SIZE) halloc(SIZE,1)
#define XP_HUGE_FREE(SIZE) hfree(SIZE)
#define XP_HUGE_MEMCPY(DEST, SOURCE, LEN) hmemcpy(DEST, SOURCE, LEN)
#else
#define XP_HUGE
#define XP_HUGE_ALLOC(SIZE) malloc(SIZE)
#define XP_HUGE_FREE(SIZE) free(SIZE)
#define XP_HUGE_MEMCPY(DEST, SOURCE, LEN) memcpy(DEST, SOURCE, LEN)
#endif
#define XP_HUGE_CHAR_PTR char XP_HUGE *
/*-----------------------------------------------------------------------------
Allocating Large Buffers
NOTE: this does not interchange with XP_ALLOC/XP_NEW/XP_FREE/XP_DELETE
-----------------------------------------------------------------------------*/
#if defined(XP_UNIX) || defined(XP_WIN32)
/* don't typedef this to void* unless you want obscure bugs... */
typedef unsigned long * XP_Block;
#define XP_ALLOC_BLOCK(SIZE) malloc ((SIZE))
#define XP_FREE_BLOCK(BLOCK) free ((BLOCK))
#ifdef XP_UNIXu
/* On SunOS, realloc(0,n) ==> 0 */
# define XP_REALLOC_BLOCK(BLOCK,SIZE) ((BLOCK) \
? realloc ((BLOCK), (SIZE)) \
: malloc ((SIZE)))
#else /* !XP_UNIX */
# define XP_REALLOC_BLOCK(BLOCK,SIZE) realloc ((BLOCK), (SIZE))
#endif /* !XP_UNIX */
#define XP_LOCK_BLOCK(PTR,TYPE,BLOCK) PTR = ((TYPE) (BLOCK))
#ifdef DEBUG
#define XP_UNLOCK_BLOCK(BLOCK) (void)BLOCK
#else
#define XP_UNLOCK_BLOCK(BLOCK)
#endif
#endif /* XP_UNIX || XP_WIN32 */
#if defined(XP_OS2)
/* don't typedef this to void* unless you want obscure bugs... */
typedef unsigned long * XP_Block;
#define XP_ALLOC_BLOCK(SIZE) malloc ((SIZE))
#define XP_FREE_BLOCK(BLOCK) free ((BLOCK))
# define XP_REALLOC_BLOCK(BLOCK,SIZE) realloc ((BLOCK), (SIZE))
#define XP_LOCK_BLOCK(PTR,TYPE,BLOCK) PTR = ((TYPE) (BLOCK))
#ifdef DEBUG
#define XP_UNLOCK_BLOCK(BLOCK) (void)BLOCK
#else
#define XP_UNLOCK_BLOCK(BLOCK)
#endif
#ifdef MCW_DEBUG
#include <stdlib.h>
#include <shmalloc.h>
#endif
#endif /* XP_OS2 */
#ifdef XP_WIN16
typedef unsigned char * XP_Block;
#define XP_ALLOC_BLOCK(SIZE) WIN16_malloc((SIZE))
#define XP_FREE_BLOCK(BLOCK) free ((BLOCK))
#define XP_REALLOC_BLOCK(BLOCK,SIZE) ((BLOCK) \
? WIN16_realloc ((BLOCK), (SIZE)) \
: WIN16_malloc ((SIZE)))
#define XP_LOCK_BLOCK(PTR,TYPE,BLOCK) PTR = ((TYPE) (BLOCK))
#ifdef DEBUG
#define XP_UNLOCK_BLOCK(BLOCK) (void)BLOCK
#else
#define XP_UNLOCK_BLOCK(BLOCK)
#endif
#endif /* XP_WIN16 */
#ifdef XP_MAC
typedef float* XP_Block;
#define XP_ALLOC_BLOCK( s ) ((XP_Block)Flush_Allocate( s, FALSE ) )
#define XP_FREE_BLOCK( b ) Flush_Free( b )
#define XP_REALLOC_BLOCK( b, s ) ((XP_Block)Flush_Reallocate( b, s ) )
#define XP_LOCK_BLOCK( p, t, b ) (p = ( t )( b ))
#define XP_UNLOCK_BLOCK( b )
#endif /* XP_MAC */
#define PA_Block XP_Block
#define PA_ALLOC(S) XP_ALLOC_BLOCK(S)
#define PA_FREE(B) XP_FREE_BLOCK(B)
#define PA_REALLOC(B,S) XP_REALLOC_BLOCK(B,S)
#define PA_LOCK(P,T,B) XP_LOCK_BLOCK(P,T,B)
#define PA_UNLOCK(B) XP_UNLOCK_BLOCK(B)
/*-----------------------------------------------------------------------------
Allocating many small structures.
If allocating many small structures, it is often more efficient to allocate
an array of a bunch of them, and maintain a free list of them. These
utilities do that for you.
You must provide a XP_AllocStructInfo structure which describes what
it is you are trying to allocate it. If statically defined, use the
XP_INITIALIZE_ALLOCSTRUCTINFO macro to initialize it; if you prefer to
initialize it at runtime, use the XP_InitAllocStructInfo() routine.
If you free everything you've ever allocated for a given
XP_AllocStructInfo, all the memory used will be freed. Or, if you're
*really sure* you're done with everything you've allocated for a given
XP_AllocStructInfo, you can just call the scary XP_FreeAllStructs() routine.
Don't mix calls to XP_AllocStruct/XP_FreeStruct and XP_ALLOC/XP_FREE !!!
XP_AllocStructZero is the same as XP_AllocStruct, but it also zeros out
the allocated memory.
An example:
struct foo {
int a;
int b;
};
static XP_AllocStructInfo FooAlloc =
{ XP_INITIALIZE_ALLOCSTRUCTINFO(sizeof(struct foo)) };
.
.
.
struct foo* ptr = (struct foo*) XP_AllocStruct(&FooAlloc);
.
.
.
XP_FreeStruct(FooAlloc, ptr);
-----------------------------------------------------------------------------*/
typedef struct XP_AllocStructInfo {
int size;
void* curchunk;
int leftinchunk;
void* firstfree;
void* firstchunk;
int numalloced;
} XP_AllocStructInfo;
#define XP_INITIALIZE_ALLOCSTRUCTINFO(size) ((size + sizeof(void*) - 1) / sizeof(void*)) * sizeof(void*)
XP_BEGIN_PROTOS
void XP_InitAllocStructInfo(XP_AllocStructInfo* info, int size);
void* XP_AllocStruct(XP_AllocStructInfo* info);
void* XP_AllocStructZero(XP_AllocStructInfo* info);
void XP_FreeStruct(XP_AllocStructInfo* info, void* ptr);
void XP_FreeAllStructs(XP_AllocStructInfo* info); /* Danger! Use with care! */
XP_END_PROTOS
#endif /* _XP_MEM_ */

View File

@@ -1,58 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*-----------------------------------------------------------------------------
Position String Formatting
%ns argument n is a string
%ni argument n is an integer
%% literal %
n must be from 1 to 9
XP_MessageLen returns the length of the formatted message, including
the terminating NULL.
XP_Message formats the message into the given buffer, not exceeding
bufferLen (which includes the terminating NULL). If there isn't enough
space, XP_Message will truncate the text and terminate it (unlike
strncpy, which will truncate but not terminate).
XP_StaticMessage is like XP_Message but maintains a private buffer
which it resizes as necessary.
-----------------------------------------------------------------------------*/
#ifndef _XP_Message_
#define _XP_Message_
#include "xp_core.h"
XP_BEGIN_PROTOS
int
XP_MessageLen (const char * format, ...);
void
XP_Message (char * buffer, int bufferLen, const char * format, ...);
const char *
XP_StaticMessage (const char * format, ...);
XP_END_PROTOS
#endif /* _XP_Message_ */

View File

@@ -1,64 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef __XP_NavCenter_H
#define __XP_NavCenter_H
#ifdef MOZILLA_CLIENT
#include "xp_core.h"
#include "htrdf.h"
XP_BEGIN_PROTOS
/* Callback function, allows consumer of the list to specialize search
* via a callback. This is needed because of different components
* that hide under MWContextBrowser, when they really should be
* something like MWContextEditor or MWContextNetcaster.
* The callback allows you to decide the details to match by.
* Return TRUE if the context is suitable, FALSE if it is not.
* The varargs will match the paramaters of the find function up to
* the callback exactly.
*/
typedef XP_Bool (*ContextMatch)(MWContext *pCX);
extern MWContext *XP_GetLastActiveContext(ContextMatch cxFilter);
extern void XP_SetLastActiveContext(MWContext *pCX);
extern void XP_RemoveContextFromLastActiveStack(MWContext *pCX);
extern void XP_RegisterNavCenter(HT_Pane htPane, MWContext *pDocked);
extern void XP_UnregisterNavCenter(HT_Pane htPane);
extern void XP_DockNavCenter(HT_Pane htPane, MWContext *pContext);
extern void XP_UndockNavCenter(HT_Pane htPane);
extern XP_Bool XP_IsNavCenterDocked(HT_Pane htPane);
extern MWContext *XP_GetNavCenterContext(HT_Pane htPane);
extern void XP_SetNavCenterUrl(MWContext *pContext, char *pUrl);
extern void XP_AddNavCenterSitemap(MWContext *pContext, char *pSitemap, char* name);
extern void XP_RemoveNavCenterInfo(MWContext *pContext);
extern void XP_RegisterViewHTMLPane(HT_View htView, MWContext *pContext);
extern int XP_GetURLForView(HT_View htView, char *pAddress);
XP_END_PROTOS
#endif /* MOZILLA_CLIENT */
#endif /* __XP_NavCenter_H */

View File

@@ -1,48 +0,0 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* We need this because Solaris' version of qsort is broken and
* causes array bounds reads.
*/
#ifndef xp_qsort_h___
#define xp_qsort_h___
/* Had to pull the following define out of xp_core.h
* to avoid including xp_core.h.
* That brought in too many header file dependencies.
*/
#if defined(__cplusplus)
extern "C" {
#endif
#if defined(SOLARIS) || defined(XP_MAC)
extern void XP_QSORT(void *, size_t, size_t,
int (*)(const void *, const void *));
#elif defined(XP_OS2)
#define XP_QSORT(base, nel, width, compar) qsort((base),(nel),(width),(int(_Optlink*)(const void*,const void*))(compar))
#else
#define XP_QSORT(base, nel, width, compar) qsort((base),(nel),(width),(compar))
#endif
#if defined(__cplusplus)
}
#endif
#endif /* xp_qsort_h___ */

View File

@@ -1,105 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
* shexp.h: Defines and prototypes for shell exp. match routines
*
*
* This routine will match a string with a shell expression. The expressions
* accepted are based loosely on the expressions accepted by zsh.
*
* o * matches anything
* o ? matches one character
* o \ will escape a special character
* o $ matches the end of the string
* o [abc] matches one occurence of a, b, or c. The only character that needs
* to be escaped in this is ], all others are not special.
* o [a-z] matches any character between a and z
* o [^az] matches any character except a or z
* o ~ followed by another shell expression will remove any pattern
* matching the shell expression from the match list
* o (foo|bar) will match either the substring foo, or the substring bar.
* These can be shell expressions as well.
*
* The public interface to these routines is documented below.
*
* Rob McCool
*
*/
#ifndef SHEXP_H
#define SHEXP_H
#include "xp_core.h"
/*
* Requires that the macro MALLOC be set to a "safe" malloc that will
* exit if no memory is available. If not under MCC httpd, define MALLOC
* to be the real malloc and play with fire, or make your own function.
*/
#if 0
#ifdef MCC_HTTPD
#include "../mc-httpd.h"
#endif
#endif
#include <ctype.h> /* isalnum */
#include <string.h> /* strlen */
/* --------------------------- Public routines ---------------------------- */
/*
* shexp_valid takes a shell expression exp as input. It returns:
*
* NON_SXP if exp is a standard string
* INVALID_SXP if exp is a shell expression, but invalid
* VALID_SXP if exp is a valid shell expression
*/
#define NON_SXP -1
#define INVALID_SXP -2
#define VALID_SXP 1
extern int XP_RegExpValid(char *exp);
/*
* shexp_match
*
* Takes a prevalidated shell expression exp, and a string str.
*
* Returns 0 on match and 1 on non-match.
*/
extern int XP_RegExpMatch(char *str, char *exp, Bool case_insensitive);
/*
*
* Same as above, but validates the exp first. 0 on match, 1 on non-match,
* -1 on invalid exp.
*/
extern int XP_RegExpSearch(char *str, char *exp);
/* same as above but uses case insensitive search
*/
extern int XP_RegExpCaseSearch(char *str, char *exp);
#endif

View File

@@ -1,36 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
xp_rgb.c --- parsing color names to RGB triplets.
Created: John Giannandrea <jg@netscape.com>, 28-Sep-95
*/
#include "xp.h"
XP_BEGIN_PROTOS
/* Looks up the passed name via a caseless compare in a static table
of color names. If found it sets the passed pointers to contain
the red, green, and blue values for that color. On success the return
code is 0. Returns 1 if no match is found for the color.
*/
extern intn XP_ColorNameToRGB(char *name, uint8 *r, uint8 *g, uint8 *b);
XP_END_PROTOS

View File

@@ -1,208 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef __XP_SOCK_h_
#define __XP_SOCK_h_
#include "xp_core.h"
#include "xp_error.h"
#ifdef XP_UNIX
#ifdef AIXV3
#include <sys/signal.h>
#include <sys/select.h>
#endif /* AIXV3 */
#include <sys/types.h>
#include <string.h>
#include <errno.h>
#include <sys/time.h>
#include <sys/stat.h>
#include <sys/param.h>
#include <sys/file.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <unistd.h>
#ifndef __hpux
#include <arpa/inet.h>
#endif /* __hpux */
#include <netdb.h>
#endif /* XP_UNIX */
#ifdef XP_MAC
#include "macsocket.h"
#define SOCKET_BUFFER_SIZE 4096
#endif /* XP_MAC */
#ifdef XP_OS2 /* IBM-VPB050196 */
# include "os2sock.h"
# ifdef XP_OS2_DOUGSOCK
# include "dsfunc.h"
# endif
# define SOCKET_BUFFER_SIZE 4096
#endif
#ifdef XP_WIN
#include "winsock.h"
#define SOCKET_BUFFER_SIZE 4096
#ifdef __cplusplus
extern "C" {
#endif
extern int dupsocket(int foo); /* always fails */
#ifdef __cplusplus
}
#endif
#ifndef EPIPE
#define EPIPE ECONNRESET
#endif
#undef BOOLEAN
#define BOOLEAN char
#endif /* XP_WIN */
#define SOCKET_ERRNO XP_GetError()
/************************************************************************/
#ifdef XP_UNIX
/* Network i/o wrappers */
#define XP_SOCKET int
#define XP_SOCK_ERRNO errno
#define XP_SOCK_SOCKET socket
#define XP_SOCK_CONNECT connect
#define XP_SOCK_ACCEPT accept
#define XP_SOCK_BIND bind
#define XP_SOCK_LISTEN listen
#define XP_SOCK_SHUTDOWN shutdown
#define XP_SOCK_IOCTL ioctl
#define XP_SOCK_RECV recv
#define XP_SOCK_RECVFROM recvfrom
#define XP_SOCK_RECVMSG recvmsg
#define XP_SOCK_SEND send
#define XP_SOCK_SENDTO sendto
#define XP_SOCK_SENDMSG sendmsg
#define XP_SOCK_READ read
#define XP_SOCK_WRITE write
#define XP_SOCK_READV readv
#define XP_SOCK_WRITEV writev
#define XP_SOCK_GETPEERNAME getpeername
#define XP_SOCK_GETSOCKNAME getsockname
#define XP_SOCK_GETSOCKOPT getsockopt
#define XP_SOCK_SETSOCKOPT setsockopt
#define XP_SOCK_CLOSE close
#define XP_SOCK_DUP dup
#endif /* XP_UNIX */
/*IBM-DSR072296 - now using WinSock 1.1 support in OS/2 Merlin instead of DOUGSOCK...*/
#if defined(XP_WIN) || ( defined(XP_OS2) && !defined(XP_OS2_DOUGSOCK) )
#define XP_SOCKET SOCKET
#define XP_SOCK_ERRNO WSAGetLastError()
#define XP_SOCK_SOCKET socket
#define XP_SOCK_CONNECT connect
#define XP_SOCK_ACCEPT accept
#define XP_SOCK_BIND bind
#define XP_SOCK_LISTEN listen
#define XP_SOCK_SHUTDOWN shutdown
#define XP_SOCK_IOCTL ioctlsocket
#define XP_SOCK_RECV recv
#define XP_SOCK_RECVFROM recvfrom
#define XP_SOCK_RECVMSG recvmsg
#define XP_SOCK_SEND send
#define XP_SOCK_SENDTO sendto
#define XP_SOCK_SENDMSG sendmsg
#define XP_SOCK_READ(s,b,l) recv(s,b,l,0)
#define XP_SOCK_WRITE(s,b,l) send(s,b,l,0)
#define XP_SOCK_READV readv
#define XP_SOCK_WRITEV writev
#define XP_SOCK_GETPEERNAME getpeername
#define XP_SOCK_GETSOCKNAME getsockname
#define XP_SOCK_GETSOCKOPT getsockopt
#define XP_SOCK_SETSOCKOPT setsockopt
#define XP_SOCK_CLOSE closesocket
#define XP_SOCK_DUP dupsocket
#endif /* XP_WIN/ XP_OS2 && not DOUGSOCK */
#if defined(XP_OS2) && defined(XP_OS2_DOUGSOCK)
/* Network i/o wrappers */
#define XP_SOCKET int
#define XP_SOCK_ERRNO sock_errno()
#define XP_SOCK_SOCKET socket
#define XP_SOCK_CONNECT connect
#define XP_SOCK_ACCEPT accept
#define XP_SOCK_BIND bind
#define XP_SOCK_LISTEN listen
#define XP_SOCK_SHUTDOWN shutdown
#define XP_SOCK_IOCTL ioctl
#define XP_SOCK_RECV receiveAndMakeReadSocketActive
#define XP_SOCK_RECVFROM recvfrom
#define XP_SOCK_RECVMSG recvmsg
#define XP_SOCK_SEND send
#define XP_SOCK_SENDTO sendto
#define XP_SOCK_SENDMSG sendmsg
#define XP_SOCK_READ(s,b,l) receiveAndMakeReadSocketActive(s,b,l,0)
#define XP_SOCK_WRITE(s,b,l) send(s,b,l,0)
#define XP_SOCK_READV readv
#define XP_SOCK_WRITEV writev
#define XP_SOCK_GETPEERNAME getpeername
#define XP_SOCK_GETSOCKNAME getsockname
#define XP_SOCK_GETSOCKOPT getsockopt
#define XP_SOCK_SETSOCKOPT setsockopt
#define XP_SOCK_CLOSE closeAndRemoveSocketFromPostList
#define XP_SOCK_DUP dupsocket
#endif /*XP_OS2 with DOUGSOCK*/
#ifdef XP_MAC
/*
Remap unix sockets into GUSI
*/
#define XP_SOCKET int
#define XP_SOCK_ERRNO errno
#define XP_SOCK_SOCKET macsock_socket
#define XP_SOCK_CONNECT macsock_connect
#define XP_SOCK_ACCEPT macsock_accept
#define XP_SOCK_BIND macsock_bind
#define XP_SOCK_LISTEN macsock_listen
#define XP_SOCK_SHUTDOWN macsock_shutdown
#define XP_SOCK_IOCTL macsock_ioctl
#define XP_SOCK_RECV(s,b,l,f) XP_SOCK_READ(s,b,l)
#define XP_SOCK_SEND(s,b,l,f) XP_SOCK_WRITE(s,b,l)
#define XP_SOCK_READ macsock_read
#define XP_SOCK_WRITE macsock_write
#define XP_SOCK_GETPEERNAME macsock_getpeername
#define XP_SOCK_GETSOCKNAME macsock_getsockname
#define XP_SOCK_GETSOCKOPT macsock_getsockopt
#define XP_SOCK_SETSOCKOPT macsock_setsockopt
#define XP_SOCK_CLOSE macsock_close
#define XP_SOCK_DUP macsock_dup
#endif /* XP_MAC */
#endif /* __XP_SOCK_h_ */

View File

@@ -1,236 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef XPSTRING_H
#define XPSTRING_H
#include <string.h>
#define XP_STRCASECMP strcasecomp
#define XP_STRNCASECMP strncasecomp
#define XP_STRCASESTR strcasestr
#define XP_STRNCHR strnchr
#define XP_TO_UPPER(i) xp_toupper(i)
#define XP_TO_LOWER(i) xp_tolower(i)
#ifdef XP_UNIX /* because I can't verify yet.. */
#ifdef DEBUG
XP_BEGIN_PROTOS
extern char * NOT_NULL (const char *x);
XP_END_PROTOS
#else
# define NOT_NULL(X) X
#endif
#define XP_STRLEN(s) strlen(NOT_NULL(s))
#define XP_STRCMP(a, b) strcmp(NOT_NULL(a), NOT_NULL(b))
#define XP_STRNCMP(a, b, n) strncmp(NOT_NULL(a), NOT_NULL(b), (n))
#define XP_STRCPY(d, s) strcpy(NOT_NULL(d), NOT_NULL(s))
#define XP_STRCHR strchr
#define XP_STRRCHR strrchr
#define XP_STRTOK strtok
#define XP_STRCAT strcat
#define XP_STRNCAT strncat
#define XP_STRSTR strstr
#define XP_STRTOUL strtoul
/*
XP_FILENAMECMP compares two filenames, treating case differences
appropriately for this OS.
*/
#ifdef XP_WIN
#define XP_FILENAMECMP stricmp
#else
#define XP_FILENAMECMP XP_STRCMP
#endif
#if !defined(XP_WIN) && !defined(XP_OS2)
/* strdup is not an ANSI function */
XP_BEGIN_PROTOS
extern char * strdup (const char * s);
XP_END_PROTOS
#endif
#define XP_STRDUP(s) strdup((s))
#define XP_MEMCPY(d, s, n) memcpy((d), (s), (n))
/* NOTE: XP_MEMMOVE gurantees that overlaps will be properly handled */
#if defined( __sun) && !defined(__svr4__)
#define XP_MEMMOVE(Dest,Src,Len) bcopy((Src),(Dest),(Len))
#else
#define XP_MEMMOVE(Dest,Src,Len) memmove((Dest),(Src),(Len))
#endif /* __sun */
#define XP_MEMSET memset
#define XP_SPRINTF sprintf
#define XP_SAFE_SPRINTF PR_snprintf
#define XP_MEMCMP memcmp
#define XP_VSPRINTF vsprintf
#define XP_IS_SPACE(VAL) \
(((((intn)(VAL)) & 0x7f) == ((intn)(VAL))) && isspace((intn)(VAL)) )
#define XP_IS_CNTRL(i) ((((unsigned int) (i)) > 0x7f) ? (int) 0 : iscntrl(i))
#define XP_IS_DIGIT(i) ((((unsigned int) (i)) > 0x7f) ? (int) 0 : isdigit(i))
#ifdef XP_WIN
#define XP_IS_ALPHA(VAL) (isascii((int)(VAL)) && isalpha((int)(VAL)))
#else
#define XP_IS_ALPHA(VAL) ((((unsigned int) (VAL)) > 0x7f) ? FALSE : isalpha((int)(VAL)))
#endif
#define XP_ATOI(PTR) (atoi((PTR)))
#define XP_BZERO(a,b) memset(a,0,b)
/* NOTE: XP_BCOPY gurantees that overlaps will be properly handled */
#ifdef XP_WIN16
XP_BEGIN_PROTOS
extern void WIN16_bcopy(char *, char *, unsigned long);
XP_END_PROTOS
#define XP_BCOPY(PTR_FROM, PTR_TO, LEN) \
(WIN16_bcopy((char *) (PTR_FROM), (char *)(PTR_TO), (LEN)))
#else
#define XP_BCOPY(Src,Dest,Len) XP_MEMMOVE((Dest),(Src),(Len))
#endif /* XP_WIN16 */
/*
Random stuff in a random place
*/
#if defined (XP_WIN) || defined (XP_OS2)
#define XP_RANDOM rand
#define XP_SRANDOM(seed) srand((seed))
#endif
#ifdef XP_MAC
#define XP_RANDOM rand
#define XP_SRANDOM(seed) srand((seed))
#endif
#ifdef XP_UNIX
#if !defined(XP_RANDOM) || !defined(XP_SRANDOM) /* defined in both xp_mcom.h and xp_str.h */
#if defined(UNIXWARE) || defined(_INCLUDE_HPUX_SOURCE) || (defined(__sun) && defined(__svr4__)) || defined(SNI) || defined(NCR)
#define XP_RANDOM rand
#define XP_SRANDOM(seed) srand((seed))
#else
#define XP_RANDOM random
#define XP_SRANDOM(seed) srandom((seed))
#endif
#endif
#endif
#endif /* XP_UNIX -- ifdef'd because I can't yet verify */
XP_BEGIN_PROTOS
/*
** Some basic string things
*/
/*
** Concatenate s1 to s2. If s1 is NULL then a copy of s2 is
** returned. Otherwise, s1 is realloc'd and s2 is concatenated, with the
** new value of s1 being returned.
*/
extern char *XP_AppendStr(char *s1, const char *s2);
/*
** Concatenate a bunch of strings. The variable length argument list must
** be terminated with a NULL. This result is a DS_Alloc'd string.
*/
extern char *XP_Cat(char *s1, ...);
/* Fast table driven tolower and toupper functions.
**
** Only works on first 128 ascii
*/
int xp_tolower(int c);
int xp_toupper(int c);
/*
* Case-insensitive string comparison
*/
extern int strcasecomp (const char *a, const char *b);
extern int strncasecomp (const char *a, const char *b, int n);
/* find a char within a specified length string
*/
extern char * strnchr (const char * str, const char single, int32 len);
/* find a substring within a string with a case insensitive search
*/
extern char * strcasestr (const char * str, const char * substr);
/* find a substring within a specified length string with a case
* insensitive search
*/
extern char * strncasestr (const char * str, const char * substr, int32 len);
/* thread safe version of strtok. placeHolder contains the remainder of the
string being tokenized and is used as the starting point of the next search */
/* example: (1st call) token = XP_STRTOK_R(tokenString, "<token>", &placeHolder);
(2nd call) token = XP_STRTOK_R(nil, "<token>", &placeHolder);*/
extern char * XP_STRTOK_R(char *s1, const char *s2, char **placeHolder);
/*
* Malloc'd string manipulation
*
* notice that they are dereferenced by the define!
*/
#define StrAllocCopy(dest, src) NET_SACopy (&(dest), src)
#define StrAllocCat(dest, src) NET_SACat (&(dest), src)
extern char * NET_SACopy (char **dest, const char *src);
extern char * NET_SACat (char **dest, const char *src);
/*
* Malloc'd block manipulation
*
* Lengths are necessary here :(
*
* notice that they are dereferenced by the define!
*/
#define BlockAllocCopy(dest, src, src_length) NET_BACopy((char**)&(dest), src, src_length)
#define BlockAllocCat(dest, dest_length, src, src_length) NET_BACat(&(dest), dest_length, src, src_length)
extern char * NET_BACopy (char **dest, const char *src, size_t src_length);
extern char * NET_BACat (char **dest, size_t dest_length, const char *src, size_t src_length);
extern char * XP_StripLine (char *s);
/* Match = 0, NoMatch = 1, Abort = -1 */
/* Based loosely on sections of wildmat.c by Rich Salz */
extern int xp_RegExpSearch(char *str, char *exp);
/*
* These are "safe" versions of the runtime library routines. The RTL
* versions do not null-terminate dest IFF strlen(src) >= destLength.
* These versions always null-terminate, which is why they're safe.
*/
extern char *XP_STRNCAT_SAFE (char *dest, const char *src, size_t len);
extern char *XP_STRNCPY_SAFE (char *dest, const char *src, size_t len);
XP_END_PROTOS
#endif /* XPSTRING_H */

View File

@@ -1,35 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* xp_thrmo.h --- Status message text for the thermometer. */
#ifndef _XP_THRMO_
#define _XP_THRMO_
#include "xp_core.h"
XP_BEGIN_PROTOS
extern const char *
XP_ProgressText (unsigned long total_bytes,
unsigned long bytes_received,
unsigned long start_time_secs,
unsigned long now_secs);
XP_END_PROTOS
#endif /* _XP_THRMO_ */

View File

@@ -1,66 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/*
xp_time.c --- parsing dates and timzones and stuff
Created: Jamie Zawinski <jwz@netscape.com>, 3-Aug-95
*/
#include "xp.h"
#include <time.h>
XP_BEGIN_PROTOS
/* Returns the number of minutes difference between the local time and GMT.
This takes into effect daylight savings time. This is the value that
should show up in outgoing mail headers, etc.
*/
extern int XP_LocalZoneOffset (void);
/* This parses a time/date string into a time_t
(seconds after "1-Jan-1970 00:00:00 GMT")
If it can't be parsed, 0 is returned.
Many formats are handled, including:
14 Apr 89 03:20:12
14 Apr 89 03:20 GMT
Fri, 17 Mar 89 4:01:33
Fri, 17 Mar 89 4:01 GMT
Mon Jan 16 16:12 PDT 1989
Mon Jan 16 16:12 +0130 1989
6 May 1992 16:41-JST (Wednesday)
22-AUG-1993 10:59:12.82
22-AUG-1993 10:59pm
22-AUG-1993 12:59am
22-AUG-1993 12:59 PM
Friday, August 04, 1995 3:54 PM
06/21/95 04:24:34 PM
20/06/95 21:07
95-06-08 19:32:48 EDT
If the input string doesn't contain a description of the timezone,
we consult the `default_to_gmt' to decide whether the string should
be interpreted relative to the local time zone (FALSE) or GMT (TRUE).
The correct value for this argument depends on what standard specified
the time string which you are parsing.
*/
extern time_t XP_ParseTimeString (const char *string, XP_Bool default_to_gmt);
XP_END_PROTOS

View File

@@ -1,70 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _XP_Trace_
#define _XP_Trace_
#include <stdarg.h>
#ifdef __cplusplus
#if defined(_WINDOWS) && !defined(DEBUG)
inline void FE_Trace( const char *msg ) {} /* implemented by the platform */
inline void XP_Trace( const char *format, ... ) {}
inline void XP_Trace1( const char *format, ... ) {} /* XP_Trace without the newline */
inline void XP_TraceV( const char *msg, va_list args ) {} /* varargs XP_Trace without the newline */
#else
extern "C" void FE_Trace( const char * ); /* implemented by the platform */
extern "C" void XP_Trace( const char *, ... );
extern "C" void XP_Trace1( const char *, ... ); /* XP_Trace without the newline */
extern "C" void XP_TraceV( const char *msg, va_list args ); /* varargs XP_Trace without the newline */
#if defined(XP_MAC)
extern "C" void XP_TraceInit(void);
#endif /* XP_MAC */
#endif /* _WINDOWS && !DEBUG */
#else
void FE_Trace( const char * ); /* implemented by the platform */
void XP_Trace( const char *, ... );
void XP_Trace1( const char *, ... ); /* XP_Trace without the newline */
void XP_TraceV( const char *msg, va_list args ); /* varargs XP_Trace without the newline */
#if defined(XP_MAC)
extern void XP_TraceInit(void);
#endif
#endif /* __cplusplus */
#ifdef DEBUG
#define XP_TRACE(MESSAGE) XP_Trace MESSAGE
#define XP_TRACE1(MESSAGE) XP_Trace1 MESSAGE
#define XP_LTRACE(FLAG,LEVEL,MESSAGE) \
do { if (FLAG >= (LEVEL)) XP_Trace MESSAGE; } while (0)
#else
#define XP_TRACE(MESSAGE) ((void) (MESSAGE))
#define XP_TRACE1(MESSAGE) ((void) (MESSAGE))
#define XP_LTRACE(FLAG,LEVEL,MESSAGE) ((void) (MESSAGE))
#endif
#endif /* _XP_Trace_ */

View File

@@ -1,184 +0,0 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _XP_Assert_
#define _XP_Assert_
#include "xp_trace.h"
/*include <stdlib.h>*/
/*-----------------------------------------------------------------------------
abort
For debug builds...
XP_ABORT(X), unlike abort(), takes a text string argument. It will print
it out and then call abort (to drop you into your debugger).
For release builds...
XP_ABORT will call abort(). Whether you #define NDEBUG or not is up
to you.
-----------------------------------------------------------------------------*/
#define XP_ABORT(MESSAGE) (XP_TRACE(MESSAGE),abort())
/*-----------------------------------------------------------------------------
XP_ASSERT is just like "assert" but calls XP_ABORT if it fails the test.
I need this (on a Mac) because "assert" and "abort" are braindead,
whereas my XP_Abort function will invoke the debugger. It could
possibly have been easier to just #define assert to be something decent.
-----------------------------------------------------------------------------*/
#if defined (XP_UNIX)
#if !defined(NO_UNIX_SKIP_ASSERTS)
/* Turning UNIX_SKIP_ASSERTS on by default. */
/* (Solaris 2.x) on Sol2.5, assert() does not work. Too bad... */
/* Therefore, we print the line where assert happened instead. */
/* Print out a \007 to sound the bell. -mcafee */
#define XP_AssertAtLine() fprintf(stderr, "assert: line %d, file %s%c\n", __LINE__, __FILE__, 7)
#ifdef DEBUG
#define XP_ASSERT(X) ( (((X))!=0)? (void)0: (void)XP_AssertAtLine() )
#else
#define XP_ASSERT(X) (void)0
#endif
#else
#include <assert.h>
#define XP_ASSERT(X) assert(X) /* are we having fun yet? */
#endif
#elif defined (XP_WIN)
#ifdef DEBUG
/* LTNOTE: I got tired of seeing all asserts at FEGUI.CPP. This should
* Fix the problem. I intentionally left out Win16 because strings are stuffed
* into the datasegment we probably couldn't build.
*/
#ifdef WIN32
XP_BEGIN_PROTOS
extern void XP_AssertAtLine( char *pFileName, int iLine );
XP_END_PROTOS
#define XP_ASSERT(X) ( ((X)!=0)? (void)0: XP_AssertAtLine(__FILE__,__LINE__))
#else /* win16 */
#define XP_ASSERT(X) ( ((X)!=0)? (void)0: XP_Assert((X) != 0) )
XP_BEGIN_PROTOS
void XP_Assert(int);
XP_END_PROTOS
#endif
#else
#define XP_ASSERT(X) ((void) 0)
#endif
#elif defined (XP_OS2)
#ifdef DEBUG
#include <assert.h>
#define XP_ASSERT(X) assert(X) /* IBM-DAK same as UNIX */
#else
#define XP_ASSERT(X)
#endif
#elif defined(XP_MAC)
#ifdef DEBUG
#ifdef __cplusplus
#ifdef __MWERKS__
/*
** See the comment above: XP_ASSERT is supposed to abort!
** The MacFE_Signal is actually not in the spirit of the creator of XP_Assert.
** Also, the previous version was annoying (always seen in uapp.cp)
** The Metrowerks Assert_ macro is much more helpful...
*/
#include <UException.h>
#define XP_ASSERT(X) Assert_(X)
#else
extern "C" void debugstr(const char* s);
#endif
#else
extern void debugstr(const char* s);
#endif
#ifndef XP_ASSERT
/* The following is wrong... because it will cause
the use of an XP_ASSERT within an if ... else ...
construct to match incorrectly with the "last prior if" :-/
XXX
*/
#define XP_ASSERT(X) if (!(X)) debugstr(#X)
#endif
#else
#define XP_ASSERT(X)
#endif
#endif /* XP_MAC */
/*-----------------------------------------------------------------------------
assert variants
XP_WARN_ASSERT if defined to nothing for release builds. This means
that instead of
#ifdef DEBUG
assert (X);
#endif
you can just do
XP_WARN_ASSERT(X);
Of course when asserts fail that means something is going wrong and you
*should* have normal code to deal with that.
I frequently found myself writing code like this:
#ifdef DEBUG
assert (aPtr);
#endif
if (!aPtr)
return error_something_has_gone_wrong;
so I just combined them into a macro that can be used like this:
if (XP_FAIL_ASSERT(aPtr))
return; // or whatever else you do when things go wrong
What this means is it will return if X *fails* the test. Essentially
the XP_FAIL_ASSERT bit replaces the "!" in the if test.
XP_OK_ASSERT is the opposite. If if you want to do something only if
something is OK, then use it. For example:
if (XP_OK_ASSERT(aPtr))
aPtr->aField = 25;
Use this if you are 99% sure that aPtr will be valid. If it ever is not,
you'll drop into the debugger. For release builds, it turns into an
if statement, so it's completely safe to execute.
You can also do XP_VERIFY, which essentially will throw an assert if a
condition fails in debug mode, but just do whatever at runtime. For
example:
XP_VERIFY(PR_LoadLibrary("foo") == 0);
This will trigger an XP_ASSERT if the condition fails during debug, bug
just run the PR_LoadLibrary in release. Kind of the same as XP_WARN_ASSERT,
but the "verbiage" is a bit clearer (to me, anyway).
-----------------------------------------------------------------------------*/
#ifdef DEBUG
# define XP_WARN_ASSERT(X) ( ((X)!=0)? (void)0: XP_ABORT((#X)) )
# define XP_OK_ASSERT(X) (((X)!=0)? 1: (XP_ABORT((#X)),0))
# define XP_FAIL_ASSERT(X) (((X)!=0)? 0: (XP_ABORT((#X)),1))
# define XP_VERIFY(X) ( (X)? (void)0: XP_ASSERT(0) )
#else
# define XP_WARN_ASSERT(X) (void)((X)!=0)
# define XP_OK_ASSERT(X) (((X)!=0)? 1: 0)
# define XP_FAIL_ASSERT(X) (((X)!=0)? 0: 1)
# define XP_VERIFY(X) ( (void)(X) )
#endif
#endif /* _XP_Assert_ */

Some files were not shown because too many files have changed in this diff Show More