#include <windows.h>#include <windowsx.h>#include <commdlg.h>#include <shellapi.h>#include <string.h>#include <stdlib.h>#include <ctype.h>#include <stdarg.h>#include "version.h"#include "wresource.h"#include "wcommon.h"#include "scigraphic.h"#include "DestroyObjects.h"#include "GetProperty.h"#include "DrawObjects.h"#include "Events.h"#include "Xcall1.h"Include dependency graph for wgraph.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.
Defines | |
| #define | MAXPRINTF 512 |
Functions | |
| void | scig_replay_hdc (char c, integer win_num, HDC hdc, int width, int height, int scale) |
| void | set_delete_win_mode () |
| int C2F() | deletewin (integer *number) |
| void | CopyToClipboardEMF (struct BCG *ScilabGC) |
| void | CopyToClipboardBitmap (struct BCG *ScilabGC) |
| void | SciViewportMove (ScilabGC, x, y) |
| void | SciViewportGet (ScilabXgc, x, y) |
| void | GPopupResize (struct BCG *ScilabXgc, int *width, int *height) |
| static void | ScilabPaintWithBitmap (HWND hwnd, HDC hdc, struct BCG *ScilabGC) |
| static void | sci_extra_margin (HDC hdc_c, struct BCG *ScilabGC) |
| void | ScilabPaint (HWND hwnd, struct BCG *ScilabGC) |
| static void | ScilabNoPaint (HWND hwnd, struct BCG *ScilabGC) |
| int | ScilabGResize (HWND hwnd, struct BCG *ScilabGC, WPARAM wParam) |
| void | HideGraphToolBar (struct BCG *ScilabGC) |
| void | ShowGraphToolBar (struct BCG *ScilabGC) |
| int | GetScreenProperty (char *prop, char *value) |
| integer | GetCurrentFigureWindows (void) |
| void | SetCurrentFigureWindows (integer win) |
| HDC | TryToGetDC (HWND hWnd) |
| int | Interface_XS2BMP (int figurenum, char *filename) |
| int | Interface_XS2EMF (int figurenum, char *filename) |
| HDC | GetPrinterDC (void) |
Variables | |
| static int | emulate_backing_store = 1 |
| void CopyToClipboardBitmap | ( | struct BCG * | ScilabGC | ) |
Definition at line 113 of file ExportBmpEmf.c.
References BCG::CurWindow, BCG::CWindow, BCG::CWindowHeight, BCG::CWindowWidth, FALSE, GetCurrentFigureWindows(), hdc, MSG_ERROR20, MSG_ERROR36, MSG_WARNING16, NULL, scig_replay_hdc(), SetCurrentFigureWindows(), Setscig_buzyState(), SW_SHOWNORMAL, tagGW::Title, TRUE, and TryToGetDC().
Referenced by InterfaceWindowsClipboard(), scig_h_copyclip1(), and SendGraphMacro().
00114 { 00115 LPGW lpgw; 00116 HDC hmemDC; 00117 HBITMAP hBitmap; 00118 00119 HWND hwnd; 00120 HDC hdc=NULL; 00121 integer SaveCurrentWindow=0; 00122 00123 SaveCurrentWindow=GetCurrentFigureWindows(); 00124 00125 Setscig_buzyState(TRUE); 00126 00127 SetCurrentFigureWindows (ScilabGC->CurWindow); 00128 00129 /* view the window */ 00130 lpgw = ScilabGC->lpgw; 00131 hwnd = ScilabGC->CWindow; 00132 00133 if (IsIconic (hwnd)) ShowWindow (hwnd, SW_SHOWNORMAL); 00134 BringWindowToTop (hwnd); 00135 UpdateWindow (hwnd); 00136 00137 /* get the context */ 00138 hdc = TryToGetDC (hwnd); 00139 00140 /* make a bitmap and copy it there */ 00141 if (hdc) 00142 { 00144 scig_replay_hdc ('C', ScilabGC->CurWindow, hdc, ScilabGC->CWindowWidth,ScilabGC->CWindowHeight, 1); 00145 ReleaseDC (hwnd, hdc); 00146 00147 hmemDC = CreateCompatibleDC (hdc); 00148 hBitmap = CreateCompatibleBitmap (hdc, ScilabGC->CWindowWidth,ScilabGC->CWindowHeight); 00149 00150 if (hBitmap) 00151 { 00152 SelectBitmap (hmemDC, hBitmap); 00153 scig_replay_hdc ('C', ScilabGC->CurWindow, hmemDC,ScilabGC->CWindowWidth,ScilabGC->CWindowHeight, 1); 00154 00155 OpenClipboard (hwnd); 00156 EmptyClipboard (); 00157 SetClipboardData (CF_BITMAP, hBitmap); 00158 CloseClipboard (); 00159 00160 DeleteDC(hmemDC); 00161 DeleteBitmap(hBitmap); 00162 } 00163 else 00164 { 00165 MessageBeep (MB_ICONHAND); 00166 MessageBox (hwnd, MSG_WARNING16,lpgw->Title, MB_ICONHAND | MB_OK); 00167 } 00168 } 00169 else 00170 { 00171 MessageBox(NULL,MSG_ERROR36,MSG_ERROR20,MB_ICONWARNING); 00172 } 00173 00174 SetCurrentFigureWindows (SaveCurrentWindow); 00175 00176 Setscig_buzyState(FALSE); 00177 00178 return; 00179 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void CopyToClipboardEMF | ( | struct BCG * | ScilabGC | ) |
Definition at line 53 of file ExportBmpEmf.c.
References BCG::CurWindow, BCG::CWindow, BCG::CWindowHeight, BCG::CWindowWidth, FALSE, GetCurrentFigureWindows(), NULL, scig_replay_hdc(), SetCurrentFigureWindows(), Setscig_buzyState(), SW_SHOWNORMAL, TRUE, and TryToGetDC().
Referenced by InterfaceWindowsClipboard(), scig_h_copyclip(), and SendGraphMacro().
00054 { 00055 TCHAR szDesc[] = "Scilab\0Image\0\0"; 00056 LPGW lpgw; 00057 00058 HANDLE hmf; 00059 00060 HWND hwnd; 00061 HDC hdcEMF=NULL; 00062 HDC hDCtmp=NULL; 00063 integer SaveCurrentWindow=0; 00064 00065 SaveCurrentWindow=GetCurrentFigureWindows(); 00066 00067 lpgw = ScilabGC->lpgw; 00068 hwnd = ScilabGC->CWindow; 00069 00070 Setscig_buzyState(TRUE); 00071 00072 SetCurrentFigureWindows (ScilabGC->CurWindow); 00073 00074 hDCtmp = TryToGetDC (hwnd); 00075 if (hDCtmp) hdcEMF = CreateEnhMetaFile (hDCtmp, NULL, NULL, szDesc); 00076 00077 if (hdcEMF) 00078 { 00079 /* view the window */ 00080 if (IsIconic (hwnd)) ShowWindow (hwnd, SW_SHOWNORMAL); 00081 BringWindowToTop (hwnd); 00082 UpdateWindow (hwnd); 00083 00084 SetMapMode (hdcEMF, MM_TEXT); 00085 SetTextAlign (hdcEMF, TA_LEFT | TA_BOTTOM); 00086 SetWindowExtEx (hdcEMF, ScilabGC->CWindowWidth,ScilabGC->CWindowHeight,(LPSIZE) NULL); 00087 Rectangle (hdcEMF, 0, 0, ScilabGC->CWindowWidth,ScilabGC->CWindowHeight); 00088 00090 scig_replay_hdc ('C', ScilabGC->CurWindow, hDCtmp, ScilabGC->CWindowWidth,ScilabGC->CWindowHeight, 1); 00091 ReleaseDC(hwnd,hDCtmp); 00092 00093 scig_replay_hdc ('C', ScilabGC->CurWindow, hdcEMF, ScilabGC->CWindowWidth,ScilabGC->CWindowHeight, 1); 00094 hmf = CloseEnhMetaFile (hdcEMF); 00095 ReleaseDC(hwnd,hdcEMF); 00096 00097 00098 OpenClipboard (hwnd); 00099 EmptyClipboard (); 00100 SetClipboardData (CF_ENHMETAFILE, hmf); 00101 CloseClipboard (); 00102 } 00103 00104 SetCurrentFigureWindows (SaveCurrentWindow); 00105 Setscig_buzyState(FALSE); 00106 return; 00107 }
Here is the call graph for this function:

Here is the caller graph for this function:

| integer GetCurrentFigureWindows | ( | void | ) |
Definition at line 546 of file wgraph.c.
References C2F, dr(), L, na, PD0, and PI0.
00547 { 00548 integer verb = 0; 00549 integer CurrentWindow=0; 00550 integer na=0; 00551 /* Backup Current Figure */ 00552 C2F (dr) ("xget", "window", &verb, &CurrentWindow, &na, PI0, PI0, PI0, PD0, PD0, PD0, PD0, 0L, 0L); 00553 return CurrentWindow; 00554 }
Here is the call graph for this function:

| HDC GetPrinterDC | ( | void | ) |
Definition at line 554 of file TextToPrint.c.
00555 { 00556 if (PrinterHDC == NULL) 00557 { 00558 PRINTDLG pd; 00559 LPDEVNAMES lpDev=NULL; 00560 LPDEVMODE lpDevMode=NULL; 00561 LPCTSTR lpszDevice=NULL; 00562 00563 int failed = 0; 00564 00565 // Reset printdlg struct 00566 memset( &pd, 0, sizeof(PRINTDLG) ); 00567 pd.Flags = PD_RETURNDEFAULT | PD_RETURNDC; 00568 pd.lStructSize = sizeof( PRINTDLG ); 00569 00570 00571 failed = ( ! PrintDlg( &pd ) ); 00572 if (failed) 00573 { 00574 ConfigurePrinterDialogBox(); 00575 } 00576 00577 lpDev = (LPDEVNAMES)GlobalLock(pd.hDevNames); 00578 lpDevMode = (LPDEVMODE)GlobalLock(pd.hDevMode); 00579 lpszDevice = (LPCTSTR)lpDev + lpDev->wDeviceOffset; 00580 00581 wsprintf(PrinterName,"%s",lpszDevice); 00582 GlobalUnlock(pd.hDevNames); 00583 00584 if (lpDevMode->dmOrientation==DMORIENT_PORTRAIT ) PrinterOrientation='p'; 00585 else PrinterOrientation='l'; 00586 GlobalUnlock(pd.hDevMode); 00587 00588 if (PrinterHDC) {DeleteDC(PrinterHDC);PrinterHDC=NULL;} 00589 PrinterHDC=pd.hDC; 00590 00591 } 00592 00593 return PrinterHDC; 00594 }
| int GetScreenProperty | ( | char * | prop, | |
| char * | value | |||
| ) |
Definition at line 478 of file wgraph.c.
00479 { 00480 POINT Ecran = {GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN)} ; 00481 HDC hdc=GetDC(NULL); 00482 if(!strcmp(prop,"screensize_px")) 00483 { 00484 sprintf(value,"%f|%f|%f|%f",(float)1,(float)1, 00485 (float)Ecran.x, 00486 (float)Ecran.y); 00487 } 00488 else if(!strcmp(prop,"screensize_mm")) 00489 { 00490 sprintf(value,"%f|%f|%f|%f",(float)0,(float)0, 00491 (float)GetDeviceCaps(hdc,HORZSIZE), 00492 (float)GetDeviceCaps(hdc,VERTSIZE)); 00493 } 00494 else if(!strcmp(prop,"screensize_cm")) 00495 { 00496 sprintf(value,"%f|%f|%f|%f",(float)0,(float)0, 00497 (float)GetDeviceCaps(hdc,HORZSIZE)/10, 00498 (float)GetDeviceCaps(hdc,VERTSIZE)/10); 00499 } 00500 else if(!strcmp(prop,"screensize_in")) 00501 { 00502 sprintf(value,"%f|%f|%f|%f",(float)0,(float)0, 00503 (float)GetDeviceCaps(hdc,HORZSIZE)/25.4, 00504 (float)GetDeviceCaps(hdc,VERTSIZE)/25.4); 00505 } 00506 else if(!strcmp(prop,"screensize_pt")) 00507 { 00508 sprintf(value,"%f|%f|%f|%f",(float)0,(float)0, 00509 (float)GetDeviceCaps(hdc,HORZSIZE)/25.4*72, 00510 (float)GetDeviceCaps(hdc,VERTSIZE)/25.4*72); 00511 } 00512 else if(!strcmp(prop,"screensize_norm")) 00513 { 00514 sprintf(value,"%f|%f|%f|%f",(float)0,(float)0,(float)1,(float)1); 00515 } 00516 else if(!strcmp(prop,"screendepth")) 00517 { 00518 sprintf(value,"%f",(float)GetDeviceCaps(hdc,BITSPIXEL)); 00519 } 00520 else 00521 { 00522 return -1; 00523 } 00524 ReleaseDC (NULL, hdc); 00525 return 0; 00526 }
used when we resize the popup at scilab level
Definition at line 154 of file wgraph.c.
00155 { 00156 RECT rect, rect1; 00157 int xof, yof; 00158 SCROLLINFO vertsi; 00159 SCROLLINFO horzsi; 00160 int *x = width; /* F.Leray 01.07.04 copy the setwindowdim function philosohpy (see periwin.c)*/ 00161 int *y = height; 00162 00163 if ( (ScilabXgc->CWindow != NULL) && (ScilabXgc->hWndParent != NULL) ) 00164 { 00165 /* initialisation des variables SCROLLINFO*/ 00166 sciGetScrollInfo(ScilabXgc, SB_VERT, &vertsi); 00167 sciGetScrollInfo(ScilabXgc, SB_HORZ, &horzsi); 00168 00169 ScilabXgc->CWindowWidth = Max((int) *x,50); 00170 ScilabXgc->CWindowHeight =Max((int) *y,50); 00171 if ( sciGetwresize() == 1 ) { 00172 ScilabXgc->CWindowWidthView = ScilabXgc->CWindowWidth; 00173 ScilabXgc->CWindowHeightView = ScilabXgc->CWindowHeight; 00174 vertsi.nPos = 0; 00175 horzsi.nPos = 0; 00176 } 00177 00178 if ( ScilabXgc->CWindowWidthView > ScilabXgc->CWindowWidth) 00179 ScilabXgc->CWindowWidthView = ScilabXgc->CWindowWidth; 00180 00181 if (ScilabXgc->CWindowHeightView > ScilabXgc->CWindowHeight) 00182 ScilabXgc->CWindowHeightView = ScilabXgc->CWindowHeight; 00183 CPixmapResize1(); 00184 00185 GetWindowRect (ScilabXgc->hWndParent, &rect) ; 00186 GetWindowRect (ScilabXgc->CWindow, &rect1) ; 00187 xof = (rect.right-rect.left)- (rect1.right - rect1.left); 00188 yof = (rect.bottom-rect.top)- (rect1.bottom -rect1.top ); 00189 if (sciGetwresize () == 0) 00190 { 00191 SetWindowPos (ScilabXgc->hWndParent, HWND_TOP, 0, 0, 00192 ScilabXgc->CWindowWidthView + xof + 00193 GetSystemMetrics (SM_CXVSCROLL), 00194 ScilabXgc->CWindowHeightView + yof + 00195 GetSystemMetrics (SM_CYHSCROLL), 00196 SWP_NOMOVE | SWP_NOZORDER); 00197 } 00198 else 00199 { 00200 SetWindowPos(ScilabXgc->hWndParent,HWND_TOP,0,0, 00201 ScilabXgc->CWindowWidthView + xof, 00202 ScilabXgc->CWindowHeightView + yof, 00203 SWP_NOMOVE | SWP_NOZORDER ); 00204 } 00205 vertsi.nMax = ScilabXgc->CWindowHeight; 00206 vertsi.nPage = ScilabXgc->CWindowHeightView; 00207 horzsi.nMax = ScilabXgc->CWindowWidth; 00208 horzsi.nPage = ScilabXgc->CWindowWidthView; 00209 sciSetScrollInfo(ScilabXgc,SB_VERT, &(vertsi), TRUE); 00210 sciSetScrollInfo(ScilabXgc,SB_HORZ, &(horzsi), TRUE); 00211 if ( sciGetwresize() == 0 ) 00212 { 00213 /* need to force a rdraw in that case */ 00214 if ( ScilabXgc->horzsi.nPos + ScilabXgc->CWindowWidthView < 00215 ScilabXgc->CWindowWidth 00216 && ScilabXgc->vertsi.nPos + ScilabXgc->CWindowHeightView < 00217 ScilabXgc->CWindowHeight) 00218 InvalidateRect(ScilabXgc->CWindow,NULL,FALSE); 00219 } 00220 } 00221 00222 }
| void HideGraphToolBar | ( | struct BCG * | ScilabGC | ) |
Definition at line 14 of file ExportBmpEmf.c.
References ExportBMP(), getWindowXgcNumber(), and NULL.
Referenced by sci_xs2bmp().
00015 { 00016 int bOK=0; 00017 struct BCG *ScilabGC=NULL; 00018 00019 ScilabGC = getWindowXgcNumber (figurenum); 00020 if (ScilabGC != (struct BCG *) 0) 00021 { 00022 ExportBMP(ScilabGC,filename); 00023 bOK=1; 00024 } 00025 else 00026 { 00027 Scierror(999,"xs2bmp : win_num invalid : %d \n",figurenum); 00028 bOK=0; 00029 } 00030 00031 return bOK; 00032 }
Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 34 of file ExportBmpEmf.c.
References ExportEMF(), getWindowXgcNumber(), and NULL.
Referenced by sci_xs2emf().
00035 { 00036 int bOK=0; 00037 struct BCG *ScilabGC=NULL; 00038 00039 ScilabGC = getWindowXgcNumber (figurenum); 00040 if (ScilabGC != (struct BCG *) 0) 00041 { 00042 ExportEMF(ScilabGC,filename); 00043 bOK=1; 00044 } 00045 else 00046 { 00047 Scierror(999,"xs2emf : win_num invalid : %d \n",figurenum); 00048 bOK=0; 00049 } 00050 return bOK; 00051 }
Here is the call graph for this function:

Here is the caller graph for this function:

| static void sci_extra_margin | ( | HDC | hdc_c, | |
| struct BCG * | ScilabGC | |||
| ) | [static] |
Definition at line 439 of file wgraph.c.
References C2F, cur, dr(), dr1(), GetDriver1(), L, na, name, PD0, PI0, ResetScilabXgc(), SciG_Font(), SciG_Font_Printer(), sciGetPixmapStatus(), sciRedrawF(), SetDriver(), SetGHdc(), and SwitchWindow().
00440 { 00441 integer verb = 0, cur, na; 00442 char name[4]; 00443 integer alu, narg, verbose = 0; 00444 GetDriver1 (name, PI0, PI0, PI0, PI0, PI0, PI0, PD0, PD0, PD0, PD0); 00446 C2F (SetDriver) ("Int", PI0, PI0, PI0, PI0, PI0, PI0, PD0, PD0, PD0, PD0); 00447 C2F (dr) ("xget", "window", &verb, &cur, &na, PI0, PI0, PI0, PD0, 00448 PD0, PD0, PD0, 0L, 0L); 00449 C2F (dr) ("xset", "window", &win_num, PI0, PI0, PI0, PI0, PI0, PD0, 00450 PD0, PD0, PD0, 0L, 0L); 00451 C2F (dr) ("xget", "alufunction", &verbose, &alu, &narg, PI0, PI0, 00452 PI0, PD0, PD0, PD0, PD0, 0L, 0L); 00453 SetGHdc (hdc, width, height); 00455 if (c == 'P') 00456 SciG_Font_Printer (scale); 00458 ResetScilabXgc (); 00460 if (sciGetPixmapStatus() != 1) 00461 C2F (dr) ("xclear", "v", PI0, PI0, PI0, PI0, PI0, PI0, PD0, PD0, PD0, 00462 PD0, 0L, 0L); 00463 00464 sciRedrawF(&win_num); /* NG */ 00465 C2F (dr1) ("xset", "alufunction", &alu, PI0, PI0, PI0, PI0, PI0, PD0, 00466 PD0, PD0, PD0, 0L, 0L); 00467 C2F (dr) ("xset", "window", &cur, PI0, PI0, PI0, PI0, PI0, PD0, PD0, 00468 PD0, PD0, 0L, 0L); 00469 C2F (SetDriver) (name, PI0, PI0, PI0, PI0, PI0, PI0, PD0, PD0, PD0, 00470 PD0); 00471 SetGHdc ((HDC) 0, 600, 400); 00473 SciG_Font (); 00474 SwitchWindow (&cur); 00475 }
Here is the call graph for this function:

Definition at line 400 of file wgraph.c.
00401 { 00403 if ( ScilabGC->Inside_init != 1 00404 && ((wParam == SIZE_MAXIMIZED) || (wParam == SIZE_RESTORED))) 00405 { 00406 HBITMAP hbmTemp; 00407 HBITMAP hbmSave; 00408 HDC hdc1; 00409 hdc1 = TryToGetDC (ScilabGC->CWindow); 00410 hbmTemp = CreateCompatibleBitmap (hdc1,ScilabGC->CWindowWidth, 00411 ScilabGC->CWindowHeight); 00412 ReleaseDC(ScilabGC->CWindow,hdc1); 00413 if (hbmTemp == NULL ) 00414 { 00415 sciprint(MSG_WARNING19); 00416 return FALSE; 00417 } 00418 hbmSave = SelectObject ( ScilabGC->hdcCompat, hbmTemp); 00419 if ( ScilabGC->hbmCompat != NULL) 00420 DeleteObject (ScilabGC->hbmCompat); 00421 ScilabGC->hbmCompat = hbmTemp; 00422 if ( ScilabGC->ClipRegionSet == 1 ) SelectClipRgn(ScilabGC->hdcCompat,NULL); 00423 sci_pixmapclear(ScilabGC->hdcCompat,ScilabGC); 00424 00425 return TRUE; 00426 } 00427 return FALSE; 00428 }
| static void ScilabNoPaint | ( | HWND | hwnd, | |
| struct BCG * | ScilabGC | |||
| ) | [static] |
| void ScilabPaint | ( | HWND | hwnd, | |
| struct BCG * | ScilabGC | |||
| ) |
Definition at line 319 of file wgraph.c.
00320 { 00321 /* static paint = 0; */ 00322 HDC hdc; 00323 PAINTSTRUCT ps; 00324 00325 Setscig_buzyState(TRUE); 00326 hdc = BeginPaint(hwnd, &ps); 00327 00328 if (ScilabGC->Inside_init == 1) goto paint_end; 00329 00330 if ( ScilabGC->in_sizemove == 1) goto paint_end; 00331 00332 SetMapMode (hdc, MM_TEXT); 00333 SetBkMode (hdc, TRANSPARENT); 00334 /* GetClientRect (hwnd, &rect); 00335 * SetViewportExtEx(hdc, rect.right, rect.bottom,NULL);*/ 00336 SetViewportExtEx(hdc, ScilabGC->CWindowWidthView,ScilabGC->CWindowHeightView, NULL); 00337 /* MAJ D.ABDEMOUCHE*/ 00338 if (ScilabGC->CurResizeStatus == 0) 00339 { 00340 /* xViewport = xWindow + xViewOrg 00341 * the viewport = [ScilabGC->horzsi.nPos,ScilabGC->vertsi.nPos, 00342 * ScilabGC->CWindowWidthView,ScilabGC->CWindowHeightView] 00343 */ 00344 SetViewportOrgEx (hdc, -ScilabGC->horzsi.nPos,-ScilabGC->vertsi.nPos, NULL); 00345 } 00346 if ( ScilabGC->CurPixmapStatus == 1 ) 00347 { 00348 /* pixmap status is on we use it for redrawing */ 00349 if (ScilabGC->CurResizeStatus == 1)/* MAJ D.ABDEMOUCHE*/ 00350 { 00351 SelectClipRgn(ScilabGC->hdcCompat,NULL); 00352 scig_replay_hdc('W',ScilabGC->CurWindow,ScilabGC->hdcCompat, 00353 ScilabGC->CWindowWidth, ScilabGC->CWindowHeight, 00354 1); 00355 } 00356 /* be sure that there's no active clip set by graphics */ 00357 if ( ScilabGC->ClipRegionSet == 1 ) SelectClipRgn(hdc,NULL); 00358 BitBlt(hdc,ScilabGC->horzsi.nPos,ScilabGC->vertsi.nPos, 00359 ScilabGC->CWindowWidthView,ScilabGC->CWindowHeightView, 00360 ScilabGC->hdcCompat,ScilabGC->horzsi.nPos,ScilabGC->vertsi.nPos, 00361 SRCCOPY); 00362 sci_extra_margin(hdc, ScilabGC); 00363 } 00364 else 00365 { 00366 /* no backing store thus we must redraw */ 00367 if ( emulate_backing_store == 1 ) 00368 { 00369 ScilabPaintWithBitmap (hwnd,hdc,ScilabGC); 00370 } 00371 else 00372 { 00373 if ( ScilabGC->ClipRegionSet == 1 ) SelectClipRgn(hdc,NULL); 00374 scig_replay_hdc('W',ScilabGC->CurWindow,hdc, 00375 ScilabGC->CWindowWidth, ScilabGC->CWindowHeight, 00376 1); 00377 if ( ScilabGC->ClipRegionSet == 1 ) SelectClipRgn(hdc,NULL); 00378 /* painting extra space in gray if necessary */ 00379 sci_extra_margin(hdc ,ScilabGC); 00380 } 00381 } 00382 paint_end : 00383 { 00384 EndPaint(hwnd, &ps); 00385 Setscig_buzyState(FALSE); 00386 } 00387 }
| static void ScilabPaintWithBitmap | ( | HWND | hwnd, | |
| HDC | hdc, | |||
| struct BCG * | ScilabGC | |||
| ) | [static] |
| void set_delete_win_mode | ( | ) |
Definition at line 111 of file Events.c.
References sci_graphic_protect.
00111 { sci_graphic_protect = 0 ;}
| void SetCurrentFigureWindows | ( | integer | win | ) |
Definition at line 556 of file wgraph.c.
References scig_sel().
00557 { 00558 scig_sel (win); 00559 }
Here is the call graph for this function:

| void ShowGraphToolBar | ( | struct BCG * | ScilabGC | ) |
Definition at line 34 of file Toolbar.c.
00035 { 00036 int i=0; 00037 00038 ScilabGC->lpmw.ShowToolBar=TRUE; 00039 for (i=0;i<ScilabGC->lpmw.nButton;i++) 00040 { 00041 ShowWindow(ScilabGC->lpmw.hButton[i],SW_SHOWNORMAL); 00042 } 00043 }
| HDC TryToGetDC | ( | HWND | hWnd | ) |
Definition at line 11 of file TryToGetDC.c.
00012 { 00013 HDC hDCRet=NULL; 00014 00015 if (hWnd) 00016 { 00017 hDCRet=GetDC(hWnd); 00018 if (hDCRet == NULL) 00019 { 00020 #ifdef _DEBUG 00021 MessageBox(NULL,MSG_ERROR36,MSG_ERROR20,MB_ICONWARNING); 00022 #endif 00023 } 00024 } 00025 else 00026 { 00027 #ifdef _DEBUG 00028 MessageBox(NULL,MSG_ERROR37,MSG_ERROR20,MB_ICONWARNING); 00029 #endif 00030 } 00031 00032 return (HDC)hDCRet; 00033 }
int emulate_backing_store = 1 [static] |
1.5.1