PDA

View Full Version : wwWidgets



wysota
21st April 2007, 21:13
Beta release of wwWidgets4 - a set of widgets for Qt4 has been released

Download package (http://www.wysota.eu.org/wwwidgets/download/wwwidgets0.5.0b.tar.gz)

The set consists of the following widgets:

QwwColorButton Button acting as a colour chooser
QwwColorComboBox Combobox that allows to pick colors. (unstable)
QwwHueSatPicker A widget allowing color picking in a form of a hue-saturation rectangle
QwwHueSatRadialPicker A widget allowing color picking in a form of hue-saturation circle
QwwLineEdit QLineEdit with regular expression validation support
QwwListWidget An enhanced QListWidget
QwwLongSpinBox A spinbox taking long long values
QwwNavigationBar Widget simmilar to MS Outlook navigation bar. (unstable)
QwwNumPad A numeric keypad widget
QwwTaskPanel Task panel simmilar to the one from WindowsXP.(unstable)
QwwTipWidget Widget that displays application tips
QwwTwoColorIndicator A widget allowing to choose a foreground and background colour


Widgets marked as unstable are hardly or even not at all usable. The color combobox has beed disabled and will not be built, so you won't see it in your widget box.

To build and install the set issue qmake, (n)make and (n)make install commands. The set should install cleanly on Unix and MSVC installations. There is a little problem with MinGW - you have to copy the .a file to the appropriate directory yourself.

To use the set simply add "CONFIG += wwWidgets" to your project file.

The set is not completed, but I decided to release it now anyway (GPL licence), because I don't know when I'll be able to finish the set so in the meantime it may be of benefit to someone. If you want to use any of the widgets in a commercial product, please contact me.

Comments about the release are welcome and appreciated - you can send me a private message, just please don't send reports about obviously not completed functionality. Please don't send reports about unstable widgets.

Due to a lack of functionality in Qt (at least up to versions 4.3beta1) Designer made custom container classes (such as the navigation bar and the task panel) will not work (hand coded classes should work fine).

high_flyer
23rd April 2007, 08:39
Hehe, looking at the list it looks to me, you collected all reoccuring (in the forum) widgeds that users try to make, or look for.
Kind'a "see a need, feel a need" :D

Not bad, I will have a look at it as soon as I can.

Cheers!

pdolbey
26th April 2007, 19:47
Hi wysota

To get my VS2005 SP1 to compile/link this correctly, I needed to change qwwtwocolorindicator.h from



.
.
class QwwTwoColorIndicatorPrivate;
class Q_GUI_EXPORT QwwTwoColorIndicator : public QWidget, QwwPrivatable
{
Q_OBJECT
.
.
to


.
.
class QwwTwoColorIndicatorPrivate;
class Q_WW_EXPORT QwwTwoColorIndicator : public QWidget, QwwPrivatable
{
Q_OBJECT
.
.
This looked right compared to other classes in the distro.

Other things causing minor problems
The nmake install installs the dll into the QTDIR/lib folder, not the bin folder - yet another PATH entry required then?There's no "d" suffix to discriminate between debug and release build as suggested in the help pages. (I tend to use bin/bind folders as a model for my app builds but this is supposed to act a standard Qt extension)The "plugin" is being built with a staticlib setting in the pro file - I'm not sure if this is what you intended.


Still trying to get it working - I'm after one of those marvellous "Outlook 2003" navigation bars (and I saw some of the flame wars on the "other" Qt forum). However I've already sorted out the styling of QPushButtons - just trying to get the behaviours the same. Current screen shot attached.



Pete

wysota
26th April 2007, 20:03
Oh, yes... sorry about that... I thought I corrected that. I'll update the archive right away.

sunil.thaha
28th April 2007, 14:00
Thank you for a Great collection of widgets ...
These widgets help us to have a better understand of the Qt Sources. Your pimpl implementation rocks :-) . I liked the way you used a Base class to handle the destruction of d_ptr. Is that an implementation of RAII Idiom ?


One Question,
I found that you have used some undocumented features like the Q_Q and Q_D macros ... and trolltech warns us against the use of these macros. So is it fine to use it or should you create your own Q_WW_D ?

wysota
28th April 2007, 16:19
Is that an implementation of RAII Idiom ?
I don't have the slightest idea. If it is, then it's unintentional :)

[quote]I found that you have used some undocumented features like the Q_Q and Q_D macros ... and trolltech warns us against the use of these macros. So is it fine to use it or should you create your own Q_WW_D ?
It depends. I use it on my own pointers so it's safe. But you shouldn't use it on pointers Qt provides - I tried :)

sunil.thaha
30th April 2007, 16:14
Since we are expecting the our private data to be derived from QwwPrivate. Why do the functions like d_func() use reinterpret_cast rather than a dynamic_cast ?

pdolbey
1st May 2007, 10:49
wysota,

I know you said not to to comment about "unstable" widgets, but I had some minor success yesterday hacking the qwwnavigationbar component into some sort of stability. I've got the primary functionality working with the PushButtons activating the correct QWidget in the top half of the splitter and have sucessfully "styled" the PushButtons to the original "Outlook" (silver version) look similar to my screen grab above but without the minimize bar. The question is if you want the code fed back - I've changed both the header (replacing the topButton with a QLabel) and cpp and have added pngs to the resource file. Any interest?

Pete

Teerayoot
3rd May 2007, 14:31
How to install component?

After i build ,i got wwwidgets4.dll and wwwidgets4.lib

i put 2 files into qtdesigner plugin folder but nothing new component load.

???

elcuco
4th May 2007, 07:45
On linux this creates a file called libwwwidgets4plugin.a, I was under the impression that the plugins should be *.so files...?

not workign here as well.

pdolbey
4th May 2007, 07:53
See my bullet point 3 above


The "plugin" is being built with a staticlib setting in the pro file - I'm not sure if this is what you intended.


Pete

wysota
4th May 2007, 14:26
I'm back now, so I can answer all the questions :)


Since we are expecting the our private data to be derived from QwwPrivate. Why do the functions like d_func() use reinterpret_cast rather than a dynamic_cast ?
1) Qt works exactly the same way
2) dynamic cast is not needed as the component designer knows the class name, so there is no point of using dynamic cast because you can't access pimpl from outside the class anyway.
3) dynamic_cast relies on RTTI from the compiler, so you'd want to avoid that if possible.


I know you said not to to comment about "unstable" widgets,
That was because some things may not work, so I didn't want to see comments like "X doesn't work" - I already know it doesn't work :) Any other comments on unstable widgets are welcome.


but I had some minor success yesterday hacking the qwwnavigationbar component into some sort of stability.
The navigation bar is stable, the problem with it is that you can't use its Designer plugin correctly, because of a major bug in Qt.


I've got the primary functionality working with the PushButtons activating the correct QWidget in the top half of the splitter and have sucessfully "styled" the PushButtons to the original "Outlook" (silver version) look similar to my screen grab above but without the minimize bar. The question is if you want the code fed back - I've changed both the header (replacing the topButton with a QLabel) and cpp and have added pngs to the resource file. Any interest?
Sure, let's have a look :). I don't think you have to add any images to the resource file, as CSS capabilities from Qt should allow you to make use of external images. About the button in the header - you can access the button and disable its "clicking" functionality if you don't like it without modifying the actual class (or you can subclass of course).


How to install component?
After i build ,i got wwwidgets4.dll and wwwidgets4.lib
i put 2 files into qtdesigner plugin folder but nothing new component load.

You should have run "nmake install" after the compilation. The dll needs to be present in both the lib directory (so that you can make use of the component from your applications) and in the bin directory (so that Designer can access it). Furthermore you should have the file "wwwidgets4plugin.dll" available as well and it should land in your plugins/designer folder (nmake install should take care of that).


On linux this creates a file called libwwwidgets4plugin.a, I was under the impression that the plugins should be *.so files...?
Well... you should have received a .so file if you didn't stick any "static" keywords during preconfiguration. I'll have a look at the project file to see what might have gone wrong and I'll get back to you on that.

wysota
4th May 2007, 14:35
Looks like I missed some comments...


The nmake install installs the dll into the QTDIR/lib folder, not the bin folder - yet another PATH entry required then?
No, it should have installed in both directories. As QMake doesn't seem to support installing into two dirs I had to hack the install script a little and didn't have time to test it properly, so it might have not worked.


There's no "d" suffix to discriminate between debug and release build as suggested in the help pages. (I tend to use bin/bind folders as a model for my app builds but this is supposed to act a standard Qt extension)
True, I didn't think of that, although the library is meant to be compiled against release version of Qt as that's how Designer is compiled. So if you want a debug release of the widget library, you have to adjust the name yourself for now. I'll correct it later.


The "plugin" is being built with a staticlib setting in the pro file - I'm not sure if this is what you intended.

No, it certainly shouldn't happen. Maybe KDevelop changed the project file behind my back again.


Still trying to get it working - I'm after one of those marvellous "Outlook 2003" navigation bars (and I saw some of the flame wars on the "other" Qt forum).
I was throwing the flames myself as I consider the bar stupid (waste of space, etc.), but if people need it, then it might be worth creating one.


However I've already sorted out the styling of QPushButtons - just trying to get the behaviours the same.

It should be very easy to change the appearance using CSS. If you have any comments about the functionality of the component, please don't hesitate to put them here. I have never used the Outlook bar myself, so I might be wrong about how it should work.

Thanks for the comments, I'm waiting for more.

pdolbey
4th May 2007, 16:45
I was throwing the flames myself as I consider the bar stupid (waste of space, etc.), but if people need it, then it might be worth creating one.


I noticed that - thats why I was suprised to see the widget in your package ;)



It should be very easy to change the appearance using CSS. If you have any comments about the functionality of the component, please don't hesitate to put them here. I have never used the Outlook bar myself, so I might be wrong about how it should work.


See my second post - I have the widget both functioning stable enough for my needs, and styled to the MS look (but not necessarily feel). I thought I might change your interface to allow the style to be removed to give a vanilla OS look to the pushbuttons. However it is your library and it wouldn't be fair of me to make changes that might become a core element of my own project without telling you or giving you the opportunity to review them.

Cheers, Pete

wysota
4th May 2007, 18:28
I thought I might change your interface to allow the style to be removed to give a vanilla OS look to the pushbuttons. However it is your library and it wouldn't be fair of me to make changes that might become a core element of my own project without telling you or giving you the opportunity to review them.

