fltk 1.3.0rc3
About: FLTK (Fast Light Tool Kit) is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. Release candidate.
  SfR Fresh Dox: fltk-1.3.0rc3-source.tar.gz ("inofficial" and yet experimental doxygen-generated source code documentation)  

Fl_win32.cxx File Reference

#include <FL/Fl.H>
#include <FL/fl_utf8.h>
#include <FL/Fl_Window.H>
#include <FL/fl_draw.H>
#include <FL/Enumerations.H>
#include <FL/Fl_Tooltip.H>
#include "flstring.h"
#include "Fl_Font.H"
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <time.h>
#include <commctrl.h>
#include <ole2.h>
#include <shellapi.h>
#include "aimm.h"
#include <FL/filename.H>
Include dependency graph for Fl_win32.cxx:

Go to the source code of this file.

Classes

struct  FD
class  Lf2CrlfConvert
struct  Win32Timer
class  NameList
struct  Win_DC_List

Defines

#define WSCK_DLL_NAME   "WS2_32.DLL"
#define USE_TRACK_MOUSE
#define USE_CAPTURE_MOUSE_WIN
#define WM_SYNCPAINT   0x0088
#define WM_MOUSELEAVE   0x02a3
#define WM_MOUSEWHEEL   0x020a
#define WHEEL_DELTA   120
#define WM_FLSELECT   (WM_APP+1)

Typedefs

typedef int(WINAPI * fl_wsk_select_f )(int, fd_set *, fd_set *, fd_set *, const struct timeval *)
typedef int(WINAPI * fl_wsk_fd_is_set_f )(SOCKET, fd_set *)
typedef HIMC(WINAPI * flTypeImmGetContext )(HWND)
typedef BOOL(WINAPI * flTypeImmSetCompositionWindow )(HIMC, LPCOMPOSITIONFORM)
typedef BOOL(WINAPI * flTypeImmReleaseContext )(HWND, HIMC)
typedef BOOL(WINAPI * flTypeImmIsIME )(HKL)

Functions

void fl_reset_spot ()
void fl_set_spot (int font, int size, int X, int Y, int W, int H, Fl_Window *win)
void fl_set_status (int x, int y, int w, int h)
int fl_wait (double time_to_wait)
int fl_ready ()
UINT fl_get_lcid_codepage (LCID id)
void fl_get_codepage ()
void fl_save_pen (void)
void fl_restore_pen (void)
void fl_fix_focus ()
const char * fl_filename_name (const char *name)
HDC fl_GetDC (HWND w)
void fl_free_fonts (void)
void fl_save_dc (HWND w, HDC dc)
void fl_release_dc (HWND w, HDC dc)
void fl_cleanup_dc_list (void)
Fl_Region XRectangleRegion (int x, int y, int w, int h)

Variables

FL_EXPORT Fl_Display_Devicefl_display_device = (Fl_Display_Device*)&fl_gdi_display
 Points to the platform's display.
FL_EXPORT Fl_Graphics_Driverfl_graphics_driver = (Fl_Graphics_Driver*)&fl_gdi_driver
 Points to the driver that currently receives all graphics requests.
FL_EXPORT Fl_Surface_Devicefl_surface = (Fl_Surface_Device*)fl_display_device
 Points to the surface that currently receives all graphics requests.
IDropTarget * flIDropTarget
unsigned int fl_codepage
void(* fl_lock_function )() = nothing
void(* fl_unlock_function )() = nothing
IActiveIMMAppfl_aimm = NULL
MSG fl_msg
char * fl_selection_buffer [2]
int fl_selection_length [2]
int fl_selection_buffer_length [2]
char fl_i_own_selection [2]
char fl_is_ime = 0
HWND fl_capture
char fl_show_iconic
HCURSOR fl_default_cursor
UINT fl_wake_msg = 0
int fl_disable_transient_for
HINSTANCE fl_display = GetModuleHandle(NULL)
 END TIMERS //////////////////////////////////////////////////////////////////////////.
HDC fl_gc = 0
HWND fl_window = NULL

Define Documentation

#define USE_CAPTURE_MOUSE_WIN

Definition at line 187 of file Fl_win32.cxx.

#define USE_TRACK_MOUSE

Definition at line 173 of file Fl_win32.cxx.

#define WHEEL_DELTA   120

Definition at line 208 of file Fl_win32.cxx.

#define WM_FLSELECT   (WM_APP+1)

Definition at line 217 of file Fl_win32.cxx.

#define WM_MOUSELEAVE   0x02a3

Definition at line 200 of file Fl_win32.cxx.

#define WM_MOUSEWHEEL   0x020a

Definition at line 204 of file Fl_win32.cxx.

#define WM_SYNCPAINT   0x0088

Definition at line 196 of file Fl_win32.cxx.

#define WSCK_DLL_NAME   "WS2_32.DLL"

Definition at line 99 of file Fl_win32.cxx.


Typedef Documentation

typedef int(WINAPI* fl_wsk_fd_is_set_f)(SOCKET, fd_set *)

Definition at line 102 of file Fl_win32.cxx.

typedef int(WINAPI* fl_wsk_select_f)(int, fd_set *, fd_set *, fd_set *, const struct timeval *)

Definition at line 101 of file Fl_win32.cxx.

typedef HIMC(WINAPI* flTypeImmGetContext)(HWND)

