檢視原始碼 Wx 發行說明

本文檔描述了 Wx 應用程式所做的變更。

Wx 2.4.3

已修正的錯誤和故障

  • 文件已改進。

    自有 ID:OTP-19190

Wx 2.4.2

改進和新功能

  • 文件已遷移至使用 Markdown 和 ExDoc。

    自有 ID:OTP-18955 輔助 ID:PR-8026

Wx 2.4.1

已修正的錯誤和故障

  • 新增選項以靜音 wx 棄用巨集。

    自有 ID:OTP-18988 輔助 ID:PR-7750

Wx 2.4

改進和新功能

  • 已將防護加入 gen_*:start* API 函式,以便更早捕獲錯誤的引數。在此變更之前,在某些情況下,錯誤的引數可能會附加並導致伺服器稍後在啟動後立即失敗。

    自有 ID:OTP-18857 輔助 ID:GH-7685

Wx 2.3.1

已修正的錯誤和故障

  • wx 應用程式在 macOS 上使用 Xcode 15 時會建置失敗。

    自有 ID:OTP-18768 輔助 ID:PR-7670

Wx 2.3

改進和新功能

  • 執行階段相依性已更新。

    自有 ID:OTP-18350

  • 實作已修正為在適當情況下使用 proc_lib:init_fail/2,3,而不是 proc_lib:init_ack/1,2

    * 可能不相容 *

    自有 ID:OTP-18490 輔助 ID:OTP-18471, GH-6339, PR-6843

Wx 2.2.2.1

已修正的錯誤和故障

  • wx 應用程式在 macOS 上使用 Xcode 15 時會建置失敗。

    自有 ID:OTP-18768 輔助 ID:PR-7670

Wx 2.2.2

已修正的錯誤和故障

  • 改善來自 nif 的除錯列印。針對 wxWidgets-3.2 進行了一些小修正。已修正 OpenGL 除錯函式。

    自有 ID:OTP-18512

Wx 2.2.1

已修正的錯誤和故障

  • 新增環境變數 WX_MACOS_NON_GUI_APP,以允許使用者覆寫 OSXIsGUIApplication 行為。

    自有 ID:OTP-18213 輔助 ID:PR-6113

Wx 2.2

改進和新功能

  • 適用於 autoconf 2.71 的 configure 指令碼輸入。

    自有 ID:OTP-17414 輔助 ID:PR-4967

  • 已將 aux1Downaux2Down 欄位新增至 wxMouseState 記錄。由於已變更一個記錄,因此可能需要重新編譯使用者程式碼。

    * 可能不相容 *

    自有 ID:OTP-17950

  • 新增 Mac 特定的選單列函式。

    自有 ID:OTP-18008 輔助 ID:PR-5816

Wx 2.1.4

已修正的錯誤和故障

  • 修正使用 wxWidgets-3.1.6 的建置失敗問題。

    自有 ID:OTP-18064 輔助 ID:GH-5893

改進和新功能

  • 啟用在 Windows 上使用 wxWidgets-3.1.6 建置 wx 的可能性。

    自有 ID:OTP-18061 輔助 ID:GH-5883

Wx 2.1.3

已修正的錯誤和故障

  • 修正了回呼處理中的錯誤,該錯誤可能導致 GUI 沒有回應。

    自有 ID:OTP-17982 輔助 ID:GH-5758

Wx 2.1.2

已修正的錯誤和故障

  • wxImage 建立函式中移除 static_data 選項,因為該選項已損壞,可能會導致當機。現在,影像資料一律會複製到 wxWidgets,如同預設行為一樣。

    移除了一些無法運作的 wxGridEvent 事件類型,這些類型在較新版本的 wxWidgets 中有其自己的事件,並新增了一些在 wx 中遺失的事件類型。

    自有 ID:OTP-17947

Wx 2.1.1

已修正的錯誤和故障

  • 修正 GUI 應用程式結束時,清除程式碼中的當機問題。

    修正 OpenGL 包裝函式中的錯誤,這些錯誤可能會導致當機並改善文件。

    自有 ID:OTP-17745