From what I understand the only change needed is to call (or not) setStylesheet() with a proper string that will change the look (and possibly some of the "feel" as well) of the widget.

pdolbey
4th May 2007, 22:19
The navigation bar is stable, the problem with it is that you can't use its Designer plugin correctly, because of a major bug in Qt.


Unfortunately, when you claimed the widget was unstable it wasn't clear what this meant. When I started testing it I used a test routine like this



#include <QtGui>
#include <qwwnavigationbar.h>

int main(int argc, char ** argv)
{
QApplication app(argc, argv);
QMainWindow* win = new QMainWindow();
QwwNavigationBar* nav = new QwwNavigationBar(win);
nav->addWidget(new QFrame(), "First Widget");
nav->addWidget(new QFrame(), "Second Widget");
nav->addWidget(new QFrame(), "Third Widget");
win->setCentralWidget(nav);
win->show();
return app.exec();
}


which creates the screen window attached. The text for the second and third widgets was missing. This is when I started hacking :D . I believe I have a working solution, but as I can't be sure that this matches your original design, I'd rather PM the changes to you.

Pete

wysota
4th May 2007, 22:36
AFAIR the titles are taken from the "windowTitle" property of widgets added to the bar (that's one of the workarounds for one of Qt Designer problems), so this should work:


QwwNavigationBar* nav = new QwwNavigationBar(win);
QFrame *frm = new QFrame;
frm->setWindowTitle("First widget");
nav->addWidget(frm);
frm = new QFrame;
frm->setWindowTitle("Second widget");
nav->addWidget(frm);
frm = new QFrame;
frm->setWindowTitle("Third widget");
nav->addWidget(frm);

The same goes for windowIcon property and the decoration of the button. I can't be certain the current code works this way (and I can't test it on this computer), but it is the way it was meant to work.

pdolbey
5th May 2007, 08:45
Unfortunately that pattern isn't obvious from either the interface description, or from my initial test with only one button that worked "correctly". I could see that window titles were being used in the code, but I didn't realise that these were supposed to be the primary title source, and when I have specified text in my method call I would have expected it to have been displayed. Thats whay I thought the widget was inherenently unstable.

Pete

wysota
5th May 2007, 11:10
Unfortunately that pattern isn't obvious from either the interface description, or from my initial test with only one button that worked "correctly". I could see that window titles were being used in the code, but I didn't realise that these were supposed to be the primary title source, and when I have specified text in my method call I would have expected it to have been displayed. Thats whay I thought the widget was inherenently unstable.

That's why the widget is called "unstable" and the whole release "beta" :) The interface of the navigation bar will change a bit because some things will be done outside the widget and inside Designer (just like with the task panel). When this is done, the behaviour will be coherent.

wysota
24th September 2007, 22:27
Ok, I finally forced myself and published the next, (almost) fully usable beta of wwWidgets.

http://www.wysota.eu.org/wwwidgets

All comments are of course welcome.

Oh... and of course a screenshot of some of the widgets.

http://www.wysota.eu.org/wwwidgets/screenshots/all.png

pdolbey
27th September 2007, 21:16
Building on Windows, I get



1>.\qwwfilechooser\qwwfilechooser.cpp(79) : error C3083: '{ctor}': the symbol to the left of a '::' must be a type
1>.\qwwfilechooser\qwwfilechooser.cpp(228) : error C3083: '{ctor}': the symbol to the left of a '::' must be a type


Both lines look like


int mar = style()->pixelMetric(QStyle::QStyle::PM_DefaultFrameWidth, &opt, this);


Removing redundant "QStyle" fixes compilation, but I've now got some linker errors that I'm trying to sort out.

P

wysota
27th September 2007, 21:33
Hmm... you're right, I don't know how the doubled QStyle happened to be there. If you define WW_NO_FILECHOOSER in the project file, those problems should vanish - the widget is not ready yet anyway... What exact linker errors do you get?

pdolbey
27th September 2007, 21:58
Its the plugin that's giving the problem. The "widgets" project has created dll and lib files sucessfully. Running within Visual Studio, I get


1>------ Build started: Project: wwwidgets4plugin, Configuration: Debug Win32 ------
1>Linking...
1>LINK : warning LNK4044: unrecognized option '/L../widgets/release'; ignored
1>LINK : warning LNK4044: unrecognized option '/L../widgets/debug'; ignored
1> Creating library debug\wwwidgets4plugin.lib and object debug\wwwidgets4plugin.exp
1>colorlisteditor.obj : error LNK2019: unresolved external symbol
public: __thiscall ColorModel::ColorModel(class QObject *)"
(??0ColorModel@@QAE@PAVQObject@@@Z)
referenced in function
"public: __thiscall ColorListEditor::ColorListEditor(class QWidget *,class QFlags<enum Qt::WindowType>)"
??0ColorListEditor@@QAE@PAVQWidget@@V?$QFlags@W4Wi ndowType@Qt@@@@@Z
1>qwwcolorbuttoniface.obj : error LNK2001: unresolved external symbol
"public: __thiscall ColorModel::ColorModel(class QObject *)"
(??0ColorModel@@QAE@PAVQObject@@@Z)
1>qwwcolorcomboboxiface.obj : error LNK2001: unresolved external symbol
"public: __thiscall ColorModel::ColorModel(class QObject *)"
(??0ColorModel@@QAE@PAVQObject@@@Z)
1>colorlisteditor.obj : error LNK2019: unresolved external symbol
"public: class QModelIndex __thiscall ColorModel::addColor(class QColor const &,class QString const &)"
(?addColor@ColorModel@@QAE?AVQModelIndex@@ABVQColo r@@ABVQString@@@Z)
referenced in function
"protected: void __thiscall ColorListEditor::setColorMap(void)" (?setColorMap@ColorListEditor@@IAEXXZ)
1>qwwcolorbuttoniface.obj : error LNK2001: unresolved external symbol
"public: class QModelIndex __thiscall ColorModel::addColor(class QColor const &,class QString const &)"
(?addColor@ColorModel@@QAE?AVQModelIndex@@ABVQColo r@@ABVQString@@@Z)
1>qwwcolorcomboboxiface.obj : error LNK2001: unresolved external symbol
"public: class QModelIndex __thiscall ColorModel::addColor(class QColor const &,class QString const &)"
(?addColor@ColorModel@@QAE?AVQModelIndex@@ABVQColo r@@ABVQString@@@Z)
1>qwwfilechooseriface.obj : error LNK2019: unresolved external symbol
"public: __thiscall QwwFileChooser::QwwFileChooser(class QWidget *)"
(??0QwwFileChooser@@QAE@PAVQWidget@@@Z) referenced in function
"public: virtual class QWidget * __thiscall QwwFileChooserIface::createWidget(class QWidget *)"
(?createWidget@QwwFileChooserIface@@UAEPAVQWidget@ @PAV2@@Z)
1>qwwrichtextbuttoniface.obj : error LNK2019: unresolved external symbol
"public: __thiscall QwwRichTextButton::QwwRichTextButton(class QWidget *)"
(??0QwwRichTextButton@@QAE@PAVQWidget@@@Z) referenced in function
"public: virtual class QWidget * __thiscall QwwRichTextButtonIface::createWidget(class QWidget *)"
(?createWidget@QwwRichTextButtonIface@@UAEPAVQWidg et@@PAV2@@Z)
1>qwwtextspinboxiface.obj : error LNK2019: unresolved external symbol
"public: __thiscall QwwTextSpinBox::QwwTextSpinBox(class QWidget *)"
(??0QwwTextSpinBox@@QAE@PAVQWidget@@@Z) referenced in function
"public: virtual class QWidget * __thiscall QwwTextSpinBoxIface::createWidget(class QWidget *)"
(?createWidget@QwwTextSpinBoxIface@@UAEPAVQWidget@ @PAV2@@Z)
1>debug\wwwidgets4plugin.dll : fatal error LNK1120: 5 unresolved externals


...but I wouldn't loose any sleep over it tonight.

Pete

wysota
27th January 2008, 16:17
I'm pleased to announce the immediate availability of wwWidgets 0.8

The main effort has been put on compilability with gcc, msvc and mingw and compatibility with Qt4.4. Apart from obtaining those goals (at least I hope so), the set is extended with new widgets such as:

QRichTextEdit - a widget that turns QTextEdit into a usable selfsufficient rich text editor
http://www.wysota.eu.org/wwwidgets/screenshots/qwwrichtextedit.png

QwwButtonLineEdit - a lineedit class that combines the line edit with a programmable button.
http://www.wysota.eu.org/wwwidgets/screenshots/qwwbuttonlineedit.png

Derived widgets such as QwwClearLineEdit, QwwResetLineEdit and QwwFileChooser are also available.
http://www.wysota.eu.org/wwwidgets/screenshots/qwwclearlineedit.png http://www.wysota.eu.org/wwwidgets/screenshots/qwwfilechooser.png

Full capabilities and full Designer integration is available for very recent (late January 2007) snapshots of Qt 4.4, but the whole set should compile with earlier snapshots as well as Qt 4.3 and Qt 4.2.

Please note that though wwWidgets are fully usable, the version 1.0 has not been reached yet and so the API and ABI may (and probably will) change in future releases.

The website has not yet been fully updated with docs and descriptions. In any doubt, please ask questions - I will gladly answer them.

Visit http://www.wysota.eu.org/wwwidgets for more details and download. Binary releases of the set may be available upon request.

All comments and other feedback is greatly appreciated.

pdolbey
28th January 2008, 14:30
wysota,

As you must realize, I await these release eagerly. However your website doesn't seem to responding at the moment.

Pete

wysota
28th January 2008, 15:19
Hmm... really? It works fine for me.

Attached you'll find the 0.8 source code archive in case you continue to be unable to access the website.

magland
28th January 2008, 16:06
Everything works great with MinGW. However, when I try to compile/install using msvc, I have some problems.

I did:

qmake
nmake
nmake install

Everything seems fine, but when I compile and run an example, it complains that it is missing mingw dll. ???!

So, I tried to link directly to the library (i.e. not using CONFIG += wwwidgets) and everything worked fine. So it must be a problem with wwwidgets.prf with msvc. ??

I am using Qt 4.3.3

wysota
28th January 2008, 16:24
Everything works great with MinGW
Good, MinGW was the platform giving me the most trouble :)


Everything seems fine, but when I compile and run an example, it complains that it is missing mingw dll. ???!
It means you link against a dll that has been built using MinGW and not MSVC.


