/**************************************************************
 *
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 *
 *************************************************************/



#ifndef _DIALOGS_HRC
#define _DIALOGS_HRC

#include <svtools/controldims.hrc>
#include <xmlsecurity/global.hrc>

#define STD_MASKCOLOR					Color{Red=0xffff;Green=0x0000;Blue=0xffff;}

#define FL_BOTTOM_SEP					50
#define BTN_OK							51
#define BTN_CANCEL						52
#define BTN_HELP						53
#define LB_SIGNATURES					54
#define BTN_VIEWCERT					55
#define STR_HEADERBAR					56
#define BTN_RESET						57
#define STR_VALID_SIGNATURE             58
#define STR_NO_INFO_TO_VERIFY           59
#define STR_INVALID_SIGNATURE           60

// --------- general metrics ---------
#define DLGS_WIDTH						287
#define DLGS_HEIGHT						195
// --------- ... for tab dialogs -----
#define TP_WIDTH						260
#define TP_HEIGHT						185
#define RIDDER_HEIGHT					(RSC_CD_PUSHBUTTON_HEIGHT)
#define TD_SP_INNERBORDER_LEFT			3
#define TD_SP_INNERBORDER_RIGHT			3
#define TD_SP_INNERBORDER_TOP			3
#define TD_SP_INNERBORDER_BOTTOM		3
#define TD_WIDTH                        (TP_WIDTH+RSC_SP_DLG_INNERBORDER_LEFT+RSC_SP_DLG_INNERBORDER_RIGHT)
#define TD_HEIGHT						(TP_HEIGHT+TD_SP_INNERBORDER_TOP+2*TD_SP_INNERBORDER_BOTTOM+RSC_CD_PUSHBUTTON_HEIGHT+RIDDER_HEIGHT)

#define SEP_FL_SPACE_Y					6
#define SEP_FL_ADJ_Y(val)				(val-3)
#define DLGS_BOTTOM_BTN_L(dlgh)			(dlgh-RSC_SP_DLG_INNERBORDER_BOTTOM)
#define DLGS_BOTTOM_BTN_Y(dlgh)			(DLGS_BOTTOM_BTN_L(dlgh)-RSC_CD_PUSHBUTTON_HEIGHT)
#define DLGS_BOTTOM_FL_Y(dlgh)			(DLGS_BOTTOM_BTN_Y(dlgh)-SEP_FL_SPACE_Y-5)
#define DLGS_BOTTOM_LAST_CTRL_L(dlgh)	(DLGS_BOTTOM_BTN_Y(dlgh)-2*SEP_FL_SPACE_Y-3)
#define DLGS_BOTTOM_HELP_X(dlgw)		(dlgw-RSC_SP_DLG_INNERBORDER_RIGHT-RSC_CD_PUSHBUTTON_WIDTH)
#define DLGS_BOTTOM_CANCEL_X(dlgw)		(DLGS_BOTTOM_HELP_X(dlgw)-RSC_SP_CTRL_X-RSC_CD_PUSHBUTTON_WIDTH)
#define DLGS_BOTTOM_OK_X(dlgw)          (DLGS_BOTTOM_CANCEL_X(dlgw)-RSC_SP_CTRL_DESC_X-RSC_CD_PUSHBUTTON_WIDTH)


// --------- dialog Digital Signatures ---------
#define BTN_ADDCERT						2
#define BTN_REMOVECERT					3
#define FT_HINT_DOC						4
#define FT_HINT_BASIC					5
#define FT_HINT_PACK					6
#define IMG_STATE_VALID					7
#define FI_STATE_VALID					8
#define IMG_STATE_BROKEN                9
#define FI_STATE_BROKEN                 10
#define IMG_STATE_NOTVALIDATED          11
#define FI_STATE_NOTVALIDATED           12
#define IMG_STATE_VALID_HC              13
#define IMG_STATE_BROKEN_HC             14
#define IMG_STATE_NOTVALIDATED_HC       15
#define FI_STATE_OLDSIGNATURE           16

//#define DS_WIDTH						DLGS_WIDTH
//#define DS_HEIGHT						DLGS_HEIGHT
#define DS_BTNWIDTH_1					70
#define DS_BTNSPACE_X					RSC_SP_CTRL_X
#define DS_WIDTH						(RSC_SP_DLG_INNERBORDER_LEFT+RSC_SP_DLG_INNERBORDER_RIGHT+2*DS_BTNSPACE_X+3*DS_BTNWIDTH_1)
#define DS_HEIGHT						(DLGS_WIDTH*2/3)