Wx 2.1

已修正的錯誤和故障

  • 修正關閉應用程式時的當機問題。

    自有 ID:OTP-17507

  • 某些具有多載色彩引數的函式無法使用。例如,複製建構函式 wxTextAttr:new(TextAttr) 無法運作。

    自有 ID:OTP-17577 輔助 ID:GH-4999

改進和新功能

  • 已將 Microsoft Edge WebView 載入器 DLL 新增至 Windows 上的安裝程式。

    自有 ID:OTP-17325

  • 處理特定的 Mac GUI 應用程式事件。

    自有 ID:OTP-17438 輔助 ID:PR-4780

Wx 2.0.1

已修正的錯誤和故障

  • 修正使用 -enable-std 建置 wxWidgets 時的建置問題。

    自有 ID:OTP-17407 輔助 ID:GH-4834

  • 已提交產生的 configure 指令碼。

    自有 ID:OTP-17420 輔助 ID:OTP-17398, GH-4821

Wx 2.0

已修正的錯誤和故障

  • 修正 Clang 編譯器產生的編譯器警告。

    自有 ID:OTP-17105 輔助 ID:PR-2872

改進和新功能

  • 應用程式已完全重寫,以便使用 wxWidgets 3 版作為其基礎。

    新增從 wxWidgets 專案產生的基本文件。

    自有 ID:OTP-16800

  • 實驗性 HiPE 應用程式已移除,以及其他應用程式中的所有相關功能。

    * 可能不相容 *

    自有 ID:OTP-16963

  • 新增對 wxWebView 的支援。

    自有 ID:OTP-17213 輔助 ID:PR-3027

  • 由於支援新的後端版本,因此導入了一些 API 不相容性。變更範例如下:
    已移除 wxWindowDC 預設建立器
    已移除 wxClientDC 預設建立器
    已移除 wxPaintDC 預設建立器
    wxWindow:setVirtualSizeHints() 在 wxWidgets 中已棄用並移除
    wxWindow:makeModal() 在 wxWidgets 中已棄用並移除
    wxToolBar:add/insertTool 沒有標籤在 wxWidgets 中已棄用並移除
    wxStyledTextCtrl 某些函式已將引數從布林值變更為整數
    wxSizerItem:new() 某些引數已變成選項
    已移除已棄用的 wxSizerItem:setWindow() 使用 assignWindow()
    已移除已棄用的 wxSizerItem:setSpacer() 使用 assignSpacer()
    已移除已棄用的 wxSizerItem:setSpacer() 使用 assignSpacer()
    已移除已棄用的 wxSizerItem:setSizer() 使用 assignSizer()
    wxMenu append/insert/prepend 已變更傳回值並遺失 IsCheckable 引數
    wxListCtrl:setItem/4 已變更傳回值
    wxImage:convertToGreyscale() 選項已變更
    wxGridSizer:wxGridSizer() 選項已變更
    wxGrid API 有許多變更
    wxGraphicsRenderer:createGradientBrush() 現在使用 GradientStops
    wxGraphicsRenderer:createPen() 已移除
    wxGraphicsRenderer:create
    GradientBrush() 現在使用 GradientStops
    wxGLCanvas API 不相容
    wxFlexGridSizer:wxFlexGridSizer() 選項已變更
    wxDisplay:new() 選項已變更
    wxCalendarDateAttr:new(ColText [,OptList]) 已移除
    wxBitmapButton:set/getBitmapSelected() 已移除

    * 可能不相容 *

    自有 ID:OTP-17219 輔助 ID:OTP-16800

Wx 1.9.3.1

已修正的錯誤和故障

  • 已提交產生的 configure 指令碼。

    自有 ID:OTP-17420 輔助 ID:OTP-17398, GH-4821

Wx 1.9.3

已修正的錯誤和故障

  • 修正了在 Mac 上的 wx 初始化問題,在較新的 MacOS 版本上,頂層選單並非總是能正常運作。這些選單在 wxWidgets-3.1.5 發布並在這些 MacOS 版本上使用之前,將無法正常運作。

    自有 ID:OTP-17187