So, I tried to link directly to the library (i.e. not using CONFIG += wwwidgets) and everything worked fine. So it must be a problem with wwwidgets.prf with msvc. ??

It's probably a problem with your configuration. Your two installs must have somehow interfered one another. Maybe you used wrong qmake or something... I have MSVC and MinGW installed side by side and both of them behave fine.

Oh, by the way - I'd like to thank Artur (aka Calhal) for helping me with MinGW compilation. Special thanks also go to Johan who has been testing my set with MinGW in earlier releases.

pdolbey
28th January 2008, 18:09
Hmm... really? It works fine for me.

Attached you'll find the 0.8 source code archive in case you continue to be unable to access the website.

I'm on a highly restricted environment at work, having to run the internet via Citrix, but I don't normally receive the tcp timeout error I got unless the target site is unavailable. Anyway thanks for putting the release out as an attachment. I'll grab it from my home machine later - and see if your web site is reachable from home. I'll only add to this thread if it isn't.

Pete

elcuco
28th January 2008, 19:04
WOW.... this is just "bad"... a very "bad release" ... first time I do take a look into it deeply :)

There are some issues with some widgets, the documentation is very poor, no static library (I sure would like the demos to be linked statically so I can test it without the library to be installed), no copyright in the TGZ on this thread... but still, very impressive. Continue with the good job!

Funny you have this richtext editor, I am working on something very similar, but mine has a tabbar at the bottom, so you can edit the HTML source. Is it possible to add such feature to the rich text editor? Also, how do I set the icons of the actions in that widget? the QActions are not exported outside the widget's interface.

wysota
28th January 2008, 20:03
WOW.... this is just "bad"... a very "bad release" ... first time I do take a look into it deeply :)
lol :)


There are some issues with some widgets
Yep, I know :)


the documentation is very poor
I'm still battling the xsl template.


no static library
Hmm... if you run qmake CONFIG+=staticlib (or whatever it was) it should compile fine.


(I sure would like the demos to be linked statically so I can test it without the library to be installed)
I'll think about it.


no copyright in the TGZ on this thread...
Yeah, I'm aware of that... But hey, it's 0.8 and not 1.0 :)


but still, very impressive. Continue with the good job!
Thanks. As I said, the main effort was put to make it compilable everywhere - that used to be the biggest problem. I'm only a one-man army, so until I develop some tools to make my life easier, everything takes time. I already have a wizard for creating plugin code which at least makes it easy to add widgets to the set without necessary copy&paste. The project file is quite advanced as well, so adding new widgets requires only to add the class name to one variable and everything else is taken care of.


Funny you have this richtext editor, I am working on something very similar, but mine has a tabbar at the bottom, so you can edit the HTML source. Is it possible to add such feature to the rich text editor?
Hmm... I'll think about it. Maybe not as a tab but as a button or menu item. The downside is that Qt generates a messy html code so it might not look very nice.


Also, how do I set the icons of the actions in that widget?
I haven't tried that but you should be able to substitute the resources from which the icons are taken. The widget will be extended in the next release - I plan to have the toolbar configurable and in general more flexible but as I'm lazy (and undermanned) I'm looking for an easy way to make the toolbar more flexible, currently if icons don't fit into the widget, they are not visible - it shouldn't be like that.


the QActions are not exported outside the widget's interface.
That will probably change in the future. The widget is not ready yet, but I felt like releasing it anyway. I had to release 0.8 now once I made everything compilable and 4.4 compatible (thanks to Jarek Kobus).

0.9 should be released shortly once I get some feedback about 0.8. Planned for that release is functionality freeze (until 1.0), ABI freeze and improved modularity. All that is almost ready. I also have some neat ideas for the plugin, maybe I'll manage to implement them in 0.9. You may already see the extra menu in Designer when the plugin is active.

Please keep that feedback coming!

pdolbey
28th January 2008, 20:37
Hi again,

No problems downloading from the web site or compiling with VS2005 Ent. The only minor gotcha is that the wwwidgets4.dll is being dumped into the Qt4 "lib" folder, not the "bin" folder, which means its not in my PATH - but easily moved. I'll start playing with it tonight.

My only other query is over the license - will this definitely be GPL or is LGPL a possibility?This has an impact with some of my QtOCC collaborators on sourceforge (http://qtocc.sourceforge.net), which we will license under LGPL in accordance with the GPL_EXCEPTION.TXT given with Qt4.3.3. The choice of license is obviously yours, and you may feel strongly about the GPL/LGPL argument - but I thought I'd ask if a relaxation was possible.

Cheers, Pete

p.s. no release is ever a "bad release"!

wysota
28th January 2008, 21:52
Hi again,

No problems downloading from the web site or compiling with VS2005 Ent. The only minor gotcha is that the wwwidgets4.dll is being dumped into the Qt4 "lib" folder, not the "bin" folder,
It should land in the bin as well. The mechanism is not perfect as the library has to be called "wwwidgets4.dll" and be present in release or debug subdirectories after the compilation, but it worked fine last time I checked it. Maybe it missed the right name in your case.


My only other query is over the license - will this definitely be GPL or is LGPL a possibility?
Hmm... I'm open to suggestions, but I think that because of Qt being GPL, I can't licence it to LGPL. If you prove me wrong, I can think of making an exception.


This has an impact with some of my QtOCC collaborators on sourceforge (http://qtocc.sourceforge.net), which we will license under LGPL in accordance with the GPL_EXCEPTION.TXT given with Qt4.3.3. The choice of license is obviously yours, and you may feel strongly about the GPL/LGPL argument - but I thought I'd ask if a relaxation was possible.
Oh, I think this proves me wrong. I'm against releasing under LGPL as this would allow people to use my widgets in commercial applications without buying a licence. I'm putting much effort in the development and I haven't received a single sign of appreciation other than a post in this thread (meaning no donations to my paypal account) stating about bad releases :) My widgets might not be of top notch quality just yet but I think I'm constantly improving so I wouldn't want someone to just take it and earn big money with it without me knowing. Unfortunately it is a rare case that LGPL is really respected by commercial applications. For instance the licence requires the licence file and an acknowledgement to be present in the product using the LGPL-licenced library. Are you sure this is respected?



p.s. no release is ever a "bad release"!

I wouldn't say that :)

pdolbey
28th January 2008, 23:00
Yes, if you expect to earn some remuneration you can't take the risk of LGPL'ing it as its the only leverage you have on commercial users - I completely understand. And its difficult (just about impossible) to go back to GPL if you make it available under LGPL.

From my perspective, it means that I cannot tightly integrate with the library thereby forming a dependency, but I should be able to use it for producing nice looking application "containers", so long as the libs are logically separated (I think).

Pete

wysota
28th January 2008, 23:15
From my perspective, it means that I cannot tightly integrate with the library thereby forming a dependency, but I should be able to use it for producing nice looking application "containers", so long as the libs are logically separated (I think).

I'm sorry, I have no idea :)

From what I understand I can licence the library any way I like as long as I don't break the licence of components I use, so in theory I could licence it in such a way that I make an exception for a particular project. But honestly - I don't know that, these are only my assumptions. I'm not a lawyer nor an expert on open source licencing scheme. If you know better - enlighten me :)

pdolbey
29th January 2008, 18:21
Basically if you license it to a project such as mine with LGPL, you give me the right to pass it on to others with the same license - and I don't think you want to do that! However I can use your GPL'd library and my LGPL'd library together in an application, but only if the final application is also GPL. I can live with that.

Pete

magland
30th January 2008, 12:05
Thanks W, I like these widgets. Not sure why I was having trouble before, but it seems to be resolved now.

If you'd like to see QwwRichTextEdit inside an IDE, here's a QwwRichTextEdit plugin for HaiQ (http://groups.google.com/group/haiq/web/QwwRichTextEdit%20Plugin).

By the way, it would be nice to be able to edit hyperlinks and insert images.... or maybe that should be done by the user in subclass?

wysota
30th January 2008, 20:46
Thanks W, I like these widgets.
Thanks, I appreciate it.


Not sure why I was having trouble before, but it seems to be resolved now.
I'm glad most compile problems have been resolved.


If you'd like to see QwwRichTextEdit inside an IDE, here's a QwwRichTextEdit plugin for HaiQ (http://groups.google.com/group/haiq/web/QwwRichTextEdit%20Plugin).
Great :) Keep up the good work, maybe you'll find some use for other widgets of mine too. Maybe the tip widget (it'll be improved in 0.9) and the wwbuttonlineedit family can be of use to you.


By the way, it would be nice to be able to edit hyperlinks and insert images.... or maybe that should be done by the user in subclass?
I didn't have plans for hyperlinks and images, but it shouldn't be hard to implement them (either in a subclass or directly). I'll think of it. Right now I have to make the list work properly (currently list nesting is incorrect) and improve the interface so that it is customizable.

magland
9th February 2008, 20:46
Perhaps this is not a wwWidgets-specific question, but nevertheless....

One problem I am having with the rich text edit widget is that when I save a file as type .html and then view in a browser, the spacing is all different. Is there something I should use besides toHtml() to save the file, or perhaps I should save file as a different (non-html) type?

Ideally, I'd like to have html page display with same spacing that I see in the rich text widget (i.e. line indents, etc) . Is that possible?

wysota
9th February 2008, 22:35
Qt uses a wacky html formatting. You probably experience issues related to font differences. This is surely not wwWidgets related.

A probable solution would be to set a proper font either on the widget or on the document (before or after exporting it to html), but it's just a wild guess and really more of a long shot.

Gopala Krishna
16th February 2008, 14:43
Great collection wysota! Thanks :)
I have suggestions for new widgets. What do you think ?

A dialog/widget to edit gradients (all - linear, radiant and conical)
A dialog/widget to set pen and brush properties (including cap, milter joints..)
Finally a combo of the above


If you are interested in above probably you can have two modes, one "Lesser mode" which shows only basic properties.
The "More mode" could show each and every property described above.

wysota
16th February 2008, 14:54
Great collection wysota! Thanks :)
Thank you.

I have suggestions for new widgets. What do you think ?

A dialog/widget to edit gradients (all - linear, radiant and conical)
A dialog/widget to set pen and brush properties (including cap, milter joints..)
Finally a combo of the above

I have the first one in plans. I didn't think about the second one, but it might be a good idea to make a widget to handle that. The third one is a simple composition of the first two, so one can use two separate widgets.


