This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

View | Details | Raw Unified | Return to bug 37780
Collapse All | Expand All

(-)api/doc/changes/apichanges.xml (+43 lines)
Lines 113-118 Link Here
113
<!-- ACTUAL CHANGES BEGIN HERE: -->
113
<!-- ACTUAL CHANGES BEGIN HERE: -->
114
114
115
  <changes>
115
  <changes>
116
     <api name="explorer"/>
117
     <summary>Removal of org.openide.explorer.propertysheet.InplaceEditor.handleInitialInputEvent</summary>
118
     <version major="4" minor="17"/>
119
     <date day="3" month="12" year="2003"/>
120
     <author login="tboudreau"/>
121
     <compatibility addition="yes" />
122
     <description>
123
     This method was introduced post-3.5, and has proven unnecessary, as the
124
     event may effectively be dispatched to the component using dispatchEvent().
125
     It will instead be the responsibility of the component to determine if
126
     it has just been added to a container and should handle the event in some
127
     special way because of that.
128
     </description>
129
     <class package="org.openide.explorer.propertysheet" name="InplaceEditor"/>
130
     <issue number="37626"/>
131
    </change>
132
133
     <change>
134
     <api name="explorer"/>
135
     <summary>Property panel rewrite, addition of set/getProperty methods and new constructors, deprecation of getPropertyEditor</summary>
136
     <version major="4" minor="16"/>
137
     <date day="3" month="12" year="2003"/>
138
     <author login="tboudreau"/>
139
     <compatibility addition="yes" />
140
     <description>
141
     As part of the rewrite of the internals of PropertyPanel to use the new
142
     property sheet's infrastructure, users of PropertyPanel are encouraged
143
     to use Node.Property rather than PropertyModel objects to drive their
144
     PropertyPanel instances.  To that end, methods and constructors have been
145
     added in order to support using Node.Property objects. The method
146
     getPropertyEditor() has been deprecated, and the property change 
147
     PROP_PROPERTY_EDITOR will no longer be fired.  As documented, in the case
148
     of custom editors, its function has not changed, but for inline uses,
149
     there is no particular use for holding a reference to the property editor
150
     instance, so for inline uses it is no longer guaranteed to return the
151
     same property editor instance as previously - this is now the sole 
152
     responsibility of the Property object.  As this method was primarily used
153
     by the old property sheet, this is a low-impact change.
154
     </description>
155
     <class package="org.openide.explorer.propertysheet" name="PropertyPanel"/>
156
     <issue number="31896"/>
157
    </change>
158
    
116
    <change>
159
    <change>
117
     <api name="winsys"/>
160
     <api name="winsys"/>
118
     <summary>Added method findTopComponent(String tcID) to WindowManager</summary>
161
     <summary>Added method findTopComponent(String tcID) to WindowManager</summary>
(-)api/doc/org/openide/explorer/doc-files/api.html (-1 / +47 lines)
Lines 841-850 Link Here
841
            <TD> java.lang.Boolean </TD>
841
            <TD> java.lang.Boolean </TD>
842
            <TD> useful especially when passing value Boolean.FALSE - in this
842
            <TD> useful especially when passing value Boolean.FALSE - in this
843
                 case disable the possibility of editing the the value as text
843
                 case disable the possibility of editing the the value as text
844
                 but allows getAsText to return non null
844
                 but allows getAsText to return non null.  Also used by passing
845
                 Boolean.TRUE to indicate that a combo-box editor should allow
846
                 the user to type their own text into the combo box.
845
            </TD>
847
            </TD>
846
        </TR>
848
        </TR>
849
847
        <TR>
850
        <TR>
851
            <TD rowspan='2'> property sheet </TD>
852
            <TD> suppressCustomEditor</TD>
853
            <TD> java.lang.Boolean</TD>
854
            <TD> indicates that the property sheet/property panel should not
855
                 display the custom editor button even if the property editor
856
                 supports one.
857
            </TD>
858
        </TR>
859
860
        <TR>
861
            <TD rowspan='2'> property sheet </TD>
862
            <TD> postSetAction </TD>
863
            <TD> javax.swing.Action</TD>
864
            <TD> An action that should be run if, and only if, the user updates
