WinBinder To Do / Bug list
November 28, 2005, 5:42 pm
176 items
Item/bug #220
Adjust thumb size according to data size and scroll bar range
(Scroll bars) Cosmetic, High priority
(No description)
Item/bug #275
All graphic functions must accept both handles and files
(Graphics) Fix, High priority
- Graphical functions must accept both handles and files: wb_get_image_size() etc.
- Graphic functions like wb_set_pixel() and wb_set_pixel() should accept the name of a bitmap file in addition to a bitmap handle, HDC, or windows handle.
Item/bug #316
Allocate memory dynamically in various places
(Code-related) Fix, Low priority
Allocate memory dynamically instead of limited static memory
- In wbtemp_create_menu(): allocate accel[] dynamically like pitem
- Allocate tab controls and pages dynamically: TABDATA should allocate items dynamically; now it is carrying a somewhat large data structure
Item/bug #82
Allow any images in menus
(Menus) Cosmetic, Low priority
Today's limitations:
- No icons allowed, only bitmaps
- Shows only the "checked" image
- Only 13 x 13 pixels
- Whites become transparent
- Colors are faded
- Images are inverted when mouse is over an item
Item/bug #396
Allow font sets in wb_create_font()
(Graphics) New feature, Low priority
An idea taken from HTML syntax:
"Tahoma,Arial,Helvetica" or
"Tahoma\r\nArial\r\nHelvetica" or
array("Tahoma", "Arial", "Helvetica")
Item/bug #70
Allow menu items to begin disabled and checked
(Menus) New feature, High priority
Must add a new element to arrays when creating menu items
Item/bug #397
Allow more keys as accelerators
(Keyboard) Cosmetic, Low priority
New constants:
"NumPad"
"Win"
Item/bug #359
Allow more than one toolbar in main window
(Toolbars) New feature, High priority
(No description)
Item/bug #174
Allow multiple selection in list boxes
(List boxes) New feature, High priority
(No description)
Item/bug #360
Allow tooltips on any button and other controls
(Controls) Cosmetic, High priority
(No description)
Item/bug #401
Anchor controls
(Controls) New feature, High priority
Process WM_SIZE to anchor controls in windows like in C#. This will allow controls to maintain their relative positions to one or more window borders.
Item/bug #249
Arrays and comma-separated values must be equivalent
(Code-related) Fix, High priority
Functions that accept arrays should also accept comma-separated strings and vice-versa
Item/bug #383
Assign only a section of a bitmap to a Frame
(Frames) Fix, High priority
As with window icons
Item/bug #382
Assign only a section of a bitmap to a button
(Push buttons) Fix, High priority
As with window icons
Item/bug #289
Associate data with List Box / Combo Box / Treeview / ListView items
(Controls) New feature, High priority
See "Special Combo Box Features" in Win32 API help.
Example:
wb_set_text($combobox, array(
"value1" => "Text 1",
"value2" => "Text 2",
"value3" => "Text 3"
));
or
wb_set_value($combobox, array(
"value1" => "Text 1",
"value2" => "Text 2",
"value3" => "Text 3"
));
Item/bug #295
Auto save column positions and widths
(List views) Cosmetic, Low priority
It is already possible to do that "manually" by using internal C function wbtemp_get_listview_column_widths().
Item/bug #294
Auto save last tab selected
(Tab controls) Cosmetic, Low priority
(See "Auto save window size and position")
Item/bug #297
Auto save splitter window size and position
(Splitter windows) Cosmetic, Low priority
(See "Auto save window size and position")
Item/bug #218
Auto save window size and position
(Windows) New feature, Low priority
Windows should have the option of saving their sizes and positions automatically to the registry or to an INI file.
Item/bug #78
Automatic creation of edit control (buddy)
(Spinners) New feature, Low priority
(No description)
Item/bug #182
Automatic one-line help on status bar
(Menus) Cosmetic, High priority
See message WM_MENUSELECT in the Windows API documentation.
Item/bug #135
Avoid cascading events and messages
(Callback functions) Fix, High priority
Callback functions are receiving multiple events. This should be avoided by filtering the notification messages according to the action (mouse click, keyboard, focus, etc.)
Generally, messages should be generated only via user actions.
Filter user commands in DefaultWBProc(). Try: (LPNMHDR)lParam)->code == NM_CLICK, etc.
Item/bug #64
Bitmap, ImageList, BitBlt function set
(Graphics) Fix, High priority
(See the GD extension)
Proposed function set:
. wb_load_image($filename, $index=0)
. wb_create_image($width, $height, $background=BLACK)
. wb_create_mask($image, $transparent_color)
. wb_copy_image($dest, $source, int $target=0, $ytarget=0, $width=0, $height=0, $xsource=0, int $ysource=0, $ROP=SRCCOPY)
. wb_mask_image($dest, $source, $mask, int $target=0, $ytarget=0, $width=0, $height=0, $xsource=0, int $ysource=0)
wb_save_image($image, $filename, $format="BMP")
wb_scale_image($dest, $source, int $target=0, $ytarget=0, $targetwidth=0, $targetheight=0, $xsource=0, int $ysource=0, $sourcewidth=0, $targetwidth=0, $ROP=SRCCOPY)
wb_tile_image($dest, $source, int $target=0, $ytarget=0, $width=0, $height=0, $ROP=SRCCOPY)
Item/bug #141
Bitmapped buttons with XP themes
(Push buttons) Cosmetic, Low priority
Bitmapped buttons with XP themes may also solve another cosmetic problem: disabled bitmapped buttons are shown with a gray square instead of a disabled image.
Item/bug #86
Buddies can't allow entries outside spinner range
(Spinners) Fix, High priority
(No description)
Item/bug #242
Build WinBinder under several compilers
(Distribution) New feature, Low priority
* LCC
* VC++
- MinGW (GCC)
- Dev-C++ (GCC)
- Pelles C
- Digital Mars
Item/bug #186
Buttons maintain borders after clicking
(Push buttons) Cosmetic, Low priority
Maybe only those which are over tab controls, or only bitmapped ones?
Item/bug #346
Cannot create accelerators without Ctrl, Shift, Alt
(Keyboard) Fix, High priority
Accelerators like "M", "Delete", i.e. without "Ctrl", "Shift" or "Alt", do not work
"Enter" does not work
Item/bug #221
Cannot remove icon from toolbar buttons
(Toolbars) Fix, High priority
If no index (null or empty index) is specified to a toolbar button, no icon should appear. Icon number zero is appearing instead.
Workaround: use some non-existnt number as the index
Item/bug #385
Case-insensitive INI files
(Registry / INI) Fix, Low priority
Sections and labels in Windows INI files are case-insinsitive, while PHP's are case-sensitive.
This depends on the availability of case-insensitive array functions in PHP, or to create new WinBinder functions for INI support
Item/bug #329
Change title of some common dialogs
(System dialogs) Cosmetic, Low priority
How to change the title of a following common dialog:
- Select Color
- Browse for Folder
- Font
Item/bug #56
Changes to wb_get_registry_key(), wb_set_registry_key()
(Registry / INI) New feature, High priority
* Must return/set integer values in addition to strings
- Support reading/writing real doubles (currently stores them as strings), binary data and other formats
- Must delete keys in addition to entries
Item/bug #261
Check for memory and resource leaks
(Code-related) Fix, Low priority
(No description)
Item/bug #310
Clipboard support
(Treeviews) New feature, High priority
Copy selected item to clipboard
Item/bug #309
Clipboard support for ListViews
(List views) New feature, High priority
Create context menu to copy selected lines to clipboard, etc.
Item/bug #97
Color swatch buttons
(Push buttons) New feature, High priority
A new class?
Item/bug #284
Colored stripes
(List views) Cosmetic, Low priority
(No description)
Item/bug #326
Combo box items return a newline
(Combo boxes) Fix, High priority
The combos return a newline after the text
Item/bug #49
Combo boxes with images
(Combo boxes) New feature, High priority
Use wb_set_image() or wb_set_item_image() to associate icons or bitmaps to combo box items
Item/bug #106
Context-sensitive help
(Help) New feature, High priority
- Automatic context-sensitive help for dialogs
- May use wb_exec() with parameters so there is no need to create a new function
Item/bug #248
Control functions must accept arrays
(Controls) Cosmetic, High priority
All control functions must accept arrays in addition to a control handle. Example:
$txt = wb_get_text(wb_get_control($main, ID_OPEN))
should be the same as
$txt = wb_get_text(array($main, ID_OPEN))
Item/bug #209
Controls over tabs show wrong background colors in Windows XP
(Tab controls) Cosmetic, Low priority
* Labels, checkboxes, trackbars, buttons and child tab controls show their own background colors when positioned over a tab control.
* If the "default" Windows theme is enabled, tabs and status bars show up in default gray instad of the system background color.
- TODO: obtain the actual tab color from the theme or, better yet, use the tab control texture. Meanwhile, 0xFCFCFE is used (it is the tab color for all standard XP themes)
- Tab controls over tabs still not solved
References:
codeproject.com/wtl/ThemedDialog.asp
codeproject.com/cs/miscctrl/themedtabpage.asp
http://groups.google.com.br/groups?hl=pt-BR&lr=&threadm=1108f1ac.0309181153.1e2fd44f%40posting.google.com&rnum=3&prev=/groups%3Fq%3DGetThemeColor%2520TABP_PANE%26hl%3Dpt-BR%26lr%3D%26sa%3DN%26tab%3Dwg
Item/bug #111
Convert between bitmaps, icons, and cursors
(Graphics) New feature, Low priority
Convert:
- Bitmaps to icons
- Icons to bitmaps
- Bitmaps to cursors
- Cursors to bitmaps
- Cursors to icons
- Icons to cursors
Item/bug #140
Convert integer RGB to array
(Graphics) New feature, High priority
Functions to convert integer RGB values to 3-element arrays and vice-versa
Item/bug #145
Create 'enable_wb_low_level_functions' flag
(Low-level) New feature, Low priority
Create a flag in PHP.INI to optionally prevent access to low-level functions
Item/bug #115
Create a callback for window activation
(Callback functions) New feature, Normal priority
Create a callback to Windows message WM_ACTIVATE
Item/bug #42
Create combo box items with wb_set_text()
(Combo boxes) New feature, High priority
Combo boxes and list boxes should allow the creation of items with wb_set_text() if the text parameter is an array
Item/bug #24
Create descriptions inside C code
(Code-related) New feature, Low priority
Provide at least a one-line description for:
- Functions
- Structures and types
- Constants
- Variables
Item/bug #388
Create function wb_get_window()
(Windows) New feature, High priority
wb_get_window() should accept parameters that allow it to get a handle to various types of window:
- The desktop window
- Top-level windows of other applications (FindWindow)
Item/bug #379
Create functions wb_set_range() / wb_get_range()
(Controls) New feature, High priority
Maintain values in wb_set_value() for BC (backward compatibility), at least for a while
Item/bug #102
Create list box items with wb_set_text()
(List boxes) New feature, High priority
Combo boxes and list boxes should allow the creation of items with wb_set_text() if the text parameter is an array
Item/bug #308
Create more toolbar icon sets
(Toolbars) Cosmetic, Low priority
With different looks
Item/bug #391
Create notification messages for menus and accelerators
(Menus) New feature, High priority
Create notification message WBC_ACCEL, etc.
Item/bug #116
Create standalone executables
(Distribution) New feature, Low priority
- PHP2EXE
- Optionally increase source code security: use the PHP Bytecode Compiler from PECL or some similar package to provide extra protection when releasing WinBinder applications to users
Item/bug #374
Deactivate or hide individual check boxes
(List views) New feature, High priority
(No description)
Item/bug #368
Default buttons must look and behave correctly
(Push buttons) Fix, High priority
Default buttons must look and behave as default buttons
Item/bug #366
Dialog boxes must be centered on their parents
(Dialog boxes) Cosmetic, High priority
Dialog boxes must be centered on their parents, not on the desktop
Item/bug #75
Dialogs do not send IDCLOSE
(Dialog boxes) Fix, High priority
Dialogs, when closed, are not sending a WM_COMMAND message with IDCLOSE as the wID parameter
Item/bug #120
Drag-and-drop support
(Top-level windows) New feature, High priority
The main window should accept dropping files from other apps such as Windows Explorer
Item/bug #129
Drop-down buttons in toolbars
(Toolbars) New feature, High priority
(No description)
Item/bug #40
Editable combo boxes
(Combo boxes) New feature, High priority
Drop-down combo boxes are created with style CBS_DROPDOWN instead of CBS_DROPDOWNLIST
Item/bug #323
Enhancements to wbCreateControl()
(Controls) Fix, High priority
- Call wbCreateToolbar() if wbclass is a toolbar
- Call wbCreateMenu() if wbclass is a menu
Item/bug #324
Enhancements to wbGetControl()
(Controls) New feature, High priority
- Process treeview items
- Must validate toolbar item first
Item/bug #330
Enhancements to windows callback handlers
(Windows) New feature, High priority
DefaultWBProc() is the common processing routine for all parent windows.
* Don't know which is the correct notification for trackbars, so pfnProcess is called all the time
- Use the return value as a flag to know whether the calling function should continue default processing or not
Item/bug #319
Error log
(System) New feature, Low priority
wbError() should optionally log errors to a file and/or use a message box to display errors
Item/bug #44
Events not being passed to callback function
(Callback functions) New feature, High priority
Separate the KeyDown, MouseDown, etc. events
Item/bug #133
Fix in wbCreateTreeViewImages()
(Treeviews) Fix, High priority
Use ImageList_AddMasked() in wbCreateTreeViewImages() (API layer)
Item/bug #353
Fix keyboard interface for tab controls
(Tab controls) Fix, High priority
- Give focus to tab controls and make them behave "normally": The tab/alt+tab key should move the focus to the other controls in the page and outside the tab control. This is the standard behavior. Maybe this will be possible with "real" dialog boxes only.
* Tab controls with the focus should change pages by using the arrow keys
Item/bug #325
Fixes to wbGetTextLength()
(Controls) Fix, Low priority
Try to fix control text length bug (although it does not seem to occur ).
According to WinHelp for GetWindowTextLength, "To obtain the exact length of the text, use (...) the GetWindowText function."
Seems to make no difference, however.
Item/bug #147
Flat scrollbars
(Scroll bars) Cosmetic, Low priority
(No description)
Item/bug #252
Floating / dockable toolbars
(Toolbars) New feature, High priority
ReBar class
Item/bug #392
Full tests in several operating systems
(Distribution) New feature, Low priority
Windows:
- Windows 98
* Windows 98 SE
- Windows NT Workstation 4.0
- Windows Me
* Windows 2000
* Windows XP SP-2
- Windows 2003 Server
Other:
* Wine
Emulators
Item/bug #373
Image static controls with no borders
(Frames) Cosmetic, High priority
(No description)
Item/bug #296
Implement Customize Toolbars system dialog
(System dialogs) New feature, Low priority
(No description)
Item/bug #125
Implement Font system dialog
(System dialogs) New feature, High priority
(No description)
Item/bug #124
Implement Page Setup system dialog
(System dialogs) New feature, High priority
(No description)
Item/bug #123
Implement Print system dialog
(System dialogs) New feature, High priority
(No description)
Item/bug #105
Implement context menus and pop-up menus
(Menus) New feature, High priority
(No description)
Item/bug #287
Implement hotkey controls
(Hotkey controls) Cosmetic, Low priority
(No description)
Item/bug #117
Implement mouse cursors
(Resources) New feature, High priority
Calling the SetCursor() API is trivial, but it may flicker a bit in slow systems because it competes with the cursor assigned to the control. A real wb_set_cursor() would have to correct this first.
Item/bug #162
Implement scrollable container
(Controls) New feature, High priority
New control class: a scrollable window to contain images, checkbox lists and other controls. see Creating Scroll Bars in Windows API Help
Item/bug #217
Implement splitter windows
(Splitter windows) New feature, High priority
(No description)
Item/bug #238
Implement tabs with icons
(Tab controls) Cosmetic, High priority
(No description)
Item/bug #136
Implement user-defined controls
(User-defined) New feature, High priority
The programmer may be able to define a class and do a callback to process mouse events, keyboard events, WM_PAINT etc.
Item/bug #234
Improve compatibility with resource editors
(Resources) New feature, Low priority
Currently supports WinAsm Studio only.
Problems:
- Not processing "NOT 0x10000000 | " (invisible)
Other options are:
LCC-Wedit
Visual C++
Pelles C
Others
Item/bug #336
Improve icons minimized to taskbar
(Top-level windows) Cosmetic, Low priority
Icons that are minimized to taskbar may get reduced to 16 colors in Windows 2000 (not in XP)
Item/bug #337
Improvements to numeric edit boxes
(Edit boxes) New feature, High priority
- Subclass EditBox to allow digits, dots, commas, hyphens and possibly spaces so users can enter floats
- Filter any other characters so even the programmer can't enter non-numeric characters with wb_set_text()
Item/bug #271
In-place label editing
(Treeviews) New feature, Low priority
(No description)
Item/bug #270
In-place label editing
(List views) New feature, Low priority
(No description)
Item/bug #318
Include information for phpinfo()
(System) Cosmetic, Low priority
winbinder_module_entry() function, required for ZEND module, should include information for phpinfo()
Item/bug #113
Incorrect window height in RC files
(Resources) Fix, High priority
* For tab pages, the interface designer must add about 15 dialog units or 24 pixels to all controls. This was solved with the creation of container tab pages.
- Dialog boxes must be designed higher and taller
Item/bug #163
Irregularly shaped windows
(Top-level windows) New feature, Low priority
Option to create application windows with transparent masks for irregularly-shaped, borderless windows
Item/bug #370
Issues with keyboard accelerators in dialogs
(Keyboard) Fix, High priority
- In the To Do app, Edit Item dialog, access keys like Alt+C will work only if some control has the focus
- In the To Do app, Edit Item dialog, typing access key Alt+D closes the dialog (performs a OK) instead of giving the focus to the multiline edit box
- Some dialogs do not process the Esc (IDCANCEL) and Enter (IDOK) keys. One exception is the To Do app, Edit Item dialog. Workaround: set the focus of a dialog item when displaying it
- Tab/Alt+tab won't work anymore once the focus reaches a multiline edit box
Item/bug #85
Latch-type buttons
(Push buttons) New feature, High priority
Press to push, press again to release
Item/bug #39
List boxes with images
(List boxes) New feature, High priority
Use wb_set_image() or wb_set_item_image() to associate icons or bitmaps to list box items
Item/bug #376
ListView with file/folder list
(List views) New feature, Normal priority
Same as used in Window Explorer
Item/bug #285
ListViews with sortable columns
(List views) New feature, High priority
* Implement a flag for sorting or not
* Sort by clicking the appropriate header
* Create a function to sort columns
* Automatic numeric sort
* Ascending/descending sort
- Flag for auto-sorting
- Sort in opposite direction by clicking the appropriate header again
- Indicate sorted column using an arrow
- Individual flags for specific sort types: case-sensitive/insensitive/numeric, character code vs. locale
Item/bug #305
MDI windows
(Windows) New feature, High priority
Possibly with tabs (see codeproject.com/docview/tabbedmdi.asp)
Item/bug #168
MIDI support
(Multimedia) New feature, Normal priority
Use MMSYSTEM functions and/or mciSendString()
Item/bug #304
Main windows don't recognize tab / shift+tab when a tab control is present
(Top-level windows) Fix, Normal priority
(No description)
Item/bug #389
Make wb_set_style() function work as expected
(Controls) Fix, High priority
wbSetStyle() must do what is expected, i.e. change control styles of all classes
Item/bug #280
Merge some control functions
(Controls) Cosmetic, High priority
- wb_set_image() and wb_set_item_image() have different parameters
- Other control functions can be merged as well
Item/bug #398
Message boxes must be centered on their parents
(Message boxes) Cosmetic, High priority
Message boxes must be centered on their parents, not on the desktop
Use SetWindowsHookEx() to intercept WM_ACTIVATE
Item/bug #338
Minimal PHP DLL
(Distribution) Cosmetic, Low priority
Provide minimal versions of php4ts.dll/php5ts.dll after stripping all non-essential libraries. Maybe tweaking PHP\PHPn\source\main\config.w32.h?
Item/bug #333
Minimize to taskbar status area
(Top-level windows) New feature, High priority
* Minimize main window to an icon in the taskbar status area
* Create a tooltip for the icon
* Remove the icon on exit
* Restore the window when double-clicking
- Perform a custom action (restore the window, display a custom pop-up menu, do nothing etc.) when clicking
- Display the system menu (or a custom pop-up menu) when right-clicking
Item/bug #23
Missing topics in WinBinder manual
(Documentation) New feature, Low priority
- Detailed description of very important functions like wb_create_window()
- Comprehensive descriptions and code examples for all functions
- Overview: The status bar
- Overview: The toolbar
- Overview: Working with treeviews
- Overview: The Windows message system
- Overview: Windows design conventions and XP themes
- WinBinder installation: folder structure
Item/bug #76
Modal dialog boxes should have correct behavior
(Dialog boxes) Fix, High priority
The function that creates a modal dialog box should return only after the dialog is closed
Item/bug #89
Modeless toolboxes
(Dialog boxes) New feature, High priority
Allow creation of modeless toolboxes (with shorter title bars and smaller Close button)
Item/bug #386
More image options in treeviews
(Treeviews) Cosmetic, High priority
Must allow assigning up to four images (not only two as it is now) to a treeview item: unselected item with no children, selected item with no children, unselected item with children, unselected item with children.
Item/bug #183
Most recent files (or folders) list
(Menus) New feature, Low priority
Default menu is File, but should allow any menu
Item/bug #245
Move class-specific code to other modules
(Code-related) Fix, High priority
WM_COMMAND.C, WM_WINDOWS.C and possibly other C modules have code that is class-specific.
Ex.: WC_TABCONTROL processing in DefaultWBProc()
Item/bug #354
Multiline edit controls do not process tab / shift+tab
(Edit boxes) Fix, High priority
After a multiline edit control receives the focus, it does not tab to the next (or previous) control
Item/bug #157
Naming conventions
(Documentation) Fix, Low priority
There is still some confusion between controls, windows, Window (the OS), menus, toolbars, items, some functions etc.
Item/bug #342
New function: wb_get_image()
(Graphics) New feature, High priority
Must return a handle to an image from a window, control, menu, etc.
Item/bug #314
Non-destructive masks
(Graphics) Fix, Low priority
In wbCreateMask(): perform a non-destructive mask creation. This function currently changes colors in the original bitmap. although this normally has no consequences
Item/bug #302
Optional flat toolbar
(Toolbars) Cosmetic, Low priority
A flat toolbar is (or was) called "coolbar" to set it apart from old-style toolbar buttons (with borders).
Item/bug #369
Optionally propagate callback messages
(Windows) Fix, High priority
Must create a flag to decide whether windows should propagate (cascade) calls to the callback functions.
For example: If checkbox A changes the value of checkbox B, should checkbox B call the callback function or not?
Also, maybe control B should include a flag to show that is was changed due to an internal command, not a user command.
Item/bug #384
Other edit box filters
(Edit boxes) New feature, Low priority
- Allow negative numbers
- Allow commas, dots, etc. for floating point values
- Allow only valid file names
A much better option would be to use custom, user-definable filters. A PHP string would contain a list of the characters to be included (or excluded, according to a flag) from the list. For example:
wb_set_filter($hexedit, "0-9A-F", true);
Item/bug #195
Pop-up menus
(Menus) New feature, High priority
Pop-up / context menus
Item/bug #311
Possible conflict between lparam and tab page numbers
(Tab controls) Fix, High priority
When the function wb_create_control() is used to create a control inside a tab page, lparam is used to indicate the page number. It currently cannot be used to anything else. One possible solution would be to use strings like "tab0" and pass an array to lparam if some other value is needed (e.g. array("tab0", 120) to pass the value 120 to the control).
Item/bug #233
Printing support
(Printing) New feature, High priority
Implement support to printing
Item/bug #98
Process drag-and-drop in ListViews
(List views) New feature, High priority
(No description)
Item/bug #298
Provide additional low-level accesses to the API
(Low-level) New feature, High priority
WinBinder should accept / supply:
* Allow general access to the Windows API: create a simple mechanism to call API functions, something like DllImport() in VB. Use LoadLibrary() / GetModuleHandle() / GetProcAddress()
- Various hooks including a way to intercept Windows messages from within WinBinder classes, direct hooks to the WinBinder windows processing routines, initialization steps, etc.
- A mechanism to create new WinBinder object classes
- Pointers to global variables
- Plug-ins == foreign DLLs with new classes
Item/bug #328
Reference menus like controls
(Menus) Fix, High priority
In wbGetWBObj(): return PWBOBJ from menus too
Item/bug #207
Remove PHP script wb_windows.php
(Code-related) Fix, Normal priority
- Remove PHP code from wb_windows.php and port all functions to the DLL
- All temporary functions should be removed
Item/bug #361
Remove focus rectangle from image buttons
(Push buttons) Cosmetic, Low priority
It's an annoying dashed rectangle
Item/bug #206
Remove useless constants
(Code-related) Fix, High priority
WBC_INFO, WBC_OK, etc. might be replaced by "info", "ok" and so on
Item/bug #67
Rename functions / classes / constants
(Code-related) Fix, Low priority
Functions:
wb_set_pixel() -> wb_draw_dot() or wb_draw_point()
wb_get_pixel() -> wb_get_color()
Classes:
ListView -> Grid?
Frame->Static?
Menu->MenuItem?
Etc.
Constants:
- WBC_LINES -> WBC_GRIDLINES?
- Decide between all-purpose names (WBC_* like it is today) or specific names (WB_FLAG_*, WB_MB_*, WB_STR_*, etc.)
* WBC_COLLAPSED is terrible
* WBC_LINES and WBC_MULTILINE should be separated again
Item/bug #210
Resource leaks
(Resources) Fix, Low priority
Verify resource leaks in:
* SetTransparentBitmap()
- others (TBD)
Item/bug #32
Review of functions / consistent behavior
(Code-related) Fix, High priority
- wb_set_text() must not be used to select things
- clear wb_get_item_list() vs. wb_get_text() confusion
- etc.
Item/bug #307
Rich Text in ListViews
(List views) Cosmetic, Low priority
For text in color, bold, etc.
Item/bug #356
Send messages up the hierarchy
(Status bars) New feature, High priority
Status bars cannot have child controls. This would be possible if messages were sent up as with tab controls and GroupBoxes (Frame class).
Item/bug #377
SendKeysTo and DDE
(Low-level) New feature, Normal priority
(No description)
Item/bug #317
Separate RGB values in wb_get_pixel() and wb_set_pixel()
(Graphics) New feature, Low priority
These functions should accept an array of three values in addition to a DWORD
Item/bug #65
Separate threads
(System) New feature, Low priority
Thread the created windows somehow, so that events to the handled process are queued up, something like:
wb_set_busy($main, true); // do long loop wb_set_busy($main, false); // continue...
Once the latter is complete, the queued events will be sent to the procedure (or a 'queued' specific procedure). That way we can process intensive applications and have the GUI not freeze up while it is done.
Item/bug #131
Set maximum number of characters
(Edit boxes) New feature, High priority
(No description)
Item/bug #371
Several controls do not generate WBC_FOCUS notification
(Top-level windows) Fix, High priority
RTF edit boxes, listviews, treeviews and other control classes should also generate WBC_FOCUS messages.
Tab controls are an exception, because lparam is already used to refer to the selected tab, and they have flag TCS_FOCUSNEVER
Item/bug #347
Sort contents of controls
(Controls) New feature, High priority
Sort list boxes, combo boxes and other controls using wb_sort()
Item/bug #372
Standalone version
(Distribution) New feature, Normal priority
* Auto installable with Inno Setup
* Includes all libraries
- Includes forms editor
- Includes simplified IDE
Item/bug #118
Standard use of trigger_error() in PHP
(Code-related) Fix, Low priority
PHP code should use __FUNCTION__ and E_USER_WARNING in trigger_error()
Item/bug #187
Static controls should scroll with large images
(Frames) New feature, High priority
(No description)
Item/bug #351
Status bars with gauges
(Status bars) New feature, High priority
(No description)
Item/bug #228
Status bars with panes (sections)
(Status bars) New feature, High priority
Use wb_create_items() to create panes inside status bars, exactly as used to create items inside a menu
Item/bug #193
Store information in windows
(Windows) New feature, Low priority
Allow the storage and passing of any values in a window by using the extra bytes in SetWindowLong (GWL_USERDATA).
Item/bug #229
Sub-menus
(Menus) New feature, High priority
How to specify them in an array?
Item/bug #231
Support compiled resources / other formats
(Resources) New feature, Low priority
- Support compiled Windows resources (DLLs, EXEs, etc.) as well as parsed RC files
- .NET resources use .resX files (XML format)
. XRC for wxWidgets: http://www.wxwidgets.org/manuals/2.5.2/wx_xrcoverview.html
Item/bug #355
Support for mouse wheel
(Mouse) New feature, Low priority
Automatic support is already present in Windows XP, must check other systems
Item/bug #320
Support for non-Windows multimedia formats
(Multimedia) New feature, Low priority
MP3, etc.
Item/bug #31
Support to the Windows Clipboard
(Clipboard) New feature, High priority
Support reading data from and to the Clipboard. One option woiuld be to use already existing WB functions like:
wb_get_text()
wb_set_text()
wb_set_image()
and create a special constant, "Clipboard".
Item/bug #348
Tab controls do not behave correctly if handler is not assigned
(Tab controls) Fix, High priority
A tab control only shows/hides the correct child controls if wb_set_handler() is assigned to its parent window.
This only occurs in the very rare event of creating a window that has a tab control and not assigning a handler to this window.
Item/bug #364
Tab controls with no visible tabs
(Tab controls) Cosmetic, High priority
Tab controls with buttons instead of tabs (and perhaps no border): TCS_BUTTONS style
(Must create a flag like WBC_NOTEXT)
Item/bug #349
Tabs placed at the bottom
(Tab controls) New feature, High priority
Option to make tabs appear at the bottom or on the right side: Use style TCS_BOTTOM, TCS_VERTICAL, etc. (CommCtrls v. 4.70) "This style is not supported if you use ComCtl32.dll version 6"
Item/bug #159
Text buttons in toolbars
(Toolbars) Cosmetic, High priority
Implement text buttons in toolbars. The text is being passed through pitem[i]->pszCaption already
Item/bug #94
Three-state check boxes
(Check boxes) New feature, High priority
(No description)
Item/bug #301
Tooltips must be globally optional
(Windows) New feature, High priority
(No description)
Item/bug #350
Tooltips on tabs
(Tab controls) Cosmetic, High priority
Use TCS_TOOLTIPS
Item/bug #254
TreeView with checkboxes
(Treeviews) Cosmetic, Low priority
(No description)
Item/bug #255
Treeview with filesystem
(Treeviews) New feature, Normal priority
Same as used in SHBrowseForFolder()
Item/bug #322
Use Windows API function MaskBlt()
(Graphics) Fix, High priority
Use Windows API function MaskBlt() for masking in functions:
- wbMaskPartialBits()
Item/bug #393
Use canvas for faster graphics
(Graphics) Fix, Low priority
Create wb_create_canvas() and wb_destroy_canvas() to make Windows graphic functions operate faster.
A canvas is a DC.
Item/bug #362
Use status bars as containers for controls
(Status bars) New feature, High priority
(No description)
Item/bug #394
Use the 'color' parameter in wb_create_font()
(Graphics) Cosmetic, High priority
(No description)
Item/bug #395
Use the 'linewidth' parameter in wb_draw_rect()
(Graphics) Cosmetic, Low priority
(No description)
Item/bug #41
Use wb_create_items() and wb_delete_items()
(Combo boxes) New feature, High priority
Combo boxes and list boxes should allow wb_create_item(<$id>, <$value or $text>, [$index]) and wb_delete_items($index)
Item/bug #390
Verify use of wb_get_control($tab, ID)
(Controls) Fix, High priority
Both wb_get_control($win, ID) and wb_get_control($tab, ID) can return the same control handle. Is this behavior expected?
Item/bug #265
WAV sound support
(Multimedia) New feature, High priority
Use MMSYSTEM functions and/or mciSendString()
- Send an event to the callback when a sound stops
Functions:
- wb_load_sound()
- wb_destroy_sound()
- wb_play_sound() -- optionally looping
- wb_stop_sound()
- wb_get_sound_info()
Item/bug #327
nIndex not used in wbSetImage()
(Controls) New feature, High priority
(No description)
Item/bug #68
wb_create_window() may abort execution
(Windows) Crash, Low priority
wb_create_window() (and probably other functions too) aborts execution if parent window is an arbitrary number like 1, 200, etc. The cause is that wbIsWBObj() does not effectively check if pwbo is a valid WB object and aborts when trying to dereference an invalid pointer. The fix would be to create a global list of valid WB objects.
Item/bug #57
wb_exec() should work in console mode
(System) Fix, Normal priority
- wb_exec() should accept parameters
- Should capture the output (see commented-out code in phpwb_winsys.c)
- Document extra parameter in function
Item/bug #277
wb_play_sound() does not work in some systems
(Multimedia) Bug, High priority
wb_play_sound() seems not to work in some systems; yet to be confirmed as a bug
Item/bug #60
wb_set_item() does not have standard parameters
(Controls) New feature, High priority
Must check with other functions
Item/bug #357
wb_set_position() should center horizontally or vertically only
(Controls) New feature, High priority
wb_set_position() should center a window horizontally only or vertically only according to xPos, yPos
Item/bug #282
wb_set_selected() does not have standard parameters
(Controls) Cosmetic, High priority
In function wb_set_selected(), the Item and Selected parameters must switch positions
Item/bug #380
wb_set_text() must behave like wb_create_window()
(Controls) Fix, High priority
In all control and window classes:
wb_set_text() must behave exactly like the Caption parameter of wb_create_window(), and vice-versa
Item/bug #4
wb_set_text() must not select items
(Controls) Fix, High priority
wb_set_text() must not be used to select items from controls. Should use wb_set_selected() instead
Item/bug #306
wb_set_value() does not work properly with items
(Controls) Fix, High priority
wb_set_value() should have an extra parameter to deal with items. As it is now, it can set but not clear a check box in a ListView. Something like
wb_set_value($list, true, array(1, 2, 3));
instead of
wb_set_value($list, array(1, 2, 3));
(End of list)