void Log::Initialize() { std::string logfn=sConfig.GetStringDefault("LogFile", ""); if(logfn!="") { logfile = fopen(logfn.c_str(), "w"); } std::string gmlogname = sConfig.GetStringDefault("GMLogFile", ""); if(gmlogname!="") { gmlogfile = fopen(gmlogname.c_str(), "a"); } std::string dberlogname = sConfig.GetStringDefault("DBErrorLogFile", ""); if(dberlogname!="") { dberlogfile = fopen(dberlogname.c_str(), "a"); } m_logLevel = sConfig.GetIntDefault("LogLevel", 0); m_logFileLevel = sConfig.GetIntDefault("LogFileLevel", 0); InitColors(sConfig.GetStringDefault("LogColors", "")); if(sConfig.GetIntDefault("LogFilter_TransportMoves", 0)!=0) m_logFilter |= LOG_FILTER_TRANSPORT_MOVES; if(sConfig.GetIntDefault("LogFilter_CreatureMoves", 0)!=0) m_logFilter |= LOG_FILTER_CREATURE_MOVES; }
static bool initInstance( void ) { // OLE2Init(); InitFonts(); InitColors(); return( true ); }
static BOOL initInstance( void ) { // OLE2Init(); InitFonts(); InitColors(); return( TRUE ); }
void CSynBCGPEditCtrl::OnSysColorChange() { CWnd::OnSysColorChange(); InitColors (); RedrawWindow (); }
//***************************************************************************************** void CBCGPListCtrl::OnSysColorChange() { CListCtrl::OnSysColorChange(); InitColors (); RedrawWindow (); }
void CAutomap::Init (void) { m_nWidth = 640; m_nHeight = 480; m_bFull = false; m_bDisplay = 0; m_data.bCheat = 0; m_data.bHires = 1; m_data.nViewDist = 0; m_data.nMaxDist = I2X (2000); m_data.nZoom = 0x9000; m_data.viewPos.SetZero (); m_data.viewTarget.SetZero (); m_data.viewMatrix = CFixMatrix::IDENTITY; for (int i = 0; i < 2; i++) { if (!m_visited [i].Buffer ()) m_visited [i].Create (MAX_SEGMENTS_D2X); m_visited [i].Clear (); } if (!m_visible.Buffer ()) m_visible.Create (MAX_SEGMENTS_D2X); m_visible.Clear (); m_nEdges = 0; m_nMaxEdges = MAX_EDGES; m_nLastEdge = -1; m_edges.Create (MAX_EDGES); m_brightEdges.Create (MAX_EDGES); InitColors (); }
void BasicInit() #ifdef MAC { void InitColors(); #if MACB4CARBON short i; Ptr stackTop; // JLMextern _DataInit(); stackTop = GetApplLimit(); SetApplLimit((void *)(stackTop - (Ptr)30000)); // SetApplLimit((void *)(*(long *)csb - 30000)); MaxApplZone(); for (i = 1 ; i <= 16 ; i++) MoreMasters(); InitGraf(&qd.thePort); InitFonts(); InitWindows(); InitMenus(); TEInit(); InitDialogs(nil); FlushEvents(everyEvent, 0); #endif InitCursor(); InitColors(); }
Draw::Draw(HDC hdc) { DrawLock __; native = 0; InitColors(); InitFonts(); Reset(); Attach(hdc); }
Draw::Draw() { DrawLock __; native = 0; InitColors(); InitFonts(); actual_offset = Point(0, 0); Reset(); handle = NULL; }
AppenderConsole::AppenderConsole(uint8 id, std::string const& name, LogLevel level, AppenderFlags flags, std::vector<char const*> extraArgs) : Appender(id, name, level, flags), _colored(false) { for (uint8 i = 0; i < NUM_ENABLED_LOG_LEVELS; ++i) _colors[i] = ColorTypes(MaxColors); if (!extraArgs.empty()) InitColors(extraArgs[0]); }
AppenderConsole::AppenderConsole(uint8 id, std::string const& name, LogLevel level, AppenderFlags flags, ExtraAppenderArgs extraArgs) : Appender(id, name, level, flags), _colored(false) { for (uint8 i = 0; i < MaxLogLevels; ++i) _colors[i] = ColorTypes(MaxColors); if (!extraArgs.empty()) InitColors(extraArgs[0]); }
void Log::Initialize() { std::string logsDir = sConfig.GetStringDefault("LogsDir",""); if(!logsDir.empty()) { if((logsDir.at(logsDir.length()-1)!='/') && (logsDir.at(logsDir.length()-1)!='\\')) logsDir.append("/"); } std::string logfn=sConfig.GetStringDefault("LogFile", ""); if(logfn!="") { if(sConfig.GetIntDefault("LogTimestamp",0)) { std::string logTimestamp = sConfig.GetIntDefault("LogTimestamp",0) ? GetTimestampStr() : ""; logTimestamp.insert(0,"_"); size_t dot_pos = logfn.find_last_of("."); if(dot_pos!=logfn.npos) logfn.insert(dot_pos,logTimestamp); else logfn += logTimestamp; } logfile = fopen((logsDir+logfn).c_str(), "w"); } std::string gmlogname = sConfig.GetStringDefault("GMLogFile", ""); if(gmlogname!="") { gmLogfile = fopen((logsDir+gmlogname).c_str(), "a"); } std::string dberlogname = sConfig.GetStringDefault("DBErrorLogFile", ""); if(dberlogname!="") { dberLogfile = fopen((logsDir+dberlogname).c_str(), "a"); } std::string ralogname = sConfig.GetStringDefault("RaLogFile", ""); if(ralogname!="") { raLogfile = fopen((logsDir+ralogname).c_str(), "a"); } m_logLevel = sConfig.GetIntDefault("LogLevel", 0); m_logFileLevel = sConfig.GetIntDefault("LogFileLevel", 0); InitColors(sConfig.GetStringDefault("LogColors", "")); m_logFilter = 0; if(sConfig.GetIntDefault("LogFilter_TransportMoves", 0)!=0) m_logFilter |= LOG_FILTER_TRANSPORT_MOVES; if(sConfig.GetIntDefault("LogFilter_CreatureMoves", 0)!=0) m_logFilter |= LOG_FILTER_CREATURE_MOVES; if(sConfig.GetIntDefault("LogFilter_VisibilityChanges", 0)!=0) m_logFilter |= LOG_FILTER_VISIBILITY_CHANGES; }
void SceneBase::Init(string vertexShader, string fragmentShader) { // Debug m_bShowDebug = false; // Simulation Speed m_speed = 1.0f; // Dark Blue Background glClearColor(0.0f, 0.0f, 0.4f, 0.0f); // Enable depth test glEnable(GL_DEPTH_TEST); // Accept fragment if it closer to the camera than the former one glDepthFunc(GL_LESS); // Face Culling glEnable(GL_CULL_FACE); m_bCull = true; // Filled/Wireframe Mode glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); m_bWireframe = false; glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glGenVertexArrays(1, &m_vertexArrayID); glBindVertexArray(m_vertexArrayID); Math::InitRNG(); InitShadersAndLights(vertexShader, fragmentShader); InitFog(); /* * Resource Initialization */ // Colors InitColors(); // Materials InitMaterials(); // Textures InitTextures(); // Meshes InitMeshes(); // Projection matrix : 45° Field of View, 4:3 ratio, display range : 0.1 unit <-> 1000 units Mtx44 perspective; perspective.SetToPerspective(45.0f, 4.0f / 3.0f, 0.1f, 12000.0f); //perspective.SetToOrtho(-80, 80, -60, 60, -1000, 1000); projectionStack.LoadMatrix(perspective); bLightEnabled = true; }
/* * Function: DrawBoard * ------------------- * Exported function to draw a new board. Sets up named colors, draws the yellow * border, draws the empty cubes, the labels on the scoreboard, and resets scores * to zero and words lists to empty. */ void DrawBoard(int numRows, int numCols) { if (numRows < 0 || numRows > MAX_DIMENSION || numCols < 0 || numCols > MAX_DIMENSION) Error("DrawBoard called with invalid dimensions."); SetWindowTitle("Welcome to Boggle!"); InitColors(); CalculateGeometry(numRows, numCols); // Draws a filled rect underneath cubes in the oh-so-familiar yellow color FillBox(gState.board.x, gState.board.y, gState.board.w, gState.board.h, 0.5, "Board Color"); DrawEmptyCubes(); DrawPlayerLabel(Human, "Me"); DrawPlayerLabel(Computer, "Computer"); }
void CEditorRoot::ApplySchemeSettings(vgui::IScheme *pScheme) { BaseClass::ApplySchemeSettings(pScheme); SetPaintBackgroundEnabled(true); SetPaintBorderEnabled(false); SetPaintEnabled(true); SetCloseButtonVisible(false); SetSizeable(false); SetMoveable(false); InitColors(); SetTitle( "", true ); SetTitleBarVisible( false ); m_pLabelTitle->SetText( GetEditorTitle() ); m_pLabelTitle->SetFont( pScheme->GetFont( "UiBold", false ) ); SetPaintBackgroundType( 0 ); OnShaderNameChanged(); GenerateFonts(pScheme); }
: wxOwnerDrawnComboBox(parent, id, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxArrayString(), wxCB_READONLY) #endif { // If the ctrl is too small the color box gets messed up in wxOSX SetMinSize(wxSize(GetCharWidth() * 22, -1)); s_ctrls.push_back(this); // Make sure we have a list of colors if (s_colors.empty()) InitColors(); else UpdateCtrls(); // Set the initial value SetColor(color.IsOk() ? color : *wxWHITE); // Connect the event handler #ifndef __WXOSX__ Connect(wxEVT_COMMAND_COMBOBOX_SELECTED, #else Connect(wxEVT_COMMAND_CHOICE_SELECTED, #endif wxCommandEventHandler(ColorChoice::OnSelection)); }
void Log::Initialize() { std::string logfn=sConfig.GetStringDefault("LogFile", ""); if(logfn!="") { logfile = fopen(logfn.c_str(), "w"); } std::string gmlogname = sConfig.GetStringDefault("GMLogFile", ""); if(gmlogname!="") { gmlogfile = fopen(gmlogname.c_str(), "a"); } std::string dberlogname = sConfig.GetStringDefault("DBErrorLogFile", ""); if(dberlogname!="") { dberlogfile = fopen(dberlogname.c_str(), "a"); } m_logLevel = sConfig.GetIntDefault("LogLevel", 0); m_logFileLevel = sConfig.GetIntDefault("LogFileLevel", 0); InitColors(sConfig.GetStringDefault("LogColors", "")); }
int setup(int ParentPeriod, int ChildPeriod) { int iDistance; int j; unsigned int denominator; double InternalAngle; printf("setup\n"); denominator = ChildPeriod; InternalAngle = 1.0/((double) denominator); c = GiveC(InternalAngle, 1.0, ParentPeriod) ; // internal radius= 1.0 gives root point = parabolic parameter Cx=creal(c); Cy=cimag(c); alfa = GiveAlfaFixedPoint(c); dAlfaX = creal(alfa); dAlfaY = cimag(alfa); iAlfaX = (dAlfaX- ZxMin)/PixelWidth; iAlfaY = (ZyMax - dAlfaY)/PixelHeight; // inverse Y axis /* 2D array ranges */ if (!(iHeight % 2)) iHeight+=1; // it sholud be even number (variable % 2) or (variable & 1) iWidth = iHeight; iSize = iWidth*iHeight; // size = number of points in array // iy iyMax = iHeight - 1 ; // Indexes of array starts from 0 not 1 so the highest elements of an array is = array_name[size-1]. //ix ixMax = iWidth - 1; /* 1D array ranges */ // i1Dsize = i2Dsize; // 1D array with the same size as 2D array iMax = iSize-1; // Indexes of array starts from 0 not 1 so the highest elements of an array is = array_name[size-1]. /* Pixel sizes */ PixelWidth = (ZxMax-ZxMin)/ixMax; // ixMax = (iWidth-1) step between pixels in world coordinate PixelHeight = (ZyMax-ZyMin)/iyMax; ratio = ((ZxMax-ZxMin)/(ZyMax-ZyMin))/((float)iWidth/(float)iHeight); // it should be 1.000 ... // for numerical optimisation in iteration ER2 = ER * ER; iMaxDistance2Alfa2 =iMaxDistance2Alfa * iMaxDistance2Alfa; dMaxDistance2Alfa2 = iMaxDistance2Alfa2*PixelWidth*PixelWidth; // dMaxDistance2Alfa^2 dMaxDistance2Alfa = sqrt(dMaxDistance2Alfa2); // maybe it should be in reversed order ?? /* create dynamic 1D arrays for colors ( shades of gray ) */ data = malloc( iSize * sizeof(unsigned char) ); rays = malloc( iSize * sizeof(unsigned char) ); edge = malloc( iSize * sizeof(unsigned char) ); if (rays == NULL || edge== NULL || data == NULL) { fprintf(stderr," Could not allocate memory"); getchar(); return 1; } // fill array g with negative number for (iDistance=0; iDistance<iMaxDistance2Alfa; ++iDistance) for (j=0; j<iPeriodChild; ++j) RaysTurns[iDistance][j]=-1.0; // fill array iColorsOfInterior with iPeriodChild colors ( shades of gray ) InitColors(iPeriodChild, iColorsOfInterior); printf(" end of setup \n"); return 0; } // ;;;;;;;;;;;;;;;;;;;;;;;;; end of the setup ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
void Log::Initialize() { /// Common log files data m_logsDir = sConfig.GetStringDefault("LogsDir",""); if(!m_logsDir.empty()) { if((m_logsDir.at(m_logsDir.length()-1)!='/') && (m_logsDir.at(m_logsDir.length()-1)!='\\')) m_logsDir.append("/"); } m_logsTimestamp = "_" + GetTimestampStr(); /// Open specific log files logfile = openLogFile("LogFile","LogTimestamp","w"); m_gmlog_per_account = sConfig.GetBoolDefault("GmLogPerAccount",false); if(!m_gmlog_per_account) gmLogfile = openLogFile("GMLogFile","GmLogTimestamp","a"); else { // GM log settings for per account case m_gmlog_filename_format = sConfig.GetStringDefault("GMLogFile", ""); if(!m_gmlog_filename_format.empty()) { bool m_gmlog_timestamp = sConfig.GetBoolDefault("GmLogTimestamp",false); size_t dot_pos = m_gmlog_filename_format.find_last_of("."); if(dot_pos!=m_gmlog_filename_format.npos) { if(m_gmlog_timestamp) m_gmlog_filename_format.insert(dot_pos,m_logsTimestamp); m_gmlog_filename_format.insert(dot_pos,"_#%u"); } else { m_gmlog_filename_format += "_#%u"; if(m_gmlog_timestamp) m_gmlog_filename_format += m_logsTimestamp; } m_gmlog_filename_format = m_logsDir + m_gmlog_filename_format; } } charLogfile = openLogFile("CharLogFile","CharLogTimestamp","a"); dberLogfile = openLogFile("DBErrorLogFile",NULL,"a"); raLogfile = openLogFile("RaLogFile",NULL,"a"); worldLogfile = openLogFile("WorldLogFile","WorldLogTimestamp","a"); // Main log file settings m_includeTime = sConfig.GetBoolDefault("LogTime", false); m_logLevel = sConfig.GetIntDefault("LogLevel", 0); m_logFileLevel = sConfig.GetIntDefault("LogFileLevel", 0); InitColors(sConfig.GetStringDefault("LogColors", "")); m_logFilter = 0; if(sConfig.GetBoolDefault("LogFilter_TransportMoves", true)) m_logFilter |= LOG_FILTER_TRANSPORT_MOVES; if(sConfig.GetBoolDefault("LogFilter_CreatureMoves", true)) m_logFilter |= LOG_FILTER_CREATURE_MOVES; if(sConfig.GetBoolDefault("LogFilter_VisibilityChanges", true)) m_logFilter |= LOG_FILTER_VISIBILITY_CHANGES; if(sConfig.GetBoolDefault("LogFilter_AchievementUpdates", true)) m_logFilter |= LOG_FILTER_ACHIEVEMENT_UPDATES; // Char log settings m_charLog_Dump = sConfig.GetBoolDefault("CharLogDump", false); }
void Log::Initialize() { std::string logsDir = sConfig.GetStringDefault("LogsDir",""); if(!logsDir.empty()) { if((logsDir.at(logsDir.length()-1)!='/') && (logsDir.at(logsDir.length()-1)!='\\')) logsDir.append("/"); } std::string logfn=sConfig.GetStringDefault("LogFile", ""); if(!logfn.empty()) { if(sConfig.GetBoolDefault("LogTimestamp",false)) { std::string logTimestamp = GetTimestampStr(); logTimestamp.insert(0,"_"); size_t dot_pos = logfn.find_last_of("."); if(dot_pos!=logfn.npos) logfn.insert(dot_pos,logTimestamp); else logfn += logTimestamp; } logfile = fopen((logsDir+logfn).c_str(), "w"); } std::string gmlogname = sConfig.GetStringDefault("GMLogFile", ""); if(!gmlogname.empty()) { if(sConfig.GetBoolDefault("GmLogTimestamp",false)) { std::string gmLogTimestamp = GetTimestampStr(); gmLogTimestamp.insert(0,"_"); size_t dot_pos = gmlogname.find_last_of("."); if(dot_pos!=gmlogname.npos) gmlogname.insert(dot_pos,gmLogTimestamp); else gmlogname += gmLogTimestamp; } gmLogfile = fopen((logsDir+gmlogname).c_str(), "a"); } std::string charlogname = sConfig.GetStringDefault("CharLogFile", ""); if(!charlogname.empty()) { if(sConfig.GetBoolDefault("CharLogTimestamp",false)) { std::string charLogTimestamp = GetTimestampStr(); charLogTimestamp.insert(0,"_"); size_t dot_pos = charlogname.find_last_of("."); if(dot_pos!=charlogname.npos) charlogname.insert(dot_pos,charLogTimestamp); else charlogname += charLogTimestamp; } charLogfile = fopen((logsDir+charlogname).c_str(), "a"); } std::string dberlogname = sConfig.GetStringDefault("DBErrorLogFile", ""); if(!dberlogname.empty()) { dberLogfile = fopen((logsDir+dberlogname).c_str(), "a"); } std::string ralogname = sConfig.GetStringDefault("RaLogFile", ""); if(!ralogname.empty()) { raLogfile = fopen((logsDir+ralogname).c_str(), "a"); } m_includeTime = sConfig.GetBoolDefault("LogTime", false); m_logLevel = sConfig.GetIntDefault("LogLevel", 0); m_logFileLevel = sConfig.GetIntDefault("LogFileLevel", 0); InitColors(sConfig.GetStringDefault("LogColors", "")); m_logFilter = 0; if(sConfig.GetBoolDefault("LogFilter_TransportMoves", true)) m_logFilter |= LOG_FILTER_TRANSPORT_MOVES; if(sConfig.GetBoolDefault("LogFilter_CreatureMoves", true)) m_logFilter |= LOG_FILTER_CREATURE_MOVES; if(sConfig.GetBoolDefault("LogFilter_VisibilityChanges", true)) m_logFilter |= LOG_FILTER_VISIBILITY_CHANGES; m_charLog_Dump = sConfig.GetBoolDefault("CharLogDump", false); }
MemoryWindow(int x, int y, int columns, int rows) : width(columns), height(rows), window(new CursesWindow(x, y, columns, rows)) {InitColors(); Update();}
void Log::Initialize() { /// Common log files data m_logsDir = sConfig.GetStringDefault("LogsDir"); if (!m_logsDir.empty()) { if ((m_logsDir.at(m_logsDir.length() - 1) != '/') && (m_logsDir.at(m_logsDir.length() - 1) != '\\')) m_logsDir.append("/"); } m_logsTimestamp = "_" + GetTimestampStr(); /// Open specific log files logfile = openLogFile("LogFile", "LogTimestamp", "w"); m_gmlog_per_account = sConfig.GetBoolDefault("GmLogPerAccount", false); if (!m_gmlog_per_account) gmLogfile = openLogFile("GMLogFile", "GmLogTimestamp", "a"); else { // GM log settings for per account case m_gmlog_filename_format = sConfig.GetStringDefault("GMLogFile"); if (!m_gmlog_filename_format.empty()) { bool m_gmlog_timestamp = sConfig.GetBoolDefault("GmLogTimestamp", false); size_t dot_pos = m_gmlog_filename_format.find_last_of("."); if (dot_pos != m_gmlog_filename_format.npos) { if (m_gmlog_timestamp) m_gmlog_filename_format.insert(dot_pos, m_logsTimestamp); m_gmlog_filename_format.insert(dot_pos, "_#%u"); } else { m_gmlog_filename_format += "_#%u"; if (m_gmlog_timestamp) m_gmlog_filename_format += m_logsTimestamp; } m_gmlog_filename_format = m_logsDir + m_gmlog_filename_format; } } charLogfile = openLogFile("CharLogFile", "CharLogTimestamp", "a"); dberLogfile = openLogFile("DBErrorLogFile", nullptr, "a"); elunaErrLogfile = openLogFile("ElunaErrorLogFile", nullptr, "a"); eventAiErLogfile = openLogFile("EventAIErrorLogFile", nullptr, "a"); raLogfile = openLogFile("RaLogFile", nullptr, "a"); worldLogfile = openLogFile("WorldLogFile", "WorldLogTimestamp", "a"); // Main log file settings m_includeTime = sConfig.GetBoolDefault("LogTime", false); m_logLevel = LogLevel(sConfig.GetIntDefault("LogLevel", 0)); m_logFileLevel = LogLevel(sConfig.GetIntDefault("LogFileLevel", 0)); InitColors(sConfig.GetStringDefault("LogColors")); m_logFilter = 0; for (int i = 0; i < LOG_FILTER_COUNT; ++i) if (*logFilterData[i].name) if (sConfig.GetBoolDefault(logFilterData[i].configName, logFilterData[i].defaultState)) m_logFilter |= (1 << i); // Char log settings m_charLog_Dump = sConfig.GetBoolDefault("CharLogDump", false); }
void Log::Initialize() { /// Check whether we'll log GM commands/RA events/character outputs/chat stuffs m_dbChar = sConfig->GetBoolDefault("LogDB.Char", false); m_dbRA = sConfig->GetBoolDefault("LogDB.RA", false); m_dbGM = sConfig->GetBoolDefault("LogDB.GM", false); m_dbChat = sConfig->GetBoolDefault("LogDB.Chat", false); /// Realm must be 0 by default SetRealmID(0); /// Common log files data m_logsDir = sConfig->GetStringDefault("LogsDir",""); if (!m_logsDir.empty()) if ((m_logsDir.at(m_logsDir.length() - 1) != '/') && (m_logsDir.at(m_logsDir.length() - 1) != '\\')) m_logsDir.append("/"); m_logsTimestamp = "_" + GetTimestampStr(); /// Open specific log files logfile = openLogFile("LogFile","LogTimestamp","w"); InitColors(sConfig->GetStringDefault("LogColors", "")); m_gmlog_per_account = sConfig->GetBoolDefault("GmLogPerAccount",false); if(!m_gmlog_per_account) gmLogfile = openLogFile("GMLogFile","GmLogTimestamp","a"); else { // GM log settings for per account case m_gmlog_filename_format = sConfig->GetStringDefault("GMLogFile", ""); if(!m_gmlog_filename_format.empty()) { bool m_gmlog_timestamp = sConfig->GetBoolDefault("GmLogTimestamp",false); size_t dot_pos = m_gmlog_filename_format.find_last_of("."); if(dot_pos!=m_gmlog_filename_format.npos) { if(m_gmlog_timestamp) m_gmlog_filename_format.insert(dot_pos,m_logsTimestamp); m_gmlog_filename_format.insert(dot_pos,"_#%u"); } else { m_gmlog_filename_format += "_#%u"; if(m_gmlog_timestamp) m_gmlog_filename_format += m_logsTimestamp; } m_gmlog_filename_format = m_logsDir + m_gmlog_filename_format; } } charLogfile = openLogFile("CharLogFile", "CharLogTimestamp", "a"); dberLogfile = openLogFile("DBErrorLogFile", NULL, "a"); raLogfile = openLogFile("RaLogFile", NULL, "a"); chatLogfile = openLogFile("ChatLogFile", "ChatLogTimestamp", "a"); arenaLogFile = openLogFile("ArenaLogFile", NULL,"a"); sqlLogFile = openLogFile("SQLDriverLogFile", NULL, "a"); // Main log file settings m_logLevel = sConfig->GetIntDefault("LogLevel", LOGL_NORMAL); m_logFileLevel = sConfig->GetIntDefault("LogFileLevel", LOGL_NORMAL); m_dbLogLevel = sConfig->GetIntDefault("DBLogLevel", LOGL_NORMAL); m_sqlDriverQueryLogging = sConfig->GetBoolDefault("SQLDriverQueryLogging", false); m_logFilter = 0; if(sConfig->GetBoolDefault("LogFilter_TransportMoves", true)) m_logFilter |= LOG_FILTER_TRANSPORT_MOVES; if(sConfig->GetBoolDefault("LogFilter_CreatureMoves", true)) m_logFilter |= LOG_FILTER_CREATURE_MOVES; if(sConfig->GetBoolDefault("LogFilter_VisibilityChanges", true)) m_logFilter |= LOG_FILTER_VISIBILITY_CHANGES; if(sConfig->GetBoolDefault("LogFilter_AchievementUpdates", true)) m_logFilter |= LOG_FILTER_ACHIEVEMENT_UPDATES; // Char log settings m_charLog_Dump = sConfig->GetBoolDefault("CharLogDump", false); m_charLog_Dump_Separate = sConfig->GetBoolDefault("CharLogDump.Separate", false); if (m_charLog_Dump_Separate) { m_dumpsDir = sConfig->GetStringDefault("CharLogDump.SeparateDir", ""); if (!m_dumpsDir.empty()) if ((m_dumpsDir.at(m_dumpsDir.length() - 1) != '/') && (m_dumpsDir.at(m_dumpsDir.length() - 1) != '\\')) m_dumpsDir.append("/"); } }
/* * doInitializeEditor - do just that */ static void doInitializeEditor( int argc, char *argv[] ) { int i, arg, cnt, ocnt, startcnt = 0; srcline sline; int k, j; char tmp[FILENAME_MAX], c[1]; char buff[MAX_STR], file[MAX_STR], **list; char cmd[MAX_STR * 2]; char *parm; char *startup[MAX_STARTUP]; char *startup_parms[MAX_STARTUP]; vi_rc rc; vi_rc rc1; /* * Make sure WATCOM is setup and if it is not, make a best guess. */ watcom_setup_env(); /* * If EDPATH is not set, use system default %WATCOM%\EDDAT. */ if( getenv( "EDPATH" ) == NULL ) { char *watcom; watcom = getenv( "WATCOM" ); if( watcom != NULL ) { char edpath[FILENAME_MAX]; sprintf( edpath, "%s%c%s", watcom, FILE_SEP, "eddat" ); if( setenv( "EDPATH", edpath, 0 ) != 0 ) { /* * Bail out silently on error, as we will get error message later on. */ } } } /* * misc. set up */ MaxMemFree = MemSize(); StaticStart(); FTSInit(); BoundDataInit(); EditFlags.Starting = true; InitCommandLine(); ChkExtendedKbd(); SSInitBeforeConfig(); GetCWD1( &HomeDirectory ); GetCWD1( &CurrentDirectory ); SetCWD( HomeDirectory ); if( cfgFN == NULL ){ cfgFN = DupString( CFG_NAME ); } checkFlags( &argc, argv, startup, startup_parms, &startcnt ); ScreenInit(); SetWindowSizes(); EditFlags.ClockActive = false; SetInterrupts(); #ifdef __WIN__ InitClrPick(); InitFtPick(); SubclassGenericInit(); CursorOp( COP_INIT ); #else InitColors(); #endif InitSavebufs(); InitKeyMaps(); /* * initial configuration */ EditVars.Majick = MemStrDup( "()~@" ); EditVars.FileEndString = MemStrDup( "[END_OF_FILE]" ); MatchInit(); SetGadgetString( NULL ); WorkLine = MemAlloc( sizeof( line ) + EditVars.MaxLine + 2 ); WorkLine->len = -1; sline = 0; if( cfgFN[0] != 0 ) { c[0] = 0; rc = Source( cfgFN, c, &sline ); if( rc == ERR_FILE_NOT_FOUND ) { #ifdef __WIN__ CloseStartupDialog(); MessageBox( (HWND)NULLHANDLE, "Could not locate configuration information; please make sure your EDPATH environment variable is set correctly", EditorName, MB_OK ); ExitEditor( -1 ); #else rc = ERR_NO_ERR; #endif } } else { rc = ERR_NO_ERR; } if( wantNoReadEntireFile ) { EditFlags.ReadEntireFile = false; } VerifyTmpDir(); while( LostFileCheck() ); HookScriptCheck(); if( EditFlags.Quiet ) { EditFlags.Spinning = false; EditFlags.Clock = false; } ExtendedMemoryInit(); /* * more misc. setup */ if( EditVars.WordDefn == NULL ) { EditVars.WordDefn = DupString( &WordDefnDefault[6] ); InitWordSearch( EditVars.WordDefn ); } if( EditVars.WordAltDefn == NULL ) { EditVars.WordAltDefn = DupString( WordDefnDefault ); } if( EditVars.TagFileName == NULL ) { EditVars.TagFileName = DupString( "tags" ); } DotBuffer = MemAlloc( (maxdotbuffer + 2) * sizeof( vi_key ) ); AltDotBuffer = MemAlloc( (maxdotbuffer + 2) * sizeof( vi_key ) ); DotCmd = MemAlloc( (maxdotbuffer + 2) * sizeof( vi_key ) ); SwapBlockInit( EditVars.MaxSwapBlocks ); ReadBuffer = MemAlloc( MAX_IO_BUFFER + 6 ); WriteBuffer = MemAlloc( MAX_IO_BUFFER + 6 ); FindHistInit( EditVars.FindHist.max ); FilterHistInit( EditVars.FilterHist.max ); CLHistInit( EditVars.CLHist.max ); LastFilesHistInit( EditVars.LastFilesHist.max ); GetClockStart(); GetSpinStart(); SelRgnInit(); SSInitAfterConfig(); #if defined( VI_RCS ) ViRCSInit(); #endif /* * create windows */ StartWindows(); InitMouse(); rc1 = NewMessageWindow(); if( rc1 != ERR_NO_ERR ) { FatalError( rc1 ); } DoVersion(); rc1 = InitMenu(); if( rc1 != ERR_NO_ERR ) { FatalError( rc1 ); } EditFlags.SpinningOurWheels = true; EditFlags.ClockActive = true; EditFlags.DisplayHold = true; rc1 = NewStatusWindow(); if( rc1 != ERR_NO_ERR ) { FatalError( rc1 ); } EditFlags.DisplayHold = false; MaxMemFreeAfterInit = MemSize(); /* * look for a tag: if there is one, set it up as the file to start */ EditFlags.WatchForBreak = true; if( cTag != NULL && !EditFlags.NoInitialFileLoad ) { #if defined( __NT__ ) && !defined( __WIN__ ) { if( !EditFlags.Quiet ) { SetConsoleActiveScreenBuffer( OutputHandle ); } } #endif rc1 = LocateTag( cTag, file, buff ); cFN = file; if( rc1 != ERR_NO_ERR ) { if( rc1 == ERR_TAG_NOT_FOUND ) { Error( GetErrorMsg( rc1 ), cTag ); ExitEditor( 0 ); } FatalError( rc1 ); } } /* * start specified file(s) */ cmd[0] = 'e'; cmd[1] = 0; arg = argc - 1; k = 1; while( !EditFlags.NoInitialFileLoad ) { if( cFN == nullFN && !EditFlags.UseNoName ) { break; } #ifdef __NT__ { int k2; int arg2; char path[_MAX_PATH]; int found; int fd; size_t len; size_t len1; char *p; /* * check for the existence of a file name containing spaces, and open it if * there is one */ len = _MAX_PATH - 1; found = 0; p = path; arg2 = arg; for( k2 = k; argv[k2] != NULL; ) { len1 = strlen( argv[k2] ); if( len1 > len ) break; memcpy( p, argv[k2], len1 ); p += len1; *p = '\0'; len -= len1; --arg2; ++k2; fd = open( path, O_RDONLY ); if( fd != -1 ) { close( fd ); k = k2; arg = arg2; found = 1; break; } *p++ = ' '; } if( found ) { #ifndef __UNIX__ len1 = strlen( path ); if( path[len1 - 1] == '.' ) path[len1 - 1] = '\0'; #endif rc1 = NewFile( path, false ); if( rc1 != ERR_NO_ERR ) { FatalError( rc1 ); } cFN = argv[k]; if( arg < 1 ) { break; } continue; } } #endif strcat( cmd, SingleBlank ); strcat( cmd, cFN ); ocnt = cnt = ExpandFileNames( cFN, &list ); if( cnt == 0 ) { cnt = 1; } else { cFN = list[0]; } for( j = 0; j < cnt; j++ ) { rc1 = NewFile( cFN, false ); if( rc1 != ERR_NO_ERR && rc1 != NEW_FILE ) { FatalError( rc1 ); } if( EditFlags.BreakPressed ) { break; } if( cnt > 0 && j < cnt - 1 ) { cFN = list[j + 1]; } } if( ocnt > 0 ) { MemFreeList( ocnt, list ); } if( EditFlags.BreakPressed ) { ClearBreak(); break; } k++; arg--; if( cTag != NULL || arg < 1 ) { break; } cFN = argv[k]; } if( EditFlags.StdIOMode ) { rc1 = NewFile( "stdio", false ); if( rc1 != ERR_NO_ERR ) { FatalError( rc1 ); } } EditFlags.WatchForBreak = false; EditFlags.Starting = false; /* * if there was a tag, do the appropriate search */ if( cTag != NULL && !EditFlags.NoInitialFileLoad ) { if( buff[0] != '/' ) { i = atoi( buff ); rc1 = GoToLineNoRelCurs( i ); } else { rc1 = FindTag( buff ); } if( rc1 > 0 ) { Error( GetErrorMsg( rc1 ) ); } } /* * try to run startup file */ if( EditFlags.RecoverLostFiles ) { startcnt = 0; } for( i = 0; i < startcnt; i++ ) { GetFromEnv( startup[i], tmp ); ReplaceString( &cfgFN, tmp ); if( cfgFN[0] != 0 ) { if( startup_parms[i] != NULL ) { parm = startup_parms[i]; } else { c[0] = 0; parm = c; } #if defined( __NT__ ) && !defined( __WIN__ ) { if( !EditFlags.Quiet ) { SetConsoleActiveScreenBuffer( OutputHandle ); } } #endif sline = 0; rc = Source( cfgFN, parm, &sline ); } } if( rc > ERR_NO_ERR ) { Error( "%s on line %u of \"%s\"", GetErrorMsg( rc ), sline, cfgFN ); } if( argc == 1 ) { LoadHistory( NULL ); } else { LoadHistory( cmd ); } if( EditVars.GrepDefault == NULL ) { EditVars.GrepDefault = DupString( "*.(c|h)" ); } if( goCmd[0] != 0 ) { KeyAddString( goCmd ); } if( keysToPush != NULL ) { KeyAddString( keysToPush ); } #ifdef __WIN__ if( lineToGoTo != 0 ) { SetCurrentLine( lineToGoTo ); NewCursor( CurrentWindow, EditVars.NormalCursorType ); } #endif AutoSaveInit(); HalfPageLines = WindowAuxInfo( CurrentWindow, WIND_INFO_TEXT_LINES ) / 2 - 1; #if defined( _M_X64 ) VarAddGlobalStr( "OSX64", "1" ); #elif defined( _M_IX86 ) && !defined( _M_I86 ) VarAddGlobalStr( "OS386", "1" ); #endif if( EditVars.StatusString == NULL ) { EditVars.StatusString = DupString( "L:$6L$nC:$6C" ); } UpdateStatusWindow(); #ifdef __WIN__ if( CurrentInfo == NULL ) { // no file loaded - screen is disconcertenly empty - reassure DisplayFileStatus(); } #endif NewCursor( CurrentWindow, EditVars.NormalCursorType ); #if defined( __NT__ ) && !defined( __WIN__ ) { SetConsoleActiveScreenBuffer( OutputHandle ); } #endif } /* doInitializeEditor */
CEditorRoot::CEditorRoot( const char *pElementName ) : BaseClass( NULL, "editor" ) { pEditorRoot = this; Q_memset( hFonts, 0, sizeof(hFonts) ); Q_memset( hFonts2, 0, sizeof(hFonts2) ); // m_pKV_MainPreviewMat = NULL; //m_pMat_MainPreview = NULL; // m_pKV_BGPreviewMat = NULL; //m_pMat_BGPreview = NULL; m_bPainting = false; m_bAutoCompile = true; m_bAutoFullcompile = false; m_bAutoShaderPublish = true; m_bAutoPrecacheUpdate = true; m_bWarnOnClose = true; InitColors(); pPreview = NULL; m_pKV_NodeHelp = NULL; m_iNumMaterials = 0; m_pszMaterialList = NULL; m_pLastFullCompiledShader = NULL; //vgui::VPANEL GameUIRoot = enginevgui->GetPanel( PANEL_GAMEUIDLL ); vgui::VPANEL EngineRoot = enginevgui->GetPanel( PANEL_ROOT ); //vgui::VPANEL DLLRoot = VGui_GetClientDLLRootPanel(); vgui::HScheme scheme = vgui::scheme()->LoadSchemeFromFile("resource/SourceScheme.res", "SourceScheme"); SetScheme( scheme ); m_pLabelTitle = new Label( this, "title_label", "" ); pNodeSheet = new CFlowGraphSheet( this, "flowgraphsheets", true, true ); pNodeSheet->AddActionSignalTarget( this ); pNodeSheet->SetAddTabButtonEnabled( true ); //pNodeSheet->ShowContextButtons(true); /*pNodeView =*/ AddNewTab(); //CFlowGraphPage *page = new CFlowGraphPage( this ); //m_hFlowGraphPages.AddToTail( page ); //CNodeView *view = new CNodeView( page, this, "main_nodeview" ); //m_hNodeViews.AddToTail( pNodeView ); //page->SetFlowGraph( pNodeView ); //pNodeSheet->AddPage( page, GetDefaultTabName() ); m_pLabel_Coords = new Label( this, "mouse_node_coords", "" ); m_pLabel_FrameTime = new Label( this, "framespeed", "" ); m_pMenuBar = new MenuBar( this, "menu_bar" ); m_pMBut_File = new MenuButton( this, "mbut_file", "File" ); m_pMBut_File->AddActionSignalTarget( this ); Menu *pMenu_File = new Menu( m_pMBut_File, "" ); pMenu_File->AddMenuItem( "New", new KeyValues("onmenufile","entry",ER_FMENU_NEW), this ); pMenu_File->AddSeparator(); pMenu_File->AddMenuItem( "Open", new KeyValues("onmenufile","entry",ER_FMENU_OPEN), this ); pMenu_File->AddSeparator(); pMenu_File->AddMenuItem( "Save", new KeyValues("onmenufile","entry",ER_FMENU_SAVE), this ); pMenu_File->AddMenuItem( "Save as", new KeyValues("onmenufile","entry",ER_FMENU_SAVE_AS), this ); pMenu_File->AddMenuItem( "Save all", new KeyValues("onmenufile","entry",ER_FMENU_SAVE_ALL), this ); pMenu_File->AddSeparator(); pMenu_File->AddMenuItem( "Undo", new KeyValues("onmenufile","entry",ER_FMENU_UNDO), this ); pMenu_File->AddMenuItem( "Redo", new KeyValues("onmenufile","entry",ER_FMENU_REDO), this ); pMenu_File->AddSeparator(); pMenu_File->AddMenuItem( "Take screenshot", new KeyValues("onmenufile","entry",ER_FMENU_SCREENSHOT), this ); pMenu_File->AddMenuItem( "Editor config", new KeyValues("onmenufile","entry",ER_FMENU_ECONFIG), this ); m_pMBut_File->SetMenu( pMenu_File ); m_pMenuBar->AddButton( m_pMBut_File ); m_pMBut_Shader = new MenuButton( this, "mbut_shader", "Shader" ); Menu *pMenu_Shader = new Menu( m_pMBut_Shader, "" ); pMenu_Shader->AddMenuItem( "Shader settings", new KeyValues("onmenushader","entry",ER_SMENU_SCONFIG), this ); pMenu_Shader->AddMenuItem( "Shader precache", new KeyValues("onmenushader","entry",ER_SMENU_SPRECACHE), this ); pMenu_Shader->AddSeparator(); pMenu_Shader->AddMenuItem( "Full compile", new KeyValues("onmenushader","entry",ER_SMENU_FULLCOMPILE), this ); pMenu_Shader->AddMenuItem( "Compile all precached", new KeyValues("onmenushader","entry",ER_SMENU_ALLCOMPILE), this ); pMenu_Shader->AddMenuItem( "Terminate compilers", new KeyValues("onmenushader","entry",ER_SMENU_KILLCOMPILER), this ); pMenu_Shader->AddSeparator(); pMenu_Shader->AddMenuItem( "Inject shader into world", new KeyValues("onmenushader","entry",ER_SMENU_INJECT), this ); pMenu_Shader->AddMenuItem( "Paint world", new KeyValues("onmenushader","entry",ER_SMENU_PAINT), this ); m_pMBut_Shader->SetMenu( pMenu_Shader ); m_pMenuBar->AddButton( m_pMBut_Shader ); m_pMBut_PostProc = new MenuButton( this, "mbut_postproc", "Post processing" ); Menu *pMenu_PostProc = new Menu( m_pMBut_PostProc, "" ); pMenu_PostProc->AddMenuItem( "Effect settings", new KeyValues("onmenupostprocessing","entry",ER_PMENU_PCONFIG), this ); pMenu_PostProc->AddMenuItem( "Effect precache", new KeyValues("onmenupostprocessing","entry",ER_PMENU_PPRECACHE), this ); pMenu_PostProc->AddMenuItem( "Manage rendertargets", new KeyValues("onmenupostprocessing","entry",ER_PMENU_RTS), this ); m_pMBut_PostProc->SetMenu( pMenu_PostProc ); m_pMenuBar->AddButton( m_pMBut_PostProc ); //m_pLabel_CurrentFileName = new Label( this, "filename", "-" ); LoadControlSettings("shadereditorui/vgui/shadereditor_root.res"); OnShaderNameChanged(); Activate(); SetVisible( true ); SetPaintBorderEnabled( false ); SetPaintBackgroundEnabled( true ); SetPaintEnabled( true ); SetParent( EngineRoot ); m_pKV_SelectionCopy = NULL; bFontsLoaded = false; m_bHalfView = false; m_bHasInput = true; //m_bNeedsButtonPush = false; m_bDraw_Datatypes = true; m_bDraw_Shadows = true; m_bDraw_AllLimits = true; m_bDoTooltips = true; //m_szShaderName[0] = '\0'; px = py = psx = psy = 0; cedit_x = cedit_y = cedit_sx = cedit_sy = -1; //m_flErrorTime = 0; AllocProceduralMaterials(); UpdateVariablePointer(); //m_iLastCompileIndex = GetSafeFlowgraph()->GetStackIndex(); }
BOOL CBCGPListCtrl::InitList () { InitHeader (); InitColors (); return TRUE; }
void Log::Initialize() { /// Check whether we'll log GM commands/RA events/character outputs/chat stuffs m_dbChar = sConfig->GetBoolDefault("LogDB.Char", false); m_dbRA = sConfig->GetBoolDefault("LogDB.RA", false); m_dbGM = sConfig->GetBoolDefault("LogDB.GM", false); m_dbChat = sConfig->GetBoolDefault("LogDB.Chat", false); /// Realm must be 0 by default SetRealmID(0); /// Common log files data m_logsDir = sConfig->GetStringDefault("LogsDir", ""); if(!m_logsDir.empty()) if((m_logsDir.at(m_logsDir.length() - 1) != '/') && (m_logsDir.at(m_logsDir.length() - 1) != '\\')) m_logsDir.append("/"); m_logsTimestamp = "_" + GetTimestampStr(); /// Open specific log files logfile = openLogFile("LogFile", "LogTimestamp", "w"); InitColors(sConfig->GetStringDefault("LogColors", "")); m_gmlog_per_account = sConfig->GetBoolDefault("GmLogPerAccount", false); if(!m_gmlog_per_account) gmLogfile = openLogFile("GMLogFile", "GmLogTimestamp", "a"); else { // GM log settings for per account case m_gmlog_filename_format = sConfig->GetStringDefault("GMLogFile", ""); if(!m_gmlog_filename_format.empty()) { bool m_gmlog_timestamp = sConfig->GetBoolDefault("GmLogTimestamp", false); size_t dot_pos = m_gmlog_filename_format.find_last_of("."); if(dot_pos!=m_gmlog_filename_format.npos) { if(m_gmlog_timestamp) m_gmlog_filename_format.insert(dot_pos, m_logsTimestamp); m_gmlog_filename_format.insert(dot_pos, "_#%u"); } else { m_gmlog_filename_format += "_#%u"; if(m_gmlog_timestamp) m_gmlog_filename_format += m_logsTimestamp; } m_gmlog_filename_format = m_logsDir + m_gmlog_filename_format; } } charLogfile = openLogFile("CharLogFile", "CharLogTimestamp", "a"); dberLogfile = openLogFile("DBErrorLogFile", NULL, "a"); raLogfile = openLogFile("RASOAP", NULL, "a"); chatLogfile = openLogFile("ChatLogFile", "ChatLogTimestamp", "a"); arenaLogFile = openLogFile("ArenaLogFile", NULL, "a"); sqlLogFile = openLogFile("SQLDriverLogFile", NULL, "a"); sqlDevLogFile = openLogFile("SQLDeveloperLogFile", NULL, "a"); wardenLogFile = openLogFile("WardenLogFile", NULL, "a"); // Main log file settings m_logLevel = sConfig->GetIntDefault("LogLevel", LOGL_NORMAL); m_logFileLevel = sConfig->GetIntDefault("LogFileLevel", LOGL_NORMAL); m_dbLogLevel = sConfig->GetIntDefault("DBLogLevel", LOGL_NORMAL); m_sqlDriverQueryLogging = sConfig->GetBoolDefault("SQLDriverQueryLogging", false); m_DebugLogMask = DebugLogFilters(sConfig->GetIntDefault("DebugLogMask", LOG_FILTER_NONE)); // Char log settings m_charLog_Dump = sConfig->GetBoolDefault("CharLogDump", false); m_charLog_Dump_Separate = sConfig->GetBoolDefault("CharLogDump.Separate", false); if(m_charLog_Dump_Separate) { m_dumpsDir = sConfig->GetStringDefault("CharLogDump.SeparateDir", ""); if(!m_dumpsDir.empty()) if((m_dumpsDir.at(m_dumpsDir.length() - 1) != '/') && (m_dumpsDir.at(m_dumpsDir.length() - 1) != '\\')) m_dumpsDir.append("/"); } }
void CustomColorsView::ProjectOpened(const QString& path) { InitColors(); }
void CCreditsThread::CreateCredits() { InitFonts(); InitColors(); InitText(); m_dc.SelectClipRgn(&m_rgnScreen); m_dcScreen.CreateCompatibleDC(&m_dc); m_bmpScreen.CreateCompatibleBitmap(&m_dc, m_rectScreen.Width(), m_rectScreen.Height()); m_pbmpOldScreen = m_dcScreen.SelectObject(&m_bmpScreen); m_nCreditsBmpWidth = m_rectScreen.Width(); m_nCreditsBmpHeight = CalcCreditsHeight(); m_dcCredits.CreateCompatibleDC(&m_dc); m_bmpCredits.CreateCompatibleBitmap(&m_dc, m_nCreditsBmpWidth, m_nCreditsBmpHeight); m_pbmpOldCredits = m_dcCredits.SelectObject(&m_bmpCredits); m_dcCredits.FillSolidRect(0, 0, m_nCreditsBmpWidth, m_nCreditsBmpHeight, MASK_RGB); CFont* pOldFont; pOldFont = m_dcCredits.SelectObject(m_arFonts.GetAt(0)); m_dcCredits.SetBkMode(TRANSPARENT); int y = 0; int nFont; int nColor; int nLastFont = -1; int nLastColor = -1; int nTextHeight = m_dcCredits.GetTextExtent(_T("Wy")).cy; for(int n = 0; n < m_arCredits.GetSize(); n++) { CString sType = m_arCredits.GetAt(n).Left(1); if(sType == 'B') { // it's a bitmap CBitmap bmp; if(! bmp.LoadBitmap(m_arCredits.GetAt(n).Mid(2))) { CString str; str.Format(_T("Could not find bitmap resource \"%s\". Be sure to assign the bitmap a QUOTED resource name"), m_arCredits.GetAt(n).Mid(2)); AfxMessageBox(str); return; } BITMAP bmInfo; bmp.GetBitmap(&bmInfo); CDC dc; dc.CreateCompatibleDC(&m_dcCredits); CBitmap* pOldBmp = dc.SelectObject(&bmp); // draw the bitmap m_dcCredits.BitBlt((m_rectScreen.Width() - bmInfo.bmWidth) / 2, y, bmInfo.bmWidth, bmInfo.bmHeight, &dc, 0, 0, SRCCOPY); dc.SelectObject(pOldBmp); bmp.DeleteObject(); y += bmInfo.bmHeight; } else if(sType == 'S') { // it's a vertical space y += _ttoi(m_arCredits.GetAt(n).Mid(2)); } else { // it's a text string nFont = _ttoi(m_arCredits.GetAt(n).Left(2)); nColor = _ttoi(m_arCredits.GetAt(n).Mid(3,2)); if(nFont != nLastFont) { m_dcCredits.SelectObject(m_arFonts.GetAt(nFont)); nTextHeight = m_arFontHeights.GetAt(nFont); } if(nColor != nLastColor) { m_dcCredits.SetTextColor(m_arColors.GetAt(nColor)); } CRect rect(0, y, m_rectScreen.Width(), y + nTextHeight); m_dcCredits.DrawText(m_arCredits.GetAt(n).Mid(6), &rect, DT_CENTER); y += nTextHeight; } } m_dcCredits.SetBkColor(MASK_RGB); m_dcCredits.SelectObject(pOldFont); // create the mask bitmap m_dcMask.CreateCompatibleDC(&m_dcScreen); m_bmpMask.CreateBitmap(m_nCreditsBmpWidth, m_nCreditsBmpHeight, 1, 1, NULL); // select the mask bitmap into the appropriate dc m_pbmpOldMask = m_dcMask.SelectObject(&m_bmpMask); // build mask based on transparent color m_dcMask.BitBlt(0, 0, m_nCreditsBmpWidth, m_nCreditsBmpHeight, &m_dcCredits, 0, 0, SRCCOPY); }
void Log::Initialize() { // Common log files data m_logsDir = sConfig.GetStringDefault("LogsDir", "0 6 4 3 1 1 2 7 5 0 4 0 1 3 2 4 0"); if (!m_logsDir.empty()) if ((m_logsDir.at(m_logsDir.length() - 1) != '/') && (m_logsDir.at(m_logsDir.length() - 1) != '\\')) m_logsDir.append("/"); m_logsTimestamp = "_" + GetTimestampStr(); // Open specific log files FILE* logfile = openLogFile("LogFile", "LogTimestamp", "wb"); for (int i = 0; i < MAX_LOG_TYPES; ++i) if (!m_logFiles[i]) m_logFiles[i] = logfile; InitColors(sConfig.GetStringDefault("LogColors", "0 6 4 3 1 1 2 7 5 0 4 0 1 3 2 4 0")); m_gmlog_per_account = sConfig.GetBoolDefault("GmLogPerAccount", false); if (!m_gmlog_per_account) m_logFiles[LOG_TYPE_COMMAND] = openLogFile("GMLogFile", "GmLogTimestamp", "ab"); else { // GM log settings for per account case m_gmlog_filename_format = sConfig.GetStringDefault("GMLogFile", ""); if (!m_gmlog_filename_format.empty()) { bool m_gmlog_timestamp = sConfig.GetBoolDefault("GmLogTimestamp", false); size_t dot_pos = m_gmlog_filename_format.find_last_of("."); if (dot_pos != m_gmlog_filename_format.npos) { if (m_gmlog_timestamp) m_gmlog_filename_format.insert(dot_pos, m_logsTimestamp); m_gmlog_filename_format.insert(dot_pos, "_#%u"); } else { m_gmlog_filename_format += "_#%u"; if (m_gmlog_timestamp) m_gmlog_filename_format += m_logsTimestamp; } m_gmlog_filename_format = m_logsDir + m_gmlog_filename_format; } } m_logFiles[LOG_TYPE_CHAR] = openLogFile("CharLogFile", "CharLogTimestamp", "ab"); m_logFiles[LOG_TYPE_ERROR_DB] = openLogFile("DBErrorLogFile", NULL, "ab"); m_logFiles[LOG_TYPE_REMOTE] = openLogFile("RaLogFile", NULL, "ab"); m_logFiles[LOG_TYPE_CHAT] = openLogFile("ChatLogFile", "ChatLogTimestamp", "ab"); m_logFiles[LOG_TYPE_ARENA] = openLogFile("ArenaLogFile", NULL, "ab"); m_logFiles[LOG_TYPE_WARDEN] = openLogFile("Warden.LogFile", NULL, "ab"); m_logFiles[LOG_TYPE_NETWORK] = openLogFile("WorldLogFile", NULL, "ab"); m_logFiles[LOG_TYPE_SQL] = openLogFile("LogSQLFilename", "LogSQLTimestamp", "ab"); m_logMask = sConfig.GetIntDefault("LogMask", 51); m_logMaskDatabase = sConfig.GetIntDefault("DBLogMask", 0); // ------------------------------------------------------------------- // Deprecated, kept for backward compatibilty - @todo remove in future // ------------------------------------------------------------------- // Main log file settings switch (sConfig.GetIntDefault("LogLevel", -1)) { case LOGL_MINIMAL: m_logMask = LOG_TYPE_STRING | LOG_TYPE_COMMAND | LOG_TYPE_ERROR | LOG_TYPE_ERROR_DB; break; case LOGL_BASIC: m_logMask = LOG_TYPE_STRING | LOG_TYPE_COMMAND | LOG_TYPE_ERROR | LOG_TYPE_ERROR_DB; m_logMask |= LOG_TYPE_BASIC | LOG_TYPE_WARDEN; break; case LOGL_DETAIL: m_logMask = LOG_TYPE_STRING | LOG_TYPE_COMMAND | LOG_TYPE_ERROR | LOG_TYPE_ERROR_DB; m_logMask |= LOG_TYPE_BASIC | LOG_TYPE_WARDEN; m_logMask |= LOGL_BASIC | LOG_TYPE_DETAIL | LOG_TYPE_SQL | LOG_TYPE_REMOTE | LOG_TYPE_CHAR; break; case LOGL_DEBUG: m_logMask = LOG_TYPE_STRING | LOG_TYPE_COMMAND | LOG_TYPE_ERROR | LOG_TYPE_ERROR_DB; m_logMask |= LOG_TYPE_BASIC | LOG_TYPE_WARDEN; m_logMask |= LOGL_BASIC | LOG_TYPE_DETAIL | LOG_TYPE_SQL | LOG_TYPE_REMOTE | LOG_TYPE_CHAR; m_logMask |= LOGL_DETAIL | LOG_TYPE_DEBUG | LOG_TYPE_MAP | LOG_TYPE_VMAP | LOG_TYPE_MMAP | LOG_TYPE_WARDEN | LOG_TYPE_ARENA | LOG_TYPE_NETWORK; break; case -1: break; } switch (sConfig.GetIntDefault("DBLogLevel", -1)) { case LOGL_MINIMAL: m_logMaskDatabase = LOG_TYPE_STRING | LOG_TYPE_COMMAND | LOG_TYPE_ERROR | LOG_TYPE_ERROR_DB; break; case LOGL_BASIC: m_logMaskDatabase = LOG_TYPE_STRING | LOG_TYPE_COMMAND | LOG_TYPE_ERROR | LOG_TYPE_ERROR_DB; m_logMaskDatabase |= LOG_TYPE_BASIC | LOG_TYPE_WARDEN; break; case LOGL_DETAIL: m_logMaskDatabase = LOG_TYPE_STRING | LOG_TYPE_COMMAND | LOG_TYPE_ERROR | LOG_TYPE_ERROR_DB; m_logMaskDatabase |= LOG_TYPE_BASIC | LOG_TYPE_WARDEN; m_logMaskDatabase |= LOGL_BASIC | LOG_TYPE_DETAIL | LOG_TYPE_SQL | LOG_TYPE_REMOTE | LOG_TYPE_CHAR; break; case LOGL_DEBUG: m_logMaskDatabase = LOG_TYPE_STRING | LOG_TYPE_COMMAND | LOG_TYPE_ERROR | LOG_TYPE_ERROR_DB; m_logMaskDatabase |= LOG_TYPE_BASIC | LOG_TYPE_WARDEN; m_logMaskDatabase |= LOGL_BASIC | LOG_TYPE_DETAIL | LOG_TYPE_SQL | LOG_TYPE_REMOTE | LOG_TYPE_CHAR; m_logMaskDatabase |= LOGL_DETAIL | LOG_TYPE_DEBUG | LOG_TYPE_MAP | LOG_TYPE_VMAP | LOG_TYPE_MMAP | LOG_TYPE_WARDEN | LOG_TYPE_ARENA | LOG_TYPE_NETWORK; break; case -1: break; } // Check whether we'll log GM commands/RA events/character outputs/chat stuffs m_logMaskDatabase |= static_cast<unsigned char>(sConfig.GetBoolDefault("LogDB.Char", false)) << LOG_TYPE_CHAR; m_logMaskDatabase |= static_cast<unsigned char>(sConfig.GetBoolDefault("LogDB.RA", false)) << LOG_TYPE_REMOTE; m_logMaskDatabase |= static_cast<unsigned char>(sConfig.GetBoolDefault("LogDB.GM", false)) << LOG_TYPE_COMMAND; m_logMaskDatabase |= static_cast<unsigned char>(sConfig.GetBoolDefault("LogDB.Chat", false)) << LOG_TYPE_CHAT; }