865
                 the value of the property (or reconfirms the existing value by
866
                 an explicit gesture, such as pressing enter in the property
867
                 sheet with an editor opened.  This is useful for code which 
868
                 should, for example, scroll the editor to a specific position
869
                 when the user sets a value, but must differentiate between the
870
                 user setting the value and the value of the property being
871
                 set programmatically.
872
            </TD>
873
        </TR>
874
        <TR>
875
            <TD rowspan='2'> custom property editor display </TD>
876
            <TD> title </TD>
877
            <TD> java.lang.String </TD>
878
            <TD> title of the custom property dialog, must be passed to the
879
                 component itself (e.g. panel.putClientProperty("title", "New custom title.");)
880
            </TD>
881
        </TR>
882
883
        <TR>
884
            <TD rowspan='2'> custom property editor display </TD>
885
            <TD> title </TD>
886
            <TD> java.lang.String </TD>
887
            <TD> title of the custom property dialog, must be passed to the
888
                 component itself (e.g. panel.putClientProperty("title", "New custom title.");)
889
            </TD>
890
        </TR>
891
892
        <TR>
893
            <TD rowspan='2'> property sheet </TD>
848
            <TD> longerDisplayName </TD>
894
            <TD> longerDisplayName </TD>
849
            <TD> java.lang.String </TD>
895
            <TD> java.lang.String </TD>
850
            <TD> title for the property sheet, must be passed to the
896
            <TD> title for the property sheet, must be passed to the
(-)arch/arch-openide-propertysheet.xml (-25 / +48 lines)
Lines 329-336 Link Here
329
<li><code>netbeans.ps.noCustomButtons</code>-When true, hide the custom editor
329
<li><code>netbeans.ps.noCustomButtons</code>-When true, hide the custom editor
330
    button that appears in the property sheet unless the cell is in edit mode.</li>
330
    button that appears in the property sheet unless the cell is in edit mode.</li>
331
    
331
    
332
<li><code>netbeans.ps.forceRadioBoolean</code>-Use a radio button editor instead
332
<li><code>netbeans.ps.useCheckbox</code>-Use a checkbox editor instead
333
    of a checkbox for boolean values</li>
333
    of the default radio button editor for boolean values</li>
334
    
334
    
335
<li><code>netbeans.ps.checkboxCaption</code>-If false, no caption will be provided
335
<li><code>netbeans.ps.checkboxCaption</code>-If false, no caption will be provided
336
    alongside checkboxes in the boolean editor</li>
336
    alongside checkboxes in the boolean editor</li>
Lines 344-354 Link Here
344
    display property names and values at some aesthetic expense; it is useful
344
    display property names and values at some aesthetic expense; it is useful
345
    on laptops with small screens</li>
345
    on laptops with small screens</li>
346
    
346
    
347
<li><code>netbeans.ps.combolog</code>-Enable diagnostic logging of resizings of
348
    the combo box editor popup, an attempt to diagnose some (ultimately 
349
    unreproducable) problems with combo boxes on a pre-release build of KDE
350
    on Linux</li>
351
    
352
<li><code>netbeans.ps.combohack</code>-Forces the combo box editor to use a 
347
<li><code>netbeans.ps.combohack</code>-Forces the combo box editor to use a 
353
    heavyweight popup window, used to solve the above window manager problem
348
    heavyweight popup window, used to solve the above window manager problem
354
    in which the created heavyweight popup dimensions differ from those of the
349
    in which the created heavyweight popup dimensions differ from those of the
Lines 384-392 Link Here
384
<li><code>PropSheet.setBackground</code>-Background color for expandable property
379
<li><code>PropSheet.setBackground</code>-Background color for expandable property
385
    sets</li>
380
    sets</li>
386
    
381
    
382
<li><code>PropSheet.selectionBackground</code>-Background color for selected
383
    properties in the property sheet, overriding the default table selection 
384
    color if present.  Used to fulfil HIE color requirements on various
385
    platforms.</li>
386
    
387
<li><code>PropSheet.selectionForeground</code>-Foreground color for selected
388
    properties in the property sheet, overriding the default table selection
389
    color if present.  Used to fulfil HIE color requirements on various
390
    platforms.</li>
391
387
<li><code>PropSheet.selectedSetBackground</code>-Background color for expandable
392
<li><code>PropSheet.selectedSetBackground</code>-Background color for expandable
388
    property sets when selected in the UI</li>
393
    property sets when selected in the UI</li>
394
395
<li><code>PropSheet.selectedSetForeground</code>-Foreground color for expandable
396
    property sets when selected in the UI</li>
389
    
397
    
398
<li><code>PropSheet.gridColor</code>-Color for the grid of the property sheet
399
    table</li>
400
    
401
<li><code>PropSheet.disabledForeground</code>-Foreground color for disabled 
402
    properties.  May or may not be used, depending on the look and feel's
403
    implementation.</li>
404
        
390
<li><code>netbeans.ps.iconmargin</code>-Integer spacing that should be used to 
405
<li><code>netbeans.ps.iconmargin</code>-Integer spacing that should be used to 
391
    left of the expansion handle for property sets.</li>
406
    left of the expansion handle for property sets.</li>
392
    
407
    
Lines 395-416 Link Here
395
    the font and/or the expansion handle icon, whichever is taller, the first
410
    the font and/or the expansion handle icon, whichever is taller, the first
396
    time the property sheet is painted</li>
411
    time the property sheet is painted</li>
397
</ul>
412
</ul>
398
<p>Additionally, the property sheeet uses the Java Preferences API to store some
413
399
trivial state information based on the users actions.  These are stored in the
414
Additionally, client properties may be used to affect behavior of PropertyPanel,
400
Preferences context returned by 
415
a component for displaying individual properties.  They are as follows:
401
<code>Preferences.userNodeForPackage(PropertySheet.class)</code>.</p>
402
<ul>
416
<ul>
403
<li><code>showDescriptionArea</code>-Boolean, determining whether the description
417
<li><code>flat</code>-Boolean. Use a borderless UI suitable for use as a table renderer/editor.
404
    area should be shown by default</li>
418
    Also affects the behavior of combo boxes, enabling them to open on first click or focus,
405
    
419
    as appropriate for combo boxes displayed in a table.  <i>This property is obsoleted by
406
<li><code>closedSetNames</code>-A comma-delimited string containing the names
420
    PropertyPanel.PREF_TABLEUI which performs the same function when set as part of the
407
    of property sets which the user has explicitly closed, and which presumably
421
    PropertyPanel preferences bitmask, but is supported for backward compatibility</i></li>
408
    they would like to see closed in the future on nodes that have similarly
422
<li><code>suppressCustomEditor</code>-Boolean. suppresses the presence of the custom editor button
409
    named property sets</li>
423
    even if the property editor supports a custom editor.</li>
410
    
424
<li><code>radioButtonMax</code>-Integer n. Instructs the PropertyPanel to use radio buttons
411
<li><code>sortOrder</code>-Integer matching one of the constants described in
425
    instead of a combo box for properties whose property editor supports tags but supplies
412
    <code>org.openide.explorer.propertysheet.PropertySheet</code> to define
426
    less than n tags.</li>
413
    sort orders</li>
427
<li><code>useLabels</code>-Boolean.  Instructs the PropertyPanel to use the property's
428
    display name as the caption for checkboxes, and as the title of a TitledBorder in the
429
    case of radiobuttons (this latter usage only applies if radioButtonMax is also used).
430
    The use of labels is important for checkboxes, as it is the natural way to display
431
    the meaning of a checkbox in a panel, and the label of a checkbox is what checkboxes
432
    use to indicate they have keyboard focus.</li>
414
</ul>
433
</ul>
415
434
416
</answer>
435
</answer>
Lines 471-476 Link Here
471
-->
490
-->
472
<answer id="exec-reflection">
491
<answer id="exec-reflection">
473
Reflection is used to invoke JavaHelp if present, when the user invokes help.
492
Reflection is used to invoke JavaHelp if present, when the user invokes help.
493
Refelection is used to try to attach action listeners to the component supplied
494
by legacy (deprecated) EnhancedPropertyEditor implementations to supply their
495
own inline editor component.  Reflection is used by the deprecated 
496
DefaultPropertyModel to attempt to locate getter and setter methods on a
497
random bean.
474
</answer>
498
</answer>
475
499
476
500
Lines 660-666 Link Here
660
-->
684
-->
661
<answer id="perf-scale">
685
<answer id="perf-scale">
662
The property sheet is designed to perform minimal memory consumption
686
The property sheet is designed to perform minimal memory consumption
663
as it paints, by reusing renderers, etc., but by and large it is
687
as it paints, by reusing renderers, etc., and by and large it is
664
quite efficient.
688
quite efficient.
665
689
666
<br/>  There may be some overhead to selecting a large 
690
<br/>  There may be some overhead to selecting a large 
Lines 733-740 Link Here
733
        </question>
757
        </question>
734
-->
758
-->
735
<answer id="resources-layer">
759
<answer id="resources-layer">
736
No.  It does use the Java Preferences API to store a handful of trivial
760
No. 
737
settings such as a list of closed set names and the last sort mode.
738
</answer>
761
</answer>
739
762
740
763

Return to bug 37780