I've found a case which the Auto Complete isn't currently handling. The only
reason I mention it is because I've been spoiled by how snappy and thorough
the Auto Complete functionality is!

The two cases are:
 - Inherited operator overloads
 - Template arguments that don't assume global scope

The following code clarifies what I mean:

#include <QVector>

class F
{
public:
    F()
    {
        m_data = 0;
    }

    int m_data;
};

class G : public QVector<F *>
{
public:
    G()
    {

    }

    void foo()
    {

    }
};

class B
{
public:
    B()
    {

    }

    class A
    {
    public:
        A()
        {
            m_data = 0;
        }

        int m_data;
    };

    class C : public QVector<B::A *> // Template arguments that don't assume
global scope case workaround
    {
    public:
        void foo()
        {

        }
    };

    class D : public QVector<A *> // Template arguments that don't assume
global scope case
    {
    public:
        void foo()
        {

        }
    };

    class E : public QVector<F *> // F is in global scope
    {
    public:
        void foo()
        {

        }
    };
};

void foo()
{
    B::C c;

    c[1]->m_data;     // no auto completion for m_data - Inherited operator
overloads
    c.at(1)->m_data;  // auto completion for both at() and m_data - Template
arguments that don't assume global scope case workaround

    B::D d;

    d[1]->m_data;     // no auto completion for m_data - Inherited operator
overloads
    d.at(1)->m_data;  // auto completion for at(), but not for m_data -
Template arguments that don't assume global scope case

    B::E e;

    e[1]->m_data;     // no auto completion for m_data - Inherited operator
overloads
    e.at(1)->m_data;  // auto completion for both at() and m_data

    G g;

    g[1]->m_data;     // no auto completion for m_data - Inherited operator
overloads
    g.at(1)->m_data;  // auto completion for both at() and m_data
}
_______________________________________________
Qt-creator mailing list
[email protected]
http://lists.qt.nokia.com/mailman/listinfo/qt-creator

Reply via email to