本文整理汇总了C++中LIB_ALIAS::GetDocFileName方法的典型用法代码示例。如果您正苦于以下问题:C++ LIB_ALIAS::GetDocFileName方法的具体用法?C++ LIB_ALIAS::GetDocFileName怎么用?C++ LIB_ALIAS::GetDocFileName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LIB_ALIAS
的用法示例。
在下文中一共展示了LIB_ALIAS::GetDocFileName方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Process_Special_Functions
void LIB_VIEW_FRAME::Process_Special_Functions( wxCommandEvent& event )
{
wxString msg;
LIB_ALIAS* LibEntry;
int ii, id = event.GetId();
switch( id )
{
case ID_LIBVIEW_SELECT_LIB:
SelectCurrentLibrary();
break;
case ID_LIBVIEW_SELECT_PART:
SelectAndViewLibraryPart( NEW_PART );
break;
case ID_LIBVIEW_NEXT:
SelectAndViewLibraryPart( NEXT_PART );
break;
case ID_LIBVIEW_PREVIOUS:
SelectAndViewLibraryPart( PREVIOUS_PART );
break;
case ID_LIBVIEW_VIEWDOC:
LibEntry = CMP_LIBRARY::FindLibraryEntry( m_entryName, m_libraryName );
if( LibEntry && ( !LibEntry->GetDocFileName().IsEmpty() ) )
GetAssociatedDocument( this, LibEntry->GetDocFileName(),
&wxGetApp().GetLibraryPathList() );
break;
case ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT:
m_mainToolBar->ToggleTool( ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT, true );
m_mainToolBar->ToggleTool( ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT, false );
m_convert = 1;
m_canvas->Refresh();
break;
case ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT:
m_mainToolBar->ToggleTool( ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT, false );
m_mainToolBar->ToggleTool( ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT, true );
m_convert = 2;
m_canvas->Refresh();
break;
case ID_LIBVIEW_SELECT_PART_NUMBER:
ii = SelpartBox->GetCurrentSelection();
if( ii < 0 )
return;
m_unit = ii + 1;
m_canvas->Refresh();
break;
default:
msg << wxT( "LIB_VIEW_FRAME::Process_Special_Functions error: id = " ) << id;
DisplayError( this, msg );
break;
}
}
示例2: onViewSymbolDocument
void LIB_VIEW_FRAME::onViewSymbolDocument( wxCommandEvent& aEvent )
{
LIB_ALIAS* entry = Prj().SchLibs()->FindLibraryAlias( m_entryName, m_libraryName );
if( entry && !entry->GetDocFileName().IsEmpty() )
{
SEARCH_STACK* lib_search = Prj().SchSearchS();
GetAssociatedDocument( this, entry->GetDocFileName(), lib_search );
}
}
示例3: AddMenusForComponent
void AddMenusForComponent( wxMenu* PopMenu, SCH_COMPONENT* Component )
{
if( Component->Type() != SCH_COMPONENT_T )
{
wxASSERT( 0 );
return;
}
wxString msg;
LIB_ALIAS* libEntry;
libEntry = CMP_LIBRARY::FindLibraryEntry( Component->GetLibName() );
if( !Component->GetFlags() )
{
msg.Printf( _( "Move Component %s" ),
GetChars( Component->GetField( REFERENCE )->GetText() ) );
msg = AddHotkeyName( msg, s_Schematic_Hokeys_Descr, HK_MOVE_COMPONENT_OR_ITEM );
AddMenuItem( PopMenu, ID_SCH_MOVE_ITEM, msg, KiBitmap( move_xpm ) );
msg = AddHotkeyName( _( "Drag Component" ), s_Schematic_Hokeys_Descr, HK_DRAG );
AddMenuItem( PopMenu, ID_SCH_DRAG_ITEM, msg, KiBitmap( move_xpm ) );
}
wxMenu* orientmenu = new wxMenu;
msg = AddHotkeyName( _( "Rotate +" ), s_Schematic_Hokeys_Descr, HK_ROTATE );
AddMenuItem( orientmenu, ID_SCH_ROTATE_COUNTERCLOCKWISE, msg,
KiBitmap( rotate_ccw_xpm ) );
AddMenuItem( orientmenu, ID_SCH_ROTATE_CLOCKWISE, _( "Rotate -" ),
KiBitmap( rotate_cw_xpm ) );
msg = AddHotkeyName( _( "Mirror --" ), s_Schematic_Hokeys_Descr, HK_MIRROR_X_COMPONENT );
AddMenuItem( orientmenu, ID_SCH_MIRROR_X, msg, KiBitmap( mirror_v_xpm ) );
msg = AddHotkeyName( _( "Mirror ||" ), s_Schematic_Hokeys_Descr, HK_MIRROR_Y_COMPONENT );
AddMenuItem( orientmenu, ID_SCH_MIRROR_Y, msg, KiBitmap( mirror_h_xpm ) );
msg = AddHotkeyName( _( "Normal" ), s_Schematic_Hokeys_Descr, HK_ORIENT_NORMAL_COMPONENT );
AddMenuItem( orientmenu, ID_SCH_ORIENT_NORMAL, msg, KiBitmap( normal_xpm ) );
AddMenuItem( PopMenu, orientmenu, ID_POPUP_SCH_GENERIC_ORIENT_CMP,
_( "Orient Component" ), KiBitmap( orient_xpm ) );
AddMenusForEditComponent( PopMenu, Component );
if( !Component->GetFlags() )
{
msg = AddHotkeyName( _( "Copy Component" ), s_Schematic_Hokeys_Descr,
HK_COPY_COMPONENT_OR_LABEL );
AddMenuItem( PopMenu, ID_POPUP_SCH_COPY_ITEM, msg, KiBitmap( copy_button_xpm ) );
msg = AddHotkeyName( _( "Delete Component" ), s_Schematic_Hokeys_Descr, HK_DELETE );
AddMenuItem( PopMenu, ID_POPUP_SCH_DELETE_CMP, msg, KiBitmap( delete_xpm ) );
}
if( libEntry && !libEntry->GetDocFileName().IsEmpty() )
AddMenuItem( PopMenu, ID_POPUP_SCH_DISPLAYDOC_CMP, _( "Doc" ), KiBitmap( datasheet_xpm ) );
}
示例4: OnUpdateViewDoc
void LIB_EDIT_FRAME::OnUpdateViewDoc( wxUpdateUIEvent& event )
{
bool enable = false;
if( m_component != NULL && m_library != NULL )
{
LIB_ALIAS* alias = m_component->GetAlias( m_aliasName );
wxCHECK_RET( alias != NULL, wxT( "Alias <" ) + m_aliasName + wxT( "> not found." ) );
enable = !alias->GetDocFileName().IsEmpty();
}
event.Enable( enable );
}
示例5: DisplayCmpDoc
void LIB_EDIT_FRAME::DisplayCmpDoc()
{
LIB_ALIAS* alias;
PART_LIB* lib = GetCurLib();
LIB_PART* part = GetCurPart();
ClearMsgPanel();
if( !lib || !part )
return;
wxString msg = part->GetName();
AppendMsgPanel( _( "Name" ), msg, BLUE, 8 );
if( m_aliasName == part->GetName() )
msg = _( "None" );
else
msg = m_aliasName;
alias = part->GetAlias( m_aliasName );
wxCHECK_RET( alias != NULL, "Alias not found in component." );
AppendMsgPanel( _( "Alias" ), msg, RED, 8 );
static wxChar UnitLetter[] = wxT( "?ABCDEFGHIJKLMNOPQRSTUVWXYZ" );
msg = UnitLetter[m_unit];
AppendMsgPanel( _( "Unit" ), msg, BROWN, 8 );
if( m_convert > 1 )
msg = _( "Convert" );
else
msg = _( "Normal" );
AppendMsgPanel( _( "Body" ), msg, GREEN, 8 );
if( part->IsPower() )
msg = _( "Power Symbol" );
else
msg = _( "Part" );
AppendMsgPanel( _( "Type" ), msg, MAGENTA, 8 );
AppendMsgPanel( _( "Description" ), alias->GetDescription(), CYAN, 8 );
AppendMsgPanel( _( "Key words" ), alias->GetKeyWords(), DARKDARKGRAY );
AppendMsgPanel( _( "Datasheet" ), alias->GetDocFileName(), DARKDARKGRAY );
}
示例6: OnUpdateViewDoc
void LIB_EDIT_FRAME::OnUpdateViewDoc( wxUpdateUIEvent& event )
{
bool enable = false;
PART_LIB* lib = GetCurLib();
LIB_PART* part = GetCurPart();
if( part && lib )
{
LIB_ALIAS* alias = part->GetAlias( m_aliasName );
wxCHECK_RET( alias != NULL, wxT( "Alias <" ) + m_aliasName + wxT( "> not found." ) );
enable = !alias->GetDocFileName().IsEmpty();
}
event.Enable( enable );
}
示例7: OnViewEntryDoc
void LIB_EDIT_FRAME::OnViewEntryDoc( wxCommandEvent& event )
{
if( m_component == NULL )
return;
wxString fileName;
LIB_ALIAS* alias = m_component->GetAlias( m_aliasName );
wxCHECK_RET( alias != NULL, wxT( "Alias not found." ) );
fileName = alias->GetDocFileName();
if( !fileName.IsEmpty() )
{
SEARCH_STACK* lib_search = &Prj().SchSearchS();
GetAssociatedDocument( this, fileName, lib_search );
}
}
示例8: InitPanelDoc
void DIALOG_EDIT_COMPONENT_IN_LIBRARY::InitPanelDoc()
{
LIB_ALIAS* alias;
LIB_PART* component = m_Parent->GetCurPart();
if( component == NULL )
return;
wxString aliasname = m_Parent->GetAliasName();
if( aliasname.IsEmpty() )
return;
alias = component->GetAlias( aliasname );
if( alias != NULL )
{
m_DocCtrl->SetValue( alias->GetDescription() );
m_KeywordsCtrl->SetValue( alias->GetKeyWords() );
m_DocfileCtrl->SetValue( alias->GetDocFileName() );
}
}
示例9: Load_Component
SCH_COMPONENT* SCH_EDIT_FRAME::Load_Component( wxDC* aDC,
const SCHLIB_FILTER* aFilter,
SCH_BASE_FRAME::HISTORY_LIST& aHistoryList,
bool aUseLibBrowser )
{
wxString msg;
SetRepeatItem( NULL );
m_canvas->SetIgnoreMouseEvents( true );
auto sel = SelectComponentFromLibrary( aFilter, aHistoryList, aUseLibBrowser, 1, 1,
m_footprintPreview );
if( !sel.LibId.IsValid() )
{
m_canvas->SetIgnoreMouseEvents( false );
m_canvas->MoveCursorToCrossHair();
return NULL;
}
m_canvas->SetIgnoreMouseEvents( false );
m_canvas->MoveCursorToCrossHair();
wxString libsource; // the library name to use. If empty, load from any lib
if( aFilter )
libsource = aFilter->GetLibSource();
LIB_ID libId = sel.LibId;
LIB_PART* part = GetLibPart( libId, true );
if( !part )
return NULL;
SCH_COMPONENT* component = new SCH_COMPONENT( *part, m_CurrentSheet, sel.Unit, sel.Convert,
GetCrossHairPosition(), true );
// Set the m_ChipName value, from component name in lib, for aliases
// Note if part is found, and if name is an alias of a component,
// alias exists because its root component was found
component->SetLibId( libId );
// Be sure the link to the corresponding LIB_PART is OK:
component->Resolve( *Prj().SchSymbolLibTable() );
// Set any fields that have been modified
for( auto const& i : sel.Fields )
{
auto field = component->GetField( i.first );
if( field )
field->SetText( i.second );
}
// Set the component value that can differ from component name in lib, for aliases
component->GetField( VALUE )->SetText( sel.LibId.GetLibItemName() );
// If there is no field defined in the component, copy one over from the library
// ( from the .dcm file )
// This way the Datasheet field will not be empty and can be changed from the schematic
if( component->GetField( DATASHEET )->GetText().IsEmpty() )
{
LIB_ALIAS* entry = GetLibAlias( component->GetLibId(), true, true );
if( entry && !!entry->GetDocFileName() )
component->GetField( DATASHEET )->SetText( entry->GetDocFileName() );
}
MSG_PANEL_ITEMS items;
component->SetCurrentSheetPath( &GetCurrentSheet() );
component->GetMsgPanelInfo( items );
SetMsgPanel( items );
component->Draw( m_canvas, aDC, wxPoint( 0, 0 ), g_XorMode );
component->SetFlags( IS_NEW );
if( m_autoplaceFields )
component->AutoplaceFields( /* aScreen */ NULL, /* aManual */ false );
PrepareMoveItem( (SCH_ITEM*) component, aDC );
return component;
}
示例10: ReCreateHToolbar
//.........这里部分代码省略.........
m_mainToolBar->AddTool( ID_ZOOM_REDRAW, wxEmptyString,
KiBitmap( zoom_redraw_xpm ), msg );
msg = AddHotkeyName( _( "Zoom auto" ), s_Viewlib_Hokeys_Descr,
HK_ZOOM_AUTO, IS_COMMENT );
m_mainToolBar->AddTool( ID_ZOOM_PAGE, wxEmptyString,
KiBitmap( zoom_fit_in_page_xpm ), msg );
m_mainToolBar->AddSeparator();
m_mainToolBar->AddTool( ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT, wxEmptyString,
KiBitmap( morgan1_xpm ),
_( "Show as \"De Morgan\" normal part" ),
wxITEM_CHECK );
m_mainToolBar->AddTool( ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT, wxEmptyString,
KiBitmap( morgan2_xpm ),
_( "Show as \"De Morgan\" convert part" ),
wxITEM_CHECK );
m_mainToolBar->AddSeparator();
m_selpartBox = new wxComboBox( m_mainToolBar, ID_LIBVIEW_SELECT_PART_NUMBER,
wxEmptyString, wxDefaultPosition,
wxSize( 150, -1 ), 0, NULL, wxCB_READONLY );
m_mainToolBar->AddControl( m_selpartBox );
m_mainToolBar->AddSeparator();
m_mainToolBar->AddTool( ID_LIBVIEW_VIEWDOC, wxEmptyString,
KiBitmap( datasheet_xpm ),
_( "View component documents" ) );
m_mainToolBar->EnableTool( ID_LIBVIEW_VIEWDOC, false );
if( m_semaphore )
{
// The library browser is called from a "load component" command
m_mainToolBar->AddSeparator();
m_mainToolBar->AddTool( ID_LIBVIEW_CMP_EXPORT_TO_SCHEMATIC,
wxEmptyString, KiBitmap( export_xpm ),
_( "Insert component in schematic" ) );
}
// after adding the buttons to the toolbar, must call Realize() to
// reflect the changes
m_mainToolBar->Realize();
}
if( (m_libraryName != wxEmptyString) && (m_entryName != wxEmptyString) )
{
lib = CMP_LIBRARY::FindLibrary( m_libraryName );
if( lib != NULL )
{
component = lib->FindComponent( m_entryName );
if( component && component->HasConversion() )
asdeMorgan = true;
entry = lib->FindEntry( m_entryName );
}
}
// Must be AFTER Realize():
m_mainToolBar->EnableTool( ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT, asdeMorgan );
m_mainToolBar->EnableTool( ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT, asdeMorgan );
if( asdeMorgan )
{
bool normal = m_convert <= 1;
m_mainToolBar->ToggleTool( ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT,normal );
m_mainToolBar->ToggleTool( ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT, !normal );
}
else
{
m_mainToolBar->ToggleTool( ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT, true );
m_mainToolBar->ToggleTool( ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT, false );
}
int parts_count = 1;
if( component )
parts_count = std::max( component->GetPartCount(), 1 );
m_selpartBox->Clear();
for( ii = 0; ii < parts_count; ii++ )
{
wxString msg;
msg.Printf( _( "Unit %c" ), 'A' + ii );
m_selpartBox->Append( msg );
}
m_selpartBox->SetSelection( (m_unit > 0 ) ? m_unit - 1 : 0 );
m_selpartBox->Enable( parts_count > 1 );
m_mainToolBar->EnableTool( ID_LIBVIEW_VIEWDOC,
entry && ( entry->GetDocFileName() != wxEmptyString ) );
m_mainToolBar->Refresh();
}
示例11: Process_Special_Functions
//.........这里部分代码省略.........
return;
/* Save sheet in undo list before cleaning up unreferenced hierarchical labels. */
SaveCopyInUndoList( sheet, UR_CHANGED );
sheet->CleanupSheet();
OnModify();
m_canvas->RefreshDrawingRect( sheet->GetBoundingBox() );
}
break;
case ID_POPUP_SCH_INIT_CMP:
m_canvas->MoveCursorToCrossHair();
break;
case ID_POPUP_SCH_EDIT_CONVERT_CMP:
// Ensure the struct is a component (could be a struct of a component, like Field, text..)
if( item && item->Type() == SCH_COMPONENT_T )
{
m_canvas->MoveCursorToCrossHair();
ConvertPart( (SCH_COMPONENT*) item, &dc );
}
break;
case ID_POPUP_SCH_DISPLAYDOC_CMP:
// Ensure the struct is a component (could be a piece of a component, like Field, text..)
if( item && item->Type() == SCH_COMPONENT_T )
{
LIB_ALIAS* LibEntry;
LibEntry = CMP_LIBRARY::FindLibraryEntry( ( (SCH_COMPONENT*) item )->GetLibName() );
if( LibEntry && LibEntry->GetDocFileName() != wxEmptyString )
{
GetAssociatedDocument( this, LibEntry->GetDocFileName(),
&wxGetApp().GetLibraryPathList() );
}
}
break;
case ID_POPUP_SCH_ENTER_SHEET:
if( item && (item->Type() == SCH_SHEET_T) )
{
m_CurrentSheet->Push( (SCH_SHEET*) item );
DisplayCurrentSheet();
}
break;
case ID_POPUP_SCH_LEAVE_SHEET:
m_CurrentSheet->Pop();
DisplayCurrentSheet();
break;
case wxID_COPY: // really this is a Save block for paste
screen->m_BlockLocate.SetCommand( BLOCK_SAVE );
screen->m_BlockLocate.SetMessageBlock( this );
HandleBlockEnd( &dc );
break;
case ID_POPUP_PLACE_BLOCK:
m_canvas->SetAutoPanRequest( false );
m_canvas->MoveCursorToCrossHair();
HandleBlockPlace( &dc );