Skip to content

Commit 0309412

Browse files
committed
Git repo inited with latest CVS of tile-gtk
0 parents  commit 0309412

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+10494
-0
lines changed

CMakeLists.txt

Lines changed: 245 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,245 @@
1+
CMAKE_MINIMUM_REQUIRED ( VERSION 2.8 )
2+
3+
## ===========================================================================
4+
## Project Information
5+
## ===========================================================================
6+
PROJECT ( tilegtk )
7+
## Package version information.
8+
SET ( PKG_NAME ${PROJECT_NAME} )
9+
SET ( PKG_MAJOR_VERSION 0 )
10+
SET ( PKG_MINOR_VERSION 3 )
11+
SET ( PKG_BUILD_VERSION 0 )
12+
SET ( PKG_VERSION
13+
"${PKG_MAJOR_VERSION}.${PKG_MINOR_VERSION}" )
14+
SET ( PKG_NAME_VERSION ${PKG_NAME}-${PKG_VERSION} )
15+
SET ( PKG_VENDOR "Georgios Petasis" )
16+
SET ( PKG_HOME_DIR ${PROJECT_SOURCE_DIR} )
17+
18+
SET ( LOAD_GTK_DYNAMICALLY ON )
19+
SET ( NO_MSVCRT ON )
20+
SET ( USE_GNOME OFF )
21+
SET ( VERBOSE ON )
22+
23+
IF ( VERBOSE )
24+
# SET ( CMAKE_VERBOSE_MAKEFILE ON )
25+
SET ( GTK2_LOGGING_ENABLED ON )
26+
ENDIF ( VERBOSE )
27+
28+
SET ( PKG_SOURCES
29+
generic/tileGtk_TreeView.cpp
30+
generic/tileGtk_Separator.cpp
31+
generic/tileGtk_Arrows.cpp )
32+
33+
SET ( PKG_SOURCES generic/tileGtk_Init.cpp
34+
generic/tileGtk_Symbols.cpp
35+
generic/tileGtk_GtkApp.cpp
36+
generic/tileGtk_Utilities.cpp
37+
generic/tileGtk_Background.cpp
38+
generic/tileGtk_Button.cpp
39+
generic/tileGtk_CheckButton.cpp
40+
generic/tileGtk_RadioButton.cpp
41+
generic/tileGtk_ToolButton.cpp
42+
generic/tileGtk_Labelframe.cpp
43+
generic/tileGtk_Entry.cpp
44+
generic/tileGtk_Menubutton.cpp
45+
generic/tileGtk_Scrollbar.cpp
46+
generic/tileGtk_Scale.cpp
47+
generic/tileGtk_Progress.cpp
48+
generic/tileGtk_SizeGrip.cpp
49+
generic/tileGtk_Paned.cpp
50+
generic/tileGtk_Notebook.cpp
51+
generic/tileGtk_Combobox.cpp
52+
)
53+
54+
MESSAGE ( STATUS "===========================================================" )
55+
MESSAGE ( STATUS " Welcome to the ${PKG_NAME} ${PKG_VERSION} build system!" )
56+
MESSAGE ( STATUS " * Selected generator: ${CMAKE_GENERATOR}" )
57+
MESSAGE ( STATUS " * Operating System ID: "
58+
${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_VERSION}-${CMAKE_SYSTEM_PROCESSOR} )
59+
MESSAGE ( STATUS " * Installation Directory: " ${CMAKE_INSTALL_PREFIX} )
60+
MESSAGE ( STATUS "===========================================================" )
61+
62+
## ===========================================================================
63+
## Locate Tcl/Tk
64+
## ===========================================================================
65+
MESSAGE ( STATUS "Searching for Tcl/Tk..." )
66+
FIND_PACKAGE ( TCL REQUIRED )
67+
FIND_PACKAGE ( TclStub REQUIRED )
68+
MESSAGE ( STATUS " TCL_TCLSH: " ${TCL_TCLSH} )
69+
MESSAGE ( STATUS " TCL_INCLUDE_PATH: " ${TCL_INCLUDE_PATH} )
70+
MESSAGE ( STATUS " TCL_STUB_LIBRARY: " ${TCL_STUB_LIBRARY} )
71+
MESSAGE ( STATUS " TCL_LIBRARY: " ${TCL_LIBRARY} )
72+
MESSAGE ( STATUS " TK_WISH: " ${TK_WISH} )
73+
MESSAGE ( STATUS " TK_INCLUDE_PATH: " ${TK_INCLUDE_PATH} )
74+
MESSAGE ( STATUS " TK_STUB_LIBRARY: " ${TK_STUB_LIBRARY} )
75+
MESSAGE ( STATUS " TTK_STUB_LIBRARY: " ${TTK_STUB_LIBRARY} )
76+
MESSAGE ( STATUS " TK_LIBRARY: " ${TK_LIBRARY} )
77+
# STRING ( REPLACE stub "" TCL_LIBRARY_STATIC ${TCL_STUB_LIBRARY} )
78+
# STRING ( REPLACE stub "" TK_LIBRARY_STATIC ${TK_STUB_LIBRARY} )
79+
# MESSAGE ( STATUS " TCL_LIBRARY_STATIC: " ${TCL_LIBRARY_STATIC} )
80+
# MESSAGE ( STATUS " TK_LIBRARY_STATIC: " ${TK_LIBRARY_STATIC} )
81+
82+
IF ( WIN32 AND NO_MSVCRT )
83+
STRING ( REPLACE /MD /MT CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE} )
84+
STRING ( REPLACE /MDd /MTd CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG} )
85+
STRING ( REPLACE /MD /MT CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
86+
STRING ( REPLACE /MDd /MTd CMAKE_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG} )
87+
SET ( CMAKE_EXE_LINKER_FLAGS
88+
"${CMAKE_EXE_LINKER_FLAGS} /nodefaultlib:MSVCRT.LIB" )
89+
SET ( CMAKE_EXE_LINKER_FLAGS_RELEASE
90+
"${CMAKE_EXE_LINKER_FLAGS_RELEASE} LIBCMT.LIB" )
91+
SET ( CMAKE_EXE_LINKER_FLAGS_DEBUG
92+
"${CMAKE_EXE_LINKER_FLAGS_DEBUG} LIBCMTD.LIB" )
93+
SET ( CMAKE_SHARED_LINKER_FLAGS
94+
"${CMAKE_SHARED_LINKER_FLAGS} /nodefaultlib:MSVCRT.LIB" )
95+
SET ( CMAKE_SHARED_LINKER_FLAGS_RELEASE
96+
"${CMAKE_SHARED_LINKER_FLAGS_RELEASE} LIBCMT.LIB" )
97+
SET ( CMAKE_SHARED_LINKER_FLAGS_DEBUG
98+
"${CMAKE_SHARED_LINKER_FLAGS_DEBUG}
99+
/nodefaultlib:LIBCMT.LIB LIBCMTD.LIB" )
100+
ADD_DEFINITIONS ( -D_STATIC_CPPLIB )
101+
ADD_DEFINITIONS ( -D_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES=1 )
102+
ADD_DEFINITIONS ( -D_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT=1 )
103+
ENDIF ( WIN32 AND NO_MSVCRT )
104+
105+
IF ( WIN32 )
106+
ADD_DEFINITIONS ( -DWIN32 )
107+
ADD_DEFINITIONS ( -D_WIN32 )
108+
ADD_DEFINITIONS ( -D_WINDOWS )
109+
ADD_DEFINITIONS ( -D__WIN32__ )
110+
SET ( CMAKE_SHARED_LIBRARY_PREFIX lib )
111+
ENDIF ( WIN32 )
112+
113+
IF ( LOAD_GTK_DYNAMICALLY )
114+
MESSAGE ( STATUS "GTK+ will be loaded dynamically!" )
115+
ADD_DEFINITIONS ( -DTILEGTK_LOAD_GTK_DYNAMICALLY )
116+
ENDIF ( LOAD_GTK_DYNAMICALLY )
117+
IF ( CMAKE_BUILD_TYPE STREQUAL Debug )
118+
ADD_DEFINITIONS ( -DTILEGTK_SYNCHRONIZE )
119+
ADD_DEFINITIONS ( -DTILEGTK_VERBOSE_XERROR_HANDLER )
120+
ENDIF ( CMAKE_BUILD_TYPE STREQUAL Debug )
121+
ADD_DEFINITIONS ( -DTILEGTK_INSTALL_XERROR_HANDLER )
122+
ADD_DEFINITIONS ( -DUSE_TCL_STUBS )
123+
ADD_DEFINITIONS ( -DUSE_TK_STUBS )
124+
ADD_DEFINITIONS ( -DUSE_TTK_STUBS )
125+
ADD_DEFINITIONS ( -DPACKAGE_NAME="${PKG_NAME}" )
126+
ADD_DEFINITIONS ( -DPACKAGE_VERSION="${PKG_VERSION}" )
127+
INCLUDE_DIRECTORIES ( ${TCL_INCLUDE_PATH} )
128+
INCLUDE_DIRECTORIES ( ${TK_INCLUDE_PATH} )
129+
INCLUDE_DIRECTORIES ( ${PROJECT_SOURCE_DIR}/generic )
130+
131+
## ===========================================================================
132+
## Locate GNOME2...
133+
## ===========================================================================
134+
IF ( USE_GNOME )
135+
MESSAGE ( STATUS "Searching for GNOME..." )
136+
INCLUDE ( cmake/Modules/FindGNOME2.cmake OPTIONAL )
137+
IF ( GNOME_FOUND )
138+
MESSAGE ( STATUS " GNOME Found!" )
139+
ADD_DEFINITIONS ( -DTILEGTK_ENABLE_GNOME )
140+
INCLUDE_DIRECTORIES ( ${GNOME_INCLUDE_DIR} )
141+
LINK_LIBRARIES ( ${GNOME_LIBRARIES} )
142+
ENDIF ( GNOME_FOUND )
143+
MESSAGE ( STATUS " GNOME_INCLUDE_DIR:" )
144+
FOREACH ( path ${GNOME_INCLUDE_DIR} )
145+
MESSAGE ( STATUS " + ${path}" )
146+
ENDFOREACH ( path )
147+
MESSAGE ( STATUS " GNOME_LIBRARIES:" )
148+
FOREACH ( path ${GNOME_LIBRARIES} )
149+
MESSAGE ( STATUS " + ${path}" )
150+
ENDFOREACH ( path )
151+
ENDIF ( USE_GNOME )
152+
153+
## ===========================================================================
154+
## Locate GTK...
155+
## ===========================================================================
156+
MESSAGE ( STATUS "Searching for GTK2..." )
157+
FIND_PACKAGE ( GTK2 REQUIRED )
158+
_GTK2_FIND_LIBRARY ( GTK2_GMODULE_LIBRARY gmodule false true)
159+
# INCLUDE ( cmake/Modules/FindGTK2.cmake )
160+
161+
IF ( GTK2_FOUND )
162+
MESSAGE ( STATUS " GTK 2.x Found!" )
163+
INCLUDE_DIRECTORIES ( ${GTK2_INCLUDE_DIRS} )
164+
ENDIF ( GTK2_FOUND )
165+
MESSAGE ( STATUS " GTK2_INCLUDE_DIRS:" )
166+
FOREACH ( path ${GTK2_INCLUDE_DIRS} )
167+
MESSAGE ( STATUS " + ${path}" )
168+
ENDFOREACH ( path )
169+
MESSAGE ( STATUS " GTK2_LIBRARIES:" )
170+
FOREACH ( path ${GTK2_LIBRARIES} )
171+
MESSAGE ( STATUS " + ${path}" )
172+
ENDFOREACH ( path )
173+
174+
## ===========================================================================
175+
## Target: tileGtk_Symbols.[h|cpp]
176+
## ===========================================================================
177+
ADD_CUSTOM_COMMAND ( OUTPUT ${PROJECT_SOURCE_DIR}/generic/tileGtk_Symbols.cpp
178+
${PROJECT_SOURCE_DIR}/generic/tileGtk_Symbols.h
179+
DEPENDS library/GenarateSymbols.tcl
180+
generic/tileGtk_Init.cpp
181+
generic/tileGtk_GtkApp.cpp
182+
generic/tileGtk_Utilities.h
183+
generic/tileGtk_Utilities.cpp
184+
COMMAND ${TCL_TCLSH} GenarateSymbols.tcl
185+
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/library )
186+
SET_SOURCE_FILES_PROPERTIES ( ${PROJECT_SOURCE_DIR}/generic/tileGtk_Symbols.cpp
187+
PROPERTIES GENERATED true )
188+
SET_SOURCE_FILES_PROPERTIES ( ${PROJECT_SOURCE_DIR}/generic/tileGtk_Symbols.h
189+
PROPERTIES GENERATED true )
190+
191+
SET ( PKG_TARGET_LIB_NAME ${PKG_NAME}${PKG_VERSION} )
192+
## ===========================================================================
193+
## Target: tilegtk shared library
194+
## ===========================================================================
195+
MESSAGE ( STATUS "===========================================================" )
196+
MESSAGE ( STATUS " ++++ Shared Library: ${PKG_TARGET_LIB_NAME} ++++" )
197+
MESSAGE ( STATUS "===========================================================" )
198+
ADD_LIBRARY ( ${PKG_TARGET_LIB_NAME} SHARED ${PKG_SOURCES} )
199+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${TCL_STUB_LIBRARY} )
200+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${TK_STUB_LIBRARY} )
201+
IF ( TTK_STUB_LIBRARY )
202+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${TTK_STUB_LIBRARY} )
203+
ENDIF ( TTK_STUB_LIBRARY )
204+
# IF ( TCL_LIBRARY_STATIC )
205+
# TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${TCL_LIBRARY_STATIC} )
206+
# ENDIF ( TCL_LIBRARY_STATIC )
207+
# IF ( TK_LIBRARY_STATIC )
208+
# TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${TK_LIBRARY_STATIC} )
209+
# ENDIF ( TK_LIBRARY_STATIC )
210+
IF ( LOAD_GTK_DYNAMICALLY )
211+
IF ( GTK2_GMODULE_LIBRARY )
212+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${GTK2_GMODULE_LIBRARY} )
213+
ELSE ( GTK2_GMODULE_LIBRARY )
214+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${GTK2_LIBRARIES} )
215+
ENDIF ( GTK2_GMODULE_LIBRARY )
216+
IF ( UNIX )
217+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} dl )
218+
ENDIF ( UNIX )
219+
ELSE ( LOAD_GTK_DYNAMICALLY )
220+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${GTK2_LIBRARIES} )
221+
IF ( GTK2_gdk_LIBRARY )
222+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${GTK2_gdk_LIBRARY} )
223+
ENDIF ( GTK2_gdk_LIBRARY )
224+
IF ( GTK2_gobject_LIBRARY )
225+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} ${GTK2_gobject_LIBRARY} )
226+
ENDIF ( GTK2_gobject_LIBRARY )
227+
IF ( UNIX )
228+
TARGET_LINK_LIBRARIES ( ${PKG_TARGET_LIB_NAME} gdk_pixbuf_xlib-2.0 )
229+
ENDIF ( UNIX )
230+
ENDIF ( LOAD_GTK_DYNAMICALLY )
231+
232+
FILE ( WRITE library/pkgIndex.tcl
233+
"package ifneeded ttk::theme::tilegtk ${PKG_VERSION} \\
234+
[list load [file join $dir lib${PKG_NAME}${PKG_VERSION}[info sharedlibextension]] tilegtk]" )
235+
236+
INSTALL ( TARGETS ${PKG_TARGET_LIB_NAME}
237+
RUNTIME DESTINATION ${PKG_TARGET_LIB_NAME}
238+
LIBRARY DESTINATION ${PKG_TARGET_LIB_NAME}
239+
ARCHIVE DESTINATION ${PKG_TARGET_LIB_NAME} )
240+
INSTALL ( FILES library/pkgIndex.tcl library/tilegtk.tcl
241+
DESTINATION ${PKG_TARGET_LIB_NAME} )
242+
243+
ENABLE_TESTING ( )
244+
ADD_TEST ( demo ${TK_WISH} ${PROJECT_SOURCE_DIR}/demos/demo.tcl )
245+
ADD_TEST ( styles ${TK_WISH} ${PROJECT_SOURCE_DIR}/demos/WidgetStates.tcl )

ChangeLog

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
22 Jul 2012 Georgios Petasis <[email protected]>
2+
* library/tilegtk.tcl: Added support for Linux 64.
3+
4+
* generic/tileGtk_Init.cpp:
5+
* library/GenarateSymbols.tcl: Switched dynamic library loading from GLib,
6+
to Tcl (Tcl_LoadFile, Tcl_FindSymbol).
7+
8+
* CMakeLists.txt: CMake (2.8.8) can now find GTK2, reverted our module to
9+
the official one.
10+
11+
30 Sep 2010 Georgios Petasis <[email protected]>
12+
* demos/WidgetStates.tcl:
13+
* demos/demo.tcl:
14+
* demos/dirbrowser.tcl:
15+
* demos/dlgtest.tcl: Minor updates for supporting Tk 8.6.
16+
17+
08 Aug 2009 Georgios Petasis <[email protected]>
18+
* generic/tileGtk_ToolButton.cpp: Fixes in tool button drawing code.
19+
20+
01 Jul 2009 Georgios Petasis <[email protected]>
21+
* generic/tileGtk_Combobox.cpp:
22+
* generic/tileGtk_Menubutton.cpp:
23+
* generic/tileGtk_Scrollbar.cpp: Applied the scaling required by GTK+
24+
arrows.
25+
26+
20 Aug 2008 Georgios Petasis <[email protected]>
27+
* generic/tileGtk_Button.cpp:
28+
* generic/tileGtk_CheckButton.cpp:
29+
* generic/tileGtk_RadioButton.cpp: Reworked button drawing to be identical
30+
to the drawing done by GTK+.
31+
32+
13 Aug 2008 Georgios Petasis <[email protected]>
33+
* generic/tileGtk_Utilities.h:
34+
* generic/tileGtk_Utilities.cpp:
35+
* generic/*.cpp: Added the ability to adapt to style changes!
36+
37+
* generic/tileGtk_GtkApp.cpp: Added support for installing an XError
38+
handler, overidiing the one installed by GTK+.
39+
40+
11 Aug 2008 Georgios Petasis <[email protected]>
41+
* demos/StyleInstrospection.tcl: Updated.
42+
43+
* cmake/Modules/FindGTK2.cmake: Make the module more easy to adapt to
44+
new GTK+ paths.
45+
46+
* library/GenerateSymbols.tcl:
47+
* library/tilegtk.tcl:
48+
* generic/tileGtk_Init.cpp: Completed the ability to dynamically
49+
load GTK+ libraries under windows.
50+
51+
07 Aug 2008 Georgios Petasis <[email protected]>
52+
* library/GenerateSymbols.tcl:
53+
* library/tilegtk.tcl:
54+
* generic/tileGtk_Init.cpp: Completed the ability to dynamically
55+
load GTK+ libraries under linux.
56+
57+
07 Aug 2008 Georgios Petasis <[email protected]>
58+
* library/GenarateSymbols.tcl: Added a new script that generates
59+
generic/tileGtk_Symbols.h, generic/tileGtk_Symbols.h from GTK/Glib/GDK
60+
functions used in code. The generated files map all glib/gdk/gtk
61+
functions to pointers, if symbol TILEGTK_LOAD_GTK_DYNAMICALLY is
62+
defined. In general, to enable this feature, LOAD_GTK_DYNAMICALLY must
63+
be set to ON in CMakeLists.txt.
64+
Note that this support is still incomplete.
65+
66+
06 Aug 2008 Georgios Petasis <[email protected]>
67+
* New widgets: SizeGrip, Paned, ToolButton, Notebook & Combobox.
68+
69+
05 Aug 2008 Georgios Petasis <[email protected]>
70+
* Updates: Scrollbars, Scales & ProgressBar widgets added.
71+
72+
03 Aug 2008 Georgios Petasis <[email protected]>
73+
* Started the tile-gtk theme.

0 commit comments

Comments
 (0)