12 changed files with 379 additions and 0 deletions
-
31bitmaps/backanno.xpm
-
1eeschema/CMakeLists.txt
-
99eeschema/backanno.cpp
-
117eeschema/dialog_backanno.cpp
-
105eeschema/dialog_backanno.h
-
3eeschema/makefile.include
-
8eeschema/menubar.cpp
-
7eeschema/schframe.cpp
-
2eeschema/tool_sch.cpp
-
2include/bitmaps.h
-
1include/id.h
-
3include/wxEeschemaStruct.h
@ -0,0 +1,31 @@ |
|||
/* XPM */ |
|||
#ifndef XPMMAIN |
|||
extern const char *backanno_xpm[]; |
|||
|
|||
#else |
|||
const char *backanno_xpm[] = { |
|||
/* width height num_colors chars_per_pixel */ |
|||
" 16 16 3 1", |
|||
/* colors */ |
|||
" c None", |
|||
". c yellow", |
|||
"# c black", |
|||
/* pixels */ |
|||
" ", |
|||
" .... ", |
|||
" ...... ", |
|||
" ...##... ", |
|||
" ....##.... ", |
|||
" .####....... ", |
|||
" ..#.###..##... ", |
|||
" .###########.. ", |
|||
" ...##....##... ", |
|||
" ...###.....#.. ", |
|||
" ..#.#..##... ", |
|||
" .#.#.####. ", |
|||
" ........ ", |
|||
" ...... ", |
|||
" .... ", |
|||
" " |
|||
}; |
|||
#endif |
|||
@ -0,0 +1,99 @@ |
|||
/****************************************************************
|
|||
* EESchema: backanno.cpp |
|||
* (functions for backannotating Footprint info |
|||
****************************************************************/ |
|||
|
|||
#include "fctsys.h"
|
|||
#include "gr_basic.h"
|
|||
|
|||
#include "common.h"
|
|||
#include "program.h"
|
|||
#include "libcmp.h"
|
|||
#include "general.h"
|
|||
|
|||
/* Variables Locales */ |
|||
|
|||
#include "dialog_backanno.cpp"
|
|||
|
|||
#include "protos.h"
|
|||
|
|||
/**************************************************************/ |
|||
bool WinEDA_SchematicFrame::ProcessStuffFile(FILE* StuffFile) |
|||
/**************************************************************/ |
|||
|
|||
/* get footprint info from each line in the Stuff File by Ref Desg
|
|||
*/ |
|||
{ |
|||
int LineNum = 0; |
|||
char *cp, Ref[256], FootPrint[256], Line[1024]; |
|||
SCH_ITEM* DrawList = NULL; |
|||
SCH_COMPONENT* Cmp ; |
|||
PartTextStruct* TextField ; |
|||
|
|||
while( GetLine( StuffFile, Line, &LineNum, sizeof(Line) ) ) { |
|||
if( sscanf( Line, "comp = \"%s module = \"%s", Ref, FootPrint) == 2 ) { |
|||
for( cp=Ref; *cp ; cp++ ) |
|||
if( *cp == '"' ) |
|||
*cp = 0; |
|||
for( cp=FootPrint; *cp ; cp++ ) |
|||
if( *cp == '"' ) |
|||
*cp = 0; |
|||
// printf("'%s' '%s'\n", Ref, FootPrint);
|
|||
DrawList = WinEDA_SchematicFrame::FindComponentAndItem( |
|||
Ref, TRUE, 2, wxEmptyString, false); |
|||
|
|||
if( DrawList == NULL ) |
|||
continue; |
|||
|
|||
if( DrawList->Type() == TYPE_SCH_COMPONENT ) { |
|||
Cmp = (SCH_COMPONENT*) DrawList; |
|||
TextField = &Cmp->m_Field[FOOTPRINT]; |
|||
TextField->m_Text = FootPrint; |
|||
} |
|||
} |
|||
} |
|||
|
|||
return true; |
|||
} |
|||
|
|||
/**************************************************************/ |
|||
bool WinEDA_SchematicFrame::ReadInputStuffFile() |
|||
/**************************************************************/ |
|||
|
|||
/* Backann footprint info to schematic.
|
|||
*/ |
|||
{ |
|||
wxString Line, filename; |
|||
FILE* StuffFile; |
|||
wxString msg; |
|||
|
|||
filename = EDA_FileSelector(_("Load Stuff File"), |
|||
wxEmptyString, /* Chemin par defaut */ |
|||
wxEmptyString, /* nom fichier par defaut */ |
|||
wxT( ".stf" ), /* extension par defaut */ |
|||
wxT( "*.stf" ), /* Masque d'affichage */ |
|||
this, |
|||
wxFD_OPEN, |
|||
FALSE |
|||
); |
|||
if ( filename.IsEmpty()) |
|||
return FALSE; |
|||
|
|||
Line = g_Main_Title + wxT(" ") + GetBuildVersion(); |
|||
Line += wxT(" ") + filename; |
|||
SetTitle(Line); |
|||
|
|||
if( filename.IsEmpty() ) |
|||
return FALSE; |
|||
|
|||
StuffFile = wxFopen( filename, wxT( "rt" ) ); |
|||
if( StuffFile == NULL ) { |
|||
msg.Printf( _( "Failed to open Stuff File <%s>" ), filename.GetData() ); |
|||
DisplayError( this, msg, 20 ); |
|||
return FALSE; |
|||
} |
|||
ProcessStuffFile( StuffFile ); |
|||
|
|||
return TRUE; |
|||
} |
|||
|
|||
@ -0,0 +1,117 @@ |
|||
/////////////////////////////////////////////////////////////////////////////
|
|||
// Name: dialog_Backanno.cpp
|
|||
// Purpose:
|
|||
// Author: Frank Bennett
|
|||
// Modified by:
|
|||
// Created: Thu May 1 11:23:06 MDT 2008
|
|||
// RCS-ID:
|
|||
// Copyright: License GNU
|
|||
// Licence:
|
|||
/////////////////////////////////////////////////////////////////////////////
|
|||
|
|||
|
|||
////@begin includes
|
|||
////@end includes
|
|||
|
|||
#include "dialog_backanno.h"
|
|||
|
|||
////@begin XPM images
|
|||
////@end XPM images
|
|||
|
|||
/*!
|
|||
* WinEDA_BackannoFrame type definition |
|||
*/ |
|||
|
|||
IMPLEMENT_DYNAMIC_CLASS( WinEDA_BackannoFrame, wxDialog ) |
|||
|
|||
/*!
|
|||
* WinEDA_BackannoFrame event table definition |
|||
*/ |
|||
|
|||
BEGIN_EVENT_TABLE( WinEDA_BackannoFrame, wxDialog ) |
|||
|
|||
////@begin WinEDA_BackannoFrame event table entries
|
|||
|
|||
////@end WinEDA_BackannoFrame event table entries
|
|||
|
|||
END_EVENT_TABLE() |
|||
|
|||
/*!
|
|||
* WinEDA_BackannoFrame constructors |
|||
*/ |
|||
|
|||
WinEDA_BackannoFrame::WinEDA_BackannoFrame( ) |
|||
{ |
|||
} |
|||
|
|||
WinEDA_BackannoFrame::WinEDA_BackannoFrame( WinEDA_SchematicFrame* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) |
|||
{ |
|||
m_Parent = parent; |
|||
Create(parent, id, caption, pos, size, style); |
|||
} |
|||
|
|||
/*!
|
|||
* WinEDA_BackannoFrame creator |
|||
*/ |
|||
|
|||
bool WinEDA_BackannoFrame::Create( wxWindow* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) |
|||
{ |
|||
////@begin WinEDA_BackannoFrame member initialisation
|
|||
m_NewTextCtrl = NULL; |
|||
////@end WinEDA_BackannoFrame member initialisation
|
|||
|
|||
////@begin WinEDA_BackannoFrame creation
|
|||
SetExtraStyle(GetExtraStyle()|wxWS_EX_BLOCK_EVENTS); |
|||
wxDialog::Create( parent, id, caption, pos, size, style ); |
|||
|
|||
GetSizer()->Fit(this); |
|||
GetSizer()->SetSizeHints(this); |
|||
Centre(); |
|||
////@end WinEDA_BackannoFrame creation
|
|||
|
|||
m_NewTextCtrl->SetFocus(); |
|||
|
|||
/* does not work here, might work if moved elsewhere,
|
|||
// see void DrcDialog::OnInitDialog( wxInitDialogEvent& event )
|
|||
// deselect the existing text, seems SetFocus() wants to emulate
|
|||
// Microsoft and select all text, which is not desireable here.
|
|||
m_NewTextCtrl->SetSelection(0,0); |
|||
*/ |
|||
|
|||
return true; |
|||
} |
|||
|
|||
/*!
|
|||
* Should we show tooltips? |
|||
*/ |
|||
|
|||
bool WinEDA_BackannoFrame::ShowToolTips() |
|||
{ |
|||
return true; |
|||
} |
|||
|
|||
/*!
|
|||
* Get bitmap resources |
|||
*/ |
|||
|
|||
wxBitmap WinEDA_BackannoFrame::GetBitmapResource( const wxString& name ) |
|||
{ |
|||
// Bitmap retrieval
|
|||
////@begin WinEDA_BackannoFrame bitmap retrieval
|
|||
wxUnusedVar(name); |
|||
return wxNullBitmap; |
|||
////@end WinEDA_BackannoFrame bitmap retrieval
|
|||
} |
|||
|
|||
/*!
|
|||
* Get icon resources |
|||
*/ |
|||
|
|||
wxIcon WinEDA_BackannoFrame::GetIconResource( const wxString& name ) |
|||
{ |
|||
// Icon retrieval
|
|||
////@begin WinEDA_BackannoFrame icon retrieval
|
|||
wxUnusedVar(name); |
|||
return wxNullIcon; |
|||
////@end WinEDA_BackannoFrame icon retrieval
|
|||
} |
|||
@ -0,0 +1,105 @@ |
|||
///////////////////////////////////////////////////////////////////////////// |
|||
// Name: dialog_backanno.h |
|||
// Purpose: |
|||
// Author: Frank Bennett |
|||
// Modified by: |
|||
// Created: Wed Apr 30 16:40:21 MDT 2008 |
|||
// RCS-ID: |
|||
// Copyright: License GNU |
|||
// Licence: |
|||
///////////////////////////////////////////////////////////////////////////// |
|||
|
|||
#ifndef _DIALOG_BACKANNO_H_ |
|||
#define _DIALOG_BACKANNO_H_ |
|||
|
|||
/*! |
|||
* Includes |
|||
*/ |
|||
|
|||
////@begin includes |
|||
#include "wx/valtext.h" |
|||
////@end includes |
|||
|
|||
/*! |
|||
* Forward declarations |
|||
*/ |
|||
|
|||
////@begin forward declarations |
|||
////@end forward declarations |
|||
|
|||
/*! |
|||
* Control identifiers |
|||
*/ |
|||
|
|||
////@begin control identifiers |
|||
#define ID_DIALOG 10000 |
|||
#define SYMBOL_WINEDA_BACKANNOFRAME_STYLE wxCAPTION|wxSYSTEM_MENU|wxCLOSE_BOX|MAYBE_RESIZE_BORDER |
|||
#define SYMBOL_WINEDA_BACKANNOFRAME_TITLE _("EESchema Back Annotate") |
|||
#define SYMBOL_WINEDA_BACKANNOFRAME_IDNAME ID_DIALOG |
|||
#define SYMBOL_WINEDA_BACKANNOFRAME_SIZE wxSize(400, 300) |
|||
#define SYMBOL_WINEDA_BACKANNOFRAME_POSITION wxDefaultPosition |
|||
#define ID_TEXTCTRL1 10008 |
|||
#define BACKANNO_SHEET 10001 |
|||
#define FIND_HIERARCHY 10002 |
|||
#define FIND_NEXT 10005 |
|||
#define FIND_MARKERS 10003 |
|||
#define FIND_NEXT_MARKER 10006 |
|||
#define LOCATE_IN_LIBRARIES 10004 |
|||
////@end control identifiers |
|||
|
|||
/*! |
|||
* Compatibility |
|||
*/ |
|||
|
|||
#ifndef wxCLOSE_BOX |
|||
#define wxCLOSE_BOX 0x1000 |
|||
#endif |
|||
|
|||
/*! |
|||
* WinEDA_BackannoFrame class declaration |
|||
*/ |
|||
|
|||
class WinEDA_BackannoFrame: public wxDialog |
|||
{ |
|||
DECLARE_DYNAMIC_CLASS( WinEDA_BackannoFrame ) |
|||
DECLARE_EVENT_TABLE() |
|||
|
|||
public: |
|||
/// Constructors |
|||
WinEDA_BackannoFrame( ); |
|||
WinEDA_BackannoFrame( WinEDA_SchematicFrame* parent, wxWindowID id = SYMBOL_WINEDA_BACKANNOFRAME_IDNAME, const wxString& caption = SYMBOL_WINEDA_BACKANNOFRAME_TITLE, const wxPoint& pos = SYMBOL_WINEDA_BACKANNOFRAME_POSITION, const wxSize& size = SYMBOL_WINEDA_BACKANNOFRAME_SIZE, long style = SYMBOL_WINEDA_BACKANNOFRAME_STYLE ); |
|||
|
|||
/// Creation |
|||
bool Create( wxWindow* parent, wxWindowID id = SYMBOL_WINEDA_BACKANNOFRAME_IDNAME, const wxString& caption = SYMBOL_WINEDA_BACKANNOFRAME_TITLE, const wxPoint& pos = SYMBOL_WINEDA_BACKANNOFRAME_POSITION, const wxSize& size = SYMBOL_WINEDA_BACKANNOFRAME_SIZE, long style = SYMBOL_WINEDA_BACKANNOFRAME_STYLE ); |
|||
|
|||
////@begin WinEDA_BackannoFrame event handler declarations |
|||
|
|||
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for BACKANNO_SHEET |
|||
void OnBackannoSheetClick( wxCommandEvent& event ); |
|||
|
|||
////@end WinEDA_BackannoFrame event handler declarations |
|||
|
|||
////@begin WinEDA_BackannoFrame member function declarations |
|||
|
|||
/// Retrieves bitmap resources |
|||
wxBitmap GetBitmapResource( const wxString& name ); |
|||
|
|||
/// Retrieves icon resources |
|||
wxIcon GetIconResource( const wxString& name ); |
|||
////@end WinEDA_BackannoFrame member function declarations |
|||
|
|||
/// Should we show tooltips? |
|||
static bool ShowToolTips(); |
|||
|
|||
void BackannoSchematicItem(wxCommandEvent& event); |
|||
bool ReadInputStuffFile(const wxString & FullFileName); |
|||
void LoadStuffFile( wxCommandEvent& event ); |
|||
|
|||
////@begin WinEDA_BackannoFrame member variables |
|||
wxTextCtrl* m_NewTextCtrl; |
|||
////@end WinEDA_BackannoFrame member variables |
|||
WinEDA_SchematicFrame * m_Parent; |
|||
}; |
|||
|
|||
#endif |
|||
// _DIALOG_FIND_H_ |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue