Commit 79c9be25 authored by stambaughw's avatar stambaughw
Browse files

Replace PriorQue with boost::ptr_vector for component library entries.

* Replaced WinEDAListBox buttons with wxStdDialogButtonSizer.
* Moved library draw entries GenCopy method to base class.
* Remove priorque.cpp and priorque.h from CMakeLists.txt.
* The usual code cleaning and uncrustification.
parent 27a0c73c
Loading
Loading
Loading
Loading
+19 −50
Original line number Diff line number Diff line
@@ -40,17 +40,13 @@ END_EVENT_TABLE()
 */

WinEDAListBox::WinEDAListBox( WinEDA_DrawFrame* parent, const wxString& title,
                              const wxChar** itemlist,
                              const wxString& reftext,
                              const wxChar** itemlist, const wxString& reftext,
                              void(* movefct)(wxString& Text) ,
                              const wxColour& colour, wxPoint dialog_position ) :
    wxDialog( parent, -1, title, dialog_position, wxDefaultSize,
              wxDEFAULT_DIALOG_STYLE | MAYBE_RESIZE_BORDER
              )
              wxDEFAULT_DIALOG_STYLE | MAYBE_RESIZE_BORDER )
{
    wxSize         size;
    const wxChar** names;
    int            ii;

    m_ItemList = itemlist;
    m_Parent   = parent;
@@ -58,34 +54,12 @@ WinEDAListBox::WinEDAListBox( WinEDA_DrawFrame* parent, const wxString& title,
    m_WinMsg   = NULL;
    SetReturnCode( -1 );

    if( itemlist )
        for( names = m_ItemList, ii = 0; *names != NULL; names++ )
            ii++;

    else
        ii = 30;

    wxBoxSizer* GeneralBoxSizer = new wxBoxSizer( wxVERTICAL );

    SetSizer( GeneralBoxSizer );

    wxBoxSizer* MainBoxSizer = new      wxBoxSizer( wxHORIZONTAL );

    GeneralBoxSizer->Add( MainBoxSizer, 0, wxGROW | wxEXPAND | wxALL, 1 );

    wxBoxSizer* LeftBoxSizer = new      wxBoxSizer( wxVERTICAL );

    MainBoxSizer->Add( LeftBoxSizer, 0, wxGROW | wxALL, 5 );
    wxBoxSizer* RightBoxSizer = new     wxBoxSizer( wxVERTICAL );

    MainBoxSizer->Add( RightBoxSizer, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5 );

    size.x = 200;
    size.y = 350;
    m_List = new wxListBox( this,
                            ID_LISTBOX_LIST,
                            wxDefaultPosition, size,
                            0, NULL,
    m_List = new wxListBox( this, ID_LISTBOX_LIST, wxDefaultPosition,
                            wxSize( 300, 200 ), 0, NULL,
                            wxLB_NEEDED_SB | wxLB_SINGLE | wxLB_HSCROLL );

    if( colour != wxNullColour )
@@ -93,38 +67,33 @@ WinEDAListBox::WinEDAListBox( WinEDA_DrawFrame* parent, const wxString& title,
        m_List->SetBackgroundColour( colour );
        m_List->SetForegroundColour( *wxBLACK );
    }
    LeftBoxSizer->Add( m_List, 0, wxGROW | wxALL, 5 );

    GeneralBoxSizer->Add( m_List, 0, wxGROW | wxALL, 5 );

    if( itemlist )
        for( names = m_ItemList, ii = 0; *names != NULL; names++, ii++ )
    {
        for( names = m_ItemList; *names != NULL; names++ )
            m_List->Append( *names );
    }

    wxButton* butt = new    wxButton( this, wxID_OK, _( "OK" ) );

    RightBoxSizer->Add( butt, 0, wxGROW | wxALL, 5 );
    butt->SetDefault();

    butt = new              wxButton( this, wxID_CANCEL, _( "Cancel" ) );

    RightBoxSizer->Add( butt, 0, wxGROW | wxALL, 5 );

    if( m_MoveFct )
    {
        size.x   = -1;
        size.y   = 60;
        m_WinMsg = new wxTextCtrl( this, -1, wxEmptyString, wxDefaultPosition,
                                   size, wxTE_READONLY | wxTE_MULTILINE );
        m_WinMsg = new wxTextCtrl( this, -1, wxEmptyString,
                                   wxDefaultPosition, wxSize( -1, 60 ),
                                   wxTE_READONLY | wxTE_MULTILINE );

        GeneralBoxSizer->Add( m_WinMsg, 0, wxGROW | wxALL, 5 );
    }

    wxSizer* buttonSizer = CreateButtonSizer( wxOK | wxCANCEL );

    if( buttonSizer )
        GeneralBoxSizer->Add( buttonSizer, 0, wxGROW | wxALL, 5 );

    GetSizer()->Fit( this );
    GetSizer()->SetSizeHints( this );

    if( dialog_position == wxDefaultPosition ) // Put the window on the parent centre
    if( dialog_position == wxDefaultPosition )
    {
        Centre();
    }
+0 −1
Original line number Diff line number Diff line
@@ -101,7 +101,6 @@ set(EESCHEMA_SRCS
    plothpgl.cpp
    plotps.cpp
    plotdxf.cpp
    priorque.cpp
    read_from_file_schematic_items_descriptions.cpp
    savelib.cpp
    save_schemas.cpp
+1 −1
Original line number Diff line number Diff line
@@ -512,7 +512,7 @@ void CopyMarkedItems( EDA_LibComponentStruct* LibEntry, wxPoint offset )
        if( item->m_Selected == 0 )
            continue;
        item->m_Selected = 0;
        LibEDA_BaseStruct* newitem = CopyDrawEntryStruct( item );
        LibEDA_BaseStruct* newitem = item->GenCopy();
        newitem->m_Selected = IS_SELECTED;
        newitem->SetNext( LibEntry->m_Drawings );
        LibEntry->m_Drawings = newitem;
+2 −3
Original line number Diff line number Diff line
@@ -168,7 +168,7 @@ bool LibDrawText::HitTest( wxPoint aPosRef, int aThreshold, const int aTransMat[
}


LibDrawText* LibDrawText::GenCopy()
LibEDA_BaseStruct* LibDrawText::DoGenCopy()
{
    LibDrawText* newitem = new LibDrawText(NULL);

@@ -185,7 +185,7 @@ LibDrawText* LibDrawText::GenCopy()
    newitem->m_Bold      = m_Bold;
    newitem->m_HJustify  = m_HJustify;
    newitem->m_VJustify  = m_VJustify;
    return newitem;
    return (LibEDA_BaseStruct*) newitem;
}


@@ -247,4 +247,3 @@ void LibDrawText::DisplayInfo( WinEDA_DrawFrame* frame )

    frame->MsgPanel->Affiche_1_Parametre( 20, _( "Line width" ), msg, BLUE );
}
+3 −3
Original line number Diff line number Diff line
@@ -179,13 +179,13 @@ bool LibCmpEntry::operator==( const wxChar* name ) const
}


bool operator<( LibCmpEntry& item1, LibCmpEntry& item2 )
bool operator<( const LibCmpEntry& item1, const LibCmpEntry& item2 )
{
    return item1.m_Name.m_Text.CmpNoCase( item2.m_Name.m_Text ) == -1;
    return item1.m_Name.m_Text.CmpNoCase( item2.m_Name.m_Text ) < 0;
}


int LibraryEntryCompare( LibCmpEntry* LE1, LibCmpEntry* LE2 )
int LibraryEntryCompare( const LibCmpEntry* LE1, const LibCmpEntry* LE2 )
{
    return LE1->m_Name.m_Text.CmpNoCase( LE2->m_Name.m_Text );
}
Loading