Merge branch 'master' into ExtraMercs

This commit is contained in:
Asdow
2025-09-24 16:14:10 +03:00
601 changed files with 4005 additions and 10278 deletions
+1 -3
View File
@@ -49,11 +49,10 @@ include_directories(
"${CMAKE_SOURCE_DIR}/Strategic"
"${CMAKE_SOURCE_DIR}/sgp"
"${CMAKE_SOURCE_DIR}/Ja2/Res"
"${CMAKE_SOURCE_DIR}/Lua"
"${CMAKE_SOURCE_DIR}/lua"
"${CMAKE_SOURCE_DIR}/Laptop"
"${CMAKE_SOURCE_DIR}/Multiplayer"
"${CMAKE_SOURCE_DIR}/Editor"
"${CMAKE_SOURCE_DIR}/Console"
"${CMAKE_SOURCE_DIR}/i18n/include"
)
@@ -88,7 +87,6 @@ wine
# static libraries whose translation units rely on Application preprocessor definitions.
set(Ja2_Libs
Console
Editor
Ja2
Laptop
-6
View File
@@ -1,6 +0,0 @@
set(ConsoleSrc
"${CMAKE_CURRENT_SOURCE_DIR}/Console.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/Cursors.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/Dialogs.cpp"
"${CMAKE_CURRENT_SOURCE_DIR}/FileStream.cpp"
PARENT_SCOPE)
-81
View File
@@ -1,81 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2001-2004 by Marko Bozikovic
// All rights reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// Send bug reports, bug fixes, enhancements, requests, flames, etc., and
// I'll try to keep a version up to date. I can be reached as follows:
// marko.bozikovic@alterbox.net
// bozho@kset.org
/////////////////////////////////////////////////////////////////////////////
#ifndef _COMBSTROUT_H_
#define _COMBSTROUT_H_
/////////////////////////////////////////////////////////////////////////////
// CComBSTROut - a class that inherits from CComBSTR and adds Out() method
// that should be used instead of & operator for 'out'
// function parameters
class CComBSTROut : public CComBSTR
{
public:
CComBSTROut()
{
}
/*explicit*/ CComBSTROut(int nSize) : CComBSTR(nSize)
{
}
/*explicit*/ CComBSTROut(int nSize, LPCOLESTR sz) : CComBSTR(nSize, sz)
{
}
/*explicit*/ CComBSTROut(LPCOLESTR pSrc) : CComBSTR(pSrc)
{
}
/*explicit*/ CComBSTROut(const CComBSTROut& src) : CComBSTR(src)
{
}
/*explicit*/ CComBSTROut(REFGUID src) : CComBSTR(src)
{
}
#ifndef OLE2ANSI
CComBSTROut(LPCSTR pSrc) : CComBSTR(pSrc)
{
}
CComBSTROut(int nSize, LPCSTR sz) : CComBSTR(nSize, sz)
{
}
#endif
~CComBSTROut()
{
CComBSTR::~CComBSTR();
}
BSTR* Out()
{
Empty();
return &m_str;
}
};
/////////////////////////////////////////////////////////////////////////////
#endif // _COMBSTROUT_H_
-109
View File
@@ -1,109 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2001-2004 by Marko Bozikovic
// All rights reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// Send bug reports, bug fixes, enhancements, requests, flames, etc., and
// I'll try to keep a version up to date. I can be reached as follows:
// marko.bozikovic@alterbox.net
// bozho@kset.org
/////////////////////////////////////////////////////////////////////////////
#ifndef _COMVARIANTOUT_H_
#define _COMVARIANTOUT_H_
/////////////////////////////////////////////////////////////////////////////
// CComVariantOut - a class that inherits from CComVariant and adds Out()
// method that should be used instead of & operator for
// 'out' function parameters
class CComVariantOut : public CComVariant
{
public:
CComVariantOut()
{
}
~CComVariantOut()
{
CComVariant::~CComVariant();
}
CComVariantOut(const VARIANT& varSrc) : CComVariant(varSrc)
{
}
CComVariantOut(const CComVariant& varSrc) : CComVariant(varSrc)
{
}
CComVariantOut(BSTR bstrSrc) : CComVariant(bstrSrc)
{
}
CComVariantOut(LPCOLESTR lpszSrc) : CComVariant(lpszSrc)
{
}
#ifndef OLE2ANSI
CComVariantOut(LPCSTR lpszSrc) : CComVariant(lpszSrc)
{
}
#endif
CComVariantOut(bool bSrc) : CComVariant(bSrc)
{
}
CComVariantOut(int nSrc) : CComVariant(nSrc)
{
}
CComVariantOut(BYTE nSrc) : CComVariant(nSrc)
{
}
CComVariantOut(short nSrc) : CComVariant(nSrc)
{
}
CComVariantOut(long nSrc, VARTYPE m_varSrc = VT_I4) : CComVariant(nSrc, m_varSrc)
{
}
CComVariantOut(float fltSrc) : CComVariant(fltSrc)
{
}
CComVariantOut(double dblSrc) : CComVariant(dblSrc)
{
}
CComVariantOut(CY cySrc) : CComVariant(cySrc)
{
}
CComVariantOut(IDispatch* pSrc) : CComVariant(pSrc)
{
}
CComVariantOut(IUnknown* pSrc) : CComVariant(pSrc)
{
}
public:
VARIANT* Out()
{
Clear();
return this;
}
};
/////////////////////////////////////////////////////////////////////////////
#endif // _COMVARIANTOUT_H_
-2876
View File
File diff suppressed because it is too large Load Diff
-746
View File
@@ -1,746 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2001-2004 by Marko Bozikovic
// All rights reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// Send bug reports, bug fixes, enhancements, requests, flames, etc., and
// I'll try to keep a version up to date. I can be reached as follows:
// marko.bozikovic@alterbox.net
// bozho@kset.org
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Console.h - console class declaration
#pragma once
#include <string>
#include <vector>
using namespace std;
//#include "include/FreeImagePlus.h"
typedef basic_string<TCHAR> tstring;
#define WM_INPUTREADY WM_USER + 1
// tray icon message
#define WM_TRAY_NOTIFY WM_USER + 0x123
#define TRAY_ICON_ID 1
// timer #defines
#define TIMER_REPAINT_CHANGE 42 // timer that is started after there
// were some changes in the console
#define TIMER_REPAINT_MASTER 43 // master timer (needed to repaint
// for some DOS programs, can be
// disabled for lower CPU usage)
#define TIMER_SHOW_HIDE_CONSOLE 100 // used to hide console window when
// starting shell process after a
// defined period of time (some
// shells, like 4NT need console
// window visible during startup for
// all init options to work properly
// transparency #defines
#define TRANSPARENCY_NONE 0
#define TRANSPARENCY_ALPHA 1
#define TRANSPARENCY_COLORKEY 2
#define TRANSPARENCY_FAKE 3
// cusror style #defines
#define CURSOR_STYLE_NONE 0
#define CURSOR_STYLE_XTERM 1
#define CURSOR_STYLE_BLOCK 2
#define CURSOR_STYLE_NBBLOCK 3
#define CURSOR_STYLE_PULSEBLOCK 4
#define CURSOR_STYLE_BAR 5
#define CURSOR_STYLE_CONSOLE 6
#define CURSOR_STYLE_NBHLINE 7
#define CURSOR_STYLE_HLINE 8
#define CURSOR_STYLE_VLINE 9
#define CURSOR_STYLE_RECT 10
#define CURSOR_STYLE_NBRECT 11
#define CURSOR_STYLE_PULSERECT 12
#define CURSOR_STYLE_FADEBLOCK 13
// docking #defines
#define DOCK_NONE 0
#define DOCK_TOP_LEFT 1
#define DOCK_TOP_RIGHT 2
#define DOCK_BOTTOM_RIGHT 3
#define DOCK_BOTTOM_LEFT 4
// Z-order #defines
#define Z_ORDER_REGULAR 0
#define Z_ORDER_ONTOP 1
#define Z_ORDER_ONBOTTOM 2
// window border defines
#define BORDER_NONE 0
#define BORDER_REGULAR 1
#define BORDER_THIN 2
// window background style
#define BACKGROUND_STYLE_RESIZE 0
#define BACKGROUND_STYLE_CENTER 1
#define BACKGROUND_STYLE_TILE 2
// taskbar button defines
#define TASKBAR_BUTTON_NORMAL 0
#define TASKBAR_BUTTON_HIDE 1
#define TASKBAR_BUTTON_TRAY 2
// new configuration auto-reload defines
#define RELOAD_NEW_CONFIG_PROMPT 0
#define RELOAD_NEW_CONFIG_YES 1
#define RELOAD_NEW_CONFIG_NO 2
#define TEXT_SELECTION_NONE 0
#define TEXT_SELECTION_SELECTING 1
#define TEXT_SELECTION_SELECTED 2
/////////////////////////////////////////////////////////////////////////////
// Console class
class Console {
public: // ctor/dtor
Console(LPCTSTR szConfigFile, LPCTSTR szShellCmdLine, LPCTSTR szConsoleTitle, LPCTSTR pszReloadNewConfig);
~Console();
public:
// creates and shows Console window
BOOL Create(HWND notify);
private:
////////////////////
// message handlers
////////////////////
////////////////////////////////
// windows destruction messages
// destroys GDI stuff and posts a quit message
void OnDestroy();
// deletes Console object
void OnNcDestroy();
/////////////////////
// painting messages
// handles painting from off-screen buffers
void OnPaint();
// handles master and 'change' timers
void OnPaintTimer();
// handles cursor timer (for animated cursors)
void OnCursorTimer();
/////////////////////////
// window state messages
// handles window position changes (for snapping to desktop edges)
void OnWindowPosChanging(WINDOWPOS* lpWndPos);
// handles activation message (used for setting alpha transparency and cursor states)
void OnActivateApp(BOOL bActivate, DWORD dwFlags);
// handles vertical scrolling
void OnVScroll(WPARAM wParam);
// handles keyboard layout change, posts the same message to the windows console window
void OnInputLangChangeRequest(WPARAM wParam, LPARAM lParam);
//////////////////
// mouse messages
// handles text selection start and window mouse drag start
void OnLButtonDown(UINT uiFlags, POINTS points);
// handles text selection end, window mouse drag end and text copy
void OnLButtonUp(UINT uiFlags, POINTS points);
// toggles always on top flag
void OnLButtonDblClick(UINT uiFlags, POINTS points);
// pops up the Console menu
void OnRButtonUp(UINT uiFlags, POINTS points);
// pastes text from clipboard
void OnMButtonDown(UINT uiFlags, POINTS points);
// handles mouse movement for text selection and window mouse drag
void OnMouseMove(UINT uiFlags, POINTS points);
// handles start/stop mouse drag for window border
void OnSetCursor(WORD wHitTest, WORD wMouseMessage);
// handles text input
void OnChar(WORD mychar);
wstring Input;
//////////////////
// other messages
// called before the Console menu or system menu pops up
// (populates config files submenu with filenames)
void OnInitMenuPopup(HMENU hMenu, UINT uiPos, BOOL bSysMenu);
// handles drag-n-dropped filenames
void OnDropFiles(HDROP hDrop);
// handles commands from the Console popup menu
BOOL OnCommand(WPARAM wParam, LPARAM lParam);
// handles commands from the system popup menu
BOOL OnSysCommand(WPARAM wParam, LPARAM lParam);
// handles tray icon messages
void OnTrayNotify(WPARAM wParam, LPARAM lParam);
// handles WM_SETTINGCHANGE (we handle only wallpaper changes here)
// void OnWallpaperChanged(const TCHAR* pszFilename);
private:
///////////////////////////////////////////
// Console window creation/setup functions
///////////////////////////////////////////
// gets Console options
BOOL GetOptions();
// registers Console window classes
BOOL RegisterWindowClasses();
// adds stuff to system and popup menus
BOOL SetupMenus();
// creates Console window
BOOL CreateConsoleWindow();
// creates new Console font
void CreateNewFont();
// creates new background brush
void CreateNewBrush();
// creates the cursor
void CreateCursor();
// creates offscreen painting buffers
void CreateOffscreenBuffers();
// creates background bitmap
void CreateBackgroundBitmap();
// called by the ::EnumDisplayMonitors to create background for each display
// static BOOL CALLBACK BackgroundEnumProc(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor, LPARAM dwData);
// gets character width and height
void GetTextSize();
// gets window borders (X, Y and caption sizes)
void GetBordersDimensions();
// calculates window and client area sizes
void CalcWindowSize();
// sets up window transparency (alpha, color key, fake)
// void SetWindowTransparency();
// sets scrollbar stuff
void SetScrollbarStuff();
// sets default console colors
void SetDefaultConsoleColors();
// sets window size and position
void SetWindowSizeAndPosition();
// sets Console's big, small and tray icons
void SetWindowIcons();
// sets up traybar icon
BOOL SetTrayIcon(DWORD dwMessage);
// destroys Console cursor
void DestroyCursor();
// opens the configuration file in a text editor
void EditConfigFile();
// reloads Console settings
void ReloadSettings();
/////////////////////////////
// windows console functions
/////////////////////////////
// allocates the console and starts the command shell
BOOL StartShellProcess();
// refreshes m_hStdOutFresh handle
void RefreshStdOut();
// gets a fresh console output
void RefreshScreenBuffer();
// sets initial windows console size
void InitConsoleWndSize(DWORD dwColumns);
// resizes the windows console
void ResizeConsoleWindow();
// Allocates the screen buffer
void AllocateBuffer();
//////////////////////
// painting functions
//////////////////////
// repaints the memory hdc
void RepaintWindow();
// repaints the memory hdc (paint only changes)
void RepaintWindowChanges();
// draws the cursor
void DrawCursor(BOOL bOnlyCursor = FALSE);
// two helper functions for DrawCursor method
// returns cursor rectangle
inline void GetCursorRect(RECT& rectCursor);
// draws cursor background and returns the cursor rectangle
inline void DrawCursorBackground(RECT& rectCursor);
// clears text selection
void ClearSelection();
// returns the console text change rate since the last painting
// (using this value we decide whether to repaint entire window
// or just the changes)
DWORD GetChangeRate();
//////////////////////////
// window state functions
//////////////////////////
// shows/hides Console window
void ShowHideWindow();
// shows/hides windows console window
void ShowHideConsole();
// shows/hides windows console window after a timeout (used during
// shell startup)
void ShowHideConsoleTimeout();
// toggles 'always on top' status
void ToggleWindowOnTop();
//////////////////
// menu functions
//////////////////
// called by OnCommand and OnSysCommand to handle menu commands
BOOL HandleMenuCommand(DWORD dwID);
// updates popup and system menus for 'always on top' status
void UpdateOnTopMenuItem();
// updates popup and system menus for 'hide console' status
void UpdateHideConsoleMenuItem();
// updates configuration files submenu
void UpdateConfigFilesSubmenu();
///////////////////////
// clipboard functions
///////////////////////
// copies selected text to the clipboard
void CopyTextToClipboard();
// pastes text from the clipboard
void PasteClipoardText();
//////////////////
// misc functions
//////////////////
// shows Readme.txt file
void ShowReadmeFile();
// shows about dialog
void About();
// sends text to the windows console
void SendTextToConsole(const wchar_t *pszText);
// returns the full filename
tstring GetFullFilename(const tstring& strFilename);
// gets a desktop rectangle
void GetDesktopRect(RECT& rectDesktop);
// Pulls the text from the stdout or stderr handle (both are the same) and sends it to the console
void AddOutput();
///////////////////////
// 'gearbox' functions
///////////////////////
// Console window procedure
static LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
// shell activities monitor
static DWORD WINAPI MonitorThreadStatic(LPVOID lpParam);
DWORD MonitorThread();
// CTRL+C, CTRL+BREAK handler
static BOOL WINAPI CtrlHandler(DWORD dwCtrlType);
public: // public data
// Console window handle
HWND m_hWnd;
HWND m_notifyhWnd;
// console colors
COLORREF m_arrConsoleColors[16];
private: // private data
// readem filename
tstring m_strReadmeFile;
BOOL m_bInitializing;
BOOL m_bReloading;
tstring m_strConfigFile;
tstring m_strConfigEditor;
tstring m_strConfigEditorParams;
// one of the RELOAD_NEW_CONFIG_* constants
// - specifies relaod behaviour when a new configuration is selected
// (auto reload, don't reload, ask user)
DWORD m_dwReloadNewConfigDefault;
DWORD m_dwReloadNewConfig;
tstring m_strShell;
tstring m_strShellCmdLine;
// handle to invisible window - used for hiding the taskbar button in tray and 'hidden' modes
HWND m_hwndInvisParent;
// memory device context that holds console output image
HDC m_hdcConsole;
// memory device context for an off-screen window buffer (used to
// compose an image from m_hdcConsole and m_hdcSelection if text
// selection is active)
HDC m_hdcWindow;
// a bitmap used for drawing in the console memory DC
HBITMAP m_hbmpConsole;
HBITMAP m_hbmpConsoleOld;
// a bitmap used for drawing in the window memory DC
HBITMAP m_hbmpWindow;
HBITMAP m_hbmpWindowOld;
// brush for painting background
HBRUSH m_hBkBrush;
// master repaint timer interval (runs independent of changes in the
// console)
DWORD m_dwMasterRepaintInt;
// change repaint timer interval (when a change occurs, repainting
// will be postponed for this interval)
DWORD m_dwChangeRepaintInt;
// icon filename
tstring m_strIconFilename;
// program icons
HICON m_hSmallIcon;
HICON m_hBigIcon;
// popup menu
HMENU m_hPopupMenu;
// system (taskbar button) menu
HMENU m_hSysMenu;
// submenu for the XML (config) files
HMENU m_hConfigFilesMenu;
// set to TRUE if the popup menu is disabled
BOOL m_bPopupMenuDisabled;
// Console window title variables
// holds the default console title ("console" or the one passed in the cmdline param)
tstring m_strWindowTitleDefault;
// holds the window title (default title, or the one from the config file)
tstring m_strWindowTitle;
// holds the current window title
tstring m_strWindowTitleCurrent;
// font data
tstring m_strFontName;
DWORD m_dwFontSize;
BOOL m_bBold;
BOOL m_bItalic;
BOOL m_bUseFontColor;
COLORREF m_crFontColor;
HFONT m_hFont;
HFONT m_hFontOld;
// window X and Y positions
int m_nX;
int m_nY;
// client area inside border (gives a more 'relaxed' look to windows)
int m_nInsideBorder;
// window width and height
int m_nWindowWidth;
int m_nWindowHeight;
// window border sizes
int m_nXBorderSize;
int m_nYBorderSize;
int m_nCaptionSize;
// client area widht/height
int m_nClientWidth;
int m_nClientHeight;
// char height and width (used in window repainting)
// Note: width is used only for fixed-pitch fonts to speed up
// repainting
int m_nCharHeight;
int m_nCharWidth;
// window border type
// 0 - none
// 1 - regular window
// 2 - 1-pixel thin border
DWORD m_dwWindowBorder;
// scrollbar stuff
BOOL m_bShowScrollbar;
int m_nScrollbarStyle;
COLORREF m_crScrollbarColor;
int m_nScrollbarWidth;
int m_nScrollbarButtonHeight;
int m_nScrollbarThunmbHeight;
// what to do with the taskbar button
// if the taskbar button is hidden, or placed in the traybar, you
// can't ALT-TAB to console (take care when using with color key
// transparency :-)
// 0 - nothing
// 1 - hide it
// 2 - put icon to traybar
DWORD m_dwTaskbarButton;
// set to TRUE if the window can be dragged by left-click hold
BOOL m_bMouseDragable;
// snap distance
int m_nSnapDst;
// window docking position
// 0 - no dock
// 1 - top left
// 2 - top right
// 3 - bottom right
// 4 - bottom left
DWORD m_dwDocked;
// window Z-ordering
// 0 - regular
// 1 - always on top
// 2 - always on bottom
DWORD m_dwOriginalZOrder;
DWORD m_dwCurrentZOrder;
// Win2000/XP transparency
// 0 - none
// 1 - alpha blending
// 2 - colorkey
// 3 - fake transparency
DWORD m_dwTransparency;
// alpha value for alpha blending (Win2000 and later only!)
BYTE m_byAlpha;
// alpha value for inactive window
BYTE m_byInactiveAlpha;
COLORREF m_crBackground;
COLORREF m_crConsoleBackground;
// this is used for tinting background images and fake transparencies
BOOL m_bTintSet;
BYTE m_byTintOpacity;
BYTE m_byTintR;
BYTE m_byTintG;
BYTE m_byTintB;
// used when background is an image
BOOL m_bBitmapBackground;
tstring m_strBackgroundFile;
HDC m_hdcBackground;
HBITMAP m_hbmpBackground;
HBITMAP m_hbmpBackgroundOld;
// background attributes
// one of BACKGROUND_STYLE_ #defines
DWORD m_dwBackgroundStyle;
// set to true for relative background
BOOL m_bRelativeBackground;
// set to true to extend the background to all monitors
BOOL m_bExtendBackground;
// offsets used for multiple monitors and relative backgrounds (fake transparency, too)
int m_nBackgroundOffsetX;
int m_nBackgroundOffsetY;
// used for showing/hiding main window
BOOL m_bHideWindow;
// set to TRUE when the real console is hidden
BOOL m_bHideConsole;
// timeout used when hiding console window for the first time (some
// shells need console window visible during startup)
DWORD m_dwHideConsoleTimeout;
// if set to TRUE, Console will be started minimized
BOOL m_bStartMinimized;
// cursor style
// 0 - none
// 1 - XTerm
// 2 - block cursor
// 3 - bar cursor
// 4 - console cursor
// 5 - horizontal line
// 6 - vertical line
// 7 - pulse rect
// 8 - fading block
DWORD m_dwCursorStyle;
COLORREF m_crCursorColor;
// console screen buffer info for cursor
CONSOLE_SCREEN_BUFFER_INFO m_csbiCursor;
// wether console cursor is visible or not
BOOL m_bCursorVisible;
class Cursor* m_pCursor;
// mouse cursor offset within the window (used for moving the window)
POINT m_mouseCursorOffset;
/////////////////////
// console stuff
// console window handle
HWND m_hWndConsole;
// console screen buffer info for console repainting
CONSOLE_SCREEN_BUFFER_INFO m_csbiConsole;
// console stdouts
HANDLE m_hStdOut;
HANDLE m_hStdOutFresh;
// set when quitting the application
HANDLE m_hQuitEvent;
// set by monitor thread when detects console process exit
HANDLE m_hConsoleProcess;
// handle to monitor thread
HANDLE m_hMonitorThread;
// console rows & columns
DWORD m_dwRows;
DWORD m_dwColumns;
DWORD m_dwBufferRows;
BOOL m_bUseTextBuffer;
// set to one of TEXT_SELECTION_ #defines
int m_nTextSelection;
// X Windows style copy-on-select
BOOL m_bCopyOnSelect;
// Inverse the shift behaviour for selecting and dragging
BOOL m_bInverseShift;
COORD m_coordSelOrigin;
RECT m_rectSelection;
HDC m_hdcSelection;
HBITMAP m_hbmpSelection;
HBITMAP m_hbmpSelectionOld;
HBRUSH m_hbrushSelection;
CHAR_INFO* m_pScreenBuffer;
CHAR_INFO* m_pScreenBufferNew;
DWORD m_nTextColor;
DWORD m_nTextBgColor;
// Console window class names
static const TCHAR m_szConsoleClass[];
static const TCHAR m_szHiddenParentClass[];
// win console window title
static const tstring m_strWinConsoleTitle;
};
/////////////////////////////////////////////////////////////////////////////
-208
View File
@@ -1,208 +0,0 @@
//Microsoft Developer Studio generated resource script.
//
#include "res\resource.h"
#define APSTUDIO_READONLY_SYMBOLS
#define IDC_STATIC 00
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "windows.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// Neutral resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEU)
#ifdef _WIN32
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#pragma code_page(1250)
#endif //_WIN32
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_ABOUT DIALOG DISCARDABLE 0, 0, 146, 87
STYLE DS_MODALFRAME | DS_NOIDLEMSG | DS_SETFOREGROUND | DS_CENTER | WS_POPUP |
WS_CAPTION | WS_SYSMENU
CAPTION "About Console"
FONT 8, "MS Sans Serif"
BEGIN
DEFPUSHBUTTON "OK",IDOK,48,66,50,14
LTEXT "Console v1.5",IDC_STATIC,51,11,42,8
LTEXT "Copyright© 2001-2005 Marko Bozikovic",IDC_STATIC,9,30,
127,8
LTEXT "bozho@kset.org",IDC_STATIC,46,45,53,8
END
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
IDD_ABOUT, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 139
TOPMARGIN, 7
BOTTOMMARGIN, 80
END
END
#endif // APSTUDIO_INVOKED
#endif // Neutral resources
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Neutral (Default) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEUD)
#ifdef _WIN32
LANGUAGE LANG_NEUTRAL, SUBLANG_DEFAULT
#pragma code_page(1250)
#endif //_WIN32
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
//IDI_ICON2 ICON DISCARDABLE "Console.ico"
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
IDR_POPUP_MENU MENU DISCARDABLE
BEGIN
POPUP " "
BEGIN
// MENUITEM "Read&me", ID_SHOW_README_FILE
MENUITEM "&About Console", ID_ABOUT
MENUITEM SEPARATOR
MENUITEM "&Copy", ID_COPY
MENUITEM "&Paste", ID_PASTE
MENUITEM SEPARATOR
// MENUITEM "Always on &top", ID_TOGGLE_ONTOP
// MENUITEM "&Hide console", ID_HIDE_CONSOLE
// MENUITEM SEPARATOR
// MENUITEM "&Select configuration file", ID_SEL_CONFIG_FILE
// MENUITEM "&Edit configuration file", ID_EDIT_CONFIG_FILE
// MENUITEM "&Reload settings", ID_RELOAD_SETTINGS
// MENUITEM SEPARATOR
MENUITEM "E&xit", ID_EXIT_CONSOLE
END
END
#endif // Neutral (Default) resources
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Croatian resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_HRV)
#ifdef _WIN32
LANGUAGE LANG_CROATIAN, SUBLANG_DEFAULT
#pragma code_page(1250)
#endif //_WIN32
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END
3 TEXTINCLUDE DISCARDABLE
BEGIN
"\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
#ifndef _MAC
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,5,0,351
PRODUCTVERSION 1,5,0,351
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x40004L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "000004b0"
BEGIN
VALUE "Comments", "A cool console window :-)\0"
VALUE "CompanyName", "Ingenuity Unlimited Ltd.\0"
VALUE "FileDescription", "Console\0"
VALUE "FileVersion", "1.5, Build 351 2005.09.22\0"
VALUE "InternalName", "Console\0"
VALUE "LegalCopyright", "Copyright © 2001-2004 Marko Bozikovic\0"
VALUE "LegalTrademarks", "Copyright © 2001-2004 Marko Bozikovic\0"
VALUE "OriginalFilename", "Console.exe\0"
VALUE "PrivateBuild", "\0"
VALUE "ProductName", "Console\0"
VALUE "ProductVersion", "1.5.00.351\0"
VALUE "SpecialBuild", "\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x0, 1200
END
END
#endif // !_MAC
#endif // Croatian resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
-769
View File
@@ -1,769 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2001-2004 by Marko Bozikovic
// All rights reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// Send bug reports, bug fixes, enhancements, requests, flames, etc., and
// I'll try to keep a version up to date. I can be reached as follows:
// marko.bozikovic@alterbox.net
// bozho@kset.org
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Cursors.h - cursor classes
//#include "stdafx.h"
#include <Windows.h>
#include <tchar.h>
#include "Cursors.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// XTermCursor
XTermCursor::XTermCursor(HWND hwndConsole, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndConsole, hdcWindow, crCursorColor)
, m_hActiveBrush(::CreateSolidBrush(crCursorColor))
, m_hInactiveBrush(::CreateSolidBrush(crCursorColor))
{
}
XTermCursor::~XTermCursor() {
::DeleteObject(m_hActiveBrush);
::DeleteObject(m_hInactiveBrush);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void XTermCursor::Draw(LPRECT pRect) {
if (m_bActive) {
::FillRect(m_hdcWindow, pRect, m_hActiveBrush);
} else {
::FrameRect(m_hdcWindow, pRect, m_hInactiveBrush);
}
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void XTermCursor::PrepareNext() {
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// BlockCursor
BlockCursor::BlockCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hActiveBrush(::CreateSolidBrush(crCursorColor))
, m_bVisible(TRUE)
{
m_uiTimer = ::SetTimer(hwndParent, CURSOR_TIMER, 750, NULL);
}
BlockCursor::~BlockCursor() {
if (m_uiTimer) ::KillTimer(m_hwndParent, m_uiTimer);
::DeleteObject(m_hActiveBrush);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void BlockCursor::Draw(LPRECT pRect) {
if (m_bActive && m_bVisible) {
::FillRect(m_hdcWindow, pRect, m_hActiveBrush);
}
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void BlockCursor::PrepareNext() {
m_bVisible = !m_bVisible;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// NBBlockCursor
NBBlockCursor::NBBlockCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hActiveBrush(::CreateSolidBrush(crCursorColor))
{
}
NBBlockCursor::~NBBlockCursor() {
::DeleteObject(m_hActiveBrush);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void NBBlockCursor::Draw(LPRECT pRect) {
::FillRect(m_hdcWindow, pRect, m_hActiveBrush);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void NBBlockCursor::PrepareNext() {
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// PulseBlockCursor
PulseBlockCursor::PulseBlockCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hActiveBrush(::CreateSolidBrush(crCursorColor))
, m_nSize(0)
, m_nMaxSize(0)
, m_nStep(0)
{
::ZeroMemory(&m_rect, sizeof(RECT));
m_uiTimer = ::SetTimer(hwndParent, CURSOR_TIMER, 100, NULL);
}
PulseBlockCursor::~PulseBlockCursor() {
if (m_uiTimer) ::KillTimer(m_hwndParent, m_uiTimer);
::DeleteObject(m_hActiveBrush);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void PulseBlockCursor::Draw(LPRECT pRect) {
// this is called only once, to set the size of the cursor
if (m_nMaxSize == 0) {
if ((pRect->right - pRect->left) < (pRect->bottom - pRect->top)) {
m_nMaxSize = (pRect->right - pRect->left) >> 1;
} else {
m_nMaxSize = (pRect->bottom - pRect->top) >> 1;
}
}
if (m_bActive) {
RECT rect;
::CopyMemory(&rect, pRect, sizeof(RECT));
rect.left += m_nSize;
rect.top += m_nSize;
rect.right -= m_nSize;
rect.bottom -= m_nSize;
::FillRect(m_hdcWindow, &rect, m_hActiveBrush);
}
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void PulseBlockCursor::PrepareNext() {
if (m_nSize == 0) {
m_nStep = 1;
} else if (m_nSize == m_nMaxSize) {
m_nStep = -1;
}
m_nSize += m_nStep;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// BarCursor
BarCursor::BarCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hPen(::CreatePen(PS_SOLID, 1, crCursorColor))
, m_bVisible(TRUE)
{
m_uiTimer = ::SetTimer(hwndParent, CURSOR_TIMER, 750, NULL);
}
BarCursor::~BarCursor() {
if (m_uiTimer) ::KillTimer(m_hwndParent, m_uiTimer);
::DeleteObject(m_hPen);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void BarCursor::Draw(LPRECT pRect) {
if (m_bActive && m_bVisible) {
HPEN hOldPen = (HPEN)::SelectObject(m_hdcWindow, m_hPen);
::MoveToEx(m_hdcWindow, pRect->left, pRect->top, NULL);
::LineTo(m_hdcWindow, pRect->left, pRect->bottom);
::SelectObject(m_hdcWindow, hOldPen);
}
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void BarCursor::PrepareNext() {
m_bVisible = !m_bVisible;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// ConsoleCursor
ConsoleCursor::ConsoleCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hStdOut(::CreateFile(_T("CONOUT$"), GENERIC_WRITE | GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, 0))
, m_hActiveBrush(::CreateSolidBrush(crCursorColor))
, m_bVisible(TRUE)
{
m_uiTimer = ::SetTimer(hwndParent, CURSOR_TIMER, 750, NULL);
}
ConsoleCursor::~ConsoleCursor() {
if (m_uiTimer) ::KillTimer(m_hwndParent, m_uiTimer);
::DeleteObject(m_hActiveBrush);
::CloseHandle(m_hStdOut);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void ConsoleCursor::Draw(LPRECT pRect) {
RECT rect;
::CopyMemory(&rect, pRect, sizeof(RECT));
if (m_bActive && m_bVisible) {
rect.top += (rect.bottom - rect.top) * 80 / 100;
::FillRect(m_hdcWindow, &rect, m_hActiveBrush);
}
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void ConsoleCursor::PrepareNext() {
m_bVisible = !m_bVisible;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// NBHLineCursor
NBHLineCursor::NBHLineCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hPen(::CreatePen(PS_SOLID, 1, crCursorColor))
{
}
NBHLineCursor::~NBHLineCursor() {
::DeleteObject(m_hPen);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void NBHLineCursor::Draw(LPRECT pRect) {
HPEN hOldPen = (HPEN)::SelectObject(m_hdcWindow, m_hPen);
::MoveToEx(m_hdcWindow, pRect->left, pRect->bottom-1, NULL);
::LineTo(m_hdcWindow, pRect->right, pRect->bottom-1);
::SelectObject(m_hdcWindow, hOldPen);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void NBHLineCursor::PrepareNext() {
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// HLineCursor
HLineCursor::HLineCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hPen(::CreatePen(PS_SOLID, 1, crCursorColor))
, m_nSize(0)
, m_nPosition(0)
, m_nStep(0)
{
m_uiTimer = ::SetTimer(hwndParent, CURSOR_TIMER, 100, NULL);
}
HLineCursor::~HLineCursor() {
if (m_uiTimer) ::KillTimer(m_hwndParent, m_uiTimer);
::DeleteObject(m_hPen);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void HLineCursor::Draw(LPRECT pRect) {
// this is called only once, to set the size of the cursor
if (m_nSize != (pRect->bottom - pRect->top - 1)) {
m_nSize = pRect->bottom - pRect->top - 1;
m_nPosition = 0;
m_nStep = 1;
}
if (m_bActive) {
HPEN hOldPen = (HPEN)::SelectObject(m_hdcWindow, m_hPen);
::MoveToEx(m_hdcWindow, pRect->left, pRect->top + m_nPosition, NULL);
::LineTo(m_hdcWindow, pRect->right, pRect->top + m_nPosition);
::SelectObject(m_hdcWindow, hOldPen);
}
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void HLineCursor::PrepareNext() {
if (m_nPosition == 0) {
m_nStep = 1;
} else if (m_nPosition == m_nSize) {
m_nStep = -1;
}
m_nPosition += m_nStep;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// VLineCursor
VLineCursor::VLineCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hPen(::CreatePen(PS_SOLID, 1, crCursorColor))
, m_nSize(0)
, m_nPosition(0)
, m_nStep(0)
{
m_uiTimer = ::SetTimer(hwndParent, CURSOR_TIMER, 100, NULL);
}
VLineCursor::~VLineCursor() {
if (m_uiTimer) ::KillTimer(m_hwndParent, m_uiTimer);
::DeleteObject(m_hPen);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void VLineCursor::Draw(LPRECT pRect) {
// this is called only once, to set the size of the cursor
if (m_nSize != (pRect->right - pRect->left - 1)) {
m_nSize = pRect->right - pRect->left - 1;
m_nPosition = 0;
m_nStep = 1;
}
if (m_bActive) {
HPEN hOldPen = (HPEN)::SelectObject(m_hdcWindow, m_hPen);
::MoveToEx(m_hdcWindow, pRect->left + m_nPosition, pRect->top, NULL);
::LineTo(m_hdcWindow, pRect->left + m_nPosition, pRect->bottom);
::SelectObject(m_hdcWindow, hOldPen);
}
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void VLineCursor::PrepareNext() {
if (m_nPosition == 0) {
m_nStep = 1;
} else if (m_nPosition == m_nSize) {
m_nStep = -1;
}
m_nPosition += m_nStep;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// RectCursor
RectCursor::RectCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hActiveBrush(::CreateSolidBrush(crCursorColor))
, m_bVisible(TRUE)
{
m_uiTimer = ::SetTimer(hwndParent, CURSOR_TIMER, 750, NULL);
}
RectCursor::~RectCursor() {
if (m_uiTimer) ::KillTimer(m_hwndParent, m_uiTimer);
::DeleteObject(m_hActiveBrush);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void RectCursor::Draw(LPRECT pRect) {
if (m_bActive && m_bVisible) {
::FrameRect(m_hdcWindow, pRect, m_hActiveBrush);
}
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void RectCursor::PrepareNext() {
m_bVisible = !m_bVisible;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// NBRectCursor
NBRectCursor::NBRectCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hActiveBrush(::CreateSolidBrush(crCursorColor))
{
}
NBRectCursor::~NBRectCursor() {
::DeleteObject(m_hActiveBrush);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void NBRectCursor::Draw(LPRECT pRect) {
::FrameRect(m_hdcWindow, pRect, m_hActiveBrush);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void NBRectCursor::PrepareNext() {
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// PulseRectCursor
PulseRectCursor::PulseRectCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_hActiveBrush(::CreateSolidBrush(crCursorColor))
, m_nSize(0)
, m_nMaxSize(0)
, m_nStep(0)
{
::ZeroMemory(&m_rect, sizeof(RECT));
m_uiTimer = ::SetTimer(hwndParent, CURSOR_TIMER, 100, NULL);
}
PulseRectCursor::~PulseRectCursor() {
if (m_uiTimer) ::KillTimer(m_hwndParent, m_uiTimer);
::DeleteObject(m_hActiveBrush);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void PulseRectCursor::Draw(LPRECT pRect) {
// this is called only once, to set the size of the cursor
if (m_nMaxSize == 0) {
if ((pRect->right - pRect->left) < (pRect->bottom - pRect->top)) {
m_nMaxSize = (pRect->right - pRect->left) >> 1;
} else {
m_nMaxSize = (pRect->bottom - pRect->top) >> 1;
}
}
if (m_bActive) {
RECT rect;
::CopyMemory(&rect, pRect, sizeof(RECT));
rect.left += m_nSize;
rect.top += m_nSize;
rect.right -= m_nSize;
rect.bottom -= m_nSize;
::FrameRect(m_hdcWindow, &rect, m_hActiveBrush);
}
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void PulseRectCursor::PrepareNext() {
if (m_nSize == 0) {
m_nStep = 1;
} else if (m_nSize == m_nMaxSize) {
m_nStep = -1;
}
m_nSize += m_nStep;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// FadeBlockCursor
FadeBlockCursor::FadeBlockCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor, COLORREF crBkColor)
: Cursor(hwndParent, hdcWindow, crCursorColor)
, m_crCursorColor(crCursorColor)
, m_nStep(1)
, m_crBkColor(crBkColor)
, m_nIndex(0)
, m_hUser32(NULL)
, m_hMemDC(NULL)
{
m_uiTimer = ::SetTimer(hwndParent, CURSOR_TIMER, 35, NULL);
FakeBlend();
// }
}
FadeBlockCursor::~FadeBlockCursor() {
if (m_uiTimer) ::KillTimer(m_hwndParent, m_uiTimer);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void FadeBlockCursor::Draw(LPRECT pRect) {
HBRUSH hBrush = ::CreateSolidBrush(m_arrColors[m_nIndex]);
::FillRect(m_hdcWindow, pRect, hBrush);
::DeleteObject(hBrush);
// }
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
void FadeBlockCursor::PrepareNext() {
if (m_nIndex == 0) {
m_nStep = 1;
} else if (m_nIndex == (FADE_STEPS)) {
m_nStep = -1;
}
m_nIndex += m_nStep;
// }
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// This function is used to create a fake blending for WinNT (uuseful only
// for solid background, though)
void FadeBlockCursor::FakeBlend() {
int nDeltaR = ((GetRValue(m_crCursorColor) - GetRValue(m_crBkColor)) << 8) / FADE_STEPS;
int nDeltaG = ((GetGValue(m_crCursorColor) - GetGValue(m_crBkColor)) << 8) / FADE_STEPS;
int nDeltaB = ((GetBValue(m_crCursorColor) - GetBValue(m_crBkColor)) << 8) / FADE_STEPS;
for (int i = 0; i < FADE_STEPS; ++i) {
m_arrColors[i] = RGB(GetRValue(m_crCursorColor) - (nDeltaR*i >> 8), GetGValue(m_crCursorColor) - (nDeltaG*i >> 8), GetBValue(m_crCursorColor) - (nDeltaB*i >> 8));
}
m_arrColors[FADE_STEPS] = m_crBkColor;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
-342
View File
@@ -1,342 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2001-2004 by Marko Bozikovic
// All rights reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// Send bug reports, bug fixes, enhancements, requests, flames, etc., and
// I'll try to keep a version up to date. I can be reached as follows:
// marko.bozikovic@alterbox.net
// bozho@kset.org
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Cursors.h - cursor classes
#pragma once
#define CURSOR_TIMER 45
extern BOOL g_bWin2000;
/////////////////////////////////////////////////////////////////////////////
// A base class for all the cursors
class Cursor {
public:
Cursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor)
: m_hwndParent(hwndParent)
, m_hdcWindow(hdcWindow)
, m_crCursorColor(crCursorColor)
, m_bActive(TRUE)
, m_uiTimer(0)
{};
virtual ~Cursor(){};
void SetState(BOOL bActive) {m_bActive = bActive;};
BOOL GetState() { return m_bActive; }
// used to draw current frame of the cursor
virtual void Draw(LPRECT pRect) = 0;
// used to prepare the next frame of cursor animation
virtual void PrepareNext() = 0;
protected:
HWND m_hwndParent;
HDC m_hdcWindow;
COLORREF m_crCursorColor;
BOOL m_bActive;
UINT m_uiTimer;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// XTermCursor
class XTermCursor : public Cursor {
public:
XTermCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~XTermCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HBRUSH m_hActiveBrush;
HBRUSH m_hInactiveBrush;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// BlockCursor
class BlockCursor : public Cursor {
public:
BlockCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~BlockCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HBRUSH m_hActiveBrush;
BOOL m_bVisible;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// NBBlockCursor
class NBBlockCursor : public Cursor {
public:
NBBlockCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~NBBlockCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HBRUSH m_hActiveBrush;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// PulseBlockCursor
class PulseBlockCursor : public Cursor {
public:
PulseBlockCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~PulseBlockCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HBRUSH m_hActiveBrush;
RECT m_rect;
int m_nSize;
int m_nMaxSize;
int m_nStep;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// BarCursor
class BarCursor : public Cursor {
public:
BarCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~BarCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HPEN m_hPen;
BOOL m_bVisible;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// ConsoleCursor
class ConsoleCursor : public Cursor {
public:
ConsoleCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~ConsoleCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HANDLE m_hStdOut;
HBRUSH m_hActiveBrush;
BOOL m_bVisible;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// NBHLineCursor
class NBHLineCursor : public Cursor {
public:
NBHLineCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~NBHLineCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HPEN m_hPen;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// HLineCursor
class HLineCursor : public Cursor {
public:
HLineCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~HLineCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HPEN m_hPen;
int m_nSize;
int m_nPosition;
int m_nStep;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// VLineCursor
class VLineCursor : public Cursor {
public:
VLineCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~VLineCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HPEN m_hPen;
int m_nSize;
int m_nPosition;
int m_nStep;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// RectCursor
class RectCursor : public Cursor {
public:
RectCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~RectCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HBRUSH m_hActiveBrush;
BOOL m_bVisible;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// NBRectCursor
class NBRectCursor : public Cursor {
public:
NBRectCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~NBRectCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HBRUSH m_hActiveBrush;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// PulseRectCursor
class PulseRectCursor : public Cursor {
public:
PulseRectCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor);
~PulseRectCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
HBRUSH m_hActiveBrush;
RECT m_rect;
int m_nSize;
int m_nMaxSize;
int m_nStep;
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// FadeBlockCursor
#define FADE_STEPS 20
#define ALPHA_STEP 12
#define BLEND_BMP_WIDTH 10
#define BLEND_BMP_HEIGHT 20
class FadeBlockCursor : public Cursor {
public:
FadeBlockCursor(HWND hwndParent, HDC hdcWindow, COLORREF crCursorColor, COLORREF crBkColor);
~FadeBlockCursor();
void Draw(LPRECT pRect);
void PrepareNext();
private:
void FakeBlend();
COLORREF m_crCursorColor;
int m_nStep;
// used under WinNT 4.0
COLORREF m_crBkColor;
COLORREF m_arrColors[FADE_STEPS+1];
int m_nIndex;
// these are used under Win2000 only
HMODULE m_hUser32;
BLENDFUNCTION m_bfn;
HDC m_hMemDC;
};
/////////////////////////////////////////////////////////////////////////////
-134
View File
@@ -1,134 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2001-2004 by Marko Bozikovic
// All rights reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// Send bug reports, bug fixes, enhancements, requests, flames, etc., and
// I'll try to keep a version up to date. I can be reached as follows:
// marko.bozikovic@alterbox.net
// bozho@kset.org
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Dialogs.h - dialog classes
//
// About dialog class, etc...
//#include "stdafx.h"
#include <Windows.h>
#include "resource.h"
#include "Console.h"
#include "Dialogs.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern HINSTANCE ghInstance;
/////////////////////////////////////////////////////////////////////////////
// About dialog class
/////////////////////////////////////////////////////////////////////////////
// Ctor/Dtor
CAboutDlg::CAboutDlg(HWND hwndParent)
: m_hWndParent(hwndParent)
{
}
CAboutDlg::~CAboutDlg()
{
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// public methods
/////////////////////////////////////////////////////////////////////////////
// DoModal - shows About dialog
BOOL CAboutDlg::DoModal()
{
::DialogBox(
ghInstance,
MAKEINTRESOURCE(IDD_ABOUT),
m_hWndParent,
CAboutDlg::DialogProc);
return TRUE;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// message handlers
/////////////////////////////////////////////////////////////////////////////
// DialogProc - dialog window procedure
int CALLBACK CAboutDlg::DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg) {
case WM_INITDIALOG:
return TRUE;
case WM_COMMAND:
switch (LOWORD(wParam)) {
case IDOK:
case IDCANCEL:
if (HIWORD(wParam) == BN_CLICKED) {
::EndDialog(hwndDlg, MB_OK);
return TRUE;
}
break;
}
}
return 0;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
-64
View File
@@ -1,64 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2001-2004 by Marko Bozikovic
// All rights reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// Send bug reports, bug fixes, enhancements, requests, flames, etc., and
// I'll try to keep a version up to date. I can be reached as follows:
// marko.bozikovic@alterbox.net
// bozho@kset.org
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Dialogs.h - dialog classes
//
// About dialog class, etc...
#pragma once
/////////////////////////////////////////////////////////////////////////////
// About dialog class
class CAboutDlg {
public:
CAboutDlg(HWND hwndParent);
~CAboutDlg();
// public methods
public:
// shows About dialog
BOOL DoModal();
// public data
public:
// parent window handle
HWND m_hWndParent;
// private methods
private:
/////////////////////////
// message handlers
// dialog window procedure
static int CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam );
// private data
private:
};
/////////////////////////////////////////////////////////////////////////////
-259
View File
@@ -1,259 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2001-2004 by Marko Bozikovic
// All rights reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// Send bug reports, bug fixes, enhancements, requests, flames, etc., and
// I'll try to keep a version up to date. I can be reached as follows:
// marko.bozikovic@alterbox.net
// bozho@kset.org
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// FileStream.cpp - implementation of IStream interface on any file
// (not strictly COM, I'm faking it here a bit :-)
//
#undef CINTERFACE
#include "builddefines.h"
//#include "stdafx.h"
//#include <atlbase.h>
#include <Windows.h>
#include <objidl.h>
#include "FileStream.h"
//#ifdef _DEBUG
//#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
//#endif
/////////////////////////////////////////////////////////////////////////////
// CreateFileStream - opens/creates a file and returns an IStream interface
HRESULT CreateFileStream(
LPCTSTR lpFileName, // file name
DWORD dwDesiredAccess, // access mode
DWORD dwShareMode, // share mode
LPSECURITY_ATTRIBUTES lpSecurityAttributes, // SD
DWORD dwCreationDisposition, // how to create
DWORD dwFlagsAndAttributes, // file attributes
HANDLE hTemplateFile, // handle to template file
IStream** ppStream // pointer to IStream interface
)
{
HANDLE hFile = ::CreateFile(
lpFileName,
dwDesiredAccess,
dwShareMode,
lpSecurityAttributes,
dwCreationDisposition,
dwFlagsAndAttributes,
hTemplateFile);
if (hFile == INVALID_HANDLE_VALUE) {
// DWORD a = ::GetLastError();
ppStream = NULL;
return E_FAIL;
}
FileStream* pFileStream = new FileStream(hFile);
return pFileStream->QueryInterface(IID_IStream, (void**)ppStream);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// FileStream class
/////////////////////////////////////////////////////////////////////////////
// ctor/dtor
FileStream::FileStream(HANDLE hFile)
: m_lRefCount(0)
, m_hFile(hFile)
{
}
FileStream::~FileStream()
{
if (m_hFile) ::CloseHandle(m_hFile);
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// IStream methods
/////////////////////////////////////////////////////////////////////////////
// Read - reads a specified number of bytes from the stream object into memory
// starting at the current seek pointer
STDMETHODIMP FileStream::Read(void *pv, ULONG cb, ULONG *pcbRead)
{
if (!::ReadFile(m_hFile, pv, cb, pcbRead, NULL)) return S_FALSE;
return S_OK;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Write - writes a specified number of bytes into the stream object starting
// at the current seek pointer
STDMETHODIMP FileStream::Write(void const *pv, ULONG cb, ULONG *pcbWritten)
{
if (!::WriteFile(m_hFile, pv, cb, pcbWritten, NULL)) return S_FALSE;
return S_OK;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Seek - changes the seek pointer to a new location relative to the beginning
// of the stream, to the end of the stream, or to the current seek pointer
STDMETHODIMP FileStream::Seek(LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER *plibNewPosition)
{
DWORD dwFileOrigin;
DWORD dwMoveLow = dlibMove.LowPart;
LONG lMoveHigh = dlibMove.HighPart;
switch (dwOrigin) {
case STREAM_SEEK_SET : dwFileOrigin = FILE_BEGIN; break;
case STREAM_SEEK_CUR : dwFileOrigin = FILE_CURRENT; break;
case STREAM_SEEK_END : dwFileOrigin = FILE_END; break;
default:dwFileOrigin = FILE_BEGIN;
}
DWORD dwRet = ::SetFilePointer(m_hFile, dwMoveLow, &lMoveHigh, dwFileOrigin);
if (::GetLastError() != NO_ERROR) return STG_E_INVALIDPOINTER;
plibNewPosition->LowPart = dwRet;
plibNewPosition->HighPart = lMoveHigh;
return S_OK;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// SetSize - not really doing anything here
STDMETHODIMP FileStream::SetSize(ULARGE_INTEGER libNewSize)
{
return S_OK;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// CopyTo - copies a specified number of bytes from the current seek pointer
// in the stream to the current seek pointer in another stream
STDMETHODIMP FileStream::CopyTo(IStream *pstm, ULARGE_INTEGER cb, ULARGE_INTEGER *pcbRead, ULARGE_INTEGER *pcbWritten)
{
// later...
return E_NOTIMPL;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Commit - no work here...
STDMETHODIMP FileStream::Commit(DWORD grfCommitFlags)
{
return S_OK;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Revert - no work here...
STDMETHODIMP FileStream::Revert(void)
{
return S_OK;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// LockRegion - no work here...
STDMETHODIMP FileStream::LockRegion(ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType)
{
return E_NOTIMPL;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// UnlockRegion - no work here...
STDMETHODIMP FileStream::UnlockRegion(ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType)
{
return E_NOTIMPL;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Stat - no work here...
STDMETHODIMP FileStream::Stat(STATSTG *pstatstg, DWORD grfStatFlag)
{
return E_NOTIMPL;
}
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Clone - no work here...
STDMETHODIMP FileStream::Clone(IStream **ppstm)
{
return E_NOTIMPL;
}
/////////////////////////////////////////////////////////////////////////////
-107
View File
@@ -1,107 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2001-2004 by Marko Bozikovic
// All rights reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// Send bug reports, bug fixes, enhancements, requests, flames, etc., and
// I'll try to keep a version up to date. I can be reached as follows:
// marko.bozikovic@alterbox.net
// bozho@kset.org
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// FileStream.h - implementation of IStream interface on any file
// (not really COM, I'm faking it here a bit :-)
//
#pragma once
/////////////////////////////////////////////////////////////////////////////
// CreateFileStream - opens/creates a file and returns an IStream interface
HRESULT CreateFileStream(
LPCTSTR lpFileName, // file name
DWORD dwDesiredAccess, // access mode
DWORD dwShareMode, // share mode
LPSECURITY_ATTRIBUTES lpSecurityAttributes, // SD
DWORD dwCreationDisposition, // how to create
DWORD dwFlagsAndAttributes, // file attributes
HANDLE hTemplateFile, // handle to template file
IStream** ppStream // pointer to IStream interface
);
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// FileStream class
class FileStream : public IStream {
public:
FileStream(HANDLE hFile);
~FileStream();
// IUnknown methods
STDMETHOD(QueryInterface)(REFIID riid, void ** ppv) {
if (riid == IID_IUnknown) {
*ppv = static_cast<IStream*>(this);
} else if (riid == IID_IStream) {
*ppv = static_cast<IStream*>(this);
} else {
*ppv = NULL;
return E_NOINTERFACE;
}
static_cast<IUnknown*>(*ppv)->AddRef();
return S_OK;
};
STDMETHOD_(ULONG, AddRef)(void) {
return ::InterlockedIncrement(&m_lRefCount);
};
STDMETHOD_(ULONG, Release)(void) {
long l = ::InterlockedDecrement(&m_lRefCount);
if (l == 0) delete this;
return l;
};
// IStream methods
STDMETHOD(Read)(void *pv, ULONG cb, ULONG *pcbRead);
STDMETHOD(Write)(void const *pv, ULONG cb, ULONG *pcbWritten);
STDMETHOD(Seek)(LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER *plibNewPosition);
STDMETHOD(SetSize)(ULARGE_INTEGER libNewSize);
STDMETHOD(CopyTo)(IStream *pstm, ULARGE_INTEGER cb, ULARGE_INTEGER *pcbRead, ULARGE_INTEGER *pcbWritten);
STDMETHOD(Commit)(DWORD grfCommitFlags);
STDMETHOD(Revert)(void);
STDMETHOD(LockRegion)(ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType);
STDMETHOD(UnlockRegion)(ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType);
STDMETHOD(Stat)(STATSTG *pstatstg, DWORD grfStatFlag);
STDMETHOD(Clone)(IStream **ppstm);
private: // private data
// reference count
long m_lRefCount;
// file handle
HANDLE m_hFile;
};
/////////////////////////////////////////////////////////////////////////////
-1200
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __BUTTON_DEFINES_H
+1 -1
View File
@@ -7,7 +7,7 @@
#include "renderworld.h"
#include "random.h"
#include "worldman.h"
#include "interface.h"
#include "Interface.h"
#include "Isometric Utils.h"
#include "editscreen.h"
#include "EditorDefines.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __CURSOR_MODES_H
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITOR_CALLBACK_PROTOTYPES_H
+1 -1
View File
@@ -17,7 +17,7 @@
#include "environment.h"
#include "worlddef.h"
#include "Exit Grids.h"
#include "Worldman.h"
#include "worldman.h"
BOOLEAN gfShowExitGrids = FALSE;
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITOR_MODES_H
+2 -2
View File
@@ -5,7 +5,7 @@
//sgp
#include "Button System.h"
#include "Font Control.h"
#include "debug.h"
#include "DEBUG.H"
//editor
#include "EditorDefines.h"
#include "Editor Callback Prototypes.h"
@@ -14,7 +14,7 @@
#include "EditorMapInfo.h"
//tactical
#include "Soldier Create.h"
#include "overhead types.h"
#include "Overhead Types.h"
#include "local.h"
#include "Text.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITOR_TASKBAR_CREATION_H
+2 -2
View File
@@ -11,13 +11,13 @@
#include "WorldDat.h"
#include "Render Dirty.h"
#include "sysutil.h"
#include "wordwrap.h"
#include "WordWrap.h"
#include "environment.h"
#include "Interface Items.h"
#include "Soldier Find.h"
#include "World Items.h"
#include "Text.h"
#include "Overhead map.h"
#include "overhead map.h"
#include "Cursor Modes.h"
#include "editscreen.h"
#include "EditorTerrain.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITOR_TASKBAR_UTILS_H
+2 -2
View File
@@ -6,7 +6,7 @@
#include "worldman.h"
#include "smooth.h"
#include "input.h"
#include "debug.h"
#include "DEBUG.H"
#include "Isometric Utils.h"
#include "editscreen.h"
@@ -15,7 +15,7 @@
#include "Cursor Modes.h"
#include "Exit Grids.h"
//dnl ch86 110214
#include "keys.h"
#include "Keys.h"
#include "EditorItems.h"
#include "EditorMapInfo.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITOR_UNDO_H
+1 -1
View File
@@ -18,7 +18,7 @@
#include "Editor Modes.h"
#include "Smoothing Utils.h"
#include "Text Input.h"
#include "keys.h"
#include "Keys.h"
#include "environment.h"
#include "selectwin.h"
#include "Simple Render Utils.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITORBUILDINGS_H
+2 -2
View File
@@ -1,10 +1,10 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITORDEFINES_H
#define __EDITORDEFINES_H
#include "Types.h"
#include "types.h"
#include "Button Defines.h"
+10 -10
View File
@@ -9,34 +9,34 @@
#include "vobject.h"
#include "mousesystem.h"
#include "Button System.h"
#include "wcheck.h"
#include "WCheck.h"
#include "vsurface.h"
#include "input.h"
#include "sysutil.h"
#include "font.h"
#include "Font.h"
#include "Font Control.h"
#include "editscreen.h"
#include "selectwin.h"
#include "video.h"
#include "vobject_blitters.h"
#include "interface panels.h"
#include "interface items.h"
#include "text.h"
#include "utilities.h"
#include "Interface Panels.h"
#include "Interface Items.h"
#include "Text.h"
#include "Utilities.h"
#include "Action Items.h"
#include "World Items.h"
#include "EditorDefines.h"
#include "EditorItems.h"
#include "EditorMercs.h"
#include "weapons.h"
#include "Weapons.h"
#include "Editor Taskbar Utils.h"
#include "wordwrap.h"
#include "WordWrap.h"
#include "Item Statistics.h"
#include "Simple Render Utils.h"
#include "worldman.h"
#include "random.h"
#include "Pits.h"
#include "keys.h"
#include "pits.h"
#include "Keys.h"
#include "InterfaceItemImages.h"
#include "Editor Undo.h"//dnl ch86 220214
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITORITEMS_H
+9 -9
View File
@@ -9,23 +9,23 @@
#include "vobject.h"
#include "mousesystem.h"
#include "Button System.h"
#include "wcheck.h"
#include "WCheck.h"
#include "vsurface.h"
#include "line.h"
#include "input.h"
#include "sysutil.h"
#include "font.h"
#include "Font.h"
#include "Font Control.h"
#include "editscreen.h"
#include "selectwin.h"
#include "video.h"
#include "vobject_blitters.h"
#include "interface panels.h"
#include "interface items.h"
#include "utilities.h"
#include "Interface Panels.h"
#include "Interface Items.h"
#include "Utilities.h"
#include "World Items.h"
#include "worldman.h"
#include "overhead.h" //GetSoldier
#include "Overhead.h" //GetSoldier
#include "renderworld.h"
#include "Animation Data.h"
#include "Animation Control.h"
@@ -37,11 +37,11 @@
#include "Soldier Init List.h"
#include "strategicmap.h"
#include "Soldier Add.h"
#include "Soldier Profile Type.h"
#include "soldier profile type.h"
#include "Soldier Profile.h"
#include "Text Input.h"
#include "Random.h"
#include "wordwrap.h"
#include "random.h"
#include "WordWrap.h"
#include "EditorItems.h"
#include "Editor Taskbar Utils.h"
#include "Exit Grids.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITORMAPINFO_H
+10 -10
View File
@@ -9,24 +9,24 @@
#include "vobject.h"
#include "mousesystem.h"
#include "Button System.h"
#include "wcheck.h"
#include "WCheck.h"
#include "vsurface.h"
#include "line.h"
#include "input.h"
#include "sysutil.h"
#include "font.h"
#include "Font.h"
#include "Font Control.h"
#include "editscreen.h"
#include "selectwin.h"
#include "video.h"
#include "vobject_blitters.h"
#include "interface panels.h"
#include "interface items.h"
#include "text.h"
#include "utilities.h"
#include "Interface Panels.h"
#include "Interface Items.h"
#include "Text.h"
#include "Utilities.h"
#include "World Items.h"
#include "worldman.h"
#include "overhead.h" //GetSoldier
#include "Overhead.h" //GetSoldier
#include "renderworld.h"
#include "Animation Data.h"
#include "Animation Control.h"
@@ -39,11 +39,11 @@
#include "Soldier Init List.h"
#include "strategicmap.h"
#include "Soldier Add.h"
#include "Soldier Profile Type.h"
#include "soldier profile type.h"
#include "Soldier Profile.h"
#include "Text Input.h"
#include "Random.h"
#include "wordwrap.h"
#include "random.h"
#include "WordWrap.h"
#include "EditorItems.h"
#include "Editor Taskbar Utils.h"
#include "Exit Grids.h"
+1 -1
View File
@@ -1,6 +1,6 @@
#pragma once
#include "BuildDefines.h"
#include "builddefines.h"
//-----------------------------------------------
//
+4 -4
View File
@@ -9,18 +9,18 @@
#include "vobject.h"
#include "mousesystem.h"
#include "Button System.h"
#include "wcheck.h"
#include "WCheck.h"
#include "vsurface.h"
#include "input.h"
#include "sysutil.h"
#include "font.h"
#include "Font.h"
#include "Font Control.h"
#include "editscreen.h"
#include "selectwin.h"
#include "video.h"
#include "vobject_blitters.h"
#include "interface panels.h"
#include "utilities.h"
#include "Interface Panels.h"
#include "Utilities.h"
#include "World Items.h"
#include "EditorDefines.h"
#include "EditorTerrain.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDITORTERRAIN_H
+3 -3
View File
@@ -7,7 +7,7 @@
#include "types.h"
#include "mousesystem.h"
#include "Button System.h"
#include "font control.h"
#include "Font Control.h"
#include "EditorDefines.h"
#include "Editor Taskbar Utils.h"
#include "EditorMercs.h"
@@ -20,10 +20,10 @@
#include "Weapons.h"
#include "Items.h"
#include "editscreen.h"
#include "Random.h"
#include "random.h"
#include "Handle Items.h"
#include "World Items.h"
#include "PopupMenu.h"
#include "popupmenu.h"
#include "pits.h"
#include "Text.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifndef __ITEM_STATISTICS_H
#define __ITEM_STATISTICS_H
+2 -2
View File
@@ -5,8 +5,8 @@
#include <stdio.h>
#include "Font Control.h"
#include "renderworld.h"
#include "render dirty.h"
#include "loadscreen.h"
#include "Render Dirty.h"
#include "LoadScreen.h"
#include "selectwin.h"
#include "EditorDefines.h"
#include "messagebox.h"
+2 -2
View File
@@ -1,5 +1,5 @@
#include "BuildDefines.h"
#include "Fileman.h"
#include "builddefines.h"
#include "FileMan.h"
#define FILENAME_BUFLEN (30 + 4 + 1)//dnl ch39 190909 +4 is for ".dat", +1 is for '\0' //dnl ch81 021213
+1 -1
View File
@@ -4,7 +4,7 @@
#include "types.h"
#include "Road Smoothing.h"
#include "tiledat.h"
#include "TileDat.h"
#include "worlddef.h"
#include "worldman.h"
#include "Editor Undo.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
+4 -4
View File
@@ -15,22 +15,22 @@
#include "line.h"
#include "input.h"
#include "vobject_blitters.h"
#include "loadscreen.h"
#include "LoadScreen.h"
#include "Text Input.h"
#include "mousesystem.h"
#include "strategicmap.h"
#include "Fileman.h"
#include "FileMan.h"
#include "Exit Grids.h"
#include "Map Information.h"
#include "Summary Info.h"
#include "Animated ProgressBar.h"
#include "worlddef.h"
#include "worlddat.h"
#include "WorldDat.h"
#include "EditorDefines.h"
#include "editscreen.h"
#include "english.h"
#include "World Items.h"
#include "text.h"
#include "Text.h"
#include "Soldier Create.h"
#include "GameVersion.h"
#include "Campaign Types.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __SECTOR_SUMMARY_H
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __SMARTMETHOD_H
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __SMOOTHING_UTILS_H
+2 -2
View File
@@ -1,10 +1,10 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __SUMMARY_INFO_H
#define __SUMMARY_INFO_H
#include "Types.h"
#include "types.h"
//dnl ch28
#define GLOBAL_SUMMARY_VERSION 15
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __EDIT_SYS_H
+9 -9
View File
@@ -12,22 +12,22 @@
#include "edit_sys.h"
#include "screenids.h"
#include "editscreen.h"
#include "sys globals.h"
#include "Sys Globals.h"
#include "SmartMethod.h"
#include "selectwin.h"
#include "Interface.h"
#include "lighting.h"
#include "Interactive Tiles.h"
#include "overhead types.h"
#include "Overhead Types.h"
#include "Overhead.h"
#include "Handle UI.h"
#include "Event Pump.h"
#include "world items.h"
#include "loadscreen.h"
#include "render dirty.h"
#include "isometric utils.h"
#include "LoadScreen.h"
#include "Render Dirty.h"
#include "Isometric Utils.h"
#include "message.h"
#include "render fun.h"
#include "Render Fun.h"
#include "popupmenu.h"
#include "overhead map.h"
#include "EditorDefines.h"
@@ -39,7 +39,7 @@
#include "newsmooth.h"
#include "Smoothing Utils.h"
#include "messagebox.h"
#include "messageboxscreen.h"
#include "MessageBoxScreen.h"
#include "Soldier Create.h"
#include "Soldier Init List.h"
#include "Text Input.h"
@@ -59,7 +59,7 @@
#include "line.h"
#include "english.h"
#include "random.h"
#include "scheduling.h"
#include "Scheduling.h"
#include "Road Smoothing.h"
#include "strategicmap.h"
#include "message.h"
@@ -70,7 +70,7 @@
#include "GameSettings.h"
#include "Summary Info.h"
#include "connect.h"//dnl
#include "cursors.h"//dnl ch2 210909
#include "Cursors.h"//dnl ch2 210909
#include "Cursor Control.h"//dnl ch2 210909
#include "maputility.h"//dnl ch49 061009
#include "Text.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef EDITSCREEN_H
+1 -1
View File
@@ -4,7 +4,7 @@
#include "vobject.h"
#include "video.h"
#include "font.h"
#include "Font.h"
#include "Font Control.h"
#include "messagebox.h"
#include "input.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __MESSAGEBOX_H
+1 -1
View File
@@ -14,7 +14,7 @@
#include "Editor Undo.h"
#include "Structure Internals.h"
#include "environment.h"
#include "Random.h"
#include "random.h"
#include "Render Fun.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __NEWSMOOTH_H
+6 -6
View File
@@ -16,18 +16,18 @@
#include "tiledef.h"
#include "sysutil.h"
#include "font.h"
#include "Font.h"
#include "Font Control.h"
#include "line.h"
#include "worlddat.h"
#include "WorldDat.h"
#include "selectwin.h"
#include "popupmenu.h"
#include "EditorDefines.h"
#include "render dirty.h"
#include "debug.h"
#include "Render Dirty.h"
#include "DEBUG.H"
#include "mousesystem.h"
#include "cursors.h"
#include "overhead types.h"
#include "Cursors.h"
#include "Overhead Types.h"
#include "EditorMercs.h"
#include "Scheduling.h"
#include "english.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
//popupmenu.h
+1 -1
View File
@@ -6,7 +6,7 @@
#include "tiledef.h"
#include "vsurface.h"
#include "worlddat.h"
#include "WorldDat.h"
#include "random.h"
#include "sysutil.h"
#include "Font Control.h"
+2 -2
View File
@@ -1,10 +1,10 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef _SELECTION_WIN_H_
#define _SELECTION_WIN_H_
#include "Types.h"
#include "types.h"
#include "vobject.h"
#include "mousesystem.h"
+3 -3
View File
@@ -5,15 +5,15 @@
#include "stdlib.h"
#include "FileMan.h"
#include "time.h"
#include "debug.h"
#include "DEBUG.H"
#include "tiledef.h"
#include "worlddef.h"
#include "worldman.h"
#include "smooth.h"
#include "editscreen.h"
#include "selectwin.h"
#include "isometric utils.h"
#include "structure wrap.h"
#include "Isometric Utils.h"
#include "Structure Wrap.h"
#include "Exit Grids.h"
#include "Editor Undo.h"
+1 -1
View File
@@ -1,4 +1,4 @@
#include "BuildDefines.h"
#include "builddefines.h"
#ifdef JA2EDITOR
#ifndef __SMOOTH_H
+11 -11
View File
@@ -1,24 +1,24 @@
#include "Types.h"
#include "types.h"
#include "Credits.h"
#include "vsurface.h"
#include "mousesystem.h"
#include "Text.h"
#include "wordwrap.h"
#include "Video.h"
#include "render dirty.h"
#include "WordWrap.h"
#include "video.h"
#include "Render Dirty.h"
#include "local.h"
#include "utilities.h"
#include "Utilities.h"
#include "WCheck.h"
#include "screenids.h"
#include "Font Control.h"
#include "cursors.h"
#include "font.h"
#include "wordwrap.h"
#include "Cursors.h"
#include "Font.h"
#include "WordWrap.h"
#include "sysutil.h"
#include "Input.h"
#include "input.h"
#include "english.h"
#include "encrypted file.h"
#include "Random.h"
#include "Encrypted File.h"
#include "random.h"
//externals
extern HVSURFACE ghFrameBuffer;
+4 -4
View File
@@ -1,12 +1,12 @@
#include "sgp.h"
#include "screenids.h"
#include "Timer Control.h"
#include "sys globals.h"
#include "fade screen.h"
#include "Sys Globals.h"
#include "Fade Screen.h"
#include "sysutil.h"
#include "vobject_blitters.h"
#include "cursor control.h"
#include "music control.h"
#include "Cursor Control.h"
#include "Music Control.h"
#include "Render Dirty.h"
#include "gameloop.h"
+10 -10
View File
@@ -1,6 +1,6 @@
#include "Types.h"
#include "types.h"
#include "FeaturesScreen.h"
#include "Video.h"
#include "video.h"
#include "Font Control.h"
#include "Game Clock.h"
#include "Text Input.h"
@@ -10,29 +10,29 @@
#include "WordWrap.h"
#include "WCheck.h"
#include "Utilities.h"
#include "Debug.h"
#include "DEBUG.H"
#include "Sound Control.h"
#include "Ambient Control.h"
#include "Worlddat.h"
#include "Worlddef.h"
#include "WorldDat.h"
#include "worlddef.h"
#include "GameSettings.h"
#include "Game Init.h"
#include "English.h"
#include "english.h"
#include "Overhead.h"
#include "Gap.h"
#include "GAP.H"
#include "Cursors.h"
#include "SysUtil.h"
#include "sysutil.h"
#include "Exit Grids.h"
#include "Text.h"
#include "Interface Control.h"
#include "Message.h"
#include "message.h"
#include "Multi Language Graphic Utils.h"
#include "Map Information.h"
#include "Sys Globals.h"
#include "insurance.h"
#include "connect.h"
#include "WorldMan.h"
#include "worldman.h"
#include "Init.h"
#include "Game Events.h"
+7 -7
View File
@@ -1,19 +1,19 @@
#include "Types.h"
#include "types.h"
#include "GameInitOptionsScreen.h"
#include "GameSettings.h"
#include "Utilities.h"
#include "wCheck.h"
#include "WCheck.h"
#include "Font Control.h"
#include "WordWrap.h"
#include "Render Dirty.h"
#include "Input.h"
#include "input.h"
#include "Options Screen.h"
#include "English.h"
#include "Sysutil.h"
#include "english.h"
#include "sysutil.h"
#include "Fade Screen.h"
#include "Cursor Control.h"
#include "Music Control.h"
#include "cursors.h"
#include "Cursors.h"
#include "Intro.h"
#include "Text.h"
#include "_Ja25EnglishText.h"
@@ -21,7 +21,7 @@
#include "gameloop.h"
#include "connect.h"
#include "saveloadscreen.h"
#include "SaveLoadScreen.h"
#ifdef JA2UB
#include "ub_config.h"
+1 -1
View File
@@ -85,7 +85,7 @@ typedef struct
UINT8 usLevelModifierLowLimit;
UINT8 usLevelModifierHighLimit;
BOOLEAN bAllowUnrestrictedXPLevels;
BOOLEAN bQueenLosingControlOfSector;
UINT8 bQueenLosingControlOfSector;
BOOLEAN bBloodcatAmbush;
BOOLEAN bAirRaidLookForDive;
UINT32 iGetNumberOfTurnsPowerGenFanWillBeStoppedFor; //UB
+9 -6
View File
@@ -1,7 +1,7 @@
#include "Types.h"
#include "types.h"
#include "GameSettings.h"
#include "FileMan.h"
#include "String.h"
#include "string.h"
#include "Sound Control.h"
#include "SaveLoadScreen.h"
#include "Music Control.h"
@@ -9,19 +9,19 @@
#include "Overhead.h"
#include "GameVersion.h"
#include "LibraryDataBase.h"
#include "Debug.h"
#include "DEBUG.H"
#include "HelpScreen.h"
#include "INIReader.h"
#include "Shade Table Util.h"
#include "soldier profile type.h"
#include "Random.h"
#include "random.h"
#include "SaveLoadGame.h"
#include "sgp.h"
#include "screenids.h"
#include "Font Control.h"
#include "message.h"
#include "Campaign.h"
#include "meanwhile.h"
#include "Meanwhile.h"
#include "strategicmap.h"
#include "Queen Command.h"
#include "Game Clock.h"
@@ -1679,6 +1679,9 @@ void LoadGameExternalOptions()
//JMich.BackpackClimb
gGameExternalOptions.sBackpackWeightToClimb = iniReader.ReadInteger("Tactical Gameplay Settings", "MAX_BACKPACK_WEIGHT_TO_CLIMB", -1);
gGameExternalOptions.fUseGlobalBackpackSettings = iniReader.ReadBoolean("Tactical Gameplay Settings", "USE_GLOBAL_BACKPACK_SETTINGS", TRUE);
// Buscher
gGameExternalOptions.ubBackPackWeightFactorForAPPenalty = iniReader.ReadInteger("Tactical Gameplay Settings", "BACKPACK_WEIGHT_FACTOR", 50, 1, 250);
// sevenfm
gGameExternalOptions.fShowEnemyWeapon = iniReader.ReadBoolean("Tactical Gameplay Settings","SHOW_ENEMY_WEAPON", FALSE);
@@ -2602,7 +2605,7 @@ void LoadSkillTraitsExternalSettings()
gSkillTraitValues.ubNumberOfMajorTraitsAllowed = iniReader.ReadInteger( "Generic Traits Settings", "NUMBER_OF_MAJOR_TRAITS_ALLOWED", 3, 2, gSkillTraitValues.ubMaxNumberOfTraits - 1);
gSkillTraitValues.ubMaxNumberOfTraitsForIMP = iniReader.ReadInteger("Generic Traits Settings","MAX_NUMBER_OF_TRAITS_FOR_IMP", 3, 2, 30);
gSkillTraitValues.ubNumberOfMajorTraitsAllowedForIMP = iniReader.ReadInteger( "Generic Traits Settings", "NUMBER_OF_MAJOR_TRAITS_ALLOWED_FOR_IMP", 2, 2, min( gSkillTraitValues.ubNumberOfMajorTraitsAllowed, gSkillTraitValues.ubMaxNumberOfTraitsForIMP - 1 ) );
gSkillTraitValues.ubNumberOfMajorTraitsAllowedForIMP = iniReader.ReadInteger( "Generic Traits Settings", "NUMBER_OF_MAJOR_TRAITS_ALLOWED_FOR_IMP", 2, 2, min( gSkillTraitValues.ubNumberOfMajorTraitsAllowed, gSkillTraitValues.ubMaxNumberOfTraitsForIMP ) );
// Allow an exception in number of traits for Special Merc?
//gSkillTraitValues.fAllowSpecialMercTraitsException = iniReader.ReadBoolean("Generic Traits Settings","ALLOW_EXCEPTION_FOR_SPECIAL_MERC", TRUE);
+4 -1
View File
@@ -1,7 +1,7 @@
#ifndef _GAME_SETTINGS__H_
#define _GAME_SETTINGS__H_
#include "Types.h"
#include "types.h"
#include "Strategic Status.h"
#include "Morale.h"
#include "GameInitOptionsScreen.h"
@@ -1361,6 +1361,9 @@ typedef struct
INT16 sBackpackWeightToClimb;
BOOLEAN fUseGlobalBackpackSettings;
// Buscher
UINT8 ubBackPackWeightFactorForAPPenalty;
// sevenfm: show enemy weapon above soldier in tactical
BOOLEAN fShowEnemyWeapon;
BOOLEAN fShowEnemyExtendedInfo;
+1 -1
View File
@@ -1,4 +1,4 @@
#include "Types.h"
#include "types.h"
#include "GameVersion.h"
//
+7 -7
View File
@@ -1,19 +1,19 @@
#include "sgp.h"
#include "sysutil.h"
#include "vobject_blitters.h"
#include "wcheck.h"
#include "cursors.h"
#include "font control.h"
#include "cursor control.h"
#include "render dirty.h"
#include "WCheck.h"
#include "Cursors.h"
#include "Font Control.h"
#include "Cursor Control.h"
#include "Render Dirty.h"
#include "Text.h"
#include "Utilities.h"
#include "WordWrap.h"
#include "Font Control.h"
#include "text.h"
#include "Text.h"
#include "HelpScreen.h"
#include "HelpScreenText.h"
#include "Line.h"
#include "line.h"
#include "Game Clock.h"
#include "GameSettings.h"
#include "laptop.h"
+8 -8
View File
@@ -1,7 +1,7 @@
#include "builddefines.h"
#include <stdio.h>
#include "sgp.h"
#include "Gameloop.h"
#include "gameloop.h"
#include "Screens.h"
#include "INIReader.h"
#include "vobject_blitters.h"
@@ -10,7 +10,7 @@
#include "sysutil.h"
#include "worlddef.h"
#include "Animation Data.h"
#include "overhead.h"
#include "Overhead.h"
#include "Font Control.h"
#include "Button System.h"
#include "Timer Control.h"
@@ -21,18 +21,18 @@
#include "Event Pump.h"
#include "lighting.h"
#include "Cursor Control.h"
#include "music control.h"
#include "Music Control.h"
#include "video.h"
#include "mapscreen.h"
#include "interface items.h"
#include "Maputility.h"
#include "Interface Items.h"
#include "maputility.h"
#include "strategic.h"
#include "dialogue control.h"
#include "Dialogue Control.h"
#include "Text.h"
#include "laptop.h"
#include "NPC.h"
#include "MercTextBox.h"
#include "tile cache.h"
#include "Tile Cache.h"
#include "strategicmap.h"
#include "Map Information.h"
#include "Shade Table Util.h"
@@ -44,7 +44,7 @@
#include "jascreens.h"
#include "XML.h"
#include "SaveLoadGame.h"
#include "weapons.h"
#include "Weapons.h"
#include "Strategic Movement.h"
#include "Vehicles.h"
#include "Multilingual Text Code Generator.h"
+5 -5
View File
@@ -1,14 +1,14 @@
#include "sgp.h"
#include "sysutil.h"
#include "vobject_blitters.h"
#include "font control.h"
#include "cursor control.h"
#include "render dirty.h"
#include "Font Control.h"
#include "Cursor Control.h"
#include "Render Dirty.h"
#include "Text.h"
#include "Utilities.h"
#include "WordWrap.h"
#include "text.h"
#include "Line.h"
#include "Text.h"
#include "line.h"
#include "Intro.h"
#include "Cinematics.h"
#include "Cinematics Bink.h"
+2 -2
View File
@@ -1,7 +1,7 @@
#include "Types.h"
#include "types.h"
#include "vsurface.h"
#include "mainmenuscreen.h"
#include "Video.h"
#include "video.h"
#include "Timer Control.h"
#include "Multi Language Graphic Utils.h"
#include <stdio.h>
+18 -18
View File
@@ -4,7 +4,7 @@
#include <string.h>
#include "Render Fun.h"
#include "stdlib.h"
#include "debug.h"
#include "DEBUG.H"
#include "MemMan.h"
#include "Overhead Types.h"
//#include "Soldier Control.h"
@@ -12,21 +12,21 @@
#include "Animation Data.h"
#include "Animation Control.h"
#include <math.h>
#include "pathai.h"
#include "Random.h"
#include "PATHAI.H"
#include "random.h"
#include "Isometric Utils.h"
#include "renderworld.h"
#include "video.h"
#include "weapons.h"
#include "Weapons.h"
#include "vobject_blitters.h"
#include "Handle UI.h"
#include "Event pump.h"
#include "Event Pump.h"
#include "ai.h"
#include "interface.h"
#include "Interface.h"
#include "lighting.h"
#include "faces.h"
#include "Soldier Profile.h"
#include "soldier macros.h"
#include "Soldier macros.h"
#include "english.h"
#include "Squads.h"
@@ -34,33 +34,33 @@
#include "Networking.h"
#include "NetworkEvent.h"
#endif
#include "items.h"
#include "Soundman.h"
#include "utilities.h"
#include "Strategic.h"
#include "Items.h"
#include "soundman.h"
#include "Utilities.h"
#include "strategic.h"
#include "soldier tile.h"
#include "Smell.h"
#include "Keys.h"
#include "dialogue control.h"
#include "soldier functions.h"
#include "Dialogue Control.h"
#include "Soldier Functions.h"
#include "Exit Grids.h"
#include "Quests.h"
#include "message.h"
#include "SkillCheck.h"
#include "interface dialogue.h"
#include "interface Dialogue.h"
#include "GameSettings.h"
#include "ShopKeeper Interface.h"
#include "vehicles.h"
#include "Vehicles.h"
#include "strategicmap.h"
#include "morale.h"
#include "drugs and alcohol.h"
#include "Morale.h"
#include "Drugs And Alcohol.h"
#include "SkillCheck.h"
#include "Map Information.h"
#include "Buildings.h"
#include "Text.h"
#include "Campaign Types.h"
#include "Strategic Status.h"
#include "civ quotes.h"
#include "Civ Quotes.h"
#include "Debug Control.h"
#ifdef JA2UB
+1 -1
View File
@@ -1,7 +1,7 @@
#ifndef JA25UPDATE__C_
#define JA25UPDATE__C_
#include "Types.h"
#include "types.h"
#ifdef JA2UB
+4 -4
View File
@@ -4,12 +4,12 @@
#include "Campaign Types.h"
#include "Game Clock.h"
#include "GameSettings.h"
#include "Random.h"
#include "Debug.h"
#include "random.h"
#include "DEBUG.H"
#include "local.h"
#include "Font Control.h"
#include "font.h"
#include "render dirty.h"
#include "Font.h"
#include "Render Dirty.h"
#include "Strategic Movement.h"
#include "UndergroundInit.h"
#include <string>
+6 -6
View File
@@ -1,26 +1,26 @@
#include "sgp.h"
#include "screenids.h"
#include "Timer Control.h"
#include "fade screen.h"
#include "Fade Screen.h"
#include "sysutil.h"
#include "vobject_blitters.h"
#include "MercTextBox.h"
#include "cursors.h"
#include "font control.h"
#include "Cursors.h"
#include "Font Control.h"
#include "Map Screen Interface.h"
#include "renderworld.h"
#include "gameloop.h"
#include "english.h"
#include "GameSettings.h"
#include "cursor control.h"
#include "Cursor Control.h"
#include "laptop.h"
#include "text.h"
#include "Text.h"
#include "Text Input.h"
#include "overhead map.h"
#include "MPChatScreen.h"
#include "WordWrap.h"
#include "message.h"
#include "utilities.h"
#include "Utilities.h"
#include "connect.h"
#define CHATBOX_WIDTH 310 // 350 is the max size, the PrepareMercPopupBox will add the X_MARGIN to both sides
+8 -8
View File
@@ -1,19 +1,19 @@
#include "Types.h"
#include "types.h"
#include "MPConnectScreen.h"
#include "GameSettings.h"
#include "Utilities.h"
#include "wCheck.h"
#include "WCheck.h"
#include "Font Control.h"
#include "WordWrap.h"
#include "Render Dirty.h"
#include "Input.h"
#include "input.h"
#include "Options Screen.h"
#include "English.h"
#include "Sysutil.h"
#include "english.h"
#include "sysutil.h"
#include "Fade Screen.h"
#include "Cursor Control.h"
#include "Music Control.h"
#include "cursors.h"
#include "Cursors.h"
#include "Text.h"
#include "Text Input.h"
#include "Soldier Profile.h"
@@ -25,8 +25,8 @@
#include "connect.h"
#include "network.h" // for client name
#include "message.h"
#include "init.h"
#include "xml.h"
#include "Init.h"
#include "XML.h"
////////////////////////////////////////////
+9 -9
View File
@@ -1,18 +1,18 @@
#include "Types.h"
#include "types.h"
#include "MPHostScreen.h"
#include "GameSettings.h"
#include "Utilities.h"
#include "wCheck.h"
#include "WCheck.h"
#include "Font Control.h"
#include "WordWrap.h"
#include "Render Dirty.h"
#include "Input.h"
#include "input.h"
#include "Options Screen.h"
#include "English.h"
#include "Sysutil.h"
#include "english.h"
#include "sysutil.h"
#include "Fade Screen.h"
#include "Cursor Control.h"
#include "cursors.h"
#include "Cursors.h"
#include "Intro.h"
#include "Text.h"
#include "Text Input.h"
@@ -22,7 +22,7 @@
#include "gameloop.h"
#include "connect.h"
#include "network.h"
#include "saveloadscreen.h"
#include "SaveLoadScreen.h"
#include "GameInitOptionsScreen.h"
@@ -31,9 +31,9 @@
#include <vfs/Tools/vfs_property_container.h>
#include <vfs/Core/vfs_os_functions.h>
#include "MPJoinScreen.h"
#include "MainMenuScreen.h"
#include "mainmenuscreen.h"
#include "Init.h"
#include "xml.h"
#include "XML.h"
////////////////////////////////////////////
//
+9 -9
View File
@@ -1,18 +1,18 @@
#include "Types.h"
#include "types.h"
#include "MPJoinScreen.h"
#include "GameSettings.h"
#include "Utilities.h"
#include "wCheck.h"
#include "WCheck.h"
#include "Font Control.h"
#include "WordWrap.h"
#include "Render Dirty.h"
#include "Input.h"
#include "input.h"
#include "Options Screen.h"
#include "English.h"
#include "Sysutil.h"
#include "english.h"
#include "sysutil.h"
#include "Fade Screen.h"
#include "Cursor Control.h"
#include "cursors.h"
#include "Cursors.h"
#include "Text.h"
#include "Text Input.h"
#include "Soldier Profile.h"
@@ -20,15 +20,15 @@
#include "gameloop.h"
#include "connect.h"
#include "network.h" // for client name
#include "saveloadscreen.h"
#include "game init.h"
#include "SaveLoadScreen.h"
#include "Game Init.h"
#include <vfs/Core/vfs.h>
#include <vfs/Core/vfs_init.h>
#include <vfs/Tools/vfs_property_container.h>
#include <vfs/Core/vfs_os_functions.h>
#include "Random.h"
#include "random.h"
////////////////////////////////////////////
//
+6 -6
View File
@@ -1,19 +1,19 @@
#include "Types.h"
#include "types.h"
#include "MPScoreScreen.h"
#include "GameSettings.h"
#include "Utilities.h"
#include "wCheck.h"
#include "WCheck.h"
#include "Font Control.h"
#include "WordWrap.h"
#include "Render Dirty.h"
#include "Input.h"
#include "input.h"
#include "Options Screen.h"
#include "English.h"
#include "Sysutil.h"
#include "english.h"
#include "sysutil.h"
#include "Fade Screen.h"
#include "Cursor Control.h"
#include "Music Control.h"
#include "cursors.h"
#include "Cursors.h"
#include "Intro.h"
#include "Text.h"
#include "Text Input.h"
+14 -14
View File
@@ -4,35 +4,35 @@
#include "sysutil.h"
#include "vobject_blitters.h"
#include "MercTextBox.h"
#include "cursors.h"
#include "font control.h"
#include "Cursors.h"
#include "Font Control.h"
#include "mainmenuscreen.h"
#include "cursor control.h"
#include "render dirty.h"
#include "music control.h"
#include "Cursor Control.h"
#include "Render Dirty.h"
#include "Music Control.h"
#include "GameSettings.h"
#include "SaveLoadScreen.h"
#include "SaveLoadGame.h"
#include "Options Screen.h"
#include "English.h"
#include "Gameloop.h"
#include "english.h"
#include "gameloop.h"
#include "Game Init.h"
#include "Utilities.h"
#include "WordWrap.h"
#include "Font Control.h"
#include "text.h"
#include "Text.h"
#include "Multi Language Graphic Utils.h"
#include "Encrypted File.h"
#include "ja2 splash.h"
#include "JA2 Splash.h"
#include "GameVersion.h"
#include "gamesettings.h"
#include "GameSettings.h"
#include "connect.h"
#include "strategic.h"
#include "strategic movement.h"
#include "overhead.h"
#include "init.h"
#include "xml.h"
#include "Strategic Movement.h"
#include "Overhead.h"
#include "Init.h"
#include "XML.h"
#include <vfs/Core/vfs.h>
#include <vfs/Core/vfs_profile.h>
+6 -6
View File
@@ -1,21 +1,21 @@
#include "sgp.h"
#include "screenids.h"
#include "fade screen.h"
#include "Fade Screen.h"
#include "sysutil.h"
#include "vobject_blitters.h"
#include "MercTextBox.h"
#include "cursors.h"
#include "messageboxscreen.h"
#include "font control.h"
#include "Cursors.h"
#include "MessageBoxScreen.h"
#include "Font Control.h"
#include "Map Screen Interface.h"
#include "renderworld.h"
#include "gameloop.h"
#include "english.h"
#include "GameSettings.h"
#include "Interface Control.h"
#include "cursor control.h"
#include "Cursor Control.h"
#include "laptop.h"
#include "text.h"
#include "Text.h"
#include "Text Input.h"
#include "overhead map.h"
#include "DropDown.h" // added by Flugente
+10 -10
View File
@@ -1,6 +1,6 @@
#include "Types.h"
#include "types.h"
#include "Options Screen.h"
#include "Video.h"
#include "video.h"
#include "Font Control.h"
#include "Game Clock.h"
#include "Text Input.h"
@@ -11,24 +11,24 @@
#include "WCheck.h"
#include "Utilities.h"
#include "Slider.h"
#include "Debug.h"
#include "DEBUG.H"
#include "Music Control.h"
#include "Sound Control.h"
#include "soundman.h"
#include "Ambient Control.h"
#include "Worlddat.h"
#include "Worlddef.h"
#include "WorldDat.h"
#include "worlddef.h"
#include "GameSettings.h"
#include "Game Init.h"
#include "English.h"
#include "english.h"
#include "Overhead.h"
#include "Gap.h"
#include "GAP.H"
#include "Cursors.h"
#include "SysUtil.h"
#include "sysutil.h"
#include "Exit Grids.h"
#include "Text.h"
#include "Interface Control.h"
#include "Message.h"
#include "message.h"
#include "Multi Language Graphic Utils.h"
#include "Map Information.h"
#include "SmokeEffects.h"
@@ -36,7 +36,7 @@
#include "Cheats.h"
#include "connect.h"
#include "WorldMan.h"
#include "worldman.h"
#include "Init.h"
#include "Game Events.h"
#include "PostalService.h"
+33 -33
View File
@@ -1,32 +1,32 @@
#include "Types.h"
#include "types.h"
#include "Soldier Profile.h"
#include "FileMan.h"
#include <string.h>
#include <stdio.h>
#include "Debug.h"
#include "OverHead.h"
#include "DEBUG.H"
#include "Overhead.h"
#include "Keys.h"
#include "finances.h"
#include "History.h"
#include "history.h"
#include "files.h"
#include "Laptop.h"
#include "iniReader.h"
#include "Email.h"
#include "Strategicmap.h"
#include "laptop.h"
#include "INIReader.h"
#include "email.h"
#include "strategicmap.h"
#include "Game Events.h"
#include "Game Clock.h"
#include "Soldier Create.h"
#include "WorldDef.h"
#include "worlddef.h"
#include "LaptopSave.h"
#include "strategicmap.h"
#include "Queen Command.h"
#include "SaveLoadGame.h"
#include "Tactical Save.h"
#include "Squads.h"
#include "Environment.h"
#include "Lighting.h"
#include "environment.h"
#include "lighting.h"
#include "Strategic Movement.h"
#include "Strategic.h"
#include "strategic.h"
#include "Isometric Utils.h"
#include "Quests.h"
#include "opplist.h"
@@ -38,17 +38,17 @@
#include "GameSettings.h"
#include "Music Control.h"
#include "Options Screen.h"
#include "Ai.h"
#include "RenderWorld.h"
#include "ai.h"
#include "renderworld.h"
#include "SmokeEffects.h"
#include "Random.h"
#include "random.h"
#include "Map Screen Interface.h"
#include "Map Screen Interface Border.h"
#include "Map Screen Interface Bottom.h"
#include "Interface.h"
#include "Map Screen Helicopter.h"
#include "Environment.h"
#include "environment.h"
#include "Arms Dealer Init.h"
#include "Tactical Placement GUI.h"
@@ -57,43 +57,43 @@
#include "Vehicles.h"
#include "Merc Contract.h"
#include "Bullets.h"
#include "air raid.h"
#include "Air Raid.h"
#include "physics.h"
#include "Strategic Pathing.h"
#include "TeamTurns.h"
#include "explosion control.h"
#include "Explosion Control.h"
#include "Creature Spreading.h"
#include "Strategic Status.h"
#include "Prebattle Interface.h"
#include "PreBattle Interface.h"
#include "Boxing.h"
#include "Strategic AI.h"
#include "Map Screen Interface Map.h"
#include "Meanwhile.h"
#include "dialogue control.h"
#include "text.h"
#include "Map Screen Interface.h"
#include "lighteffects.h"
#include "Dialogue Control.h"
#include "Text.h"
#include "Map Screen Interface.h"
#include "LightEffects.h"
#include "HelpScreen.h"
#include "Animated ProgressBar.h"
#include "merctextbox.h"
#include "render dirty.h"
#include "MercTextBox.h"
#include "Render Dirty.h"
#include "Map Information.h"
#include "Interface Items.h"
#include "Civ Quotes.h"
#include "Scheduling.h"
#include "Animation Data.h"
#include "Game Init.h"
#include "cheats.h"
#include "Cheats.h"
#include "Strategic Event Handler.h"
#include "interface panels.h"
#include "interface dialogue.h"
#include "Interface Panels.h"
#include "interface Dialogue.h"
#include "Assignments.h"
#include "Interface Items.h"
#include "Shopkeeper Interface.h"
#include "postalservice.h"
#include "ShopKeeper Interface.h"
#include "PostalService.h"
// HEADROCK HAM B1: Additional Include for HAM
#include "MilitiaSquads.h"
// HEADROCK HAM 3.5: Another include for HAM
@@ -110,17 +110,17 @@
#include "Rebel Command.h"
#include "BobbyR.h"
#include "Imp Portraits.h"
#include "IMP Portraits.h"
#include "Loading Screen.h"
#include "Interface Utils.h"
#include "Squads.h"
#include "IMP Confirm.h"
#include "Enemy Soldier Save.h"
#include "BobbyRMailOrder.h"
#include "Mercs.h"
#include "mercs.h"
#include "INIReader.h"
#include "mercs.h"
#include "soldier Profile.h"
#include "Soldier Profile.h"
#ifdef JA2UB
#include "Ja25 Strategic Ai.h"
#include "Ja25_Tactical.h"
+12 -12
View File
@@ -1,34 +1,34 @@
#include "Types.h"
#include "types.h"
#include "SaveLoadScreen.h"
#include "Video.h"
#include "video.h"
#include "Font Control.h"
#include "Game Clock.h"
#include "Render Dirty.h"
#include "Text Input.h"
#include "SaveLoadGame.h"
#include "Stdio.h"
#include "stdio.h"
#include "WordWrap.h"
#include "StrategicMap.h"
#include "Finances.h"
#include "strategicmap.h"
#include "finances.h"
#include "WCheck.h"
#include "Utilities.h"
#include "Cursors.h"
#include "VObject.h"
#include "vobject.h"
#include "Merc Hiring.h"
#include "LaptopSave.h"
#include "Options Screen.h"
#include "GameVersion.h"
#include "SysUtil.h"
#include "sysutil.h"
#include "Tactical Save.h"
#include "OverHead.h"
#include "Overhead.h"
#include "gamescreen.h"
#include "GameSettings.h"
#include "fade screen.h"
#include "English.h"
#include "Gameloop.h"
#include "Fade Screen.h"
#include "english.h"
#include "gameloop.h"
#include "Game Init.h"
#include "Text.h"
#include "Message.h"
#include "message.h"
#include "Map Screen Interface.h"
#include "Multi Language Graphic Utils.h"
#include "Campaign Types.h"
+2 -2
View File
@@ -1,8 +1,8 @@
#ifndef __SCREEN_MANAGER
#define __SCREEN_MANAGER
#include "Types.h"
#include "ScreenIds.h"
#include "types.h"
#include "screenids.h"
// Each screen in the game comes with a Status flag (what was the last thing the screen was doing), an Initialization
// function (which loads up the screen if necessary), a Handler function which is called while the screen is showing and
+1 -1
View File
@@ -1,5 +1,5 @@
#pragma once
#include "Types.h"
#include "types.h"
void TimingLogInitialize(const CHAR8* filename);
void TimingLog(const CHAR8* logEvent, int n);
+1 -1
View File
@@ -555,7 +555,7 @@ difficultySettingsEndElementHandle(void *userData, const XML_Char *name)
else if(strcmp(name, "QueenAttackLosingControlOfSector") == 0)
{
pData->curElement = ELEMENT;
pData->curDifficultySettings.bQueenLosingControlOfSector = (BOOLEAN) atol(pData->szCharData);
pData->curDifficultySettings.bQueenLosingControlOfSector = atoi(pData->szCharData);
}
else if(strcmp(name, "BloodcatAmbushSectors") == 0)
{
+4 -4
View File
@@ -9,9 +9,9 @@
#include "worlddef.h"
#include "renderworld.h"
#include "input.h"
#include "font.h"
#include "Font.h"
#include "screenids.h"
#include "overhead.h"
#include "Overhead.h"
#include "sysutil.h"
#include "Font Control.h"
#include "Animation Control.h"
@@ -23,8 +23,8 @@
#include <wchar.h>
#include <tchar.h>
#include "english.h"
#include "Fileman.h"
#include "messageboxscreen.h"
#include "FileMan.h"
#include "MessageBoxScreen.h"
//forward declarations of common classes to eliminate includes
class OBJECTTYPE;
+1 -1
View File
@@ -79,6 +79,6 @@
#define _CRT_NON_CONFORMING_SWPRINTFS
#define _SCL_SECURE_NO_WARNINGS
#include "Profiler.h"
#include "profiler.h"
#endif
+7 -7
View File
@@ -1,17 +1,17 @@
#include <stdio.h>
#include <time.h>
#include "sgp.h"
#include "Gameloop.h"
#include "gameloop.h"
#include "Screens.h"
#include "cursors.h"
#include "init.h"
#include "music control.h"
#include "sys globals.h"
#include "Cursors.h"
#include "Init.h"
#include "Music Control.h"
#include "Sys Globals.h"
#include "laptop.h"
#include "mapscreen.h"
#include "Game Clock.h"
#include "Timer Control.h"
#include "overhead.h"
#include "Overhead.h"
#include "LibraryDataBase.h"
#include "Map Screen Interface.h"
#include "Tactical Save.h"
@@ -19,7 +19,7 @@
#include "GameSettings.h"
#include "mapscreen.h"
#include "Interface Control.h"
#include "text.h"
#include "Text.h"
#include "HelpScreen.h"
#include "PreBattle Interface.h"
#include "Tactical Placement GUI.h"//dnl ch45 071009
+1 -1
View File
@@ -1,7 +1,7 @@
#ifndef __GAMELOOP_
#define __GAMELOOP_
#include "Types.h"
#include "types.h"
// main game loop systems
#define INIT_SYSTEM 0
+24 -24
View File
@@ -6,10 +6,10 @@
#include "vobject.h"
#include "worlddef.h"
#include "renderworld.h"
#include "font.h"
#include "Font.h"
#include "screenids.h"
#include "screens.h"
#include "overhead.h"
#include "Screens.h"
#include "Overhead.h"
#include "Isometric Utils.h"
#include "sysutil.h"
#include "input.h"
@@ -22,60 +22,60 @@
#include "Handle UI.h"
#include <wchar.h>
#include <tchar.h>
#include "cursors.h"
#include "Cursors.h"
#include "vobject_blitters.h"
#include "Button System.h"
#include "lighting.h"
#include "renderworld.h"
#include "sys globals.h"
#include "Sys Globals.h"
#include "environment.h"
#include "bullets.h"
#include "Bullets.h"
#include "Assignments.h"
#include "message.h"
#include <string.h>
#include "overhead map.h"
#include "Strategic Exit GUI.h"
#include "strategic movement.h"
#include "Strategic Movement.h"
#include "Tactical Placement GUI.h"
#include "Air raid.h"
#include "Air Raid.h"
#include "Game Clock.h"
#include "game init.h"
#include "Game Init.h"
//DEF: Test Code
#ifdef NETWORKED
#include "Networking.h"
#endif
#include "interface control.h"
#include "game clock.h"
#include "Interface Control.h"
#include "Game Clock.h"
#include "physics.h"
#include "fade screen.h"
#include "dialogue control.h"
#include "soldier macros.h"
#include "Fade Screen.h"
#include "Dialogue Control.h"
#include "Soldier macros.h"
#include "faces.h"
#include "strategicmap.h"
#include "gamescreen.h"
#include "interface.h"
#include "cursor control.h"
#include "strategic turns.h"
#include "Interface.h"
#include "Cursor Control.h"
#include "Strategic Turns.h"
#include "merc entering.h"
#include "soldier create.h"
#include "Soldier Create.h"
#include "Soldier Init List.h"
#include "interface panels.h"
#include "Interface Panels.h"
#include "Map Information.h"
#include "environment.h"
#include "Squads.h"
#include "interface dialogue.h"
#include "auto bandage.h"
#include "meanwhile.h"
#include "strategic ai.h"
#include "interface Dialogue.h"
#include "Auto Bandage.h"
#include "Meanwhile.h"
#include "Strategic AI.h"
#include "HelpScreen.h"
#include "PreBattle Interface.h"
#include "Sound Control.h"
#include "MessageBoxScreen.h"
#include "Text.h"
#include "GameSettings.h"
#include "Random.h"
#include "random.h"
#include "editscreen.h"
#include "Scheduling.h"
#include "Animated ProgressBar.h"
+15 -15
View File
@@ -6,13 +6,13 @@
#include "himage.h"
#include "vobject.h"
#include "vobject_blitters.h"
#include "wcheck.h"
#include "WCheck.h"
#include "input.h"
#include "font.h"
#include "Font.h"
#include "timer.h"
#include "mousesystem.h"
#include "screenids.h"
#include "screens.h"
#include "Screens.h"
#include "Font Control.h"
#include "sysutil.h"
#include "tiledef.h"
@@ -22,30 +22,30 @@
#include <tchar.h>
#include "Timer Control.h"
#include "Sys Globals.h"
#include "interface.h"
#include "overhead.h"
#include "utilities.h"
#include "render dirty.h"
#include "Interface.h"
#include "Overhead.h"
#include "Utilities.h"
#include "Render Dirty.h"
#include "jascreens.h"
#include "gameloop.h"
#include "Event Pump.h"
#include "animation cache.h"
#include "Animation Cache.h"
#include "lighting.h"
#include "mainmenuscreen.h"
#include "Game Init.h"
#include "init.h"
#include "cursor control.h"
#include "utilities.h"
#include "Init.h"
#include "Cursor Control.h"
#include "Utilities.h"
#include "GameVersion.h"
#include "game clock.h"
#include "Game Clock.h"
#include "gamescreen.h"
#include "english.h"
#include "Random.h"
#include "random.h"
#include "WordWrap.h"
#include "Sound Control.h"
#include "WordWrap.h"
#include "text.h"
#include "IniReader.h"
#include "Text.h"
#include "INIReader.h"
#include "sgp_logger.h"
#include <language.hpp>
+1 -1
View File
@@ -2,7 +2,7 @@
#define __JASCREENS_H_
#include "sgp.h"
#include "ScreenIds.h"
#include "screenids.h"
#include "mousesystem.h"
#include "Button System.h"
#include <list>
+12 -12
View File
@@ -1,10 +1,10 @@
//legion 2
#include "Types.h"
#include "types.h"
#include "Random.h"
#include "types.h"
#include "random.h"
#include "Campaign Types.h"
#include "Queen Command.h"
#include "overhead.h"
#include "Overhead.h"
#include "Strategic Movement.h"
#include "Strategic Status.h"
#include "GameSettings.h"
@@ -17,36 +17,36 @@
#include "laptop.h"
#include "worlddef.h"
#include "Soldier Control.h"
#include "overhead.h"
#include "Overhead.h"
#include "email.h"
#include "soldier profile.h"
#include "Soldier Profile.h"
#include "strategicmap.h"
#include "game init.h"
#include "animation data.h"
#include "soldier create.h"
#include "Game Init.h"
#include "Animation Data.h"
#include "Soldier Create.h"
#include "Soldier Init List.h"
#include "strategic.h"
#include "Squads.h"
#include "Strategic Town Loyalty.h"
#include "Strategic Mines.h"
#include "gameloop.h"
#include "Random.h"
#include "random.h"
#include "Map Screen Interface.h"
#include "Tactical Save.h"
#include "Campaign Types.h"
#include "Message.h"
#include "message.h"
#include "Game Event Hook.h"
#include "Strategic Movement.h"
#include "Quests.h"
#include "Strategic AI.h"
#include "dialogue control.h"
#include "Dialogue Control.h"
#include "GameSettings.h"
#include "INIReader.h"
#include "Soldier Profile.h"
#include "XML.h"
#include "Item Types.h"
#include "Items.h"
#include "text.h"
#include "Text.h"
#include "GameSettings.h"
#ifdef JA2UB
+12 -12
View File
@@ -1,9 +1,9 @@
#include "Types.h"
#include "types.h"
#include "Random.h"
#include "types.h"
#include "random.h"
#include "Campaign Types.h"
#include "Queen Command.h"
#include "overhead.h"
#include "Overhead.h"
#include "Strategic Movement.h"
#include "Strategic Status.h"
#include "GameSettings.h"
@@ -16,36 +16,36 @@
#include "laptop.h"
#include "worlddef.h"
#include "Soldier Control.h"
#include "overhead.h"
#include "Overhead.h"
#include "email.h"
#include "soldier profile.h"
#include "Soldier Profile.h"
#include "strategicmap.h"
#include "game init.h"
#include "animation data.h"
#include "soldier create.h"
#include "Game Init.h"
#include "Animation Data.h"
#include "Soldier Create.h"
#include "Soldier Init List.h"
#include "strategic.h"
#include "Squads.h"
#include "Strategic Town Loyalty.h"
#include "Strategic Mines.h"
#include "gameloop.h"
#include "Random.h"
#include "random.h"
#include "Map Screen Interface.h"
#include "Tactical Save.h"
#include "Campaign Types.h"
#include "Message.h"
#include "message.h"
#include "Game Event Hook.h"
#include "Strategic Movement.h"
#include "Quests.h"
#include "Strategic AI.h"
#include "dialogue control.h"
#include "Dialogue Control.h"
#include "GameSettings.h"
#include "INIReader.h"
#include "Soldier Profile.h"
#include "XML.h"
#include "Item Types.h"
#include "Items.h"
#include "text.h"
#include "Text.h"
#include "GameSettings.h"
#ifdef JA2UB
+2 -2
View File
@@ -4,11 +4,11 @@
#include "Utilities.h"
#include "WCheck.h"
#include "stdio.h"
#include "Aim.h"
#include "aim.h"
#include "Soldier Profile.h"
#include "email.h"
#include "Text.h"
#include "aimsort.h"
#include "AimSort.h"
#include "Assignments.h"
#include "GameSettings.h"
#include "english.h"

Some files were not shown because too many files have changed in this diff Show More