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
ceeb27cf
Commit
ceeb27cf
authored
Dec 06, 2008
by
charras
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
eeschema: solved: incorrect draw origin setup for viewlib and libedit
parent
e29d89c7
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
131 additions
and
139 deletions
+131
-139
class_screen.cpp
eeschema/class_screen.cpp
+1
-1
libframe.cpp
eeschema/libframe.cpp
+2
-0
viewlib_frame.cpp
eeschema/viewlib_frame.cpp
+40
-54
viewlibs.cpp
eeschema/viewlibs.cpp
+1
-1
drawpanel_wxstruct.h
include/drawpanel_wxstruct.h
+87
-83
No files found.
eeschema/class_screen.cpp
View file @
ceeb27cf
...
...
@@ -110,7 +110,7 @@ SCH_SCREEN::SCH_SCREEN( KICAD_T type ) : BASE_SCREEN( type )
SetGrid
(
wxSize
(
50
,
50
)
);
/* pas de la grille */
m_UndoRedoCountMax
=
10
;
m_RefCount
=
0
;
m_Center
=
false
;
m_Center
=
false
;
// Suitable for schematic only. for libedit and viewlib, must be set to true
InitDatas
();
}
...
...
eeschema/libframe.cpp
View file @
ceeb27cf
...
...
@@ -72,6 +72,7 @@ WinEDA_LibeditFrame::WinEDA_LibeditFrame( wxWindow* father,
// Give an icon
SetIcon
(
wxIcon
(
libedit_xpm
)
);
SetBaseScreen
(
g_ScreenLib
);
GetScreen
()
->
m_Center
=
true
;
// set to true to have the coordinates origine -0,0) centered on screen
GetSettings
();
SetSize
(
m_FramePos
.
x
,
m_FramePos
.
y
,
m_FrameSize
.
x
,
m_FrameSize
.
y
);
if
(
DrawPanel
)
...
...
@@ -79,6 +80,7 @@ WinEDA_LibeditFrame::WinEDA_LibeditFrame( wxWindow* father,
ReCreateHToolbar
();
ReCreateVToolbar
();
DisplayLibInfos
();
BestZoom
();
Show
(
TRUE
);
}
...
...
eeschema/viewlib_frame.cpp
View file @
ceeb27cf
...
...
@@ -2,10 +2,6 @@
/* viewlib_frame.cpp - fonctions des classes du type WinEDA_ViewlibFrame */
/*************************************************************************/
#ifdef __GNUG__
#pragma implementation
#endif
#include "fctsys.h"
#include "common.h"
...
...
@@ -23,41 +19,39 @@
/* class WinEDA_ViewlibFrame */
/*****************************/
BEGIN_EVENT_TABLE
(
WinEDA_ViewlibFrame
,
wxFrame
)
COMMON_EVENTS_DRAWFRAME
EVT_CLOSE
(
WinEDA_ViewlibFrame
::
OnCloseWindow
)
EVT_SIZE
(
WinEDA_ViewlibFrame
::
OnSize
)
EVT_ACTIVATE
(
WinEDA_DrawFrame
::
OnActivate
)
COMMON_EVENTS_DRAWFRAME
EVT_CLOSE
(
WinEDA_ViewlibFrame
::
OnCloseWindow
)
EVT_SIZE
(
WinEDA_ViewlibFrame
::
OnSize
)
EVT_ACTIVATE
(
WinEDA_DrawFrame
::
OnActivate
)
EVT_TOOL_RANGE
(
ID_LIBVIEW_START_H_TOOL
,
ID_LIBVIEW_END_H_TOOL
,
WinEDA_ViewlibFrame
::
Process_Special_Functions
)
EVT_TOOL_RANGE
(
ID_LIBVIEW_START_H_TOOL
,
ID_LIBVIEW_END_H_TOOL
,
WinEDA_ViewlibFrame
::
Process_Special_Functions
)
EVT_TOOL_RANGE
(
ID_ZOOM_IN_BUTT
,
ID_ZOOM_PAGE_BUTT
,
WinEDA_DrawFrame
::
Process_Zoom
)
EVT_TOOL_RANGE
(
ID_ZOOM_IN_BUTT
,
ID_ZOOM_PAGE_BUTT
,
WinEDA_DrawFrame
::
Process_Zoom
)
EVT_TOOL
(
ID_LIBVIEW_CMP_EXPORT_TO_SCHEMATIC
,
WinEDA_ViewlibFrame
::
ExportToSchematicLibraryPart
)
EVT_TOOL
(
ID_LIBVIEW_CMP_EXPORT_TO_SCHEMATIC
,
WinEDA_ViewlibFrame
::
ExportToSchematicLibraryPart
)
EVT_KICAD_CHOICEBOX
(
ID_LIBVIEW_SELECT_PART_NUMBER
,
WinEDA_ViewlibFrame
::
Process_Special_Functions
)
EVT_KICAD_CHOICEBOX
(
ID_LIBVIEW_SELECT_PART_NUMBER
,
WinEDA_ViewlibFrame
::
Process_Special_Functions
)
EVT_LISTBOX
(
ID_LIBVIEW_LIB_LIST
,
WinEDA_ViewlibFrame
::
ClickOnLibList
)
EVT_LISTBOX
(
ID_LIBVIEW_CMP_LIST
,
WinEDA_ViewlibFrame
::
ClickOnCmpList
)
EVT_LISTBOX
(
ID_LIBVIEW_LIB_LIST
,
WinEDA_ViewlibFrame
::
ClickOnLibList
)
EVT_LISTBOX
(
ID_LIBVIEW_CMP_LIST
,
WinEDA_ViewlibFrame
::
ClickOnCmpList
)
END_EVENT_TABLE
()
/****************/
/* Constructeur */
/****************/
/******************************************************************************/
WinEDA_ViewlibFrame
::
WinEDA_ViewlibFrame
(
wxWindow
*
father
,
WinEDA_App
*
parent
,
LibraryStruct
*
Library
,
wxSemaphore
*
semaphore
)
:
WinEDA_DrawFrame
(
father
,
VIEWER_FRAME
,
parent
,
_
(
"Library browser"
),
wxDefaultPosition
,
wxDefaultSize
)
/******************************************************************************/
{
m_FrameName
=
wxT
(
"ViewlibFrame"
);
m_Draw_Axis
=
TRUE
;
// TRUE
pour avoir les axes dessine
s
m_Draw_Grid
=
TRUE
;
// TRUE
pour avoir la axes dessinee
m_Draw_Axis
=
TRUE
;
// TRUE
to dispaly Axi
s
m_Draw_Grid
=
TRUE
;
// TRUE
to display grid
// Give an icon
SetIcon
(
wxIcon
(
library_browse_xpm
)
);
...
...
@@ -69,7 +63,7 @@ WinEDA_ViewlibFrame::WinEDA_ViewlibFrame( wxWindow* father, WinEDA_App* parent,
SetWindowStyle
(
GetWindowStyle
()
|
wxSTAY_ON_TOP
);
SetBaseScreen
(
new
SCH_SCREEN
()
);
GetScreen
()
->
SetZoom
(
16
);
GetScreen
()
->
m_Center
=
true
;
// set to true to have the coordinates origine -0,0) centered on screen
if
(
Library
==
NULL
)
{
...
...
@@ -78,8 +72,8 @@ WinEDA_ViewlibFrame::WinEDA_ViewlibFrame( wxWindow* father, WinEDA_App* parent,
m_LibList
=
new
wxListBox
(
this
,
ID_LIBVIEW_LIB_LIST
,
wxPoint
(
0
,
0
),
m_LibListSize
,
0
,
NULL
,
wxLB_HSCROLL
);
m_LibList
->
SetFont
(
*
g_DialogFont
);
m_LibList
->
SetBackgroundColour
(
wxColour
(
255
,
255
,
255
)
);
// Library background listbox color (white)
m_LibList
->
SetForegroundColour
(
wxColour
(
0
,
0
,
0
)
);
// Library foreground listbox color (black)
m_LibList
->
SetBackgroundColour
(
wxColour
(
255
,
255
,
255
)
);
// Library background listbox color (white)
m_LibList
->
SetForegroundColour
(
wxColour
(
0
,
0
,
0
)
);
// Library foreground listbox color (black)
}
else
g_CurrentViewLibraryName
=
Library
->
m_Name
;
...
...
@@ -89,8 +83,8 @@ WinEDA_ViewlibFrame::WinEDA_ViewlibFrame( wxWindow* father, WinEDA_App* parent,
m_CmpList
=
new
wxListBox
(
this
,
ID_LIBVIEW_CMP_LIST
,
wxPoint
(
m_LibListSize
.
x
,
0
),
m_CmpListSize
,
0
,
NULL
,
wxLB_HSCROLL
);
m_CmpList
->
SetFont
(
*
g_DialogFont
);
m_CmpList
->
SetBackgroundColour
(
wxColour
(
255
,
255
,
255
)
);
// Component background listbox color (white)
m_CmpList
->
SetForegroundColour
(
wxColour
(
0
,
0
,
0
)
);
// Component foreground listbox color (black)
m_CmpList
->
SetBackgroundColour
(
wxColour
(
255
,
255
,
255
)
);
// Component background listbox color (white)
m_CmpList
->
SetForegroundColour
(
wxColour
(
0
,
0
,
0
)
);
// Component foreground listbox color (black)
GetSettings
();
SetSize
(
m_FramePos
.
x
,
m_FramePos
.
y
,
m_FrameSize
.
x
,
m_FrameSize
.
y
);
...
...
@@ -99,15 +93,14 @@ WinEDA_ViewlibFrame::WinEDA_ViewlibFrame( wxWindow* father, WinEDA_App* parent,
if
(
m_LibList
)
ReCreateListLib
();
DisplayLibInfos
();
BestZoom
();
Show
(
TRUE
);
}
/***************/
/* Destructeur */
/***************/
/*******************************************/
WinEDA_ViewlibFrame
::~
WinEDA_ViewlibFrame
()
/*******************************************/
{
delete
GetScreen
();
SetBaseScreen
(
0
);
...
...
@@ -176,9 +169,9 @@ void WinEDA_ViewlibFrame::OnSize( wxSizeEvent& SizeEv )
}
/***********************************
********
/
/***********************************/
int
WinEDA_ViewlibFrame
::
BestZoom
()
/***********************************
********
/
/***********************************/
{
int
bestzoom
,
ii
,
jj
;
wxSize
size
,
itemsize
;
...
...
@@ -198,28 +191,21 @@ int WinEDA_ViewlibFrame::BestZoom()
EDA_Rect
BoundaryBox
=
CurrentLibEntry
->
GetBoundaryBox
(
g_ViewUnit
,
g_ViewConvert
);
itemsize
=
BoundaryBox
.
GetSize
();
size
=
DrawPanel
->
GetClientSize
();
size
.
x
-=
60
;
// Pour marges haut et bas
ii
=
itemsize
.
x
/
size
.
x
;
jj
=
itemsize
.
y
/
size
.
y
;
ii
=
MAX
(
ii
,
jj
);
size
=
DrawPanel
->
GetClientSize
();
size
.
x
-=
60
;
// sub a margin
ii
=
itemsize
.
x
/
size
.
x
;
jj
=
itemsize
.
y
/
size
.
y
;
bestzoom
=
MAX
(
ii
,
jj
);
/* determination du zoom existant le plus proche */
for
(
bestzoom
=
1
;
bestzoom
<
512
;
bestzoom
<<=
1
)
{
if
(
bestzoom
>
ii
)
break
;
}
GetScreen
()
->
m_Curseur
=
BoundaryBox
.
Centre
();
GetScreen
()
->
m_Curseur
=
BoundaryBox
.
Centre
();
return
bestzoom
;
}
/******************************************
*********
/
/******************************************/
void
WinEDA_ViewlibFrame
::
ReCreateListLib
()
/*******************************************
********
/
/*******************************************/
{
const
wxChar
**
ListNames
,
**
names
;
int
ii
;
...
...
@@ -243,8 +229,8 @@ void WinEDA_ViewlibFrame::ReCreateListLib()
free
(
ListNames
);
/*
Librairie courante peut etre non retrouv�e en list
e
* (peut etre effac�e lors d'une modification de configuration)
*/
/*
Clear current library because it can be deleted after a config chang
e
*/
if
(
!
found
)
{
g_CurrentViewLibraryName
.
Empty
();
...
...
@@ -269,8 +255,8 @@ void WinEDA_ViewlibFrame::ReCreateListCmp()
m_CmpList
->
Clear
();
ii
=
0
;
g_CurrentViewComponentName
.
Empty
();
g_ViewConvert
=
1
;
/*
Vue normal / convert
*/
g_ViewUnit
=
1
;
/*
unit� a afficher (A, B ..)
*/
g_ViewConvert
=
1
;
/*
Select normal/"de morgan" shape
*/
g_ViewUnit
=
1
;
/*
Selec unit to display for multiple parts per package
*/
if
(
Library
)
LibEntry
=
(
EDA_LibComponentStruct
*
)
PQFirst
(
&
Library
->
m_Entries
,
FALSE
);
while
(
LibEntry
)
...
...
@@ -325,7 +311,7 @@ void WinEDA_ViewlibFrame::ClickOnCmpList( wxCommandEvent& event )
void
WinEDA_ViewlibFrame
::
ExportToSchematicLibraryPart
(
wxCommandEvent
&
event
)
/****************************************************************************/
/* Export t
o schematic the current viewed component,
and close the library browser
/* Export t
he current component to schematic
and close the library browser
*/
{
int
ii
=
m_CmpList
->
GetSelection
();
...
...
eeschema/viewlibs.cpp
View file @
ceeb27cf
...
...
@@ -3,7 +3,7 @@
/****************************/
#include "fctsys.h"
#include "gr_basic.h"
//
#include "gr_basic.h"
#include "common.h"
#include "program.h"
...
...
include/drawpanel_wxstruct.h
View file @
ceeb27cf
...
...
@@ -23,8 +23,8 @@ class SCH_ITEM;
class
GRID_TYPE
{
public
:
int
m_Id
;
wxSize
m_Size
;
int
m_Id
;
wxSize
m_Size
;
};
...
...
@@ -65,9 +65,9 @@ public:
int
m_CursorLevel
;
// Index for cursor redraw in XOR mode
/* Cursor management (used in editing functions) */
void
(
*
ManageCurseur
)(
WinEDA_DrawPanel
*
panel
,
wxDC
*
DC
,
bool
erase
);
/* Fonction d'affichage sur deplacement souris
void
(
*
ManageCurseur
)(
WinEDA_DrawPanel
*
panel
,
wxDC
*
DC
,
bool
erase
);
/* Fonction d'affichage sur deplacement souris
* si erase : effacement ancien affichage */
void
(
*
ForceCloseManageCurseur
)(
WinEDA_DrawPanel
*
panel
,
wxDC
*
DC
);
/* Fonction de fermeture forc�
void
(
*
ForceCloseManageCurseur
)(
WinEDA_DrawPanel
*
panel
,
wxDC
*
DC
);
/* Fonction de fermeture forc�
* de la fonction ManageCurseur */
public
:
...
...
@@ -80,42 +80,42 @@ public:
BASE_SCREEN
*
GetScreen
();
void
PrepareGraphicContext
(
wxDC
*
DC
);
wxPoint
CalcAbsolutePosition
(
const
wxPoint
&
rel_pos
);
bool
IsPointOnDisplay
(
wxPoint
ref_pos
);
void
OnPaint
(
wxPaintEvent
&
event
);
void
OnSize
(
wxSizeEvent
&
event
);
void
SetBoundaryBox
();
void
ReDraw
(
wxDC
*
DC
,
bool
erasebg
=
TRUE
);
void
PrintPage
(
wxDC
*
DC
,
bool
Print_Sheet_Ref
,
int
PrintMask
,
bool
aPrintMirrorMode
);
void
DrawBackGround
(
wxDC
*
DC
);
void
m_Draw_Auxiliary_Axis
(
wxDC
*
DC
,
int
drawmode
);
void
OnEraseBackground
(
wxEraseEvent
&
event
);
void
OnActivate
(
wxActivateEvent
&
event
);
void
PrepareGraphicContext
(
wxDC
*
DC
);
wxPoint
CalcAbsolutePosition
(
const
wxPoint
&
rel_pos
);
bool
IsPointOnDisplay
(
wxPoint
ref_pos
);
void
OnPaint
(
wxPaintEvent
&
event
);
void
OnSize
(
wxSizeEvent
&
event
);
void
SetBoundaryBox
();
void
ReDraw
(
wxDC
*
DC
,
bool
erasebg
=
TRUE
);
void
PrintPage
(
wxDC
*
DC
,
bool
Print_Sheet_Ref
,
int
PrintMask
,
bool
aPrintMirrorMode
);
void
DrawBackGround
(
wxDC
*
DC
);
void
m_Draw_Auxiliary_Axis
(
wxDC
*
DC
,
int
drawmode
);
void
OnEraseBackground
(
wxEraseEvent
&
event
);
void
OnActivate
(
wxActivateEvent
&
event
);
/* Mouse and keys events */
void
OnMouseEvent
(
wxMouseEvent
&
event
);
void
OnMouseLeaving
(
wxMouseEvent
&
event
);
void
OnKeyEvent
(
wxKeyEvent
&
event
);
void
OnMouseEvent
(
wxMouseEvent
&
event
);
void
OnMouseLeaving
(
wxMouseEvent
&
event
);
void
OnKeyEvent
(
wxKeyEvent
&
event
);
/*************************/
void
EraseScreen
(
wxDC
*
DC
);
void
OnScrollWin
(
wxCommandEvent
&
event
);
void
OnScroll
(
wxScrollWinEvent
&
event
);
void
EraseScreen
(
wxDC
*
DC
);
void
OnScrollWin
(
wxCommandEvent
&
event
);
void
OnScroll
(
wxScrollWinEvent
&
event
);
void
SetZoom
(
int
mode
);
int
GetZoom
();
void
SetGrid
(
const
wxSize
&
size
);
wxSize
GetGrid
();
void
SetZoom
(
int
mode
);
int
GetZoom
();
void
SetGrid
(
const
wxSize
&
size
);
wxSize
GetGrid
();
void
AddMenuZoom
(
wxMenu
*
MasterMenu
);
bool
OnRightClick
(
wxMouseEvent
&
event
);
void
Process_Popup_Zoom
(
wxCommandEvent
&
event
);
void
OnPopupGridSelect
(
wxCommandEvent
&
event
);
void
Process_Special_Functions
(
wxCommandEvent
&
event
);
wxPoint
CursorRealPosition
(
const
wxPoint
&
ScreenPos
);
wxPoint
CursorScreenPosition
();
void
AddMenuZoom
(
wxMenu
*
MasterMenu
);
bool
OnRightClick
(
wxMouseEvent
&
event
);
void
Process_Popup_Zoom
(
wxCommandEvent
&
event
);
void
OnPopupGridSelect
(
wxCommandEvent
&
event
);
void
Process_Special_Functions
(
wxCommandEvent
&
event
);
wxPoint
CursorRealPosition
(
const
wxPoint
&
ScreenPos
);
wxPoint
CursorScreenPosition
();
/**
* Function PostDirtyRect
...
...
@@ -127,7 +127,7 @@ public:
* (vertical and horizontal edges only), and it must be [,) in nature, i.e.
* [pos, dim) == [inclusive, exclusive)
*/
void
PostDirtyRect
(
EDA_Rect
aRect
);
void
PostDirtyRect
(
EDA_Rect
aRect
);
/**
* Function ConvertPcbUnitsToPixelsUnits
...
...
@@ -136,7 +136,7 @@ public:
* corner of draw area) according to the current scroll and zoom.
* @param aRect = the rectangle to convert
*/
void
ConvertPcbUnitsToPixelsUnits
(
EDA_Rect
*
aRect
);
void
ConvertPcbUnitsToPixelsUnits
(
EDA_Rect
*
aRect
);
/**
* Function ConvertPcbUnitsToPixelsUnits
...
...
@@ -144,17 +144,17 @@ public:
* relative to the current draw area (origin 0,0 is the left top visible
* corner of draw area) according to the current scroll and zoom.
* @param aPosition = the position to convert
*/
void
ConvertPcbUnitsToPixelsUnits
(
wxPoint
*
aPosition
);
*/
void
ConvertPcbUnitsToPixelsUnits
(
wxPoint
*
aPosition
);
wxPoint
GetScreenCenterRealPosition
(
void
);
void
MouseToCursorSchema
();
void
MouseTo
(
const
wxPoint
&
Mouse
);
wxPoint
GetScreenCenterRealPosition
(
void
);
void
MouseToCursorSchema
();
void
MouseTo
(
const
wxPoint
&
Mouse
);
/* Cursor functions */
void
Trace_Curseur
(
wxDC
*
DC
,
int
color
=
WHITE
);
// Draw the user cursor (grid cursor)
void
CursorOff
(
wxDC
*
DC
);
// remove the grid cursor from the display
void
CursorOn
(
wxDC
*
DC
);
// display the grid cursor
void
Trace_Curseur
(
wxDC
*
DC
,
int
color
=
WHITE
);
// Draw the user cursor (grid cursor)
void
CursorOff
(
wxDC
*
DC
);
// remove the grid cursor from the display
void
CursorOn
(
wxDC
*
DC
);
// display the grid cursor
DECLARE_EVENT_TABLE
()
};
...
...
@@ -170,7 +170,6 @@ typedef enum { /* definition de l'etat du block */
STATE_BLOCK_END
,
/* Block initialise: 2eme point defini */
STATE_BLOCK_MOVE
,
/* Block en deplacement */
STATE_BLOCK_STOP
/* Block fixe (fin de deplacement) */
}
BlockState
;
/* codes des differentes commandes sur block: */
...
...
@@ -190,7 +189,6 @@ typedef enum {
BLOCK_SELECT_ITEMS_ONLY
,
BLOCK_MIRROR_X
,
BLOCK_MIRROR_Y
}
CmdBlockType
;
...
...
@@ -203,15 +201,15 @@ public:
* selectionnee dans le bloc */
int
m_Color
;
/* Block Color */
wxPoint
m_MoveVector
;
/* Move distance in move, drag, copy ... command */
wxPoint
m_BlockLastCursorPosition
;
/* Last Mouse position in block command
wxPoint
m_BlockLastCursorPosition
;
/* Last Mouse position in block command
* = last cursor position in move commands
* = 0,0 in block paste */
public
:
DrawBlockStruct
();
~
DrawBlockStruct
();
void
SetMessageBlock
(
WinEDA_DrawFrame
*
frame
);
void
Draw
(
WinEDA_DrawPanel
*
panel
,
wxDC
*
DC
);
void
SetMessageBlock
(
WinEDA_DrawFrame
*
frame
);
void
Draw
(
WinEDA_DrawPanel
*
panel
,
wxDC
*
DC
);
};
...
...
@@ -221,28 +219,31 @@ public:
class
BASE_SCREEN
:
public
EDA_BaseStruct
{
public
:
wxPoint
m_DrawOrg
;
/* offsets pour tracer le circuit sur l'ecran */
wxPoint
m_Curseur
;
/* Screen cursor coordinate (on grid) in user units. */
wxPoint
m_MousePosition
;
/* Mouse cursor coordinate (off grid) in user units. */
wxPoint
m_MousePositionInPixels
;
/* Mouse cursor coordinate (off grid) in pixels. */
wxPoint
m_O_Curseur
;
/* Relative Screen cursor coordinate (on grid) in user units.
wxPoint
m_DrawOrg
;
/* offsets pour tracer le circuit sur l'ecran */
wxPoint
m_Curseur
;
/* Screen cursor coordinate (on grid) in user units. */
wxPoint
m_MousePosition
;
/* Mouse cursor coordinate (off grid) in user units. */
wxPoint
m_MousePositionInPixels
;
/* Mouse cursor coordinate (off grid) in pixels. */
wxPoint
m_O_Curseur
;
/* Relative Screen cursor coordinate (on grid) in user units.
* (coordinates from last reset position)*/
wxPoint
m_ScrollbarPos
;
// Position effective des Curseurs de scroll
wxSize
m_ScrollbarNumber
;
/* Valeur effective des Nombres de Scrool
wxPoint
m_ScrollbarPos
;
// Position effective des Curseurs de scroll
wxSize
m_ScrollbarNumber
;
/* Valeur effective des Nombres de Scrool
* c.a.d taille en unites de scroll de la surface totale affichable */
wxPoint
m_StartVisu
;
// Coord absolues du 1er pixel visualis�a l'ecran (en nombre de pixels)
wxPoint
m_StartVisu
;
// Coord absolues du 1er pixel visualis�a l'ecran (en nombre de pixels)
wxSize
m_SizeVisu
;
/* taille en pixels de l'ecran (fenetre de visu
wxSize
m_SizeVisu
;
/* taille en pixels de l'ecran (fenetre de visu
* Utile pour recadrer les affichages lors de la
* navigation dans la hierarchie */
bool
m_Center
;
// TRUE: coord algebriques, FALSE: coord >= 0
bool
m_Center
;
/* fix the coordinate (0,0) position on screen : if TRUE (0,0) in centered on screen
* TRUE: when coordiantaes can be < 0 and > 0 all but schematic
* FALSE: when coordinates can be only >= 0 Schematic
*/
bool
m_FirstRedraw
;
/* Gestion des editions */
SCH_ITEM
*
EEDrawList
;
/* Object list (main data) for schematic */
EDA_BaseStruct
*
m_UndoList
;
/* Object list for the undo command (old data) */
EDA_BaseStruct
*
m_RedoList
;
/* Object list for the redo command (old data) */
int
m_UndoRedoCountMax
;
/* undo/Redo command Max depth */
SCH_ITEM
*
EEDrawList
;
/* Object list (main data) for schematic */
EDA_BaseStruct
*
m_UndoList
;
/* Object list for the undo command (old data) */
EDA_BaseStruct
*
m_RedoList
;
/* Object list for the redo command (old data) */
int
m_UndoRedoCountMax
;
/* undo/Redo command Max depth */
/* block control */
DrawBlockStruct
BlockLocate
;
/* Bock description for block commands */
...
...
@@ -271,13 +272,13 @@ private:
/* Valeurs du pas de grille et du zoom */
public
:
wxSize
m_Grid
;
/* Current grid. */
GridArray
m_GridList
;
bool
m_UserGridIsON
;
wxSize
m_Grid
;
/* Current grid. */
GridArray
m_GridList
;
bool
m_UserGridIsON
;
int
m_Diviseur_Grille
;
int
*
m_ZoomList
;
/* Liste des coefficients standard de zoom */
int
m_Zoom
;
/* coeff de ZOOM */
int
m_Diviseur_Grille
;
int
*
m_ZoomList
;
/* Liste des coefficients standard de zoom */
int
m_Zoom
;
/* coeff de ZOOM */
public
:
BASE_SCREEN
(
KICAD_T
aType
=
SCREEN_STRUCT_TYPE
);
...
...
@@ -322,38 +323,39 @@ public:
//----<zoom stuff>----------------------------------------------------------
/**
* Function GetZoom
* returns the current zoom factor
*/
int
GetZoom
()
const
;
int
GetZoom
()
const
;
/**
* Function SetZoom
* adjusts the current zoom factor
*/
void
SetZoom
(
int
coeff
);
void
SetZoom
(
int
coeff
);
/**
* Function SetZoomList
* sets the list of zoom factors.
* @param aZoomList An array of zoom factors in ascending order, zero terminated
*/
void
SetZoomList
(
const
int
*
zoomlist
);
void
SetZoomList
(
const
int
*
zoomlist
);
void
SetNextZoom
();
/* ajuste le prochain coeff de zoom */
void
SetPreviousZoom
();
/* ajuste le precedent coeff de zoom */
void
SetFirstZoom
();
/* ajuste le coeff de zoom a 1*/
void
SetLastZoom
();
/* ajuste le coeff de zoom au max */
void
SetNextZoom
();
/* ajuste le prochain coeff de zoom */
void
SetPreviousZoom
();
/* ajuste le precedent coeff de zoom */
void
SetFirstZoom
();
/* ajuste le coeff de zoom a 1*/
void
SetLastZoom
();
/* ajuste le coeff de zoom au max */
//----<grid stuff>----------------------------------------------------------
wxSize
GetGrid
();
/* retourne la grille */
void
SetGrid
(
const
wxSize
&
size
);
void
SetGrid
(
int
);
void
SetGridList
(
GridArray
&
sizelist
);
void
AddGrid
(
const
GRID_TYPE
&
grid
);
void
AddGrid
(
const
wxSize
&
size
,
int
id
);
void
AddGrid
(
const
wxRealPoint
&
size
,
int
units
,
int
id
);
wxSize
GetGrid
();
/* retourne la grille */
void
SetGrid
(
const
wxSize
&
size
);
void
SetGrid
(
int
);
void
SetGridList
(
GridArray
&
sizelist
);
void
AddGrid
(
const
GRID_TYPE
&
grid
);
void
AddGrid
(
const
wxSize
&
size
,
int
id
);
void
AddGrid
(
const
wxRealPoint
&
size
,
int
units
,
int
id
);
/**
...
...
@@ -380,7 +382,9 @@ public:
return
wxT
(
"BASE_SCREEN"
);
}
#if defined(DEBUG)
/**
* Function Show
* is used to output the object tree, currently for debugging only.
...
...
@@ -389,8 +393,8 @@ public:
* @param os The ostream& to output to.
*/
void
Show
(
int
nestLevel
,
std
::
ostream
&
os
);
#endif
#endif
};
...
...
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