Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
K
kicad-source-mirror
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
Elphel
kicad-source-mirror
Commits
4d9ea908
Commit
4d9ea908
authored
Feb 29, 2008
by
CHARRAS
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Display filename and full sheet name ("sheet path") in sheet references
parent
a664e14b
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
78 additions
and
296 deletions
+78
-296
change_log.txt
change_log.txt
+4
-0
worksheet.cpp
common/worksheet.cpp
+24
-2
worksheet.h
include/worksheet.h
+50
-14
worksheet.cpp
share/worksheet.cpp
+0
-280
No files found.
change_log.txt
View file @
4d9ea908
...
...
@@ -11,6 +11,10 @@ email address.
Renaming the sheet filename now works in simple and complex hierarchies.
Use carefully because this can change the whole schematic structure.
+all
Display filename and full sheet name ("sheet path") in sheet reference
the full sheet name has no meanning in pcbnew.
2008-Feb-28 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================
...
...
common/worksheet.cpp
View file @
4d9ea908
...
...
@@ -159,7 +159,7 @@ int width = line_width;
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
,
width
);
break
;
case
WS_
LICENCE
:
case
WS_
KICAD_VERSION
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
g_ProductName
+
g_Main_Title
;
msg
+=
wxT
(
" "
)
+
GetBuildVersion
();
...
...
@@ -179,11 +179,33 @@ int width = line_width;
case
WS_IDENTSHEET
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
<<
screen
->
m_ScreenNumber
<<
wxT
(
"/"
)
<<
screen
->
m_NumberOfScreen
;
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
GetScreenDesc
(),
TEXT_ORIENT_HORIZ
,
size
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
,
width
);
break
;
case
WS_FILENAME
:
{
wxString
fname
,
fext
;
wxFileName
::
SplitPath
(
screen
->
m_FileName
,
(
wxString
*
)
NULL
,
&
fname
,
&
fext
);
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
<<
fname
<<
wxT
(
"."
)
<<
fext
;
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
,
width
);
}
break
;
case
WS_FULLSHEETNAME
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
GetScreenDesc
();
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
,
width
);
break
;
case
WS_COMPANY_NAME
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
screen
->
m_Company
;
...
...
include/worksheet.h
View file @
4d9ea908
...
...
@@ -18,8 +18,8 @@
seront soustraires de cette origine
*/
#define BLOCK_OX 4200
#define BLOCK_
LICENCE
_X BLOCK_OX - SIZETEXT
#define BLOCK_
LICENCE
_Y SIZETEXT
#define BLOCK_
KICAD_VERSION
_X BLOCK_OX - SIZETEXT
#define BLOCK_
KICAD_VERSION
_Y SIZETEXT
#define BLOCK_REV_X 820
#define BLOCK_REV_Y (SIZETEXT*3)
#define BLOCK_DATE_X BLOCK_OX - (SIZETEXT*15)
...
...
@@ -30,13 +30,17 @@ seront soustraires de cette origine
#define BLOCK_SIZE_SHEET_Y (SIZETEXT*3)
#define BLOCK_TITLE_X BLOCK_OX - SIZETEXT
#define BLOCK_TITLE_Y (SIZETEXT*5)
#define BLOCK_FULLSHEETNAME_X BLOCK_OX - SIZETEXT
#define BLOCK_FULLSHEETNAME_Y (SIZETEXT * 7)
#define BLOCK_FILENAME_X BLOCK_OX - SIZETEXT
#define BLOCK_FILENAME_Y (SIZETEXT * 9)
#define BLOCK_COMMENT_X BLOCK_OX - SIZETEXT
#define VARIABLE_BLOCK_START_POSITION (SIZETEXT *
6
)
#define BLOCK_COMPANY_Y (SIZETEXT*
7
)
#define BLOCK_COMMENT1_Y (SIZETEXT*
9
)
#define BLOCK_COMMENT2_Y (SIZETEXT*1
1
)
#define BLOCK_COMMENT3_Y (SIZETEXT*1
3
)
#define BLOCK_COMMENT4_Y (SIZETEXT*1
5
)
#define VARIABLE_BLOCK_START_POSITION (SIZETEXT *
10
)
#define BLOCK_COMPANY_Y (SIZETEXT*
11
)
#define BLOCK_COMMENT1_Y (SIZETEXT*
13
)
#define BLOCK_COMMENT2_Y (SIZETEXT*1
5
)
#define BLOCK_COMMENT3_Y (SIZETEXT*1
7
)
#define BLOCK_COMMENT4_Y (SIZETEXT*1
9
)
struct
Ki_WorkSheetData
{
...
...
@@ -54,10 +58,12 @@ enum TypeKi_WorkSheetData
{
WS_DATE
,
WS_REV
,
WS_
LICENCE
,
WS_
KICAD_VERSION
,
WS_SIZESHEET
,
WS_IDENTSHEET
,
WS_TITLE
,
WS_FILENAME
,
WS_FULLSHEETNAME
,
WS_COMPANY_NAME
,
WS_COMMENT1
,
WS_COMMENT2
,
...
...
@@ -74,12 +80,15 @@ extern Ki_WorkSheetData WS_Revision;
extern
Ki_WorkSheetData
WS_Licence
;
extern
Ki_WorkSheetData
WS_SizeSheet
;
extern
Ki_WorkSheetData
WS_IdentSheet
;
extern
Ki_WorkSheetData
WS_FullSheetName
;
extern
Ki_WorkSheetData
WS_SheetFilename
;
extern
Ki_WorkSheetData
WS_Title
;
extern
Ki_WorkSheetData
WS_Company
;
extern
Ki_WorkSheetData
WS_Comment1
;
extern
Ki_WorkSheetData
WS_Comment2
;
extern
Ki_WorkSheetData
WS_Comment3
;
extern
Ki_WorkSheetData
WS_Comment4
;
extern
Ki_WorkSheetData
WS_SeparatorLine
;
extern
Ki_WorkSheetData
WS_MostLeftLine
;
extern
Ki_WorkSheetData
WS_MostUpperLine
;
extern
Ki_WorkSheetData
WS_Segm3
;
...
...
@@ -101,9 +110,9 @@ Ki_WorkSheetData WS_Date =
Ki_WorkSheetData
WS_Licence
=
{
WS_
LICENCE
,
WS_
KICAD_VERSION
,
&
WS_Revision
,
BLOCK_
LICENCE_X
,
BLOCK_LICENCE
_Y
,
BLOCK_
KICAD_VERSION_X
,
BLOCK_KICAD_VERSION
_Y
,
0
,
0
,
NULL
,
NULL
};
...
...
@@ -132,18 +141,36 @@ Ki_WorkSheetData WS_IdentSheet =
&
WS_Title
,
BLOCK_ID_SHEET_X
,
BLOCK_ID_SHEET_Y
,
0
,
0
,
wxT
(
"
Sheet
: "
),
NULL
wxT
(
"
Id
: "
),
NULL
};
Ki_WorkSheetData
WS_Title
=
{
WS_TITLE
,
&
WS_
Company
,
&
WS_
SheetFilename
,
BLOCK_TITLE_X
,
BLOCK_TITLE_Y
,
0
,
0
,
wxT
(
"Title: "
),
NULL
};
Ki_WorkSheetData
WS_SheetFilename
=
{
WS_FILENAME
,
&
WS_FullSheetName
,
BLOCK_FILENAME_X
,
BLOCK_FILENAME_Y
,
0
,
0
,
wxT
(
"File: "
),
NULL
};
Ki_WorkSheetData
WS_FullSheetName
=
{
WS_FULLSHEETNAME
,
&
WS_Company
,
BLOCK_FULLSHEETNAME_X
,
BLOCK_FULLSHEETNAME_Y
,
0
,
0
,
wxT
(
"Sheet: "
),
NULL
};
Ki_WorkSheetData
WS_Company
=
{
WS_COMPANY_NAME
,
...
...
@@ -192,12 +219,21 @@ Ki_WorkSheetData WS_Comment4 =
Ki_WorkSheetData
WS_MostLeftLine
=
/* segment vertical gauche */
{
WS_LEFT_SEGMENT
,
&
WS_
MostUppe
rLine
,
&
WS_
Separato
rLine
,
BLOCK_OX
,
SIZETEXT
*
16
,
BLOCK_OX
,
0
,
NULL
,
NULL
};
Ki_WorkSheetData
WS_SeparatorLine
=
/* horizontal segment between filename and comments*/
{
WS_SEGMENT
,
&
WS_MostUpperLine
,
BLOCK_OX
,
VARIABLE_BLOCK_START_POSITION
,
0
,
VARIABLE_BLOCK_START_POSITION
,
NULL
,
NULL
};
Ki_WorkSheetData
WS_MostUpperLine
=
/* segment horizontal superieur */
{
WS_UPPER_SEGMENT
,
...
...
share/worksheet.cpp
deleted
100644 → 0
View file @
a664e14b
/**************************************************/
/* WORKSHEET.CPP : routines de trace du cartouche */
/**************************************************/
#include "fctsys.h"
#include "gr_basic.h"
#include "common.h"
#ifdef EESCHEMA
#include "program.h"
#include "libcmp.h"
#include "general.h"
#endif
#ifdef PCBNEW
#include "pcbnew.h"
#endif
#include "worksheet.h"
#include "protos.h"
/*********************************************************************/
void
WinEDA_DrawFrame
::
TraceWorkSheet
(
wxDC
*
DC
,
BASE_SCREEN
*
screen
)
/*********************************************************************/
/* Trace l'encadrement de la feuille de travail et le cartouche
*/
{
if
(
!
m_Draw_Sheet_Ref
)
return
;
Ki_PageDescr
*
Sheet
=
screen
->
m_CurrentSheetDesc
;
int
ii
,
jj
,
xg
,
yg
,
ipas
,
gxpas
,
gypas
;
wxPoint
pos
;
int
refx
,
refy
,
Color
;
wxString
Line
;
Ki_WorkSheetData
*
WsItem
;
int
scale
=
m_InternalUnits
/
1000
;
wxSize
size
(
SIZETEXT
*
scale
,
SIZETEXT
*
scale
);
wxSize
size_ref
(
SIZETEXT_REF
*
scale
,
SIZETEXT_REF
*
scale
);
wxString
msg
;
int
UpperLimit
=
VARIABLE_BLOCK_START_POSITION
;
Color
=
RED
;
if
(
Sheet
==
NULL
)
{
DisplayError
(
this
,
wxT
(
"WinEDA_DrawFrame::TraceWorkSheet() error: m_CurrentSheet NULL"
));
return
;
}
// if not printing, draw the page limits:
if
(
!
g_IsPrinting
&
g_ShowPageLimits
)
{
GRSetDrawMode
(
DC
,
GR_COPY
);
GRRect
(
&
DrawPanel
->
m_ClipBox
,
DC
,
0
,
0
,
Sheet
->
m_Size
.
x
*
scale
,
Sheet
->
m_Size
.
y
*
scale
,
g_DrawBgColor
==
WHITE
?
LIGHTGRAY
:
DARKDARKGRAY
);
}
GRSetDrawMode
(
DC
,
GR_COPY
);
/* trace de la bordure */
refx
=
Sheet
->
m_LeftMargin
;
refy
=
Sheet
->
m_TopMargin
;
/* Upper left corner */
xg
=
Sheet
->
m_Size
.
x
-
Sheet
->
m_RightMargin
;
yg
=
Sheet
->
m_Size
.
y
-
Sheet
->
m_BottomMargin
;
/* lower right corner */
for
(
ii
=
0
;
ii
<
2
;
ii
++
)
{
GRRect
(
&
DrawPanel
->
m_ClipBox
,
DC
,
refx
*
scale
,
refy
*
scale
,
xg
*
scale
,
yg
*
scale
,
Color
);
refx
+=
GRID_REF_W
;
refy
+=
GRID_REF_W
;
xg
-=
GRID_REF_W
;
yg
-=
GRID_REF_W
;
}
/* trace des reperes */
refx
=
Sheet
->
m_LeftMargin
;
refy
=
Sheet
->
m_TopMargin
;
/* Upper left corner */
xg
=
Sheet
->
m_Size
.
x
-
Sheet
->
m_RightMargin
;
yg
=
Sheet
->
m_Size
.
y
-
Sheet
->
m_BottomMargin
;
/* lower right corner */
/* Trace des reperes selon l'axe X */
ipas
=
(
xg
-
refx
)
/
PAS_REF
;
gxpas
=
(
xg
-
refx
)
/
ipas
;
for
(
ii
=
refx
+
gxpas
,
jj
=
1
;
ipas
>
0
;
ii
+=
gxpas
,
jj
++
,
ipas
--
)
{
Line
.
Printf
(
wxT
(
"%d"
),
jj
);
if
(
ii
<
xg
-
PAS_REF
/
2
)
{
GRLine
(
&
DrawPanel
->
m_ClipBox
,
DC
,
ii
*
scale
,
refy
*
scale
,
ii
*
scale
,
(
refy
+
GRID_REF_W
)
*
scale
,
Color
);
}
DrawGraphicText
(
DrawPanel
,
DC
,
wxPoint
(
(
ii
-
gxpas
/
2
)
*
scale
,
(
refy
+
GRID_REF_W
/
2
)
*
scale
),
Color
,
Line
,
TEXT_ORIENT_HORIZ
,
size_ref
,
GR_TEXT_HJUSTIFY_CENTER
,
GR_TEXT_VJUSTIFY_CENTER
);
if
(
ii
<
xg
-
PAS_REF
/
2
)
{
GRLine
(
&
DrawPanel
->
m_ClipBox
,
DC
,
ii
*
scale
,
yg
*
scale
,
ii
*
scale
,
(
yg
-
GRID_REF_W
)
*
scale
,
Color
);
}
DrawGraphicText
(
DrawPanel
,
DC
,
wxPoint
(
(
ii
-
gxpas
/
2
)
*
scale
,
(
yg
-
GRID_REF_W
/
2
)
*
scale
),
Color
,
Line
,
TEXT_ORIENT_HORIZ
,
size_ref
,
GR_TEXT_HJUSTIFY_CENTER
,
GR_TEXT_VJUSTIFY_CENTER
);
}
/* Trace des reperes selon l'axe Y */
ipas
=
(
yg
-
refy
)
/
PAS_REF
;
gypas
=
(
yg
-
refy
)
/
ipas
;
for
(
ii
=
refy
+
gypas
,
jj
=
0
;
ipas
>
0
;
ii
+=
gypas
,
jj
++
,
ipas
--
)
{
Line
.
Empty
();
if
(
jj
<
26
)
Line
.
Printf
(
wxT
(
"%c"
),
jj
+
'A'
);
else
Line
.
Printf
(
wxT
(
"%c"
),
'a'
+
jj
-
26
);
if
(
ii
<
yg
-
PAS_REF
/
2
)
{
GRLine
(
&
DrawPanel
->
m_ClipBox
,
DC
,
refx
*
scale
,
ii
*
scale
,
(
refx
+
GRID_REF_W
)
*
scale
,
ii
*
scale
,
Color
);
}
DrawGraphicText
(
DrawPanel
,
DC
,
wxPoint
((
refx
+
GRID_REF_W
/
2
)
*
scale
,
(
ii
-
gypas
/
2
)
*
scale
),
Color
,
Line
,
TEXT_ORIENT_HORIZ
,
size_ref
,
GR_TEXT_HJUSTIFY_CENTER
,
GR_TEXT_VJUSTIFY_CENTER
);
if
(
ii
<
yg
-
PAS_REF
/
2
)
{
GRLine
(
&
DrawPanel
->
m_ClipBox
,
DC
,
xg
*
scale
,
ii
*
scale
,
(
xg
-
GRID_REF_W
)
*
scale
,
ii
*
scale
,
Color
);
}
DrawGraphicText
(
DrawPanel
,
DC
,
wxPoint
((
xg
-
GRID_REF_W
/
2
)
*
scale
,
(
ii
-
gxpas
/
2
)
*
scale
),
Color
,
Line
,
TEXT_ORIENT_HORIZ
,
size_ref
,
GR_TEXT_HJUSTIFY_CENTER
,
GR_TEXT_VJUSTIFY_CENTER
);
}
/* Trace du cartouche */
refx
=
Sheet
->
m_Size
.
x
-
Sheet
->
m_RightMargin
-
GRID_REF_W
;
refy
=
Sheet
->
m_Size
.
y
-
Sheet
->
m_BottomMargin
-
GRID_REF_W
;
/* lower right corner */
for
(
WsItem
=
&
WS_Date
;
WsItem
!=
NULL
;
WsItem
=
WsItem
->
Pnext
)
{
pos
.
x
=
(
refx
-
WsItem
->
m_Posx
)
*
scale
;
pos
.
y
=
(
refy
-
WsItem
->
m_Posy
)
*
scale
;
msg
.
Empty
();
switch
(
WsItem
->
m_Type
)
{
case
WS_DATE
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
screen
->
m_Date
;
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
break
;
case
WS_REV
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
screen
->
m_Revision
;
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
break
;
case
WS_LICENCE
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
g_ProductName
+
Main_Title
;
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
break
;
case
WS_SIZESHEET
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
Sheet
->
m_Name
;
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
break
;
case
WS_IDENTSHEET
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
=
GetScreenDesc
();
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
break
;
case
WS_COMPANY_NAME
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
screen
->
m_Company
;
if
(
!
msg
.
IsEmpty
()
)
{
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
UpperLimit
=
MAX
(
UpperLimit
,
WsItem
->
m_Posy
+
SIZETEXT
);
}
break
;
case
WS_TITLE
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
screen
->
m_Title
;
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
break
;
case
WS_COMMENT1
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
screen
->
m_Commentaire1
;
if
(
!
msg
.
IsEmpty
()
)
{
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
UpperLimit
=
MAX
(
UpperLimit
,
WsItem
->
m_Posy
+
SIZETEXT
);
}
break
;
case
WS_COMMENT2
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
screen
->
m_Commentaire2
;
if
(
!
msg
.
IsEmpty
()
)
{
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
UpperLimit
=
MAX
(
UpperLimit
,
WsItem
->
m_Posy
+
SIZETEXT
);
}
break
;
case
WS_COMMENT3
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
screen
->
m_Commentaire3
;
if
(
!
msg
.
IsEmpty
()
)
{
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
UpperLimit
=
MAX
(
UpperLimit
,
WsItem
->
m_Posy
+
SIZETEXT
);
}
break
;
case
WS_COMMENT4
:
if
(
WsItem
->
m_Legende
)
msg
=
WsItem
->
m_Legende
;
msg
+=
screen
->
m_Commentaire4
;
if
(
!
msg
.
IsEmpty
()
)
{
DrawGraphicText
(
DrawPanel
,
DC
,
pos
,
Color
,
msg
,
TEXT_ORIENT_HORIZ
,
size
,
GR_TEXT_HJUSTIFY_LEFT
,
GR_TEXT_VJUSTIFY_CENTER
);
UpperLimit
=
MAX
(
UpperLimit
,
WsItem
->
m_Posy
+
SIZETEXT
);
}
break
;
case
WS_UPPER_SEGMENT
:
if
(
UpperLimit
==
0
)
break
;
case
WS_LEFT_SEGMENT
:
WS_MostUpperLine
.
m_Posy
=
WS_MostUpperLine
.
m_Endy
=
WS_MostLeftLine
.
m_Posy
=
UpperLimit
;
pos
.
y
=
(
refy
-
WsItem
->
m_Posy
)
*
scale
;
case
WS_SEGMENT
:
xg
=
Sheet
->
m_Size
.
x
-
GRID_REF_W
-
Sheet
->
m_RightMargin
-
WsItem
->
m_Endx
;
yg
=
Sheet
->
m_Size
.
y
-
GRID_REF_W
-
Sheet
->
m_BottomMargin
-
WsItem
->
m_Endy
;
GRLine
(
&
DrawPanel
->
m_ClipBox
,
DC
,
pos
.
x
,
pos
.
y
,
xg
*
scale
,
yg
*
scale
,
Color
);
break
;
}
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment