00001 /* AbiWord 00002 * Copyright (C) 2002 Jordi Mas i Hernāndez <jmas@softcatala.org> 00003 * 00004 * This program is free software; you can redistribute it and/or 00005 * modify it under the terms of the GNU General Public License 00006 * as published by the Free Software Foundation; either version 2 00007 * of the License, or (at your option) any later version. 00008 * 00009 * This program is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU General Public License 00015 * along with this program; if not, write to the Free Software 00016 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 00017 * 02110-1301 USA. 00018 */ 00019 00020 #ifndef AP_WIN32DIALOG_METADATA_H 00021 #define AP_WIN32DIALOG_METADATA_H 00022 00023 #include "ap_Dialog_MetaData.h" 00024 #include "xap_Win32PropertySheet.h" 00025 #include "xap_Win32DialogBase.h" 00026 00027 // localise controls 00028 struct control_id_string_id 00029 { 00030 UT_sint32 controlId; 00031 XAP_String_Id stringId; 00032 }; 00033 00034 struct control_text 00035 { 00036 UT_sint32 controlId; 00037 const char *string; 00038 }; 00039 00040 struct control_var 00041 { 00042 UT_sint32 controlId; 00043 UT_String *string; 00044 }; 00045 00046 00047 class XAP_Win32Frame; 00048 00049 /*****************************************************************/ 00050 00051 class ABI_EXPORT AP_Win32Dialog_MetaData: public AP_Dialog_MetaData, XAP_Win32DialogBase 00052 { 00053 public: 00054 AP_Win32Dialog_MetaData(XAP_DialogFactory * pDlgFactory, XAP_Dialog_Id id); 00055 virtual ~AP_Win32Dialog_MetaData(void); 00056 00057 virtual void runModal(XAP_Frame * pFrame); 00058 00059 static XAP_Dialog * static_constructor(XAP_DialogFactory *, XAP_Dialog_Id id); 00060 00061 protected: 00062 00063 }; 00064 00065 class ABI_EXPORT AP_Win32Dialog_MetaData_General: public XAP_Win32PropertyPage 00066 { 00067 00068 public: 00069 AP_Win32Dialog_MetaData_General(); 00070 ~AP_Win32Dialog_MetaData_General(); 00071 00072 void setContainer(AP_Win32Dialog_MetaData* pData){m_pData=pData;}; 00073 AP_Win32Dialog_MetaData* getContainer(){return m_pData;}; 00074 void transferData(); 00075 00076 private: 00077 00078 virtual void _onInitDialog(); 00079 virtual void _onOK(); 00080 char* _get_text(XAP_String_Id nID, char *szBuff, int nSize); 00081 00082 UT_String m_sTitle; 00083 UT_String m_sSubject; 00084 UT_String m_sAuthor; 00085 UT_String m_sPublisher; 00086 UT_String m_sCoAuthor; 00087 AP_Win32Dialog_MetaData* m_pData; 00088 00089 }; 00090 00091 class ABI_EXPORT AP_Win32Dialog_MetaData_Summary: public XAP_Win32PropertyPage 00092 { 00093 public: 00094 AP_Win32Dialog_MetaData_Summary(); 00095 ~AP_Win32Dialog_MetaData_Summary(); 00096 00097 void setContainer(AP_Win32Dialog_MetaData* pData){m_pData=pData;}; 00098 AP_Win32Dialog_MetaData* getContainer(){return m_pData;}; 00099 void transferData(); 00100 00101 private: 00102 00103 virtual void _onOK(); 00104 char* _get_text(XAP_String_Id nID, char *szBuff, int nSize); 00105 virtual void _onInitDialog(); 00106 00107 AP_Win32Dialog_MetaData* m_pData; 00108 UT_String m_sCategory; 00109 UT_String m_sKeywords; 00110 UT_String m_sLanguages; 00111 UT_String m_sDescription; 00112 00113 }; 00114 00115 class ABI_EXPORT AP_Win32Dialog_MetaData_Permissions: public XAP_Win32PropertyPage 00116 { 00117 public: 00118 AP_Win32Dialog_MetaData_Permissions(); 00119 ~AP_Win32Dialog_MetaData_Permissions(); 00120 00121 void setContainer(AP_Win32Dialog_MetaData* pData){m_pData=pData;}; 00122 AP_Win32Dialog_MetaData* getContainer(){return m_pData;}; 00123 void transferData(); 00124 00125 private: 00126 00127 char* _get_text(XAP_String_Id nID, char *szBuff, int nSize); 00128 virtual void _onInitDialog(); 00129 virtual void _onOK(); 00130 00131 AP_Win32Dialog_MetaData* m_pData; 00132 UT_String m_sSource; 00133 UT_String m_sRelation; 00134 UT_String m_sCoverage; 00135 UT_String m_sRights; 00136 }; 00137 00138 #endif /* AP_WIN32DIALOG_METADATA_H */