#define DS_COL_0						RSC_SP_DLG_INNERBORDER_LEFT
//#define DS_COL_MID						(DS_WIDTH/2)
//#define DS_COL_3						(DS_COL_MID-(DS_BTNWIDTH_1/2))
//#define DS_COL_4						(DS_COL_2+DS_BTNWIDTH_1)
//#define DS_COL_2						(DS_COL_3-DS_BTNSPACE_X)
//#define DS_COL_1						(DS_COL_2-DS_BTNWIDTH_1)
#define DS_COL_1						DS_COL_0
#define DS_COL_2						(DS_COL_1+DS_BTNWIDTH_1)
#define DS_COL_3						(DS_COL_2+DS_BTNSPACE_X)
#define DS_COL_4						(DS_COL_3+DS_BTNWIDTH_1)
#define DS_COL_5						(DS_COL_4+DS_BTNSPACE_X)
//#define	DS_COL_6						(DS_COL_5+DS_BTNWIDTH_1)
#define DS_COL_7						(DS_WIDTH-RSC_SP_DLG_INNERBORDER_RIGHT)
#define	DS_COL_6						DS_COL_7

#define DS_ROW_0						RSC_SP_DLG_INNERBORDER_TOP
#define DS_ROW_1						(DS_ROW_0+RSC_CD_FIXEDTEXT_HEIGHT+RSC_SP_CTRL_DESC_X)
#define DS_ROW_7						DLGS_BOTTOM_BTN_L(DS_HEIGHT)
#define DS_ROW_6						DLGS_BOTTOM_BTN_Y(DS_HEIGHT)
#define DS_ROW_5						DLGS_BOTTOM_FL_Y(DS_HEIGHT)
#define DS_ROW_4						DLGS_BOTTOM_LAST_CTRL_L(DS_HEIGHT)
#define	DS_ROW_3						(DS_ROW_4-RSC_CD_PUSHBUTTON_HEIGHT)
#define DS_ROW_2A						(DS_ROW_3-RSC_CD_FIXEDTEXT_HEIGHT-RSC_SP_CTRL_Y)
#define DS_ROW_2						(DS_ROW_2A-RSC_SP_CTRL_GROUP_Y)

#define DS_LB_WIDTH						(DS_COL_7-DS_COL_0)

// --------- dialog Ceritficate chooser ---------
#define FT_HINT_SELECT					1

#define CS_WIDTH						DLGS_WIDTH
#define CS_HEIGHT						DLGS_HEIGHT
#define CS_BTNWIDTH_1					DS_BTNWIDTH_1

#define CS_COL_0						RSC_SP_DLG_INNERBORDER_LEFT
#define CS_COL_2						(CS_WIDTH-RSC_SP_DLG_INNERBORDER_RIGHT)
#define	CS_COL_1						(CS_COL_2-CS_BTNWIDTH_1)

#define CS_ROW_0						RSC_SP_DLG_INNERBORDER_TOP
#define CS_ROW_1						(CS_ROW_0+RSC_CD_FIXEDTEXT_HEIGHT+RSC_SP_CTRL_DESC_X)
#define CS_ROW_4						DLGS_BOTTOM_LAST_CTRL_L(CS_HEIGHT)
#define	CS_ROW_3						(CS_ROW_4-RSC_CD_PUSHBUTTON_HEIGHT)
#define CS_ROW_2						(CS_ROW_3-RSC_SP_CTRL_Y)

#define CS_LB_WIDTH						(CS_COL_2-CS_COL_0)

// --------- tab dialog Certificate viewer ---------

#define CV_COL_0						TD_SP_INNERBORDER_LEFT
#define CV_COL_1						(TP_WIDTH-RSC_SP_TBPG_INNERBORDER_RIGHT)
#define CV_ROW_0						RSC_SP_TBPG_INNERBORDER_TOP
#define CV_ROW_3						(TP_HEIGHT-RSC_SP_TBPG_INNERBORDER_BOTTOM)
#define CV_CONT_WIDTH					(CV_COL_1-CV_COL_0)
#define CV_CONT_HEIGHT					(CV_ROW_3-CV_ROW_0)
#define CV_ROW_1						(CV_ROW_0+2*CV_CONT_HEIGHT/3)
#define CV_ROW_2						(CV_ROW_1+RSC_SP_CTRL_GROUP_Y)

#define CV_COL_D						(TD_WIDTH-TD_SP_INNERBORDER_RIGHT)
#define CV_COL_C						(CV_COL_D-RSC_CD_PUSHBUTTON_WIDTH)
#define CV_COL_B						(CV_COL_C-RSC_SP_CTRL_X)
#define CV_COL_A						(CV_COL_B-RSC_CD_PUSHBUTTON_WIDTH)

