This application claims the benefit under 35 U.S.C. §119(a) of a Korean patent application No. 10-2005-0056936, filed on Jun. 29, 2005, in the Korean Intellectual Property Office, the entire disclosure of which is hereby incorporated by reference.
1. Field of the Invention
The present invention relates to an apparatus and method for printing a file using a toolbar button. More particularly, the present invention relates to an apparatus and method for printing a file, by allowing a user to make a toolbar button for selecting a printer and printing options and printing the file by using the created toolbar button.
2. Description of the Related Art
Referring to
When the user wants to print a file, the user activates a host application related to the file. The host application forms an application form including toolbar buttons, such as the printing toolbar button 100, by loading resources set therein, such as menus, caption functions, icons, and toolbar buttons.
When the user wants to print the file, in step 110, the user selects the printing toolbar button 100 among the toolbar buttons. When the host application detects that the user has clicked the printing toolbar button 100 among the toolbar buttons, in step 120, the host application calls a default printer driver by using a Windows® Graphic Device Interface (GDI) command. In step 130, the called printer driver generates an emulation command for a printing task in a printer and transmits the generated emulation command to the printer.
Most of host applications provide a toolbar so that a user can quickly and conveniently select frequently used functions, for instance, new file creation, file open, file storage, and file printing functions. A printing toolbar button for printing a file is generally provided in such a toolbar. However, since only a default printer among printers that the host can use at that moment is simply set to the printing toolbar button, it is not possible for a user to print the file by selecting another printer through the printing toolbar button.
In addition, since a printing task is activated as soon as the printing toolbar button is clicked, the user cannot know in advance the printing options set to a printer for performing the printing task and can know such options only after printing the file. Thus, if the user wants to set a printing option to a printer and print a file by using the printer, the user cannot use a printing toolbar button even if the printing toolbar button exists in a host application, and can print the file only after he/she opens a user interface for setting a printing environment and sets the printing option to the printer.
Accordingly, there is a need for an improved apparatus and method for setting a printing option and for selecting a printer through a printing toolbar button.
An aspect of exemplary embodiments of the present invention is to address at least the above problems and/or disadvantages and to provide at least the advantages described below. Accordingly, an aspect of exemplary embodiments of the present invention is to provide an apparatus and method for printing a file, using a toolbar button by allowing a user to make a toolbar button for selecting a printer and printing options and printing the file by using the created toolbar button without using an additional user interface.
According to an aspect of the present invention, an apparatus for printing a file by using a toolbar button is provided. The apparatus comprises a first user interface for receiving printing options to be selected by using the toolbar button, and a controller for creating the toolbar button to allow a user to print the file based on a selected printing option and inserting the created toolbar button into a host application.
The apparatus may further comprise a second user interface for receiving available printers to be selected by using the toolbar button, and the controller creates the toolbar button based on a printing option selected from among the printing options of a printer selected from among the available printers.
The first user interface may comprise a display box for displaying the available printers, at least one push button for adding a printer selected from among the available printers displayed in the display box in a display portion or deleting a selected printer from the display portion, and the display portion for displaying finally added printers.
The second user interface may comprise a display box for displaying the printing options, at least one push button for adding a printing option from among the printing options displayed in the display box in a display portion or deleting a selected printing option from the display portion, and the display portion for displaying the finally added printing options.
The controller may control the host application to store the selected and added/deleted printers and printing options in a file or registry.
The apparatus may further comprise a driver core for printing the file created in the host application.
If a desired printer and a desired printing option are selected from the inserted toolbar button, the controller may control the driver core to print the file using the selected printing option in the selected printer.
The first or second user interface and the controller may operate in a printer driver or a host application.
The controller may detect an application message when the host application operates and insert the created toolbar button into the host application if the detected message relates to a toolbar button.
The controller may activate the inserted toolbar button by using a drop down list or an icon list.
According to another aspect of the present invention, a method of printing a file by using a toolbar button is provided. The method comprises receiving available printers to be selected by using the toolbar button, receiving printing options to be selected by using the toolbar button, creating the toolbar button allowing a user to print the file based on a printing option selected from among the printing options of a printer selected from among the available printers, and inserting the created toolbar button into a host application.
The method may further comprise printing the file by using the inserted toolbar button.
In the receiving of the available printers, the available printers or the printing options may be displayed in a display box.
In the receiving of the available printers, a selected printer from among the available printers displayed in the display box or a selected printing option from among the printing options displayed in the display box may be added in a display portion using at least one push button, or a selected printer or a selected printing option may be deleted from the display portion using the at least one push button.
In the receiving of the available printers, the finally added printers or printing options may be displayed in the display portion.
The inserting may comprise detecting an application message when the host application operates, inserting the created toolbar button into the host application if the detected message relates to a toolbar button, and activating the inserted toolbar button.
In the activation, the inserted toolbar button may be activated by using a drop down list or an icon list.
The method may further comprise if a printer and a printing option to be used for printing the file are selected from the drop down list or the icon list, printing the file based on the selected option in the selected printer.
The above and other objects, features, and advantages of certain exemplary embodiments of the present invention will be more apparent from the following description taken in conjunction with the accompanying drawings, in which:
Throughout the drawings, like reference numerals will be understood to refer to like parts, components and structures.
The matters defined in the description such as a detailed construction and elements are provided to assist in a comprehensive understanding of the embodiments of the invention. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the invention. Also, descriptions of well-known functions and constructions are omitted for clarity and conciseness. An apparatus and method for printing a file using a toolbar button according to exemplary embodiments of the present invention will now be described more fully with reference to the accompanying drawings.
Printers to be selected by using the toolbar button are received by using the first user interface 200. Printer names, manufacturers or user settings, and model names can be displayed on a printer selection screen of the first user interface 200.
Printing options to be selected by using the toolbar button are received by using the second user interface 201. The first user interface 200 and the second user interface 201 can be implemented with a single interface.
Both the first user interface 200 and the second user interface 201 can be included in the apparatus, or one of them can be selectively included in the apparatus.
The display box 300 displays printing options provided by the apparatus.
The add button 310 is used to add a selected printing option from among the printing options displayed in the display box 300 in the display portion 330, and the delete button 320 is used to delete a selected printing option from the display portion 330.
The display portion 330 displays the finally added printing options. Any printing option added by using the add button 310 and displayed in the display portion 330 can also be deleted from the display portion 330 using the delete button 320.
The controller 210 creates the toolbar button for allowing a user to print a file based on a selected printing option of a selected printer and inserts the created toolbar button into a host application.
Referring to
A method of inserting a toolbar button into an application as described above is called hooking. A general host application has a unique number, which is a process ID, for example, a handle. In addition, the host application uses a common Windows® message in an operation thereof. Thus, the controller 210 determines a toolbar message for inserting a toolbar button into the host application among Windows® messages created with a handle of the host application. If a toolbar message for the host application is detected, the controller 210 inserts a created toolbar button into an appropriate location by obtaining Windows® information.
The controller 210 activates the inserted toolbar button by using a drop down list or an icon list. For example, to activate the toolbar button inserted into the host application, a TB_GETSTATE message is used.
By selecting the toolbar button inserted into the host application, a drop down list is activated, and the user can print a file by selecting a desired printer and printing option from the drop down list. Referring to
Referring to
Referring to
The controller 210 controls the host application to store the selected and added/deleted printers and printing options in a file or registry.
The driver core 230 prints a file created by using the host application. The driver core 230 is installed in the selected printer driver and generates an emulation command for allowing an emulation to be performed in the selected printer according to the selected printing option. Here, the driver core 230 prints the file by reading the selected printing option from the drop down list of the toolbar button and setting “Devmode” used to determine an option in the printer driver to the selected printing option.
When a desired printer and a desired printing option are selected from the inserted toolbar button, the controller 210 controls the driver core 230 to print the file by using the selected printing option in the selected printer.
In an exemplary implementation, the first user interface 200 and the controller 210 operate in a printer driver or a host application.
Referring to
After the printers and printing options are received using the first and second user interfaces 200 and 201, in step 510, the controller 210 creates the toolbar button allowing a user to print a file based on a selected printing option in a selected printer.
When a host application operates, in step 520, the controller 210 inserts the created toolbar button into the host application.
Referring to
In step 530, when the drop down list or icon list appears by clicking the inserted toolbar button, the user prints the file by selecting a desired printer and a desired printing option from the drop down list or icon list.
An exemplary embodiment of the present invention may be embodied in a general-purpose computer by running a program from a computer-readable medium, including but not limited to storage media such as magnetic storage media (ROMs, floppy disks, hard disks, and the like), optically readable media (CD-ROMs, DVDs, and the like).
As described above, according to exemplary embodiments of the present invention, by receiving printers and printing options to be selected by using a toolbar button and creating the toolbar button for allowing a user to print a file by using a selected printing option of a selected printer, the user can print the file by setting a desired printer and printing option using the toolbar button without using an additional user interface.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the present invention as defined by the following claims and the equivalents.
Number | Date | Country | Kind |
---|---|---|---|
10-2005-0056936 | Jun 2005 | KR | national |
Number | Name | Date | Kind |
---|---|---|---|
5079723 | Herceg et al. | Jan 1992 | A |
5345550 | Bloomfield | Sep 1994 | A |
5530796 | Wang | Jun 1996 | A |
5559948 | Bloomfield et al. | Sep 1996 | A |
5644737 | Tuniman et al. | Jul 1997 | A |
5659693 | Hansen et al. | Aug 1997 | A |
5699495 | Snipp | Dec 1997 | A |
5717439 | Levine et al. | Feb 1998 | A |
5760775 | Sklut et al. | Jun 1998 | A |
5760776 | McGurrin et al. | Jun 1998 | A |
5784583 | Redpath | Jul 1998 | A |
5828376 | Solimene et al. | Oct 1998 | A |
5872568 | Alimpich et al. | Feb 1999 | A |
5940078 | Nagarajayya et al. | Aug 1999 | A |
5982367 | Alimpich et al. | Nov 1999 | A |
5996029 | Sugiyama et al. | Nov 1999 | A |
6076080 | Morscheck et al. | Jun 2000 | A |
6100885 | Donnelly et al. | Aug 2000 | A |
6104470 | Streefkerk et al. | Aug 2000 | A |
6133915 | Arcuri et al. | Oct 2000 | A |
6148346 | Hanson | Nov 2000 | A |
6232968 | Alimpich et al. | May 2001 | B1 |
6344859 | Alimpich et al. | Feb 2002 | B1 |
6384849 | Morcos et al. | May 2002 | B1 |
6456304 | Angiulo et al. | Sep 2002 | B1 |
6542173 | Buckley | Apr 2003 | B1 |
6556875 | Nagasaka et al. | Apr 2003 | B1 |
6599244 | Epps et al. | Jul 2003 | B1 |
6621532 | Mandt | Sep 2003 | B1 |
6686938 | Jobs et al. | Feb 2004 | B1 |
6704033 | Moore et al. | Mar 2004 | B2 |
6707568 | Yu | Mar 2004 | B1 |
6727919 | Reder et al. | Apr 2004 | B1 |
6762771 | Niki et al. | Jul 2004 | B1 |
6888643 | Grimes | May 2005 | B1 |
6962449 | Lermant et al. | Nov 2005 | B2 |
6967728 | Vidyanand | Nov 2005 | B1 |
7036087 | Odom | Apr 2006 | B1 |
7081969 | Motamed et al. | Jul 2006 | B1 |
7301662 | Mifune | Nov 2007 | B2 |
20010053978 | Lewis et al. | Dec 2001 | A1 |
20020070977 | Morcos et al. | Jun 2002 | A1 |
20020093529 | Daoud et al. | Jul 2002 | A1 |
20020120742 | Cherry | Aug 2002 | A1 |
20020131065 | Sweetland et al. | Sep 2002 | A1 |
20020181013 | Dunlap | Dec 2002 | A1 |
20020198904 | Robles et al. | Dec 2002 | A1 |
20030002077 | Shima | Jan 2003 | A1 |
20030011801 | Simpson et al. | Jan 2003 | A1 |
20030014446 | Simpson et al. | Jan 2003 | A1 |
20030030664 | Parry | Feb 2003 | A1 |
20030046268 | Hirabayashi | Mar 2003 | A1 |
20030066027 | Nakagiri | Apr 2003 | A1 |
20030079030 | Cocotis et al. | Apr 2003 | A1 |
20030080988 | Moran et al. | May 2003 | A1 |
20030103235 | Gomi | Jun 2003 | A1 |
20030107606 | Capps et al. | Jun 2003 | A1 |
20030122868 | Aggarwal et al. | Jul 2003 | A1 |
20030197883 | Lay et al. | Oct 2003 | A1 |
20040001215 | Kurotsu | Jan 2004 | A1 |
20040012802 | Allen et al. | Jan 2004 | A1 |
20040021647 | Iwema et al. | Feb 2004 | A1 |
20040036720 | Dworsky | Feb 2004 | A1 |
20040061720 | Weber | Apr 2004 | A1 |
20040150673 | Dobronsky | Aug 2004 | A1 |
20040163049 | Mori et al. | Aug 2004 | A1 |
20040184069 | Mifune | Sep 2004 | A1 |
20040185877 | Asthana et al. | Sep 2004 | A1 |
20040246511 | Wong et al. | Dec 2004 | A1 |
20050002063 | Hanamoto | Jan 2005 | A1 |
20050050448 | Dehart | Mar 2005 | A1 |
20050086282 | Anderson et al. | Apr 2005 | A1 |
20050134891 | Ishizaki | Jun 2005 | A1 |
20050154998 | Mathieson | Jul 2005 | A1 |
20050165827 | Schmitt | Jul 2005 | A1 |
20050204293 | Raghunathan et al. | Sep 2005 | A1 |
20050248800 | Choi | Nov 2005 | A1 |
20050251755 | Mullins et al. | Nov 2005 | A1 |
20060026600 | Yoshida | Feb 2006 | A1 |
20060028668 | Kumashio | Feb 2006 | A1 |
20060036946 | Radtke et al. | Feb 2006 | A1 |
20060107217 | Lu et al. | May 2006 | A1 |
20060285141 | Kim et al. | Dec 2006 | A1 |
20060285868 | Holmes | Dec 2006 | A1 |
20070089065 | Lane et al. | Apr 2007 | A1 |
20070139662 | Eom et al. | Jun 2007 | A1 |
Number | Date | Country |
---|---|---|
2000-108460 | Apr 2000 | JP |
2001-290630 | Oct 2001 | JP |
2003-316536 | Nov 2003 | JP |
Number | Date | Country | |
---|---|---|---|
20070006090 A1 | Jan 2007 | US |