Wx 1.9.2

修正錯誤與故障

Wx 1.9.1

修正錯誤與故障

  • 修正了在 64 位元 Windows 上的各種編譯器警告。

    自有 ID:OTP-15800

改進與新功能

  • 重構了已棄用和已移除函數的內部處理方式。

    自有 ID:OTP-16469

Wx 1.9.0.1

修正錯誤與故障

  • 已提交產生的 configure 指令碼。

    自有 ID:OTP-17420 輔助 ID:OTP-17398, GH-4821

Wx 1.9

改進與新功能

  • 新增了 wxWindow:isShownOnScreen/1wxMouseEvent:getWheelAxis 和 Mac 專用的選單列函數。修正了在較新 wxWidgets 版本中已變更的定義,這導致某些文字在運行時依賴於 wxWidgets 版本。

    自有 ID:OTP-16285

Wx 1.8.9

修正錯誤與故障

  • 修正了在分配記憶體時可能導致當機的驅動程式錯誤。

    自有 ID:OTP-15883 輔助 ID:PR-2261

Wx 1.8.8

修正錯誤與故障

  • 所有不正確(即所有)使用「can not」的地方,都已在原始碼註解、文件、範例等中更正為「cannot」。

    自有 ID:OTP-14282 輔助 ID:PR-1891

Wx 1.8.7

修正錯誤與故障

  • 改進了對 wxWidgets 3.1.3 的支援,該版本已變更 wxFONTWEIGTH,還新增了 wxGCDCwxDisplay 模組。

    修正了在 Mojave 上的當機問題,並更頻繁地檢查事件。

    自有 ID:OTP-15587

Wx 1.8.6

修正錯誤與故障

  • 修正了延遲刪除錯誤,該錯誤導致 wx 應用程式在 Mojave 上當機。

    自有 ID:OTP-15426 輔助 ID:ERL-755

Wx 1.8.5

修正錯誤與故障

  • 修正了在 Darwin 上的編譯警告。

    自有 ID:OTP-15230 輔助 ID:PR-1860

Wx 1.8.4

改進與新功能

  • 變更了實作,因此現在可以針對 wxWidgets-3.1.1 建置 wx。

    自有 ID:OTP-15027

Wx 1.8.3

修正錯誤與故障

  • 如果傳送空二進位制作為引數,wx 會在 otp 20.1 中當機。

    自有 ID:OTP-14688

Wx 1.8.2

修正錯誤與故障

改進與新功能

  • 一般 Unicode 改進。

    自有 ID:OTP-14462

Wx 1.8.1

修正錯誤與故障

  • 修正了可能由 wx:batch/1 引起的活鎖。

    自有 ID:OTP-14289

Wx 1.8

修正錯誤與故障

  • 允許字串引數為二進位制,如指定的 unicode:chardata()。

    自有 ID:OTP-13934 輔助 ID:ERL-270

改進與新功能

  • 新增 wxWindow:dragAcceptFiles/2 和 wxDropFilesEvent 以支援從檔案瀏覽器進行簡單的拖放。

    自有 ID:OTP-13933

Wx 1.7.1

修正錯誤與故障

  • 增加了 wx 線程的堆疊大小。Windows 上的預設堆疊大小為 1MB,如果使用者建立了許多巢狀對話方塊,則不夠用。

    自有 ID:OTP-13816

Wx 1.7

修正錯誤與故障

  • 修正了當同時呼叫回呼時,可能導致呼叫的函數被呼叫兩次或完全不被呼叫的錯誤。

    自有 ID:OTP-13491

改進與新功能

  • 將 #wxMouseState{} 中的 atom 'boolean' 欄位變更為 'boolean()'。

    將 wxListCtrl:hitTest 中的引數移至結果中。

    移除了 wxGauge 中已從 wxWidgets-3.1 中移除的空操作函數。

    * 可能不相容 *

    自有 ID:OTP-13553

Wx 1.6.1

修正錯誤與故障

Wx 1.6

