Example #1
0
void PopulateList( HTREEITEM parent, HWND hwnd, HWND tree )
{
    TV_INSERTSTRUCT tvi;
    char title[MAX_PATH];
    char classname[MAX_PATH];
    char fullname[MAX_PATH];
    HWND next;
    HTREEITEM current;

    GetWindowText( hwnd, title, MAX_PATH );
    GetClassName( hwnd, classname, MAX_PATH );

    sprintf( fullname, "%s - {%s}", title, classname );

    tvi.hParent = parent;
    tvi.hInsertAfter = TVI_SORT;
    tvi.item.mask = TVIF_TEXT | TVIF_PARAM;
    tvi.item.pszText = fullname;
    tvi.item.lParam = (LPARAM)hwnd;

    current = (HTREEITEM)SendMessage( tree, TVM_INSERTITEM, 0, (LPARAM)&tvi );

    next = GetWindow( hwnd, GW_CHILD );
    if( next )
    {
        PopulateList( current, next, tree );
    }
    next = GetWindow( hwnd, GW_HWNDNEXT );
    if( next )
    {
        PopulateList( parent, next, tree );
    }
    return;
}
void EditChainsDialog::OnInsert(wxCommandEvent & WXUNUSED(event))
{
   long item = mList->GetNextItem(-1,
                                  wxLIST_NEXT_ALL,
                                  wxLIST_STATE_SELECTED);
   if (item == -1) {
      return;
   }

   BatchCommandDialog d(this, wxID_ANY);

   if (!d.ShowModal()) {
      return;
   }

   if(d.mSelectedCommand != wxT(""))
   {
      mBatchCommands.AddToChain(d.mSelectedCommand,
                                d.mSelectedParameters,
                                item);
      mChanged = true;

      mSelectedCommand = item + 1;

      PopulateList();
   }
}
/// An item in the chains list has been selected.
void EditChainsDialog::OnChainSelected(wxListEvent & event)
{
   if (!ChangeOK()) {
      event.Veto();
      return;
   }

   int item = event.GetIndex();

   mActiveChain = mChains->GetItemText(item);
   mBatchCommands.ReadChain(mActiveChain);

   if (mBatchCommands.IsFixed(mActiveChain)) {
      mRemove->Disable();
      mRename->Disable();
      mDefaults->Enable();
   }
   else {
      mRemove->Enable();
      mRename->Enable();
      mDefaults->Disable();
   }

   PopulateList();
}
/// Creates the dialog and its contents.
void EditChainsDialog::Populate()
{
   //------------------------- Main section --------------------
   ShuttleGui S(this, eIsCreating);
   PopulateOrExchange(S);
   // ----------------------- End of main section --------------

   // Get and validate the currently active chain
   mActiveChain = gPrefs->Read(wxT("/Batch/ActiveChain"), wxT(""));

   // Go populate the chains list.
   PopulateChains();

   // We have a bare list.  We need to add columns and content.
   PopulateList();

   // Layout and set minimum size of window
   Layout();
   Fit();
   SetSizeHints(GetSize());

   // Size and place window
   SetSize(wxSystemSettings::GetMetric(wxSYS_SCREEN_X) * 3 / 4,
           wxSystemSettings::GetMetric(wxSYS_SCREEN_Y) * 4 / 5);
   Center();

   // Set the column size for the chains list.
   wxSize sz = mChains->GetClientSize();
   mChains->SetColumnWidth(0, sz.x);

   // Size columns properly
   FitColumns();
}
void CollisionTypeDialog::OnAddType(wxCommandEvent& event)
{
	int numTypes = m_project.GetCollisionTypeCount();
	if(numTypes < 8)
	{
		u8 bit = 0;

		//Find gap in bit
		for(u8 i = 0; i < numTypes && !bit; i++)
		{
			if(!m_project.GetCollisionType(i))
			{
				bit = i;
			}
		}

		if(!bit)
		{
			//No gap, add new
			bit = numTypes + 1;
		}
		
		m_project.AddCollisionType(bit);
		PopulateList();
	}
}
Example #6
0
WidgetDownloadPanel::WidgetDownloadPanel(wxWindow* parent, wxWindowID id, const wxString& /*unused*/,
    const wxPoint& pos , const wxSize& size , long style )
    : wxScrolledWindow (parent,  id, pos, size, style, _T("widget-dl") )
{
    m_splitter = new wxSplitterWindow( this, -1, wxDefaultPosition, wxDefaultSize );

    m_main_sizer = new wxBoxSizer ( wxHORIZONTAL );
    m_list = new WidgetDownloadListctrl( m_splitter, WidgetDownloadListctrl::WIDGETLISTCTRL_ID );
    PopulateList();
    m_list->ResetColumnSizes();

    Widget dummy;
    m_info_panel = new WidgetInfoPanel( dummy, m_splitter, ID_PANEL );
    m_info_panel->Create();

    m_splitter->SplitVertically( m_list, m_info_panel );
    m_main_sizer->Add( m_splitter, 1, wxEXPAND|wxALL, 4 );

    m_splitter->SetMinimumPaneSize( 400 );
    m_splitter->SetSashPosition( sett().GetSashPosition( GetName() ) );

    SetSizer( m_main_sizer );
    Layout();
    m_list->SortList( true );
}
Example #7
0
void CWorldsDlg::OnSelchangedDirectory(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
	// TODO: Add your control notification handler code here
//	LPPOINT lpPoint=new POINT;
//	UINT* pnFlags=new UINT;
	DDirIdent *pIdent;

//	GetCursorPos(lpPoint);
//	m_WorldTree.ScreenToClient(lpPoint);
//	HTREEITEM hItem=m_WorldTree.HitTest(*lpPoint,pnFlags);
	HTREEITEM hItem=pNMTreeView->itemNew.hItem;

	if(hItem)
	{
		pIdent = (DDirIdent*)m_pTree->GetItemData(hItem);
		if(pIdent)
		{
			m_csCurrentDir = pIdent->m_Filename;
			m_hCurrentItem = hItem;

			PopulateList();
		}
	}

	//cleanup
//	delete lpPoint;
//	delete pnFlags;

	*pResult = 0;
}
Example #8
0
void CWorldsDlg::OnWorldDelete() 
{
	// Figure out which one they want to delete
	int iIndex = m_WorldList.GetSelectionMark();
	if (iIndex < 0)
		return;

	// Display a confirmation dialog
	CString csWorldName = m_WorldList.GetItemText(iIndex, 0);
	CString csMessage = "Are you sure you want to delete the world " + csWorldName + "?";
	if (MessageBox(csMessage, "Confirmation", MB_YESNO | MB_ICONQUESTION) == IDNO)
		return;

	// Get the full name of the world
	DFileIdent *pIdent;
	pIdent = (DFileIdent*)m_WorldList.GetItemData(iIndex);
	if(!pIdent)
	{
		MessageBox("Internal error deleting world!", "Error", MB_OK | MB_ICONEXCLAMATION);
		return;
	}
	csWorldName = dfm_GetFullFilename(GetFileMgr(), pIdent->m_Filename);

	// Delete the world
	if (!DeleteFile(csWorldName))
	{
		MessageBox("Error deleting world", "Error", MB_OK | MB_ICONEXCLAMATION);
		return;
	}

	// Refresh the display list
	PopulateList();
}
/// Select the empty Command chain.
void EditChainsDialog::OnDefaults(wxCommandEvent & WXUNUSED(event))
{
   mBatchCommands.RestoreChain(mActiveChain);

   mChanged = true;

   PopulateList();
}
BOOL CHTTPStatusCodeFilterDlg::OnInitDialog ( HWND hwndFocus, LPARAM lParam )
{
  m_wndList.Attach(GetDlgItem(IDC_LIST_FILTER_CODES));
  m_wndList.SetExtendedListViewStyle(LVS_EX_CHECKBOXES|LVS_EX_FULLROWSELECT|LVS_SINGLESEL);

  m_wndList.InsertColumn ( 0, _T("Filter"), LVCFMT_LEFT, 40, 0 );
  m_wndList.InsertColumn ( 1, _T("Status code"), LVCFMT_LEFT, 70, 1 );
  m_wndList.InsertColumn ( 2, _T("Description"), LVCFMT_LEFT, 370, 1 );

  PopulateList();

  return 1;
}
Example #11
0
void RotorPosMap::edit(void)
{
    uint id = getValue().toUInt();

    QString angle;
    if (MythPopupBox::showGetTextPopup(
            GetMythMainWindow(),
            DeviceTree::tr("Position Index %1").arg(id),
            DeviceTree::tr("Orbital Position"), angle))
    {
        m_posmap[id] = AngleToFloat(angle);
        PopulateList();
    }
}
void Dlg_MemBookmark::ImportFromFile( std::string sFilename )
{
	FILE* pFile = nullptr;
	errno_t nErr = fopen_s( &pFile, sFilename.c_str(), "r" );
	if ( pFile != nullptr )
	{
		Document doc;
		doc.ParseStream( FileStream( pFile ) );
		if ( !doc.HasParseError() )
		{
			if ( doc.HasMember( "Bookmarks" ) )
			{
				ClearAllBookmarks();

				const Value& BookmarksData = doc[ "Bookmarks" ];
				for ( SizeType i = 0; i < BookmarksData.Size(); ++i )
				{
					MemBookmark* NewBookmark = new MemBookmark();

					wchar_t buffer[ 256 ];
					swprintf_s ( buffer, 256, L"%s", Widen( BookmarksData[ i ][ "Description" ].GetString() ).c_str() );
					NewBookmark->SetDescription ( buffer );

					NewBookmark->SetAddress( BookmarksData[ i ][ "Address" ].GetUint() );
					NewBookmark->SetType( BookmarksData[ i ][ "Type" ].GetInt() );
					NewBookmark->SetDecimal( BookmarksData[ i ][ "Decimal" ].GetBool() );

					NewBookmark->SetValue( GetMemory( NewBookmark->Address(), NewBookmark->Type() ) );
					NewBookmark->SetPrevious ( NewBookmark->Value() );

					AddBookmark ( NewBookmark );
					AddBookmarkMap( NewBookmark );
				}

				if ( m_vBookmarks.size() > 0 )
					PopulateList();
			}
			else
			{
				ASSERT ( " !Invalid Bookmark File..." );
				MessageBox( nullptr, _T("Could not load properly. Invalid Bookmark file."), _T("Error"), MB_OK | MB_ICONERROR );
				return;
			}
		}

		fclose( pFile );
	}
}
Example #13
0
int CVICALLBACK mask_folder (int panel, int control, int event,
							 void *callbackData, int eventData1, int eventData2)
{
	switch (event)
	{
		case EVENT_COMMIT:

			DirSelectPopup ("d:\\test", "Masks Folder", 1, 1, mask_path);
			SetCtrlVal (ERG_panel,ERG_panel_folder_path , mask_path);
			PopulateList();

			

			  
			  
			break;
	}
	return 0;
}
Example #14
0
BOOL CDbManageDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	int	lpiTabs[4];
//	lpiTabs[0] = 120;
//	lpiTabs[1] = 220;
//	lpiTabs[2] = 300;

	lpiTabs[0] = 150;
	lpiTabs[1] = 250;
	lpiTabs[2] = 300;
	m_listBox.SetTabStops(3,lpiTabs);

	// TODO:  Add extra initialization here
	PopulateList();

	return TRUE;  // return TRUE unless you set the focus to a control
	// EXCEPTION: OCX Property Pages should return FALSE
}
void EditChainsDialog::OnDown(wxCommandEvent & WXUNUSED(event))
{
   long item = mList->GetNextItem(-1,
                                  wxLIST_NEXT_ALL,
                                  wxLIST_STATE_SELECTED);
   if (item == -1 || item + 2 >= mList->GetItemCount()) {
      return;
   }

   mBatchCommands.AddToChain(mBatchCommands.GetCommand(item),
                             mBatchCommands.GetParams(item),
                             item + 2);
   mBatchCommands.DeleteFromChain(item);

   mChanged = true;

   mSelectedCommand = item + 1;

   PopulateList();
}
void EditChainsDialog::OnDelete(wxCommandEvent & WXUNUSED(event))
{
   long item = mList->GetNextItem(-1,
                                  wxLIST_NEXT_ALL,
                                  wxLIST_STATE_SELECTED);
   if (item == -1 || item + 1 == mList->GetItemCount()) {
      return;
   }

   mBatchCommands.DeleteFromChain(item);

   mChanged = true;

   if (item >= (mList->GetItemCount() - 2) && item >= 0) {
      item--;
   }

   mSelectedCommand = item;

   PopulateList();
}
void CollisionTypeDialog::OnIconChange(wxCommandEvent& event)
{
	u8 collisionTypeBits = GetSelection();
	if(collisionTypeBits)
	{
		if(CollisionType* collisionType = m_project.GetCollisionType(collisionTypeBits))
		{
			//Open image file
			wxFileDialog dialogue(this, _("Open Image file"), "", "", "BMP files (*.bmp)|*.bmp", wxFD_OPEN | wxFD_FILE_MUST_EXIST);
			if(dialogue.ShowModal() == wxID_OK)
			{
				wxImage image;
				if(image.LoadFile(dialogue.GetPath()))
				{
					if(image.GetWidth() == sIconWidth && image.GetHeight() == sIconHeight)
					{
						//Set icon data
						const int bytesPerPixel = 3;
						int imageSize = sIconWidth * sIconHeight * bytesPerPixel;
						collisionType->iconData.resize(imageSize);
						unsigned char* imageData = image.GetData();
						ion::memory::MemCopy(&collisionType->iconData[0], imageData, imageSize);

						//Repopulate list and re-select current item to display icons
						PopulateList();
						OnTypeSelected(collisionTypeBits);

						//Refresh collision types panel
						m_mainWindow.RedrawPanel(MainWindow::ePanelCollisionTypes);
					}
					else
					{
						wxMessageBox("Image must be 16x16", "Error", wxOK | wxICON_ERROR);
					}
				}
			}
		}
	}
}
/// An item in the list has been selected.
/// Bring up a dialog to allow its parameters to be edited.
void EditChainsDialog::OnCommandActivated(wxListEvent &event)
{
   int item = event.GetIndex();

   BatchCommandDialog d(this, wxID_ANY);
   d.SetCommandAndParams(mBatchCommands.GetCommand(item),
                         mBatchCommands.GetParams(item));

   if (!d.ShowModal()) {
      return;
   }

   mBatchCommands.DeleteFromChain(item);
   mBatchCommands.AddToChain(d.mSelectedCommand,
                             d.mSelectedParameters,
                             item);

   mChanged = true;

   mSelectedCommand = item;

   PopulateList();
}
Example #19
0
/*---------------------------------------------------------------------------*/
int main (int argc, char *argv[])
{
	init_variables();
	if (InitCVIRTE (0, argv, 0) == 0)
		return -1;
	DisableBreakOnLibraryErrors ();
	setup_oscillo();
	setup_SRS();
	start_shaper();
	generate_xarray ();


	if ((Main_pnl_handle = LoadPanel (0, "ERG.uir", ERG_panel)) < 0)
		return -1;
	mask_folder(Main_pnl_handle,99,EVENT_COMMIT,0,0,0);
	PopulateList();
	strcpy (mask_filename, "flat");
	display_masks();
	DisplayPanel (Main_pnl_handle);
	RunUserInterface ();
	DiscardPanel (Main_pnl_handle);
	stop_shaper();
	return 0;
}
void Dlg_MemBookmark::AddAddress()
{
	if ( g_pCurrentGameData->GetGameID() == 0 )
		return;

	MemBookmark* NewBookmark = new MemBookmark();

	// Fetch Memory Address from Memory Inspector
	TCHAR buffer[ 256 ];
	GetDlgItemText( g_MemoryDialog.GetHWND(), IDC_RA_WATCHING, buffer, 256 );
	unsigned int nAddr = strtol( Narrow( buffer ).c_str(), nullptr, 16 );
	NewBookmark->SetAddress( nAddr );

	// Check Data Type
	if ( SendDlgItemMessage( g_MemoryDialog.GetHWND(), IDC_RA_MEMVIEW8BIT, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
		NewBookmark->SetType( 1 );
	else if ( SendDlgItemMessage( g_MemoryDialog.GetHWND(), IDC_RA_MEMVIEW16BIT, BM_GETCHECK, 0, 0 ) == BST_CHECKED )
		NewBookmark->SetType( 2 );
	else
		NewBookmark->SetType( 3 );

	// Get Memory Value
	NewBookmark->SetValue( GetMemory( nAddr, NewBookmark->Type() ) );
	NewBookmark->SetPrevious( NewBookmark->Value() );

	// Get Code Note and add as description
	const CodeNotes::CodeNoteObj* pSavedNote = g_MemoryDialog.Notes().FindCodeNote( nAddr );
	if ( ( pSavedNote != nullptr ) && ( pSavedNote->Note().length() > 0 ) )
		NewBookmark->SetDescription( Widen( pSavedNote->Note() ).c_str()  );

	// Add Bookmark to vector and map
	AddBookmark( NewBookmark );
	AddBookmarkMap( NewBookmark );

	PopulateList();
}
Example #21
0
void CWorldsDlg::OnWorldDecompress()
{

	//first off, we need to get the filename of the selected item
	CString sInFileName = GetSelectedItemFileName();

	int nDotPos = sInFileName.ReverseFind('.');
	if(nDotPos == -1)
		return;

	CString sExt = sInFileName.Mid(nDotPos + 1);
	if(sExt.CompareNoCase("ltc") != 0)
		return;

	//make sure it is compressed
	if(CLTAUtil::IsFileCompressed(sInFileName) == false)
	{
		//this shouldn't ever happen. The wrong menu item managed to come up
		ASSERT(false);
		return;
	}

	//make sure that the region we are compressing is not open for editing
	for(uint32 nCurrRegion = 0; nCurrRegion < GetProjectBar()->m_RegionDocs.GetSize(); nCurrRegion++)
	{
		if(sInFileName.CompareNoCase(GetProjectBar()->m_RegionDocs[nCurrRegion]->m_FileName) == 0)
		{
			//they are trying to compress a file that is open, we can't allow this, otherwise
			//when they save, it will save to the wrong filename. Another approach
			//would be to update the region's filename, but I don't think I'll have enough
			//time to thoroughly test this to my satisfaction, so I'll go with the error
			MessageBox(	sInFileName + " is currently open for editing.\nYou must close this file before you decompress it",
						"Cannot Decompress Open File", MB_ICONEXCLAMATION | MB_OK);
			return;
		}
	}



	CString sOutFileName = ConvertExtension(sInFileName, ".ltc", ".lta");

	//see if the file already exists
	if(DoesFileExist(sOutFileName) == TRUE)
	{
		//prompt the user with an overwrite prompt
		if(MessageBox("The file " + sOutFileName + " already exists.\nWould you like to overwrite this file?",
					"File already exists", MB_ICONQUESTION | MB_YESNO) == IDNO)
		{
			//the user didn't want to overwrite the file
			return;
		}
	}

	//now we open up the input file, and compress it
	BeginWaitCursor();

	CLTAFile InFile(sInFileName, true, true);
	//make sure the files opened okay
	if(InFile.IsValid() == false)
	{
		MessageBox(	"Unable to open " + sInFileName + " for reading\nDecompression not performed", 
					"Error", MB_ICONEXCLAMATION | MB_OK);
		return;
	}

	CLTAFile OutFile(sOutFileName, false, false);
	//make sure the files opened okay
	if(OutFile.IsValid() == false)
	{
		MessageBox(	"Unable to open " + sOutFileName + " for writing\nDecompression not performed", 
					"Error", MB_ICONEXCLAMATION | MB_OK);
		return;
	}

	//now we just decompress
	uint8 nByte;
	while(InFile.ReadByte(nByte))
	{
		if(OutFile.WriteByte(nByte) == false)
		{
			MessageBox(	"Error while saving to " + sOutFileName + "\nDecompression not performed",
						"Error", MB_ICONEXCLAMATION | MB_OK);
			return;
		}
	}

	//close out the files
	InFile.Close();
	OutFile.Close();

	//now we need to delete the input file
	// Delete the world
	if (!DeleteFile(sInFileName))
	{
		MessageBox("Error deleting world" + sInFileName, "Error", MB_OK | MB_ICONEXCLAMATION);
		return;
	}

	// Refresh the display list
	PopulateList();

	EndWaitCursor();
}
Example #22
0
void RotorPosMap::Load(void)
{
    m_posmap = m_rotor.GetPosMap();
    PopulateList();
}
Example #23
0
void RotorPosMap::del(void)
{
    uint id = getValue().toUInt();
    m_posmap.erase(m_posmap.find(id));
    PopulateList();
}
Example #24
0
LRESULT CALLBACK WindowProc( HWND wnd, DWORD msg, WPARAM wParam, LPARAM lParam )
{
    switch( msg )
    {
        case WM_CREATE:
            break;
        case WM_DESTROY:
            PostQuitMessage( 0 );
            break;
        case WM_COMMAND:
            switch( wParam & 0xFFFF )
            {
                case REFRESH_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        SendDlgItemMessage( wnd, TREE_ID, TVM_DELETEITEM, 0, (LPARAM)TVI_ROOT );
                        PopulateList( NULL, GetDesktopWindow(), GetDlgItem( wnd, TREE_ID ) );
                    }
                    break;
                case HIGHLIGHT_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        if( current != NULL )
                        {
                            HighlightWindow( current, 0xFF0000 );
                        }
                    }
                    break;
                case PULL_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        if( current != NULL )
                        {
                            SetForegroundWindow( current );
                        }
                    }
                    break;
                case DESTROY_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        if( current != NULL )
                        {
                            SendMessage( current, WM_DESTROY, 0, 0 );
                        }
                    }
                    break;
                case CLOSE_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        if( current != NULL )
                        {
                            SendMessage( current, WM_CLOSE, 0, 0 );
                        }
                    }
                    break;
                case KILLPROC_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        if( current != NULL )
                        {
                            KillProcess( current, GetDlgItem( wnd, STATIC_ID ) );
                        }
                    }
                    break;
                case EDITMEM_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        if( current != NULL )
                        {
                            EditProcMem( current, GetDlgItem( wnd, STATIC_ID ) );
                        }
                    }
                    break;
                case SHOW_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        if( current != NULL )
                        {
                            ShowWindow( current, SW_SHOW );
                            UpdateWindow( current );
                        }
                    }
                    break;
                case HIDE_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        if( current != NULL )
                        {
                            ShowWindow( current, SW_HIDE );
                            UpdateWindow( current );
                        }
                    }
                    break;
                case REDRAW_ID:
                    if( wParam >> 16 == BN_CLICKED )
                    {
                        if( current != NULL )
                        {
                            RedrawWindow( current, NULL, NULL, RDW_ERASE | RDW_INVALIDATE );
                            UpdateWindow( current );
                        }
                    }
                    break;
                default:
                    break;
            }
            break;
        case WM_NOTIFY:
            if( wParam == TREE_ID )
            {
                if( ((NM_TREEVIEW*)lParam)->hdr.code == TVN_SELCHANGED )
                {
                    current = (HWND)((NM_TREEVIEW*)lParam)->itemNew.lParam;
                    GetProcInfo( current, GetDlgItem( wnd, STATIC_ID ));
                }
            }
            break;
        default:
            return DefWindowProc( wnd, msg, wParam, lParam );
    }

    return 0;
}
dword AutoStartPage::OnKey( dword key, dword extKey )
{
	switch ( key )
	{
	case RKEY_Exit:
		if ( CanExit() )
			Close();
		return 0;
	case RKEY_Mute:
		// pass Mute to the firmware
		return key;
	case RKEY_Menu:
	{
		if (menuActivates)
		{
			Close();
			return key;
		}
		Replace(new ConfigPage());
		return 0;
	}
	case RKEY_PlayList:
		if ( CanExit() )
			Replace(new LoadedTAPPage());
		return 0;
	case RKEY_VolUp:
	{
		int index = GetSelectedIndex();
		if ( index < (int)m_taps.size()-1 )
		{
			// swap the filenames
			AutoStartTAP t = m_taps[index];
			m_taps[index] = m_taps[index+1];
			m_taps[index+1] = t;
			// move the selection
			MoveSelection( 1, false );
			m_dirty = true;
		}
		return 0;
	}
	case RKEY_VolDown:
	{
		int index = GetSelectedIndex();
		if ( index > 0 && index < (int)m_taps.size() )
		{
			// swap the filenames
			AutoStartTAP t = m_taps[index];
			m_taps[index] = m_taps[index-1];
			m_taps[index-1] = t;
			// move the selection
			MoveSelection( -1, false );
			m_dirty = true;
		}
		return 0;
	}
	case RKEY_NewF1:
	{
		// enable/disable TAP
		int index = GetSelectedIndex();
		EnableTAP( index, !m_taps[index].enabled );
		return 0;
	}
	case RKEY_F2:
	{
		int index = GetSelectedIndex();
		if ( index < (int)m_taps.size() )
		{
			bool enable = !m_taps[index].enabled;
			for ( unsigned int i = 0; i < m_taps.size(); ++i )
				EnableTAP( i, enable );
		}
		return 0;
	}
	// Discard changes
	case RKEY_Recall:
		// get rid of the list items, then the 
		DiscardItems();
		AddItem(new SimpleTextListItem(this, 0, "", "Loading..."));
		Draw();
		PopulateList();
		m_dirty = false;
		return 0;
	// Save Changes
	case RKEY_Record:
		Save();
		Close();
		return 0;
	}
	ListPage::OnKey( key, extKey );

	return 0;
}
void AutoStartPage::OnOpen()
{
	ListPage::OnOpen();
	PopulateList();
}
Example #27
0
DemoCollection::DemoCollection( const std::string &path, const std::string &demoExtension ) :
	path( path ), demoExtension( demoExtension ), defaultItemName( "" ), numDirectories( 0 ) {
	PopulateList();
}
Example #28
0
CELFSymbolView::CELFSymbolView(HWND hParent, CELF* pELF)
: m_pELF(pELF)
, m_listView(NULL)
{
	if(!DoesWindowClassExist(CLSNAME))
	{
		WNDCLASSEX wc;
		memset(&wc, 0, sizeof(WNDCLASSEX));
		wc.cbSize			= sizeof(WNDCLASSEX);
		wc.hCursor			= LoadCursor(NULL, IDC_ARROW);
		wc.hbrBackground	= (HBRUSH)(COLOR_WINDOW); 
		wc.hInstance		= GetModuleHandle(NULL);
		wc.lpszClassName	= CLSNAME;
		wc.lpfnWndProc		= CWindow::WndProc;
		RegisterClassEx(&wc);
	}

	Create(NULL, CLSNAME, _T(""), WS_CHILD | WS_DISABLED | WS_CLIPCHILDREN, Framework::Win32::CRect(0, 0, 1, 1), hParent, NULL);
	SetClassPtr();

	m_listView = new Framework::Win32::CListView(m_hWnd, Framework::Win32::CRect(0, 0, 1, 1), LVS_REPORT | LVS_OWNERDATA);
	m_listView->SetExtendedListViewStyle(m_listView->GetExtendedListViewStyle() | LVS_EX_FULLROWSELECT);

	LVCOLUMN col;
	memset(&col, 0, sizeof(LVCOLUMN));
	col.pszText		= _T("Name");
	col.mask		= LVCF_TEXT;
	m_listView->InsertColumn(0, col);

	memset(&col, 0, sizeof(LVCOLUMN));
	col.pszText		= _T("Address");
	col.mask		= LVCF_TEXT;
	m_listView->InsertColumn(1, col);

	memset(&col, 0, sizeof(LVCOLUMN));
	col.pszText		= _T("Size");
	col.mask		= LVCF_TEXT;
	m_listView->InsertColumn(2, col);

	memset(&col, 0, sizeof(LVCOLUMN));
	col.pszText		= _T("Type");
	col.mask		= LVCF_TEXT;
	m_listView->InsertColumn(3, col);

	memset(&col, 0, sizeof(LVCOLUMN));
	col.pszText		= _T("Binding");
	col.mask		= LVCF_TEXT;
	m_listView->InsertColumn(4, col);

	memset(&col, 0, sizeof(LVCOLUMN));
	col.pszText		= _T("Section");
	col.mask		= LVCF_TEXT;
	m_listView->InsertColumn(5, col);

	RefreshLayout();

	RECT rc = m_listView->GetClientRect();

	m_listView->SetColumnWidth(0, rc.right / 3);
	m_listView->SetColumnWidth(1, rc.right / 4);
	m_listView->SetColumnWidth(2, rc.right / 4);
	m_listView->SetColumnWidth(3, rc.right / 4);
	m_listView->SetColumnWidth(4, rc.right / 4);
	m_listView->SetColumnWidth(5, rc.right / 4);

	PopulateList();

	m_listView->Redraw();
}