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
367bfb4e
Commit
367bfb4e
authored
Aug 15, 2012
by
Dick Hollenbeck
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix problem with eeschema print dialog showing up on missing monitor
parent
6bb2fce7
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
932 additions
and
932 deletions
+932
-932
CMakeLists.txt
CMakeLists.txt
+5
-5
base_screen.cpp
common/base_screen.cpp
+1
-1
dialog_print_using_printer.cpp
eeschema/dialogs/dialog_print_using_printer.cpp
+48
-11
dialog_print_using_printer_base.cpp
eeschema/dialogs/dialog_print_using_printer_base.cpp
+82
-82
dialog_print_using_printer_base.fbp
eeschema/dialogs/dialog_print_using_printer_base.fbp
+730
-768
dialog_print_using_printer_base.h
eeschema/dialogs/dialog_print_using_printer_base.h
+60
-59
legacy_plugin.cpp
pcbnew/legacy_plugin.cpp
+6
-6
No files found.
CMakeLists.txt
View file @
367bfb4e
...
...
@@ -83,11 +83,11 @@ else (KICAD_STABLE_VERSION )
endif
(
KICAD_STABLE_VERSION
)
# Nanometers must be enabled when USE_PCBNEW_SEXPR_FILE_FORMAT=ON.
#
if( USE_PCBNEW_SEXPR_FILE_FORMAT AND NOT USE_PCBNEW_NANOMETRES )
#
set( TMP "The Pcbnew s-expression file format requires nano-meter internal units to be " )
#
set( TMP "${TMP} enabled using -DUSE_PCBNEW_NANOMETRES=ON." )
#
message( FATAL_ERROR ${TMP} )
#
endif( USE_PCBNEW_SEXPR_FILE_FORMAT AND NOT USE_PCBNEW_NANOMETRES )
if
(
USE_PCBNEW_SEXPR_FILE_FORMAT AND NOT USE_PCBNEW_NANOMETRES
)
set
(
TMP
"The Pcbnew s-expression file format requires nano-meter internal units to be "
)
set
(
TMP
"
${
TMP
}
enabled using -DUSE_PCBNEW_NANOMETRES=ON."
)
message
(
FATAL_ERROR
${
TMP
}
)
endif
(
USE_PCBNEW_SEXPR_FILE_FORMAT AND NOT USE_PCBNEW_NANOMETRES
)
#================================================
# Set flags for GCC.
...
...
common/base_screen.cpp
View file @
367bfb4e
...
...
@@ -119,7 +119,7 @@ bool BASE_SCREEN::SetZoom( double iu_per_du )
if
(
iu_per_du
==
m_Zoom
)
return
false
;
wxLogDebug
(
"Zoom:%.16g 1/Zoom:%.16g"
,
iu_per_du
,
1
/
iu_per_du
);
//
wxLogDebug( "Zoom:%.16g 1/Zoom:%.16g", iu_per_du, 1/iu_per_du );
if
(
iu_per_du
<
GetMinAllowedZoom
()
)
return
false
;
...
...
eeschema/dialogs/dialog_print_using_printer.cpp
View file @
367bfb4e
...
...
@@ -62,23 +62,41 @@ public:
return
(
DIALOG_PRINT_USING_PRINTER
*
)
wxWindow
::
GetParent
();
}
void
OnCloseWindow
(
wxCloseEvent
&
event
)
bool
Show
(
bool
show
)
// overload
{
if
(
!
IsIconized
()
)
bool
ret
;
// Show or hide the window. If hiding, save current position and size.
// If showing, use previous position and size.
if
(
show
)
{
GetParent
()
->
GetParent
()
->
SetPreviewPosition
(
GetPosition
()
);
GetParent
()
->
GetParent
()
->
SetPreviewSize
(
GetSize
()
);
ret
=
wxPreviewFrame
::
Show
(
show
);
if
(
s_size
.
x
!=
0
&&
s_size
.
y
!=
0
)
SetSize
(
s_pos
.
x
,
s_pos
.
y
,
s_size
.
x
,
s_size
.
y
,
0
);
}
else
{
// Save the dialog's position & size before hiding
s_size
=
GetSize
();
s_pos
=
GetPosition
();
wxPreviewFrame
::
OnCloseWindow
(
event
);
ret
=
wxPreviewFrame
::
Show
(
show
);
}
return
ret
;
}
private
:
static
wxPoint
s_pos
;
static
wxSize
s_size
;
DECLARE_CLASS
(
SCH_PREVIEW_FRAME
)
DECLARE_EVENT_TABLE
()
DECLARE_NO_COPY_CLASS
(
SCH_PREVIEW_FRAME
)
};
wxPoint
SCH_PREVIEW_FRAME
::
s_pos
;
wxSize
SCH_PREVIEW_FRAME
::
s_size
;
IMPLEMENT_CLASS
(
SCH_PREVIEW_FRAME
,
wxPreviewFrame
)
...
...
@@ -133,6 +151,15 @@ void DIALOG_PRINT_USING_PRINTER::OnInitDialog( wxInitDialogEvent& event )
if
(
GetSizer
()
)
GetSizer
()
->
SetSizeHints
(
this
);
#if 0
Does not work on a two monitor system when the 2nd monitor is not attached,
and when the coords were saved to disk when the playground was bigger while the
2nd monitor was attached.
Simply rely on the policy in class DIALOG_SHIM, which centers the dialog
initially during a runtime session but gives user the ability to move it in
that session.
if( parent->GetPrintDialogPosition() == wxDefaultPosition &&
parent->GetPrintDialogSize() == wxDefaultSize )
{
...
...
@@ -143,12 +170,18 @@ void DIALOG_PRINT_USING_PRINTER::OnInitDialog( wxInitDialogEvent& event )
SetPosition( parent->GetPrintDialogPosition() );
SetSize( parent->GetPrintDialogSize() );
}
#else
// This dialog may get moved and resized in Show(), but in case this is
// the first time, center it for starters.
Center
();
#endif
SetFocus
();
m_buttonPrint
->
Set
Default
();
m_buttonPrint
->
SetDefault
();
// on linux, this is inadequate to determine
// what ENTER does. Must also SetFocus().
m_buttonPrint
->
Set
Focus
();
}
void
DIALOG_PRINT_USING_PRINTER
::
GetPrintOptions
()
{
SCH_EDIT_FRAME
*
parent
=
GetParent
();
...
...
@@ -210,9 +243,13 @@ void DIALOG_PRINT_USING_PRINTER::OnPrintPreview( wxCommandEvent& event )
preview
->
SetZoom
(
100
);
SCH_PREVIEW_FRAME
*
frame
=
new
SCH_PREVIEW_FRAME
(
preview
,
this
,
title
,
parent
->
GetPreviewPosition
(),
parent
->
GetPreviewSize
()
);
SCH_PREVIEW_FRAME
*
frame
=
new
SCH_PREVIEW_FRAME
(
preview
,
this
,
title
);
// on first invocation in this runtime session, set to 2/3 size of my parent,
// but will be changed in Show() if not first time as will position.
frame
->
SetSize
(
(
2
*
parent
->
GetSize
())
/
3
);
frame
->
Center
();
frame
->
Initialize
();
frame
->
Show
(
true
);
}
...
...
eeschema/dialogs/dialog_print_using_printer_base.cpp
View file @
367bfb4e
///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version
Mar 17 2012)
// C++ code generated with wxFormBuilder (version
Apr 11 2012)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
...
...
@@ -9,7 +9,7 @@
///////////////////////////////////////////////////////////////////////////
DIALOG_PRINT_USING_PRINTER_BASE
::
DIALOG_PRINT_USING_PRINTER_BASE
(
wxWindow
*
parent
,
wxWindowID
id
,
const
wxString
&
title
,
const
wxPoint
&
pos
,
const
wxSize
&
size
,
long
style
)
:
wxDialog
(
parent
,
id
,
title
,
pos
,
size
,
style
)
DIALOG_PRINT_USING_PRINTER_BASE
::
DIALOG_PRINT_USING_PRINTER_BASE
(
wxWindow
*
parent
,
wxWindowID
id
,
const
wxString
&
title
,
const
wxPoint
&
pos
,
const
wxSize
&
size
,
long
style
)
:
DIALOG_SHIM
(
parent
,
id
,
title
,
pos
,
size
,
style
)
{
this
->
SetSizeHints
(
wxSize
(
-
1
,
-
1
),
wxDefaultSize
);
...
...
eeschema/dialogs/dialog_print_using_printer_base.fbp
View file @
367bfb4e
...
...
@@ -25,62 +25,28 @@
<property
name=
"use_enum"
>
1
</property>
<property
name=
"use_microsoft_bom"
>
0
</property>
<object
class=
"Dialog"
expanded=
"1"
>
<property
name=
"BottomDockable"
>
1
</property>
<property
name=
"LeftDockable"
>
1
</property>
<property
name=
"RightDockable"
>
1
</property>
<property
name=
"TopDockable"
>
1
</property>
<property
name=
"aui_layer"
></property>
<property
name=
"aui_managed"
>
0
</property>
<property
name=
"aui_name"
></property>
<property
name=
"aui_position"
></property>
<property
name=
"aui_row"
></property>
<property
name=
"best_size"
></property>
<property
name=
"aui_manager_style"
>
wxAUI_MGR_DEFAULT
</property>
<property
name=
"bg"
></property>
<property
name=
"caption"
></property>
<property
name=
"caption_visible"
>
1
</property>
<property
name=
"center"
></property>
<property
name=
"center_pane"
>
0
</property>
<property
name=
"close_button"
>
1
</property>
<property
name=
"context_help"
></property>
<property
name=
"context_menu"
>
1
</property>
<property
name=
"default_pane"
>
0
</property>
<property
name=
"dock"
>
Dock
</property>
<property
name=
"dock_fixed"
>
0
</property>
<property
name=
"docking"
>
Left
</property>
<property
name=
"enabled"
>
1
</property>
<property
name=
"event_handler"
>
impl_virtual
</property>
<property
name=
"extra_style"
></property>
<property
name=
"fg"
></property>
<property
name=
"floatable"
>
1
</property>
<property
name=
"font"
></property>
<property
name=
"gripper"
>
0
</property>
<property
name=
"hidden"
>
0
</property>
<property
name=
"id"
>
wxID_ANY
</property>
<property
name=
"max_size"
></property>
<property
name=
"maximize_button"
>
0
</property>
<property
name=
"maximum_size"
></property>
<property
name=
"min_size"
></property>
<property
name=
"minimize_button"
>
0
</property>
<property
name=
"minimum_size"
>
-1,-1
</property>
<property
name=
"moveable"
>
1
</property>
<property
name=
"name"
>
DIALOG_PRINT_USING_PRINTER_BASE
</property>
<property
name=
"pane_border"
>
1
</property>
<property
name=
"pane_position"
></property>
<property
name=
"pane_size"
></property>
<property
name=
"pin_button"
>
1
</property>
<property
name=
"pos"
></property>
<property
name=
"resize"
>
Resizable
</property>
<property
name=
"show"
>
1
</property>
<property
name=
"size"
>
388,185
</property>
<property
name=
"style"
>
wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER
</property>
<property
name=
"subclass"
>
</property>
<property
name=
"subclass"
>
DIALOG_SHIM; dialog_shim.h
</property>
<property
name=
"title"
>
Print
</property>
<property
name=
"toolbar_pane"
>
0
</property>
<property
name=
"tooltip"
></property>
<property
name=
"validator_data_type"
></property>
<property
name=
"validator_style"
>
wxFILTER_NONE
</property>
<property
name=
"validator_type"
>
wxDefaultValidator
</property>
<property
name=
"validator_variable"
></property>
<property
name=
"window_extra_style"
></property>
<property
name=
"window_name"
></property>
<property
name=
"window_style"
></property>
...
...
@@ -188,10 +154,6 @@
<property
name=
"subclass"
></property>
<property
name=
"toolbar_pane"
>
0
</property>
<property
name=
"tooltip"
></property>
<property
name=
"validator_data_type"
></property>
<property
name=
"validator_style"
>
wxFILTER_NONE
</property>
<property
name=
"validator_type"
>
wxDefaultValidator
</property>
<property
name=
"validator_variable"
></property>
<property
name=
"window_extra_style"
></property>
<property
name=
"window_name"
></property>
<property
name=
"window_style"
></property>
...
...
eeschema/dialogs/dialog_print_using_printer_base.h
View file @
367bfb4e
///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version
Mar 17 2012)
// C++ code generated with wxFormBuilder (version
Apr 11 2012)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
...
...
@@ -11,6 +11,7 @@
#include <wx/artprov.h>
#include <wx/xrc/xmlres.h>
#include <wx/intl.h>
#include "dialog_shim.h"
#include <wx/string.h>
#include <wx/stattext.h>
#include <wx/gdicmn.h>
...
...
@@ -27,7 +28,7 @@
///////////////////////////////////////////////////////////////////////////////
/// Class DIALOG_PRINT_USING_PRINTER_BASE
///////////////////////////////////////////////////////////////////////////////
class
DIALOG_PRINT_USING_PRINTER_BASE
:
public
wxDialog
class
DIALOG_PRINT_USING_PRINTER_BASE
:
public
DIALOG_SHIM
{
private
:
...
...
pcbnew/legacy_plugin.cpp
View file @
367bfb4e
...
...
@@ -177,7 +177,7 @@ static inline const char* ShowHorizJustify( EDA_TEXT_HJUSTIFY_T horizontal )
return
rs
;
}
static
inline
EDA_TEXT_HJUSTIFY_T
H
orizJustify
(
const
char
*
horizontal
)
static
EDA_TEXT_HJUSTIFY_T
h
orizJustify
(
const
char
*
horizontal
)
{
if
(
!
strcmp
(
"L"
,
horizontal
)
)
return
GR_TEXT_HJUSTIFY_LEFT
;
...
...
@@ -186,7 +186,7 @@ static inline EDA_TEXT_HJUSTIFY_T HorizJustify( const char* horizontal )
return
GR_TEXT_HJUSTIFY_CENTER
;
}
static
inline
EDA_TEXT_VJUSTIFY_T
V
ertJustify
(
const
char
*
vertical
)
static
EDA_TEXT_VJUSTIFY_T
v
ertJustify
(
const
char
*
vertical
)
{
if
(
!
strcmp
(
"T"
,
vertical
)
)
return
GR_TEXT_VJUSTIFY_TOP
;
...
...
@@ -1582,10 +1582,10 @@ void LEGACY_PLUGIN::loadMODULE_TEXT( TEXTE_MODULE* aText )
aText
->
SetItalic
(
italic
&&
*
italic
==
'I'
);
if
(
hjust
)
aText
->
SetHorizJustify
(
H
orizJustify
(
hjust
)
);
aText
->
SetHorizJustify
(
h
orizJustify
(
hjust
)
);
if
(
vjust
)
aText
->
SetVertJustify
(
V
ertJustify
(
vjust
)
);
aText
->
SetVertJustify
(
v
ertJustify
(
vjust
)
);
if
(
layer
<
0
)
layer
=
0
;
...
...
@@ -1908,7 +1908,7 @@ void LEGACY_PLUGIN::loadPCB_TEXT()
pcbtxt
->
SetItalic
(
!
strcmp
(
style
,
"Italic"
)
);
if
(
hJustify
)
pcbtxt
->
SetHorizJustify
(
H
orizJustify
(
hJustify
)
);
pcbtxt
->
SetHorizJustify
(
h
orizJustify
(
hJustify
)
);
else
{
// boom, somebody changed a constructor, I was relying on this:
...
...
@@ -1916,7 +1916,7 @@ void LEGACY_PLUGIN::loadPCB_TEXT()
}
if
(
vJustify
)
pcbtxt
->
SetVertJustify
(
V
ertJustify
(
vJustify
)
);
pcbtxt
->
SetVertJustify
(
v
ertJustify
(
vJustify
)
);
if
(
layer
<
FIRST_COPPER_LAYER
)
layer
=
FIRST_COPPER_LAYER
;
...
...
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