改進與新功能

  • 新增 wxOverlay 並將 wxPostScripDC 設定為可選,以便更容易在 Windows 上建置。

    更正了一些函數規範。

    驅動程式實作已最佳化,現在會在事件傳送至 erlang 後呼叫命令。

    自有 ID:OTP-13160

Wx 1.5

改進與新功能

  • 擴展了 AUI 功能。

    自有 ID:OTP-12961

Wx 1.4

修正錯誤與故障

  • 已移除 gen_server 未公開的文件選項 generic_debug

    自有 ID:OTP-12183

  • 移除在模擬器停止期間 wx 可能當機的競爭條件。

    自有 ID:OTP-12734

改進與新功能

  • 如果找到 wxWidgets-3.0,則在 Windows 上將其用作預設後端。

    自有 ID:OTP-12632

  • 在某些事件記錄中新增了遺失的欄位。可能需要重新編譯使用者應用程式。

    自有 ID:OTP-12660

Wx 1.3.3

修正錯誤與故障

  • 修正了 wx 應用程式停止期間與計時相關的當機問題。

    自有 ID:OTP-12374

Wx 1.3.2

修正錯誤與故障

  • 修正了 graphicsContext 範例中的一個小錯字。

    自有 ID:OTP-12259

改進與新功能

  • 在建置時將 autoconf 輔助程式分發給應用程式,而不是在儲存庫中提交多個相同的副本。

    自有 ID:OTP-12348

Wx 1.3.1

修正錯誤與故障

  • 實作 --enable-sanitizers[=sanitizers]。類似於使用 Valgrind 進行偵錯,啟用 -fsanitize= 開關以在執行時捕獲錯誤非常有用。

    自有 ID:OTP-12153

Wx 1.3

修正錯誤與故障

  • 修正 wxPaintDC 物件延遲銷毀的問題,此問題可能導致模式對話方塊進入無限迴圈。

    修正 wxSL_LABELS 在 wxWidgets-2.8 和 wxWidgets-3.0 版本之間的相容性問題。

    專屬 ID:OTP-11985

改進與新功能

  • 新增遺失的類別 wxPopup[Transient]Window、wxActivateEvent 和 wxTextCtrl:cahngeValue/2 函式。

    專屬 ID:OTP-11986

Wx 1.2

修正錯誤與故障

  • 重構 C++ 程式碼,修正了 Linux 上的崩潰和死鎖問題。

    專屬 ID:OTP-11586

  • 將一些從列表中刪除最後一個元素的本地實作,替換為 lists:droplast/1。請注意,這需要至少 stdlib-2.0,這是 OTP 17.0 中提供的 stdlib 版本。(感謝 Hans Svensson)

    專屬 ID:OTP-11678

  • 重新設計了內部事件處理,以避免在銷毀物件時發生崩潰。感謝 Tom 的錯誤報告。

    專屬 ID:OTP-11699

  • 已修正以下應用程式的應用程式升級 (appup) 檔案:

    asn1、common_test、compiler、crypto、debugger、dialyzer、edoc、eldap、erl_docgen、et、eunit、gs、hipe、inets、observer、odbc、os_mon、otp_mibs、parsetools、percept、public_key、reltool、runtime_tools、ssh、syntax_tools、test_server、tools、typer、webtool、wx、xmerl

    在 test_server 中新增了一個新的測試工具,用於測試 appup 檔案。現在 OTP 中的大多數應用程式都使用此工具。

    (感謝 Tobias Schlager)

    專屬 ID:OTP-11744

Wx 1.1.2

修正錯誤與故障

  • 修正了關閉視窗時導致除錯器崩潰的問題。修正了在 Mac 上的靜態連結問題。

    專屬 ID:OTP-11444

Wx 1.1.1

修正錯誤與故障

  • 在 Mac 上使用 wxWidgets-3.0 時,wx 初始化會掛起。修正了在 wxWidgets-3.0 上使用 wxListBox 時發生的崩潰問題(感謝 Sergei Golovan)。修正了文件連結。修正了事件回呼清理問題。

    專屬 ID:OTP-11393

  • 改善文件(感謝 Boris Mühmer)

    專屬 ID:OTP-11505