#define CV_ROW_B						(TD_HEIGHT-TD_SP_INNERBORDER_BOTTOM)
#define CV_ROW_A						(CV_ROW_B-RSC_CD_PUSHBUTTON_HEIGHT)

// --------- tab page Certificate viewer - General ---------
#define WIN_FRAME						2
#define IMG_CERT						3
#define FI_CERTINFO						4
#define FL_SEP1							5
#define FI_HINTNOTTRUST					6
#define FL_SEP2							7
#define FI_ISSTOLABEL					8
#define FI_ISSTO						9
#define FI_ISSBYLABEL					10
#define FI_ISSBY						11
#define FI_VALIDDATE                    12
#define IMG_KEY                         13
#define FI_CORRPRIVKEY                  14
#define STR_CERTIFICATE_NOT_VALIDATED   15
#define IMG_STATE_NOT_VALIDATED         16
#define IMG_STATE_CERIFICATED_HC        17
#define IMG_STATE_NOT_VALIDATED_HC      18
#define IMG_KEY_HC                      19

#define IMG1_WIDTH						33
#define IMG1_HEIGHT						22
#define IMG2_WIDTH						20
#define IMG2_HEIGHT						20
#define DATE_WIDTH						30
#define CW_COL_0						(CV_COL_0+RSC_SP_GRP_INNERBORDER_LEFT)
#define CW_COL_1						(CW_COL_0+RSC_SP_FLGR_SPACE_X)
#define CW_COL_1a						(CW_COL_0+IMG2_WIDTH+1)
#define CW_COL_2						(CW_COL_0+IMG1_WIDTH)
#define CW_COL_3						(CW_COL_2+RSC_SP_CTRL_GROUP_X)
#define CW_COL_4						(CW_COL_1+40)
#define CW_COL_5						(CV_CONT_WIDTH-RSC_SP_GRP_INNERBORDER_RIGHT)
#define CW_COL_5a						(CW_COL_5-RSC_SP_GRP_INNERBORDER_RIGHT)
#define CW_COL_4a						(CW_COL_1+38)
#define CW_COL_4b						(CW_COL_4a+DATE_WIDTH)
#define CW_COL_4c						(CW_COL_4b+3)
#define CW_COL_4d						(CW_COL_4c+8)
#define CW_COL_4e						(CW_COL_4d+3)
#define CW_ROW_0						(CV_ROW_0+RSC_SP_GRP_INNERBORDER_TOP)
#define CW_ROW_1						(CW_ROW_0+RSC_SP_GRP_INNERBORDER_TOP)
#define CW_ROW_2						(CW_ROW_0+IMG1_HEIGHT)
#define CW_ROW_3						(CW_ROW_2+3)
#define CW_ROW_4						(CW_ROW_3+RSC_SP_CTRL_Y+RSC_CD_FIXEDLINE_HEIGHT)
#define CW_ROW_4a						(CW_ROW_4+35)
#define CW_ROW_5						(CW_ROW_4a+3)
#define CW_ROW_6						(CW_ROW_5+RSC_SP_CTRL_Y+RSC_CD_FIXEDLINE_HEIGHT)
#define CW_ROW_7						(CW_ROW_6+RSC_SP_CTRL_Y+RSC_CD_FIXEDTEXT_HEIGHT)
#define CW_ROW_8						(CW_ROW_7+RSC_SP_CTRL_Y+RSC_CD_FIXEDTEXT_HEIGHT)
#define CW_ROW_9						(CW_ROW_8+RSC_SP_CTRL_Y+RSC_CD_FIXEDTEXT_HEIGHT)
#define CW_ROW_10						(CW_ROW_9+2)
#define CW_ROW_11						(CW_ROW_9+IMG2_HEIGHT)

// --------- tab page Certificate viewer - Details ---------

#define LB_ELEMENTS						1
#define ML_ELEMENT						2

#define STR_VERSION						1
#define STR_SERIALNUM					2
#define STR_SIGALGORITHM				3
#define STR_ISSUER						4
#define STR_ISSUER_ID					5
#define STR_VALIDFROM					6
#define STR_VALIDTO						7
#define STR_SUBJECT						8
#define STR_SUBJECT_ID					9
#define STR_SUBJECT_PUBKEY_ALGO			10
#define STR_SUBJECT_PUBKEY_VAL			11
#define STR_SIGNATURE_ALGO				12
#define STR_THUMBPRINT_SHA1				13
#define STR_THUMBPRINT_MD5				14

// --------- tab page Certificate viewer - Certification Path ---------

