Results 1 to 1 of 1

Thread: qt script signal handler

  1. #1
    Join Date
    Jun 2010
    Posts
    38
    Thanks
    3
    Qt products
    Qt4
    Platforms
    Windows

    Default qt script signal handler

    Recent I look at the "qt script signal handler",This project available creating signal in qt script.

    this is some code they provide.

    Script-to-script

    Qt Code:
    1. SignalBaseClass = function() {
    2. this.test = "signalBaseClass";
    3. this.baseSignal = signal();
    4. this.intSignal = signal();
    5. };
    6. SignalBaseClass.prototype.emitBaseSignal = function() {
    7. this.baseSignal.emit("emitBaseSignal from " + this.test);
    8. };
    9. SignalBaseClass.prototype.emitBaseSignal2 = function() {
    10. this.baseSignal.emit("emitBaseSignal2 from " + this.test);
    11. };
    12. SignalBaseClass.prototype.emitBaseIntSignal = function() {
    13. this.intSignal.emit(123);
    14. };
    15.  
    16. testSlot = function() {
    17. print("testSlot arguments count: " + arguments.length);
    18. for (var i = 0; i < arguments.length; ++i)
    19. print("testSlot first argument: " + arguments[i]);
    20. };
    21.  
    22. SlotClass = function() {
    23. this.name = "slotClass";
    24. };
    25.  
    26. SlotClass.prototype.slot = function() {
    27. print(this.name + " slot arguments count: " + arguments.length);
    28. for (var i = 0; i < arguments.length; ++i)
    29. print(this.name + " argument(" + i + ") " + arguments[i]);
    30. };
    31. baseObject = new SignalBaseClass();
    32. slotObject = new SlotClass();
    33. baseObject.intSignal.connect(testSlot);
    34. baseObject.emitBaseIntSignal();
    35.  
    36. signalObject = new SignalClass();
    37. signalObject.baseSignal.connect(testSlot);
    38. signalObject.newSignal.connect(slotObject, slotObject.slot);
    39. signalObject.emitNewSignal();
    To copy to clipboard, switch view to plain text mode 

    Script-to-cpp

    Qt Code:
    1. // Load translation file
    2. QTranslator trans;
    3. trans.load("qtscriptsignalhandler_" + QLocale::system().name(), QLibraryInfo::location(QLibraryInfo::TranslationsPath));
    4. app.installTranslator(&trans);
    5.  
    6. QLineEdit lineEdit4(0);
    7. lineEdit4.setWindowTitle("4C++ LineEdit");
    8. lineEdit4.show();
    9.  
    10. qScriptConnect(engine.globalObject().property("baseObject"), "baseSignal", &lineEdit4, SLOT(setText(QString)));
    11.  
    12. engine.evaluate("baseObject.emitBaseSignal();");
    13.  
    14. qScriptDisconnect(engine.globalObject().property("baseObject"), "baseSignal", &lineEdit4, SLOT(setText(QString)));
    15.  
    16. engine.evaluate("baseObject.emitBaseSignal2();");
    To copy to clipboard, switch view to plain text mode 


    the function qScriptDisconnect(). will lead to errors cause the parameter.
    Last edited by wookoon; 5th July 2010 at 12:40.

Similar Threads

  1. Qt script signal handler
    By asvil in forum Qt-based Software
    Replies: 0
    Last Post: 17th April 2010, 11:42
  2. Can I include a script from script?
    By yycking in forum Qt Programming
    Replies: 1
    Last Post: 24th April 2009, 03:01
  3. Qt PDF image handler
    By wysota in forum Qt-based Software
    Replies: 0
    Last Post: 5th April 2009, 09:37
  4. mouse handler
    By ahmedKhaled in forum Qt Programming
    Replies: 0
    Last Post: 3rd February 2009, 08:44
  5. event handler
    By mattia in forum Newbie
    Replies: 10
    Last Post: 8th November 2007, 12:54

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.