SwiftlyTilting: usability, reusability

Saturday, October 2, 2010

New version of Winbinder, the PHP extension for making Windows Apps, released

New version of WinBinder… with some actual NEW FEATURES

Download WinBinder 2010.10.01
Downloaded 713 times
Tutorial on getting started
Winbinder Forum

This is a list of all changes since 0.46.190.

  • PHP 5.3 compatible
  • Unicode support added
  • Removed version checking from wb_windows.inc.php
  • Fixed memory leak in winapi library calls
  • Fixed bug where maximize wasn’t triggering WBC_RESIZE
  • Fixed bug where closing child windows would kill main window
  • Added WBC_NOHEADER style for ListView to disable the listview column header
  • Added WBC_MULTISELECT style for ListBox to that you can select more than one item
  • Added WBC_DEFAULT style to PushButton to make them display as the default button
  • ListView will respond to right clicks and fire WBC_RBUTTON
  • Window callback will pass WBC_GETFOCUS as an event when the window is focused
  • Window callback will respond to WM_HOTKEY(windows message) (experimental)
    New functions for use with the low level Windows API. These functions return pointers to callback functions, which are needed by certain WinAPI functions. The callback functions will send windows messages to the main Winbinder callback function, which will then trigger your PHP based callback function(s).

    • wb_get_midi_callback returns a pointer to MidiOutProc (can also be used for MidiInProc, WaveInProc, WaveOutProc or any similar callback) for use with functions like midiOutOpen
    • wb_get_enum_callback returns pointer to EnumWindowProc
    • wb_get_hook_callback returns a pointer to HookProc for use with various hooks.[/list][/list]

Finally got the time to merge my changes with Winbinder 0.5.0.. thanks to Ermac and Alec for their contributions to that version.

C source is included in the ZIP


6 Comments Leave Comment

Very interesting.. but I don’t get the differences with Winbinder 0.5.0 and new WinBinder 2010.10.01. I thought WinBinder 2010.10.01 was just a newer version of 0.5.0. From what I read they’re instead from different sources?

Did I loose something?

More important. I couldn’t see what I would have liked: DRAG AND DROP support? Do you know if it will be ever supported? It could be very usefull.

Regards.

Luca

Comment by Luca — Monday, October 4, 2010 @ 7:44 am

what do you mean by drag and drop support, like a file gets dragged onto a control? I’ll try to see if i can add that

2010.10.01 merges all of my changes with 0.5.0

0.5.0 only had the first two items:
# PHP 5.3 compatible
# Unicode support added

These are the changes in 2010.03.14
# Fixed memory leak in winapi library calls
# Fixed bug where maximize wasn’t triggering WBC_RESIZE
# Fixed bug where closing child windows would kill main window
# New functions for use with the low level Windows API. These functions return pointers to callback functions, which are needed by certain WinAPI functions. The callback functions will send windows messages to the main Winbinder callback function, which will then trigger your PHP based callback function(s).

* wb_get_midi_callback returns a pointer to MidiOutProc (can also be used for MidiInProc, WaveInProc, WaveOutProc or any similar callback) for use with functions like midiOutOpen
* wb_get_enum_callback returns pointer to EnumWindowProc
* wb_get_hook_callback returns a pointer to HookProc for use with various hooks.[/list][/list]

And these are the changes added specifically in 2010.10.01
# Removed version checking from wb_windows.inc.php
# Added WBC_NOHEADER style for ListView to disable the listview column header
# Added WBC_MULTISELECT style for ListBox to that you can select more than one item
# Added WBC_DEFAULT style to PushButton to make them display as the default button
# ListView will respond to right clicks and fire WBC_RBUTTON
# Window callback will pass WBC_GETFOCUS as an event when the window is focused

Comment by swiftlytilting — Wednesday, October 6, 2010 @ 2:40 am

>what do you mean by drag and drop support,
>like a file gets dragged onto a control?

Exactly!

Sometime ago, I wrote (a really bad interface) to openssl to verify *.p7m signed files. It would have been great to use it dragging signed files on some control (like frame area or whatever other control) in order to retrieve filepath and run something with this dragged file (like openssl)!

>I’ll try to see if i can add that

That would be REALLY GREAT, I found some staff online but it used to run only on a specific php V.5.0.5 if I recall correctly modified from an italian guy!

Another missing thing is that I’m not able to SET a checkBox as checked via PHP :(
Of course it works via mouse click but sometimes that’s not enough.
Im trying to extend the PHC compiler functionalities (I’m at phc V0.3.6) adding some more features like an easier interface with a compile button and some compile options.

I added a .config file which is read at start and some settings are retrieved from it. Everything works. I retrieve last 5 files compiled (sort of history) but I’m not able to set a checkbox as checked programmatically. I can read it’s state but I wasn’t able to set it checked (or true). I really don’t know though if that’s because of my ignorance on Winbinder 2010/and /or WbObjects 0.70 (I tried both).

I hope this is not off topics here.. but I wish it can help in getting an increasingly better product (which is anyway very nice piece of software)!

Luca

Comment by Luca Regoli — Friday, October 15, 2010 @ 11:48 am

you use wb_set_value to enable a checkbox

// plain winbinder
wb_set_value($checkbox, true);

// how it works in wbOO
// probably how it works in wbobjects
$checkbox->setValue(true);

Comment by swiftlytilting — Saturday, October 16, 2010 @ 5:36 pm

Thank you for the suggestions, but I already tried:
wb_set_value($cb_UpxCompress, true);
and
$cb_UpxCompress->setValue(true)
and even:
wb_set_value($main->UpxCompress, true);

Always with no luck (and no error reported!)

Instead:
$cb_UpxCompress->setEnabled(false); // or true to enable
it does work as expected!

BTW, off topic, I discovered that I have to use the following code inside the onEvent(”mychkbxfunction”):

if $cb_UpxCompress->isEnabled() {
// here execute code of onEvent.. only if it’s enabled
}

otherwise whenever I move the mouse over a DISABLED checkbox the onEvent is fired continuously until the mouse is over the checkbox. This doesn’t happen if it is enabled (checked or unchecked)!
I’m still working on it though!

Luca

Comment by Luca Regoli — Sunday, October 17, 2010 @ 6:42 am

The leading mantra to get level of popularity will be
to display screen finest pics and be reliable in introducing very similar pics to extend
the curiosity with the followers. The evident reason is the same that is the huge
number of users and viewers. For small companies it is advisable to buy Instagram followers through online.

Comment by http://www.party24-7.com/board_Qyic63/249847 — Thursday, August 7, 2014 @ 11:24 pm

Leave a Comment

Validate XHTML | Word Press