Definition at line 126 of file Fl_win32.cxx.

typedef BOOL(WINAPI* flTypeImmIsIME)(HKL)

Definition at line 132 of file Fl_win32.cxx.

typedef BOOL(WINAPI* flTypeImmReleaseContext)(HWND, HIMC)

Definition at line 130 of file Fl_win32.cxx.

typedef BOOL(WINAPI* flTypeImmSetCompositionWindow)(HIMC, LPCOMPOSITIONFORM)

Definition at line 128 of file Fl_win32.cxx.


Function Documentation

void fl_cleanup_dc_list ( void  )
void fl_fix_focus ( )

Definition at line 872 of file Fl.cxx.

void fl_free_fonts ( void  )

Definition at line 1829 of file Fl_win32.cxx.

References f, Fl_Fontdesc::first, fl_fonts, FL_FREE_FONT, i, and Fl_Font_Descriptor::next.

void fl_get_codepage ( )

Definition at line 627 of file Fl_win32.cxx.

References fl_codepage, and IActiveIMMApp::GetCodePageA().

UINT fl_get_lcid_codepage ( LCID  id)

Definition at line 491 of file Fl_win32.cxx.

References buf.

HDC fl_GetDC ( HWND  w)

Definition at line 1792 of file Fl_win32.cxx.

References fl_gc, fl_release_dc(), fl_save_dc(), NULL, and w.

int fl_ready ( )

Check if there is actually a message pending!

Definition at line 431 of file Fl_win32.cxx.

References NULL.

void fl_release_dc ( HWND  w,
HDC  dc 
)

Definition at line 1887 of file Fl_win32.cxx.

References Win_DC_List::dc, Win_DC_List::next, and Win_DC_List::saved_dc.

Referenced by fl_GetDC(), and Fl_Window::hide().

void fl_restore_pen ( void  )

Definition at line 66 of file fl_color_win32.cxx.

References fl_gc.

void fl_save_dc ( HWND  w,
HDC  dc 
)

Definition at line 1874 of file Fl_win32.cxx.

References Win_DC_List::dc, Win_DC_List::next, NULL, Win_DC_List::saved_dc, w, and Win_DC_List::window.

Referenced by fl_GetDC().

void fl_save_pen ( void  )

Definition at line 61 of file fl_color_win32.cxx.

References fl_gc.

int fl_wait ( double  time_to_wait)

This public function handles all events. It wait a maximum of 'time' secods for an event. This version returns 1 if events other than the timeout timer were processed.

Todo:
there is no socket handling in this code whatsoever

Definition at line 349 of file Fl_win32.cxx.

References Fl::damage(), data, f, FALSE, Fl::first_window(), FL_EXCEPT, fl_lock_function, FL_READ, fl_unlock_function, fl_wake_msg, FL_WRITE, Fl::flush(), func, Fl::get_awake_handler_(), i, Fl::idle, int, and NULL.

Fl_Region XRectangleRegion ( int  x,
int  y,
int  w,
int  h 
)

Variable Documentation

unsigned short extended

Definition at line 711 of file Fl_win32.cxx.

Referenced by Fl_Text_Display::extend_range_for_styles().

Definition at line 341 of file Fl_win32.cxx.

HWND fl_capture

Definition at line 644 of file Fl_win32.cxx.

unsigned int fl_codepage

Definition at line 1378 of file Fl_win32.cxx.

Referenced by fl_open_display(), and Fl_X::make().

Definition at line 1380 of file Fl_win32.cxx.

HINSTANCE fl_display = GetModuleHandle(NULL)

END TIMERS //////////////////////////////////////////////////////////////////////////.

Definition at line 1687 of file Fl_win32.cxx.

FL_EXPORT Fl_Display_Device* fl_display_device = (Fl_Display_Device*)&fl_gdi_display

Points to the platform's display.

Definition at line 89 of file Fl_win32.cxx.

HDC fl_gc = 0

Definition at line 1786 of file Fl_win32.cxx.

Points to the driver that currently receives all graphics requests.

Definition at line 90 of file Fl_win32.cxx.

Definition at line 489 of file Fl_win32.cxx.

char fl_is_ime = 0

Definition at line 626 of file Fl_win32.cxx.

void(* fl_lock_function)() = nothing

Definition at line 331 of file Fl_win32.cxx.

MSG fl_msg

Definition at line 342 of file Fl_win32.cxx.

Definition at line 486 of file Fl_win32.cxx.

Definition at line 488 of file Fl_win32.cxx.

Definition at line 487 of file Fl_win32.cxx.

Definition at line 1376 of file Fl_win32.cxx.

Points to the surface that currently receives all graphics requests.

Definition at line 91 of file Fl_win32.cxx.

void(* fl_unlock_function)() = nothing

Definition at line 332 of file Fl_win32.cxx.

UINT fl_wake_msg = 0

Definition at line 1379 of file Fl_win32.cxx.

Referenced by fl_wait().

HWND fl_window = NULL

Definition at line 1789 of file Fl_win32.cxx.

IDropTarget* flIDropTarget

Definition at line 310 of file fl_dnd_win32.cxx.

unsigned short fltk

Definition at line 711 of file Fl_win32.cxx.

unsigned short vk

Definition at line 711 of file Fl_win32.cxx.