Commit Graph

94 Commits

Author SHA1 Message Date
ManoloFLTK
7f7e0e4ea1 Replace Fl_Window_Driver::is_a_rescale() by Fl_Window::is_a_rescale()
so it can be called by any user code.
2020-05-08 17:08:33 +02:00
Albrecht Schlosser
4c1b92eb52 Implement fl_putenv() as cross-platform putenv() 2020-02-10 12:10:40 +01:00
Albrecht Schlosser
dfaab4ae90 Fix uninitialized vars in calls to fl_clip_box() (issue #6)
The main fixes are only to avoid static code analyzer warnings reported
in issue #5, but there are also minor bug fixes included. These bug
fixes are more of theoretical concerns though.

Close #6.
2020-01-15 21:23:26 +01:00
Matthias Melcher
c0237a1f04 Limiting file access for Fl_Preferences.
Added Fl_Preferences::file_access() and various flags that make it possible to limit or completely deny file access to the preferences system, either for the core library or for the application or both.
2019-12-31 18:30:04 +01:00
Matthias Melcher
bd77a6e976 Android Image driver was incomplete and did not compile. 2019-12-22 18:47:27 +01:00
ManoloFLTK
0d3a374396 Call virtual member Fl_Surface_Device::end_current() when necessary
Rename member function Fl_Surface_Device::end_current_() to end_current(),
set it protected, and make it called by the destructor of all classes
derived from Fl_Surface_Device that re-implement end_current().
This way, end_current() runs equally if Fl_Surface_Device()::pop_current()
is called before or after the drawing surface is deleted.
2019-05-25 11:59:16 +02:00
ManoloFLTK
499ec5c291 Replace static void Fl_Window_Driver::default_icons() by virtual Fl_Screen_Driver::default_icons() 2019-03-25 18:47:29 +01:00
ManoloFLTK
a0510495ea Rename member todelete_ of struct Fl_Window_Driver::shape_data_type to effective_bitmap_ 2019-02-23 10:30:48 +01:00
Manolo Gouy
f6a7602cfc Moving headers Fl_XXX_Driver.H from FL/ to src/ --- continued
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12979 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-26 14:38:25 +00:00
Manolo Gouy
7ebe8e21b0 Move Fl_Window_Driver.H from FL/ to src/
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12974 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-26 13:43:18 +00:00
Matthias Melcher
b8e97d7c28 Doxygen only: fixed all block comments starting with an asterisk to space-only, fixed doxygen keywords prepended with @ to use a backward slash instead. No code was changed.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12970 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-23 20:50:22 +00:00
Matthias Melcher
8c993648db Android: Android Developer Documentation would work but needs some changes in Doxyfile:
- if develoer doc is wantedn, add 'ENABLED_SECTIONS       = AndroidDev'
- currently, Doxyfile enables everything related to drivers, so remove
  'EXCLUDE  = /Users/matt/dev/fltk-1.4.svn/src/driversxx/'
  
With this, we get a sparsely filled module named 'Android Developer Documentation'
and a lot of other driver related classes, which could also be encapsulated
in doxygen '@if DriverDev'.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12967 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-23 10:46:28 +00:00
Matthias Melcher
8923162f13 Android: added a few more Doxygen comments
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12966 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-23 10:18:58 +00:00
Matthias Melcher
f827a9eaf3 Android: fixed fl_beep to plat different sound for differen beep types, testing Doxygen to generate driver developer documentation
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12965 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-23 10:06:04 +00:00
Matthias Melcher
7617a46b26 Android: roughly fixed Fl::grab() to make menus easier to navigate
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12960 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-21 18:14:13 +00:00
Matthias Melcher
333e718ae7 Android: Windows are now centered on screen if no position is defined, dialogs pop up in a more logical position.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12958 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-21 17:02:47 +00:00
Matthias Melcher
22c21fa840 Android: Lazy scroll is working. AT some point we should implement fast scrolling
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12957 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-21 13:31:38 +00:00
Matthias Melcher
4ba6b96471 Android: Teaching FLTK to beep. test/button works.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12955 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-21 12:36:02 +00:00
Matthias Melcher
a119928455 Android: Implemented window positioning and sizing
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12954 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-21 11:54:32 +00:00
Matthias Melcher
e1bf7b9202 Android: Clearing the desktop when a window is hidden.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12949 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-19 16:29:20 +00:00
Manolo Gouy
8b7f7c78b2 Remove public member function Fl_Window_Driver *Fl_Window::driver() so class Fl_Window_Driver is not in FLTK public API.
This function is replaced by static Fl_Window_Driver* Fl_Window_Driver::(const Fl_Window *win).
The purpose is to have class Fl_Window_Driver outside from FLTK ABI.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12915 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-05-12 09:36:36 +00:00
Manolo Gouy
aab1b72af4 Improve fl_overlay_rect() when GUI is scaled.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12901 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-05-06 06:46:40 +00:00
Manolo Gouy
50c3568aff Complete Fl_Android_Graphics_Driver::cache() functions that should assign the image's cache_w_ and cache_h_ member variables.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12866 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-21 06:22:27 +00:00
Manolo Gouy
7e234e3abc Remove debugging statement
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12863 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-20 09:04:24 +00:00
Manolo Gouy
de762fca2b Fix direct use of fl_draw_pixmap() whithout Fl_Pixmap object.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12862 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-20 08:46:49 +00:00
Manolo Gouy
a70846730b Add Fl_Android_Graphics_Driver::delete_bitmask() needed to uncache a cached Fl_Bitmap image.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12840 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-16 07:59:49 +00:00
Manolo Gouy
2abe8bd413 Homogenise and simplify the API of Fl_Graphics_Driver::cache(image-type *) virtual member functions.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12833 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-13 13:22:15 +00:00
Manolo Gouy
16705ef734 Image drawing: simplify the code organisation to better support Fl_Image::scale().
Graphics drivers now use up to 6 virtual member functions to support Fl_Image
drawing in the context of GUI and image rescaling :
  virtual void draw_pixmap(Fl_Pixmap *pxm, int XP, int YP, int WP, int HP, int cx, int cy)
  virtual void draw_bitmap(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy)
  virtual void draw_rgb(Fl_RGB_Image *rgb, int XP, int YP, int WP, int HP, int cx, int cy)
and
  virtual void draw_fixed(Fl_Pixmap *pxm, int XP, int YP, int WP, int HP, int cx, int cy)
  virtual void draw_fixed(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy)
  virtual void draw_fixed(Fl_RGB_Image *rgb, int XP, int YP, int WP, int HP, int cx, int cy)

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12828 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-12 13:07:00 +00:00
Matthias Melcher
532099da23 Android: Drawing RGB and monochrome image data on the fly from a buffer. Untested.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12819 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-01 16:16:12 +00:00
Matthias Melcher
f49267e85b Android: Drawing RGB image data on the fly via callback
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12818 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-01 16:06:12 +00:00
Matthias Melcher
936fbd096f Android: Drawing RGB image data (and probaly rgba and grayscale as well). Testing unsing test/color_chooser.cxx
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12817 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-31 21:29:33 +00:00
Matthias Melcher
29bda776bb Android: Implemented Pixmap drawing, also much cleanup in Fl_Android_Graphics_Driver.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12810 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-27 21:54:04 +00:00
Matthias Melcher
e52b55c09d Android: Fl_Android_Graphics_Driver now derives from Fl_Graphics_Driver and no longer from the dpi-aware scaling version. I may add this level of complexity later, but for now, unscaled drivers are difficult enough. Also, the new setup lets me easily find unimplemented methods of the driver.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12809 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-27 15:31:26 +00:00
Matthias Melcher
3b7e1a5ec6 Android: Draws Fl_Bitmap.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12807 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-26 21:28:18 +00:00
Matthias Melcher
4df5c6d0b0 Android: Avoids hiding and showing keyboard when focus changes from text input to text input
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12805 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-26 15:42:08 +00:00
Matthias Melcher
20ed92fca4 Android: Keyboard handles modifiers like Shift and Alt... .
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12803 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-26 14:48:13 +00:00
Matthias Melcher
ca8f680000 Android: Added keycodes to make arrow keys, delete, return, and other non text-keys work. ALso added a Java helper class to make Java call easier. We may need more Java/JNI in the future.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12801 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-25 22:27:21 +00:00
Matthias Melcher
eb09ab161a Android: Separating keyboard stuff into a new file
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12800 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-25 16:48:44 +00:00
Matthias Melcher
832377fc21 Android: Improved event handling to handle all pending events before redrawing the interface.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12799 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-25 16:34:40 +00:00
Matthias Melcher
d7520d5a71 Android: Tried to fix flaws in the Android Native interface. Only
solution I found involves Java, so, no.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12797 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-24 21:36:55 +00:00
Matthias Melcher
5f8cec6383 Android: Even rougherer cut to make the keyboard pop up.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12795 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-24 17:21:36 +00:00
Matthias Melcher
fada3a8291 Android: Rough, verz rough kezboard handling.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12794 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-24 17:08:25 +00:00
Matthias Melcher
79b31708de Android: Made popup and menu windows work, fixed Fl::wait() recursion,
fixed incompatible Fl::wait() behavior.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12793 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-24 13:06:59 +00:00
Matthias Melcher
a3a5a3d924 Android: Using floating point calls to make thigs look slightly better.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12791 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-23 23:11:35 +00:00
Matthias Melcher
5843a450bc Android: Using xlib shortcut to draw circles and ellipses.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12790 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-23 23:09:24 +00:00
Matthias Melcher
aeafea2041 Android: Added fl_polygon and fl_loop calls. All boxtypes draw well now.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12788 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-23 22:50:26 +00:00
Matthias Melcher
514782864e Android: Posting well behaved pie drawing method. Needs refactoring.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12787 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-23 21:41:36 +00:00
Matthias Melcher
bd5ec33148 Android: Posting pretty buggy pie method; must visit later!
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12785 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-22 21:36:09 +00:00
Matthias Melcher
0b8116ff72 Android: Implemented vector drawing and polygons.
Started to implement arc and pie drawing

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12783 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-22 15:27:02 +00:00
Matthias Melcher
c3573d16f3 Android: Implemented font changing ( Fl::set_font(ix, name); )
and other font stuff. Fixed horizontal and vertical line
         drawing to include last pixel. Added stippling to focus rect.
         Added point drawing (slooow).

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12774 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-18 20:04:43 +00:00