Commit Graph

11639 Commits

Author SHA1 Message Date
Chris Young d1ccd3e53d Create menu on OS3 and 3 the same way (old GadTools method)
This makes it easier to switch to menuclass.
It also fixes a crash-on-exit bug on OS3.
2015-09-06 09:12:26 +01:00
Chris Young de75959362 Create menus on OS3 and 4 the same way (manual GadTools method).
This makes it easier to switch to menuclass.
It also fixes a crash-on-exit bug on OS3.
2015-09-06 09:06:20 +01:00
Chris Young 1e83301251 Remove errorneous addition. 2015-09-05 16:54:12 +01:00
Chris Young 1a8cf5b7a7 Merge branch 'chris/menuclass'
This replaces the old popupmenu.class-based context menus with Intuition-based ones.  This provides the following advantages:
- No more RMBTrap, so menu shortcuts work without having to be manually handled
- Standard menus now display when not over a contextual zone, so the not-really-contextual menu items have been removed
- No buggy system crash problems, so they are always enabled now
- Menus can be attached directly to gadgets, so the history menu is now attached directly to the back/forward buttons (however they now need to be periodically refreshed as they can't be created on demand)

Additionally, the menu items now have images.
popupmenu.class is now only used (optionally) for form select menus.  This code has been bug-fixed and is now toggleable from the prefs GUI.  However, due to the inability to display more items than fit on the screen, it still isn't recommended to use it.
2015-09-05 16:38:48 +01:00
Chris Young 5b880e586c Fix memory leak 2015-09-05 16:33:23 +01:00
Chris Young eb366fa0d8 Correct checkbox logic 2015-09-05 15:53:21 +01:00
Chris Young 6a00255855 Enable control of core/popupmenu select menus in the prefs GUI.
This at least gives the option for people who prefer the popupmenu-based selection menus to easily switch back to the core ones when the options don't all fit on the screen (as popupmenu can't scroll).
2015-09-05 15:37:34 +01:00
Chris Young 63227a214b Rename context_menu.c and strip out all the context menu code, so this file and popupmenu.class is only used (optionally) for HTML form selection. 2015-09-05 15:09:00 +01:00
Chris Young 00aa1e2d35 Add a small test menu to the clicktab gadget 2015-09-05 01:41:56 +01:00
Chris Young 46f3670fae Add context menu item for copying text selection 2015-09-05 00:39:46 +01:00
Chris Young 7ea2488d1c Add a context item for frames 2015-09-05 00:22:46 +01:00
Chris Young 12bef8a0d9 Avoid displaying irrelevant items in the context menu for objects
Add an item for the "plugin hack" stuff
2015-09-05 00:09:47 +01:00
Chris Young da5638debc Context menu for objects 2015-09-04 23:59:22 +01:00
Chris Young a15e5a7869 Complete context menu items for links 2015-09-04 23:38:04 +01:00
Chris Young 41f219192c Create back/forward context menu using menuclass
Reconstructs itself periodically as it cannot be created on demand
2015-09-04 00:26:52 +01:00
Chris Young cdaae7b30e Add a couple of context menu items for links for testing. 2015-09-03 19:57:04 +01:00
Chris Young 944248ce32 Rough outline for Intuition-based context menu 2015-09-03 00:24:04 +01:00
Chris Young 52d182e71e Disable the popupmenu-based context menu and the emulated menu keyboard shortcuts in preparation for test implementing an Intuition-based context menu. 2015-09-02 17:34:24 +01:00
Chris Young 2e4bfc5dc3 Fix version check 2015-09-02 17:26:33 +01:00
Chris Young 61342f4dee Use the correct format define for WPA() 2015-09-01 20:56:18 +01:00
Chris Young fdb9a42eff Don't use P96 on gfx.lib v54+ systems 2015-09-01 19:31:58 +01:00
Chris Young e0198789ae Use a skip list instead of a splay tree for now to fix memory leakage 2015-09-01 19:14:11 +01:00
Chris Young 06221c2340 Fix usage of ExAll with new SDK
Some of the defines it needs have moved to dos/obsolete.h
2015-09-01 18:06:45 +01:00
Chris Young a73d53845c Fix MinTerm defines for SDK 53.29 2015-09-01 18:02:32 +01:00
Chris Young 33eb8d3324 Attempt to use splay trees for font caching.
This is theoretically faster, but leaks like a sieve.
2015-09-01 00:23:20 +01:00
Michael Drake 257666499d Reorder percentage calculation.
Fixed point representation couldn't store 0.65 exactly, so avoid doing
the divide by 100 first.

