[dasher: 16/21] Merge framerate/turbo mode/slow-start with ipad/multitouch/landscape
- From: Patrick Welche <pwelche src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [dasher: 16/21] Merge framerate/turbo mode/slow-start with ipad/multitouch/landscape
- Date: Thu, 14 Jul 2011 17:32:29 +0000 (UTC)
commit 02202c6af62d7db341ffe7e0f328f8fc88a90200
Merge: 58bbd20 381afb8
Author: Alan Lawrence <acl33 inf phy cam ac uk>
Date: Tue Jul 12 19:42:29 2011 +0100
Merge framerate/turbo mode/slow-start with ipad/multitouch/landscape
Yes, this means we now get turbo mode when holding down >1 finger on iOS :)
Data/GUI/dasher.compose.ui | 1 -
Data/GUI/dasher.direct.ui | 1 -
Data/GUI/dasher.fullscreen.ui | 1 -
Data/GUI/dasher.gameWIP.ui | 1 -
Data/GUI/dasher.traditional.ui | 1 -
Src/DasherCore/ActionButton.cpp | 49 --------
Src/DasherCore/ActionButton.h | 37 ------
Src/DasherCore/ButtonMode.cpp | 4 +-
Src/DasherCore/ButtonMode.h | 2 +-
Src/DasherCore/ButtonMultiPress.cpp | 14 +-
Src/DasherCore/ButtonMultiPress.h | 12 +-
Src/DasherCore/CircleStartHandler.cpp | 10 +-
Src/DasherCore/CircleStartHandler.h | 5 +-
Src/DasherCore/ClickFilter.cpp | 2 +-
Src/DasherCore/DashIntfScreenMsgs.cpp | 31 +++---
Src/DasherCore/DashIntfScreenMsgs.h | 5 +-
Src/DasherCore/DasherButtons.cpp | 4 +-
Src/DasherCore/DasherButtons.h | 2 +-
Src/DasherCore/DasherInterfaceBase.cpp | 150 +++----------------------
Src/DasherCore/DasherInterfaceBase.h | 54 +++------
Src/DasherCore/DasherModel.cpp | 88 +++++----------
Src/DasherCore/DasherModel.h | 66 ++++--------
Src/DasherCore/DefaultFilter.cpp | 33 ++++--
Src/DasherCore/DefaultFilter.h | 14 ++-
Src/DasherCore/DynamicButtons.cpp | 156 ++++++++++++++++++++++++++
Src/DasherCore/DynamicButtons.h | 67 +++++++++++
Src/DasherCore/DynamicFilter.cpp | 141 ++++--------------------
Src/DasherCore/DynamicFilter.h | 54 ++++------
Src/DasherCore/FrameRate.cpp | 2 +-
Src/DasherCore/FrameRate.h | 23 ++--
Src/DasherCore/InputFilter.h | 12 +--
Src/DasherCore/Makefile.am | 6 +-
Src/DasherCore/OneButtonDynamicFilter.cpp | 20 ++--
Src/DasherCore/OneButtonDynamicFilter.h | 6 +-
Src/DasherCore/OneButtonFilter.cpp | 4 +-
Src/DasherCore/OneButtonFilter.h | 2 +-
Src/DasherCore/OneDimensionalFilter.cpp | 10 +-
Src/DasherCore/OneDimensionalFilter.h | 2 +-
Src/DasherCore/Parameters.cpp | 1 +
Src/DasherCore/Parameters.h | 2 +-
Src/DasherCore/StartHandler.h | 8 +-
Src/DasherCore/StylusFilter.cpp | 18 ++--
Src/DasherCore/StylusFilter.h | 6 +-
Src/DasherCore/TwoBoxStartHandler.cpp | 9 +-
Src/DasherCore/TwoBoxStartHandler.h | 3 +-
Src/DasherCore/TwoButtonDynamicFilter.cpp | 36 ++++---
Src/DasherCore/TwoButtonDynamicFilter.h | 6 +-
Src/DasherCore/TwoPushDynamicFilter.cpp | 28 ++---
Src/DasherCore/TwoPushDynamicFilter.h | 10 +-
Src/DasherCore/UserLog.cpp | 5 +-
Src/DasherCore/UserLog.h | 2 +-
Src/DasherCore/UserLogBase.cpp | 15 ++-
Src/DasherCore/UserLogBase.h | 4 +-
Src/Gtk2/DasherControl.cpp | 11 +-
Src/Gtk2/DasherControl.h | 3 -
Src/Gtk2/GtkDasherControl.cpp | 10 --
Src/Gtk2/GtkDasherControl.h | 2 -
Src/Gtk2/dasher_editor_internal.cpp | 1 -
Src/Gtk2/dasher_editor_internal.h | 3 -
Src/Gtk2/dasher_main.cpp | 61 +----------
Src/MacOSX/Dasher.xcodeproj/project.pbxproj | 16 ++--
Src/MacOSX/DasherApp.h | 3 -
Src/MacOSX/DasherApp.mm | 12 --
Src/MacOSX/DasherViewOpenGL.mm | 43 ++++++-
Src/Win32/Widgets/Canvas.cpp | 10 +--
Src/iPhone/Classes/CDasherInterfaceBridge.mm | 10 +-
Src/iPhone/Classes/EAGLView.mm | 4 +-
Src/iPhone/Classes/IPhoneFilters.h | 16 ++--
Src/iPhone/Classes/IPhoneFilters.mm | 26 ++--
Src/iPhone/Dasher.xcodeproj/project.pbxproj | 12 +-
70 files changed, 642 insertions(+), 846 deletions(-)
---
diff --cc Src/DasherCore/DashIntfScreenMsgs.cpp
index b75e145,00d35ca..a9d007c
--- a/Src/DasherCore/DashIntfScreenMsgs.cpp
+++ b/Src/DasherCore/DashIntfScreenMsgs.cpp
@@@ -81,22 -81,24 +81,25 @@@ void CDashIntfScreenMsgs::ChangeScreen(
}
}
- void CDashIntfScreenMsgs::Unpause(unsigned long lTime) {
- if (!GetBoolParameter(BP_DASHER_PAUSED)) return;
- while (!m_dqModalMessages.empty()) {
- if (m_dqModalMessages.front().second) {
- //Message has been displayed; delete it
- delete m_dqModalMessages.front().first; //the label
- m_dqModalMessages.pop_front();
- } else {
- //there are more, not-yet displayed, modal messages!
- //These should be after any that were displayed (which have now been erased), so
- // do not unpause; next frame will render more messages instead.
- m_pDasherModel->ClearScheduledSteps();
- return;
+ void CDashIntfScreenMsgs::HandleEvent(int iParameter) {
+ CDashIntfSettings::HandleEvent(iParameter);
+ if (iParameter==BP_DASHER_PAUSED && !GetBoolParameter(BP_DASHER_PAUSED)) {
+ //just unpaused.
+ while (!m_dqModalMessages.empty()) {
+ if (m_dqModalMessages.front().second) {
+ //Message has been displayed; delete it
+ delete m_dqModalMessages.front().first; //the label
+ m_dqModalMessages.pop_front();
+ } else {
+ //there are more, not-yet displayed, modal messages!
+ //These should be after any that were displayed (which have now been erased), so:
+ // do not unpause; next frame will render more messages instead.
++ m_pDasherModel->ClearScheduledSteps();
+ SetBoolParameter(BP_DASHER_PAUSED,true);
+ return;
+ }
}
}
- CDasherInterfaceBase::Unpause(lTime);
}
CGameModule *CDashIntfScreenMsgs::CreateGameModule(CDasherView *pView, CDasherModel *pModel) {
diff --cc Src/DasherCore/DasherInterfaceBase.cpp
index b054572,3ae2b41..ace3b07
--- a/Src/DasherCore/DasherInterfaceBase.cpp
+++ b/Src/DasherCore/DasherInterfaceBase.cpp
@@@ -86,7 -85,7 +85,7 @@@ static char THIS_FILE[] = __FILE__
#endif
#endif
- CDasherInterfaceBase::CDasherInterfaceBase(CSettingsStore *pSettingsStore) : CSettingsUser(pSettingsStore), m_pSettingsStore(pSettingsStore), m_pDasherModel(new CDasherModel(this,this)), m_pLockLabel(NULL) {
-CDasherInterfaceBase::CDasherInterfaceBase(CSettingsStore *pSettingsStore) : CSettingsUser(pSettingsStore), m_pSettingsStore(pSettingsStore), m_pFramerate(new CFrameRate(this)), m_pLockLabel(NULL) {
++CDasherInterfaceBase::CDasherInterfaceBase(CSettingsStore *pSettingsStore) : CSettingsUser(pSettingsStore), m_pSettingsStore(pSettingsStore), m_pDasherModel(new CDasherModel(this)), m_pFramerate(new CFrameRate(this)), m_pLockLabel(NULL) {
pSettingsStore->Register(this, true);
diff --cc Src/DasherCore/DasherInterfaceBase.h
index 96494a7,df67d7a..82c93a5
--- a/Src/DasherCore/DasherInterfaceBase.h
+++ b/Src/DasherCore/DasherInterfaceBase.h
@@@ -423,7 -412,8 +412,9 @@@ protected
CDasherScreen *m_DasherScreen;
+ CDasherModel * const m_pDasherModel;
+ ///Framerate monitor; created in constructor, req'd for DynamicFilter subclasses
+ CFrameRate * const m_pFramerate;
private:
diff --cc Src/iPhone/Classes/CDasherInterfaceBridge.mm
index 960d4bb,6a39c51..fdfa06c
--- a/Src/iPhone/Classes/CDasherInterfaceBridge.mm
+++ b/Src/iPhone/Classes/CDasherInterfaceBridge.mm
@@@ -88,17 -80,14 +88,17 @@@ void CDasherInterfaceBridge::CreateModu
RegisterModule(new CButtonMode(this, this, true, 9, "Menu Mode"));
RegisterModule(new CButtonMode(this, this, false, 8, "Direct Mode"));
- RegisterModule(new CTwoButtonDynamicFilter(this, this));
- RegisterModule(new CTwoPushDynamicFilter(this, this));
+ RegisterModule(new CTwoButtonDynamicFilter(this, this, m_pFramerate));
+ RegisterModule(new CTwoPushDynamicFilter(this, this, m_pFramerate));
- RegisterModule(new CIPhoneTiltFilter(this, this, 16, m_pMouseDevice));
- RegisterModule(m_pTiltFilter =
- new CIPhoneTiltFilter(this, this, m_pFramerate, 16, m_pMouseDevice));
- RegisterModule(m_pTouchFilter =
- new CIPhoneTouchFilter(this, this, m_pFramerate, 17, m_pUndoubledTouch, m_pTiltDevice));
- SetDefaultInputMethod(m_pTouchFilter);
++ RegisterModule(new CIPhoneTiltFilter(this, this, m_pFramerate, 16, m_pMouseDevice));
+ //Touch filter is stylus filter with optional Tilt X....
+ CIPhoneTouchFilter *pTouchFilter =
- new CIPhoneTouchFilter(this, this, 17, m_pUndoubledTouch, m_pTiltDevice);
++ new CIPhoneTouchFilter(this, this, m_pFramerate, 17, m_pUndoubledTouch, m_pTiltDevice);
+ RegisterModule(pTouchFilter);
+ SetDefaultInputMethod(pTouchFilter);
+
- RegisterModule(new CIPhoneTwoFingerFilter(this,this,18));
++ RegisterModule(new CIPhoneTwoFingerFilter(this,this, m_pFramerate, 18));
}
CDasherInterfaceBridge::~CDasherInterfaceBridge() {
diff --cc Src/iPhone/Classes/EAGLView.mm
index ad116f7,19e7efe..49a80d9
--- a/Src/iPhone/Classes/EAGLView.mm
+++ b/Src/iPhone/Classes/EAGLView.mm
@@@ -132,16 -116,11 +132,16 @@@ bool operator==(CGPoint p,CGPoint q)
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
- NSAssert([touches count] == 1, @"Multitouch?!");
- lastTouchCoords = [((UITouch *)[touches anyObject]) locationInView:self];
- NSAssert(!anyDown,@"Touches began when already in progress - multitouch enabled?!?!\n");
- anyDown = YES;
- dasherApp.dasherInterface->KeyDown(get_time(), 100);
+ const unsigned long time(get_time());
+ for (UITouch *touch in touches) {
+ const int finger(fingerPosns.empty() ? 0 : fingerPosns.rbegin()->first+1);
+ NSAssert(allTouches.find(touch)==allTouches.end(),@"Touch beginning already in progress?");
+ CGPoint p=[touch locationInView:self];
+ allTouches[touch]=finger;
+ fingerPosns[finger]=p;
+ //first finger with button id 100 = left button, then 101 and so on (element already inserted)
- dasherApp.dasherInterface->KeyDown(time, allTouches.size()+99, true , p.x, p.y);
++ dasherApp.dasherInterface->KeyDown(time, allTouches.size()+99);
+ }
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
@@@ -154,17 -128,13 +154,17 @@@
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
- NSAssert([touches count] == 1, @"Multitouch?!");
- NSAssert(anyDown,@"Touches ended when not in progress - multitouch enabled?!?!\n");
- lastTouchCoords = [(UITouch *)[touches anyObject] locationInView:self];
- dasherApp.dasherInterface->KeyUp(get_time(), 100);
- //finished dealing with touch-up event. Finger is now officially off the screen...
- lastTouchCoords.x = lastTouchCoords.y = -1;
- anyDown = NO;
+ const unsigned long time(get_time());
+ for (UITouch *touch in touches) {
+ map<UITouch*,int>::iterator it = allTouches.find(touch);
+ NSAssert(it != allTouches.end(), @"Release touch not in progress?");
+ map<int,CGPoint>::iterator it2=fingerPosns.find(it->second);
+ NSAssert(it2 != fingerPosns.end(), @"No coordinates for touch?");
+ CGPoint p=it2->second;
+ fingerPosns.erase(it2);
+ allTouches.erase(it);
- dasherApp.dasherInterface->KeyUp(time, allTouches.size()+100, true, p.x, p.y);
++ dasherApp.dasherInterface->KeyUp(time, allTouches.size()+100);
+ }
}
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event {
diff --cc Src/iPhone/Classes/IPhoneFilters.h
index 1273a3f,34b269d..6ceaf5a
--- a/Src/iPhone/Classes/IPhoneFilters.h
+++ b/Src/iPhone/Classes/IPhoneFilters.h
@@@ -21,17 -33,13 +21,17 @@@ extern NSString *DOUBLE_TOUCH_X
#define TILT_FILTER "IPhone Tilt Filter"
#define TOUCH_FILTER "IPhone Touch Filter"
+#define TWO_FINGER_FILTER "Two-finger filter"
+
+namespace Dasher {
+
class CIPhoneTiltFilter : public COneDimensionalFilter, private IPhonePrefsObserver {
public:
- CIPhoneTiltFilter(CSettingsUser *pCreator, CDasherInterfaceBase *pInterface, ModuleID_t iID, CDasherInput *pTouch);
+ CIPhoneTiltFilter(CSettingsUser *pCreator, CDasherInterfaceBase *pInterface, CFrameRate *pFramerate, ModuleID_t iID, CDasherInput *pTouch);
///override to enable hold-to-go
- virtual void KeyDown(int iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel, CUserLogBase *pUserLog);
+ virtual void KeyDown(unsigned long iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel, CUserLogBase *pUserLog);
///override to enable hold-to-go
- virtual void KeyUp(int iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel);
+ virtual void KeyUp(unsigned long iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel);
///respond to BP_DASHER_PAUSED by engaging wakelock (if !hold-to-go)
virtual void HandleEvent(int iParameter);
@@@ -65,13 -73,4 +65,13 @@@ private
bool bUseTiltX;
};
+class CIPhoneTwoFingerFilter : public CDefaultFilter {
+public:
- CIPhoneTwoFingerFilter(CSettingsUser *pCreator, CDasherInterfaceBase *pInterface, ModuleID_t iID);
- virtual void KeyUp(int iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel);
- virtual void KeyDown(int iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel, CUserLogBase *pUserLog);
++ CIPhoneTwoFingerFilter(CSettingsUser *pCreator, CDasherInterfaceBase *pInterface, CFrameRate *pFramerate, ModuleID_t iID);
++ virtual void KeyUp(unsigned long iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel);
++ virtual void KeyDown(unsigned long iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel, CUserLogBase *pUserLog);
+ virtual bool DecorateView(CDasherView *pView, CDasherInput *pInput);
+};
+
+}
/// @}
diff --cc Src/iPhone/Classes/IPhoneFilters.mm
index bfafd71,4a511f9..8347fad
--- a/Src/iPhone/Classes/IPhoneFilters.mm
+++ b/Src/iPhone/Classes/IPhoneFilters.mm
@@@ -19,12 -19,53 +19,12 @@@ NSString *HOLD_TO_GO=@"HoldToGo"
NSString *TILT_1D=@"Tilt1D";
NSString * TILT_USE_TOUCH_X=@"UseTouchX";
NSString * TOUCH_USE_TILT_X=@"UseTiltX";
+NSString *DOUBLE_TOUCH_X=@"DoubleXCoords";
- interface NSUserDefaultsObserver : NSObject {
- IPhonePrefsObserver *po;
-}
--(id)initForPrefsObserver:(IPhonePrefsObserver *)po;
--(void)stopObserving;
--(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context;
- end
-
- implementation NSUserDefaultsObserver
-
--(id)initForPrefsObserver:(IPhonePrefsObserver *)_po {
- if (self = [super init]) {
- self->po = _po;
- }
- return self;
-}
-
--(void)stopObserving {po=nil; [self autorelease];}
-
--(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
- NSAssert(object == [NSUserDefaults standardUserDefaults],@"Only observing user defaults?");
- if (po) po->iPhonePrefsChanged(keyPath);
- else [[NSUserDefaults standardUserDefaults] removeObserver:self forKeyPath:keyPath];
-}
- end
-
-void IPhonePrefsObserver::ObserveKeys(NSString *key,...) {
- va_list args;
- va_start(args, key);
-
- obsvr = [[NSUserDefaultsObserver alloc] initForPrefsObserver:this];
- while (key) {
- [[NSUserDefaults standardUserDefaults] addObserver:obsvr forKeyPath:key options:0 context:nil];
- iPhonePrefsChanged(key);
- key=va_arg(args, NSString *);
- }
- va_end(args);
-}
-
-IPhonePrefsObserver::~IPhonePrefsObserver() {
- [obsvr stopObserving];
- [obsvr release];
-}
+using namespace Dasher;
- CIPhoneTiltFilter::CIPhoneTiltFilter(CSettingsUser *pCreator, CDasherInterfaceBase *pInterface, ModuleID_t iID, CDasherInput *pTouch)
- : COneDimensionalFilter(pCreator, pInterface, iID, TILT_FILTER), m_pTouch(pTouch) {
+ CIPhoneTiltFilter::CIPhoneTiltFilter(CSettingsUser *pCreator, CDasherInterfaceBase *pInterface, CFrameRate *pFramerate, ModuleID_t iID, CDasherInput *pTouch)
+ : COneDimensionalFilter(pCreator, pInterface, pFramerate, iID, TILT_FILTER), m_pTouch(pTouch) {
ObserveKeys(HOLD_TO_GO, TILT_USE_TOUCH_X, TILT_1D, @"CircleStart", nil);
};
@@@ -130,36 -171,4 +130,36 @@@ void CIPhoneTouchFilter::ApplyTransform
m_pTilt->GetDasherCoords(iDasherX,temp,pView);
}
CStylusFilter::ApplyTransform(iDasherX, iDasherY, pView);
+}
+
- CIPhoneTwoFingerFilter::CIPhoneTwoFingerFilter(CSettingsUser *pCreator, CDasherInterfaceBase *pInterface, ModuleID_t iID)
- : CDefaultFilter(pCreator, pInterface, iID, TWO_FINGER_FILTER) {
++CIPhoneTwoFingerFilter::CIPhoneTwoFingerFilter(CSettingsUser *pCreator, CDasherInterfaceBase *pInterface, CFrameRate *pFramerate, ModuleID_t iID)
++: CDefaultFilter(pCreator, pInterface, pFramerate, iID, TWO_FINGER_FILTER) {
+}
+
- void CIPhoneTwoFingerFilter::KeyDown(int iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel, CUserLogBase *pUserLog) {
- if (iId==101) m_pInterface->Unpause(iTime);
++void CIPhoneTwoFingerFilter::KeyDown(unsigned long iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel, CUserLogBase *pUserLog) {
++ if (iId==101) Unpause(iTime);
+ else if (iId!=100) CDefaultFilter::KeyDown(iTime, iId, pView, pInput, pModel, pUserLog);
+}
+
- void CIPhoneTwoFingerFilter::KeyUp(int iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel) {
++void CIPhoneTwoFingerFilter::KeyUp(unsigned long iTime, int iId, CDasherView *pView, CDasherInput *pInput, CDasherModel *pModel) {
+ if (iId==101) m_pInterface->Stop();
+ else if (iId!=100) CDefaultFilter::KeyUp(iTime, iId, pView, pInput, pModel);
+}
+
+bool CIPhoneTwoFingerFilter::DecorateView(CDasherView *pView, CDasherInput *pInput) {
+ if (GetBoolParameter(BP_DRAW_MOUSE_LINE)) {
+ myint x[2], y[2];
+ x[0] = m_iLastX; x[1] = 0;
+ y[0] = m_iLastY;
+ for (y[1] = m_iLastY - m_iLastX; ;) {
+ if (GetBoolParameter(BP_CURVE_MOUSE_LINE))
+ pView->DasherSpaceLine(x[0], y[0], x[1], y[1], GetLongParameter(LP_LINE_WIDTH), 1);
+ else
+ pView->DasherPolyline(x, y, 2, GetLongParameter(LP_LINE_WIDTH), 1);
+ if (y[1] == m_iLastY + m_iLastX) break;
+ y[1] = m_iLastY + m_iLastX;
+ }
+ return true;
+ }
+ return false;
}
diff --cc Src/iPhone/Dasher.xcodeproj/project.pbxproj
index 1453409,d4a8840..6af3c32
--- a/Src/iPhone/Dasher.xcodeproj/project.pbxproj
+++ b/Src/iPhone/Dasher.xcodeproj/project.pbxproj
@@@ -251,9 -250,10 +250,10 @@@
3378A23F1335425300A96C5D /* AbstractXMLParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3378A23D1335425200A96C5D /* AbstractXMLParser.cpp */; };
3378A267133543B800A96C5D /* control.xml in Resources */ = {isa = PBXBuildFile; fileRef = 3378A266133543B800A96C5D /* control.xml */; };
337ECC1B10DD5E0700D0C6A5 /* ExpansionPolicy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 337ECC1910DD5E0700D0C6A5 /* ExpansionPolicy.cpp */; };
+ 339E340E13C6206E007A2BCC /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = 339E340D13C6206E007A2BCC /* Default.png */; };
339F8A330FF5088000282847 /* CalibrationController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 339F8A320FF5088000282847 /* CalibrationController.mm */; };
33B3430813A8A927009AE0D5 /* DashIntfScreenMsgs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33B3430613A8A927009AE0D5 /* DashIntfScreenMsgs.cpp */; };
+ 33B6825013CA4CC300F0A952 /* DynamicButtons.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33B6824E13CA4CC200F0A952 /* DynamicButtons.cpp */; };
- 33C71AF20FF7B51700A20992 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = 33C71AF10FF7B51700A20992 /* Default.png */; };
33CBB397101F422200510BF9 /* PPMPYLanguageModel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 33CBB395101F422200510BF9 /* PPMPYLanguageModel.cpp */; };
33CBB4CD101F9E5F00510BF9 /* training_czechC_CS.txt in Resources */ = {isa = PBXBuildFile; fileRef = 33CBB4C7101F9E5F00510BF9 /* training_czechC_CS.txt */; };
33CBB4CE101F9E5F00510BF9 /* training_englishLC_GB.txt in Resources */ = {isa = PBXBuildFile; fileRef = 33CBB4C8101F9E5F00510BF9 /* training_englishLC_GB.txt */; };
@@@ -704,6 -701,9 +702,8 @@@
33B342F313A8A8B2009AE0D5 /* Messages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Messages.h; sourceTree = "<group>"; };
33B3430613A8A927009AE0D5 /* DashIntfScreenMsgs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DashIntfScreenMsgs.cpp; sourceTree = "<group>"; };
33B3430713A8A927009AE0D5 /* DashIntfScreenMsgs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DashIntfScreenMsgs.h; sourceTree = "<group>"; };
+ 33B6824E13CA4CC200F0A952 /* DynamicButtons.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DynamicButtons.cpp; sourceTree = "<group>"; };
+ 33B6824F13CA4CC200F0A952 /* DynamicButtons.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DynamicButtons.h; sourceTree = "<group>"; };
- 33C71AF10FF7B51700A20992 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = "<group>"; };
33CBB395101F422200510BF9 /* PPMPYLanguageModel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PPMPYLanguageModel.cpp; sourceTree = "<group>"; };
33CBB396101F422200510BF9 /* PPMPYLanguageModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PPMPYLanguageModel.h; sourceTree = "<group>"; };
33CBB4C7101F9E5F00510BF9 /* training_czechC_CS.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = training_czechC_CS.txt; sourceTree = "<group>"; };
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]