If you are interested in above probably you can have two modes, one "Lesser mode" which shows only basic properties.
The "More mode" could show each and every property described above.
Yeah, maybe. I'm trying to be implementing widgets and not dialogs as they are more robust and can handle more use cases, so probably this will be the case here as well.

Thanks for your suggestions. 0.9 should be available soon, so it probably won't go into the set until 1.0. That in turn will freeze development of new widgets in the stable branch, so if those widgets don't make it into 1.0, they probably won't be available until 1.2.

If you have suggestions how the gradient editor should look like, feel free to drop me a line either here or by email. I've seen gradient editors from KDE, Trolltech and Corel applications but I'm not sure I like any of them.

Gopala Krishna
16th February 2008, 15:09
If you have suggestions how the gradient editor should look like, feel free to drop me a line either here or by email. I've seen gradient editors from KDE, Trolltech and Corel applications but I'm not sure I like any of them.

I haven't seen any of them :( Any links ? Googling didn't help me.
Actually i wanted to do myself a simple gradient editor widget and didn't find any pointer to this.

wysota
16th February 2008, 15:53
If you open stylesheet editor in Designer 4.4, there is an option to edit a gradient. KDE4 has its gradient editor as well (sorry, no link now). Corel has a very simple linear gradient editor where you can define "stops" and colours for them and there is a bar that shows the result live. Other gradients in Corel DRAW are made interactively by dragging the mouse over the drawing sheet and/or choosing the parameters from comboboxes or spinboxes.

marcel
16th February 2008, 19:32
Corel has a very simple linear gradient editor where you can define "stops" and colours for them and there is a bar that shows the result live. Other gradients in Corel DRAW are made interactively by dragging the mouse over the drawing sheet and/or choosing the parameters from comboboxes or spinboxes.

Phtotshop, Illustrator and InDesign, all have a similar way of defining gradients. So does PaintShopPro and many other design programs.

Probably the users prefer this way...

wysota
16th February 2008, 20:40
If you mean the bar, then it only allows one to edit a linear gradient.

marcel
16th February 2008, 20:45
No, I meant the entire gradient palette, with all the options. You can also change the gradient style from there - linear, radial, etc.

Although, the pdf spec defines a few "exotic" gradient types, such as Coon's patch gradients, which are all supported(read-only) by all Adobe products but I haven't yet found a way to create one with them.
I believe Qt, when printing to pdf, saves all gradients as coon patch.

wysota
17th February 2008, 18:17
No, I meant the entire gradient palette, with all the options. You can also change the gradient style from there - linear, radial, etc.
Yes, but you won't be seeing the final effect in action - the gradient will still be visualized as a linear gradient. I like the gradient editor from Qt Designer way way more.

Gopala Krishna
23rd February 2008, 12:15
While trying to use your classes i felt the following addition to QwwRichTextEdit would rock it more!


Toolbuttons to control the subscript and superscript of text.
An intelligent toHtml() method which isn't bloated as is that of QTextEdit

wysota
23rd February 2008, 18:10
Toolbuttons to control the subscript and superscript of text.
They will be available in the upcoming release.

An intelligent toHtml() method which isn't bloated as is that of QTextEdit
That's more complicated. The problem is within QTextDocument and not QTextEdit so it should be solved there - a class exporting QTextDocument to proper html would be needed as a general purpose solution. It's not that hard to implement - you can traverse nodes of the document easily and create output of your choice.

Gopala Krishna
24th February 2008, 13:05
If i remember correctly, i read on planet kde that someone has written a script to reduce the richtext's html generated by designer. Googling didn't help me.

Anyway's i will try to write one if i can't find the script.

wysota
24th February 2008, 13:10
If i remember correctly, i read on planet kde that someone has written a script to reduce the richtext's html generated by designer.

In my opinion this is not the way to go. You double the work this way - first QTextDocument generates its html representation and then the script simplifies it into another html. It's better to generate a clean html in the first place and its easily achievable - all that it takes is a bit of brainstorming how to avoid pitfalls that may arise and then apply those developed rules during document traversal.

I'm thinking of developing an output generator for the MediaWiki syntax. Currently I don't have time to do it, but maybe in the near future I will.

elcuco
24th February 2008, 14:46
Someone is working on a MediaWiki "rich text editor" control for Qt., again, look in the KDE planet.

About editing HTML: has anyone tried use the webkit editor control...? I know it can display HTML (it's pretty good at it), but how about editing, anyone tested?

Gopala Krishna
25th February 2008, 10:07
In my opinion this is not the way to go. You double the work this way - first QTextDocument generates its html representation and then the script simplifies it into another html. It's better to generate a clean html in the first place and its easily achievable - all that it takes is a bit of brainstorming how to avoid pitfalls that may arise and then apply those developed rules during document traversal.

I'm thinking of developing an output generator for the MediaWiki syntax. Currently I don't have time to do it, but maybe in the near future I will.

I agree but as you won't be fetching the tidied rich text very often(other than saving and for copying the text), it shouldn't cause much difference though there is double work.

Anyway i am looking forward for your output generator. :)

magland
16th July 2008, 14:21
Attached is a simple extension to QwwRichTextEdit that adds a "link" button, allowing user to add hyperlinks. Also two new signals are emited: anchorHovered(QString) and anchorClicked(QString).

(Wysota, feel free to use this code or modify it as you like.)

wysota
16th July 2008, 16:07
Thanks. I'll include it in the next release of the widget set. It should be out today or tomorrow.

pospiech
25th July 2008, 12:53
Do you except feature requests?

I require something which could be called doubleExponentialSpinBox. That should be a SpinBox that excepts double values but displays them as "1234.0234 e -123".
The Buttons should then increase either the value or the exponential depending on the position of the cursor.
I require this very often since I am a physicist and deal with high exponential values quite often. However it is not possible to display these in any standard spinbox.

Matthias

wysota
25th July 2008, 14:36
Do you except feature requests?
Sure, why not.


I require something which could be called doubleExponentialSpinBox. That should be a SpinBox that excepts double values but displays them as "1234.0234 e -123".
This can be done with the regular double spinbox by reimplementing two methods.


The Buttons should then increase either the value or the exponential depending on the position of the cursor.
Ah.. I see... seems nice, I'll look into it.

janus
17th September 2008, 09:10
Hi,

i build wwWidgets on Win XP (Qt 4.4.1 and MinGW) without any problem. But when I do 'make install' I get this error


mingw32-make[1]: Leaving directory `C:/Dokumente und Einstellungen/Kathi/Desktop/wwWidgets-0.8/wwwidgets/plugin'
copy /y c:\Dokumente und Einstellungen\Kathi\Desktop\wwWidgets-0.8\wwwidgets\widgets\wwglobal.h c:\Qt\4.4.1\include\wwWidgets
Das System kann die angegebene Datei nicht finden.
mingw32-make: [install_flat_headers] Error 1 (ignored)
copy /y c:\Dokumente und Einstellungen\Kathi\Desktop\wwWidgets-0.8\wwwidgets\widgets\qwwcolorbutton\qwwcolorbutto n.h c:\Qt\4.4.1\include\wwWidgets
Das System kann die angegebene Datei nicht finden.
mingw32-make: [install_flat_headers] Error 1 (ignored)

It means 'The system can't find the file' ...
The folders in Qt/include/wwwidgets etc. are created but the files are not copied. Any idea? thx

wysota
17th September 2008, 10:10
I'd say this is a problem with whitespaces in your path. Try using a path without spaces and see if the problem persists.

janus
17th September 2008, 10:47
That's it! Thank you.

pospiech
24th September 2008, 21:58
I could compile wwwidgets with VS 2005 and Qt 4.4 without any problems.
I only get the release version of the dll. Can that be used in debug mode as well?

And do I need to copy any directory with header files to my project?

Matthias

wysota
26th September 2008, 08:59
ICan that be used in debug mode as well?
If you add CONFIG += debug to the widgets' project file, the library will be built in debug mode.


And do I need to copy any directory with header files to my project?

Not really. Try calling "nmake install".

wysota
29th September 2008, 22:49
wwWidgets 0.9 has been released. It's the last major step before the 1.0 release. Contains both bugfixes and new widgets. API and ABI have been frozen until 1.0 is out. Examples are still missing and documentation is incomplete. These and proper MacOSX installation are major goals to obtain to close the 1.0 milestone.

Please report bugs to wwwidgets <at> wysota <dot> eu <dot> org.

pospiech
30th September 2008, 07:52
Can you give a hint about the new widgets?

wysota
30th September 2008, 08:25
Let's see... a LED widget and a list navigator widget, that's for sure. Both quite configurable. I think these were the ones stable enough to go into the release. There is work in progress for other widgets - breadcrumb, cover flow, marquee, image viewer, progress circle and ideas for more.

Here is a shot...

pospiech
30th September 2008, 08:41
Did you have time to think about my double-exponential-lineedit idea? I am doing mostly science related software and this is a thing I need everywhere and did not find yet.

wysota
30th September 2008, 21:52
Currently I don't have time to think about anything ;) I promise I'll give it a thought though.

kernel_panic
9th October 2008, 07:57
For me the designed plugin doesn't work.
Im running a windows machine with Qt 4.4.2. wwWidgets compiles without errors, but the plugin isn't loadet into QtDesigner.

jpn
9th October 2008, 08:29
One of the most common problem on Windows is the debug vs. release issue.

wysota
9th October 2008, 08:44
Open Designer's "About plugins" dialog box and see if there is any info about the plugin. You might be missing the widget library or you're mixing debug and release as J-P suggests.

kernel_panic
9th October 2008, 09:45
yeah. thanks. i forgott to copy the wwwidgets4.dll int my path.

janus
13th October 2008, 09:42
Hi,

recently I built wwWidgets on XP with Qt 4.4.1 without a problem. Now I tried to build wwWidgets 0.8 and 0.9 on Win 2000 with Qt 4.4.3. The only difference is that I configured Qt on Win 2000 with -no-webkit. I get the following errors:

with 0.9

Creating library file: release\libwwwidgetsplugin.a
./release\qwwlediface.o(.text+0x133):qwwlediface.cpp : undefined reference to `QwwLed::QwwLed(QWidget*)'
collect2: ld returned 1 exit status
mingw32-make[2]: *** [release\wwwidgetsplugin.dll] Error 1
mingw32-make[2]: Leaving directory `G:/wwWidgets/plugin'
mingw32-make[1]: *** [release] Error 2
mingw32-make[1]: Leaving directory `G:/wwWidgets/plugin'
mingw32-make: *** [sub-plugin-make_default-ordered] Error 2