改進與新功能

  • 修正靜默 make 規則(感謝 Anthony Ramine)

    專屬 ID:OTP-11515

Wx 1.0

修正錯誤與故障

  • 在 wx:new/1 中新增 {silent_start, boolean()} 選項,以便在 wx 啟動期間能夠抑制錯誤訊息。(感謝 Håkan Mattsson)

    專屬 ID:OTP-10585

  • 修正 wxTreeCtrl:getBoundingRect/2 和 wxTreeCtrl:hitTest/1。wxTreeCtrl:hitTest 現在會傳回一個元組,雖然與先前的版本不相容,但這是必須的。

    專屬 ID:OTP-10743

改進與新功能

  • wx 應用程式現在可以使用 wxWidgets-2.9 的不穩定開發分支進行編譯和使用。某些函式目前在 wxWidgets-2.9 中不可用,它們的 Erlang 對應函式標記為已棄用。如果連結到 wxWidgets-2.9 函式庫時呼叫這些函式,將會產生錯誤。這表示 wx 現在可以在 64 位元的 MacOsX 上建置,但請記住,wxWidgets-2.9 仍然是開發分支,在穩定之前還需要(大量)工作。

    專屬 ID:OTP-10407 輔助 ID:kunagi-262 [173]

Wx 0.99.2

改進與新功能

  • 修正 wxDC 和 wxGraphicsContext API 中的錯誤。

    新增 wxTaskBarIcon。

    新增 wxStyledTextControl:setEdgeMode/2。

    為所有函式和記錄新增類型和規格。

    專屬 ID:OTP-9947

Wx 0.99.1

修正錯誤與故障

  • 修正了驅動程式中的死鎖問題,如果回呼導致另一個回呼被調用,就可能發生死鎖。

    專屬 ID:OTP-9725

改進與新功能

  • 實作 wxSystemOptions。

    從 libGL.so.1 而不是 libGL.so 載入 Opengl,以解決 Linux 問題。

    專屬 ID:OTP-9702

Wx 0.99

修正錯誤與故障

  • wx:修正已過時的 guard 警告 (list/1)(感謝 Tuncer Ayaz)

    專屬 ID:OTP-9513

  • 已修正 XML 檔案。

    專屬 ID:OTP-9550 輔助 ID:OTP-9541

改進與新功能

  • 支援 wxListCtrl 中的虛擬表格。

    專屬 ID:OTP-9415

Wx 0.98.10

修正錯誤與故障

  • 修正了 Mac 和 Solaris 上的 wx app 檔案。感謝 Jachym Holecek 和 Joe Williams。

    專屬 ID:OTP-9324

Wx 0.98.9

修正錯誤與故障

  • 如果無法啟動圖形,例如 DISPLAY 不可用,wx 會崩潰。

    wx 可能會在啟動期間崩潰,感謝 Boris Muhmer 的卓越測試。

    專屬 ID:OTP-9080

  • MacOS X 上的 Wx 會在 stderr 上產生關於某些 Cocoa 函式不是從「主執行緒」呼叫的抱怨。現在已修正此問題。

    專屬 ID:OTP-9081

Wx 0.98.8

改進與新功能

  • 新增上一個版本中遺失的 wxSystemSettings,儘管先前的評論中有提到。

    修正正常停止 Erlang 時的外部迴圈。

    將 OpenGL 分隔到自己的動態載入函式庫,以便其他圖形函式庫可以重複使用 gl 模組,並且在不使用時不會浪費記憶體。

    專屬 ID:OTP-8951

Wx 0.98.7

修正錯誤與故障

  • 修正了回呼處理中的崩潰(區段錯誤)。

    專屬 ID:OTP-8766

改進與新功能

  • 新增 wxSystemSettings 模組。

    新增 wxTreeCtrl:editLabel/2。

    專屬 ID:OTP-8767

Wx 0.98.6

改進與新功能

  • 針對具有全域註冊名稱但不是原子名稱的處理程序呼叫 sys:get_status() 會導致崩潰。已修正此問題。(感謝 Steve Vinoski。)

    專屬 ID:OTP-8656

