haiku/src/kits/tracker/Jamfile

104 lines
2.0 KiB
Plaintext
Raw Normal View History

SubDir HAIKU_TOP src kits tracker ;
SetSubDirSupportedPlatformsBeOSCompatible ;
AddSubDirSupportedPlatforms libbe_test ;
Quite a cleanup action to avoid polluting the global namespace with private BTextView classes: * Declared the directly used BTextView helper classes as private BTextView classes and changed all affected files. * Realized that Tracker's BPoseView was (accidentally?) using what used to be _BWidthBuffer_. It had declared it's own class with the same name and same members/size in headers/private/tracker/TextViewSupport.h, but the implementation was nowhere to be found. I can only explain this that the BTextView implementation was then actually linked and used. But the big problem was that it was used without locking (unlike in BTextView)! When many Tracker windows opened during system startup or later and they happened to each request characters not yet in the cache, I imagine things could have gone bad and corrupted memory. Anyways, since I can see the usefulness of the cache, BPoseView uses BTextView::WidthBuffer on purpose now. And I moved the locking inside BTextView::WidthBuffer::StringWidth(). * Adjusted InterfaceDefs.cpp accordingly. * TODO: Move subsequent classes into BTextView namespace as well, ie derived classes that BTextView doesn't directly know about. All stuff in src/kits/ inteface/textview_support/ * Added preliminary and not yet implemented layout friendly BTextView constructors. * I will try to handle the insets imposed by BTextView::fTextRect a bit differently when used inside the new layout management framework. For this, I added BTextView::SetInsets() and GetInsets(). SetInsets() doesn't do anything yet. So far, everything seems to work still... ;-) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27654 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-20 19:08:40 +04:00
UsePrivateHeaders interface shared storage tracker ;
UseLibraryHeaders icon ;
AddResources libtracker.so : TrackerIcons.rdef ;
SubDirC++Flags
-D_BUILDING_tracker=1 -DOPEN_TRACKER=1
# -D_INCLUDES_CLASS_DEVICE_MAP=1
-D_SUPPORTS_RESOURCES=1
-D_SUPPORTS_FEATURE_SCRIPTING=1
# -D_SILENTLY_CORRECT_FILE_NAMES=1
;
local vector_icon_libs ;
if ! $(TARGET_PLATFORM_HAIKU_COMPATIBLE) && $(TARGET_PLATFORM) != libbe_test {
vector_icon_libs = libicon.a libagg.a ;
}
SharedLibrary libtracker.so :
AttributeStream.cpp
AutoMounter.cpp
AutoMounterSettings.cpp
BackgroundImage.cpp
Bitmaps.cpp
ContainerWindow.cpp
CountView.cpp
DeskWindow.cpp
DesktopPoseView.cpp
DialogPane.cpp
DirMenu.cpp
EntryIterator.cpp
FBCPadding.cpp
FSClipboard.cpp
FSUndoRedo.cpp
FSUtils.cpp
FavoritesConfig.cpp
FavoritesMenu.cpp
FilePanel.cpp
FilePanelPriv.cpp
FilePermissionsView.cpp
FindPanel.cpp
GroupedMenu.cpp
IconCache.cpp
IconMenuItem.cpp
InfoWindow.cpp
MimeTypeList.cpp
MiniMenuField.cpp
Model.cpp
MountMenu.cpp
Navigator.cpp
NavMenu.cpp
NodePreloader.cpp
NodeWalker.cpp
OpenWithWindow.cpp
OverrideAlert.cpp
PendingNodeMonitorCache.cpp
Pose.cpp
PoseList.cpp
PoseView.cpp
PoseViewScripting.cpp
QueryContainerWindow.cpp
QueryPoseView.cpp
RecentItems.cpp
RegExp.cpp
SelectionWindow.cpp
Settings.cpp
SettingsHandler.cpp
SettingsViews.cpp
SlowContextPopup.cpp
SlowMenu.cpp
StatusWindow.cpp
TaskLoop.cpp
TemplatesMenu.cpp
Tests.cpp
TextWidget.cpp
Thread.cpp
TitleView.cpp
Tracker.cpp
TrackerInitialState.cpp
TrackerScripting.cpp
TrackerSettings.cpp
TrackerSettingsWindow.cpp
TrackerString.cpp
TrashWatcher.cpp
Utilities.cpp
ViewState.cpp
VolumeWindow.cpp
WidgetAttributeText.cpp
: be translation $(vector_icon_libs)
;
if $(TARGET_PLATFORM) = libbe_test {
HaikuInstall install-test-apps : $(HAIKU_APP_TEST_LIB_DIR) : libtracker.so
: tests!apps ;
}