with 0.8

Creating library file: release\libwwwidgetsplugin.a
./release\qwwbreadcrumbiface.o(.text+0x133):qwwbread crumbiface.cpp: undefined re
ference to `_imp___ZN13QwwBreadCrumbC1EP7QWidget'
collect2: ld returned 1 exit status
mingw32-make[2]: *** [release\wwwidgetsplugin.dll] Error 1
mingw32-make[2]: Leaving directory `C:/wwwidgets/plugin'
mingw32-make[1]: *** [release] Error 2
mingw32-make[1]: Leaving directory `C:/wwwidgets/plugin'
mingw32-make: *** [sub-plugin-make_default-ordered] Error 2

Any suggestion how I could solve this problem?

wysota
16th October 2008, 22:57
wwWidgets are not using webkit. QwwBreadCrumb is not distributed with 0.9 nor with 0.8. It shouldn't be compiled. If by my mistake there are references to the class left somewhere in the code, you have to manually remove them from sources. I'll check it out tomorrow and release an update if that was my fault. QwwLed should be working with 0.9. Your problem might be trying to compile the plugin against an old version of the widget library. Try installing the widget library (cd widgets; make install) before compiling the plugin.

ComaWhite
7th November 2008, 07:12
I was wondering for a suggestion for a colour dialog box like gtk has. Which Qt does have but its only for commercial licensees?

wysota
7th November 2008, 10:15
Do you speciifically mean the triangle or the dialog in general? We have QColorDialog that you can use. It has the same functionality as the GTK dialog.

ComaWhite
7th November 2008, 15:21
yeah the triangle with does the 360 turn and has the rainbow circle around it.

pospiech
12th November 2008, 09:13
I cannot compile with MSVC 2005. I get the following linker error:


Code wird generiert...
link /LIBPATH:"c:\Programme\Qt\msvc\4.4.3\lib" /NOLOGO /INCREMENTAL:NO /DLL /MANIFEST /MANIFESTFILE:"release\wwwidgetsplugin.intermediate.manifest" /OUT
:release\wwwidgetsplugin.dll @C:\DOKUME~1\Matthias\LOKALE~1\Temp\nm41F.tmp
Bibliothek "release\wwwidgetsplugin.lib" und Objekt "release\wwwidgetsplugin.exp" werden erstellt.
qwwlediface.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "
"public: __thiscall QwwLed::QwwLed(class QWidget *)" (??0QwwLed@@QAE@PAVQWidget@
@@Z)" in Funktion ""public: virtual class QWidget * __thiscall QwwLedIface::crea
teWidget(class QWidget *)" (?createWidget@QwwLedIface@@UAEPAVQWidget@@PAV2@@Z )".

release\wwwidgetsplugin.dll : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.
NMAKE : fatal error U1077: ""C:\Programme\Microsoft Visual Studio 8\VC\BIN\link.EXE"": Rückgabe-Code "0x460"
Stop.
NMAKE : fatal error U1077: ""C:\Programme\Microsoft Visual Studio 8\VC\BIN\nmake.exe"": Rückgabe-Code "0x2"
Stop.
NMAKE : fatal error U1077: "cd": Rückgabe-Code "0x2"
Stop.

wysota
12th November 2008, 12:34
yeah the triangle with does the 360 turn and has the rainbow circle around it.

Does it differ in any way from a circle and a slider or a rectangle and a slider? :)

wysota
12th November 2008, 12:35
I cannot compile with MSVC 2005. I get the following linker error:
Did you install the widget library before compiling the plugin?

pospiech
12th November 2008, 12:39
Did you install the widget library before compiling the plugin?
Can you go in more details? I simply do not know what you mean. Qt is installed.

wysota
16th November 2008, 10:09
wwWidgets consists of two libraries - the widget library and the plugin for it that makes it possible to use the widgets in Designer. If you have an old version of the widget library installed and you try to build the plugin, it will link against the stale version of the widget library because it comes first in your library path. So you can either delete the libwwwidgets.so (or equivalent) file from the lib subdir of your Qt installation or you can install the new version of the library before building the plugin. The widget library is the "widgets" subproject of wwWidgets and the plugin is the "plugin" subproject of wwWidgets. So I suggest you do (assuming you are in the top level directory of the bundle):

$ cd widgets; qmake && make; su
# make install
# exit
$ cd ../plugin; qmake && make; su
# make install
# exit

jjbabu
3rd December 2008, 05:26
Hi Wysota,
I downloaded wwWidget0.9. I am working on winXP with QT4.4.1when i was compiling the wwWidgets,i got the below error


./tmp\obj\release_shared\qwwlediface.o(.text+0x133): qwwlediface.cpp: undefined r
eference to `QwwLed::QwwLed(QWidget*)'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [release\wwwidgetsplugin.dll] Error 1
mingw32-make[1]: Leaving directory `C:/Qt/4.4.1/wwWidgets/plugin'
mingw32-make: *** [release-all] Error 2

I followed your previous posts,after that i compiled widgets directory and i installed widget libs using make install.after that when i compiled plugins directory using make again i am getting above problem.
how can i solve that.

thanks in advance

wysota
3rd December 2008, 09:38
I have just compiled wwWidgets 0.9 from the code available without any problems, so your problem has to be related to a previous installation of wwWidgets. Please delete the old installation and try again. I know the package works, people built it without any problems.

jjbabu
3rd December 2008, 11:49
Hi Wysota,
After reading your last post i uninstall QT totally & reinstalled QT4.4.1 on My PC.then i tried to compile wwWidgets, but again i got same problem.

one more thing i observed while compiling my application is my code is compiling twice every time. when i was working with QT4.1 earlier, after building of my application,if i run .exe file it should open directly.Now i am working with Qt4.4.1,after building of my application,if i run .exe file,it is asking for mingw10.dll,Qtcore4.dll and QtGui4.dll.after coping all the dlls to release directory then only the exe is opens.

what is the problem?please give me any hint.

Thanks in advance

ComaWhite
10th December 2008, 02:17
Does it differ in any way from a circle and a slider or a rectangle and a slider? :)
http://uwstopia.nl/files/2006/09/gtk-select-color.png

wysota
10th December 2008, 09:27
So how does it differ in functionality with this?
http://doc.trolltech.com/4.4/images/plastique-colordialog.png

ComaWhite
10th December 2008, 22:53
The look of it =]

wysota
11th December 2008, 01:15
Drawing the triangle's gradient is very tricky - it's not a linear gradient (more likely a mix of two linear gradients). If you're after the looks, make yourself a colour cube - it's easy to draw and it's cooler than the triangle :)

ComaWhite
11th December 2008, 06:43
awwww =[ but it would be nice if you was able to do it ;P

wysota
11th December 2008, 08:47
I am able to do it but I don't have time to do it :)

ComaWhite
13th December 2008, 10:44
Well whenever you do I'll be happy =]

janus
19th December 2008, 15:19
Hi wysota,

sry for bothering you with wwwidgets installation ... it seems to work for most users. But I get the same error (0.9) as jjbabu

Creating library file: release\libwwwidgetsplugin.a
./release\qwwlediface.o(.text+0x133):qwwlediface.cpp : undefined reference to `QwwLed::QwwLed(QWidget*)'
collect2: ld returned 1 exit status
mingw32-make[2]: *** [release\wwwidgetsplugin.dll] Error 1
mingw32-make[1]: *** [release] Error 2
mingw32-make[2]: Leaving directory `C:/wwWidgets/plugin'
mingw32-make[1]: Leaving directory `C:/wwWidgets/plugin'
mingw32-make: *** [sub-plugin-sub_Release_ordered] Error 2

This is a complete new installation: new XP, Qt 4.4.3. There was no wwwidgets installed before. I tried it with cmd, inside eclipse, with building both widgets and plugin, than first widgets (with install) and afterwards plugins ... I allways get this error. I put the source to C:\wwwidgets to avoid a problem with paths ... any idea? thx

edit: found version 0.8 on your website. I could could build it without an error.

wysota
20th December 2008, 00:17
A fresh look always helps... Looks like it is my fault after all. Open qwwled.h and add Q_WW_EXPORT before the class name (so that it says "class Q_WW_EXPORT QwwLed : public QWidget") in the declaration. In doubt take a look how it looks with other classes.

wysota
21st February 2009, 01:27
I'm very happy to announce the immediate availability of wwWidgets 0.9.5

This is one of the last steps towards the 1.0 release. Since 0.9 the API is practically frozen, so no new widgets are introduced. This release deals mostly with documentation and installation issues.

Special thanks goes to Paul Buhr who provided feedback related to installing the set on MacOSX. If the patch is correct (I had no means to test it) the library should install (more or less) cleanly on all three major platforms.

Remaining steps until 1.0:

implementation of QwwRichTextEdit (icon issues, list issues)
missing documentation
examples
qconfig like defines to strip out functionality easily


When 1.0 is released, new widgets will start making it into the set so keep your fingers crossed.
Upcoming widgets:

a breadcrumb widget
a marquee widget
an image viewer
a calendar button
a progress/waiting notifier (the circle shaped thing stumbling through many modern websites)
IP line edit
and more...




wwWidgets homepage (http://www.wysota.eu.org/wwwidgets)
wwWidgets Reference Manual (http://www.wysota.eu.org/wwwidgets/doc/html/)


Installation instructions:

qmake
make
make install # superuser privs required
make register

Update instructions:

qmake
cd widgets # install the widget set first before compiling the plugin
qmake
make
make install # superuser privs required
cd ..
make
make install # superuser privs required
make register

The last step is only required if you use Qt4.4 or newer. It registers the compressed help documentation with your Qt Assistant.

All feedback is welcome and appreciated!

janus
23rd March 2009, 15:38
All feedback is welcome and appreciated!



If I use the Oxygen Style on linux the height of all lineEdits is not correct (its very narow).
Is it possibel to ship translations together with the source (like the qt translations)?


great widgets, thx :-)

wysota
23rd March 2009, 22:07
If I use the Oxygen Style on linux the height of all lineEdits is not correct (its very narow).
I'm aware of that but that's unfortunately a bug in Oxygen that's causing this. The problem is the bevel in line edits in Oxygen is treated as if it was inside the text box's rectangle and not outside.


Is it possibel to ship translations together with the source (like the qt translations)?

If there were such translations, they would probably be shipped. If you provide them, I'll be happy to include them in the next release.


great widgets, thx :-)
You're welcome :)

