> On June 16, 2016, 4:47 p.m., Kåre Särs wrote: > > I'm getting this error on Windows with MSVC 2015 after this commit. > > > > ...etsaddons\src\kcapacitybar.h(234): error C2668: > > 'KCapacityBar::KCapacityBar': ambiguous call to overloaded function > > ...etsaddons\src\kcapacitybar.h(80): note: could be > > 'KCapacityBar::KCapacityBar(KCapacityBar::DrawTextMode,QWidget *)' > > ...etsaddons\src\kcapacitybar.h(71): note: or > > 'KCapacityBar::KCapacityBar(QWidget *)' > > ...etsaddons\src\kcapacitybar.h(234): note: while trying to match the > > argument list '()' > > Elvis Angelaccio wrote: > Could this be a bug in MSVC?
Removing the default argument from the new one with only one argument could maybe solve the problem for all cases. - Kåre ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/128191/#review96599 ----------------------------------------------------------- On June 16, 2016, 1:10 p.m., Elvis Angelaccio wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/128191/ > ----------------------------------------------------------- > > (Updated June 16, 2016, 1:10 p.m.) > > > Review request for KDE Frameworks and Christoph Feck. > > > Repository: kwidgetsaddons > > > Description > ------- > > Currently KCapacityBar doesn't seem to be usable from Qt Designer (unless I'm > doing something wrong). > The class has only an explicit multi-argument constructor, but Qt Designer > generates something like: > > ```c++ > capacityBar = new KCapacityBar(widget_3); > ``` > > which fails to compile because there is no explicit conversion from > `QWidget*` to `KCapacityBar::DrawTextMode`: > > ``` > error: no matching constructor for initialization of 'KCapacityBar' > capacityBar = new KCapacityBar(widget_3); > ^ ~~~~~~~~ > /usr/include/KF5/KWidgetsAddons/kcapacitybar.h:44:29: note: candidate > constructor (the implicit copy constructor) not viable: no known conversion > from > 'QWidget *' to 'const KCapacityBar' for 1st argument > class KWIDGETSADDONS_EXPORT KCapacityBar > ^ > /usr/include/KF5/KWidgetsAddons/kcapacitybar.h:72:14: note: candidate > constructor not viable: no known conversion from 'QWidget *' to > 'KCapacityBar::DrawTextMode' for 1st argument > explicit KCapacityBar(DrawTextMode drawTextMode = DrawTextOutline, > QWidget *parent = 0); > ``` > > This patch simply adds another constructor with a single argument (the > pointer to the parent). > > > Diffs > ----- > > src/kcapacitybar.h 1a1f2e60f415904d6cf603a4b4e0cae1c543169a > src/kcapacitybar.cpp ecd2c13feb88f5c9e92086639bff48c6d0527779 > src/kmultitabbar.h 068f0980827e6806d7cb2a17e8b261f7e1620204 > src/kmultitabbar.cpp bc58b81cbe4d98043762a36a43b4777ada30734f > > Diff: https://git.reviewboard.kde.org/r/128191/diff/ > > > Testing > ------- > > KCapacityBar can now be used in a Qt Designer custom widget. > > > Thanks, > > Elvis Angelaccio > >
_______________________________________________ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel