Ejemplo n.º 1
0
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;
    }
}
Ejemplo n.º 2
0
/*
 * Routine to select and view library Part (NEW, NEXT or PREVIOUS)
 */
void LIB_VIEW_FRAME::SelectAndViewLibraryPart( int option )
{
    CMP_LIBRARY* Lib;

    if( m_libraryName.IsEmpty() )
        SelectCurrentLibrary();
    if( m_libraryName.IsEmpty() )
        return;

    Lib = CMP_LIBRARY::FindLibrary( m_libraryName );

    if( Lib == NULL )
        return;

    if( ( m_entryName.IsEmpty() ) || ( option == NEW_PART ) )
    {
        ViewOneLibraryContent( Lib, NEW_PART );
        return;
    }

    LIB_ALIAS* LibEntry = Lib->FindEntry( m_entryName );

    if( LibEntry == NULL )
        return;

    if( option == NEXT_PART )
        ViewOneLibraryContent( Lib, NEXT_PART );

    if( option == PREVIOUS_PART )
        ViewOneLibraryContent( Lib, PREVIOUS_PART );
}
Ejemplo n.º 3
0
void WinEDA_ViewlibFrame::SelectAndViewLibraryPart(int option)
/**************************************************************/
/* Routine to select and view library Part  (NEW, NEXT or PREVIOUS) */
{
LibraryStruct * Lib;

	if(g_CurrentViewLibraryName.IsEmpty() ) SelectCurrentLibrary();
	if(g_CurrentViewLibraryName.IsEmpty() ) return;

	Lib = FindLibrary(g_CurrentViewLibraryName.GetData());
	if ( Lib == NULL ) return;

	if ( (g_CurrentViewComponentName.IsEmpty()) || ( option == NEW_PART ) )
		{
		ViewOneLibraryContent(Lib, NEW_PART);
		return;
		}

	EDA_LibComponentStruct * LibEntry = FindLibPart(g_CurrentViewComponentName.GetData(),
								 g_CurrentViewLibraryName.GetData(), FIND_ALIAS);

	if ( LibEntry == NULL ) return;

	if (option == NEXT_PART )
		ViewOneLibraryContent(Lib, NEXT_PART);

	if (option == PREVIOUS_PART )
		ViewOneLibraryContent(Lib, PREVIOUS_PART);

}
Ejemplo n.º 4
0
void WinEDA_ViewlibFrame::Process_Special_Functions(wxCommandEvent& event)
/*************************************************************************/
{
EDA_LibComponentStruct * LibEntry;
int ii, id = event.GetId();
wxPoint pos;

	wxGetMousePosition(&pos.x, &pos.y);
	pos.y += 20;

	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 = FindLibPart(g_CurrentViewComponentName.GetData(),
         					g_CurrentViewLibraryName.GetData(), FIND_ALIAS);
			if( LibEntry && ( !LibEntry->m_DocFile.IsEmpty()) )
				GetAssociatedDocument(this, g_RealLibDirBuffer, LibEntry->m_DocFile );
			break;

		case ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT:
			m_HToolBar->ToggleTool(ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT, TRUE);
			m_HToolBar->ToggleTool(ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT, FALSE);
			g_ViewConvert = 1;
			ReDrawPanel();
			break;

		case ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT:
			m_HToolBar->ToggleTool(ID_LIBVIEW_DE_MORGAN_NORMAL_BUTT, FALSE);
			m_HToolBar->ToggleTool(ID_LIBVIEW_DE_MORGAN_CONVERT_BUTT, TRUE);
			g_ViewConvert = 2;
			ReDrawPanel();
			break;

		case ID_LIBVIEW_SELECT_PART_NUMBER:
			ii = SelpartBox->GetSelection();
			if ( ii < 0 ) return;
			g_ViewUnit = ii + 1;
			ReDrawPanel();
			break;

		default:
		{
			wxString msg;
			msg << wxT("WinEDA_ViewlibFrame::Process_Special_Functions error: id = ") << id;
			DisplayError( this, msg);
			break;
		}
	}

}