117 lines
3.0 KiB
QBasic
117 lines
3.0 KiB
QBasic
Attribute VB_Name = "Declarations"
|
|
Option Explicit
|
|
|
|
Public Enum TItem
|
|
T_ITEM_UNKNOWN = 0
|
|
[_First] = 1
|
|
|
|
T_ITEM_FRONT = 1
|
|
T_ITEM_PROBLEM = 2
|
|
T_ITEM_SUBJECT_TYPE = 3
|
|
T_ITEM_GROUP = 4
|
|
T_ITEM_ORGAN = 5
|
|
T_ITEM_PERSON = 6
|
|
|
|
[_Last] = 6
|
|
End Enum
|
|
|
|
Public Enum TSubjectType
|
|
T_SUBJECT_UNKNOWN = 0
|
|
[_First] = 1
|
|
|
|
T_SUBJECT_SOLVER = 1
|
|
T_SUBJECT_INVOLVED = 2
|
|
T_SUBJECT_POTENTIAL = 3
|
|
|
|
[_Last] = 3
|
|
End Enum
|
|
|
|
Public Const SHAPE_FRONT = "Ôðîíò"
|
|
Public Const SHAPE_PROBLEM = "Ïðîáëåìà"
|
|
Public Const SHAPE_SUBJECT_TYPE = "Âèä ñóáúåêòîâ"
|
|
Public Const SHAPE_ORGAN = "Îðãàíèçàöèÿ"
|
|
Public Const SHAPE_PERSON = "Ïåðñîíà"
|
|
Public Const SHAPE_GROUP = "Ãðóïïà"
|
|
|
|
Public Const XL_TYPE_FRONT = "Ôðîíò"
|
|
Public Const XL_TYPE_PROBLEM = "Ïðîáëåìà"
|
|
Public Const XL_TYPE_SUBJECT_TYPE = "Âèä ñóáúåêòîâ"
|
|
Public Const XL_TYPE_ORGAN = "Îðãàíèçàöèÿ"
|
|
Public Const XL_TYPE_PERSON = "Ïåðñîíà"
|
|
Public Const XL_TYPE_GROUP = "Ãðóïïà"
|
|
|
|
Public Const SHP_TITLE = "Íàçâàíèå"
|
|
|
|
Public Const MAX_STRUCTURE_DEPTH = 20
|
|
|
|
Public Const CELLSU_POSTYPE = "User.ThesisVariant"
|
|
Public Const CELLSU_CONTAINER_MARGINS = "User.msvSDContainerMargin"
|
|
|
|
Public Const PROBLEM_PREFIX = "Ïðîáëåìà"
|
|
Public Const FRONT_PREFIX = "Ôðîíò ðåøåíèÿ ïðîáëåì"
|
|
|
|
Public Const DEPSILON = 3
|
|
|
|
' Layout manager options
|
|
Public Const LM_MARGINS_EPSILON = 0.5 / 25.4 ' Increase margins to ammount for line width etc.
|
|
|
|
Public Const LM_VERTICAL_GAP = 2 / 25.4
|
|
Public Const LM_HORIZONTAL_GAP = 2 / 25.4
|
|
|
|
Public Const PAGE_VERTICAL_GAP = 4 / 25.4
|
|
Public Const PAGE_HORIZONTAL_GAP = 4 / 25.4
|
|
|
|
Public Const PAGE_TITLE_GAP = 25 / 25.4 ' Blank space in left corner for schema title
|
|
|
|
Public Const HEIGHT_DOUBLE_THRESHOLD = 130
|
|
Public Const HEIGHT_TRIPLE_THRESHOLD = 250
|
|
|
|
Public Type PageProps
|
|
width_ As Double
|
|
height_ As Double
|
|
frontHeight_ As Double
|
|
problemHeight_ As Double
|
|
leftGap_ As Double
|
|
columnGap_ As Double
|
|
addHeader_ As Boolean
|
|
multipage_ As Boolean
|
|
End Type
|
|
|
|
' Custom errors
|
|
Public Enum CustomErrors
|
|
ERR_XL_INVALID_TYPE = vbObjectError + 1000
|
|
' ERR_SYNC_DOC
|
|
End Enum
|
|
|
|
' ===== Excel input ==========
|
|
Public Const EXCEL_FIRST_ROW = 2
|
|
|
|
Public Enum DataSourceStructure
|
|
S_ITEM_ID = 1
|
|
S_ITEM_LEVEL = 2
|
|
S_ITEM_TYPE = 3
|
|
S_ITEM_TEXT_THEME = 4
|
|
S_ITEM_TEXT_SUBJECT = 5
|
|
End Enum
|
|
|
|
Public Function TextToItemType(sText$) As TItem
|
|
Select Case sText
|
|
Case XL_TYPE_FRONT: TextToItemType = T_ITEM_FRONT
|
|
Case XL_TYPE_PROBLEM: TextToItemType = T_ITEM_PROBLEM
|
|
Case XL_TYPE_SUBJECT_TYPE: TextToItemType = T_ITEM_SUBJECT_TYPE
|
|
Case XL_TYPE_GROUP: TextToItemType = T_ITEM_GROUP
|
|
Case XL_TYPE_ORGAN: TextToItemType = T_ITEM_ORGAN
|
|
Case XL_TYPE_PERSON: TextToItemType = T_ITEM_PERSON
|
|
Case Else: TextToItemType = T_ITEM_UNKNOWN
|
|
End Select
|
|
End Function
|
|
|
|
Public Function TextToSubjectType(sText$) As TSubjectType
|
|
Select Case sText
|
|
Case "Ñóáúåêòû ðåøåíèÿ ïðîáëåìû": TextToSubjectType = T_SUBJECT_SOLVER
|
|
Case "Ñóáúåêòû ïðîáëåìíîé äåÿòåëüíîñòè": TextToSubjectType = T_SUBJECT_INVOLVED
|
|
Case "Ïîòåíöèàëüíûå ñóáúåêòû": TextToSubjectType = T_SUBJECT_POTENTIAL
|
|
Case Else: TextToSubjectType = T_SUBJECT_POTENTIAL
|
|
End Select
|
|
End Function
|