summaryrefslogtreecommitdiff
path: root/src/Fl_win32.cxx
AgeCommit message (Collapse)Author
2008-09-11Remove compile-time dependency on Imm32.dll on Win32. I have no MSWindows ↵Matthias Melcher
machine here, so this code is likely to contain one or more typos... . When working, this will take the burdon of linking to imm32 away, so that existing makefiles will need no changes. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6217 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-10Merging the UTF8 patch, consisting of O'ksi'd s original 1.1.6 patch and ↵Matthias Melcher
additions by Ian. PLEASE BE AWARE that the patch in its current incarnation is a regression in many aspects and further work is required before we can announce Unicode support. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6212 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-02merged modification from my private branch after successful regression ↵Fabien Costantini
testing on win32,cygwin/mingw, mac osx, linux. Fl_win32.cxx and Fl_x.cxx modified for: ====================================== - STR# 2029 fix: async select using USE_ASYNC_SELECT def. would not work. Obsoleted and commented as discussed - STR# 2032 fix: fl_ready would load wsock dll unnecessarily. Bad indents corrected fluid.cxx modifed for: ====================== Added a local portable Fl_Process class to fluid enabling popen encapsulated win32 impl. based on CreateProcess() to work as expected in non console apps, so that exec command output window is now also implemented in win32, also permitting testing add_fd()/remove_fd() API relying on winsock on win32. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6188 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-28wsock32 static lib dependency removal from win build files.Fabien Costantini
error msg if wsock load fails changed by Fl::fatal() API use. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6174 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-27+ Added a new optional compile time varaible named USE_WSOCK1 that would ↵Fabien Costantini
change the use of the WINSOCK2 libray by default, by the use of Winsock 1 (also implies the use of winsock.h instead of winsock2.h) + Removed one unused ret variable. TODO: remove unnecessary wsock32.lib dependency from fltk-config, and other win32 build files. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6172 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-26removed unused wsock api, fixed return result in fl_ready() Fabien Costantini
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6167 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-25STR #1906 fixed as discussed :Fabien Costantini
Now winsock2 is linked instead of winsock1 by default. Also, this lib is now linked dynamically on-the-fly, only when needed. Separate commit will follow for vc2005 proj. modifications (removing wsock32.lib) for more readability. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6164 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-08-15Replaced badly named type Fl_FontSize with Fl_Font_Descriptor. This type is ↵Matthias Melcher
only used in the core files and not available to the user. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6162 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-01-10STR #1854: fixed win32 issue with possible NULL pointerMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@6017 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-12-20Fixed exposure event on zero size windows (STR #1824)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@6005 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-11-20Fix window hide bug on WIN32 (STR #1748)Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5984 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-06-18#1706: on WIN32, the attempt to map a subwindow when the parent window was ↵Matthias Melcher
not mapped yet would result in the subwindow never being mapped. This change will defer mapping until the parent window is shown. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5914 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-16STR #1681: On WIN32 WM_PAINT messages, FLTK would first render the damaged ↵Matthias Melcher
area and then set the area as valid again. While this is mostly fine on single CPU machines, multi-CPU machines may re-invalidate areas that are currently drawn, resulting in unrendered strips when another window was moved quickly across an FLTK window during its redraw phase. The new implementation validates the damaged area as quickly as possible, allowing new damage requests to be handled correctly, even while we are still redrawing the same damaged area. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5836 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-20Removed the Fl::set_awake_cb API and documented the Fl::awake(function, ↵Matthias Melcher
data) API. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5749 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-06This is a suggested change. It is complete except for documentation.Matthias Melcher
I did not like the awake_cb system at all. These changes implement Fl::awake(Fl_Awake_Handler, void*) which is called from a thread and tells the main loop to call the specified handler (rather a callback I guess) as soon as possible from within the main thread. It is implemented as Fifo (currently 1024 entry ring buffer), so handlers are called in the order that they are generated in. "test/threads" was modified to change the label color as soon as a thread reaches 10000 - pretty boring, but it show the wonderful simplicity of this approach: you can write libraries that don't need to add to the main loop or register a handler at all... . I will do some more stress testing tonight. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5729 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-23Avoiding to wait forever under Cygwin. (STR #1608)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5712 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-09Fix WIN32 builds.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5686 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-08Add handler for thread messages (STR #1536)Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5683 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-28Fix order of idle/check processing compared to events (STR #1535)Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5645 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-30STR #1151: Cygwin for some reason was ifdef'd out for setting a shorter ↵Matthias Melcher
timout when reading fd's (yes, the Win32 requires polling to read fd's). Adding the shorter timeout has no impact on Apps that do not poll fd's, but should fix most (all?) problems described in this bug report. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5383 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-28Fix blocks crashes on WIN32 - audio buffer too smallMichael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5374 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-23Fixed WIN32 zero size window issue (STR #1387)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5346 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-21Fixed uninitialized data in OS X and WIN32 timout functions (STR #1374).Matthias Melcher
Fixed silly but in preferences test (that was unrelated to Fl_Preferences). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5341 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-28Fixed Fl_Window::copy_label() losing copy (STR #1332)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5251 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-14Changed Tooltip::exit_() to Tooltip::exit()Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5201 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-14STR #1321: Calling Fl_Window::show() will exit from the current Fl_Tooltip. ↵Matthias Melcher
Changing window order or creating a new window is a pretty major action, so temporarily disabeling Tooltips seems beneficial. This avoids Tooltips interfering with popup menus. Of course, poping up a tooltip window does *not* disable further tooltips... . git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5200 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-09Fixing the fix: restored the FL_KEYUP behavior of WIN32 before the NumLock ↵Matthias Melcher
fix. Now NumLock and Keyup work well. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5191 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-09Added an event variable "Fl::event_original_key()" which returns the current ↵Matthias Melcher
key code (see Fl::event_key()) before it gets mangled through the NumLock keypad conversion. This way, an application can differentiate between an arrow key and a numeric keypad w/NumLock off. On Win32, releasing a numeric keypad key w/NumLock off wiould return the wrong keycode (keypad instead of arrow key). Documentation changed accordingly. X11 code is yet to be tested. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5188 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-05-05STR #1152: Fixed Cygwin compiler warningsMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5085 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-12-16STR #1104: WIN32 version would insist on running a full length timeout even ↵Matthias Melcher
if it knew already that the UI needed to be updated. This could cause a quite long delay when a timeout was used to trigger a redraw. Probably true for threads as well... . git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4714 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-12-14Change FOREVER back to 1e20 (minimal CPU usage) and change fl_wait()Michael R Sweet
implementation on WIN32 to check for idle and to use a time_to_wait() of 0... (STR #1120) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4704 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-11-04Moved 'flush' before 'idle' in main loop fl_wait to make redraw action quicker.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4635 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-11-02STR #1051: fl_wait() would only flush damaged window areas if there were any ↵Matthias Melcher
messages pending. Since FLTK does redraws even if there is no WM_PAINT pending, this was not working all the time. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4617 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-11-01STR #1057: A window that is needed to correctly manage a timer on WIN32 ↵Matthias Melcher
(personally, I would like to mark this WTF ;-), was actually visible. I resized it to 0x0 ixels, but if that fails, we fall back to the old 1x1 pixels. I also removed the "default" positioning since that messes up the default window stacking for pedantic users. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4614 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-10-12Rework event loop handling on all platforms for better timer and idleMichael R Sweet
processing (STR #861) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4589 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-09-14WIN32, STR #1007: Added some code that looks a lot, but is actually very ↵Matthias Melcher
littl, that keeps track of all window classes that were registered to avoid registering the same class twice. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4567 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-09-12STR #1007: Applied second patch by hand. OP: could you please check if all ↵Matthias Melcher
changes were made correctly? Thanks! git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4563 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-09-09This change will make sure that top-level windows will fit inside the screen ↵Matthias Melcher
that contains the original x and y. The previous version would reposition windows in the screen that currently contains the mouse. That feature made it impossible to position tool windows on a second monitor, etc. . This change does not affect popup windows which will still pop up in the screen that has the mouse pointer. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4559 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-09-05STR #1014: FLTK's CR/LF conversion would crash if the clipboard was emptyMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4555 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-27Fix of cross-compiling (host: *-linux-* , target: *-mingw32) problem. Dejan Lekic
Patch provided by Amir Shalem <amir@boom.org.il> in STR#995 . git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4541 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-21Bordersize was calculated wrong for borderless windowsMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4531 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-21Fixed CR to CRLF conversion. Thanks for the patch, Alessandro.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4530 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-08-08Updated WIN32 cut/paste code to consistently handle DOS text (STRMichael R Sweet
#961) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4475 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-07-25STR #831: When moving an OpenGL window outside the screen and then back ↵Matthias Melcher
again lets fltk get stuck. The problem seems to be an idefinite repeat of the WM_PAINT message. The driver sends an internale WM_PAINT (one that does not contain an update region). FLTK then creates a union with the still existin 'i->region' of the OpenGL window, causing yet another WM_PAINT message. The fix is to not run through the WM_PAINT handler at all if there is no update region (as suggested by Microsoft). This change is definetly debatable, since it does modify some internal FLTK behavior. I will commit it anyways for now, but we should pay very close attention to redraw problems by those who use the svn releases. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4456 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-07-24STR #848, missing xclass support implemented as suggested by Mike.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4455 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-07-23Silly typo would position new windows, that touched the right screen border, ↵Matthias Melcher
all the way to the left, instead of just left of the screen's right border. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4450 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-06-01Win322: Calling Fl_Window::size() and friends would move focus from the ↵Matthias Melcher
current window to this window. This was especially painful in Fluid when trying to resize a window by typing its new size into the Widget Properties dialog. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4389 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-06-01Fixed WIndows line endingsMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4388 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-06-01Fl::copy() would always set a flag, instructing Fl::paste to use the ↵Matthias Melcher
internal clipboard. ALthough that is faster, Fl::paste() would eventually miss changes to the external clipboard. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4387 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-05-29Fluid interactive window resizing fixe (STR #873, 791)Matthias Melcher
Fixed fake_X_wm call on Win32 to return the correct window decoration sizes, even in XP's "Teletubbies" mode. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4379 ea41ed52-d2ee-0310-a9c1-e6b18d33e121