Reference Manual
Inti Logo
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

style.h

Go to the documentation of this file.
00001 /*  Inti: Integrated Foundation Classes
00002  *  Copyright (C) 2002 The Inti Development Team.
00003  *
00004  *  This program is free software; you can redistribute it and/or modify
00005  *  it under the terms of the GNU General Public License as published by
00006  *  the Free Software Foundation; either version 2 of the License, or
00007  *  (at your option) any later version.
00008  *
00009  *  This program is distributed in the hope that it will be useful,
00010  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012  *  GNU Library General Public License for more details.
00013  *
00014  *  You should have received a copy of the GNU Library General Public License
00015  *  along with this program; if not, write to the Free Software
00016  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
00017  */
00018  
00023 
00024 #ifndef INTI_GTK_STYLE_H
00025 #define INTI_GTK_STYLE_H
00026 
00027 #ifndef INTI_G_OBJECT_H
00028 #include <inti/glib/object.h>
00029 #endif
00030 
00031 #ifndef INTI_GDK_COLOR_H
00032 #include <inti/gdk/color.h>
00033 #endif
00034 
00035 #ifndef INTI_GDK_TYPES_H
00036 #include <inti/gdk/types.h>
00037 #endif
00038 
00039 #ifndef INTI_GTK_ENUMS_H
00040 #include <inti/gtk/enums.h>
00041 #endif
00042 
00043 #ifndef __GTK_STYLE_H__
00044 #include <gtk/gtkstyle.h>
00045 #endif
00046 
00047 namespace Inti {
00048         
00049 namespace Gdk {
00050 class GC;
00051 class Pixbuf;
00052 class Pixmap;
00053 class Rectangle;
00054 class Window;
00055 }
00056 
00057 namespace Pango {
00058 class FontDescription;
00059 class Layout;
00060 }
00061 
00062 namespace Gtk {
00063 
00064 class IconSet;
00065 class IconSource;
00066 class StyleClass;
00067 class Widget;
00068 
00078 
00079 class Style : public G::Object
00080 {
00081         friend class G::Object;
00082         friend class StyleClass;
00083         
00084         Style(const Style&);    
00085         Style& operator=(const Style&);
00086 
00087 protected:
00090 
00091         explicit Style(GtkStyle *style, bool reference = true);
00098 
00100         
00101 public:
00104 
00105         virtual ~Style();
00107 
00111 
00112         GtkStyle* gtk_style() const { return (GtkStyle*)instance; }
00114 
00115         GtkStyleClass* gtk_style_class() const;
00117 
00118         operator GtkStyle* () const;
00120 
00121         Gdk::Color fg(StateType state_type) const;
00125 
00126         Gdk::Color bg(StateType state_type) const;
00130 
00131         Gdk::Color light(StateType state_type) const;
00135 
00136         Gdk::Color dark(StateType state_type) const;
00140 
00141         Gdk::Color mid(StateType state_type) const;
00145 
00146         Gdk::Color text(StateType state_type) const;
00150 
00151         Gdk::Color base(StateType state_type) const;
00155 
00156         Gdk::Color text_aa(StateType state_type) const;
00160 
00161         Gdk::Color black() const;
00164 
00165         Gdk::Color white() const;
00168 
00169         Pointer<Pango::FontDescription> font_desc() const;
00171           
00172         Gdk::GC* black_gc() const;
00174 
00175         Gdk::GC* white_gc() const;
00177 
00178         Gdk::GC* fg_gc(StateType state_type) const;
00182 
00183         Gdk::GC* bg_gc(StateType state_type) const;
00187 
00188         Gdk::GC* light_gc(StateType state_type) const;
00192 
00193         Gdk::GC* dark_gc(StateType state_type) const;
00197 
00198         Gdk::GC* mid_gc(StateType state_type) const;
00202 
00203         Gdk::GC* text_gc(StateType state_type) const;
00207 
00208         Gdk::GC* base_gc(StateType state_type) const;
00212 
00213         Gdk::GC* text_aa_gc(StateType state_type) const;
00217 
00218         Gdk::Pixmap* bg_pixmap(StateType state_type) const;
00222 
00226 
00227         Pointer<Style> copy() const;
00229 
00230         void attach(const Gdk::Window& window);
00248 
00249         void set_background(Gdk::Window& window, StateType state_type);
00254 
00255         Pointer<IconSet> lookup_icon_set(const char *stock_id);
00257 
00258         void apply_default_background
00259         (
00260                 Gdk::Window& window,
00261                 bool set_bg,
00262                 StateType state_type,
00263                 int x,
00264                 int y,
00265                 int width,
00266                 int height,
00267                 const Gdk::Rectangle *area = 0
00268         );
00281         
00282         Pointer<Gdk::Pixbuf> render_icon
00283         (
00284                 const IconSource& source,
00285                 TextDirection direction,
00286                 StateType state,
00287                 IconSize size,
00288                 Widget *widget = 0,
00289                 const char *detail = 0
00290         );
00302 
00303         void draw_hline
00304         (
00305                 Gdk::Window& window,
00306                 StateType state_type,
00307                 int x1,
00308                 int x2,
00309                 int y,
00310                 const Gdk::Rectangle *area = 0,
00311                 Widget *widget = 0,
00312                 const char *detail = 0
00313         );
00323 
00324         void draw_vline
00325         (
00326                 Gdk::Window& window,
00327                 StateType state_type,
00328                 int y1,
00329                 int y2,
00330                 int x,
00331                 const Gdk::Rectangle *area = 0,
00332                 Widget *widget = 0,
00333                 const char *detail = 0
00334         );
00344 
00345         void draw_shadow
00346         (
00347                 Gdk::Window& window,
00348                 StateType state_type,
00349                 ShadowType shadow_type,
00350                 int x,
00351                 int y,
00352                 int width,
00353                 int height,
00354                 const Gdk::Rectangle *area = 0,
00355                 Widget *widget = 0,
00356                 const char *detail = 0
00357         );
00369 
00370         void draw_polygon
00371         (
00372                 Gdk::Window& window,
00373                 StateType state_type,
00374                 ShadowType shadow_type,
00375                 const Gdk::Point *points,
00376                 int npoints,
00377                 bool fill,
00378                 const Gdk::Rectangle *area = 0,
00379                 Widget *widget = 0,
00380                 const char *detail = 0
00381         );
00392 
00393         void draw_arrow
00394         (
00395                 Gdk::Window& window,
00396                 StateType state_type,
00397                 ShadowType shadow_type,
00398                 ArrowType arrow_type,
00399                 bool fill,
00400                 int x,
00401                 int y,
00402                 int width,
00403                 int height,
00404                 const Gdk::Rectangle *area = 0,
00405                 Widget *widget = 0,
00406                 const char *detail = 0
00407          );
00422 
00423         void draw_diamond
00424         (
00425                 Gdk::Window& window,
00426                 StateType state_type,
00427                 ShadowType shadow_type,
00428                 int x,
00429                 int y,
00430                 int width,
00431                 int height,
00432                 const Gdk::Rectangle *area = 0,
00433                 Widget *widget = 0,
00434                 const char *detail = 0
00435          );
00447 
00448         void draw_box
00449         (
00450                 Gdk::Window& window,
00451                 StateType state_type,
00452                 ShadowType shadow_type,
00453                 int x,
00454                 int y,
00455                 int width,
00456                 int height,
00457                 const Gdk::Rectangle *area = 0,
00458                 Widget *widget = 0,
00459                 const char *detail = 0
00460         );
00472 
00473         void draw_flat_box
00474         (
00475                 Gdk::Window& window,
00476                 StateType state_type,
00477                 ShadowType shadow_type,
00478                 int x,
00479                 int y,
00480                 int width,
00481                 int height,
00482                 const Gdk::Rectangle *area = 0,
00483                 Widget *widget = 0,
00484                 const char *detail = 0
00485         );
00497 
00498         void draw_check
00499         (
00500                 Gdk::Window& window,
00501                 StateType state_type,
00502                 ShadowType shadow_type,
00503                 int x,
00504                 int y,
00505                 int width,
00506                 int height,
00507                 const Gdk::Rectangle *area = 0,
00508                 Widget *widget = 0,
00509                 const char *detail = 0
00510         );
00522 
00523         void draw_option
00524         (
00525                 Gdk::Window& window,
00526                 StateType state_type,
00527                 ShadowType shadow_type,
00528                 int x,
00529                 int y,
00530                 int width,
00531                 int height,
00532                 const Gdk::Rectangle *area = 0,
00533                 Widget *widget = 0,
00534                 const char *detail = 0
00535         );
00547 
00548         void draw_tab
00549         (
00550                 Gdk::Window& window,
00551                 StateType state_type,
00552                 ShadowType shadow_type,
00553                 int x,
00554                 int y,
00555                 int width,
00556                 int height,
00557                 const Gdk::Rectangle *area = 0,
00558                 Widget *widget = 0,
00559                 const char *detail = 0
00560         );
00573 
00574         void draw_shadow_gap
00575         (
00576                 Gdk::Window& window,
00577                 StateType state_type,
00578                 ShadowType shadow_type,
00579                 int x,
00580                 int y,
00581                 int width,
00582                 int height,
00583                 PositionType gap_side,
00584                 int gap_x,
00585                 int gap_width,
00586                 const Gdk::Rectangle *area = 0,
00587                 Widget *widget = 0,
00588                 const char *detail = 0
00589         );
00604 
00605         void draw_box_gap
00606         (
00607                 Gdk::Window& window,
00608                 StateType state_type,
00609                 ShadowType shadow_type,
00610                 int x,
00611                 int y,
00612                 int width,
00613                 int height,
00614                 PositionType gap_side,
00615                 int gap_x,
00616                 int gap_width,
00617                 const Gdk::Rectangle *area = 0,
00618                 Widget *widget = 0,
00619                 const char *detail = 0
00620         );
00635 
00636         void draw_extension
00637         (
00638                 Gdk::Window& window,
00639                 StateType state_type,
00640                 ShadowType shadow_type,
00641                 int x,
00642                 int y,
00643                 int width,
00644                 int height,
00645                 PositionType gap_side,
00646                 const Gdk::Rectangle *area = 0,
00647                 Widget *widget = 0,
00648                 const char *detail = 0
00649         );
00662 
00663         void draw_focus
00664         (
00665                 Gdk::Window& window,
00666                 StateType state_type,
00667                 int x,
00668                 int y,
00669                 int width,
00670                 int height,
00671                 const Gdk::Rectangle *area = 0,
00672                 Widget *widget = 0,
00673                 const char *detail = 0
00674         );
00685 
00686         void draw_slider
00687         (
00688                 Gdk::Window& window,
00689                 StateType state_type,
00690                 ShadowType shadow_type,
00691                 int x,
00692                 int y,
00693                 int width,
00694                 int height,
00695                 Orientation orientation,
00696                 const Gdk::Rectangle *area = 0,
00697                 Widget *widget = 0,
00698                 const char *detail = 0
00699         );
00712 
00713         void draw_handle
00714         (
00715                 Gdk::Window& window,
00716                 StateType state_type,
00717                 ShadowType shadow_type,
00718                 int x,
00719                 int y,
00720                 int width,
00721                 int height,
00722                 Orientation orientation,
00723                 const Gdk::Rectangle *area = 0,
00724                 Widget *widget = 0,
00725                 const char *detail = 0
00726         );
00739 
00740         void draw_expander
00741         (
00742                 Gdk::Window& window,
00743                 StateType state_type,
00744                 int x,
00745                 int y,
00746                 ExpanderStyle expander_style,
00747                 const Gdk::Rectangle *area = 0,
00748                 Widget *widget = 0,
00749                 const char *detail = 0
00750         );
00760 
00761         void draw_layout
00762         (
00763                 Gdk::Window& window,
00764                 StateType state_type,
00765                 bool use_text,
00766                 int x,
00767                 int y,
00768                 Pango::Layout& layout,
00769                 const Gdk::Rectangle *area = 0,
00770                 Widget *widget = 0,
00771                 const char *detail = 0
00772         );
00783 
00784         void draw_resize_grip
00785         (
00786                 Gdk::Window& window,
00787                 StateType state_type,
00788                 Gdk::WindowEdge edge,
00789                 int x,
00790                 int y,
00791                 int width,
00792                 int height,
00793                 const Gdk::Rectangle *area = 0,
00794                 Widget *widget = 0,
00795                 const char *detail = 0
00796         );
00808         
00810 };
00811 
00812 } // namespace Gtk
00813 
00814 } // namespace Inti
00815 
00816 #endif // INTI_GTK_STYLE_H
00817 
Main Page - Footer


Generated on Sun Sep 14 20:08:04 2003 for Inti by doxygen 1.3.2 written by Dimitri van Heesch, © 1997-2002