janus
23rd March 2009, 22:30
If there were such translations, they would probably be shipped. If you provide them, I'll be happy to include them in the next release.

Ok, i'll send you german translation file asap.

janus
24th March 2009, 08:36
Hi,

I have attached the german .ts file here (There is no mail address).

There are some missing tr tags in QwwRichTextEdit: bold, align etc.

samdyavic
1st April 2009, 20:33
I perform MAKE ALL and i received folowing error:


D:\sam\docs\agriculture\wwWidgets>make all
cd widgets\ && mingw32-make -f Makefile all
mingw32-make[1]: Entering directory `D:/sam/docs/agriculture/wwWidgets/widgets'
mingw32-make -f Makefile.Release all
mingw32-make[2]: Entering directory `D:/sam/docs/agriculture/wwWidgets/widgets'
mingw32-make[2]: Nothing to be done for `all'.
mingw32-make[2]: Leaving directory `D:/sam/docs/agriculture/wwWidgets/widgets'
mingw32-make -f Makefile.Debug all
mingw32-make[2]: Entering directory `D:/sam/docs/agriculture/wwWidgets/widgets'
g++ -c -g -Wall -frtti -fexceptions -mthreads -DUNICODE -DQT_LARGEFILE_SUPPORT -
DWW_BUILD_WWWIDGETS -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"c
:\Qt\2009.01\qt\include\QtCore" -I"c:\Qt\2009.01\qt\include\QtGui" -I"c:\Qt\2009
.01\qt\include" -I"qwwcolorbutton" -I"qwwcolorcombobox" -I"qwwconfigwidget" -I"q
wwhuesatpicker" -I"qwwhuesatradialpicker" -I"qwwlistwidget" -I"qwwlongspinbox" -
I"qwwnavigationbar" -I"qwwnumpad" -I"qwwrichtextbutton" -I"qwwtaskpanel" -I"qwwt
extspinbox" -I"qwwtipwidget" -I"qwwtwocolorindicator" -I"qwwfilechooser" -I"qwwl
oginbox" -I"qwwbuttonlineedit" -I"qwwclearlineedit" -I"qwwresetlineedit" -I"qwwr
ichtextedit" -I"qwwlistnavigator" -I"qwwled" -I"." -I"c:\Qt\2009.01\qt\include\A
ctiveQt" -I"debug" -I"." -I"c:\Qt\2009.01\qt\mkspecs\default" -o debug\qwwconfig
widget.o qwwconfigwidget\qwwconfigwidget.cpp
qwwconfigwidget\qwwconfigwidget.cpp: In member function `virtual bool QwwConfigW
idget::eventFilter(QObject*, QEvent*)':
qwwconfigwidget\qwwconfigwidget.cpp:299: error: `w' was not declared in this sco
pe
qwwconfigwidget\qwwconfigwidget.cpp:299: warning: unused variable 'w'
mingw32-make[2]: *** [debug/qwwconfigwidget.o] Error 1
mingw32-make[2]: Leaving directory `D:/sam/docs/agriculture/wwWidgets/widgets'
mingw32-make[1]: *** [debug-all] Error 2
mingw32-make[1]: Leaving directory `D:/sam/docs/agriculture/wwWidgets/widgets'
mingw32-make: *** [sub-widgets-all-ordered] Error 2

D:\sam\docs\agriculture\wwWidgets>



i'm using QT 4.5 open source with mingw
any ideas?

Thanks in advance.

wysota
1st April 2009, 23:27
Delete the line the compiler is complaining about or compile the library in release mode, the missing object reveals itself only in debug mode which you probably don't need anyway.

Oh...you're using Windows... so maybe you do need it, that's one of the downsides of using Qt and Windows together :)

AD
2nd April 2009, 21:50
Thank you for this library!

I have finded out a small errors. There are what does mean the word stylable , acompaniating ? Is the second word mean accompany?


I told about this library at the russian crossplatform forum and allocated description on there. Don't you mind?

crossplatform (http://www.forum.crossplatform.ru)
wwWidgets russian description (http://www.crossplatform.ru/node/879)

Thanks!

wysota
2nd April 2009, 23:14
Thank you for this library!
You're welcome.


There are what does mean the word stylable ,

Something that can be styled (its style (as in style-sheets or QStyle) can be manipulated)

acompaniating ? Is the second word mean accompany?
bundled with, coming together with.



I told about this library at the russian crossplatform forum and allocated description on there. Don't you mind?
No, of course not, be my guest.

AD
3rd April 2009, 06:28
You're welcome.

Something that can be styled (its style (as in style-sheets or QStyle) can be manipulated)

bundled with, coming together with.


Thanks!
Accompany is the synonym bundle with :)

wysota
28th May 2009, 22:03
wwWidgets version 0.9.6 has been released. It's mostly bugfix release that hopefully improves the process of installation of the widget set. Expect 0.9.7 to be released soon once I get some feedback about the changes. So in other words - if you have time and will, please test the library and post your comments.

pospiech
28th May 2009, 22:22
Just out of interest, did you get one of my private messages or email?
...
EDIT: Thank you for including the debug build on windows, I will test it the next days.

wysota
28th May 2009, 22:31
I did get some messages from you but I don't know if I got all of them. I sent you a reply or two but I don't know if they reached you.

Cheers!

pospiech
29th May 2009, 10:02
It does not compile (nothing changed to the make files, just qmake + nmake):



link /LIBPATH:"c:\Programme\Qt\msvc\4.5.1\lib" /NOLOGO /INCREMENTAL:NO /
LTCG /DLL /MANIFEST /MANIFESTFILE:"release\wwwidgetsplugin.intermediate.manifest
" /OUT:release\wwwidgetsplugin.dll @C:\DOKUME~1\Matthias\LOKALE~1\Temp\nm4ED.tmp

LINK : fatal error LNK1181: Eingabedatei "wwwidgets4d.lib" kann nicht geöffnet w
erden.
NMAKE : fatal error U1077: ""C:\Programme\Microsoft Visual Studio 8\VC\BIN\link.
EXE"": Rückgabe-Code "0x49d"
Stop.
NMAKE : fatal error U1077: ""C:\Programme\Microsoft Visual Studio 8\VC\BIN\nmake
.exe"": Rückgabe-Code "0x2"
Stop.
NMAKE : fatal error U1077: "cd": Rückgabe-Code "0x2"
Stop.


so, he does not find 'wwwidgets4d.lib'


which indeed is inpossible, since in debug folder the lib is called 'wwwidgets4.lib'

janus
29th May 2009, 16:50
Hi, I get a similar error with XP/MinGW


C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\ mingw32\bin\ld.exe: cannot find -lwwwidgets4d
collect2: ld returned 1 exit status
mingw32-make[2]: *** [release\wwwidgetsplugin.dll] Error 1
mingw32-make[2]: Leaving directory `C:/wwWidgets-0.9.6/wwWidgets/plugin'
mingw32-make[1]: *** [release] Error 2
mingw32-make[1]: Leaving directory `C:/wwWidgets-0.9.6/wwWidgets/plugin'
mingw32-make: *** [sub-plugin-sub_Release_ordered] Error 2

wysota
29th May 2009, 17:08
Compile the plugin in release mode only. What's the dll called, by the way?

janus
29th May 2009, 17:20
Thats what I did: "make release"

After removing

-L../widgets/debug -lwwwidgets4d
from the makefile it compiled. I didn't put it there ;)

pospiech
29th May 2009, 19:53
The widgets.pro skript is missing the target for the debug mode. Adding the following fixed it for me:


win32 {
CONFIG(release, debug|release): TARGET = wwwidgets4
CONFIG(debug, debug|release): TARGET = wwwidgets4d
}

wysota
29th May 2009, 20:14
I changed "win32" to "unix" in line 36 of the file to test it on unix and forgot to switch it back :-) If you change "unix" to "win32" everything should work.

bunjee
31st May 2009, 11:58
Great tool,

Anyone knows about this:
http://www.qtcentre.org/forum/f-qt-programming-2/t-qtscript-wwwidgets-21269.html

Thanks.

janus
7th June 2009, 13:47
wwwidgets 0.9.6

I am using uiloader and suddenly (did not happen before 0.9.6) the wwwidgets menu appears in my app. But in this one I do not even use wwwidgets. I guess uiloader scanns the designer plugin path and initializes wwwidgets menu if wwwidgets plugin is found regardless of weather it is used or not. I have seen that you have put the menu initialization in wwwidgets.cpp instead of qwwtaskpanelinterface. Is this behaviour intended?

wysota
7th June 2009, 16:03
No, it's intended to popup in Designer and Creator :) You can disable it in wwwidgets.cpp.

pospiech
28th July 2009, 13:30
.pro files are broken again.

I compiled from scratch, latest version and get the error that 'wwwidgets4d' is not found. This happens at compilation of the plugin

This is true, since the debug version is _not_ compiled as 'wwwidgets4d', but without the 'd'.

Matthias

wysota
28th July 2009, 13:32
Then don't compile the plugin in debug mode. What do you need it for anyway? Do you have Designer compiled in debug mode? It is only useful for the widget library to be in debug (and release) mode.

pospiech
28th July 2009, 14:15
Then don't compile the plugin in debug mode. What do you need it for anyway? Do you have Designer compiled in debug mode? It is only useful for the widget library to be in debug (and release) mode.

I did not compile debug mode. I did not even touch the .pro files. I only called qmake and nmake. If it compiles in debug mode, then because of the .pro file settings.

wysota
28th July 2009, 14:46
Is there a "CONFIG-=debug" statement in your plugin.pro?

pospiech
28th July 2009, 15:41
Is there a "CONFIG-=debug" statement in your plugin.pro?
No.

BTW: if I am not logged in and are redirected after the login, the URL is wrong:


http://www.qtcentre.org/forum//forum//forum/newreply.php?do=newreply&p=111392

wysota
28th July 2009, 16:20
No.
Hmm... you're using wwWidgets 0.9.6? Strange... A... true... the fix was made after 0.9.6 was released. Add the entry and see if it helps.


BTW: if I am not logged in and are redirected after the login, the URL is wrong:
http://www.qtcentre.org/forum/project.php?issueid=2

hendrik
29th July 2009, 14:17
When I use a qwwfilechooser I would like to get a signal whenever the editing of the path is finished, because I have to set a directory variable in an included class, which can not access the widget itself.
Is this possible?

wysota
29th July 2009, 14:52
QLineEdit::editingFinished()

bunjee
4th September 2009, 16:47
Wysota,

Any plan changing your wwWidgets licence to LGPL ?

If not, the following is obsolete:

Licensing

wwWidgets is available under dual licence (just like Qt itself) – GPL for Open Source development and Commercial licence for other users. If you want to purchase a commercial licence, please contact me by sending an email to wwwidgets<at>wysota.eu.org.

wysota
4th September 2009, 17:34
It's not obsolete. It's not up to date at most :)

I'm not planning to change the licence. I didn't sell a single commercial licence so I imagine interest in using my work in closed source projects is marginal. Thus I don't see the point to switch to LGPL.

nish
5th September 2009, 01:39
but some ppl must be using your code in commercial apps they just dont tell.

wysota
5th September 2009, 01:59
but some ppl must be using your code in commercial apps they just dont tell.

They don't care about the licence, so changing the licence would be no change for them at all. And I still hope there are decent people in the world.

bunjee
5th September 2009, 11:46
This is a pretty good collection,
Very surprising nobody bought a commercial license.

If I was doing this I would switch to LGPL + Donations (for the host).

If you help someone to develop a commercial product he will much likely contribute / donate afterward.

GPL is no good for paying the rent.

wysota
5th September 2009, 11:51
If I was doing this I would switch to LGPL + Donations (for the host).

I didn't receive a single donation as well :) And so didn't QtCentre although I'm sure it helps many people.

bunjee
5th September 2009, 12:00
Helping ?

That's the single most useful Qt community site.

bunjee
5th September 2009, 12:09
I didn't receive a single donation.

It's because you have a commercial thinking:
"Pay now, use after."

What works with LGPL is:
"Use now, make profit, pay after."

As for receiving no donations for QtCentre, I find this shocking.

wysota
5th September 2009, 12:20
It's because you have a commercial thinking:
"Pay now, use after."
The package is dual licenced. You can "try now" (GPL), "pay later", "make money afterwards" (commercial).


As for receiving no donations for QtCentre, I find this shocking.

Well... I won't comment on that :)

hkvm
6th September 2009, 19:54
These widgets are very nice. Something like QwwFileChooser should totally be included in Qt, I use my own for almost every app.

A widget I'd like to see is one from KDE, similar to QwwClearLineEdit, see pictures from Amarok in attachment.

Basically it's a LineEdit with a clear button, (optional) label and an (optional) extra button on the right, the LineEdit displays useful help-text in color similar to background. When you click into the LineEdit the help-text disappears and you can write in it like usual -- you can't interact with the help-text, it just gets out of the way as soon as the LineEdit gets focus. If you leave the LineEdit empty the help-text reappears when the widget loses focus. Very slick :).

bunjee
7th September 2009, 09:22
Well... I won't comment on that :)

Where's the donate button on QtCentre Home ?

wysota
7th September 2009, 10:11
Hmm... I can't find the link directly on the home page (maybe it vanished during some cleanup or I'm just too tired to notice it), so here is a direct link:

http://www.qtcentre.org/foundation-donation
There is no link to paypal but if you use the address on the page mentioned, the paypal account is assigned to it. Of course you can use bank transfer as well.

BTW. This is highly offtopic.

nish
7th September 2009, 10:24
They don't care about the licence, so changing the licence would be no change for them at all. And I still hope there are decent people in the world.

actually it works this way.... a poor junior programmer is assigned to code a small module (a widget for example), as the thumb rule.. we all go to google to see if we are reinventing the wheel.. now he finds some code in internet which is exactly or similar to the requirment... now this junior programmer (in fact junior/senior doesn't matter).. modifies/copies the code and submit the weekly status report to his manager..

the point is, for very small libraries, one should never expect a return.

wysota
7th September 2009, 10:49
It doesn't always work like that. In our company we're paying attention to licencing schemes.

nish
8th September 2009, 02:05
hmm.. i thought you were a freelancer... may be i have not checked the wysota's blog for a long time..:)

yogeshgokul
8th September 2009, 07:38
actually it works this way.... a poor junior programmer is assigned to code a small module (a widget for example), as the thumb rule.. we all go to google to see if we are reinventing the wheel.. now he finds some code in internet which is exactly or similar to the requirment... now this junior programmer (in fact junior/senior doesn't matter).. modifies/copies the code and submit the weekly status report to his manager..
the point is, for very small libraries, one should never expect a return.
Cool, :D you seems to be biggest victim of project leaders. ;)
On topic: If you will possess too many constraint for using a technology then people will not use that. So the popularity is main concern when someone gives something for free.
Even some companies have been using free version of Qt itself for commercial apps, so whats the expectation for qt apps. Now Nokia want to spread the Qt so it came up with LGPL license.

bunjee
8th September 2009, 09:26
That's kind of My point :

If you don't get money with wwWidget, make it spread as much as possible with LGPL.

At best you'll get contributors + donations.
At worst you'll make someone happy.

wysota
8th September 2009, 09:35
I'm already spreading my knowledge under BSD :)

bunjee
8th September 2009, 09:44
I'm already spreading my knowledge under BSD :)

True. The future of wwWidgets is up to you :-).

KL-7
13th September 2009, 12:42
I have a problem with this widget-pack.. Hope you'll help me :D
I use WinXP + MinGW + Qt 4.6

I downloaded archive, unpacked it...
I had to replace "unix" with "win32" in 36 line of widgets.pro (without that there was an error while compiling).
Then qmake make and make install and everything compiled successfully.

I tried to compile this simple code:

#include <QApplication>
#include <QwwButtonLineEdit>

int main(int argc, char **argv) {
QApplication app(argc, argv);
QwwButtonLineEdit edit;
edit.show();
return app.exec();
}

But I received an error:

release/window.o: window.cpp:(,text+0x376): undefined reference to 'QwwPrivatable::~QwwPrivatable()'

I receive this error while compiling buttonlineedit example. But at the same time I can build colorpicker example and I can use .ui forms with buttonlineedit.

How can I solve this problem?

wysota
14th September 2009, 08:12
It builds just fine for me... What exactly did you do to compile it (step by step)?

KL-7
14th September 2009, 13:49
1. qmake -project
2. add "CONFIG += wwwidgets" to the .pro file
3. qmake
4. make release
(It works perfect for colorpicker example even if I dont use your colourpicker.pro file)

Maybe the problem is that I've been trying to install wwwidgets for several time and only after editing widgets.pro I managed to install them successfully.
How can I totally uninstall wwwidgets for futher reinstalling? I can find all the files related to wwwidgets, but may be there are some configs in Qt files that I should edit?
It would be better if I can solve the problem without reinstalling Qt...

Anyway thank you very much. Yesterday after reading your sources I managed to implement my own light version of ButtonLineEdit inherited from QLineEdit... It works fine. =)
And I plan to read your sources more to understand the pImpl ideas of wwwidgets and Qt.

wysota
14th September 2009, 17:51
wwWidgets doesn't require any uninstallation steps - just delete its files.

As for the compilation, try compiling the example without any changes.

AD
22nd September 2009, 12:08
Thanks for this product! :)

pospiech
17th January 2010, 09:55
I have the same error about "QwwPrivatable", but in my case it is about compiling the widgetgallery example. The other examples compile.
The error is:


release/main.o:main.cpp:(.text+0x87): undefined reference to `QwwPrivatable::~QwwPrivatable()'