#define FT_CERTPATH						1
#define FT_CERTSTATUS					2
#define ML_CERTSTATUS					3
#define IMG_CERT_SMALL                  4
#define IMG_CERT_SMALL_HC               5
#define IMG_CERT_NOTVALIDATED_SMALL     6
#define IMG_CERT_NOTVALIDATED_SMALL_HC  7
#define STR_PATH_CERT_OK                8
#define STR_PATH_CERT_NOT_VALIDATED     9

#define CVP_ROW_0                       RSC_SP_TBPG_INNERBORDER_TOP
#define CVP_ROW_1                       (CVP_ROW_0+RSC_CD_FIXEDTEXT_HEIGHT+RSC_SP_CTRL_DESC_Y)
#define REST_HEIGHT                     (TP_HEIGHT-CVP_ROW_1-2*RSC_SP_GRP_SPACE_Y-RSC_CD_FIXEDTEXT_HEIGHT-RSC_CD_PUSHBUTTON_HEIGHT)
#define CVP_ROW_2                       (CVP_ROW_1+REST_HEIGHT/3*2+RSC_SP_CTRL_DESC_Y)
#define CVP_ROW_3                       (CVP_ROW_2+RSC_CD_PUSHBUTTON_HEIGHT)
#define CVP_ROW_4                       (CVP_ROW_3+RSC_CD_FIXEDTEXT_HEIGHT+RSC_SP_CTRL_DESC_Y)

//#define CV_ROW_0A                      (CV_ROW_0+RSC_SP_CTRL_DESC_Y+RSC_CD_FIXEDTEXT_HEIGHT)
//#define CV_ROW_2A                      (CV_ROW_2+RSC_SP_CTRL_DESC_Y+RSC_CD_FIXEDTEXT_HEIGHT)

// --------- tab dialog macro security ---------

#define MS_COL_A                        (TD_WIDTH-RSC_SP_DLG_INNERBORDER_LEFT)
#define MS_COL_B						(MS_COL_A-RSC_CD_PUSHBUTTON_WIDTH)
#define MS_COL_C						(MS_COL_B-RSC_SP_CTRL_X)
#define MS_COL_D						(MS_COL_C-RSC_CD_PUSHBUTTON_WIDTH)
#define MS_COL_E						(MS_COL_D-RSC_SP_CTRL_X)
#define MS_COL_F						(MS_COL_E-RSC_CD_PUSHBUTTON_WIDTH)
#define MS_COL_G						(MS_COL_F-RSC_SP_CTRL_X)
#define MS_COL_H						(MS_COL_G-RSC_CD_PUSHBUTTON_WIDTH)

// --------- tab page security level ---------

#define FL_SECLEVEL						1
#define RB_VERYHIGH						2
#define RB_HIGH							3
#define RB_MEDIUM						4
#define RB_LOW							5
#define FI_SEC_READONLY                 6

#define RSC_BIG_RADIOBUTTON             40
#define SL_RB_DIST_Y                    (RSC_SP_FLGR_SPACE_Y+RSC_BIG_RADIOBUTTON)
#define SL_COL_0                        RSC_SP_TBPG_INNERBORDER_LEFT
#define SL_COL_1						(SL_COL_0+RSC_SP_FLGR_SPACE_X)
#define SL_COL_3						(TP_WIDTH-RSC_SP_TBPG_INNERBORDER_RIGHT)
#define SL_COL_2                        ((SL_COL_3-SL_COL_1)*100/105)
#define SL_ROW_0						RSC_SP_TBPG_INNERBORDER_TOP
#define SL_ROW_1                        (SL_ROW_0+SL_RB_DIST_Y)
#define SL_ROW_2                        (SL_ROW_1+SL_RB_DIST_Y)
#define SL_ROW_3                        (SL_ROW_2+SL_RB_DIST_Y)
#define SL_ROW_4                        (TP_HEIGHT-RSC_SP_TBPG_INNERBORDER_BOTTOM)

// --------- tab page trusted sources ---------

#define FL_TRUSTCERT					1
#define LB_TRUSTCERT					2
#define PB_ADD_TRUSTCERT				3
#define PB_VIEW_TRUSTCERT				4
#define PB_REMOVE_TRUSTCERT				5
#define FL_TRUSTFILELOC					6
#define FI_TRUSTFILELOC					7
#define LB_TRUSTFILELOC					8
#define FL_ADD_TRUSTFILELOC				9
#define FL_REMOVE_TRUSTFILELOC			10
#define FI_TRUSTCERT_RO                 11
#define FI_TRUSTFILE_RO                 12

#define TS_COL_0                        RSC_SP_TBPG_INNERBORDER_LEFT
#define TS_COL_1						(TS_COL_0+RSC_SP_FLGR_SPACE_X)
#define TS_COL_8                        (TP_WIDTH-RSC_SP_TBPG_INNERBORDER_RIGHT)
#define TS_COL_7                        (TS_COL_8-RSC_SP_FLGR_SPACE_X)
#define TS_COL_6                        (TS_COL_7-RSC_CD_PUSHBUTTON_WIDTH)
#define TS_COL_5						(TS_COL_6-RSC_SP_CTRL_GROUP_X)
#define TS_COL_4						(TS_COL_5-RSC_CD_PUSHBUTTON_WIDTH)
#define TS_COL_3						(TS_COL_4-RSC_SP_CTRL_GROUP_X)
#define TS_COL_2						(TS_COL_3-RSC_CD_PUSHBUTTON_WIDTH)

#define RSC_CD_TABLISTBOX_HEIGHT        6*RSC_BS_CHARHEIGHT
#define TS_ROW_0                        RSC_SP_TBPG_INNERBORDER_TOP
#define TS_ROW_1                        (TS_ROW_0+RSC_CD_FIXEDLINE_HEIGHT+RSC_SP_FLGR_SPACE_Y)
#define TS_ROW_2                        (TS_ROW_1+RSC_CD_TABLISTBOX_HEIGHT+RSC_SP_FLGR_SPACE_Y)
#define TS_ROW_3                        (TS_ROW_2+RSC_CD_PUSHBUTTON_HEIGHT+RSC_SP_FLGR_SPACE_Y)
#define TS_ROW_4                        (TS_ROW_3+RSC_CD_FIXEDLINE_HEIGHT+RSC_SP_FLGR_SPACE_Y)
#define TS_ROW_5                        (TS_ROW_4+3*RSC_CD_FIXEDTEXT_HEIGHT+RSC_SP_FLGR_SPACE_Y)

#define TS_ROW_8                        (TP_HEIGHT-RSC_SP_TBPG_INNERBORDER_BOTTOM)
#define TS_ROW_7                        (TS_ROW_8-RSC_CD_PUSHBUTTON_HEIGHT)
#define TS_ROW_6                        (TS_ROW_7-RSC_SP_FLGR_SPACE_Y)

// --------- signed macro warning ---------

#define FI_DOCNAME						1
#define FI_DESCR1A						2
#define FI_SIGNS						3
#define PB_VIEWSIGNS					4
#define FI_DESCR2						5
#define CB_ALWAYSTRUST					6
#define PB_ENABLE						7
#define PB_DISABLE						8
#define FI_DESCR1B						9

#define MW_WIDTH						DLGS_WIDTH
#define MW_HEIGHT						DLGS_HEIGHT

#define MW_SYMBOL_WIDTH					(20)

#define MW_COL_0						(RSC_SP_DLG_INNERBORDER_LEFT)
#define MW_COL_1						(MW_COL_0+MW_SYMBOL_WIDTH)
#define MW_COL_4						(MW_WIDTH-RSC_SP_DLG_INNERBORDER_RIGHT)
#define MW_COL_3						(MW_COL_4-RSC_CD_PUSHBUTTON_WIDTH)
#define MW_COL_2						(MW_COL_3-RSC_SP_CTRL_DESC_X)
#define MW_COL_A						(DLGS_BOTTOM_OK_X(MW_WIDTH))
#define MW_COL_C						(DLGS_BOTTOM_CANCEL_X(MW_WIDTH))
#define MW_COL_E						(DLGS_BOTTOM_HELP_X(MW_WIDTH))
#define MW_ROW_0						(RSC_SP_DLG_INNERBORDER_TOP)
#define MW_ROW_1						(MW_ROW_0+3*RSC_CD_FIXEDTEXT_HEIGHT+RSC_SP_CTRL_Y)
#define MW_ROW_2						(MW_ROW_1+RSC_CD_FIXEDTEXT_HEIGHT+RSC_SP_CTRL_Y)
#define MW_ROW_7						(MW_HEIGHT-RSC_SP_DLG_INNERBORDER_BOTTOM)
#define MW_ROW_6						(DLGS_BOTTOM_BTN_Y(MW_HEIGHT))
#define MW_ROW_5						(DLGS_BOTTOM_FL_Y(MW_HEIGHT))
#define MW_ROW_4						(MW_ROW_5-RSC_CD_CHECKBOX_HEIGHT-RSC_SP_CTRL_Y)
#define MW_ROW_3						(MW_ROW_4-4*RSC_CD_FIXEDTEXT_HEIGHT+RSC_SP_CTRL_Y)

#endif
