diff options
-rw-r--r-- | rbutil/credits.h | 2 | ||||
-rw-r--r-- | rbutil/rbutil-rc.rc | 8 | ||||
-rw-r--r-- | rbutil/rbutil.h | 3 | ||||
-rw-r--r-- | rbutil/rbutil.ini | 1 | ||||
-rw-r--r-- | rbutil/rbutilApp.cpp | 3 | ||||
-rw-r--r-- | rbutil/rbutilCtrls.cpp | 6 | ||||
-rw-r--r-- | rbutil/rbutilFrm.cpp | 85 | ||||
-rw-r--r-- | rbutil/rbutilFrm.h | 12 |
8 files changed, 95 insertions, 25 deletions
diff --git a/rbutil/credits.h b/rbutil/credits.h index 1d6542bfbf..b3ac0b9f0f 100644 --- a/rbutil/credits.h +++ b/rbutil/credits.h | |||
@@ -22,7 +22,7 @@ | |||
22 | #define CREDITS_H_INCLUDED | 22 | #define CREDITS_H_INCLUDED |
23 | 23 | ||
24 | #define RBUTIL_FULLNAME "The Rockbox Utility" | 24 | #define RBUTIL_FULLNAME "The Rockbox Utility" |
25 | #define RBUTIL_VERSION "Version 0.3.2.1" | 25 | #define RBUTIL_VERSION "Version 0.3.2.2" |
26 | 26 | ||
27 | static const wxString rbutil_developers[] = { | 27 | static const wxString rbutil_developers[] = { |
28 | wxT("Christi Alice Scarborough"), | 28 | wxT("Christi Alice Scarborough"), |
diff --git a/rbutil/rbutil-rc.rc b/rbutil/rbutil-rc.rc index d76ef0f045..2dfe024f7f 100644 --- a/rbutil/rbutil-rc.rc +++ b/rbutil/rbutil-rc.rc | |||
@@ -1,8 +1,8 @@ | |||
1 | #define RBUTIL 1 | 1 | #define RBUTIL 1 |
2 | #include <wx/msw/wx.rc> | 2 | #include <wx/msw/wx.rc> |
3 | RBUTIL VERSIONINFO | 3 | RBUTIL VERSIONINFO |
4 | FILEVERSION 0,3,2,1 | 4 | FILEVERSION 0,3,2,2 |
5 | PRODUCTVERSION 0,3,2,1 | 5 | PRODUCTVERSION 0,3,2,2 |
6 | FILEOS 0x00000004 | 6 | FILEOS 0x00000004 |
7 | FILETYPE 0x00000001 | 7 | FILETYPE 0x00000001 |
8 | BEGIN | 8 | BEGIN |
@@ -10,8 +10,8 @@ BEGIN | |||
10 | BEGIN | 10 | BEGIN |
11 | BLOCK "FFFF0000" | 11 | BLOCK "FFFF0000" |
12 | BEGIN | 12 | BEGIN |
13 | VALUE "FileVersion", "0.3.2.1\0" | 13 | VALUE "FileVersion", "0.3.2.2\0" |
14 | VALUE "ProductVersion", "0.3.2.1\0" | 14 | VALUE "ProductVersion", "0.3.2.2\0" |
15 | VALUE "CompanyName", "Rockbox Team\0" | 15 | VALUE "CompanyName", "Rockbox Team\0" |
16 | VALUE "FileDescription", "Rockbox Utility\0" | 16 | VALUE "FileDescription", "Rockbox Utility\0" |
17 | VALUE "InternalName", "rbutil\0" | 17 | VALUE "InternalName", "rbutil\0" |
diff --git a/rbutil/rbutil.h b/rbutil/rbutil.h index 74e626407a..47a2803981 100644 --- a/rbutil/rbutil.h +++ b/rbutil/rbutil.h | |||
@@ -57,6 +57,8 @@ | |||
57 | #include <wx/regex.h> | 57 | #include <wx/regex.h> |
58 | #include <wx/tokenzr.h> | 58 | #include <wx/tokenzr.h> |
59 | #include <wx/notebook.h> | 59 | #include <wx/notebook.h> |
60 | #include <wx/html/htmlwin.h> | ||
61 | #include <wx/hyperlink.h> | ||
60 | 62 | ||
61 | #ifdef __WXMSW__ | 63 | #ifdef __WXMSW__ |
62 | #define PATH_SEP "\\" | 64 | #define PATH_SEP "\\" |
@@ -104,6 +106,7 @@ public: | |||
104 | wxString prog_name; | 106 | wxString prog_name; |
105 | wxString bootloader_url; | 107 | wxString bootloader_url; |
106 | wxString themes_url; | 108 | wxString themes_url; |
109 | wxString manual_url; | ||
107 | 110 | ||
108 | // User configuration data. | 111 | // User configuration data. |
109 | wxString curplat; | 112 | wxString curplat; |
diff --git a/rbutil/rbutil.ini b/rbutil/rbutil.ini index 42b74dea49..26988c3c6f 100644 --- a/rbutil/rbutil.ini +++ b/rbutil/rbutil.ini | |||
@@ -8,6 +8,7 @@ last_release=2.5 | |||
8 | prog_name=rockbox | 8 | prog_name=rockbox |
9 | bootloader_url=http://download.rockbox.org/bootloader | 9 | bootloader_url=http://download.rockbox.org/bootloader |
10 | themes_url=http://www.rockbox-themes.org/ | 10 | themes_url=http://www.rockbox-themes.org/ |
11 | manual_url=http://download.rockbox.org/manual/rockbox- | ||
11 | 12 | ||
12 | [platforms] | 13 | [platforms] |
13 | platform1=player | 14 | platform1=player |
diff --git a/rbutil/rbutilApp.cpp b/rbutil/rbutilApp.cpp index 2005e6c6f0..15b012d041 100644 --- a/rbutil/rbutilApp.cpp +++ b/rbutil/rbutilApp.cpp | |||
@@ -212,6 +212,9 @@ bool rbutilFrmApp::ReadGlobalConfig(rbutilFrm* myFrame) | |||
212 | gv->GlobalConfig->Read(wxT("themes_url"), &tmpstr); | 212 | gv->GlobalConfig->Read(wxT("themes_url"), &tmpstr); |
213 | gv->themes_url = tmpstr; | 213 | gv->themes_url = tmpstr; |
214 | 214 | ||
215 | gv->GlobalConfig->Read(wxT("manual_url"), &tmpstr); | ||
216 | gv->manual_url = tmpstr; | ||
217 | |||
215 | #ifdef __WXMSW__ | 218 | #ifdef __WXMSW__ |
216 | gv->curdestdir = wxT("D:\\"); | 219 | gv->curdestdir = wxT("D:\\"); |
217 | #else | 220 | #else |
diff --git a/rbutil/rbutilCtrls.cpp b/rbutil/rbutilCtrls.cpp index fe89ca84f4..6556466d68 100644 --- a/rbutil/rbutilCtrls.cpp +++ b/rbutil/rbutilCtrls.cpp | |||
@@ -402,7 +402,11 @@ void DeviceSelectorCtrl::setDefault() | |||
402 | void DeviceSelectorCtrl::OnComboBox(wxCommandEvent& event) | 402 | void DeviceSelectorCtrl::OnComboBox(wxCommandEvent& event) |
403 | { | 403 | { |
404 | int index = gv->plat_name.Index(m_deviceCbx->GetValue()); | 404 | int index = gv->plat_name.Index(m_deviceCbx->GetValue()); |
405 | if(index == -1) m_currentDevice = wxT(""); | 405 | if(index == -1) |
406 | { | ||
407 | m_currentDevice = wxT(""); | ||
408 | return; | ||
409 | } | ||
406 | 410 | ||
407 | gv->curplat = gv->plat_id[index]; | 411 | gv->curplat = gv->plat_id[index]; |
408 | } | 412 | } |
diff --git a/rbutil/rbutilFrm.cpp b/rbutil/rbutilFrm.cpp index d46352c307..5db93b3996 100644 --- a/rbutil/rbutilFrm.cpp +++ b/rbutil/rbutilFrm.cpp | |||
@@ -51,6 +51,9 @@ BEGIN_EVENT_TABLE(rbutilFrm,wxFrame) | |||
51 | EVT_MENU(ID_FILE_ABOUT, rbutilFrm::OnFileAbout) | 51 | EVT_MENU(ID_FILE_ABOUT, rbutilFrm::OnFileAbout) |
52 | EVT_MENU(ID_FILE_WIPECACHE, rbutilFrm::OnFileWipeCache) | 52 | EVT_MENU(ID_FILE_WIPECACHE, rbutilFrm::OnFileWipeCache) |
53 | EVT_MENU(ID_PORTABLE_INSTALL, rbutilFrm::OnPortableInstall) | 53 | EVT_MENU(ID_PORTABLE_INSTALL, rbutilFrm::OnPortableInstall) |
54 | |||
55 | EVT_UPDATE_UI (ID_MANUAL, rbutilFrm::OnManualUpdate) | ||
56 | |||
54 | END_EVENT_TABLE() | 57 | END_EVENT_TABLE() |
55 | 58 | ||
56 | rbutilFrm::rbutilFrm( wxWindow *parent, wxWindowID id, const wxString &title, | 59 | rbutilFrm::rbutilFrm( wxWindow *parent, wxWindowID id, const wxString &title, |
@@ -78,24 +81,26 @@ void rbutilFrm::CreateGUIControls(void) | |||
78 | mainPanel->SetSizer(WxBoxSizer0); | 81 | mainPanel->SetSizer(WxBoxSizer0); |
79 | mainPanel->SetAutoLayout(TRUE); | 82 | mainPanel->SetAutoLayout(TRUE); |
80 | 83 | ||
81 | wxBitmap rockboxbmp(rblogo_xpm); | 84 | wxBitmap rockboxbmp(rblogo_xpm); |
82 | ImageCtrl* rockboxbmpCtrl = new ImageCtrl(mainPanel,wxID_ANY); | 85 | ImageCtrl* rockboxbmpCtrl = new ImageCtrl(mainPanel,wxID_ANY); |
83 | rockboxbmpCtrl->SetBitmap(rockboxbmp); | 86 | rockboxbmpCtrl->SetBitmap(rockboxbmp); |
84 | WxBoxSizer0->Add(rockboxbmpCtrl,0,wxALIGN_CENTER_HORIZONTAL | wxALL,5); | 87 | WxBoxSizer0->Add(rockboxbmpCtrl,0,wxALIGN_CENTER_HORIZONTAL | wxALL,5); |
85 | 88 | ||
86 | myDeviceSelector = new DeviceSelectorCtrl(mainPanel,wxID_ANY); | 89 | myDeviceSelector = new DeviceSelectorCtrl(mainPanel,wxID_ANY); |
87 | myDeviceSelector->setDefault(); | 90 | myDeviceSelector->setDefault(); |
88 | WxBoxSizer0->Add(myDeviceSelector,0,wxALL,5); | 91 | WxBoxSizer0->Add(myDeviceSelector,0,wxALL,5); |
89 | 92 | ||
90 | wxNotebook* tabwindow = new wxNotebook(mainPanel,wxID_ANY); | 93 | wxNotebook* tabwindow = new wxNotebook(mainPanel,wxID_ANY); |
91 | WxBoxSizer0->Add(tabwindow,0,wxALL,5); | 94 | WxBoxSizer0->Add(tabwindow,0,wxALL,5); |
92 | 95 | ||
93 | wxPanel* installpage = new wxPanel(tabwindow,wxID_ANY); | 96 | wxPanel* installpage = new wxPanel(tabwindow,wxID_ANY); |
94 | wxPanel* themepage = new wxPanel(tabwindow,wxID_ANY); | 97 | wxPanel* themepage = new wxPanel(tabwindow,wxID_ANY); |
95 | wxPanel* uninstallpage = new wxPanel(tabwindow,wxID_ANY); | 98 | wxPanel* uninstallpage = new wxPanel(tabwindow,wxID_ANY); |
96 | tabwindow->AddPage(installpage,wxT("Installation"),true); | 99 | wxPanel* manualpage = new wxPanel(tabwindow,wxID_ANY); |
97 | tabwindow->AddPage(themepage,wxT("Themes")); | 100 | tabwindow->AddPage(installpage,wxT("Installation"),true); |
98 | tabwindow->AddPage(uninstallpage,wxT("Uninstallation")); | 101 | tabwindow->AddPage(themepage,wxT("Themes")); |
102 | tabwindow->AddPage(uninstallpage,wxT("Uninstallation")); | ||
103 | tabwindow->AddPage(manualpage,wxT("Manual")); | ||
99 | 104 | ||
100 | /********************* | 105 | /********************* |
101 | Install Page | 106 | Install Page |
@@ -114,16 +119,16 @@ void rbutilFrm::CreateGUIControls(void) | |||
114 | wxFlexGridSizer* WxFlexGridSizer1 = new wxFlexGridSizer(2,2,0,0); | 119 | wxFlexGridSizer* WxFlexGridSizer1 = new wxFlexGridSizer(2,2,0,0); |
115 | WxStaticBoxSizer3->Add(WxFlexGridSizer1,0,wxGROW | wxALL,0); | 120 | WxStaticBoxSizer3->Add(WxFlexGridSizer1,0,wxGROW | wxALL,0); |
116 | 121 | ||
117 | wxBitmap BootloaderInstallButton (tools2_3d_xpm); | 122 | wxBitmap BootloaderInstallButton (tools2_3d_xpm); |
118 | WxBitmapButton4 = new wxBitmapButton(installpage, ID_BOOTLOADER_BTN, | 123 | WxBitmapButton4 = new wxBitmapButton(installpage, ID_BOOTLOADER_BTN, |
119 | BootloaderInstallButton, wxPoint(0,0), wxSize(64,54), | 124 | BootloaderInstallButton, wxPoint(0,0), wxSize(64,54), |
120 | wxRAISED_BORDER | wxBU_AUTODRAW); | 125 | wxRAISED_BORDER | wxBU_AUTODRAW); |
121 | WxBitmapButton4->SetToolTip(wxT("Instructions for installing the " | 126 | WxBitmapButton4->SetToolTip(wxT("Instructions for installing the " |
122 | "Rockbox bootloader on your audio device")); | 127 | "Rockbox bootloader on your audio device")); |
123 | WxFlexGridSizer1->Add(WxBitmapButton4, 0, | 128 | WxFlexGridSizer1->Add(WxBitmapButton4, 0, |
124 | wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5); | 129 | wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5); |
125 | 130 | ||
126 | wxStaticText* WxStaticText5 = new wxStaticText(installpage, wxID_ANY, | 131 | wxStaticText* WxStaticText5 = new wxStaticText(installpage, wxID_ANY, |
127 | wxT("Bootloader installation instructions\n\n" | 132 | wxT("Bootloader installation instructions\n\n" |
128 | "Before Rockbox can be installed on your audio player, you " | 133 | "Before Rockbox can be installed on your audio player, you " |
129 | "may have to\ninstall a bootloader. This can not currently " | 134 | "may have to\ninstall a bootloader. This can not currently " |
@@ -239,6 +244,26 @@ void rbutilFrm::CreateGUIControls(void) | |||
239 | WxFlexGridSizer3->Add(WxStaticText4,0, | 244 | WxFlexGridSizer3->Add(WxStaticText4,0, |
240 | wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5); | 245 | wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5); |
241 | 246 | ||
247 | |||
248 | /***************** | ||
249 | * Manual Page | ||
250 | ******************/ | ||
251 | |||
252 | wxBoxSizer* WxBoxSizer5 = new wxBoxSizer(wxVERTICAL); | ||
253 | manualpage->SetSizer(WxBoxSizer5); | ||
254 | manualpage->SetAutoLayout(TRUE); | ||
255 | |||
256 | manuallink = new wxHyperlinkCtrl(manualpage,wxID_ANY,wxT("Rockbox PDF Manual"),wxT("http://www.rockbox.org")); | ||
257 | WxBoxSizer5->Add(manuallink,1,wxGROW | wxALL, 5); | ||
258 | |||
259 | manual =new wxHtmlWindow(manualpage,ID_MANUAL); | ||
260 | WxBoxSizer5->Add(manual,10,wxGROW | wxALL, 5); | ||
261 | |||
262 | |||
263 | /********** | ||
264 | ** rest of the controls | ||
265 | **********/ | ||
266 | |||
242 | WxMenuBar1 = new wxMenuBar(); | 267 | WxMenuBar1 = new wxMenuBar(); |
243 | wxMenu *ID_FILE_MENU_Mnu_Obj = new wxMenu(0); | 268 | wxMenu *ID_FILE_MENU_Mnu_Obj = new wxMenu(0); |
244 | WxMenuBar1->Append(ID_FILE_MENU_Mnu_Obj, wxT("&File")); | 269 | WxMenuBar1->Append(ID_FILE_MENU_Mnu_Obj, wxT("&File")); |
@@ -274,6 +299,32 @@ void rbutilFrm::CreateGUIControls(void) | |||
274 | wxLogVerbose(wxT("=== end rbutilFrm::CreateGUIControls")); | 299 | wxLogVerbose(wxT("=== end rbutilFrm::CreateGUIControls")); |
275 | } | 300 | } |
276 | 301 | ||
302 | |||
303 | void rbutilFrm::OnManualUpdate(wxUpdateUIEvent& event) | ||
304 | { | ||
305 | wxString tmp = gv->curplat; | ||
306 | |||
307 | if(tmp == wxT("h120")) tmp = wxT("h100"); //h120 has the h100 manual | ||
308 | |||
309 | if( tmp == curManualDevice) | ||
310 | return; | ||
311 | |||
312 | curManualDevice = tmp; | ||
313 | |||
314 | // construct link to pdf | ||
315 | wxString pdflink; | ||
316 | pdflink.Printf(wxT("%s%s.pdf"),gv->manual_url.c_str(),curManualDevice.c_str()); | ||
317 | manuallink->SetURL(pdflink); | ||
318 | |||
319 | // construct link to html | ||
320 | wxString htmllink; | ||
321 | htmllink.Printf(wxT("%s%s/rockbox-build.html"),gv->manual_url.c_str(),curManualDevice.c_str()); | ||
322 | manual->LoadPage(htmllink); | ||
323 | |||
324 | |||
325 | } | ||
326 | |||
327 | |||
277 | void rbutilFrm::rbutilFrmClose(wxCloseEvent& event) | 328 | void rbutilFrm::rbutilFrmClose(wxCloseEvent& event) |
278 | { | 329 | { |
279 | wxLogVerbose(wxT("=== begin rbutilFrm::rbutilFrmClose(event)")); | 330 | wxLogVerbose(wxT("=== begin rbutilFrm::rbutilFrmClose(event)")); |
diff --git a/rbutil/rbutilFrm.h b/rbutil/rbutilFrm.h index bf4205be10..ed7db30a20 100644 --- a/rbutil/rbutilFrm.h +++ b/rbutil/rbutilFrm.h | |||
@@ -57,7 +57,11 @@ public: | |||
57 | virtual ~rbutilFrm(); | 57 | virtual ~rbutilFrm(); |
58 | public: | 58 | public: |
59 | DeviceSelectorCtrl* myDeviceSelector; | 59 | DeviceSelectorCtrl* myDeviceSelector; |
60 | wxMenuBar *WxMenuBar1; | 60 | wxHyperlinkCtrl* manuallink; |
61 | wxHtmlWindow* manual; | ||
62 | wxString curManualDevice; | ||
63 | |||
64 | wxMenuBar *WxMenuBar1; | ||
61 | wxStaticText *WxStaticText3; | 65 | wxStaticText *WxStaticText3; |
62 | wxBitmapButton *WxBitmapButton2; | 66 | wxBitmapButton *WxBitmapButton2; |
63 | wxStaticText *WxStaticText2; | 67 | wxStaticText *WxStaticText2; |
@@ -92,6 +96,8 @@ public: | |||
92 | ID_BOOTLOADER_BTN = 1129, | 96 | ID_BOOTLOADER_BTN = 1129, |
93 | ID_WXPANEL1 = 1064, | 97 | ID_WXPANEL1 = 1064, |
94 | 98 | ||
99 | ID_MANUAL = 1065, | ||
100 | |||
95 | ID_DUMMY_VALUE_ | 101 | ID_DUMMY_VALUE_ |
96 | }; //End of Enum | 102 | }; //End of Enum |
97 | public: | 103 | public: |
@@ -108,7 +114,9 @@ public: | |||
108 | void OnBootloaderBtn(wxCommandEvent& event); | 114 | void OnBootloaderBtn(wxCommandEvent& event); |
109 | void OnPortableInstall(wxCommandEvent& event); | 115 | void OnPortableInstall(wxCommandEvent& event); |
110 | void OnBootloaderRemoveBtn(wxCommandEvent& event); | 116 | void OnBootloaderRemoveBtn(wxCommandEvent& event); |
111 | 117 | ||
118 | void OnManualUpdate(wxUpdateUIEvent& event); | ||
119 | |||
112 | }; | 120 | }; |
113 | 121 | ||
114 | #endif | 122 | #endif |