Abstract: Table styles provide a way to format an entire spreadsheet table quickly and easily. According to described implementations, table styles can be created and customized for repeated use in a spreadsheet application. As a result, a user does not have to manually modify multiple formatting options for each table included in one or more spreadsheets. A graphical user interface is also described that provides simple user access to existing table styles that can be modified according to the user's requirements.
BACKGROUND
[0001] Tables can be used in a spreadsheet application to display and
summarize data to a reader in an organized, comprehendible and attractive manner. To accomplish this, spreadsheet tables may include - in addition to listing data - distinct sections such as header rows, subtotals rows, totals rows, highlighted columns and/or rows, shaded columns and/or rows, borders, linear delineations, etc.
[0002] One way to accomplish such table formatting is for a user to
manually format different sections of a table to create a functional and attractive look. However, if a spreadsheet or set of spreadsheets contains multiple tables, such manual formatting becomes tedious and time consuming. To ease this burden somewhat, a spreadsheet application may include a function that predefines a table format. Then, a user must merely apply a predefined format to a table.
[0003] However, predefined table formats may not suit a user's exact
requirements. If a user wants to create a customized table format with current spreadsheet applications, the user must either manually format spreadsheet tables from scratch or apply manual alterations to a predefined table format. Either method requires significant time and effort. For example, if a user prepares a spreadsheet that includes ten tables and the user wants all the tables to look alike, the user must either manually format all ten tables or format each table according to a predefined table format and then manually modify each of the ten tables.
SUMMARY
[0004] The present disclosure describes a framework that allows users
to create a customized table style that can be saved and easily applied to any number of tables in one or more spreadsheets. Like predefined table
formats, once a user has created a customized table style, the format of the customized table style can be applied to tables of data with a minimum of effort to instantly transform the data tables into easily readable and recognizable tables.
[0005] When creating a customized table style, distinct sections of a
table can be formatted separately from other sections of the table and such sections may be formatted as a single element. Therefore, individual cells in a table do not have to be formatted separately. A row of header cells, for example, can be formatted separately from other table cells. A precedence order of table elements may be established and/or modified to indicate which table element format takes precedence when two or more table elements intersect.
[0006] Also described herein are one or more graphical user interfaces
through which a user can easily create, save and apply customized table styles.
BRIEF DESCRIPTION OF THE DRAWINGS
[0007] The foregoing and other aspects of the subject matter disclosed
herein will become more readily appreciated and will become better
understood by reference to the following detailed description, when taken in
conjunction with the accompanying drawings, wherein:
[0008] Figure 1 depicts an exemplary table styles toolbar in
accordance with the present description.
[0009] Figure 2 depicts an exemplary menu associated with the table
styles toolbar of Fig. 1, the menu including an option to modify an existing
table style.
[0010] Figure 3 depicts an exemplary dialog for modifying a table
style.
[0011] Figure 4 is an exemplary non-exhaustive listing of table
elements that may be formatted via the exemplary dialog shown in Figure 3.
[0012] Figure 5 depicts a dialog for modifying a pivot table style.
[0013] Figure 6 is an exemplary non-exhaustive listing of pivot table
elements that may be formatted via the exemplary dialog shown in Figure 5.
[0014] Figure 7 is a flow diagram depicting an exemplary
methodological implementation of creating a customized table style.
[0015] Figure 8 is a block diagram depicting an exemplary general
purpose computing device that may be used in conjunction with one or more implementations described herein.
DETAILED DESCRIPTION Overview
[0016] The presently described subject matter relates to techniques for
creating customized spreadsheet table styles. As used herein, the term "table style" includes any type of table style such as, for example, pivot table styles. Pivot table styles and/or pivot table reports are typically more complicated than standard spreadsheet styles and reports and may include subtotal row(s), a grand total row, row subheadings, column subheadings, etc. Pivot table reports allow a user to view table data from various axes and provide a useful tool for viewing data.
[0017] One way that is described herein to create a custom table style
is to access a previously defined table style, such as a predefined table format or another custom table style. Modifications are made to the previously defined table style and the modified table style is saved under a unique table style name. Thereafter, a user may create a table of the new table style or may reformat existing tables according to the new table style and the user does not have to manually format each table to achieve a particular appearance.
[0018] One feature that is described herein is one that separates a table
style into separate areas, or elements. Each of the separate elements can be formatted apart from other areas. This allows all cells in an area to be formatted together instead of having to format each cell separately, thus saving significant time and effort. This is useful, for example, to apply a color gradient across a range of cells. Typically, color gradients have only been applied at a cell level, which cannot be properly applied to a group of cells such as a header row. When making modifications to the format of an existing table style, a user must only indicate to which table element subsequent formatting commands apply.
[0019] Formattable spreadsheet table elements are also described in
U.S. Patent Application Serial No. 11/214,682, filed contemporaneously
herewith by the present applicants, entitled "Formattable Spreadsheet Table
Elements with Automatic Updating." Said application is assigned to
Microsoft Corp., the assignee of the present invention.
[0020] Customizing spreadsheet table styles is accomplished using a
graphical user interface that is described in greater detail below. Through the graphical user interface, a user can conveniently access a table styles toolbar to access existing table styles, edit an existing table style to create a new table style or modify the existing table style, apply a table style to a table, etc. The graphical user interface also indicates which table elements that may be found in a table can be formatted.
[0021 ] The table elements listed in the graphical user interface may be
displayed according to a precedence order that indicates which table element formatting is to take precedence in the event that two or more table elements with different formatting intersect. In at least one implementation, the precedence order of the table element list is modifiable so that different precedence orders may be implemented.
[0022] These and other features of customizable spreadsheet table
styles are described in greater detail below, with respect to the previously described figures.
Exemplary Table Styles Toolbar
[0023] Fig. 1 depicts an exemplary table styles toolbar 100 in
accordance with the present description. The table styles toolbar 100 may appear on a typical spreadsheet toolbar (not shown) or it may appear on a spreadsheet user interface (not shown) upon activation of an icon appearing on the user interface. Any manner known in the art for displaying a toolbar
in a graphical user interface may be employed to display the exemplary table styles toolbar 100.
[0024] The exemplary table styles toolbar 100 includes a title bar 102
that describes the contents of the table styles toolbar 100. In the present example, the title bar 102 includes the title "Table Styles." A number of table styles thumbnail images (hereinafter "thumbnails") 104 - 109 are shown displayed in the exemplary table styles toolbar 100. Although multiple table styles thumbnails 104 - 109 are shown in the present example, it is noted that only one thumbnail may appear in the table styles toolbar 100. Furthermore, the table styles toolbar 100 may not include any thumbnails if no table styles are defined.
[0025] Each of the thumbnails 104-109 depicts a different table style
and is presented to a user so that the table style is easily recognizable. In the present example, enlarged versions of thumbnail 104, thumbnail 106 and thumbnail 108 are shown to illustrate how different table styles may be shown in a thumbnail 104 - 109. Thumbnail 104 includes shading on header and total rows and horizontal line delineators; thumbnail 106 includes shading on alternate rows; and thumbnail 108 includes shading in a header row and a header column.
[0026] Implementations may differ as to an appropriate size for the
thumbnails 104 - 109, an appropriate size being a size at which certain formatting features are clearly visible to a user. In the exemplary implementation shown, fill or border table element formatting is shown, but smaller formatting details such as font, etc. are not. In at least one implementation, a thumbnail 104 - 109 minimum size is 64 x 48 pixels while a minimum size for the table style shown within a thumbnail is 61 x 46 pixels. However, it is noted that other sizes may be used as long as
certain formatted table elements are visible so as to distinguish one table style from another.
[0027] In one or more implementations, a table style may be
previewed on a current table when a cursor is placed on a thumbnail 104 -109 for a predefined period of time. So if a user wants to see how a particular table would appear according to a certain table style, the user could select the table and then hover the cursor over a thumbnail. After a certain period of time elapsed, the table style shown in the thumbnail over which the cursor is hovered will be temporarily applied to the selected table. The user would then have the choice of selecting the table style to be applied to the table or to remove the cursor from the thumbnail to remove the temporary formatting.
[0028] The exemplary table styles toolbar 100 also includes a scroll
bar 110. The table styles toolbar 100 may be limited to a predefined width which can be exceeded if more than a certain number of thumbnails are displayed. The scroll bar 110 allows a portion of the thumbnails to be displayed within the predefined width while providing easy access to more thumbnails by actuating the scroll bar 110.
[0029] These and other features of the exemplary table styles toolbar
100 will be described in greater detail below, with respect to one or more subsequent figures.
Exemplary Menu With Modify Option
[0030] Fig. 2 depicts an exemplary menu 200 associated with the table
styles toolbar 100 of Fig. 1. The menu includes a modify option 202 that is actuated to modify an existing table style. Other options are also included but are not relevant to the present discussion.
[0031] The exemplary menu 200 is brought up by some user action,
e.g. a right mouse click on one of the thumbnails 104 - 109. In the present example, a user has activated the exemplary menu 200 by right clicking on thumbnail 106.
[0032] From the exemplary menu 200, a user can select the modify
option 202 to bring up an interface for modifying an existing format of a table style represented by thumbnail 106. One way in which a new table style can be created is to modify an existing table style through the exemplary menu 200 and the modify option 202 and then save the modified table style as a new table style.
[0033] An example of such an interface and use thereof to modify an
existing table style is shown and described below, with respect to Fig. 3.
Exemplary Dialog - Modifying a Table Style
[0034] Fig. 3 depicts an exemplary dialog 300 for modifying a table
style to change the table style or to create a new table style. The exemplary
dialog 300 includes a title bar ("Modify Table Style") 301, a name field 302
and a table element tile 304. The name field 302 provides a place where a
user can enter a name for a new table style (likely a modified version of an
existing table style). The new table style can them be identified and recalled
at any time using the name entered in the name field 302.
[0035] The table element tile 304 includes a list of formattable table
elements 306 ("Whole Row", "Header Row", "Total Row", etc.) that
identify sections of a table that may be formatted distinctly from one or
more other sections of the table. The exemplary dialog 300 includes an
element formatting section 308 that displays current formatting of a table
element currently selected from the list of formattable table elements.
[0036] In the example shown in Fig. 3, table element "Total Row" 309
is highlighted. The current formatting for the "Total Row" table element, as
shown in the element formatting section 308 includes: Gils Sans MT 10,
Bold; Left, Right, Top, Bottom Borders; Left, Center Alignment; Shaded.
[0037] Although not explicitly shown here, a table element (such as
"Total Row") may be formatted as a single element. For example, if a user
wants to apply a color gradient across a total row of cells, the user would
select "Total Row" 309 and select a color and/or pattern. The color/and or
pattern would be applied across an entire row of cells (e.g. lighter shading in
the first cell of the row and darker shading in the last cell of the row) instead
of to individual cells (e.g. lighter and darker shading in each cell of the row).
[0038] The table element tile 304 also includes a scroll bar 310 for
scrolling through the list of table elements, a table style preview thumbnail 312 (hereinafter "preview 312"), and a format button 314. The preview 312 is similar to the thumbnails 104 - 109 shown in Fig. 1 and is configured to show how a table formatted according to the table style being modified would appear under current element formats.
[0039] The format button 314, when actuated, brings up a format
screen (not shown) that is typical of productivity software application
formatting screens. Such a format screen is used to enter formats for text,
borders, lines, cells, etc. When formats are entered, the newly entered
formats appear in the element formatting section 308.
[0040] The exemplary dialog 300 also includes a default control 316
where a user can set the table style being modified as a default table style for
all tables in a spreadsheet or group of spreadsheets. The exemplary dialog 300 also includes a cancel button 320 and an "OK" button 322. If the cancel button 320 is actuated, previously entered changes are discarded and the table style remains in the format that previously existed. When a user wants to save the previously entered format changes, the user actuates the "OK" button 322 to permanently store the changes.
Exemplary Formattable Table Elements
[0041] Fig. 4 is an exemplary non-exhaustive listing 400 of basic table
elements that may be formatted via the exemplary dialog shown in Figure 3. The listing 400 of basic table elements provides basic table elements from simple tables that can be formatted. As previously noted, when a table element is selected, subsequently entered formatting commands are applied to cells contained in the selected table element.
[0042] The table elements are shown listed in a precedence order. This
order may be user-modifiable or pre-configured as shown or in a different
order. A first table element listed below a second table element indicates
that the second table element takes precedence over the first table element.
If the first and second table elements intersect, then the formatting of the
second table element applies to the intersection if the formatting of the first
table element is different from the formatting of the second table element.
[0043] Although a precedence order corresponds to the elements
listing 400, in at least one implementation certain types of formatting does
not exclude other types of formatting of the same element. In very many
cases, formatting styles will overlap within tables. If the formatting styles
are incompatible - e.g. each formatting style deals with element borders -
then the precedence order will apply. If, on the other hand, the formatting
styles are not incompatible - e.g. bold text and color fill - then both of the
overlapping formats can be applied. In the previous example, overlapping
elements will have bold text and the specified color fill.
[0044] To accomplish such an implementation, compatible formatting
styles are identified, e.g. color fill and bold text. When rendering a formatted table style, the precedence order takes effect when two or more overlapping formatting styles are not identified as being compatible with each other.
[0045] As noted, the exemplary listing 400 of table elements is not
exhaustive. That is, other table elements may be included in the listing in
one or more other implementations. A more detailed description of the
listed table elements follows.
[0046] Whole Table: All cells included in the table.
[0047] First Row Stripe: Tables may be formatted with alternating
stripe colors/shades. The first row stripe corresponds to odd number rows of
the table.
[0048] Second Row Stripe: Corresponds to even number rows of the
table.
[0049] First Column Stripe: Tables may be formatted with alternating
column colors/shades. The first column stripe corresponds with odd number
columns of the table.
[0050] Second Column Stripe: Corresponds to even number columns
of the table.
[0051] Last Column: Cells included in the last (right-most) column of
the table.
[0052] First Column: Cells included in the first (left-most) column of
the table.
[0053] Header Row: The "Title" area of the pivot. All the rows above
the data section of the table. Filter dropdowns are included in this element.
[0054] Total Row: Cells included in the bottom row of the table.
[0055] First Header Row Cell: The first (left-most) cell in the header
row (i.e. the first row of the table).
[0056] Last Header Row Cell: The last (right-most) cell in the header
row of the table.
[0057] First Total Row Cell: The first (left-most) cell in the total row
(i.e. the last row of the table).
[0058] Last Total Row Cell: The last (right-most) cell in the total row
of the table.
Exemplary Dialog - Modifying a Pivot Table Style
[0059] Fig. 5 depicts an exemplary dialog 500 for modifying a pivot
table style. Exemplary dialog 500 is similar to exemplary dialog 300 shown in Fig. 3 except that exemplary dialog 500 includes additional table elements in a table elements section 502. The table elements shown in the table element section 502 include "Whole Table", "First Column", "Grand Total Column", "Subtotal Column" and "Subtotal Row 1." Other table elements may be displayed and are listed below, in Fig. 6.
Exemplary Extended Formattable Table Elements
[0060] Fig. 6 is an exemplary non-exhaustive listing 600 of extended
table elements that may be formatted via the exemplary dialog shown in Figure 5. As previously noted, when a table element is selected, subsequently entered formatting commands are applied to cells contained in the selected table element.
[0061 ] The table elements are shown listed in a precedence order. This
order may be user-modifiable or pre-configured as shown or in a different
order. A first table element listed below a second table element indicates
that the second table element takes precedence over the first table element.
If the first and second table elements intersect, then the formatting of the
second table element applies to the intersection if the formatting of the first
table element is different from the formatting of the second table element.
[0062] As noted, the exemplary listing 600 of table elements is not
exhaustive. That is, other table elements may be included in the listing in one or more other implementations. A more detailed description of the listed table elements follows.
[0063] Whole Table: All cells included in the table.
[0064] Page Field Labels: Labels next to page field dropdowns.
[0065] Page Field Values: Dropdowns for page field items.
[0066] First Row Stripe: Tables may be formatted with alternating
stripe (row) colors/shades. The first row stripe corresponds to odd number rows of the table.
[0067] Second Row Stripe: Corresponds to even number rows of the
table.
[0068] First Column Stripe: Tables may be formatted with alternating
column colors/shades. The first row stripe corresponds to odd number columns of the table.
[0069] Second Column Stripe: Corresponds to even number columns
of the table.
[0070] Grand Total Column: Cells included in the last column of the
table. Corresponds to "Last Column" table element (Fig. 4).
[0071] Subtotal Column 1: Cells in columns of that table containing
subtotals starting at label cell and extended to Grand Total Row. Subtotal
Column 1 is outmost subtotal.
[0072] Subtotal Column 2: See "Subtotal Column 1". Subtotal
Column 2 appears next to Subtotal Column 1 and alternates thereafter with
Subtotal Column 3.
[0073] Subtotal Column 3: See "Subtotal Column 2."
[0074] First Column: Cells included in the first (left-most) column of
the table (to the left of the data).
[0075] Blank Row: An empty row. Blank rows can be inserted after
each item.
[0076] Subtotal Row 1: The first level of subtotals.
[0077] Subtotal Row 2: The second level of subtotals. After three
levels, Subtotal Row 2 and Subtotal Row 3 alternate.
[0078] Subtotal Row 3: See "Subtotal Row 2".
[0079] Row Subheading 1: Rows of the outer most level of the pivot
table that where the field is expanded in the pivot table. All the rows for a
field are considered to be expanded if that row is expanded anywhere in the
pivot table.
[0080] Row Subheading 2: After the first subheading, the subheadings
alternate between the 2nd and 3rd subheading formatting. Like Subheading
1, these subheadings are rows of the pivot table that where the field is
expanded in the pivot table.
[0081] Row Subheading 3: See "Row Subheading 3".
[0082] Grand Total Row: Cells included in the bottom row of the table.
Corresponds to "Total Row" table element (Fig. 4).
[0083] Header Row: The "Title" area of the pivot. All the rows above
the data section of the table. Filter dropdowns are included in this element.
[0084] Column Subheading 1: Label for the outermost field on
columns. Also includes the label of that level's subtotal column.
[0085] Column Subheading 2: Label of the second level of fields on
columns. Also includes that level's subtotal columns. After the third level,
Column Subheading 2 and Column Subheading 3 alternate.
[0086] Column Subheading 3: See "Column Subheading 2".
[0087] First Header Row Cells: First cells in the top (header) row.
Corresponds to "First Header Row Cell" table element (Fig. 4).
Exemplary Methodological Implementation; Customized Table Style Creation
[0088] Fig. 7 is an exemplary flow diagram depicting an exemplary
methodological implementation of creating a customized table style. In the following discussion, continuing reference is made to elements and reference numerals shown in previous figures. It is noted that although certain steps are shown in a particular order in Fig. 7, the steps - or a combination thereof- may be performed in one or more other orders in any particular implementation.
[0089] At block 702, the table style toolbar (100, Fig. 1) is displayed to
a user. As previously, noted, this display may occur in any of several ways. The table style toolbar 100 may be displayed as a part of a larger graphical user interface or may be displayed in response to actuation of a table style icon. The particular implementation does not matter to the present discussion.
[0090] At block 704, a user selection of a table style is received. Any
manner known in the art to effect a user selection may be utilized. For
example, the selection may be received when the user clicks on a thumbnail
(104 - 109, Fig. 1) of a table style. Thereafter at block 706, a user may
select the modify option (202, Fig. 2) of the exemplary menu (200, Fig. 2).
[0091 ] At block 708, a table element selection is received. This occurs
when the user selects a table element from the listing of table elements 306 in the table elements tile 304 of the exemplary dialog 300 (Fig. 3). The user's manual entry of formatting characteristics is received at block 710. If a preview 312 is implemented, the preview is updated with the new formatting and is displayed at block 712.
[0092] If the user enters another table element to format ("Yes"
branch, block 714), then the process repeats from block 708. If the user does not select another table element to format ("No" branch, block 714), then a table style name is received at block 716. In at least one implementation, if a table style name is not entered, the table style that was retrieved via the table style toolbar will be saved with the name previously associated therewith.
[0093] At block 718, the table style is stored in memory and is
associated with the table style name entered in block 716.
Exemplary Operating Environment
[0094] Fig. 8 is a block diagram depicting a general purpose
computing environment 800 that may be used in one or more implementations according to the present description. The computing system environment 800 is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the claimed subject matter. Neither should the
computing environment 800 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment 800.
[0095] The described techniques and objects are operational with
numerous other general purpose or special purpose computing system
environments or configurations. Examples of well known computing
systems, environments, and/or configurations that may be suitable for use
include, but are not limited to, personal computers, server computers, hand¬
held or laptop devices, multiprocessor systems, microprocessor-based
systems, set top boxes, programmable consumer electronics, network PCs,
minicomputers, mainframe computers, distributed computing environments
that include any of the above systems or devices, and the like.
[0096] The following description may be couched in the general
context of computer-executable instructions, such as program modules,
being executed by a computer. Generally, program modules include
routines, programs, objects, components, data structures, etc. that perform
particular tasks or implement particular abstract data types. The described
implementations may also be practiced in distributed computing
environments where tasks are performed by remote processing devices that
are linked through a communications network. In a distributed computing
environment, program modules may be located in both local and remote
computer storage media including memory storage devices.
[0097] With reference to Fig. 8, an exemplary system for
implementing the invention includes a general purpose computing device in the form of a computer 810. Components of computer 810 may include, but are not limited to, a processing unit 820, a system memory 830, and a system bus 821 that couples various system components including the system memory to the processing unit 820. The system bus 821 may be any
of several types of bus structures including a memory bus or memory
controller, a peripheral bus, and a local bus using any of a variety of bus
architectures. By way of example, and not limitation, such architectures
include Industry Standard Architecture (ISA) bus, Micro Channel
Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics
Standards Association (VESA) local bus, and Peripheral Component
Interconnect (PCI) bus also known as Mezzanine bus.
[0098] Computer 810 typically includes a variety of computer readable
media. Computer readable media can be any available media that can be accessed by computer 810 and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by computer 810. Communication media typically embodies computer readable instructions, data structures and/or program. Combinations of the any of the foregoing should also be included within the scope of computer readable media.
[0099] The system memory 830 includes computer storage media in
the form of volatile and/or nonvolatile memory such as read only memory (ROM) 831 and random access •memory (RAM) 832. A basic input/output
system 833 (BIOS), containing the basic routines that help to transfer information between elements within computer 810, such as during start-up, is typically stored in ROM 831. RAM 832 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 820. By way of example, and not limitation, FIG. 8 illustrates operating system 834, application programs 835, other program modules 836, and program data 837.
[00100] The computer 810 may also include other removable/non¬removable, volatile/nonvolatile computer storage media. By way of example only, Fig. 8 illustrates a hard disk drive 841 that reads from or writes to non-removable, nonvolatile magnetic media, a magnetic disk drive 851 that reads from or writes to a removable, nonvolatile magnetic disk 852, and an optical disk drive 855 that reads from or writes to a removable, nonvolatile optical disk 856 such as a CD ROM or other optical media. Other removable/non-removable, volatile/nonvolatile computer storage media that can be used in the exemplary operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks (DVD), digital video tape, solid state RAM, solid state ROM, and the like. The hard disk drive 841 is typically connected to the system bus 821 through a non-removable memory interface such as interface 840, and magnetic disk drive 851 and optical disk drive 855 are typically connected to the system bus 821 by a removable memory interface, such as interface 850.
[00101] The drives and their associated computer storage media discussed above and illustrated in Fig. 8, provide storage of computer readable instructions, data structures, program modules and other data for the computer 810. In Fig. 8, for example, hard disk drive 841 is illustrated as storing operating system 844, application programs 845, other program
modules 846, and program data 847. Note that these components can either be the same as or different from operating system 834, application programs 835, other program modules 836, and program data 837. Operating system 844, application programs 845, other program modules 846, and program data 847 are given different numbers here to illustrate that, at a minimum, they are different copies. A user may enter commands and information into the computer 810 through input devices such as a keyboard 862 and pointing device 861, commonly referred to as a mouse, trackball or touch pad. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to the processing unit 820 through a user input interface 860 that is coupled to the system bus 821, but may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB). A monitor 891 or other type of display device is also connected to the system bus 821 via an interface, such as a video interface 890. In addition to the monitor, computers may also include other peripheral output devices such as speakers 897 and printer 896, which may be connected through an output peripheral interface 895. A camera 863 (such as a digital/electronic still or video camera, or film/photographic scanner) capable of capturing a sequence of images 864 can also be included as an input device to the personal computer 810. Further, while just one camera is depicted, multiple cameras could be included as an input device to the personal computer 810. The images 864 from the one or more cameras are input into the computer 810 via an appropriate camera interface 865. This interface 865 is connected to the system bus 821, thereby allowing the images to be routed to and stored in the RAM 832, or one of the other data storage devices associated with the computer 810. However, it is noted that image data can be input into the computer 810 from any of the
aforementioned computer-readable media as well, without requiring the use of the camera 863.
[00102] The computer 810 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 880. The remote computer 880 may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer 810, although only a memory storage device 881 has been illustrated in Fig. 8. The logical connections depicted in Fig. 8 include a local area network (LAN) 871 and a wide area network (WAN) 873, but may also include other networks. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets and the Internet.
[00103] When used in a LAN networking environment, the computer 810 is connected to the LAN 871 through a network interface or adapter 870. When used in a WAN networking environment, the computer 810 typically includes a modem 872 or other means for establishing communications over the WAN 873, such as the Internet. The modem 872, which may be internal or external, may be connected to the system bus 821 via the user input interface 860, or other appropriate mechanism. In a networked environment, program modules depicted relative to the computer 810, or portions thereof, may be stored in the remote memory storage device. By way of example, and not limitation, Fig. 8 illustrates remote application programs 885 as residing on memory device 881. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.
Conclusion[00104] While one or more exemplary implementations have been illustrated and described, it will be appreciated that various changes can be made therein without departing from the spirit and scope of the claims appended hereto.
CLAIMS
1. A method, comprising:
displaying a table style user interface;
receiving a table style selection; receiving formatting instructions for the table style selection; applying formatting to the table style selection according to the received formatting instructions; storing the table style selection in a recallable location so that the table style selection may be recalled and applied to a spreadsheet table.
2. The method as recited in claim 1, further comprising receiving
a table element selection and wherein: the step of receiving formatting instructions further comprises receiving formatting instructions for the table element selection; and the step of applying formatting further comprises applying formatting to the table element selection according to the received formatting instructions.
3. The method as recited in claim 2, wherein: the table element selection further comprises a first table element selection; the method further comprises receiving formatting instructions for a second table element selection and applying formatting to the second table element selection according to the formatting instructions received for the second table element; applying formatting to overlapping table element cells according to a precedence order of table elements if the first table element and the second table element overlap.
4. The method as recited in claim 3, further comprising
identifying whether formats of overlapping table element cells are
compatible, and wherein the step of applying formatting to overlapping table
element cells is executed only if the formats of the overlapping table
element cells are incompatible.
5. The method as recited in claim 3, wherein the precedence order
is modifiable.
6. The method as recited in claim 1, further comprising displaying
a preview thumbnail image that shows an exemplary table formatted
according to the received formatting instructions.
7. One or more computer-readable media containing executable
instructions that, when executed, cause a graphical user interface to be
displayed on an electronic display device, the graphical user interface
comprising: a table styles toolbar that displays one or more selectable table style thumbnail images, each table style thumbnail image corresponding to a table style; a selectable modify option that appears upon user selection of a table style thumbnail image; and a dialog that appears upon user selection of the modify option, the dialog further comprising: means for selecting at least one table element of the table style; means for selecting one or more formats to apply to a selected table element; and means for saving the table style with the applied formats so that the formats can be applied to one or more spreadsheet tables by applying the table style to the one or more spreadsheet tables.
8. The one or more computer-readable media as recited in claim 7,
further comprising a preview thumbnail image that is displayed on the
dialog, the preview thumbnail image indicating an appearance of the table
style according to the applied formats.
9. The one or more computer-readable media as recited in claim 7,
further comprising a table name field for receiving a table name that will be
associated with the table style with the applied formats.
10. One or more computer-readable media containing executable
instructions that, when executed, implement the following steps:
receiving a user selection of a table style; receiving one or more modifications to the table style to create a modified table style;
storing the modified table style so that the modified table style can be applied to one or more spreadsheet tables.
11. The one or more computer-readable media as recited in claim
10, wherein the user selection of a table style is made by selecting the table
style from a table style toolbar of a user interface.
12. The one or more computer-readable media as recited in claim
10, wherein the modifications further comprise formatting modifications.
13. The one or more computer-readable media as recited in claim
12, wherein the formatting modifications are applied to one or more table
elements, each table element including one or more table cells.
14. The one or more computer-readable media as recited in claim
13, wherein table cells in portions of two or more table elements that overlap
and have different formatting are formatted according to a table element
formatting precedence.
15. The one or more computer-readable media as recited in claim
14, further comprising determining if the formatting of table cells in
overlapping table elements is compatible and formatting the table cells in
overlapping table elements done according to a table element formatting
precedence only if the formatting is incompatible.
| # | Name | Date |
|---|---|---|
| 1 | 1291-delnp-2008-Correspondence Others-(12-03-2008).pdf | 2008-03-12 |
| 2 | 1291-delnp-2008-Assignment-(12-03-2008).pdf | 2008-03-12 |
| 3 | 1291-delnp-2008-Form-3-(12-08-2008).pdf | 2008-08-12 |
| 4 | 1291-delnp-2008-Correspondence Others-(12-08-2008).pdf | 2008-08-12 |
| 5 | 1291-delnp-2008-pct-304.pdf | 2011-08-21 |
| 6 | 1291-delnp-2008-pct-237.pdf | 2011-08-21 |
| 7 | 1291-delnp-2008-pct-220.pdf | 2011-08-21 |
| 8 | 1291-delnp-2008-pct-210.pdf | 2011-08-21 |
| 9 | 1291-delnp-2008-gpa.pdf | 2011-08-21 |
| 10 | 1291-delnp-2008-form-5.pdf | 2011-08-21 |
| 11 | 1291-delnp-2008-form-3.pdf | 2011-08-21 |
| 12 | 1291-delnp-2008-form-2.pdf | 2011-08-21 |
| 13 | 1291-DELNP-2008-Form-18.pdf | 2011-08-21 |
| 14 | 1291-delnp-2008-form-1.pdf | 2011-08-21 |
| 15 | 1291-delnp-2008-drawings.pdf | 2011-08-21 |
| 16 | 1291-delnp-2008-description (complete).pdf | 2011-08-21 |
| 17 | 1291-delnp-2008-correspondence-others.pdf | 2011-08-21 |
| 18 | 1291-delnp-2008-claims.pdf | 2011-08-21 |
| 19 | 1291-delnp-2008-assignment.pdf | 2011-08-21 |
| 20 | 1291-delnp-2008-abstract.pdf | 2011-08-21 |
| 21 | MTL-GPOA - PRS.pdf ONLINE | 2015-03-05 |
| 22 | MS to MTL Assignment.pdf ONLINE | 2015-03-05 |
| 23 | FORM-6-801-900(PRS).45.pdf ONLINE | 2015-03-05 |
| 24 | MTL-GPOA - PRS.pdf | 2015-03-13 |
| 25 | MS to MTL Assignment.pdf | 2015-03-13 |
| 26 | FORM-6-801-900(PRS).45.pdf | 2015-03-13 |
| 27 | Examination Report Reply Recieved [30-09-2015(online)].pdf | 2015-09-30 |
| 28 | Description(Complete) [30-09-2015(online)].pdf | 2015-09-30 |
| 29 | Correspondence [30-09-2015(online)].pdf | 2015-09-30 |
| 30 | 1291-delnp-2008-Form-3-(21-03-2016).pdf | 2016-03-21 |
| 31 | 1291-delnp-2008-Correspondence Others-(21-03-2016).pdf | 2016-03-21 |
| 32 | OTHERS [28-04-2016(online)].pdf | 2016-04-28 |
| 33 | Examination Report Reply Recieved [28-04-2016(online)].pdf | 2016-04-28 |
| 34 | Description(Complete) [28-04-2016(online)].pdf | 2016-04-28 |
| 35 | Correspondence [28-04-2016(online)].pdf | 2016-04-28 |
| 36 | Claims [28-04-2016(online)].pdf | 2016-04-28 |
| 37 | Abstract [28-04-2016(online)].pdf | 2016-04-28 |
| 38 | 1291-delnp-2008-First Examination Report-(02-05-2016).pdf | 2016-05-02 |
| 39 | 1291-DELNP-2008_EXAMREPORT.pdf | 2016-06-30 |
| 40 | 1291-DELNP-2008-HearingNoticeLetter.pdf | 2019-03-19 |
| 41 | 1291-DELNP-2008-Correspondence to notify the Controller (Mandatory) [12-04-2019(online)].pdf | 2019-04-12 |
| 42 | 1291-DELNP-2008-Written submissions and relevant documents (MANDATORY) [01-05-2019(online)].pdf | 2019-05-01 |
| 43 | 1291-DELNP-2008-RELEVANT DOCUMENTS [01-05-2019(online)].pdf | 2019-05-01 |
| 44 | 1291-DELNP-2008-PETITION UNDER RULE 137 [01-05-2019(online)].pdf | 2019-05-01 |
| 45 | 1291-DELNP-2008-FORM 3 [01-05-2019(online)].pdf | 2019-05-01 |
| 46 | 1291-DELNP-2008-Power of Attorney-100519.pdf | 2019-05-23 |
| 47 | 1291-DELNP-2008-Correspondence-100519.pdf | 2019-05-23 |