Commit Graph

124 Commits

Author SHA1 Message Date
Václav Slavík
ab49aec91a Fix wxGTK's wxFileDialog:Get/SetFilename() to be in sync.
The m_fileName and m_dir variables, managed by the base class, were out
of sync when the dialog wasn't shown yet, because the wxGTK
implementation didn't always set them. GetFilename() following
SetFilename(x) could return something other than x. Fixed by calling the
base class version.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-13 12:36:32 +00:00
Václav Slavík
643e9cf9f6 Add wxTEST_DIALOG for testing of modal dialogs.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72837 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 16:45:11 +00:00
Paul Cornett
9dc44eff02 support for GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-30 20:39:06 +00:00
Paul Cornett
3b7067a05d Remove use of "size-request" signal for wxWindow sizing.
This signal has been removed from GTK3. Instead have wxPizza keep track of child
size, and use gtk_widget_set_size_request() for wxWindows in native containers.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-17 15:29:50 +00:00
Vadim Zeitlin
c282e47d8f Always use UTF-8 for file names passed to GTK+ functions under MSW.
When building wxGTK under MSW, always use UTF-8 as file name encoding because
GTK+ doesn't use G_FILENAME_ENCODING there.

Add a helper wxGTK_CONV_FN() macro to hide the difference between the
platforms.

Closes #14035.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-04-08 18:10:29 +00:00
Vadim Zeitlin
e3f54c8f7c Implement wxDirDialog:: and wxFileDialog::Create() in wxGTK.
Simply move the code from non-default constructor to Create(). This allows to
create the dialogs using 2-step creation if necessary.

Closes #14069.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-14 12:32:27 +00:00
Vadim Zeitlin
dea43e6ee3 Ignore setting empty path in wxGTK wxFileDialog.
wxGenericFileButton calls wxFileDialog::SetPath() with empty path if no
initial path is explicitly specified and this clearly shouldn't do anything --
but it did, as it set the file dialog path to the initial directory (cwd by
default), and so opened it in the parent of that directory which was
completely unexpected and not useful at all.

Simply don't do anything when SetPath("") is called.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-29 14:45:29 +00:00
Vadim Zeitlin
257d35aead Interpret default file name relatively to initial dir in wxGTK wxFileDialog.
Use the initial dialog directory to build the absolute path required by GTK+
in wxFileDialog instead of the current working directory. This makes more
sense and makes specifying the default directory and (just) the default file
name work correctly and avoids GTK+ warnings like