compiled with Qt SDK 2009-05 (Qt 4.6.0, mingw with gcc 4.4)

I had to patch the .pro file for the examples, because they would never compile without these additional lines:


INCLUDEPATH += ../../../../../include/qt/wwwidgets \

CONFIG += release
CONFIG -= debug

LIBS += -lwwwidgets4 -L../../widgets/release


Any idea?

wysota
17th January 2010, 10:29
If I find some time, I'll try to fix those problems with examples.

pospiech
17th January 2010, 11:11
If I find some time, I'll try to fix those problems with examples.

Any general idea where the error comes from? I looked into the dll but could not find any function name including
'QwwPrivatable' - which would explain the error. However the pro file code contains the necessary files as far as I
can see.

EDIT:
With Visual Studio Compiler this error does not appear.

pospiech
17th January 2010, 23:01
The widgetgallery ui does not look correct, or in other words the widgets do not seem to work as expected. Happens both with Visual Studui 2005 and 2008. Tested with Qt 4.6.0

The ColorCombobox has no function, the buttons text only after they have been clicked and the lineheight is only correct in ButtonLineEdit.

A Screenshot is attached.

wysota
17th January 2010, 23:45
The set has not been tested with Qt 4.6, so I can't guarantee the current version will work there.

pospiech
2nd February 2010, 14:33
I experience that 'editingFinished ()' from the filechooser class is emitted twice.
Any idea why or how to check only once that the content has changed?

(using latest wwwidgets with Qt 4.5.2)

wysota
2nd February 2010, 17:46
I experience that 'editingFinished ()' from the filechooser class is emitted twice.
In what situation? When choosing the file using the button or entering it manually?

pospiech
2nd February 2010, 18:22
In what situation? When choosing the file using the button or entering it manually?
Choosing using the button.

wysota
2nd February 2010, 19:30
The signal is emitted by QLineEdit when the widget loses focus. So if the widget has focus and you press the button, it loses focus and the button gains it. When the path is set into the line edit it probably gains focus somehow (through the completer maybe?) and you focus out of it again, the signal is emitted again.

A solution would probably be to forbid the button from having the focus at all. At least that's my guess, I'm not emitting this signal myself anywhere.

wysota
1st June 2010, 22:48
Hello people!

wwWidgets version 0.9.7 has been released.

Changes:

compilation problems on Windows (hopefully) resolved
fixes against Qt 4.6 (missing texts, wrong line edit sizes, etc.)
minor bug fixes and functionality extensions (focus policy for buttons in QwwButtonLineEdit, new signals in QwwNavigationBar)
NEW binary installer for MinGW
NEW translation files for wwWidgets available


This release is one of the final preparation steps before 1.0 release.

Source and binary downloads available at http://www.wysota.eu.org/wwwidgets.

All feedback, as always, is welcome. If anyone can test installation on Mac (I don't have one so I can't do it myself), I'd be grateful.

qdm
25th June 2010, 04:24
wysota:

It looks like I posted this in the wrong forum, so I will post it here as well.

I just downloaded the wwWidgets from wysota's website: another nice set of widgets I wanted to add
to the ones already on my arsenal, including qxt and qwt (some people really do good work out
there). After issuing "qmake at the command line, however, I get the following warnings:

