Claims
- 1. In a computing environment comprising a user interface, the user interface comprising an element, the element comprising a property, a method for searching for a value to provide to the property, the method comprising:
searching for a default property sheet that is designated as important and that includes a rule that provides a value to the property; if no default property sheet is found that is designated as important and that includes a rule that provides a value to the property, then searching for an in-line rule that provides a value to the property; if no in-line rule is found that provides a value to the property, then searching for a non-default property sheet that includes a rule that provides a value to the property; and if no non-default property sheet is found that includes a rule that provides a value to the property, then searching for a default property sheet that is not designated as important and that includes a rule that provides a value to the property.
- 2. The method of claim 1 wherein the element of the user interface is selected from the group consisting of: visual elements and audio elements.
- 3. The method of claim 1 wherein a default property sheet is designated as important by a user of the user interface.
- 4. The method of claim 1 wherein a default property sheet includes rules that express a presentation theme for the user interface.
- 5. The method of claim 4 wherein the presentation theme for the user interface is selected from the group consisting of: an accessibility theme, a system theme, and a branded application theme.
- 6. The method of claim 1 wherein searching for a non-default property sheet that includes a rule that provides a value to the property comprises:
searching for a non-default property sheet of the element that includes a rule that provides a value to the property; and if no non-default property sheet of the element is found that includes a rule that provides a value to the property, then searching for a non-default property sheet of an ancestor of the element that includes a rule that provides a value to the property.
- 7. The method of claim 1 wherein the user interface comprises a plurality of elements, wherein at least one element comprises a plurality of properties, and wherein there is at most one default property sheet for all of the elements of the user interface.
- 8. The method of claim 1 further comprising:
if no default property sheet is found that is not designated as important and that includes a rule that provides a value to the property, then searching for a value inheritance rule that provides a value to the property.
- 9. The method of claim 8 further comprising:
if no value inheritance rule is found that provides a value to the property, then providing a default value to the property.
- 10. A computer-readable medium containing computer-executable instructions for performing a method for searching for a value to provide to a property of an element of a user interface, the method comprising:
searching for a default property sheet that is designated as important and that includes a rule that provides a value to the property; if no default property sheet is found that is designated as important and that includes a rule that provides a value to the property, then searching for an in-line rule that provides a value to the property; if no in-line rule is found that provides a value to the property, then searching for a non-default property sheet that includes a rule that provides a value to the property; and if no non-default property sheet is found that includes a rule that provides a value to the property, then searching for a default property sheet that is not designated as important and that includes a rule that provides a value to the property.
- 11. In a computing environment comprising a user interface, the user interface comprising an element, the element comprising a property, a method for providing a value to the property, the method comprising:
if a default property sheet is designated as important and includes a rule that provides a value to the property, then applying the rule of the important default property sheet to provide a value to the property; else if an in-line rule exists to provide a value to the property, then applying the in-line rule to provide a value to the property; else if a non-default property sheet includes a rule to provide a value to the property, then applying the non-default property sheet rule to provide a value to the property; else if a default property sheet is not designated as important and includes a rule to provide a value to the property, then applying the rule of the non-important default property sheet to provide a value to the property.
- 12. The method of claim 11 wherein the element of the user interface is selected from the group consisting of: visual elements and audio elements.
- 13. The method of claim 11 wherein a default property sheet is designated as important by a user of the user interface.
- 14. The method of claim 11 wherein a default property sheet includes rules that express a presentation theme for the user interface.
- 15. The method of claim 14 wherein the presentation theme for the user interface is selected from the group consisting of: an accessibility theme, a system theme, and a branded application theme.
- 16. The method of claim 11 wherein applying the rule of the important default property sheet comprises:
providing a fixed value to the property.
- 17. The method of claim 11 wherein applying the rule of the important default property sheet comprises:
calculating a value, the calculated value based, at least in part, on the computing environment comprising the user interface; and providing the calculated value to the property.
- 18. The method of claim 11 wherein applying the rule of the important default property sheet does not depend upon the order of rules in the default property sheet.
- 19. The method of claim 11 wherein applying the rule of the important default property sheet comprises:
if the important default property sheet includes two rules to provide values to the property, and if one of the rules is more specific than the other rule, then applying the more specific rule to provide a value to the property.
- 20. The method of claim 11 wherein applying the non-default property sheet rule to provide a value to the property comprises:
if a non-default property sheet of the element includes a rule to provide a value to the property, then applying the rule of the non-default property sheet of the element to provide a value to the property; else if a non-default property sheet of an ancestor of the element includes a rule to provide a value to the property, then applying the rule of the non-default property sheet of the ancestor of the element to provide a value to the property.
- 21. The method of claim 11 wherein the user interface comprises a plurality of elements, wherein at least one element comprises a plurality of properties, and wherein there is at most one default property sheet for all of the elements of the user interface.
- 22. The method of claim 11 further comprising:
if there is no default property sheet that is not designated as important or if a default property sheet is not designated as important but does not include a rule to provide a value to the property, then if a value inheritance rule exists to provide a value to the property, then applying the value inheritance rule to provide a value to the property.
- 23. The method of claim 22 further comprising:
if no value inheritance rule exists to provides a value to the property, then providing a default value to the property.
- 24. A computer-readable medium containing computer-executable instructions for performing a method for providing a value to a property of an element of a user interface, the method comprising:
if a default property sheet is designated as important and includes a rule that provides a value to the property, then applying the rule of the important default property sheet to provide a value to the property; else if an in-line rule exists to provide a value to the property, then applying the in-line rule to provide a value to the property; else if a non-default property sheet includes a rule to provide a value to the property, then applying the non-default property sheet rule to provide a value to the property; else if a default property sheet is not designated as important and includes a rule to provide a value to the property, then applying the rule of the non-important default property sheet to provide a value to the property.
- 25. A computer-readable medium having stored thereon a default property sheet data structure, the default property sheet data structure comprising:
a first field comprising data representing a rule that provides a default value to a property of a first element of a user interface; a second field comprising data representing a rule that provides a default value to a property of a second element of the user interface; and a third field comprising data representing whether the default property sheet is designated as important.
- 26. The computer-readable medium of claim 25 wherein the first element of the user interface is selected from the group consisting of: visual elements and audio elements.
- 27. The computer-readable medium of claim 25 wherein the rule of the first field is selected from the group consisting of: a rule that provides a fixed value to the property of the first element of the user interface and a rule that provides a calculated value to the property of the first element of the user interface, the calculated value based, at least in part, on a computing environment that comprises the user interface.
- 28. The computer-readable medium of claim 25 wherein the first element and the second element are the same element, and wherein the property of the first element and the property of the second element are not the same property.
- 29. In a computing environment comprising a user interface, the user interface comprising a plurality of elements, each element comprising a property, a method for building a default property sheet, the method comprising:
adding to the default property sheet a first rule that provides a default value to a property of a first element of the user interface; adding to the default property sheet a second rule that provides a default value to a property of a second element of the user interface; and designating the default property sheet as important or as not important.
- 30. The method of claim 29 wherein the first element of the user interface is selected from the group consisting of: visual elements and audio elements.
- 31. The method of claim 29 wherein the first rule and the second rule express a presentation theme for the user interface.
- 32. The method of claim 31 wherein the presentation theme for the user interface is selected from the group consisting of: an accessibility theme, a system theme, and a branded application theme.
- 33. The method of claim 29 wherein the first rule is selected from the group consisting of: a rule that provides a fixed value to the property of the first element and a rule that provides a calculated value to the property of the first element, the calculated value based, at least in part, on the computing environment.
- 34. The method of claim 29 wherein the first element and the second element are the same element, and wherein the property of the first element and the property of the second element are not the same property.
- 35. The method of claim 29 wherein designating the default property sheet as important is performed in response to input from a user of the user interface.
- 36. The method of claim 29 further comprising:
accepting the first rule from a first author; and accepting the second rule from a second author, wherein the first author and the second author are not the same author.
- 37. A computer-readable medium containing computer-executable instructions for performing a method for building a default property sheet, the method comprising:
adding to the default property sheet a first rule that provides a default value to a property of a first element of a user interface; adding to the default property sheet a second rule that provides a default value to a property of a second element of the user interface; and designating the default property sheet as important or as not important.
- 38. In a computing environment comprising a user interface, the user interface comprising a plurality of elements, each element comprising a property, a method for building a default property sheet, the method comprising:
determining whether a first candidate rule meets criteria for addition; if the first candidate rule meets the criteria for addition, then adding to the default property sheet the first rule that provides a default value to a property of a first element of the user interface; determining whether a second candidate rule meets the criteria for addition; if the second candidate rules meets the criteria for addition, then adding to the default property sheet the second rule that provides a default value to a property of a second element of the user interface; and designating the default property sheet as important or as not important.
- 39. The method of claim 38 wherein the criteria comprise: the rule has no tree selector and a type of the rule matches that of an element adding the rule.
- 40. The method of claim 38 wherein the criteria comprise: the rule has a tree selector, a last tree selector of the rule is a child selector, and a type of the last tree selector of the rule matches that of an element adding the rule.
- 41. The method of claim 38 wherein the first element of the user interface is selected from the group consisting of: visual elements and audio elements.
- 42. The method of claim 38 wherein the first rule and the second rule express a presentation theme for the user interface.
- 43. The method of claim 42 wherein the presentation theme for the user interface is selected from the group consisting of: an accessibility theme, a system theme, and a branded application theme.
- 44. The method of claim 38 wherein the first rule is selected from the group consisting of: a rule that provides a fixed value to the property of the first element and a rule that provides a calculated value to the property of the first element, the calculated value based, at least in part, on the computing environment.
- 45. The method of claim 38 wherein the first element and the second element are the same element, and wherein the property of the first element and the property of the second element are not the same property.
- 46. The method of claim 38 wherein designating the default property sheet as important is performed in response to input from a user of the user interface.
- 47. The method of claim 38 further comprising:
accepting the first rule from a first author; and accepting the second rule from a second author, wherein the first author and the second author are not the same author.
- 48. A computer-readable medium containing computer-executable instructions for performing a method for building a default property sheet, the method comprising:
determining whether a first candidate rule meets criteria for addition; if the first candidate rule meets the criteria for addition, then adding to the default property sheet the first rule that provides a default value to a property of a first element of a user interface; determining whether a second candidate rule meets the criteria for addition; if the second candidate rules meets the criteria for addition, then adding to the default property sheet the second rule that provides a default value to a property of a second element of the user interface; and designating the default property sheet as important or as not important.
- 49. In a computing environment comprising a user interface, the user interface comprising an element, the element comprising a property, a method for providing a value to the property, the method comprising:
if a non-default property sheet is designated as important and includes a rule to provide a value to the property, and if a default property sheet includes a rule to provide a value to the property, and if the default property sheet rule is more specific than the non-default property sheet rule, then applying the more specific rule of the default property sheet to provide a value to the property.
- 50. The method of claim 49 wherein the element of the user interface is selected from the group consisting of: visual elements and audio elements.
- 51. The method of claim 49 wherein a non-default property sheet is designated as important by a user of the user interface.
- 52. The method of claim 49 wherein a non-default property sheet includes rules that express a presentation theme for the user interface.
- 53. The method of claim 52 wherein the presentation theme for the user interface is selected from the group consisting of: an accessibility theme, a system theme, and a branded application theme.
- 54. The method of claim 49 wherein applying the more specific rule of the default property sheet comprises:
providing a fixed value to the property.
- 55. The method of claim 49 wherein applying the more specific rule of the default property sheet comprises:
calculating a value, the calculated value based, at least in part, on the computing environment comprising the user interface; and providing the calculated value to the property.
- 56. The method of claim 49 wherein the user interface comprises a plurality of elements, wherein at least one element comprises a plurality of properties, and wherein there is at most one default property sheet for all of the elements of the user interface.
- 57. A computer-readable medium containing computer-executable instructions for performing a method for providing a value to a property of an element of a user interface, the method comprising:
if a non-default property sheet is designated as important and includes a rule to provide a value to the property, and if a default property sheet includes a rule to provide a value to the property, and if the default property sheet rule is more specific than the non-default property sheet rule, then applying the more specific rule of the default property sheet to provide a value to the property.
RELATED APPLICATION
[0001] The present application contains subject matter related to that of patent application “Method and System for Providing Interface Defaults,” Ser. No. ______ attorney docket number 218842.