aswang
1.0
|
00001 /* 00002 Copyright 2003 Joseph Alvis 00003 00004 This file is part of Aswang. 00005 00006 Aswang is free software: you can redistribute it and/or modify 00007 it under the terms of the GNU Lesser General Public License as published by 00008 the Free Software Foundation, either version 3 of the License, or 00009 (at your option) any later version. 00010 00011 Aswang is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 GNU Lesser General Public License for more details. 00015 00016 You should have received a copy of the GNU Lesser General Public License 00017 along with Aswang. If not, see <http://www.gnu.org/licenses/>. 00018 */ 00019 00020 #include "windowclass.h" 00021 00022 using namespace aswang; 00023 00024 void windowclass::SetName(AswangStr name) { 00025 if(wc.lpszClassName != NULL) 00026 delete[] wc.lpszClassName; 00027 size_t len = name.length(); 00028 wc.lpszClassName=new _TCHAR[len+1]; 00029 #ifdef _UNICODE 00030 wcscpy_s((_TCHAR *)wc.lpszClassName,len+1U,name.c_str()); 00031 #else 00032 strcpy_s((_TCHAR *)wc.lpszClassName,len+1,name.c_str()); 00033 #endif 00034 } 00035 00036 void windowclass::Register() { 00037 if(!registered) { 00038 registered = true; 00039 RegisterClass(&wc); 00040 } 00041 } 00042 00043 void windowclass::Unregister() { 00044 if(registered) { 00045 registered = false; 00046 UnregisterClass(wc.lpszClassName,wc.hInstance); 00047 } 00048 }