Qt: signals of DateTimeEdit?

H

Hadmut Danisch

Hi,

I'm just writing an application with ruby Qt and tried to connect a
signal from a DateTimeEdit widget.

The Qt doc says it has a signal

void QDateTimeEdit::valueChanged ( const QDateTime & datetime ) [signal]


Unfortunately, ruby Qt just comes with some examples, no Docs.

How would that signal be named? Whatever I tried so far, I always get
the error message

QObject::connect: No such signal Qt::DateTimeEdit::valueChanged()


How would I list the available slots and signals?


Hadmut
 
R

Richard Dale

Hadmut said:
Hi,

I'm just writing an application with ruby Qt and tried to connect a
signal from a DateTimeEdit widget.

The Qt doc says it has a signal

void QDateTimeEdit::valueChanged ( const QDateTime & datetime ) [signal]


Unfortunately, ruby Qt just comes with some examples, no Docs.

How would that signal be named? Whatever I tried so far, I always get
the error message

QObject::connect: No such signal Qt::DateTimeEdit::valueChanged()
You need a type signature of 'const QDateTime&' in the string passed to
SIGNAL() like this:

require 'Qt'

class DateShow < Qt::Object
slots 'dateChanged(const QDateTime&)'

def dateChanged(date)
puts "date: %s" % date.toString
end
end

app = Qt::Application.new(ARGV)
date_edit = Qt::DateTimeEdit.new()
show_date = DateShow.new
Qt::Object.connect( date_edit,
SIGNAL('valueChanged(const QDateTime&)'),
show_date,
SLOT('dateChanged(const QDateTime&)') )
app.setMainWidget(date_edit)
date_edit.show
app.exec
How would I list the available slots and signals?
Use Qt::MetaObject.slotNames() and signalNames() methods:

irb(main):002:0> d = Qt::DateTimeEdit.new
=> #<Qt::DateTimeEdit:0x3044a9a0 name="unnamed", x=256, y=230, width=512,
height=307>
irb(main):003:0> d.metaObject.signalNames(true)
=> ["destroyed()", "destroyed(QObject*)", "valueChanged(const QDateTime&)"]
irb(main):004:0> d.metaObject.slotNames(true)
=> ["deleteLater()", "cleanupEventFilter(QObject*)", "setEnabled(bool)",
"setDisabled(bool)", "setCaption(const QString&)", "setIcon(const
QPixmap&)", "setIconText(const QString&)", "setMouseTracking(bool)",
"setFocus()", "clearFocus()", "setUpdatesEnabled(bool)", "update()",
"update(int,int,int,int)", "update(const QRect&)", "repaint()",
"repaint(bool)", "repaint(int,int,int,int)",
"repaint(int,int,int,int,bool)", "repaint(const QRect&)", "repaint(const
QRect&,bool)", "repaint(const QRegion&)", "repaint(const QRegion&,bool)",
"show()", "hide()", "setShown(bool)", "setHidden(bool)", "iconify()",
"showMinimized()", "showMaximized()", "showFullScreen()", "showNormal()",
"polish()", "constPolish()", "close()", "raise()", "lower()",
"stackUnder(QWidget*)", "move(int,int)", "move(const QPoint&)",
"resize(int,int)", "resize(const QSize&)", "setGeometry(int,int,int,int)",
"setGeometry(const QRect&)", "adjustSize()", "focusProxyDestroyed()",
"setDateTime(const QDateTime&)", "newValue(const QDate&)", "newValue(const
QTime&)"]

-- Richard
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,743
Messages
2,569,478
Members
44,899
Latest member
RodneyMcAu

Latest Threads

Top