stlab.adobe.com Adobe Systems Incorporated

platform_link.hpp

Go to the documentation of this file.
00001 /*
00002     Copyright 2005-2007 Adobe Systems Incorporated
00003     Distributed under the MIT License (see accompanying file LICENSE_1_0_0.txt
00004     or a copy at http://stlab.adobe.com/licenses.html)
00005 */
00006 
00007 /****************************************************************************************************/
00008 
00009 #ifndef ADOBE_WIDGET_LINK_HPP
00010 #define ADOBE_WIDGET_LINK_HPP
00011 
00012 /****************************************************************************************************/
00013 
00014 #include <adobe/config.hpp>
00015 
00016 #define WINDOWS_LEAN_AND_MEAN 1
00017 #include <windows.h>
00018 
00019 #include <adobe/any_regular.hpp>
00020 #include <adobe/extents.hpp>
00021 #include <adobe/layout_attributes.hpp>
00022 #include <adobe/widget_attributes.hpp>
00023 
00024 #include <boost/function.hpp>
00025 
00026 #include <string>
00027 
00028 /****************************************************************************************************/
00029 
00030 namespace adobe {
00031 
00032 /****************************************************************************************************/
00033 
00034 struct link_t
00035 {
00036     typedef any_regular_t                      model_type;
00037     typedef boost::function<void (const model_type&)> setter_type;
00038 
00039     link_t(const std::string&          alt_text,
00040            const any_regular_t& on_value,
00041            const any_regular_t& off_value,
00042            long                        count,
00043            theme_t                     theme);
00044 
00045     void measure(extents_t& result);
00046 
00047     void place(const place_data_t& place_data);
00048 
00049     void enable(bool make_enabled);
00050 
00051     void display(const any_regular_t& to_value);
00052 
00053     void monitor(const setter_type& proc);
00054 
00055     HWND                 control_m;
00056     HWND                 link_icon_m;
00057     std::string          alt_text_m;
00058     any_regular_t on_value_m;
00059     any_regular_t off_value_m;
00060     long                 count_m;
00061     theme_t              theme_m;
00062     guide_set_t          prongs_m;
00063     any_regular_t value_m;
00064     point_2d_t           tl_m;
00065     setter_type          hit_proc_m;
00066 };
00067 
00068 /****************************************************************************************************/
00069 
00070 } // namespace adobe
00071 
00072 /****************************************************************************************************/
00073 
00074 #endif
00075 
00076 /****************************************************************************************************/

Copyright © 2006-2007 Adobe Systems Incorporated.

Use of this website signifies your agreement to the Terms of Use and Online Privacy Policy.

Search powered by Google