From 1b1be19593c87ed2700f6fa7594a3364d663961d Mon Sep 17 00:00:00 2001 From: charras Date: Sat, 23 May 2009 07:16:05 +0000 Subject: [PATCH] changes in modedit for MacOSX compatibility --- include/wxPcbStruct.h | 17 ++-- internat/fr/kicad.mo | Bin 184654 -> 184653 bytes internat/fr/kicad.po | 8 +- pcbnew/dialog_edit_module.cpp | 7 +- pcbnew/dialog_edit_module.h | 2 +- pcbnew/edgemod.cpp | 14 ++-- pcbnew/edit.cpp | 4 +- pcbnew/editmod.cpp | 40 ++++----- pcbnew/edtxtmod.cpp | 3 +- pcbnew/modedit.cpp | 148 +++++++++++++++++++++------------- pcbnew/modedit_onclick.cpp | 9 +-- pcbnew/onleftclick.cpp | 7 +- 12 files changed, 139 insertions(+), 120 deletions(-) diff --git a/include/wxPcbStruct.h b/include/wxPcbStruct.h index c66826358a..e530c8f504 100644 --- a/include/wxPcbStruct.h +++ b/include/wxPcbStruct.h @@ -188,8 +188,7 @@ public: int DrawMode, int color, int type ); // Gestion des modules - void InstallModuleOptionsFrame( MODULE* Module, - wxDC* DC, const wxPoint& pos ); + void InstallModuleOptionsFrame( MODULE* Module, wxDC * DC ); MODULE* Copie_Module( MODULE* module ); MODULE* Exchange_Module( wxWindow* winaff, MODULE* old_module, @@ -228,7 +227,7 @@ public: // module texts void RotateTextModule( TEXTE_MODULE* Text, wxDC* DC ); - void DeleteTextModule( TEXTE_MODULE* Text, wxDC* DC ); + void DeleteTextModule( TEXTE_MODULE* Text ); void PlaceTexteModule( TEXTE_MODULE* Text, wxDC* DC ); void StartMoveTexteModule( TEXTE_MODULE* Text, wxDC* DC ); TEXTE_MODULE* CreateTextModule( MODULE* Module, wxDC* DC ); @@ -1000,9 +999,9 @@ private: public: // Footprint edition - void Place_Ancre( MODULE* module, wxDC* DC ); - void RemoveStruct( EDA_BaseStruct* Item, wxDC* DC ); - void Transform( MODULE* module, wxDC* DC, int transform ); + void Place_Ancre( MODULE* module ); + void RemoveStruct( EDA_BaseStruct* Item ); + void Transform( MODULE* module, int transform ); // loading Footprint MODULE* Import_Module( wxDC* DC ); @@ -1010,9 +1009,9 @@ public: void Load_Module_Module_From_BOARD( MODULE* Module ); // functions to edit footprint edges - void Edit_Edge_Width( EDGE_MODULE* Edge, wxDC* DC ); - void Edit_Edge_Layer( EDGE_MODULE* Edge, wxDC* DC ); - void Delete_Edge_Module( EDGE_MODULE* Edge, wxDC* DC ); + void Edit_Edge_Width( EDGE_MODULE* Edge ); + void Edit_Edge_Layer( EDGE_MODULE* Edge ); + void Delete_Edge_Module( EDGE_MODULE* Edge ); EDGE_MODULE* Begin_Edge_Module( EDGE_MODULE* Edge, wxDC* DC, int type_edge ); void End_Edge_Module( EDGE_MODULE* Edge, wxDC* DC ); void Enter_Edge_Width( EDGE_MODULE* Edge, wxDC* DC ); diff --git a/internat/fr/kicad.mo b/internat/fr/kicad.mo index 9405e07231b94741a9ebbf1973914e71ea539824..19f8a2b96c60937a014e600e53e8648fa5b81ac1 100644 GIT binary patch delta 16235 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 IQ#L>R|HGJ0IsgCw delta 16235 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 I%BF|^54}}PxBvhE diff --git a/internat/fr/kicad.po b/internat/fr/kicad.po index 20cfb73594..eefdc0065c 100644 --- a/internat/fr/kicad.po +++ b/internat/fr/kicad.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: kicad\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-05-21 17:31+0100\n" -"PO-Revision-Date: 2009-05-21 17:37+0100\n" +"PO-Revision-Date: 2009-05-21 18:16+0100\n" "Last-Translator: \n" "Language-Team: kicad team \n" "MIME-Version: 1.0\n" @@ -290,11 +290,11 @@ msgstr "Nettoyage segments nulls" #: pcbnew/clean.cpp:506 msgid "Merging Segments:" -msgstr "Fusionner Segments:" +msgstr "Fusion des Segments:" #: pcbnew/clean.cpp:508 msgid "Merge" -msgstr "Fusionner" +msgstr "Fusion" #: pcbnew/clean.cpp:508 msgid "0" @@ -374,7 +374,7 @@ msgstr "Erreur en Chargement de librairie" #: pcbnew/loadcmp.cpp:221 #, c-format msgid "Could not open PCB footprint library file <%s>." -msgstr "Ne peu ouvrir le fichier librairie de modules PCB <%s>." +msgstr "Ne peut ouvrir le fichier librairie de modules PCB <%s>." #: pcbnew/loadcmp.cpp:228 #, c-format diff --git a/pcbnew/dialog_edit_module.cpp b/pcbnew/dialog_edit_module.cpp index dfafde79b2..a8874f779d 100644 --- a/pcbnew/dialog_edit_module.cpp +++ b/pcbnew/dialog_edit_module.cpp @@ -37,9 +37,8 @@ END_EVENT_TABLE() /**************************************************************************************/ WinEDA_ModulePropertiesFrame::WinEDA_ModulePropertiesFrame( WinEDA_BasePcbFrame* parent, - MODULE* Module, wxDC* DC, - const wxPoint& framepos ) : - wxDialog( parent, -1, _( "Module properties" ), framepos, wxDefaultSize, DIALOG_STYLE ) + MODULE* Module, wxDC* DC ) : + wxDialog( parent, -1, _( "Module properties" ), wxDefaultPosition, wxDefaultSize, DIALOG_STYLE ) /**************************************************************************************/ { wxString number; @@ -813,7 +812,7 @@ void WinEDA_ModulePropertiesFrame::EditOrDelTextModule( wxCommandEvent& event ) Line.Printf( _( "Delete [%s]" ), Text->m_Text.GetData() ); if( !IsOK( this, Line ) ) goto out; - m_Parent->DeleteTextModule( Text, m_DC ); + m_Parent->DeleteTextModule( Text ); ReCreateFieldListBox(); m_TextListBox->SetSelection( 0 ); } diff --git a/pcbnew/dialog_edit_module.h b/pcbnew/dialog_edit_module.h index 19db8f3588..ee646dd357 100644 --- a/pcbnew/dialog_edit_module.h +++ b/pcbnew/dialog_edit_module.h @@ -54,7 +54,7 @@ private: public: // Constructor and destructor WinEDA_ModulePropertiesFrame(WinEDA_BasePcbFrame *parent, - MODULE * Module, wxDC * DC, const wxPoint & pos); + MODULE * Module, wxDC * DC); ~WinEDA_ModulePropertiesFrame() { } diff --git a/pcbnew/edgemod.cpp b/pcbnew/edgemod.cpp index f689d970bc..13e8c64cb7 100644 --- a/pcbnew/edgemod.cpp +++ b/pcbnew/edgemod.cpp @@ -144,7 +144,7 @@ static void ShowEdgeModule( WinEDA_DrawPanel* panel, wxDC* DC, bool erase ) /***************************************************************************/ -void WinEDA_ModuleEditFrame::Edit_Edge_Width( EDGE_MODULE* Edge, wxDC* DC ) +void WinEDA_ModuleEditFrame::Edit_Edge_Width( EDGE_MODULE* Edge ) /***************************************************************************/ /* Change the EDGE_MODULE Edge width, @@ -179,7 +179,7 @@ void WinEDA_ModuleEditFrame::Edit_Edge_Width( EDGE_MODULE* Edge, wxDC* DC ) /***************************************************************************/ -void WinEDA_ModuleEditFrame::Edit_Edge_Layer( EDGE_MODULE* Edge, wxDC* DC ) +void WinEDA_ModuleEditFrame::Edit_Edge_Layer( EDGE_MODULE* Edge ) /***************************************************************************/ /* Change the EDGE_MODULE Edge layer, (The new layer will be asked) @@ -267,12 +267,11 @@ void WinEDA_ModuleEditFrame::Enter_Edge_Width( EDGE_MODULE* Edge, wxDC* DC ) /****************************************************************************/ -void WinEDA_ModuleEditFrame::Delete_Edge_Module( EDGE_MODULE* Edge, wxDC* DC ) +void WinEDA_ModuleEditFrame::Delete_Edge_Module( EDGE_MODULE* Edge ) /****************************************************************************/ -/* Edition of the edge items width - * delete EDGE_MODULE Edge if Edge != NULL - * @param Edge = edge to edit, or NULL - * @param DC = current Device Context +/** Function Delete_Edge_Module + * delete EDGE_MODULE Edge + * @param Edge = edge to delete */ { if( Edge == NULL ) @@ -284,7 +283,6 @@ void WinEDA_ModuleEditFrame::Delete_Edge_Module( EDGE_MODULE* Edge, wxDC* DC ) } MODULE* Module = (MODULE*) Edge->GetParent(); - Edge->Draw( DrawPanel, DC, GR_XOR ); /* suppression d'un segment */ Edge ->DeleteStructure(); diff --git a/pcbnew/edit.cpp b/pcbnew/edit.cpp index 48df9de1b8..88c620156b 100644 --- a/pcbnew/edit.cpp +++ b/pcbnew/edit.cpp @@ -697,7 +697,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) SetCurItem( GetCurItem()->GetParent() ); if( !GetCurItem() || GetCurItem()->Type() != TYPE_MODULE ) break; - InstallModuleOptionsFrame( (MODULE*) GetCurItem(), &dc, pos ); + InstallModuleOptionsFrame( (MODULE*) GetCurItem(), &dc ); DrawPanel->MouseToCursorSchema(); break; @@ -756,7 +756,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) break; case ID_POPUP_PCB_DELETE_TEXTMODULE: - DeleteTextModule( (TEXTE_MODULE*) GetCurItem(), &dc ); + DeleteTextModule( (TEXTE_MODULE*) GetCurItem() ); SetCurItem( NULL ); DrawPanel->MouseToCursorSchema(); break; diff --git a/pcbnew/editmod.cpp b/pcbnew/editmod.cpp index 2739462c0f..e0a9f7e4a2 100644 --- a/pcbnew/editmod.cpp +++ b/pcbnew/editmod.cpp @@ -19,23 +19,19 @@ /* Variables locales: */ bool GoToEditor = FALSE; -/**************************************/ -/* class WinEDA_ModulePropertiesFrame */ -/**************************************/ +/* class WinEDA_ModulePropertiesFrame */ #include "dialog_edit_module.cpp" /*******************************************************************/ -void WinEDA_BasePcbFrame::InstallModuleOptionsFrame( MODULE* Module, - wxDC* DC, - const wxPoint& pos ) +void WinEDA_BasePcbFrame::InstallModuleOptionsFrame( MODULE* Module, wxDC * DC ) /*******************************************************************/ /* Fonction relai d'installation de la frame d'édition des proprietes * du module*/ { WinEDA_ModulePropertiesFrame* frame = - new WinEDA_ModulePropertiesFrame( this, Module, DC, pos ); + new WinEDA_ModulePropertiesFrame( this, Module, DC ); frame->ShowModal(); frame->Destroy(); @@ -61,7 +57,7 @@ void WinEDA_BasePcbFrame::InstallModuleOptionsFrame( MODULE* Module, /*******************************************************************/ -void WinEDA_ModuleEditFrame::Place_Ancre( MODULE* pt_mod, wxDC* DC ) +void WinEDA_ModuleEditFrame::Place_Ancre( MODULE* pt_mod ) /*******************************************************************/ /* @@ -69,32 +65,27 @@ void WinEDA_ModuleEditFrame::Place_Ancre( MODULE* pt_mod, wxDC* DC ) * Le module doit etre d'abort selectionne */ { - int deltaX, deltaY; + wxPoint delta; EDA_BaseStruct* PtStruct; D_PAD* pt_pad; if( pt_mod == NULL ) return; - pt_mod->DrawAncre( DrawPanel, DC, wxPoint( 0, 0 ), - DIM_ANCRE_MODULE, GR_XOR ); - - deltaX = pt_mod->m_Pos.x - GetScreen()->m_Curseur.x; - deltaY = pt_mod->m_Pos.y - GetScreen()->m_Curseur.y; + delta = pt_mod->m_Pos - GetScreen()->m_Curseur; pt_mod->m_Pos = GetScreen()->m_Curseur; /* Mise a jour des coord relatives des elements: * les coordonnees relatives sont relatives a l'ancre, pour orient 0. * il faut donc recalculer deltaX et deltaY en orientation 0 */ - RotatePoint( &deltaX, &deltaY, -pt_mod->m_Orient ); + RotatePoint( &delta, -pt_mod->m_Orient ); /* Mise a jour des coord relatives des pads */ pt_pad = (D_PAD*) pt_mod->m_Pads; for( ; pt_pad != NULL; pt_pad = pt_pad->Next() ) { - pt_pad->m_Pos0.x += deltaX; - pt_pad->m_Pos0.y += deltaY; + pt_pad->m_Pos0 += delta; } /* Mise a jour des coord relatives contours .. */ @@ -106,14 +97,14 @@ void WinEDA_ModuleEditFrame::Place_Ancre( MODULE* pt_mod, wxDC* DC ) case TYPE_EDGE_MODULE: #undef STRUCT #define STRUCT ( (EDGE_MODULE*) PtStruct ) - STRUCT->m_Start0.x += deltaX; STRUCT->m_Start0.y += deltaY; - STRUCT->m_End0.x += deltaX; STRUCT->m_End0.y += deltaY; + STRUCT->m_Start0 += delta; + STRUCT->m_End0 += delta; break; case TYPE_TEXTE_MODULE: #undef STRUCT #define STRUCT ( (TEXTE_MODULE*) PtStruct ) - STRUCT->m_Pos0.x += deltaX; STRUCT->m_Pos0.y += deltaY; + STRUCT->m_Pos0 += delta; break; default: @@ -122,12 +113,12 @@ void WinEDA_ModuleEditFrame::Place_Ancre( MODULE* pt_mod, wxDC* DC ) } pt_mod->Set_Rectangle_Encadrement(); - pt_mod->DrawAncre( DrawPanel, DC, wxPoint( 0, 0 ), DIM_ANCRE_MODULE, GR_OR ); + DrawPanel->Refresh(); } /**********************************************************************/ -void WinEDA_ModuleEditFrame::RemoveStruct( EDA_BaseStruct* Item, wxDC* DC ) +void WinEDA_ModuleEditFrame::RemoveStruct( EDA_BaseStruct* Item ) /**********************************************************************/ { if( Item == NULL ) @@ -152,12 +143,13 @@ void WinEDA_ModuleEditFrame::RemoveStruct( EDA_BaseStruct* Item, wxDC* DC ) DisplayError( this, _( "Text is VALUE!" ) ); break; } - DeleteTextModule( text, DC ); + DeleteTextModule( text ); } break; case TYPE_EDGE_MODULE: - Delete_Edge_Module( (EDGE_MODULE*) Item, DC ); + Delete_Edge_Module( (EDGE_MODULE*) Item ); + DrawPanel->Refresh(); break; case TYPE_MODULE: diff --git a/pcbnew/edtxtmod.cpp b/pcbnew/edtxtmod.cpp index 1994910e2a..442e5a981b 100644 --- a/pcbnew/edtxtmod.cpp +++ b/pcbnew/edtxtmod.cpp @@ -88,7 +88,7 @@ void WinEDA_BasePcbFrame::RotateTextModule( TEXTE_MODULE* Text, wxDC* DC ) /**************************************************************************/ -void WinEDA_BasePcbFrame::DeleteTextModule( TEXTE_MODULE* Text, wxDC* DC ) +void WinEDA_BasePcbFrame::DeleteTextModule( TEXTE_MODULE* Text ) /**************************************************************************/ /* @@ -104,7 +104,6 @@ void WinEDA_BasePcbFrame::DeleteTextModule( TEXTE_MODULE* Text, wxDC* DC ) if( Text->m_Type == TEXT_is_DIVERS ) { - // Text->Draw( DrawPanel, DC, GR_XOR ); DrawPanel->PostDirtyRect( Text->GetBoundingBox() ); /* liberation de la memoire : */ diff --git a/pcbnew/modedit.cpp b/pcbnew/modedit.cpp index 477de4cc74..361f686753 100644 --- a/pcbnew/modedit.cpp +++ b/pcbnew/modedit.cpp @@ -139,14 +139,13 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) /* Traite les selections d'outils et les commandes appelees du menu POPUP */ -{ - int id = event.GetId(); - wxPoint pos; - bool redraw = false; - wxClientDC dc( DrawPanel ); +#define SET_DC wxClientDC dc( DrawPanel ); DrawPanel->PrepareGraphicContext( &dc ); + +{ + int id = event.GetId(); + wxPoint pos; + bool redraw = false; - DrawPanel->CursorOff( &dc ); - DrawPanel->PrepareGraphicContext( &dc ); wxGetMousePosition( &pos.x, &pos.y ); @@ -185,20 +184,15 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) break; case ID_POPUP_CANCEL_CURRENT_COMMAND: - if( DrawPanel->ManageCurseur - && DrawPanel->ForceCloseManageCurseur ) + default: + if( DrawPanel->ManageCurseur && DrawPanel->ForceCloseManageCurseur ) { + // for all other commands: stop the move in progress + SET_DC; DrawPanel->ForceCloseManageCurseur( DrawPanel, &dc ); } - break; - - default: // Arret dea commande de d�placement en cours - if( DrawPanel->ManageCurseur - && DrawPanel->ForceCloseManageCurseur ) - { - DrawPanel->ForceCloseManageCurseur( DrawPanel, &dc ); - } - SetToolID( 0, wxCURSOR_ARROW, wxEmptyString ); + if( id != ID_POPUP_CANCEL_CURRENT_COMMAND ) + SetToolID( 0, wxCURSOR_ARROW, wxEmptyString ); break; } @@ -229,9 +223,10 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) SetCurItem( NULL ); GetScreen()->m_Curseur = wxPoint( 0, 0 ); - MODULE* module = Create_1_Module( &dc, wxEmptyString ); + MODULE* module = Create_1_Module( NULL, wxEmptyString ); if( module ) // i.e. if create module command not aborted { + redraw = true; module->SetPosition( wxPoint( 0, 0 ) ); if( GetBoard()->m_Modules ) GetBoard()->m_Modules->m_Flags = 0; @@ -244,7 +239,7 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) { wxFileName fn; fn = wxFileName( wxEmptyString, m_CurrentLib, ModuleFileExtension ); - wxString full_filename = wxGetApp().FindLibraryPath( fn ); + wxString full_filename = wxGetApp().FindLibraryPath( fn ); Save_Module_In_Library( full_filename, GetBoard()->m_Modules, true, true, true ); GetScreen()->ClrModify(); @@ -326,7 +321,8 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) SetCurItem( NULL ); Clear_Pcb( true ); GetScreen()->m_Curseur = wxPoint( 0, 0 ); - Import_Module( &dc ); + Import_Module( NULL ); + redraw = true; if( GetBoard()->m_Modules ) GetBoard()->m_Modules->m_Flags = 0; GetScreen()->ClrModify(); @@ -400,9 +396,9 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_MODEDIT_EDIT_MODULE_PROPERTIES: if( GetBoard()->m_Modules ) { + SET_DC; SetCurItem( GetBoard()->m_Modules ); - InstallModuleOptionsFrame( (MODULE*) GetScreen()->GetCurItem(), - &dc, pos ); + InstallModuleOptionsFrame( (MODULE*) GetScreen()->GetCurItem(), &dc ); GetScreen()->GetCurItem()->m_Flags = 0; } break; @@ -446,30 +442,40 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_POPUP_PCB_ROTATE_MODULE_COUNTERCLOCKWISE: DrawPanel->MouseToCursorSchema(); Rotate_Module( NULL, (MODULE*) GetScreen()->GetCurItem(), 900, true ); + redraw = true; break; case ID_POPUP_PCB_ROTATE_MODULE_CLOCKWISE: DrawPanel->MouseToCursorSchema(); - Rotate_Module( &dc, (MODULE*) GetScreen()->GetCurItem(), -900, true ); + Rotate_Module( NULL, (MODULE*) GetScreen()->GetCurItem(), -900, true ); + redraw = true; break; case ID_POPUP_PCB_EDIT_MODULE: - InstallModuleOptionsFrame( (MODULE*) GetScreen()->GetCurItem(), - &dc, pos ); + { + SET_DC; + InstallModuleOptionsFrame( (MODULE*) GetScreen()->GetCurItem(), &dc ); GetScreen()->GetCurItem()->m_Flags = 0; DrawPanel->MouseToCursorSchema(); - break; + } + break; case ID_POPUP_PCB_MOVE_PAD_REQUEST: + { + SET_DC; DrawPanel->MouseToCursorSchema(); StartMovePad( (D_PAD*) GetScreen()->GetCurItem(), &dc ); - break; + } + break; case ID_POPUP_PCB_EDIT_PAD: + { + SET_DC; InstallPadOptionsFrame( (D_PAD*) GetScreen()->GetCurItem(), &dc, pos ); DrawPanel->MouseToCursorSchema(); - break; + } + break; case ID_POPUP_PCB_DELETE_PAD: SaveCopyInUndoList( GetBoard()->m_Modules ); @@ -496,40 +502,52 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) break; case ID_POPUP_PCB_EDIT_TEXTMODULE: + { + SET_DC; + InstallTextModOptionsFrame( (TEXTE_MODULE*) GetScreen()->GetCurItem(), &dc, pos ); DrawPanel->MouseToCursorSchema(); - break; + } + break; case ID_POPUP_PCB_MOVE_TEXTMODULE_REQUEST: + { + SET_DC; DrawPanel->MouseToCursorSchema(); - StartMoveTexteModule( (TEXTE_MODULE*) GetScreen()->GetCurItem(), - &dc ); - break; + StartMoveTexteModule( (TEXTE_MODULE*) GetScreen()->GetCurItem(), &dc ); + } + break; case ID_POPUP_PCB_ROTATE_TEXTMODULE: + { + SET_DC; RotateTextModule( (TEXTE_MODULE*) GetScreen()->GetCurItem(), &dc ); DrawPanel->MouseToCursorSchema(); - break; + } + break; case ID_POPUP_PCB_DELETE_TEXTMODULE: SaveCopyInUndoList( GetBoard()->m_Modules ); - DeleteTextModule( (TEXTE_MODULE*) GetScreen()->GetCurItem(), - &dc ); + DeleteTextModule( (TEXTE_MODULE*) GetScreen()->GetCurItem() ); SetCurItem( NULL ); DrawPanel->MouseToCursorSchema(); break; case ID_POPUP_PCB_MOVE_EDGE: + { + SET_DC; Start_Move_EdgeMod( (EDGE_MODULE*) GetScreen()->GetCurItem(), &dc ); DrawPanel->MouseToCursorSchema(); - break; + } + break; case ID_POPUP_PCB_STOP_CURRENT_DRAWING: DrawPanel->MouseToCursorSchema(); if( (GetScreen()->GetCurItem()->m_Flags & IS_NEW) ) { + SET_DC; End_Edge_Module( (EDGE_MODULE*) GetScreen()->GetCurItem(), &dc ); SetCurItem( NULL ); } @@ -544,6 +562,7 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) { edge = (EDGE_MODULE*) GetScreen()->GetCurItem(); } + SET_DC; Enter_Edge_Width( edge, &dc ); DrawPanel->MouseToCursorSchema(); } @@ -551,28 +570,28 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_POPUP_PCB_EDIT_WIDTH_CURRENT_EDGE: DrawPanel->MouseToCursorSchema(); - Edit_Edge_Width( (EDGE_MODULE*) GetScreen()->GetCurItem(), &dc ); + Edit_Edge_Width( (EDGE_MODULE*) GetScreen()->GetCurItem() ); break; case ID_POPUP_PCB_EDIT_WIDTH_ALL_EDGE: DrawPanel->MouseToCursorSchema(); - Edit_Edge_Width( NULL, &dc ); + Edit_Edge_Width( NULL ); break; case ID_POPUP_PCB_EDIT_LAYER_CURRENT_EDGE: DrawPanel->MouseToCursorSchema(); - Edit_Edge_Layer( (EDGE_MODULE*) GetScreen()->GetCurItem(), &dc ); + Edit_Edge_Layer( (EDGE_MODULE*) GetScreen()->GetCurItem() ); break; case ID_POPUP_PCB_EDIT_LAYER_ALL_EDGE: DrawPanel->MouseToCursorSchema(); - Edit_Edge_Layer( NULL, &dc ); + Edit_Edge_Layer( NULL ); break; case ID_POPUP_PCB_DELETE_EDGE: SaveCopyInUndoList( GetBoard()->m_Modules ); DrawPanel->MouseToCursorSchema(); - RemoveStruct( GetScreen()->GetCurItem(), &dc ); + RemoveStruct( GetScreen()->GetCurItem() ); SetCurItem( NULL ); break; @@ -582,7 +601,8 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_MODEDIT_MODULE_SCALEX: case ID_MODEDIT_MODULE_SCALEY: SaveCopyInUndoList( GetBoard()->m_Modules ); - Transform( (MODULE*) GetScreen()->GetCurItem(), &dc, id ); + Transform( (MODULE*) GetScreen()->GetCurItem(), id ); + redraw = true; break; case ID_PCB_DRAWINGS_WIDTHS_SETUP: @@ -597,6 +617,7 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) if( item->Type() != TYPE_PAD ) item = NULL; } + SET_DC; InstallPadOptionsFrame( (D_PAD*) item, &dc, pos ); } break; @@ -607,44 +628,58 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_MODEDIT_UNDO: GetComponentFromUndoList(); - DrawPanel->Refresh( true ); + redraw = true; break; case ID_MODEDIT_REDO: GetComponentFromRedoList(); - DrawPanel->Refresh( true ); + redraw = true; break; case ID_POPUP_PLACE_BLOCK: GetScreen()->BlockLocate.m_Command = BLOCK_MOVE; DrawPanel->m_AutoPAN_Request = FALSE; - HandleBlockPlace( &dc ); + { + SET_DC; + HandleBlockPlace( &dc ); + } break; case ID_POPUP_COPY_BLOCK: GetScreen()->BlockLocate.m_Command = BLOCK_COPY; GetScreen()->BlockLocate.SetMessageBlock( this ); DrawPanel->m_AutoPAN_Request = FALSE; - HandleBlockPlace( &dc ); + { + SET_DC; + HandleBlockPlace( &dc ); + } break; case ID_POPUP_ZOOM_BLOCK: GetScreen()->BlockLocate.m_Command = BLOCK_ZOOM; GetScreen()->BlockLocate.SetMessageBlock( this ); - GetScreen()->BlockLocate.SetMessageBlock( this ); - HandleBlockEnd( &dc ); + { + SET_DC; + HandleBlockEnd( &dc ); + } break; case ID_POPUP_DELETE_BLOCK: GetScreen()->BlockLocate.m_Command = BLOCK_DELETE; GetScreen()->BlockLocate.SetMessageBlock( this ); - HandleBlockEnd( &dc ); + { + SET_DC; + HandleBlockEnd( &dc ); + } break; case ID_POPUP_ROTATE_BLOCK: GetScreen()->BlockLocate.m_Command = BLOCK_ROTATE; GetScreen()->BlockLocate.SetMessageBlock( this ); - HandleBlockEnd( &dc ); + { + SET_DC; + HandleBlockEnd( &dc ); + } break; case ID_POPUP_MIRROR_X_BLOCK: @@ -652,7 +687,10 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_POPUP_INVERT_BLOCK: GetScreen()->BlockLocate.m_Command = BLOCK_INVERT; GetScreen()->BlockLocate.SetMessageBlock( this ); - HandleBlockEnd( &dc ); + { + SET_DC; + HandleBlockEnd( &dc ); + } break; default: @@ -662,14 +700,13 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) } SetToolbars(); - DrawPanel->CursorOn( &dc ); - if ( redraw ) + if( redraw ) DrawPanel->Refresh(); } /******************************************************************************/ -void WinEDA_ModuleEditFrame::Transform( MODULE* module, wxDC* DC, int transform ) +void WinEDA_ModuleEditFrame::Transform( MODULE* module, int transform ) /******************************************************************************/ /* Execute les transformations de la repr�sentation des modules. @@ -792,5 +829,4 @@ void WinEDA_ModuleEditFrame::Transform( MODULE* module, wxDC* DC, int transform } module->Set_Rectangle_Encadrement(); - DrawPanel->ReDraw( DC ); } diff --git a/pcbnew/modedit_onclick.cpp b/pcbnew/modedit_onclick.cpp index fd42cd7d82..f27acbba71 100644 --- a/pcbnew/modedit_onclick.cpp +++ b/pcbnew/modedit_onclick.cpp @@ -52,7 +52,7 @@ void WinEDA_ModuleEditFrame::OnLeftClick( wxDC* DC, const wxPoint& MousePos ) wxString msg; msg.Printf( wxT( - "WinEDA_ModEditFrame::ProcessCommand err: m_Flags != 0\nStruct @%p, type %d m_Flag %X" ), + "WinEDA_ModEditFrame::OnLeftClick err: m_Flags != 0\nStruct @%p, type %d m_Flag %X" ), DrawStruct, DrawStruct->Type(), DrawStruct->m_Flags ); DisplayError( this, msg ); DrawStruct->m_Flags = 0; @@ -122,7 +122,7 @@ void WinEDA_ModuleEditFrame::OnLeftClick( wxDC* DC, const wxPoint& MousePos ) if( DrawStruct && (DrawStruct->m_Flags == 0) ) { SaveCopyInUndoList( GetBoard()->m_Modules ); - RemoveStruct( DrawStruct, DC ); + RemoveStruct( DrawStruct ); SetCurItem( DrawStruct = NULL ); } } @@ -130,7 +130,7 @@ void WinEDA_ModuleEditFrame::OnLeftClick( wxDC* DC, const wxPoint& MousePos ) case ID_MODEDIT_PLACE_ANCHOR: SaveCopyInUndoList( GetBoard()->m_Modules ); - Place_Ancre( GetBoard()->m_Modules, DC ); + Place_Ancre( GetBoard()->m_Modules ); GetBoard()->m_Modules->m_Flags = 0; GetScreen()->m_Curseur = wxPoint( 0, 0 ); Recadre_Trace( TRUE ); @@ -401,8 +401,7 @@ void WinEDA_ModuleEditFrame::OnLeftDClick( wxDC* DC, const wxPoint& MousePos ) break; case TYPE_MODULE: - InstallModuleOptionsFrame( (MODULE*) DrawStruct, - &dc, pos ); + InstallModuleOptionsFrame( (MODULE*) DrawStruct, &dc ); DrawPanel->MouseToCursorSchema(); break; diff --git a/pcbnew/onleftclick.cpp b/pcbnew/onleftclick.cpp index a569e6f445..2ba530a8b9 100644 --- a/pcbnew/onleftclick.cpp +++ b/pcbnew/onleftclick.cpp @@ -214,10 +214,7 @@ void WinEDA_PcbFrame::OnLeftClick( wxDC* DC, const wxPoint& MousePos ) if( DrawStruct ) DrawPanel->m_AutoPAN_Request = TRUE; } - else if( DrawStruct && - -// (DrawStruct->Type() == TYPE_TRACK) && - (DrawStruct->m_Flags & IS_NEW) ) + else if( DrawStruct && (DrawStruct->m_Flags & IS_NEW) ) { TRACK* track = Begin_Route( (TRACK*) DrawStruct, DC ); if( track ) // c'est a dire si OK @@ -391,7 +388,7 @@ void WinEDA_PcbFrame::OnLeftDClick( wxDC* DC, const wxPoint& MousePos ) break; case TYPE_MODULE: - InstallModuleOptionsFrame( (MODULE*) DrawStruct, &dc, pos ); + InstallModuleOptionsFrame( (MODULE*) DrawStruct, &dc ); DrawPanel->MouseToCursorSchema(); break;