00001 #ifndef ExtendedUUIDH 00002 #define ExtendedUUIDH 00003 00004 /******************************************************************************* 00005 Copyright 2000,2001 Petr Kulhanek 00006 00007 This file is part of Core plugin. 00008 00009 Core plugin is free software; you can redistribute it and/or modify 00010 it under the terms of the GNU General Public License as published by 00011 the Free Software Foundation; either version 2 of the License, or 00012 (at your option) any later version. 00013 00014 Core plugin is distributed in the hope that it will be useful, 00015 but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00017 GNU General Public License for more details. 00018 00019 You should have received a copy of the GNU General Public License 00020 along with Core plugin; if not, write to the Free Software 00021 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00022 *******************************************************************************/ 00023 /******************************************************************************* 00024 ** PROJEKT: Projekt NEMESIS 00025 ** SOUBOR: ExtendedUUID 00026 ** ůČEL: rozšířené UUID se zahrnutím lokalizace 00027 ** VERZE: 1.0 00028 ** JAZYK: CBuilder C++ 00029 ** CÍLOVÝ POČÍTAČ: IBM PC 00030 ** PROGRAMÁTOR: Petr Kulhánek 00031 ** HISTORIE ÚPRAV: 00032 VERZE DATUM POZNÁMKA 00033 1.0 2000-09-05 vznik třídy 00034 *******************************************************************************/ 00035 00039 /* HLAVIČKOVÉ SOUBORY *********************************************************/ 00040 00041 #include "CoreMainHeader.h" 00042 #include "UUIDClass.h" 00043 00044 /* KONEC HLAVIČKOVÝCH SOUBORů *************************************************/ 00045 00046 class CPluginModule; 00047 00048 00049 /* DEFINICE TŘÍD **************************************************************/ 00050 00052 00058 class NEMESIS_CORE_PACKAGE CExtUUID : public CUUID{ 00059 public: 00060 // metody - konstrukce objektu 00061 __fastcall CExtUUID(void); 00062 __fastcall CExtUUID(const CSmallString& classname); 00063 __fastcall CExtUUID(const CSmallString& classname,const CSmallString& uuid); 00064 00065 // metody - 00066 bool __fastcall LoadFromString(const CSmallString& string); 00067 const CSmallString __fastcall GetFullStringForm(void) const; 00068 friend ostream& __fastcall operator << (ostream& str,const CExtUUID& extuuid); 00069 friend istream& __fastcall operator >> (istream& str,CExtUUID& extuuid); 00070 00071 // metody - zjištění jména a lokalizovaného jména třídy 00072 inline const CSmallString& __fastcall GetClassName(void) const; 00073 inline const CSmallString& __fastcall GetLocaleClassName(void) const; 00074 inline const CSmallString& __fastcall GetLocaleClassHint(void) const; 00075 00076 // metody - aktualizace lokalizovaných položek 00077 void __fastcall UpdateLocalization(CPluginModule* module); 00078 00079 // sekce soukromých dat ------------------------------------------------------ 00080 private: 00081 CSmallString ClassName; // jméno třídy 00082 CSmallString LocaleClassName; // lokalizované jméno třídy 00083 CSmallString LocaleClassHint; // lokalizovaný popis třídy 00084 }; 00085 00086 /* KONEC DEFINICE TŘÍD ********************************************************/ 00087 00088 // ----------------------------------------------------------------------------- 00089 00090 inline const CSmallString& __fastcall CExtUUID::GetClassName(void) const 00091 { 00092 return(ClassName); 00093 } 00094 00095 // ----------------------------------------------------------------------------- 00096 00097 inline const CSmallString& __fastcall CExtUUID::GetLocaleClassName(void) const 00098 { 00099 return(LocaleClassName); 00100 } 00101 00102 // ----------------------------------------------------------------------------- 00103 00104 inline const CSmallString& __fastcall CExtUUID::GetLocaleClassHint(void) const 00105 { 00106 return(LocaleClassHint); 00107 } 00108 00109 // ----------------------------------------------------------------------------- 00110 00111 #endif