I will look at moving this into libcss's fixed point header and doing
it in a way that avoids arithmetic overflow, but for now this fixes
el reg layout.
2015-08-24 22:47:58 +01:00
Chris Young 914ba332e2 Use the correct decoded surrogate values for calculating kerning widths 2015-08-24 20:56:01 +01:00
Chris Young 4bbf2ac58a Avoid accessing NULL pointer 2015-08-24 18:00:24 +01:00
Chris Young cba6bdb481 If a designed (bold, italic, etc) version of a specific font is set but not actually installed, treat this as a non-critical error, log it, and create a computed version. 2015-08-19 19:15:06 +01:00
Chris Young fea40a0a78 Restrict all menu icon code to OS4+gadtools53.7
This avoids requests for TBimages: on OS3
2015-08-17 18:15:29 +01:00
Chris Young aaf7ebf9fd Fix some AmigaGuide errors 2015-08-17 17:59:04 +01:00
Chris Young 0c42364b67 Check version of the correct library 2015-08-17 17:52:09 +01:00
Chris Young 528fce7262 Fix OS3 build 2015-08-17 17:44:27 +01:00
Chris Young 9b222fdeb6 Check .font file is indicating this is an outline font before attempting to open the .otag 2015-08-16 23:26:21 +01:00
Chris Young 69a133969b Make the logging when opening outline fonts on OS3 a little more obvious. 2015-08-16 23:12:20 +01:00
Chris Young a2edd98c19 Force usage of friend BitMaps on OS3 when on high/truecolour screens.
AreaInfo buffer doesn't need to be in chip mem.
2015-08-16 23:03:54 +01:00
Chris Young 87ebe66880 Check menuobj before we dispose it 2015-08-16 22:51:32 +01:00
Chris Young b429a89ed6 Only update the hotlist menu etc if it was the hotlist window which was closed. 2015-08-16 22:38:29 +01:00
Chris Young f9bb4ba71d Fix memory leak 2015-08-16 13:02:14 +01:00
Chris Young 9c2fbde917 Put the memory areas, rather than the structures, into chip RAM as required. 2015-08-16 12:48:06 +01:00
Chris Young 7c14bff469 TmpRas should be in chip mem for OS3/AGA 2015-08-16 12:41:21 +01:00
Chris Young a28be12270 Fix blitting of font glyphs on OS3/AGA 2015-08-16 12:06:00 +01:00
Chris Young 527a13a841 Ensure OS3 doesn't try to obtain an 8-bit GlyphMap. 2015-08-15 17:32:28 +01:00
Chris Young b19cd801fd Revert "Ensure we don't accidentally use an 8-bit glyphmap under OS3."
This reverts commit c43d09af64.
2015-08-15 17:27:57 +01:00
Chris Young 0c2f466786 Revert "Fix OS4 build"
This reverts commit c759b2a262.
2015-08-15 17:27:19 +01:00
Chris Young c759b2a262 Fix OS4 build 2015-08-15 17:07:59 +01:00
Chris Young c43d09af64 Ensure we don't accidentally use an 8-bit glyphmap under OS3. 2015-08-15 16:56:02 +01:00
Chris Young 45171214ed Add an option to toggle usage of a friend BitMap for our off-screen rendering buffer (OS3 only).
Defaults to OFF, which works everywhere, but can be switched on for performance benefits when using RTG.
2015-08-15 16:42:52 +01:00
Michael Drake c2dd234626 Add LATIN SMALL LETTER O WITH MACRON for today's featured Wikipedia article. 2015-08-15 15:46:30 +01:00
Michael Drake 477506b7a1 Fix glyph order. 2015-08-15 15:41:11 +01:00