[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] Rewritten NSComboBox implementation

From: Quentin Mathé
Subject: [PATCH] Rewritten NSComboBox implementation
Date: Mon, 17 May 2004 01:02:52 +0200

Hi everybody,

I have finally finished to rewrite NSComboBox with the associated class NSComboBoxCell. Everything should works perfectly now (completion included), unlike the previous implementation which was completely broken. There are still some bugs which are the result from the fact that the title bars are under the window manager control (it's is impossible in the current situation to obtain notifications like willMoveWindowNotification), the -gui window decorations support (written by Alex M. I think) can probably correct that until we have a better window manager. Also some work has probably to be done to have a nicer look.

You will need to apply the NSLayoutManager related patches I posted yesterday to have the completion feature effective.

The current implementation support both NSTableView or NSBrowser to display the list. By default a table view is used but a flag in NSComboBoxCell.m permits to switch to a browser. I think that both NSBrowser and NSTableView returns wrong row/cell size and intercell space, such issues needs to be fixed because we obtain a list which is not sized in an exactly correct manner and doesn't respect the visible items property precisely.

On the UI point view, the combo box control is globally a poor idea (some reasons detailed here : http://www.mackido.com/Interface/ComboBox.html). My idea in order to obtain an effective control is to convert the combo box intro what we call a completion box. It's basically a text field with a button which show a choices list to complete what you have typed : it is no more an object "between list and menu", then I have replaced the little arrow in the button by an ellipsis image to emphasize the completion behavior and the button has now a true button behavior and not a menu behavior like the traditional combo boxes.
Now it's really a usable "combo box".

Take note also that NSComboBox doesn't work currently in the Gorm "Test interface" mode… I don't know the reason (I haven't studied the Gorm code).

In the case, nobody has an objection, I will commit the patches in the next days (note there is an ellipsis picture in the mail to add to the Images -gui repertory).

Attachment: Images_GNUmakefile.patch
Description: Binary data

Attachment: NSComboBox.h.patch
Description: Binary data

Attachment: NSComboBox.m.patch
Description: Binary data

Attachment: NSComboBoxCell.h.patch
Description: Binary data

Attachment: NSComboBoxCell.m.patch
Description: Binary data

Attachment: NSComboBoxEllipsis.tiff
Description: application/applefile

TIFF image


Quentin Mathé

reply via email to

[Prev in Thread] Current Thread [Next in Thread]