137 lines
3.7 KiB
QBasic
137 lines
3.7 KiB
QBasic
Attribute VB_Name = "Declarations"
|
||
Option Explicit
|
||
|
||
' TODO: refactor this whole mess
|
||
Public Const FOOTER_SYMBOL_BREAK = 30
|
||
|
||
Public Const CSET_SLETTERS = "àáâãä叿çèéêëìíîïðñòóôõö÷øùúûüýþÿabcdefghijklmnopqrstuvwxyz"
|
||
Public Const CSET_BLETTERS = "ÀÁÂÃÄŨÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||
|
||
Public Const BASE_STYLE = "!Àáçàö òåêñòà"
|
||
|
||
Public Const FIELD_SIZE_CM As Double = 2.54
|
||
|
||
' Íàñêîëüêî òåìíåå áóäåò âûäåëåíèå â òåêñòå îòíîñèòåëüíî çàãîëîâêà
|
||
Public Const TEXT_BOLD_LUMSCALE = -0.2
|
||
|
||
' Íàñòðîéêè îòòåíêîâ äëÿ òàáëèö
|
||
Public Const TABLE_FRAME_LUMSCALE = -0.35
|
||
Public Const TABLE_HEAD_LUMSCALE = 0.2
|
||
Public Const TABLE_SUBHEAD_LUMSCALE = 0.3
|
||
Public Const TABLE_ZEBRA_LUMSCALE = 0.8
|
||
Public Const TABLE_FRAME_THICKNESS = 18
|
||
Public Const TABLE_CELL_THICKNESS = 12
|
||
|
||
Public Const SECOND_COL_POS = 300
|
||
|
||
Public Const TABLE_CRITICAL_WIDTH As Double = 16
|
||
Public Const TABLE_CRITICAL_HEIGHT As Double = 22
|
||
|
||
Public Const RIGHT_POS_SHIFT = 8#
|
||
Public Const LEFT_POS_SHIFT = -0.25
|
||
|
||
' Â çàâèñèìîñòè îò øðèôòà çàãîëîâê àíóæíî ñòàâèòü ñïåöèàëüíóþ êîíñòàíòó
|
||
Public Const SPACING_SCALE = 1.15 ' Times New Roman
|
||
|
||
' Èäåíòèôèêàòîð êîëîíêè (ëåâî-ïðàâî)
|
||
Public Enum TColumn
|
||
T_COL_LEFT
|
||
T_COL_RIGHT
|
||
End Enum
|
||
|
||
' Ðåæèì íàïîëíåíèÿ êîëîíòèòóëà
|
||
Public Enum TSource
|
||
T_SOURCE_BOOK
|
||
T_SOURCE_VOLUME
|
||
T_SOURCE_SECTION
|
||
T_SOURCE_DOCUMENT
|
||
T_SOURCE_CHAPTER
|
||
T_SOURCE_CONCEPT
|
||
End Enum
|
||
|
||
' Òèï êîëîíòèòóëà
|
||
Public Type ColontitlePosition
|
||
top_ As Boolean
|
||
left_ As Boolean
|
||
source_ As TSource
|
||
End Type
|
||
|
||
' Íàñòðîéêà ðàñêðàñêè òàáëèöû
|
||
Public Type TablePaintProps
|
||
cGrid As Long
|
||
cHeading As Long
|
||
cSubHead As Long
|
||
cZebra As Long
|
||
sectionColor As Long
|
||
textSpacing As Double
|
||
End Type
|
||
|
||
' Ïàðàìåòðû áëîêà çàãîëîâêîâ
|
||
Public Type HeaderBlock
|
||
yText As Double
|
||
yHeight As Double
|
||
startRng As Word.Range
|
||
finishRng As Word.Range
|
||
End Type
|
||
|
||
' Íàñòðîéêà àâòîìàêèòèðîâàíèÿ
|
||
Public Type AutoDesignOptions
|
||
reapplyLists As Boolean
|
||
fixObjects As Boolean
|
||
titlePage As Boolean
|
||
doLayout As Boolean
|
||
generateColontitles As Boolean
|
||
|
||
Count As Integer
|
||
End Type
|
||
|
||
' Ïàðàìåòðû òèòóëüíîé ñòðàíèöû
|
||
Public Type TitlePageData
|
||
sVolume As String
|
||
nVolumeID As Long
|
||
sBook As String
|
||
nBookID As Long
|
||
|
||
rContract As Word.Range
|
||
rCustomer As Word.Range
|
||
rTheme As Word.Range
|
||
End Type
|
||
|
||
' Ïîëîæåíèÿ ðàçäåëîâ
|
||
Public Type SectionHeader
|
||
rFind As Word.Range
|
||
nStart As Long
|
||
nFinish As Long
|
||
cText As Long
|
||
cHeader As Long
|
||
End Type
|
||
|
||
Public Type SectionData
|
||
sName As String
|
||
sChapter As String
|
||
bNewChapter As Boolean
|
||
End Type
|
||
|
||
Public Function DesignTheme(ThemeColorIndex As WdThemeColorIndex) As Long
|
||
Select Case ThemeColorIndex:
|
||
Case wdThemeColorMainDark1: DesignTheme = Format("&HD000FFFF")
|
||
Case wdThemeColorMainLight1: DesignTheme = Format("&HD100FFFF")
|
||
Case wdThemeColorMainDark2: DesignTheme = Format("&HD200FFFF")
|
||
Case wdThemeColorMainLight2: DesignTheme = Format("&HD300FFFF")
|
||
Case wdThemeColorAccent1: DesignTheme = Format("&HD400FFFF")
|
||
Case wdThemeColorAccent2: DesignTheme = Format("&HD500FFFF")
|
||
Case wdThemeColorAccent3: DesignTheme = Format("&HD600FFFF")
|
||
Case wdThemeColorAccent4: DesignTheme = Format("&HD700FFFF")
|
||
Case wdThemeColorAccent5: DesignTheme = Format("&HD800FFFF")
|
||
Case wdThemeColorAccent6: DesignTheme = Format("&HD900FFFF")
|
||
Case wdThemeColorHyperlink: DesignTheme = Format("&HDA00FFFF")
|
||
Case wdThemeColorHyperlinkFollowed: DesignTheme = Format("&HDB00FFFF")
|
||
Case wdThemeColorBackground1: DesignTheme = Format("&HDC00FFFF")
|
||
Case wdThemeColorText1: DesignTheme = Format("&HDD00FFFF")
|
||
Case wdThemeColorBackground2: DesignTheme = Format("&HDE00FFFF")
|
||
Case wdThemeColorText2: DesignTheme = Format("&HDF00FFFF")
|
||
Case Else:
|
||
End Select
|
||
End Function
|
||
|