Wx 0.98.5

修正錯誤與故障

  • 修正了錯誤產生的 wxFileDialog:getPaths/1。由 Jason/hornja 回報。

    專屬 ID:OTP-8330

  • 修正了一個記憶體參考錯誤,該錯誤會在執行多個 wx 應用程式時導致無法解釋的 {badarg, Int} 退出。

    專屬 ID:OTP-8461

改進與新功能

  • 新增 wxListCtrl:getEditCtrl/1(在 Mac 上不可用)。

    專屬 ID:OTP-8408

  • 由 tidier 建議的清理和類型與規格的現代化。

    專屬 ID:OTP-8455

  • 將 wxTreeItem 的表示法變更為整數。這可以節省記憶體,因為驅動程式不需要為每個樹狀項目保留物件參考。

    在 wxTreeCtrl 中新增 getFirstChild 和 getNextChild。

    專屬 ID:OTP-8462

Wx 0.98.4

改進與新功能

  • 新增來自 Mazen 的 wx_object 改進。

    修正了 Mazen 回報的 pid 問題。

    新增了 Amit Murthy 回報的 wxLogNull 類別。

    各種設定修正。

    專屬 ID:OTP-8243 輔助 ID:seq11418

  • 文件現在使用大多數平台上存在的開放原始碼工具(xsltproc 和 fop)建置。一個明顯的變更是不再有框架。

    專屬 ID:OTP-8250

  • wx 現在可以使用 wxWidgets 2.8.4 或更新的 2.8 版本建置,感謝 Nico Kruber。

    專屬 ID:OTP-8292

Wx 0.98.3

修正錯誤與故障

  • 新增 Paul Hampson 提供的 wxListCtrl 排序和建置修正。謝謝。

    專屬 ID:OTP-8126

改進與新功能

  • 實作 wxHtmlWindow 類別。

    現在會捕獲所有來自回呼的例外狀況,並將其寫入記錄檔。

    'wx.hrl' 中有些定義是錯誤的。

    如果例如在 fun 中設定中斷點,wx:batch/1 和相關函式可能會永遠掛起。這會導致所有 wx 應用程式掛起。

    新增遺失的 wxAuiPaneInfo 建構函式和解構函式。

    新增 wxAuiNotebookEvent 和 wxAuiManagerEvent。

    呼叫不支援的 wxWidgets 函式會掛起而不是崩潰。

    將 OpenGL 更新到 3.1 版,並新增了一些遺失的 glu 函式。

    修正了繼承錯誤類別的 wxRadioBox,感謝 Atilla Erdodi。

    專屬 ID:OTP-8083

  • 在應用程式結束後,移除了一些自動垃圾收集,使用者將收到警告,以便他可以更正程式碼。

    專屬 ID:OTP-8138

Wx 0.98.2

改進與新功能

  • Olle Mattson 製作了一個大型示範,請參閱 examples/demo/,觸發了以下錯誤和新功能

    新的書籤控制項。

    新增 wxToolbar:addTool/6。

    將使用空的二進位檔案來表示 NULL(如果適用)。

    專屬 ID:OTP-7943

  • 套用來自 Nico Kruber 的修補程式,修正了在某些 wxwidgets 安裝上建置的問題。

    開放原始碼

Wx 0.98.1

改進與新功能

  • 在 wxXmlResource 中新增 xrcctrl/3,並新增了一個資源範例。

    新增了數種事件類型和事件記錄,並修正了一些與事件相關的錯誤。

    事件回呼現在可以使用 wxEvtHandler:connect/2

    錯誤處理和除錯輔助功能已獲得改善。

    新增了 wxSplitterWindow 和 wxGauge:pulse,以及 wx.hrl 中一些遺失的巨集。

    感謝 Steve Davis 提供回饋和錯誤報告。

    Own Id: OTP-7875

Wx 0.98

改進和新功能

  • wxErlang 的第一個 beta 版本發佈。

    Own Id: OTP-7859