static int write_block (void *id, void *data, int32_t length) { dp(30, "id=%p data=%p length=%d\n", id, data, length); soundfile_t *wid = id; uint32_t bcount; if (wid->error) return FALSE; if (wid && wid->file && data && length) { if (!DoWriteFile (wid->file, data, length, &bcount) || bcount != length) { fclose (wid->file); wid->file = NULL; wid->error = 1; return FALSE; } else { wid->bytes_written += length; if (!wid->first_block_size) wid->first_block_size = bcount; } } return TRUE; }
void frmHbaConfig::WriteFile(pgConn *conn) { wxString str; size_t i; for (i = 0 ; i < lines.GetCount() - 1 ; i++) str.Append(lines.Item(i).GetText() + wxT("\n")); if (DoWriteFile(str, conn)) { changed = false; fileMenu->Enable(MNU_SAVE, false); editMenu->Enable(MNU_UNDO, false); toolBar->EnableTool(MNU_SAVE, false); toolBar->EnableTool(MNU_UNDO, false); // make intermediate change current for (i = 0 ; i < lines.GetCount() ; i++) lines.Item(i).Init(lines.Item(i).GetText()); } }
BOOL DoSaveFile(HWND hwnd) { TCHAR szFileName[MAX_PATH] = _T(""); static TCHAR Filter[] = _T("Rich Text Document (*.rtf)\0*.rtf\0") \ _T("Text Document (*.txt)\0*.txt\0"); ofn.lpstrFilter = Filter; ofn.lpstrFile = szFileName; ofn.Flags = OFN_EXPLORER | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT; if (GetSaveFileName(&ofn)) { if (DoWriteFile(szFileName)) return TRUE; } if (CommDlgExtendedError() != CDERR_GENERALCODES) MessageBox(NULL, _T("Save to file failed"), NULL, 0); return FALSE; }
void frmPgpassConfig::WriteFile(pgConn *conn) { wxString str; size_t i; for (i = 0 ; i < lines.GetCount() - 1 ; i++) { // Before writing it into the file we need to escape "\" and ":" pgPassConfigLine line = lines.Item(i); line.hostname.Replace(wxT("\\"), wxT("\\\\")); line.hostname.Replace(wxT(":") , wxT("\\:")); line.port.Replace(wxT("\\"), wxT("\\\\")); line.port.Replace(wxT(":") , wxT("\\:")); line.database.Replace(wxT("\\"), wxT("\\\\")); line.database.Replace(wxT(":") , wxT("\\:")); line.username.Replace(wxT("\\"), wxT("\\\\")); line.username.Replace(wxT(":") , wxT("\\:")); line.password.Replace(wxT("\\"), wxT("\\\\")); line.password.Replace(wxT(":") , wxT("\\:")); wxString strLine = line.hostname + wxT(":") + line.port + wxT(":") + line.database + wxT(":") + line.username + wxT(":") + line.password + wxT("\n"); str.Append(strLine); } if (DoWriteFile(str, NULL)) { changed = false; fileMenu->Enable(MNU_SAVE, false); editMenu->Enable(MNU_UNDO, false); toolBar->EnableTool(MNU_SAVE, false); toolBar->EnableTool(MNU_UNDO, false); // make intermediate change current for (i = 0 ; i < lines.GetCount() ; i++) lines.Item(i).Init(lines.Item(i).GetText()); } }
void frmMainConfig::WriteFile(pgConn *conn) { size_t i; wxString str; for (i = 0 ; i < lines.GetCount() ; i++) str.Append(lines.Item(i).GetNewText() + wxT("\n")); for (i = 0 ; i < (size_t)cfgList->GetItemCount() ; i++) { pgSettingItem *item = options[cfgList->GetText(i)]; if (item && item->newLine && item->newLine->item && !item->orgLine) str.Append(item->newLine->GetNewText() + wxT("\n")); } if (DoWriteFile(str, conn)) { changed = false; fileMenu->Enable(MNU_SAVE, false); editMenu->Enable(MNU_UNDO, false); toolBar->EnableTool(MNU_SAVE, false); toolBar->EnableTool(MNU_UNDO, false); size_t i; for (i = 0 ; i < (size_t)cfgList->GetItemCount() ; i++) { pgSettingItem *item = options[cfgList->GetText(i)]; if (item && item->newLine) { if (!item->orgLine) { item->orgLine = new pgConfigOrgLine(item->newLine); lines.Add(item->orgLine); item->orgLine->item = item; } else { item->orgLine->comment = item->newLine->comment; item->orgLine->isComment = item->newLine->isComment; item->orgLine->value = item->newLine->value; item->orgLine->text = item->orgLine->GetNewText(); } } } for (i = 0 ; i < lines.GetCount() ; i++) { pgConfigOrgLine &line = lines.Item(i); if (line.item && line.item->newLine) { line.text = line.GetNewText(); delete line.item->newLine; line.item->newLine = 0; } } } }