Gtk-CRITICAL **: gtk_file_folder_unix_get_info: assertion `strcmp (dirname, folder_unix->filename) == 0' failed

(and in some older versions of GTK+ -- 2.10? -- this even results in a crash).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-28 02:04:57 +00:00
Vadim Zeitlin
f04f570fd2 Only include <unistd.h> under Unix in wxGTK code.
Also remove the inclusions of some Unix-specific headers that were not needed
at all.

Closes #14048.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-27 00:40:16 +00:00
Dimitri Schoolwerth
d13b34d3f2 No code changes, fixed various typos.
Applied patch by snowleopard2 fixing typos in interface/. Extended the fixes throughout trunk.

Closes #13076.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-03 20:31:32 +00:00
Vadim Zeitlin
b534aeb219 Set wild card in the base class too in wxGTK wxFileDialog.
Calling wxFileDialogBase::SetWildcard() ensures that GetWildcard() returns the
correct value after wxFileDialog::SetWildcard() was called.

The new code will also work correctly if we change SetWildcard() to handle
empty wildcard as the default one (see #12079).

Closes #12080.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-22 12:07:54 +00:00
Vadim Zeitlin
cdc48273b4 Fix bug with using uninitialized flags in GetParentForModalDialog().
GetParentForModalDialog() was called from the ctor initialized list before
m_windowStyle could be initialized by the base class ctor in several different
places, meaning that the check for wxDIALOG_NO_PARENT in this function was
using uninitialized variable.

Fix this by passing the style parameter explicitly to this function to allow
using it from derived class ctors. Still keep an overload which uses the
actual window parent and flags which is simpler to use for later calls to this
function.

Thanks valgrind for finding this one.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-18 00:05:37 +00:00
Vadim Zeitlin
b74d7c8525 Always use UTF-8 for GTK+ strings.
Strings returned and accepted by GTK+ functions always use UTF-8 independently
of the current locale and of the file name encoding we use. So use UTF-8
instead of wxConvFileName everywhere where we deal with GTK+ directly.

Closes #11743.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63549 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-02-25 00:03:35 +00:00
Vadim Zeitlin
8f79ece333 Don't assert if the path is not absolute in wxFileDialog::SetPath().
Remove the assert added in r62101 (see #10917), it was wrong as the other
ports do not assert in this case. Instead, just ensure that the path we use
with the GTK+ native chooser is absolute.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-03 16:26:15 +00:00
Vadim Zeitlin
fa333077f5 Append default extension before showing file save dialog, not after.
Appending the extension after the dialog was hidden is a bad idea as it
misleads the user by using a different file name from the one shown in the
dialog. It is also dangerous as it bypassed wxFD_OVERWRITE_PROMPT check.

So just append the default extension to the initial file name if it doesn't
have any but don't modify the file name once it was accepted by user.

Closes #11256.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-10-09 13:05:20 +00:00
Julian Smart
02a40b8af9 Applied #10917: wxGTK wxFileDialog::SetDirectory and ::SetFilename problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-24 20:36:46 +00:00
Vadim Zeitlin
03647350fc No changes, just removed hard tabs and trailing white space.
This commit is huge but there are no non-white-space changes in it.

Some files containing third-party sources (src/msw/wince/time.cpp,
src/x11/pango*.cpp) were left unchanged.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-21 10:41:26 +00:00
Paul Cornett
48200154f4 replace m_insertCallback with a virtual function, contrary to the old comments a virtual works just fine
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-29 15:46:48 +00:00
Robert Roebling
2038034368 Fix #9917: File save dialog does not honor file extension on GTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-29 13:57:03 +00:00
Paul Cornett
9ff9d30c0a Hold a reference on m_widget for the life of the associated wxWindow object.
This allows removing some ugly hacks, and leaking of GtkWidgets by wxNotebook.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-26 16:19:23 +00:00
Paul Cornett
f2448f2110 some code cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-10 18:26:33 +00:00
Paul Cornett
3abfbb4354 set extra widget from child inserter, so that correct style is set early enough
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-10 18:24:21 +00:00
Paul Cornett
fd6c5101a5 fix previous commit to respect minimum width
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-10 00:19:56 +00:00
Paul Cornett
38a36cf517 allow dialog to be resized smaller with extra control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-07 15:59:33 +00:00
Paul Cornett
f1d5aa4eca fix sizing of extra control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-07 06:51:10 +00:00
Vadim Zeitlin
8ce68f7fc0 add support for custom controls in file dialog in wxGTK and generic versions; also allow using generic dialogs in the sample with wxGTK2 (patch 1846837)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-02 14:33:47 +00:00
Václav Slavík
937013e0fd 1. added wxEvtHandler::SafelyProcessEvent() and wxWindow::HandleWindowEvent() to correctly handle exceptions in even handlers in wxGTK
2. use HandleWindowEvent() everywhere as more obvious and convenient shortcut for GetEventHandler()->ProcessEvent(); also for consistency with wxGTK where it's required

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-29 17:00:58 +00:00
Vadim Zeitlin
ff654490b7 removed all compile- and run-time checks for GTK+ < 2.4; don't include the generic files which are now never used in wxGTK in the build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-05 22:31:24 +00:00
Robert Roebling
700d08c109 [ 1823588 ] gtk filedlg - droping support for gtk 2.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49649 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-05 18:43:14 +00:00
Vadim Zeitlin
e4161a2a08 use -Wunused-parameter with gcc for consistency with MSVC and other compilers which warn about this; fix the uncovered warnings in wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-23 22:19:34 +00:00
Vadim Zeitlin
0cf3e587a2 added new and improved wxFileCtrl implementation (patch 1763164)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-17 00:14:34 +00:00
Vadim Zeitlin
78355ffc7b make the path absolute before using it with gtk_file_chooser_set_current_folder() (patch 1753796)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-14 20:30:46 +00:00
Václav Slavík
8650108199 don't use implicit wxString->char*/wchar_t* conversion, it will not be available in wxUSE_STL build in the future
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-10 17:42:41 +00:00
Robert Roebling
4c84a0dc49 Fix wxFD_FILE_MUST_EXIST
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-05 13:59:12 +00:00
Vadim Zeitlin
e8375af8ff remove wxWindow::m_needParent and use GTKNeedsParent() which can be overridden in just wxMenuBar (and not set in each and every wxGTK control)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-23 15:16:06 +00:00
Vadim Zeitlin
2229243bdf added wxDialog::GetParentForModalDialog() and use it to try to always create modal dialogs with a parent (slightly modified patch 1702962)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-22 20:34:41 +00:00
Paul Cornett
a1abca322f Reorganize idle system code.
Installing idle handler from GTK callbacks is no longer necessary.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-19 16:58:07 +00:00
Vadim Zeitlin
3a41827a6d call gtk_file_chooser_set_current_folder even if the default file name is empty (but default directory isn't) (bug 1701682)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-16 18:21:46 +00:00
Robin Dunn
f241631e6d Fix for when only a default dir is given without a default file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44205 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-01-12 18:24:19 +00:00
Vadim Zeitlin
bf34520682 1. don't assert if we're passed an empty defaultDir and full path in
defaultFileName (the other ports don't do it)
2. don't duplicate gtk_file_chooser_set_current_folder() calls for
   save and open dialogs unnecessarily
3. reformated a couple of comments to fit in 80 columns


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-12-08 00:35:55 +00:00
Robert Roebling
b014db05bb Add m_fsStyle next to m_windowStyle
Add HasFdFlag()
  Use it for all tests in all variants of
    wxFileDialogs. That way it will be easier
    to change again centrally, if required.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-25 13:26:47 +00:00
Paul Cornett
e808cf8a0a Don't free a string that is managed by wxGtkString, that's the whole _point_ of wxGtkString.
While we're at it, lets use it some more.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-03 16:01:18 +00:00
Robert Roebling
3ab296d9eb Commit patch [ 1559950 ] fix mem leaks in wx{Dir|File}Dialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-17 10:49:11 +00:00
Vadim Zeitlin
86508681d4 don't call base class OnOk() directly, use EndDialog() instead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-08-19 23:04:37 +00:00
Mart Raudsepp
f0f1afb8b9 Don't use filename encoding conversion when passing string to gtk_file_chooser_set_current_name (save as dialog
suggested filename) - it takes a UTF-8 per gtk+ documentation and common sense, so use wxGTK_CONV instead.
Fixes wxFileDialog save mode default filename with non-utf8 G_FILENAME_ENCODING (bug #1497800). Thanks to
Konstantin Anory for pointing this out.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-31 00:35:08 +00:00
Vadim Zeitlin
9f057af5ef wxFD_PREVIEW implementation for wxGTK (slightly modified patch 1520690)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40292 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-24 23:48:06 +00:00
Włodzimierz Skiba
e031f1df56 wxFD_* constants without 2.6 compatibility (heavily extended and modified patch #1497305).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-30 07:25:35 +00:00
Vadim Zeitlin
ff3e84ffdc File/dir dialog styles and other changes (patch 1488371):
- check invalid combinations of styles in wxFileDialogBase::Create()
- use wxFD_XXX naming convention for wxFileDialog styles
- replaces wxDD_NEW_DIR_BUTTON with wxDD_DIR_MUST_EXIST
- removes #ifdef __WXGTK24__ / #endif blocks from wxGTK code
- removes wxFileDialogBase::Get/SetStyle and wxFileDialogBase::m_fileName
- renames wxDirDialogGTK to wxDirDialog


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-28 23:32:12 +00:00
Vadim Zeitlin
a552d1201f fix the bug which prevented the same wxFile/DirDialog object from being used twice (patch 1485127)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-28 23:01:21 +00:00
Włodzimierz Skiba
246c5004eb Include wx/msgdlg.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-25 07:07:23 +00:00