// get the control alignment (left/right/centre, top/bottom/centre)
int GetAlignment() const { return m_windowStyle & wxALIGN_MASK; }
+ // set label with mnemonics
virtual void SetLabel(const wxString& label)
{
m_labelOrig = label;
wxWindow::SetLabel(label);
}
- virtual wxString GetLabel() const
- {
- // return the original string, as it was passed to SetLabel()
- // (i.e. with wx-style mnemonics)
- return m_labelOrig;
- }
-
- // get just the text of the label, without mnemonic characters ('&')
- wxString GetLabelText() const { return GetLabelText(GetLabel()); }
+ // return the original string, as it was passed to SetLabel()
+ // (i.e. with wx-style mnemonics)
+ virtual wxString GetLabel() const { return m_labelOrig; }
- void SetLabelText(const wxString& text)
+ // set label text (mnemonics will be escaped)
+ virtual void SetLabelText(const wxString& text)
{
SetLabel(EscapeMnemonics(text));
}
+ // get just the text of the label, without mnemonic characters ('&')
+ virtual wxString GetLabelText() const { return GetLabelText(GetLabel()); }
+
// controls by default inherit the colours of their parents, if a
// particular control class doesn't want to do it, it can override
// ShouldInheritColours() to return false
- // static utilities
- // ----------------
-
- // replaces parts of the (multiline) string with ellipsis if needed
- static wxString Ellipsize(const wxString& label, const wxDC& dc,
- wxEllipsizeMode mode, int maxWidth,
- int flags = wxELLIPSIZE_FLAGS_DEFAULT);
+ // static utilities for mnemonics char (&) handling
+ // ------------------------------------------------
- // get the string without mnemonic characters ('&')
+ // returns the given string without mnemonic characters ('&')
static wxString GetLabelText(const wxString& label);
- // removes the mnemonics characters
+ // returns the given string without mnemonic characters ('&')
+ // this function is identic to GetLabelText() and is provided for clarity
+ // and for symmetry with the wxStaticText::RemoveMarkup() function.
static wxString RemoveMnemonics(const wxString& str);
// escapes (by doubling them) the mnemonics
static wxString EscapeMnemonics(const wxString& str);
+
+ // miscellaneous static utilities
+ // ------------------------------
+
+ // replaces parts of the given (multiline) string with an ellipsis if needed
+ static wxString Ellipsize(const wxString& label, const wxDC& dc,
+ wxEllipsizeMode mode, int maxWidth,
+ int flags = wxELLIPSIZE_FLAGS_DEFAULT);
+
// return the accel index in the string or -1 if none and puts the modified
// string into second parameter if non NULL
static int FindAccelIndex(const wxString& label,
}
// get the string without mnemonic characters ('&') and without markup
- // (if wxST_MARKUP is being used)
+ // (if the wxST_MARKUP style is set)
virtual wxString GetLabelText() const;
- // public utilities (symmetric to those in wxControl about mnemonics):
+ // set label text (mnemonics and markup, if the wxST_MARKUP style is set,
+ // will be escaped)
+ virtual void SetLabelText(const wxString& text);
+
+
+ // static utilities for markup handling
+ // (symmetric to those in wxControl about mnemonics)
+ // -------------------------------------------------
// get the string without mnemonic characters ('&') and without markup
+ // (note that markup is always removed; this function is static and cannot
+ // check for wxST_MARKUP style presence/absence!)
static wxString GetLabelText(const wxString& label);
- // removes the markup accepted by wxStaticText when wxST_MARKUP is used,
- // and then returns the cleaned string
+ // removes the markup recognized by wxStaticText and returns the cleaned string
static wxString RemoveMarkup(const wxString& str);
// escapes all special symbols (<>"'&) present in the given string
// choose the default border for this window
virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; }
- // just calls RemoveMarkup & Ellipsize on the original label.
+ // calls only RemoveMarkup() on the original label
+ // if the wxST_MARKUP style is set
+ // (but unlike GetLabelText won't remove mnemonics)
+ virtual wxString GetLabelWithoutMarkup() const;
+
+ // just calls RemoveMarkup() & Ellipsize() on the original label
+ // if the wxST_MARKUP & wxST_ELLIPSIZE_* styles are set
+ // (but unlike GetLabelText won't remove mnemonics)
virtual wxString GetEllipsizedLabelWithoutMarkup() const;
// replaces parts of the string with ellipsis if needed
virtual void Command(wxCommandEvent& event);
/**
- Replaces parts of the @a label string with ellipsis, if needed, so
- that it doesn't exceed @a maxWidth.
-
- Note that this functions is guaranteed to always returns a string
- whose rendering on the given DC takes less than @a maxWidth pixels
- in horizontal.
-
- @param label
- The string to ellipsize
- @param dc
- The DC used to retrieve the character widths through the
- wxDC::GetPartialTextExtents() function.
- @param mode
- The ellipsization mode. This is the setting which determines
- which part of the string should be replaced by the ellipsis.
- See ::wxEllipsizeMode enumeration values for more info.
- @param maxWidth
- The maximum width of the returned string in pixels.
- This argument determines how much characters of the string need to
- be removed (and replaced by ellipsis).
- @param flags
- One or more of the ::wxEllipsizeFlags enumeration values combined.
- */
- static wxString Ellipsize(const wxString& label, const wxDC& dc,
- wxEllipsizeMode mode, int maxWidth,
- int flags = wxELLIPSIZE_FLAGS_DEFAULT);
+ Returns the control's label, as it was passed to SetLabel().
- /**
- Returns the control's text.
+ Note that the returned string may contains mnemonics ("&" characters) if they were
+ passed to the SetLabel() function; use GetLabelText() if they are undesired.
- @note The returned string contains mnemonics ("&" characters) if it has
- any, use GetLabelText() if they are undesired.
+ Also note that the returned string is always the string which was passed to
+ SetLabel() but may be different from the string passed to SetLabelText()
+ (since this last one escapes mnemonic characters).
*/
wxString GetLabel() const;
/**
Returns the control's label without mnemonics.
+
+ Note that because of the stripping of the mnemonics the returned string may differ
+ from the string which was passed to SetLabel().
*/
wxString GetLabelText() const;
+ /**
+ Sets the control's label.
+
+ All "&" characters in the @a label are special and indicate that the
+ following character is a @e mnemonic for this control and can be used to
+ activate it from the keyboard (typically by using @e Alt key in
+ combination with it). To insert a literal ampersand character, you need
+ to double it, i.e. use use "&&". If this behaviour is undesirable, use
+ SetLabelText() instead.
+ */
+ void SetLabel(const wxString& label);
+
+ /**
+ Sets the control's label to exactly the given string.
+
+ Unlike SetLabel(), this function shows exactly the @a text passed to it
+ in the control, without interpreting ampersands in it in any way.
+ Notice that it means that the control can't have any mnemonic defined
+ for it using this function.
+
+ @see EscapeMnemonics()
+ */
+ void SetLabelText(const wxString& text);
+
+
+public: // static functions
+
/**
Returns the given @a label string without mnemonics ("&" characters).
*/
static wxString GetLabelText(const wxString& label);
/**
- Removes the mnemonics ("&" characters) from the given string.
+ Returns the given @a str string without mnemonics ("&" characters).
+
+ @note This function is identic to GetLabelText() and is provided both for symmetry
+ with the wxStaticText::RemoveMarkup() function and to allow to write more
+ readable code (since this function has a more descriptive name respect GetLabelText()).
*/
static wxString RemoveMnemonics(const wxString& str);
/**
- Escape the special mnemonics characters ("&") in the given string.
+ Escapes the special mnemonics characters ("&") in the given string.
This function can be helpful if you need to set the controls label to a
user-provided string. If the string contains ampersands, they wouldn't
static wxString EscapeMnemonics(const wxString& text);
/**
- Sets the item's text.
+ Replaces parts of the @a label string with ellipsis, if needed, so
+ that it doesn't exceed @a maxWidth.
+
+ Note that this functions is guaranteed to always returns a string
+ whose rendering on the given DC takes less than @a maxWidth pixels
+ in horizontal.
- Any "&" characters in the @a label are special and indicate that the
- following character is a @e mnemonic for this control and can be used to
- activate it from the keyboard (typically by using @e Alt key in
- combination with it). To insert a literal ampersand character, you need
- to double it, i.e. use use "&&". If this behaviour is undesirable, use
- SetLabelText() instead.
+ @param label
+ The string to ellipsize
+ @param dc
+ The DC used to retrieve the character widths through the
+ wxDC::GetPartialTextExtents() function.
+ @param mode
+ The ellipsization mode. This is the setting which determines
+ which part of the string should be replaced by the ellipsis.
+ See ::wxEllipsizeMode enumeration values for more info.
+ @param maxWidth
+ The maximum width of the returned string in pixels.
+ This argument determines how much characters of the string need to
+ be removed (and replaced by ellipsis).
+ @param flags
+ One or more of the ::wxEllipsizeFlags enumeration values combined.
*/
- void SetLabel(const wxString& label);
-
- /**
- Sets the item's text to exactly the given string.
-
- Unlike SetLabel(), this function shows exactly the @a text passed to it
- in the control, without interpreting ampersands in it in any way.
- Notice that it means that the control can't have any mnemonic defined
- for it using this function.
-
- @see EscapeMnemonics()
- */
- void SetLabelText(const wxString& text);
+ static wxString Ellipsize(const wxString& label, const wxDC& dc,
+ wxEllipsizeMode mode, int maxWidth,
+ int flags = wxELLIPSIZE_FLAGS_DEFAULT);
};
Center the text (horizontally).
@style{wxST_NO_AUTORESIZE}
By default, the control will adjust its size to exactly fit to the
- size of the text when SetLabel is called. If this style flag is
+ size of the text when SetLabel() is called. If this style flag is
given, the control will not change its size (this style is
- especially useful with controls which also have wxALIGN_RIGHT or
- CENTER style because otherwise they won't make sense any longer
- after a call to SetLabel).
+ especially useful with controls which also have the @c wxALIGN_RIGHT or
+ the @c wxALIGN_CENTRE style because otherwise they won't make sense any
+ longer after a call to SetLabel()).
@style{wxST_ELLIPSIZE_START}
If the labeltext width exceeds the control width, replace the beginning
of the label with an ellipsis; uses wxControl::Ellipsize.
const wxSize& size = wxDefaultSize, long style = 0,
const wxString& name = wxStaticTextNameStr);
- // NB: when writing docs for the following function remember that Doxygen
- // will always expand HTML entities (e.g. ") and thus we need to
- // write e.g. "&lt;" to have in the output the "<" string.
- /**
- Escapes all the symbols of @a str that have a special meaning (<tt><>"'&</tt>) for
- wxStaticText objects with the @c wxST_MARKUP style.
-
- Those symbols are replaced the corresponding entities
- (&lt; &gt; &quot; &apos; &amp;).
- */
- static wxString EscapeMarkup(const wxString& str);
-
/**
Returns the contents of the control.
- Note that the returned string contains both the mnemonics (@& characters),
+ Note that the returned string may contain both the mnemonics (@& characters),
if any, and markup tags, if any.
+
Use GetLabelText() if only the label text is needed.
*/
wxString GetLabel() const;
*/
wxString GetLabelText() const;
- /**
- This overload returns the given @a label string without the
- mnemonics characters (if any) and without the markup.
- */
- static wxString GetLabelText(const wxString& label);
-
/**
Returns @true if the window styles for this control contains one of the
@c wxST_ELLIPSIZE_START, @c wxST_ELLIPSIZE_MIDDLE or @c wxST_ELLIPSIZE_END styles.
*/
bool IsEllipsized() const;
- /**
- Removes the markup accepted by wxStaticText when the @c wxST_MARKUP style is used,
- and then returns the cleaned string.
-
- See SetLabel() for more info about the markup.
- */
- static wxString RemoveMarkup(const wxString& str);
+ // NB: when writing docs for the following function remember that Doxygen
+ // will always expand HTML entities (e.g. ") and thus we need to
+ // write e.g. "&lt;" to have in the output the "<" string.
/**
Sets the static text label and updates the controls size to exactly fit the
- label unless the control has wxST_NO_AUTORESIZE flag.
+ label unless the control has @c wxST_NO_AUTORESIZE flag.
This function allows to set decorated static label text on platforms which
support it (currently only GTK+ 2). For the other platforms, the markup is
The supported tags are:
<TABLE>
+ <TR>
+ <TD><b>Tag</b></TD>
+ <TD><b>Description</b></TD>
+ </TR>
<TR>
<TD><b></TD>
<TD>bold text</TD>
It may contain newline characters and the markup tags described above.
*/
virtual void SetLabel(const wxString& label);
+
+ /**
+ Sets the control's label to exactly the given string.
+
+ Unlike SetLabel(), this function shows exactly the @a text passed to it
+ in the control, without interpreting ampersands in it in any way.
+ Notice that it means that the control can't have any mnemonic defined
+ for it using this function.
+
+ */
+ virtual void SetLabelText(const wxString& text);
/**
This functions wraps the controls label so that each of its lines becomes at
@since 2.6.2
*/
void Wrap(int width);
+
+
+public: // static functions
+
+ /**
+ Returns the given @a label string without the mnemonics characters (if any)
+ and without the markup.
+
+ Note that since this function is static it will always remove markup
+ (since it cannot check @c wxST_MARKUP presence/absence!).
+ */
+ static wxString GetLabelText(const wxString& label);
+
+ /**
+ Escapes all the symbols of @a str that have a special meaning (<tt><>"'&</tt>) for
+ wxStaticText objects with the @c wxST_MARKUP style.
+
+ Those symbols are replaced the corresponding entities
+ (&lt; &gt; &quot; &apos; &amp;).
+ */
+ static wxString EscapeMarkup(const wxString& str);
+
+ /**
+ Removes the markup accepted by wxStaticText when the @c wxST_MARKUP style is used,
+ and then returns the cleaned string.
+
+ See SetLabel() for more info about the markup.
+ */
+ static wxString RemoveMarkup(const wxString& str);
};
return true;
}
-/* static */
-wxString wxControlBase::GetLabelText(const wxString& label)
-{
- // we don't want strip the TABs here, just the mnemonics
- return wxStripMenuCodes(label, wxStrip_Mnemonics);
-}
-
void wxControlBase::Command(wxCommandEvent& event)
{
(void)GetEventHandler()->ProcessEvent(event);
#endif // wxUSE_RADIOBTN
}
+/* static */
+wxString wxControlBase::GetLabelText(const wxString& label)
+{
+ // we don't want strip the TABs here, just the mnemonics
+ return wxStripMenuCodes(label, wxStrip_Mnemonics);
+}
+
/* static */
wxString wxControlBase::RemoveMnemonics(const wxString& str)
{
+ // we don't want strip the TABs here, just the mnemonics
return wxStripMenuCodes(str, wxStrip_Mnemonics);
}
return RemoveMnemonics(ret);
}
-/*static*/
+void wxStaticTextBase::SetLabelText(const wxString& text)
+{
+ wxString str = text;
+
+ if (HasFlag(wxST_MARKUP))
+ str = EscapeMarkup(str); // escapes markup and the & characters (which are also mnemonics)
+ else
+ str = EscapeMnemonics(text); // escape only the mnemonics
+ SetLabel(str);
+}
+
+/* static */
wxString wxStaticTextBase::GetLabelText(const wxString& label)
{
- // remove markup
wxString ret = RemoveMarkup(label);
+ // always remove the markup (this function is static
+ // and cannot check for wxST_MARKUP presence/absence)
+
return RemoveMnemonics(ret);
}
-/*static*/
+/* static */
wxString wxStaticTextBase::RemoveMarkup(const wxString& text)
{
// strip out of "text" the markup for platforms which don't support it natively
DoSetLabel(newlabel);
}
+wxString wxStaticTextBase::GetLabelWithoutMarkup() const
+{
+ wxString ret(m_labelOrig);
+
+ if (HasFlag(wxST_MARKUP))
+ ret = RemoveMarkup(ret);
+
+ // unlike GetLabelText() we don't remove the mnemonics here!
+ return ret;
+}
+
wxString wxStaticTextBase::GetEllipsizedLabelWithoutMarkup() const
{
// this function should be used only by ports which do not support
}
#endif // SS_ENDELLIPSIS
- // this call will save the label in m_labelOrig and set it into this window
- // (through wxWindow::SetLabel)
+ // save the label in m_labelOrig with both the markup (if any) and
+ // the mnemonics characters (if any)
m_labelOrig = label;
#ifdef SS_ENDELLIPSIS
if ( styleReal & SS_ENDELLIPSIS )
- DoSetLabel(RemoveMarkup(label));
+ DoSetLabel(GetLabelWithoutMarkup());
else
#endif // SS_ENDELLIPSIS
DoSetLabel(GetEllipsizedLabelWithoutMarkup());
test_gui_config.o \
test_gui_comboboxtest.o \
test_gui_headerctrltest.o \
+ test_gui_label.o \
test_gui_listctrltest.o \
test_gui_textctrltest.o \
test_gui_textentrytest.o \
test_gui_headerctrltest.o: $(srcdir)/controls/headerctrltest.cpp $(TEST_GUI_ODEP)
$(CXXC) -c -o $@ $(TEST_GUI_CXXFLAGS) $(srcdir)/controls/headerctrltest.cpp
+test_gui_label.o: $(srcdir)/controls/label.cpp $(TEST_GUI_ODEP)
+ $(CXXC) -c -o $@ $(TEST_GUI_CXXFLAGS) $(srcdir)/controls/label.cpp
+
test_gui_listctrltest.o: $(srcdir)/controls/listctrltest.cpp $(TEST_GUI_ODEP)
$(CXXC) -c -o $@ $(TEST_GUI_CXXFLAGS) $(srcdir)/controls/listctrltest.cpp
--- /dev/null
+///////////////////////////////////////////////////////////////////////////////\r
+// Name: tests/controls/label.cpp\r
+// Purpose: wxControl and wxStaticText label tests\r
+// Author: Francesco Montorsi\r
+// Created: 2010-3-21\r
+// RCS-ID: $Id$\r
+// Copyright: (c) 2010 Francesco Montorsi\r
+///////////////////////////////////////////////////////////////////////////////\r
+\r
+// ----------------------------------------------------------------------------\r
+// headers\r
+// ----------------------------------------------------------------------------\r
+\r
+#include "testprec.h"\r
+\r
+#ifdef __BORLANDC__\r
+ #pragma hdrstop\r
+#endif\r
+\r
+#ifndef WX_PRECOMP\r
+ #include "wx/app.h"\r
+#endif // WX_PRECOMP\r
+\r
+#include "wx/control.h"\r
+#include "wx/stattext.h"\r
+#include "wx/checkbox.h"\r
+\r
+// ----------------------------------------------------------------------------\r
+// test class\r
+// ----------------------------------------------------------------------------\r
+\r
+class LabelTestCase : public CppUnit::TestCase\r
+{\r
+public:\r
+ LabelTestCase() { }\r
+\r
+ virtual void setUp();\r
+ virtual void tearDown();\r
+\r
+private:\r
+ CPPUNIT_TEST_SUITE( LabelTestCase );\r
+ CPPUNIT_TEST( GetLabel );\r
+ CPPUNIT_TEST( GetLabelText );\r
+ CPPUNIT_TEST( Statics );\r
+ CPPUNIT_TEST_SUITE_END();\r
+\r
+ void GetLabel();\r
+ void GetLabelText();\r
+ void Statics();\r
+\r
+ wxStaticText *m_st, *m_stWithMarkup;\r
+\r
+ // we cannot test wxControl directly (it's abstract) so we rather test wxCheckBox\r
+ wxCheckBox *m_cb;\r
+\r
+ DECLARE_NO_COPY_CLASS(LabelTestCase)\r
+};\r
+\r
+// register in the unnamed registry so that these tests are run by default\r
+CPPUNIT_TEST_SUITE_REGISTRATION( LabelTestCase );\r
+\r
+// also include in it's own registry so that these tests can be run alone\r
+CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( LabelTestCase, "LabelTestCase" );\r
+\r
+// ----------------------------------------------------------------------------\r
+// test initialization\r
+// ----------------------------------------------------------------------------\r
+\r
+#define ORIGINAL_LABEL "original label"\r
+\r
+void LabelTestCase::setUp()\r
+{\r
+ m_st = new wxStaticText(wxTheApp->GetTopWindow(), wxID_ANY, ORIGINAL_LABEL);\r
+ m_stWithMarkup = new wxStaticText(wxTheApp->GetTopWindow(), wxID_ANY, ORIGINAL_LABEL,\r
+ wxDefaultPosition, wxDefaultSize, wxST_MARKUP);\r
+\r
+ m_cb = new wxCheckBox(wxTheApp->GetTopWindow(), wxID_ANY, ORIGINAL_LABEL);\r
+\r
+ CPPUNIT_ASSERT_EQUAL( ORIGINAL_LABEL, m_st->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( ORIGINAL_LABEL, m_stWithMarkup->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( ORIGINAL_LABEL, m_cb->GetLabel() );\r
+}\r
+\r
+void LabelTestCase::tearDown()\r
+{\r
+ wxDELETE(m_st);\r
+ wxDELETE(m_stWithMarkup);\r
+ wxDELETE(m_cb);\r
+}\r
+\r
+// ----------------------------------------------------------------------------\r
+// the tests themselves\r
+// ----------------------------------------------------------------------------\r
+\r
+#define SET_LABEL(str) \\r
+ m_st->SetLabel(str); \\r
+ m_stWithMarkup->SetLabel(str); \\r
+ m_cb->SetLabel(str);\r
+\r
+#define SET_LABEL_TEXT(str) \\r
+ m_st->SetLabelText(str); \\r
+ m_stWithMarkup->SetLabelText(str); \\r
+ m_cb->SetLabelText(str);\r
+\r
+void LabelTestCase::GetLabel()\r
+{\r
+ const wxString testLabelArray[] = {\r
+ "label without mnemonics and markup",\r
+ "label with &mnemonic",\r
+ "label with <span foreground='blue'>some</span> <b>markup</b>",\r
+ "label with <span foreground='blue'>some</span> <b>markup</b> and &mnemonic",\r
+ };\r
+\r
+ // test calls to SetLabel() and then to GetLabel()\r
+\r
+ for ( unsigned int s = 0; s < WXSIZEOF(testLabelArray); s++ )\r
+ {\r
+ SET_LABEL(testLabelArray[s]);\r
+\r
+ // GetLabel() should always return the string passed to SetLabel()\r
+ CPPUNIT_ASSERT_EQUAL( testLabelArray[s], m_st->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabelArray[s], m_stWithMarkup->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabelArray[s], m_cb->GetLabel() );\r
+ }\r
+\r
+\r
+ // test calls to SetLabelText() and then to GetLabel()\r
+\r
+ const wxString& testLabel = "label without mnemonics and markup";\r
+ SET_LABEL_TEXT(testLabel);\r
+ CPPUNIT_ASSERT_EQUAL( testLabel, m_st->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabel, m_stWithMarkup->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabel, m_cb->GetLabel() );\r
+\r
+ const wxString& testLabel2 = "label with &mnemonic";\r
+ const wxString& testLabelText2 = "label with &&mnemonic";\r
+ SET_LABEL_TEXT(testLabel2);\r
+ CPPUNIT_ASSERT_EQUAL( testLabelText2, m_st->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( "label with &mnemonic", m_stWithMarkup->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabelText2, m_cb->GetLabel() );\r
+\r
+ const wxString& testLabel3 = "label with <span foreground='blue'>some</span> <b>markup</b>";\r
+ SET_LABEL_TEXT(testLabel3);\r
+ CPPUNIT_ASSERT_EQUAL( testLabel3, m_st->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( "label with <span foreground='blue'>some</span> <b>markup</b>", m_stWithMarkup->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabel3, m_cb->GetLabel() );\r
+\r
+ const wxString& testLabel4 = "label with <span foreground='blue'>some</span> <b>markup</b> and &mnemonic";\r
+ const wxString& testLabelText4 = "label with <span foreground='blue'>some</span> <b>markup</b> and &&mnemonic";\r
+ SET_LABEL_TEXT(testLabel4);\r
+ CPPUNIT_ASSERT_EQUAL( testLabelText4, m_st->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( "label with <span foreground='blue'>some</span> <b>markup</b> and &mnemonic", m_stWithMarkup->GetLabel() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabelText4, m_cb->GetLabel() );\r
+}\r
+\r
+void LabelTestCase::GetLabelText()\r
+{\r
+ // test calls to SetLabel() and then to GetLabelText()\r
+\r
+ const wxString& testLabel = "label without mnemonics and markup";\r
+ SET_LABEL(testLabel);\r
+ CPPUNIT_ASSERT_EQUAL( testLabel, m_st->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabel, m_stWithMarkup->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabel, m_cb->GetLabelText() );\r
+\r
+ const wxString& testLabel2 = "label with &mnemonic";\r
+ const wxString& testLabelText2 = "label with mnemonic";\r
+ SET_LABEL(testLabel2);\r
+ CPPUNIT_ASSERT_EQUAL( testLabelText2, m_st->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabelText2, m_stWithMarkup->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabelText2, m_cb->GetLabelText() );\r
+\r
+ const wxString& testLabel3 = "label with <span foreground='blue'>some</span> <b>markup</b>";\r
+ SET_LABEL(testLabel3);\r
+ CPPUNIT_ASSERT_EQUAL( testLabel3, m_st->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( "label with some markup", m_stWithMarkup->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabel3, m_cb->GetLabelText() );\r
+\r
+ const wxString& testLabel4 = "label with <span foreground='blue'>some</span> <b>markup</b> and &mnemonic";\r
+ const wxString& testLabelText4 = "label with <span foreground='blue'>some</span> <b>markup</b> and mnemonic";\r
+ SET_LABEL(testLabel4);\r
+ CPPUNIT_ASSERT_EQUAL( testLabelText4, m_st->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( "label with some markup and mnemonic", m_stWithMarkup->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabelText4, m_cb->GetLabelText() );\r
+\r
+\r
+ const wxString testLabelArray[] = {\r
+ "label without mnemonics and markup",\r
+ "label with &mnemonic",\r
+ "label with <span foreground='blue'>some</span> <b>markup</b>",\r
+ "label with <span foreground='blue'>some</span> <b>markup</b> and &mnemonic",\r
+ };\r
+\r
+ // test calls to SetLabelText() and then to GetLabelText()\r
+\r
+ for ( unsigned int s = 0; s < WXSIZEOF(testLabelArray); s++ )\r
+ {\r
+ SET_LABEL_TEXT(testLabelArray[s]);\r
+\r
+ // GetLabelText() should always return the string passed to SetLabelText()\r
+ CPPUNIT_ASSERT_EQUAL( testLabelArray[s], m_st->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabelArray[s], m_stWithMarkup->GetLabelText() );\r
+ CPPUNIT_ASSERT_EQUAL( testLabelArray[s], m_cb->GetLabelText() );\r
+ }\r
+}\r
+\r
+void LabelTestCase::Statics()\r
+{\r
+ CPPUNIT_ASSERT_EQUAL( "mnemonic", wxControl::RemoveMnemonics("&mnemonic") );\r
+ CPPUNIT_ASSERT_EQUAL( "&mnemonic", wxControl::RemoveMnemonics("&&mnemonic") );\r
+ CPPUNIT_ASSERT_EQUAL( "&mnemonic", wxControl::RemoveMnemonics("&&&mnemonic") );\r
+ CPPUNIT_ASSERT_EQUAL( "", wxStaticText::RemoveMarkup("<b></b>") );\r
+}\r
$(OBJS)\test_gui_config.obj \\r
$(OBJS)\test_gui_comboboxtest.obj \\r
$(OBJS)\test_gui_headerctrltest.obj \\r
+ $(OBJS)\test_gui_label.obj \\r
$(OBJS)\test_gui_listctrltest.obj \\r
$(OBJS)\test_gui_textctrltest.obj \\r
$(OBJS)\test_gui_textentrytest.obj \\r
$(OBJS)\test_gui_garbage.obj \\r
$(OBJS)\test_gui_settings.obj \\r
$(OBJS)\test_gui_socket.obj \\r
- $(OBJS)\test_gui_boxsizer.obj \
+ $(OBJS)\test_gui_boxsizer.obj \\r
$(OBJS)\test_gui_clientsize.obj \\r
$(OBJS)\test_gui_setsize.obj\r
\r
$(OBJS)\test_gui_headerctrltest.obj: .\controls\headerctrltest.cpp\r
$(CXX) -q -c -P -o$@ $(TEST_GUI_CXXFLAGS) .\controls\headerctrltest.cpp\r
\r
+$(OBJS)\test_gui_label.obj: .\controls\label.cpp\r
+ $(CXX) -q -c -P -o$@ $(TEST_GUI_CXXFLAGS) .\controls\label.cpp\r
+\r
$(OBJS)\test_gui_listctrltest.obj: .\controls\listctrltest.cpp\r
$(CXX) -q -c -P -o$@ $(TEST_GUI_CXXFLAGS) .\controls\listctrltest.cpp\r
\r
$(OBJS)\test_gui_socket.obj: .\net\socket.cpp\r
$(CXX) -q -c -P -o$@ $(TEST_GUI_CXXFLAGS) .\net\socket.cpp\r
\r
-$(OBJS)\test_gui_boxsizer.obj: .\sizers\boxsizer.cpp
- $(CXX) -q -c -P -o$@ $(TEST_GUI_CXXFLAGS) .\sizers\boxsizer.cpp
-
+$(OBJS)\test_gui_boxsizer.obj: .\sizers\boxsizer.cpp\r
+ $(CXX) -q -c -P -o$@ $(TEST_GUI_CXXFLAGS) .\sizers\boxsizer.cpp\r
+\r
$(OBJS)\test_gui_clientsize.obj: .\window\clientsize.cpp\r
$(CXX) -q -c -P -o$@ $(TEST_GUI_CXXFLAGS) .\window\clientsize.cpp\r
\r
$(OBJS)\test_gui_config.o \\r
$(OBJS)\test_gui_comboboxtest.o \\r
$(OBJS)\test_gui_headerctrltest.o \\r
+ $(OBJS)\test_gui_label.o \\r
$(OBJS)\test_gui_listctrltest.o \\r
$(OBJS)\test_gui_textctrltest.o \\r
$(OBJS)\test_gui_textentrytest.o \\r
$(OBJS)\test_gui_garbage.o \\r
$(OBJS)\test_gui_settings.o \\r
$(OBJS)\test_gui_socket.o \\r
- $(OBJS)\test_gui_boxsizer.o \
+ $(OBJS)\test_gui_boxsizer.o \\r
$(OBJS)\test_gui_clientsize.o \\r
$(OBJS)\test_gui_setsize.o\r
\r
$(OBJS)\test_gui_headerctrltest.o: ./controls/headerctrltest.cpp\r
$(CXX) -c -o $@ $(TEST_GUI_CXXFLAGS) $(CPPDEPS) $<\r
\r
+$(OBJS)\test_gui_label.o: ./controls/label.cpp\r
+ $(CXX) -c -o $@ $(TEST_GUI_CXXFLAGS) $(CPPDEPS) $<\r
+\r
$(OBJS)\test_gui_listctrltest.o: ./controls/listctrltest.cpp\r
$(CXX) -c -o $@ $(TEST_GUI_CXXFLAGS) $(CPPDEPS) $<\r
\r
$(OBJS)\test_gui_socket.o: ./net/socket.cpp\r
$(CXX) -c -o $@ $(TEST_GUI_CXXFLAGS) $(CPPDEPS) $<\r
\r
-$(OBJS)\test_gui_boxsizer.o: ./sizers/boxsizer.cpp
- $(CXX) -c -o $@ $(TEST_GUI_CXXFLAGS) $(CPPDEPS) $<
-
+$(OBJS)\test_gui_boxsizer.o: ./sizers/boxsizer.cpp\r
+ $(CXX) -c -o $@ $(TEST_GUI_CXXFLAGS) $(CPPDEPS) $<\r
+\r
$(OBJS)\test_gui_clientsize.o: ./window/clientsize.cpp\r
$(CXX) -c -o $@ $(TEST_GUI_CXXFLAGS) $(CPPDEPS) $<\r
\r
$(OBJS)\test_gui_config.obj \\r
$(OBJS)\test_gui_comboboxtest.obj \\r
$(OBJS)\test_gui_headerctrltest.obj \\r
+ $(OBJS)\test_gui_label.obj \\r
$(OBJS)\test_gui_listctrltest.obj \\r
$(OBJS)\test_gui_textctrltest.obj \\r
$(OBJS)\test_gui_textentrytest.obj \\r
$(OBJS)\test_gui_garbage.obj \\r
$(OBJS)\test_gui_settings.obj \\r
$(OBJS)\test_gui_socket.obj \\r
- $(OBJS)\test_gui_boxsizer.obj \
+ $(OBJS)\test_gui_boxsizer.obj \\r
$(OBJS)\test_gui_clientsize.obj \\r
$(OBJS)\test_gui_setsize.obj\r
TEST_GUI_RESOURCES = \\r
$(OBJS)\test_gui_headerctrltest.obj: .\controls\headerctrltest.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(TEST_GUI_CXXFLAGS) .\controls\headerctrltest.cpp\r
\r
+$(OBJS)\test_gui_label.obj: .\controls\label.cpp\r
+ $(CXX) /c /nologo /TP /Fo$@ $(TEST_GUI_CXXFLAGS) .\controls\label.cpp\r
+\r
$(OBJS)\test_gui_listctrltest.obj: .\controls\listctrltest.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(TEST_GUI_CXXFLAGS) .\controls\listctrltest.cpp\r
\r
$(OBJS)\test_gui_socket.obj: .\net\socket.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(TEST_GUI_CXXFLAGS) .\net\socket.cpp\r
\r
-$(OBJS)\test_gui_boxsizer.obj: .\sizers\boxsizer.cpp
- $(CXX) /c /nologo /TP /Fo$@ $(TEST_GUI_CXXFLAGS) .\sizers\boxsizer.cpp
-
+$(OBJS)\test_gui_boxsizer.obj: .\sizers\boxsizer.cpp\r
+ $(CXX) /c /nologo /TP /Fo$@ $(TEST_GUI_CXXFLAGS) .\sizers\boxsizer.cpp\r
+\r
$(OBJS)\test_gui_clientsize.obj: .\window\clientsize.cpp\r
$(CXX) /c /nologo /TP /Fo$@ $(TEST_GUI_CXXFLAGS) .\window\clientsize.cpp\r
\r
$(OBJS)\test_gui_config.obj &\r
$(OBJS)\test_gui_comboboxtest.obj &\r
$(OBJS)\test_gui_headerctrltest.obj &\r
+ $(OBJS)\test_gui_label.obj &\r
$(OBJS)\test_gui_listctrltest.obj &\r
$(OBJS)\test_gui_textctrltest.obj &\r
$(OBJS)\test_gui_textentrytest.obj &\r
$(OBJS)\test_gui_garbage.obj &\r
$(OBJS)\test_gui_settings.obj &\r
$(OBJS)\test_gui_socket.obj &\r
- $(OBJS)\test_gui_boxsizer.obj &
+ $(OBJS)\test_gui_boxsizer.obj &\r
$(OBJS)\test_gui_clientsize.obj &\r
$(OBJS)\test_gui_setsize.obj\r
\r
$(OBJS)\test_gui_headerctrltest.obj : .AUTODEPEND .\controls\headerctrltest.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(TEST_GUI_CXXFLAGS) $<\r
\r
+$(OBJS)\test_gui_label.obj : .AUTODEPEND .\controls\label.cpp\r
+ $(CXX) -bt=nt -zq -fo=$^@ $(TEST_GUI_CXXFLAGS) $<\r
+\r
$(OBJS)\test_gui_listctrltest.obj : .AUTODEPEND .\controls\listctrltest.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(TEST_GUI_CXXFLAGS) $<\r
\r
$(OBJS)\test_gui_socket.obj : .AUTODEPEND .\net\socket.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(TEST_GUI_CXXFLAGS) $<\r
\r
-$(OBJS)\test_gui_boxsizer.obj : .AUTODEPEND .\sizers\boxsizer.cpp
- $(CXX) -bt=nt -zq -fo=$^@ $(TEST_GUI_CXXFLAGS) $<
-
+$(OBJS)\test_gui_boxsizer.obj : .AUTODEPEND .\sizers\boxsizer.cpp\r
+ $(CXX) -bt=nt -zq -fo=$^@ $(TEST_GUI_CXXFLAGS) $<\r
+\r
$(OBJS)\test_gui_clientsize.obj : .AUTODEPEND .\window\clientsize.cpp\r
$(CXX) -bt=nt -zq -fo=$^@ $(TEST_GUI_CXXFLAGS) $<\r
\r
config/config.cpp
controls/comboboxtest.cpp
controls/headerctrltest.cpp
+ controls/label.cpp
controls/listctrltest.cpp
controls/textctrltest.cpp
controls/textentrytest.cpp
# PROP Default_Filter ""\r
# Begin Source File\r
\r
-SOURCE=.\sizers\boxsizer.cpp
-# End Source File
-# Begin Source File
-
+SOURCE=.\sizers\boxsizer.cpp\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=.\window\clientsize.cpp\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=.\controls\label.cpp\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=.\controls\listctrltest.cpp\r
# End Source File\r
# Begin Source File\r
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"\r
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">\r
<File\r
- RelativePath=".\sizers\boxsizer.cpp">
- </File>
- <File
+ RelativePath=".\sizers\boxsizer.cpp">\r
+ </File>\r
+ <File\r
RelativePath=".\window\clientsize.cpp">\r
</File>\r
<File\r
<File\r
RelativePath=".\image\image.cpp">\r
</File>\r
+ <File\r
+ RelativePath=".\controls\label.cpp">\r
+ </File>\r
<File\r
RelativePath=".\controls\listctrltest.cpp">\r
</File>\r
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"\r
>\r
<File\r
- RelativePath=".\sizers\boxsizer.cpp"
- >
- </File>
- <File
+ RelativePath=".\sizers\boxsizer.cpp"\r
+ >\r
+ </File>\r
+ <File\r
RelativePath=".\window\clientsize.cpp"\r
>\r
</File>\r
RelativePath=".\image\image.cpp"\r
>\r
</File>\r
+ <File\r
+ RelativePath=".\controls\label.cpp"\r
+ >\r
+ </File>\r
<File\r
RelativePath=".\controls\listctrltest.cpp"\r
>\r
<?xml version="1.0" encoding="Windows-1252"?>\r
+<!--\r
+\r
+ This project was generated by\r
+ Bakefile 0.2.8 (http://www.bakefile.org)\r
+ Do not modify, all changes will be overwritten!\r
+\r
+-->\r
<VisualStudioProject\r
ProjectType="Visual C++"\r
Version="9.00"\r
Name="test_gui"\r
ProjectGUID="{9BB295D9-A6AA-510D-AA0D-9375B5D91025}"\r
- TargetFrameworkVersion="0"
>\r
<Platforms>\r
<Platform\r
/>\r
</Platforms>\r
<ToolFiles>\r
+ \r
</ToolFiles>\r
<Configurations>\r
<Configuration\r
/>\r
<Tool\r
Name="VCBscMakeTool"\r
+ OutputFile="vc_mswud\test_vc9_test_gui.bsc"\r
SuppressStartupBanner="true"\r
- OutputFile="vc_mswud\test_vc9_test_gui.bsc"
/>\r
<Tool\r
Name="VCFxCopTool"\r
GenerateDebugInformation="true"\r
ProgramDatabaseFile="vc_mswu\test_gui.pdb"\r
SubSystem="1"\r
+ TargetMachine="1"\r
OptimizeReferences="2"\r
EnableCOMDATFolding="2"\r
- TargetMachine="1"
/>\r
<Tool\r
Name="VCALinkTool"\r
/>\r
<Tool\r
Name="VCBscMakeTool"\r
+ OutputFile="vc_mswu\test_vc9_test_gui.bsc"\r
SuppressStartupBanner="true"\r
- OutputFile="vc_mswu\test_vc9_test_gui.bsc"
/>\r
<Tool\r
Name="VCFxCopTool"\r
/>\r
<Tool\r
Name="VCBscMakeTool"\r
+ OutputFile="vc_mswunivud\test_vc9_test_gui.bsc"\r
SuppressStartupBanner="true"\r
- OutputFile="vc_mswunivud\test_vc9_test_gui.bsc"
/>\r
<Tool\r
Name="VCFxCopTool"\r
GenerateDebugInformation="true"\r
ProgramDatabaseFile="vc_mswunivu\test_gui.pdb"\r
SubSystem="1"\r
+ TargetMachine="1"\r
OptimizeReferences="2"\r
EnableCOMDATFolding="2"\r
- TargetMachine="1"
/>\r
<Tool\r
Name="VCALinkTool"\r
/>\r
<Tool\r
Name="VCBscMakeTool"\r
+ OutputFile="vc_mswunivu\test_vc9_test_gui.bsc"\r
SuppressStartupBanner="true"\r
- OutputFile="vc_mswunivu\test_vc9_test_gui.bsc"
/>\r
<Tool\r
Name="VCFxCopTool"\r
/>\r
<Tool\r
Name="VCBscMakeTool"\r
+ OutputFile="vc_mswuddll\test_vc9_test_gui.bsc"\r
SuppressStartupBanner="true"\r
- OutputFile="vc_mswuddll\test_vc9_test_gui.bsc"
/>\r
<Tool\r
Name="VCFxCopTool"\r
GenerateDebugInformation="true"\r
ProgramDatabaseFile="vc_mswudll\test_gui.pdb"\r
SubSystem="1"\r
+ TargetMachine="1"\r
OptimizeReferences="2"\r
EnableCOMDATFolding="2"\r
- TargetMachine="1"
/>\r
<Tool\r
Name="VCALinkTool"\r
/>\r
<Tool\r
Name="VCBscMakeTool"\r
+ OutputFile="vc_mswudll\test_vc9_test_gui.bsc"\r
SuppressStartupBanner="true"\r
- OutputFile="vc_mswudll\test_vc9_test_gui.bsc"
/>\r
<Tool\r
Name="VCFxCopTool"\r
/>\r
<Tool\r
Name="VCBscMakeTool"\r
+ OutputFile="vc_mswunivuddll\test_vc9_test_gui.bsc"\r
SuppressStartupBanner="true"\r
- OutputFile="vc_mswunivuddll\test_vc9_test_gui.bsc"
/>\r
<Tool\r
Name="VCFxCopTool"\r
GenerateDebugInformation="true"\r
ProgramDatabaseFile="vc_mswunivudll\test_gui.pdb"\r
SubSystem="1"\r
+ TargetMachine="1"\r
OptimizeReferences="2"\r
EnableCOMDATFolding="2"\r
- TargetMachine="1"
/>\r
<Tool\r
Name="VCALinkTool"\r
/>\r
<Tool\r
Name="VCBscMakeTool"\r
+ OutputFile="vc_mswunivudll\test_vc9_test_gui.bsc"\r
SuppressStartupBanner="true"\r
- OutputFile="vc_mswunivudll\test_vc9_test_gui.bsc"
/>\r
<Tool\r
Name="VCFxCopTool"\r
</Configuration>\r
</Configurations>\r
<References>\r
+ \r
</References>\r
<Files>\r
<Filter\r
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"\r
>\r
<File\r
- RelativePath=".\sizers\boxsizer.cpp"
- >
- </File>
- <File
+ RelativePath=".\sizers\boxsizer.cpp"\r
+ >\r
+ </File>\r
+ <File\r
RelativePath=".\window\clientsize.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\events\clone.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\graphics\colour.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\controls\comboboxtest.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\config\config.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\dummy.cpp"\r
<File\r
RelativePath=".\font\fonttest.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\misc\garbage.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\misc\guifuncs.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\controls\headerctrltest.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\html\htmlwindow.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\image\image.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
+ </File>\r
+ <File\r
+ RelativePath=".\controls\label.cpp"\r
+ >\r
</File>\r
<File\r
RelativePath=".\controls\listctrltest.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\graphics\measuring.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\geometry\point.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\events\propagation.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\image\rawbmp.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\geometry\rect.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\misc\selstoretest.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\window\setsize.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\misc\settings.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\geometry\size.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\net\socket.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\test.cpp"\r
<File\r
RelativePath=".\controls\textctrltest.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\controls\textentrytest.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
<File\r
RelativePath=".\controls\treectrltest.cpp"\r
>\r
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
</File>\r
</Filter>\r
<Filter\r
</Filter>\r
</Files>\r
<Globals>\r
+ \r
</Globals>\r
</VisualStudioProject>\r
+\r