WARNING: Failure to find: widgets/qwwbreadcrumb/qwwbreadcrumb.cpp
WARNING: Failure to find: widgets/qwwbreadcrumb/qwwbreadcrumb.h

Ignoring them and just issuing a "make" regardless of the warnings above leads
to:

cd widgets/ && /usr/local/Trolltech/Qt-4.7.0/bin/qmake /usr/local/Trolltech/Qt-4.7.0/solutions/wwWidgets/widgets/widgets.pro -o Makefile
cd plugin/ && /usr/local/Trolltech/Qt-4.7.0/bin/qmake /usr/local/Trolltech/Qt-4.7.0/solutions/wwWidgets/plugin/plugin.pro -o Makefile
WARNING: Failure to find: qwwbreadcrumb/qwwbreadcrumb.cpp
WARNING: Failure to find: qwwbreadcrumb/qwwbreadcrumb.h
WARNING: Failure to find: qwwbreadcrumbiface.cpp
WARNING: Failure to find: qwwbreadcrumbiface.h
WARNING: Failure to find: qwwbreadcrumb/qwwbreadcrumb.cpp
WARNING: Failure to find: qwwbreadcrumb/qwwbreadcrumb.h
cd widgets/ && make -f Makefile
make -f Makefile.Debug
/usr/local/Trolltech/Qt-4.7.0/bin/uic qwwloginbox/loginbox.ui -o .ui/ui_loginbox.h
make[2]: *** No rule to make target `qwwbreadcrumb/qwwbreadcrumb.cpp', needed by `.obj/qwwbreadcrumb.o'. Stop.
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [debug] Error 2
make: *** [sub-widgets-make_default-ordered] Error 2

To me, it looks like the source package lacks those two files, or the project configuration
files need some updating regarding dependencies.

Has anyone come across this issue and has some advice on how to fix it?

Thank you,
qdm

qdm
25th June 2010, 04:27
wysota:

I forgot to add that that happens on a Mac Book Pro and Qt compile in 64 bit mode (not that it should make a big difference, but just in case (it looks like you got some feedback from a Mac user...) :)

qdm

wysota
25th June 2010, 06:08
See http://www.qtcentre.org/threads/31918-wwWidgets-fails-to-complie?p=148740#post148740

qdm
25th June 2010, 23:12
wysota:

Maybe it would help the troubleshooting to know that the "widgets/wwwidgets4.framework" directory contains a "wwwidgets4_debug"
subdirectory, but I can't see any of the corresponding release versions. I think that the plugin tries to link to the release version
of the libraries (wwwidgets4), but it fails to link them simply because they don't exist?

Best regards,
qdm

wysota
8th July 2010, 14:19
Try adding CONFIG+=build_all to widgets/widgets.pro and rebuild the widgets subproject.

wysota
8th July 2010, 20:18
wwWidgets 0.9.9 released. Contains mostly compilation fixes (the last ones, hopefully). Last release in preparation for 1.0.0 scheduled for September. Testing is welcome.

pavanbarot
2nd August 2010, 07:33
Hello,
i need help! please reply my thread...

I can install MinGw executable file in my Qt SDK... i got all the widget by wwWidgets in Qt Designer....
But i can't find any Single wwWidgets in Qt Creator......
Please tell me i need that Plugins in QtCreator tell me all that Steps...

saa7_go
3rd August 2010, 15:50
QtCreator provided by Nokia is built using MS Visual Studio, and i assume you built wwWidgets using GCC(mingw), so it is not compatible. If you want to be able to use wwWidgets in QtCreator, you must download QtCreator source code, then buid it, and run your new QtCreator.

wysota
2nd January 2011, 17:12
wwWidgets 1.0 has been released today.

The update is focused mostly on installation - you can either download the sources and build the set yourself or you can use one of the three available installers for 32 bit Windows. The installer for QtSDK contains the widget set and plugin built for MinGW but also files needed to provide a plugin for the default Creator installation (built using MSVC 2008). For download go to http://www.wysota.eu.org/wwwidgets

Future versions will contain updates to already existing widgets but the main focus will be put on providing new widgets. First in line are an image viewer widget, a series of spinboxes for inputting different sets of data (such as IPV4, IPV6, Latitude, Longitude), a label with moving text (marquee) and a highly customizable set of widgets for displaying tiled maps. Of course suggestions of improvements and ideas for interesting widgets are welcome.

pospiech
2nd January 2011, 17:54
Future versions will contain updates to already existing widgets but the main focus will be put on providing new widgets. First in line are an image viewer widget, a series of spinboxes for inputting different sets of data ... Of course suggestions of improvements and ideas for interesting widgets are welcome.

I have once been working on a useful input for scientific double values such as 1.25e-15 fs which is impossible with the standard double spinbox:
http://www.matthiaspospiech.de/blog/2009/01/03/qt-spinbox-widget-with-scientific-notation/

If you could consider this idea as one of your future widgets I would be very glad since I have not the time to work or maintain it, but many people would like to have it.

pkohut
2nd January 2011, 20:14
Future versions will contain updates to already existing widgets but the main focus will be put on providing new widgets. First in line are an image viewer widget, a series of spinboxes for inputting different sets of data (such as IPV4, IPV6, Latitude, Longitude), a label with moving text (marquee) and a highly customizable set of widgets for displaying tiled maps. Of course suggestions of improvements and ideas for interesting widgets are welcome.

From past experience, the engineers I work with prefer HDMS input as a single edit window with validation. Having separate edit boxes and/or spin boxes for HDMS fields when entering data is a pain for them and did not offer cut and paste capabilities of other data sources.

The input source data could be in any number of formats such as -
48:22:59.73249N, 72:12:38.32104W
N48:22:59.73249, W72:12:38.32104
N 48.22.59.73249, W 72.12.38.32104
48-22-59.73249, -72-12-38.32104

48:22:59.73249S, 72:12:38.32104E
S48:22:59.73249, E72:12:38.32104
-48:22:59.73249, 72:12:38.32104

Usually input data (from various agencies) had separators of space ' ', minus'-', colon ':', period ','. In the end I implemented latitude and longitude edit boxes that allowed for the input of any combination from above, for latitudes -
-48.22-59:73249 would be normalized to the company standard of
S 48 22 59.73249
and allows easy pasting to Excel spread sheets.

Here is sample test suite data from the FAA to compute a WGS84 ellipsoid arc intercept. The last four fields are the expected computed results, and the prior fields are the input data.

#Test Identifier,Arc 1 Center Latitude,Arc 1 Center Longitude,Arc 1 Radius,Arc 2 Center Latitude,Arc 2 Center Longitude,Arc 2 Radius,Intersection 1 Latitude,Intersection 1 Longitude,Intersection 2 Latitude,Intersection 2 Longitude
test1,40:10:24.50000N,70:12:45.60000W,100.0,52:04: 35.80000N,68:12:40.70000W,270.0,N/A,N/A,N/A,N/A
test2,40:10:24.50000N,70:12:45.60000W,500.0,42:04: 35.80000N,68:12:40.70000W,10.0,N/A,N/A,N/A,N/A
test3,0:00:00.00000N,0:00:00.00000E,150.0,0:00:00. 00000N,4:59:27.60000W,150.0,0:00:36.09395S,2:29:43 .80000W,0:00:36.09395N,2:29:43.80000W
test4,40:10:24.50000N,70:12:45.60000W,500.0,52:04: 35.80000N,68:12:40.70000W,270.0,48:22:59.73249N,72 :12:38.32104W,47:52:02.19529N,65:45:38.36390W
test5,40:10:24.50000N,70:12:45.60000W,500.0,52:04: 35.80000N,68:12:40.70000W,500.0,46:29:29.71744N,77 :40:33.97739W,45:10:28.61546N,61:09:37.26553W
test6,40:10:24.50000N,70:12:45.60000W,500.0,52:04: 35.80000N,68:12:40.70000W,1000.0,36:14:44.69990N,6 0:52:32.48344W,37:48:21.06721N,80:28:07.28278W
test7,40:10:24.50000N,70:12:45.60000W,500.0,52:04: 35.80000N,68:12:40.70000W,1200.0,32:04:17.90465N,6 7:44:28.29488W,32:37:16.67926N,74:36:44.61637W
test8,40:10:24.50000N,70:12:45.60000W,500.0,52:04: 35.80000N,68:12:40.70000W,1300.0,N/A,N/A,N/A,N/A
test9,40:10:24.50000N,70:12:45.60000W,500.0,52:04: 35.80000N,68:12:40.70000W,10.0,N/A,N/A,N/A,N/A

wysota
2nd January 2011, 21:30
Thanks for the info, I will certainly make use of it. Currently the widget supports °, ' and '' as delimiters but I don't see a reason why more formats wouldn't be supported. Here is a screenshot.

5675

Each section is managed in an independent fashion (copy & paste works fine) and in general implementing your own widget with your own validation, delimiters and sections is just several lines of code.

petrusPL
26th July 2011, 22:40
I have problem with instalation in new Qt SDK. They change system files and folders and i think that wwWidgets dont install correctly. I dont have any new widget in qt creator designer mode (i dont try compile anything becouse i was afraid to destroy something :P)

Can you check this ?

There is also a good chance that I'm doing something wrong :P

banlinhtienphong
27th August 2011, 04:41
I'm use QtCreator to build wwWidgets but have an error:
corrupted or invalid file QtGuid44.dll
help me please

wysota
27th August 2011, 07:07
I'm use QtCreator to build wwWidgets but have an error:
corrupted or invalid file QtGuid44.dll
help me please

I don't think this is related to wwWidgets in any way.

banlinhtienphong
27th August 2011, 11:03
I'm newbie.after built I have wwwidgets4d.dll and wwwidgets4d.lib and in the code I use
#include <QwwFileChooser> but when built project have error: cannot open include file no such file or directory. Please help me fix this problem.thank in advance!

wysota
27th August 2011, 14:04
Did you follow the instructions?

banlinhtienphong
27th August 2011, 16:13
thank you! I already fix this problem but spend a lot of time much

wysota
27th August 2011, 18:51
Sometimes reading manuals really pays off.

thefatladysingsopera
6th October 2011, 23:15
Hello Wysota,i asked a question on how to get input from wwrichtextedit on the newbie section.I still don't know how to get the input.

wysota
7th October 2011, 20:12
It's a subclass of QTextEdit so you can query the text the same way you would for QTextEdit.